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/] [pkg-axi-tlm.vhdl] - Diff between revs 17 and 44

Show entire file | Details | Blame | View Log

Rev 17 Rev 44
Line 157... Line 157...
--      type tAxiTransactor_lp is record
--      type tAxiTransactor_lp is record
--              cSysReq:
--              cSysReq:
--              cSysAck:
--              cSysAck:
--              cActive:
--              cActive:
--      end record tAxiTransactor_lp;
--      end record tAxiTransactor_lp;
 
 
        type t_fsm is (idle,sendAddr,startOfPacket,payload,endOfPacket,endOfTx);
 
        type axiBfmStatesTx is (idle,payload,endOfTx);
 
        type axiBfmStatesRx is (idle,checkAddr,startOfPacket,payload);
 
 
 
        attribute enum_encoding:string;
 
        attribute enum_encoding of axiBfmStatesTx:type is "00 01 10";
 
 
 
        function to_std_logic_vector(fsm:axiBfmStatesTx) return std_logic_vector;
 
end package axiTLM;
end package axiTLM;
 
 
package body axiTLM is
package body axiTLM is
        function to_std_logic_vector(fsm:axiBfmStatesTx) return std_logic_vector is
 
                variable r:std_logic_vector(1 downto 0);
 
        begin
 
                case fsm is
 
                        when idle=>             r:=2x"0";
 
                        when payload=>  r:=2x"1";
 
                        when endOfTx=>  r:=2x"2";
 
                        when others=>   null;
 
                end case;
 
                return r;
 
        end function to_std_logic_vector;
 
end package body axiTLM;
end package body axiTLM;
 
 
 
 
/* AXI Transactor API.
/* AXI Transactor API.
 *      Generally, transactors are high-level bus interface models that perform
 *      Generally, transactors are high-level bus interface models that perform

powered by: WebSVN 2.1.0

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