سلام
من cpld (x9500 با میکرو ارتباط دادم به نحوی که میکرو هر 8 بیت دیتایی که میده یه پالس میندازه به cpld و cpld اون دیتا رو میگیره و به پایه خروجی که 8 تا ال ای دی باشن نمایش میده ، تا اینجا مشکلی نیست ولی وقتی فرکانس پالس میکرو رو زیاد میکنم cpld دیگه دیتا نمگیره . فرکنسهای تقریبن بالاتر از 800 کیلو رو دیگه قبول نمیکنه ، این غیر طبیعیه cpld باید با فرکانسهای خیلی بالاتر از این حرفا کار کنه درست نیست ؟ به نظر شما اشکال کار کجاست ؟
این برنامه منه :
من cpld (x9500 با میکرو ارتباط دادم به نحوی که میکرو هر 8 بیت دیتایی که میده یه پالس میندازه به cpld و cpld اون دیتا رو میگیره و به پایه خروجی که 8 تا ال ای دی باشن نمایش میده ، تا اینجا مشکلی نیست ولی وقتی فرکانس پالس میکرو رو زیاد میکنم cpld دیگه دیتا نمگیره . فرکنسهای تقریبن بالاتر از 800 کیلو رو دیگه قبول نمیکنه ، این غیر طبیعیه cpld باید با فرکانسهای خیلی بالاتر از این حرفا کار کنه درست نیست ؟ به نظر شما اشکال کار کجاست ؟
این برنامه منه :
کد:
library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values --use IEEE.NUMERIC_STD.ALL; -- Uncomment the following library declaration if instantiating -- any Xilinx primitives in this code. --library UNISIM; --use UNISIM.VComponents.all; entity test5 is Port ( led : out STD_LOGIC_VECTOR (7 downto 0); clk :in std_logic; clk_stm :in std_logic; data_stm : in STD_LOGIC_VECTOR (7 downto 0)); end test5; architecture Behavioral of test5 is --signal counter1:integer range 0 to 16000000; signal counter2:STD_LOGIC_VECTOR (7 downto 0); begin process (clk_stm) begin if rising_edge (clk_stm) then counter2<=data_stm; end if; end process; --temp<="101010"; led<=counter2; end Behavioral;
دیدگاه