whitequark changed the topic of #amaranth-lang to: Amaranth hardware definition language · weekly meetings on Mondays at 1700 UTC · code https://github.com/amaranth-lang · logs https://libera.irclog.whitequark.org/amaranth-lang
<whitequark> <adamgreig[m]> "You can just call functions..." <- this isn't actually properly supported at the moment
<adamgreig[m]> What goes wrong? I'd have guessed the interaction with context managers might be weird but I feel like it's been ok
bl0x has joined #amaranth-lang
bl0x_ has quit [Ping timeout: 260 seconds]
<whitequark> it's easy to accidentally write code that silently does the wrong thing if you call a function in the wrong place
<whitequark> like in an elif condition
Degi_ has joined #amaranth-lang
Degi has quit [Ping timeout: 255 seconds]
Degi_ is now known as Degi
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #amaranth-lang
jn has quit [Ping timeout: 252 seconds]
jn has joined #amaranth-lang
jn has joined #amaranth-lang
jn has quit [Changing host]
FL4SHK has quit [Ping timeout: 256 seconds]
mindw0rk has quit [Ping timeout: 276 seconds]
mindw0rk has joined #amaranth-lang
koschei[m] has joined #amaranth-lang
<mithro> Has anyone here looked at https://github.com/alexforencich/cocotbext-pcie ?
mindw0rk has quit [Ping timeout: 252 seconds]
mindw0rk has joined #amaranth-lang
mindw0rk has quit [Quit: ZNC 1.8.2 - https://znc.in]
mindw0rk has joined #amaranth-lang
jn has quit [Remote host closed the connection]
jn has joined #amaranth-lang
jn has joined #amaranth-lang
<josuah> I did try cocotb a few times, but did not know about this PCIe cosimulator
<josuah> any thought about this approach? is it avoided on purpose to keep signals and parameters separate?
<josuah> maybe 'Interface's would make that easier.
<josuah> > Although Amaranth does not support native code simulation or co-simulation at the moment, such support will be added in near future. -- https://amaranth-lang.org/docs/amaranth/latest/intro.html#the-amaranth-simulator
<josuah> mithro: there might need some additions to Amaranth for supporting something like this.
<josuah> <tpw_rules> isn't that what submodules are for
<josuah> I think (System)Verilog has tasks to fill the gap between submodules and copy-pasting codes around
<josuah> what about "transacitons": for instance, a alot of modules will have a Wishbone Interface/Record, then on top of that can be written something like "def read()" or "def write()"?
<josuah> something that would set all signals in the current context so that a Wishbone read/write can be issued at that cycle, eventually leaving-up some signal that tells "yes ok it was queued"
<josuah> hmm... maybe it would not work too well in practice, fail to make sense.
<mithro> whitequark: feel like this might be of interest to you - https://www.tomshardware.com/news/nvidia-downsizes-rtx-3050-to-size-of-hand
<josuah> good diagram on page 4
Guest67 has joined #amaranth-lang
Guest67 has quit [Client Quit]
<josuah> hah, sorry that "Gist" from LiteX is for MicroPython!