A cocotb extension for HyperBus controllers
Project description
cocotb extension for HyperBus
Installation
Installation from pip (release version, stable):
pip install cocotbext-hyperbus
Installation for active development:
git clone https://github.com/meeeeet/cocotbext_hyperbus
pip install -e cocotbext_hyperbus
Documentation and usage examples
See the tests
directory for complete testbenches using these modules.
NOTE: Change the following parameter from the RTL code of Infineon's HyperRAM else the cocotb will have to wait for long duration and simulation may gets crash.
// tdevice values: values for internal delays
// power-on reset
specparam tdevice_VCS = 150;
// Deep Power Down to Idle wake up time
specparam tdevice_DPD = 150;
// Exit Event from Deep Power Down
specparam tdevice_DPDCSL = 20;
// Warm HW reset
specparam tdevice_RPH = 40;
// Refresh time
specparam tdevice_REF100 = 40;
// Page Open Time
specparam tdevice_PO100 = 40;
HyperBus
The HyperBusController
class can be used to drive and receive data from HyperRAM.
To use these modules, import the one you need and connect it to the DUT:
from cocotbext_hyperbus import HyperBusController
@cocotb.test()
async def sample_test(dut):
hbc=HyperBusController(dut)
Methods
Reset(dut)
: Reset the dutWriteReg(addr,data)
: Write data into register at addrReadReg(addr)
: Read from register at addrWriteMem(addr,data)
: Write data into memory at addrReadMem(addr)
: Read from memory at addr
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for cocotbext_hyperbus-0.1.9-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 226e4f8437b12372b06b2e6ac2b157b826ac1ded9c47db0994c0d41b50ffac88 |
|
MD5 | b2d93b894ed58b525930feb7b96c0cc9 |
|
BLAKE2b-256 | 27f23e5d21acad677b65aaf60bcded2c0269f2fe09309fc43aba58ad0e10cd1c |