Skip to content

InOut in Signature #1521

Answered by whitequark
tclarke asked this question in Q&A
Sep 25, 2024 · 1 comments · 4 replies
Discussion options

You must be logged in to vote

In those cases you should use IOBufferInstance (for communicating with other modules that use inout), or lib.io.Buffer (for external pins, especially if you are using the Amaranth platform interface).

Note that not all FPGA synthesis toolchains support internal inout signals. In particular Yosys has never had a complete implementation, and I wouldn't recommend using internal inouts. (I realize this may not always be possible, and some cases will work fine, but there is a good chance you will encounter issues).

The reason Amaranth doesn't have first-class support for bidirectional signals within the device is because modern FPGAs don't have them at all, and similarly their use in modern AS…

Replies: 1 comment 4 replies

Comment options

You must be logged in to vote
4 replies
@tclarke
Comment options

@whitequark
Comment options

Answer selected by tclarke
@tclarke
Comment options

@whitequark
Comment options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants