Skip to content

AHB-To-APB-Bridge

Unified Chip Design Platform - AMBA - AHB2APB.

Classes:

Name Description
Slave

Slave.

Ahb2ApbFsmType

FSM Type for AHB to APB Bridge.

UcdpAhb2apbMod

AHB to APB Bridge.

UcdpAhb2apbExampleMod

Just an Example.

Slave

Bases: AddrSlave

Slave.

Attributes:

Name Type Description
proto AmbaProto

Protocol Version.

proto instance-attribute

proto

Protocol Version.

Ahb2ApbFsmType

Bases: AEnumType

FSM Type for AHB to APB Bridge.

UcdpAhb2apbMod

Bases: ATailoredMod, AddrDecoder

AHB to APB Bridge.

Other Parameters:

Name Type Description
proto AmbaProto

Defines Protocol

errirq bool

Use Error Interrupt instead of standard AHB Response Signalling

optbw bool

Optimized Bandwidth, faster response but increased logic depth

Example:

>>> class Mod(u.AMod):
...     def _build(self):
...         ahb2apb = UcdpAhb2apbMod(self, "u_ahb2apb")
...         ahb2apb.add_slave("uart")
...         ahb2apb.add_slave("spi")

>>> ahb2apb = Mod().get_inst("u_ahb2apb")
>>> print(ahb2apb.get_overview())
* Top:     `None`
* Defines: `None`
* Size:    `8 KB`
<BLANKLINE>
| Addrspace | Type  | Base      | Size             | Infos | Attributes |
| --------- | ----- | --------- | ---------------- | ----- | ---------- |
| uart      | Slave | `+0x0`    | `1024x32 (4 KB)` | Sub   |            |
| spi       | Slave | `+0x1000` | `1024x32 (4 KB)` | Sub   |            |
<BLANKLINE>

Methods:

Name Description
add_slave

Add APB Slave.

get_overview

Overview.

build_top

Build example top module and return it.

add_slave

add_slave(
    name,
    baseaddr=AUTO,
    size=None,
    proto=None,
    route=None,
    ref=None,
)

Add APB Slave.

Parameters:

Name Type Description Default
name str

Slave Name.

required

Other Parameters:

Name Type Description
baseaddr int | str

Base address, Next Free address by default. Do not add address space if None.

size Bytes | None

Address Space.

proto AmbaProto | None

AMBA Protocol Selection.

route Routeable | None

APB Slave Port to connect.

ref BaseMod | str | None

Logical Module connected.

get_overview

get_overview()

Overview.

build_top staticmethod

build_top(**kwargs)

Build example top module and return it.

UcdpAhb2apbExampleMod

Bases: AMod

Just an Example.