Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mechanism for declaring arrayed/bundled interfaces with autowrap #215

Open
sgherbst opened this issue May 9, 2024 · 1 comment
Open

Comments

@sgherbst
Copy link
Contributor

sgherbst commented May 9, 2024

Issue reported by @azaidy.

Proposal is to have an optional shape field like numpy when declaring interfaces:

interfaces = {
    'umi_in': dict(type='umi', dw=dw, aw=aw, cw=cw, direction='input', shape=(m,n), txrx='umi'),
    'umi_out': dict(type='umi', dw=dw, aw=aw, cw=cw, direction='output', shape=(m,n), txrx='umi'),
    'umi_aux': dict(type='umi', dw=dw, aw=aw, cw=cw, direction='output', shape=(p,))
}

Elements in arrays should be accessible with standard array notation; this should apply to both coupled UmiTxRx interfaces and decoupled interfaces.

dut.net.intfs['umi'][i][j].write(...)
dut.net.intfs['umi_aux'][k].send(...)
@sgherbst
Copy link
Contributor Author

sgherbst commented May 9, 2024

Note: this should also be possible with bundled clocks and resets

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant