Доброе время суток. Помогите чайнику решить проблему, pls. Никак не могу понять в чём проблема. Провожу моделирование в modelsim - всё работает. Прошиваю XC9536 - не работает. Вот код на vhdl:
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 instantiating ---- any Xilinx primitives in this code. library UNISIM; use UNISIM.VComponents.all;
entity counter is Port ( CLK : in std_logic; DOUT : out std_logic_vector(7 downto 0)); end counter;
architecture Behavioral of counter is signal regA: std_logic_vector(8 downto 0); signal flag: std_logic; begin
process (CLK) begin
if (CLK'event and CLK='1') then if flag = '1' then regA <= (regA(4) xor regA(0)) & regA(8 downto 1);
DOUT(0) <= regA(0); DOUT(1) <= regA(1); DOUT(2) <= regA(2); DOUT(3) <= regA(3); DOUT(4) <= regA(4); DOUT(5) <= regA(5); DOUT(6) <= regA(8); DOUT(7) <= regA(7); else flag <= '1'; regA(0) <= '1'; regA(1) <= '1'; regA(2) <= '1'; regA(3) <= '1'; regA(4) <= '1'; regA(5) <= '1'; regA(6) <= '1'; regA(7) <= '1'; regA(8) <= '1'; end if; end if; end process;
end Behavioral;
После прошивания микросхемы все сигналы DOUT имеют низкий уровень.
|