mirror of
https://github.com/openhwgroup/cva6.git
synced 2025-04-20 20:28:39 -04:00
.. | ||
include/obi | ||
src | ||
.gitignore | ||
Bender.yml | ||
CHANGELOG.md | ||
LICENSE | ||
Makefile | ||
Readme.md |
OBI
The repository contains a collection of SystemVerilog IPs for the OBI v1.6 standard.
They are designed by PULP-platform and are available under the Solderpad v0.51 license (See LICENSE
).
Using the IPs
As the OBI protocol is very configurable, the IPs are designed to incorporate specific parameters for the design:
ObiCfg
: This specifies the configuration used for the OBI protocol being input or output from the link. A default config can be found in theobi_pkg.sv
. This config should be aligned with thereq
andrsp
structs.obi_req_t
: The OBI request struct is designed to be generated with a macro available in theinclude/obi/typedef.svh
include file and has fields for the handshake and a field for the A channel.obi_rsp_t
: The OBI response struct is designed to be generated with a macro available in theinclude/obi/typedef.svh
include file and has fields for the handshake and a filed for the R channel.
Most IPs will also support a SystemVerilog interface
variant, also based on ObiCfg
.
Available IPs
obi_mux.sv
: A multiplexer IP for the OBI protocol.obi_demux.sv
: A demultiplexer IP for the OBI protocol.obi_xbar.sv
: A crossbar interconnect IP for the OBI protocol.obi_err_sbr.sv
: A error subordinate, responding with the error bit set.obi_sram_shim.sv
: An adapter for a standard sram.obi_atop_resolver.sv
: An atomics filter, resolving atomic operations on an exclusive bus.
License
Solderpad Hardware License, Version 0.51