OpenCores
URL https://opencores.org/ocsvn/axi4_tlm_bfm/axi4_tlm_bfm/trunk

Subversion Repositories axi4_tlm_bfm

[/] [axi4_tlm_bfm/] [trunk/] [rtl/] [quartus-synthesis/] [axi4-stream-bfm-master.vhdl] - Diff between revs 14 and 16

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 14 Rev 16
Line 54... Line 54...
--              /* AXI Slave interface */
--              /* AXI Slave interface */
--              axiSlave_in:in tAxi4Transactor_m2s;
--              axiSlave_in:in tAxi4Transactor_m2s;
--              axiSlave_out:buffer tAxi4Transactor_s2m;
--              axiSlave_out:buffer tAxi4Transactor_s2m;
 
 
                symbolsPerTransfer:in t_cnt;
                symbolsPerTransfer:in t_cnt;
                outstandingTransactions:buffer t_cnt;
                outstandingTransactions:in t_cnt;
 
 
                /* Debug ports. */
                /* Debug ports. */
--              dbg_cnt:out unsigned(9 downto 0);
--              dbg_cnt:out unsigned(9 downto 0);
--              dbg_axiRxFsm:out axiBfmStatesRx:=idle;
--              dbg_axiRxFsm:out axiBfmStatesRx:=idle;
                dbg_axiTxFsm:out axiBfmStatesTx:=idle
                dbg_axiTxFsm:out axiBfmStatesTx:=idle
Line 74... Line 74...
        signal i_writeRequest:t_bfm:=((others=>'0'),(others=>'0'),false);
        signal i_writeRequest:t_bfm:=((others=>'0'),(others=>'0'),false);
 
 
        signal i_readResponse,i_writeResponse:t_bfm;
        signal i_readResponse,i_writeResponse:t_bfm;
 
 
begin
begin
        /* Transaction counter. */
 
        process(n_areset,symbolsPerTransfer,aclk) is begin
 
                --if not n_areset then outstandingTransactions<=symbolsPerTransfer;
 
                if falling_edge(aclk) then
 
                        /* Use synchronous reset for outstandingTransactions to meet timing because it is a huge register set. */
 
                        if not n_areset then outstandingTransactions<=symbolsPerTransfer;
 
                        else
 
                                if outstandingTransactions<1 then
 
                                        outstandingTransactions<=symbolsPerTransfer;
 
                                        report "No more pending transactions." severity note;
 
                                elsif axiMaster_in.tReady then outstandingTransactions<=outstandingTransactions-1;
 
                                end if;
 
                        end if;
 
                end if;
 
        end process;
 
 
 
        /* next-state logic for AXI4-Stream Master Tx BFM. */
        /* next-state logic for AXI4-Stream Master Tx BFM. */
        axi_bfmTx_ns: process(all) is begin
        axi_bfmTx_ns: process(all) is begin
                axiTxState<=next_axiTxState;
                axiTxState<=next_axiTxState;
 
 
                if not n_areset then axiTxState<=idle;
                if not n_areset then axiTxState<=idle;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.