22use ieee.std_logic_1164.
all;
23use ieee.numeric_std.
all;
130 report "assert(AWIDTH>=4 and AWIDTH<=7): unsupported AWIDTH"
191 if rising_edge(CLK) then
202 end process proc_regs;
209 variable idout : slv16 := (others=>'0');
210 variable ibreq : slbit := '0';
211 variable iback : slbit := '0';
212 variable ibrd : slbit := '0';
213 variable ibw0 : slbit := '0';
214 variable ibw1 : slbit := '0';
215 variable ilam : slbit := '0';
216 variable irbufce : slbit := '0';
217 variable irbufwe : slbit := '0';
218 variable irbufrst : slbit := '0';
219 variable irrlimsta : slbit := '0';
220 variable ixbufce : slbit := '0';
221 variable ixbufwe : slbit := '0';
222 variable ixbufrst : slbit := '0';
223 variable ixrlimsta : slbit := '0';
229 idout := (others=>'0');
231 iback := r.ibsel and ibreq;
253 if r.ibsel = '1' then
254 case IB_MREQ.addr(2 downto 1) is
265 if r.rdone='1' and r.rie='0' then
327 if r.xrdy='1' and r.xie='0' then
387 if r.rdone = '0' then
437 end process proc_next;
out DO slv( DWIDTH- 1 downto 0)
in DI slv( DWIDTH- 1 downto 0)
out SIZE slv( AWIDTH- 1 downto 0)
integer range 7 downto 0 xbuf_ibf_data
slv( AWIDTH- 1 downto 0) :=( others => '0') RBUF_FUSE
slv8 :=( others => '0') RBUF_DO
integer := 1 rcsr_ibf_fclr
integer := 7 xcsr_ibf_xrdy
integer := 1 xcsr_ibf_fclr
slv( AWIDTH- 1 downto 0) := slv( to_unsigned( 1, AWIDTH) ) c_fuse1
slv( AWIDTH- 1 downto 0) :=( others => '0') XBUF_FUSE
integer range 14 downto 12 xcsr_ibf_xrlim
regs_type := regs_init N_REGS
integer := 5 rcsr_ibf_rir
integer range 7 downto 0 rbuf_ibf_data
integer := 6 xcsr_ibf_xie
integer range AWIDTH- 1 downto 0 rbuf_ibf_xfuse
integer := 4 rcsr_ibf_rlb
integer := 4 xcsr_ibf_rlb
integer := 7 rcsr_ibf_rdone
integer range 14 downto 12 rcsr_ibf_rrlim
regs_type := regs_init R_REGS
slv8 :=( others => '0') XBUF_DO
integer range 10 downto 8 rcsr_ibf_type
integer := 6 rcsr_ibf_rie
regs_type :=( '0', "000", '0', '0', '0', "000", '1', '0', '0') regs_init
integer := 15 xbuf_ibf_xval
integer range AWIDTH- 1+ 8 downto 8 rbuf_ibf_rfuse
integer range AWIDTH- 1+ 8 downto 8 xbuf_ibf_fuse
integer := 5 xcsr_ibf_xir
IB_ADDR slv16 := slv( to_unsigned( 8#177560#, 16) )
std_logic_vector( 2 downto 0) slv3
std_logic_vector( 15 downto 0) slv16
std_logic_vector( 7 downto 0) slv8
std_logic_vector( 1 downto 0) slv2