Releases: pulp-platform/axi
Releases · pulp-platform/axi
v0.24.1
Changes since 0.24.0
Changed
- Update
common_cells
dependency to1.20.0
to fix file order in IPApproX.
Fixed
doc/axi_lite_mailbox
: Fix position ofRFIFOL
andWFIFOL
inSTATUS
register.- IPApproX:
- Add missing link against
common_cells_lib
. - Fix include path for
common_cells
. - Fix version specification of
common_verification
.
- Add missing link against
v0.24.0
Changes since 0.23.2
Added
axi_pkg
: Add function that defines response precedence.
Changed
axi_dw_downsizer
andaxi_dw_upsizer
: Pipeline injection of atomic AWs into the AR channel to
shorten the critical path.
Fixed
axi_dw_downsizer
andaxi_dw_upsizer
: Improve portability of bit slice assignment constructs.axi_dw_downsizer
:- Forward worst response among split transactions.
- Fix overflow of B forward FIFO.
axi_test
: Remove minimal length constraint fromrand_atop_burst
.
v0.23.2
Changes since 0.23.1
Fixed
ips_list.yml
: Add missingcommon_verification
dependency.
v0.23.1
Changes since 0.23.0
Fixed
axi_lite_demux_intf
: Fix passing ofreq_t
andresp_t
parameters toaxi_lite_demux
.axi_lite_xbar
: Add missingslv_a{w,r}_cache_i
connections onaxi_lite_to_axi
instance.
v0.23.0
Changes since 0.22.1
Added
axi_lite_regs
: Add memory-mapped registers with AXI4-Lite slave port and the option to make individual bytes read-only.
Changed
- Interfaces
AXI_LITE
andAXI_LITE_DV
: addaw_prot
andar_prot
signals.- The
AXI_LITE_ASSIGN*
andAXI_LITE_SET*
macros (ininclude/axi/assign.svh
) have been updated to include the two new interface signals. axi_test::axi_lite_driver
: A newprot
function argument has been added to thesend_aw
,send_ar
,recv_aw
, andrecv_ar
functions.axi_test::rand_axi_lite_master
:- A new
w_prot
andr_prot
function argument has been added to thewrite
andread
function, respectively. The new arguments have a default value of'0
. - The
send_aws
and thesend_ars
function now randomizes theprot
signal of each AW and AR, respectively.
- A new
axi_test::rand_axi_slave
: Displayprot
signal (but otherwise still ignore it).
- The
Fixed
rand_axi_master
(inaxi_test
): Another fix to respect burst type restrictions when emitting ATOPs.
v0.22.1
Changes since 0.22.0
Fixed
rand_axi_master
(inaxi_test
): Respect burst type restrictions when emitting ATOPs.
v0.22.0
Changes since 0.21.0
Added
axi_pkg
: Addbufferable
andmodifiable
helper functions.axi_dw_converter
: Add support for single-beat fixed bursts in the downsizer and for fixed bursts of any length in the upsizer.
Changed
axi_dw_downsizer
(part ofaxi_dw_converter
): Downsize regardless of the modifiable bit of incoming transactions. Previously, non-modifiable transactions whose attributes would have to be modified for downsizing were rejected with a slave error. As of this change, transactions are downsized and their attributes modified even if their modifiable bit is not set. This is permitted by a note in the AXI specification (page A4-65 of IHI0022H).
Fixed
axi_dw_downsizer
(part ofaxi_dw_converter
): Fix condition for keeping transactions that have a smallersize
than the master/downstream port unmodified.
v0.21.0
Changes since 0.20.0
Added
axi_serializer
: serialize transactions with different IDs to the same ID.
Changed
axi_modify_address
:- Simplify redundant
slv_resp_t
andmst_resp_t
parameters to singleaxi_resp_t
parameter. - Remove unnecessary
slv_a{r,w}_addr_o
outputs, which were fed back from theslv_req_i
inputs.
Those signals can instead be derived outsideaxi_modify_address
.
- Simplify redundant
axi_modify_address_intf
:- Change name of slave port to
slv
and master port tomst
and change name of associated
parameters to align them with repository conventions. - Change type of parameters to
int unsigned
because their values are unsigned. - Add parameters for data, ID, and user width to avoid derivation from interface, which is
incompatible with many tools. - Add missing I/O suffixes to port names and align them with
axi_modify_address
.
- Change name of slave port to
Fixed
axi_modify_address_intf
: Fix type parameters passed to actual implementation.
v0.20.0
Changes since 0.19.0
Added
axi_pkg
: Addwrap_boundary
function to calculate the boundary of a wrapping burst.axi_test
: The random AXI masterrand_axi_master
can now emit wrapping bursts (but does not do
so by default). Three new parameters control the burst types of the emitted transactions; not
setting those parameters means the random master behaves as it did before this change.- Interface
AXI_BUS_DV
: AddMonitor
modport, in which all signals are inputs. axi/assign.svh
: AddAXI_ASSIGN_MONITOR
macro, which assigns anAXI_BUS
to an
AXI_BUS_DV.Monitor
.- Package
axi_test
: Addaxi_scoreboard
class, which checks that data read from a memory address
matches data written to that address.
Changed
axi_pkg
:- The
beat_addr
function now supports all burst types. Due to this, the function has two new
arguments (the length and type of the burst). - The
beat_upper_byte
andbeat_lower_byte
functions internally callbeat_addr
, so they have
two new arguments as well.
- The
v0.19.0
Changes since 0.18.1
Changed
axi_lite_to_axi
: ExposeAxCACHE
signals. It is now possible to define thecache
signal of
AXI transactions coming out of this module by driving the addedslv_aw_cache_i
and
slv_ar_cache_i
inputs. To retain the behavior prior to this change, tie those two inputs to
zero.