Package: AxiPkg
- File: AxiPkg.vhd
Constants
Name | Type | Value | Description |
---|---|---|---|
AXI_READ_MASTER_INIT_C | AxiReadMasterType | ( arvalid => '0', araddr => (others => '0'), arid => (others => '0'), arlen => (others => '0'), arsize => (others => '0'), arburst => (others => '0'), arlock => (others => '0'), arprot => (others => '0'), arcache => (others => '0'), arqos => (others => '0'), arregion => (others => '0'), rready => '0') |
|
AXI_READ_MASTER_FORCE_C | AxiReadMasterType | ( arvalid => '0', araddr => (others => '0'), arid => (others => '0'), arlen => (others => '0'), arsize => (others => '0'), arburst => (others => '0'), arlock => (others => '0'), arprot => (others => '0'), arcache => (others => '0'), arqos => (others => '0'), arregion => (others => '0'), rready => '1') |
|
AXI_READ_SLAVE_INIT_C | AxiReadSlaveType | ( arready => '0', rdata => (others => '0'), rlast => '0', rvalid => '0', rid => (others => '0'), rresp => (others => '0')) |
|
AXI_READ_SLAVE_FORCE_C | AxiReadSlaveType | ( arready => '1', rdata => (others => '0'), rlast => '0', rvalid => '0', rid => (others => '0'), rresp => (others => '0')) |
|
AXI_WRITE_MASTER_INIT_C | AxiWriteMasterType | ( awvalid => '0', awaddr => (others => '0'), awid => (others => '0'), awlen => (others => '0'), awsize => (others => '0'), awburst => (others => '0'), awlock => (others => '0'), awprot => (others => '0'), awcache => (others => '0'), awqos => (others => '0'), awregion => (others => '0'), wdata => (others => '0'), wlast => '0', wvalid => '0', wid => (others => '0'), wstrb => (others => '0'), bready => '0') |
|
AXI_WRITE_MASTER_FORCE_C | AxiWriteMasterType | ( awvalid => '0', awaddr => (others => '0'), awid => (others => '0'), awlen => (others => '0'), awsize => (others => '0'), awburst => (others => '0'), awlock => (others => '0'), awprot => (others => '0'), awcache => (others => '0'), awqos => (others => '0'), awregion => (others => '0'), wdata => (others => '0'), wlast => '0', wvalid => '0', wid => (others => '0'), wstrb => (others => '0'), bready => '1') |
|
AXI_WRITE_SLAVE_INIT_C | AxiWriteSlaveType | ( awready => '0', wready => '0', bresp => (others => '0'), bvalid => '0', bid => (others => '0')) |
|
AXI_WRITE_SLAVE_FORCE_C | AxiWriteSlaveType | ( awready => '1', wready => '1', bresp => (others => '0'), bvalid => '0', bid => (others => '0')) |
|
AXI_CTRL_INIT_C | AxiCtrlType | ( pause => '1', overflow => '0') |
|
AXI_CTRL_UNUSED_C | AxiCtrlType | ( pause => '0', overflow => '0') |
|
AXI_CONFIG_INIT_C | AxiConfigType | axiConfig( ADDR_WIDTH_C => 32, DATA_BYTES_C => 4, ID_BITS_C => 12, LEN_BITS_C => 4) |
|
AXI_LEN_INIT_C | AxiLenType | ( valid => "00", value => (others => '0'), max => 0, req => 0) |
Types
Name | Type | Description |
---|---|---|
AxiReadMasterType | ||
AxiReadMasterArray | array (natural range<>) of AxiReadMasterType | |
AxiReadSlaveType | ---------------------------------- AXI bus, read slave signal record ---------------------------------- | |
AxiReadSlaveArray | array (natural range<>) of AxiReadSlaveType | |
AxiWriteMasterType | ------------------------------------ AXI bus, write master signal record ------------------------------------ | |
AxiWriteMasterArray | array (natural range<>) of AxiWriteMasterType | |
AxiWriteSlaveType | ----------------------------------- AXI bus, write slave signal record ----------------------------------- | |
AxiWriteSlaveArray | array (natural range<>) of AxiWriteSlaveType | |
AxiCtrlType | ---------------------- AXI bus, fifo control ---------------------- | |
AxiCtrlArray | array (natural range<>) of AxiCtrlType | |
AxiConfigType | ---------------------- AXI bus configuration ---------------------- | |
AxiLenType |
Functions
- axiConfig ( constant ADDR_WIDTH_C : in positive range 12 to 64 := 32;
constant DATA_BYTES_C : in positive range 1 to 128 := 4;
constant ID_BITS_C : in positive range 1 to 32 := 12;
constant LEN_BITS_C : in natural range 0 to 8 := 4) return AxiConfigType
- axiWriteMasterInit ( constant AXI_CONFIG_C : in AxiConfigType;
bready : in sl := '0';
constant AXI_BURST_C : in slv(1 downto 0) := "01";
constant AXI_CACHE_C : in slv(3 downto 0) := "1111") return AxiWriteMasterType
- axiReadMasterInit ( constant AXI_CONFIG_C : in AxiConfigType;
constant AXI_BURST_C : in slv(1 downto 0) := "01";
constant AXI_CACHE_C : in slv(3 downto 0) := "1111") return AxiReadMasterType
- ite (i : boolean;
t : AxiConfigType;
e : AxiConfigType) return AxiConfigType
- getAxiLen ( axiConfig : AxiConfigType;
burstBytes : integer range 1 to 4096 := 4096) return slv
Description
Calculate number of txns in a burst based on number of bytes and bus configuration
Returned value is number of txns-1, so can be assigned to AWLEN/ARLEN
- getAxiLen ( axiConfig : AxiConfigType;
burstBytes : integer range 1 to 4096 := 4096;
totalBytes : slv;
address : slv) return slv
Description
Calculate number of txns in a burst based upon burst size, total remaining bytes,
current address and bus configuration.
Address is used to set a transaction size aligned to 4k boundaries
Returned value is number of txns-1, so can be assigned to AWLEN/ARLEN
- getAxiLenProc ( axiConfig : in AxiConfigType;
burstBytes : in integer range 1 to 4096 := 4096;
totalBytes : in slv;
address : in slv;
r : in AxiLenType;
v : inout AxiLenType) return ()
- getAxiReadBytes ( axiConfig : AxiConfigType;
axiRead : AxiReadMasterType) return slv
Description
Calculate the byte count for a read request