whitequark changed the topic of #nmigen to: nMigen hardware description language · code https://github.com/nmigen · logs https://libera.irclog.whitequark.org/nmigen
<_whitenotifier-1> [YoWASP/nextpnr] whitequark pushed 1 commit to develop [+0/-0/±1] https://git.io/JohUU
<_whitenotifier-1> [YoWASP/nextpnr] whitequark 1d9eaaa - Update dependencies.
<_whitenotifier-1> [YoWASP/yosys] whitequark pushed 1 commit to develop [+0/-0/±1] https://git.io/Joh8h
<_whitenotifier-1> [YoWASP/yosys] whitequark 870ba47 - Update dependencies.
ktemkin has quit [Ping timeout: 260 seconds]
ktemkin has joined #nmigen
<d1b2> <Greg> Is there a recommended way to bring signals out to a top-level verilog module generated from an nmigen module? This is how I've done it so far, which is working. But not sure if it's the easiest way. https://github.com/butterstick-fpga/butterstick-bootloader/blob/main/gateware/rtl/eptri.py#L110-L121
emeb_mac has joined #nmigen
Degi_ has joined #nmigen
Degi has quit [Ping timeout: 252 seconds]
Degi_ is now known as Degi
emeb_mac has quit [Read error: Connection reset by peer]
<tpw_rules> i would use `dir` instead of `vars` personally but i don't think it matters in the grand scheme of things
<d1b2> <Greg> That's easy to change, thanks. I guess specifically the way I'm using _lhs_signals() to collect and pass ports into nmigen.back.verilog.convert feels wrong, like there should be a nicer way.
<tpw_rules> i don't understand why you aren't just using the ports themselves
<d1b2> <Greg> This is why I'm asking. I think I hit problems trying to use the ports directly.
<d1b2> <Greg> IIRC likely due to me wanting to pass Records of signals through. like the ulpi and wishbone bus.
<tpw_rules> i guess now that i look at my own code what i have is a wrapper module that just names all the verilog ports
<tpw_rules> then the body is just instantiating the main module and combinatorially connecting everything up, with the `dir` loop to collect it all for the verilog generation
<tpw_rules> that's probably clearest, if less easy
<d1b2> <Greg> I've probably spent longer trying to automatically collect all the signals, rather than just manually write them all out.
<tpw_rules> isn't that always the case ;)
peepsalot has quit [Quit: Connection reset by peep]
peepsalot has joined #nmigen
andresmanelli has joined #nmigen
andresmanelli has quit [Client Quit]
andresmanelli has joined #nmigen
andresmanelli has quit []
andresmanelli has joined #nmigen
peepsalot has quit [*.net *.split]
sm2n has quit [*.net *.split]
tpw_rules has quit [*.net *.split]
Lilian has quit [*.net *.split]
andresmanelli has quit [Ping timeout: 268 seconds]
<d1b2> <Greg> I have taken a look at your wrapper awhile ago. Your implementation does appear a bit cleaner. Might port my code over to the way you're doing it.
andresmanelli has joined #nmigen
peepsalot has joined #nmigen
tpw_rules has joined #nmigen
sm2n has joined #nmigen
Lilian has joined #nmigen
kaucasus has joined #nmigen
chiastre has quit [Ping timeout: 250 seconds]
chiastre has joined #nmigen
chiastre has quit [Ping timeout: 265 seconds]
chiastre has joined #nmigen
chiastre has quit [Ping timeout: 260 seconds]
chiastre has joined #nmigen
kaucasus has quit [Ping timeout: 256 seconds]
kaucasus has joined #nmigen
andresmanelli has quit [Read error: Connection reset by peer]
kaucasus has quit [Ping timeout: 256 seconds]
bvernoux has joined #nmigen
doinkmaster4200 has joined #nmigen
doinkmaster420 has quit [Ping timeout: 246 seconds]
doinkmaster4200 is now known as doinkmaster420
supersat has quit [Ping timeout: 245 seconds]
supersat has joined #nmigen
supersat has quit [Ping timeout: 264 seconds]
supersat has joined #nmigen
supersat has quit [Ping timeout: 260 seconds]
supersat has joined #nmigen
bvernoux has quit [Read error: Connection reset by peer]
supersat has quit [Ping timeout: 246 seconds]
supersat has joined #nmigen
andresmanelli has joined #nmigen
andresmanelli has quit []
lf has quit [Ping timeout: 250 seconds]
lf has joined #nmigen