O
oursriharsha
Guest
library IEEE;
Uporaba IEEE.std_logic_1164.all;
Uporaba IEEE.std_logic_arith.all;
Uporaba IEEE.std_logic_unsigned.all;Podjetje je Usklađivač
pristanišča (CLK_SEQ: v std_logic;
RST_SEQ: v std_logic;
RW: ven std_logic;
ADDR_SEQ: ven std_logic_vector (4 downto 0)
);
end Usklađivač;
architecture of SEQUENCER_ARCH Usklađivač je
- signal ADDR_DAQ_FSM: std_logic_vector (4 downto 0);
- signal ADDR_RAM_SEQ: std_logic_vector (4 downto 0);
signal CNTR_SEQ: std_logic_vector (7 downto 0);
signal CNTR_SEQ157: std_logic_vector (7 downto 0);
signal TEMP_RW: std_logic;
signal TEMP_ADDR_SEQ: std_logic_vector (4 downto 0);
začeti
- ********* PODATKOV IZ DAQ ZA RAM ********* --
DAQ_DATA_TO_MEMORY:
procesa (CLK_SEQ, RST_SEQ) - ADDR_DAQ_FSM
začeti
če RST_SEQ ='0 ', potem
CNTR_SEQ <= "00000000";
- TEMP_RW <='0 ';
elsif (CLK_SEQ'event in CLK_SEQ ='1 '), potem
CNTR_SEQ <= CNTR_SEQ 1;
- TEMP_RW <='0 ';
konca, če;
if (CNTR_SEQ = "10011010")
in nato
TEMP_RW <='1 ';
ADDR_SEQ <= "00000";
- ADDR_DAQ_FSM <= "00000"; - Naslov z DAQ register.
CNTR_SEQ <= "00000000";
- ALE <='1 ';
konca, če;- ADDR_SEQ <= ADDR_DAQ_FSM;
koncu postopka;- ********* PODATKOV IZ ********* --procesa (CLK_SEQ, RST_SEQ)
začeti
če RST_SEQ ='0 ', potem
CNTR_SEQ157 <= "00000000";
elsif (CLK_SEQ'event in CLK_SEQ ='1 '), potem
CNTR_SEQ157 <= CNTR_SEQ157 1;
- TEMP_RW <='0 ';
konca, če;
if (CNTR_SEQ157 = "10011101")
in nato
TEMP_RW <='1 ';
TEMP_ADDR_SEQ <= TEMP_ADDR_SEQ 1;
- ADDR_RAM_SEQ <= ADDR_RAM_SEQ 1;
CNTR_SEQ157 <= "00000000";
konca, če;koncu postopka;
RW <= TEMP_RW ko RST_SEQ ='1 'drug' Z ';
- ADDR_SEQ <= TEMP_ADDR_SEQ ko RST_SEQ ='1 'drug "00000";
end SEQUENCER_ARCH;Dodano po 1 minuti
obim sintezo napake na več tristate brez voznikov, za mreže
rw in tudi naslov
Uporaba IEEE.std_logic_1164.all;
Uporaba IEEE.std_logic_arith.all;
Uporaba IEEE.std_logic_unsigned.all;Podjetje je Usklađivač
pristanišča (CLK_SEQ: v std_logic;
RST_SEQ: v std_logic;
RW: ven std_logic;
ADDR_SEQ: ven std_logic_vector (4 downto 0)
);
end Usklađivač;
architecture of SEQUENCER_ARCH Usklađivač je
- signal ADDR_DAQ_FSM: std_logic_vector (4 downto 0);
- signal ADDR_RAM_SEQ: std_logic_vector (4 downto 0);
signal CNTR_SEQ: std_logic_vector (7 downto 0);
signal CNTR_SEQ157: std_logic_vector (7 downto 0);
signal TEMP_RW: std_logic;
signal TEMP_ADDR_SEQ: std_logic_vector (4 downto 0);
začeti
- ********* PODATKOV IZ DAQ ZA RAM ********* --
DAQ_DATA_TO_MEMORY:
procesa (CLK_SEQ, RST_SEQ) - ADDR_DAQ_FSM
začeti
če RST_SEQ ='0 ', potem
CNTR_SEQ <= "00000000";
- TEMP_RW <='0 ';
elsif (CLK_SEQ'event in CLK_SEQ ='1 '), potem
CNTR_SEQ <= CNTR_SEQ 1;
- TEMP_RW <='0 ';
konca, če;
if (CNTR_SEQ = "10011010")
in nato
TEMP_RW <='1 ';
ADDR_SEQ <= "00000";
- ADDR_DAQ_FSM <= "00000"; - Naslov z DAQ register.
CNTR_SEQ <= "00000000";
- ALE <='1 ';
konca, če;- ADDR_SEQ <= ADDR_DAQ_FSM;
koncu postopka;- ********* PODATKOV IZ ********* --procesa (CLK_SEQ, RST_SEQ)
začeti
če RST_SEQ ='0 ', potem
CNTR_SEQ157 <= "00000000";
elsif (CLK_SEQ'event in CLK_SEQ ='1 '), potem
CNTR_SEQ157 <= CNTR_SEQ157 1;
- TEMP_RW <='0 ';
konca, če;
if (CNTR_SEQ157 = "10011101")
in nato
TEMP_RW <='1 ';
TEMP_ADDR_SEQ <= TEMP_ADDR_SEQ 1;
- ADDR_RAM_SEQ <= ADDR_RAM_SEQ 1;
CNTR_SEQ157 <= "00000000";
konca, če;koncu postopka;
RW <= TEMP_RW ko RST_SEQ ='1 'drug' Z ';
- ADDR_SEQ <= TEMP_ADDR_SEQ ko RST_SEQ ='1 'drug "00000";
end SEQUENCER_ARCH;Dodano po 1 minuti
rw in tudi naslov