<greghashtag9468[>
I've been using the built-in stream support to build up a data pipelines. I have components that wrap sequences of blocks together.
<greghashtag9468[>
Is there a preferred way to connect to a stream exposed as a component interface from within the module? Using `wiring.connect` picks up the wrong direction, as it sees the external Out/In direction.
<greghashtag9468[>
I'm currently using a wrapper function to extract the signature of the stream and flip it, this seems a bit better than manually connecting stream members. But curious if there is a better way.
<vegard_e[m]>
flipped()
<greghashtag9468[>
Ahh, yep. flipped() does exactly what I need. 👍
<whitequark[cis]>
hi Greg!
<whitequark[cis]>
how's your experience with the wiring library so far?
<greghashtag9468[>
I like it. Adding more design intent to each module/blocks interfaces is good.
<greghashtag9468[>
My current project is porting a MIPI PHY I'd written in litex over to amaranth. I have noticed the simulator creates a lot of duplicate names. Each block has an "i" and "o" stream. In the simulator the module contains `o__payload`, `o__payload$20`, etc. It's a bit tricky to pair up payload/valid/ready groups. This might just be a user error. 😅
<whitequark[cis]>
ah, so this isn't (just) a simulator issue, the namer is the same for RTL output
<whitequark[cis]>
we have an open issue for improving the namer
<greghashtag9468[>
That makes, sense. It doesn't seem like there is way yet of not creating overlaping names using `wiring.connect`. I'm using kwargs as demonstrated in the docs. If that could be prefixed to the signals connected? I've not thought through any extra implication of that.
<whitequark[cis]>
the namer doesn't know you're using connect(), since connect() is just a bunch of .eq()
<whitequark[cis]>
all it knows is signal names + some abstracted version of the hierarchy
<whitequark[cis]>
the rest of the context is lost by that point
<whitequark[cis]>
(unfortunately this is fairly normal for a compiler)
cr1901 has quit [Ping timeout: 248 seconds]
Degi has quit [Ping timeout: 248 seconds]
Degi has joined #amaranth-lang
cr1901 has joined #amaranth-lang
Raito_Bezarius has quit [Ping timeout: 265 seconds]