28use ieee.std_logic_1164.
all;
29use ieee.numeric_std.
all;
140 if rising_edge(CLK) then
143 end process proc_regs;
148 variable ibhold : slbit := '0';
149 variable idout : slv16 := (others=>'0');
150 variable ibrem : slbit := '0';
151 variable ibreq : slbit := '0';
152 variable ibrd : slbit := '0';
153 variable ibw0 : slbit := '0';
154 variable ibw1 : slbit := '0';
155 variable ibwrem : slbit := '0';
156 variable ilam : slbit := '0';
164 idout := (others=>'0');
170 ibwrem := IB_MREQ.we and ibrem;
184 case IB_MREQ.addr(2 downto 1) is
224 if r.pcmdwwb = '1' and r.pr0pcmd = pcmd_pdmd then
295 idout(15 downto 1) := r.pcbb(15 downto 1);
297 n.pcbb(15 downto 1) := IB_MREQ.din(15 downto 1);
301 idout( 1 downto 0) := r.pcbb(17 downto 16);
303 n.pcbb(17 downto 16) := IB_MREQ.din( 1 downto 0);
316 if r.resreq = '1' then
327 n.pcbb := (others => '0');
339 n.pr0intr := r.pr0seri or r.pr0pcei or r.pr0rxi or r.pr0txi or
340 r.pr0dni or r.pr0rcbi or r.pr0usci;
342 if r.pr0inte = '1' then
351 IB_SRES.ack <= r.ibsel and ibreq;
352 IB_SRES.busy <= ibhold and ibreq;
357 end process proc_next;
regs_type :=( '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0',( others => '0'), '1', '1', '0', '0', state_reset,( others => '0'), '0', '0', '0',( others => '0'), '0', '0') regs_init
integer range 3 downto 0 pr0_ibf_pcmd
slv4 := "0010" state_ready
integer := 11 pr0_ibf_dni
integer := 12 pr0_ibf_txi
integer := 10 pr0_ibf_rcbi
integer := 15 pr0_ibf_seri
integer := 9 pr0_ibf_busy
slv4 := "0000" state_reset
integer range 3 downto 0 pr1_ibf_state
integer := 14 pr1_ibf_icab
regs_type := regs_init N_REGS
integer := 14 pr0_ibf_pcei
integer := 6 pr0_ibf_inte
integer range 13 downto 8 pr1_ibf_ecod
integer := 4 pr1_ibf_deuna
integer := 15 pr1_ibf_xpwr
integer := 10 pr0_ibf_pdmdwb
integer := 7 pr1_ibf_pcto
integer := 13 pr0_ibf_rxi
regs_type := regs_init R_REGS
slv16 := slv( to_unsigned( 8#174510#, 16) ) ibaddr_deuna
integer range 15 downto 12 pr0_ibf_pcmdbp
integer := 4 pr0_ibf_brst
integer := 5 pr0_ibf_rset
integer := 8 pr0_ibf_pcwwb
integer := 7 pr0_ibf_intr
integer := 8 pr0_ibf_usci
std_logic_vector( 3 downto 0) slv4
std_logic_vector( 15 downto 0) slv16
std_logic_vector( 17 downto 1) slv18_1
std_logic_vector( 1 downto 0) slv2