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
lf has quit [Ping timeout: 248 seconds]
lf has joined #amaranth-lang
peepsalot has quit [Ping timeout: 255 seconds]
peepsalot has joined #amaranth-lang
<d1b2> <jer_emy> @whitequark is there a way i can do a one-off donation? I can't seem to work out how to do it on patreon
<whitequark> I'll DM you
<d1b2> <jer_emy> ok, I am on discord though so I'm assuming that might not hook up properly? email me at jeremy.006@gmail.com
<whitequark> I have Discord too, I just don't use it most of the time
bl0x_ has joined #amaranth-lang
bl0x has quit [Ping timeout: 256 seconds]
Degi_ has joined #amaranth-lang
Degi has quit [Ping timeout: 276 seconds]
Degi_ is now known as Degi
indy has quit [Ping timeout: 276 seconds]
chaoticryptidz_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
chaoticryptidz has joined #amaranth-lang
balrog has quit [Read error: Connection reset by peer]
balrog has joined #amaranth-lang
koschei[m] has quit [Ping timeout: 260 seconds]
koschei[m] has joined #amaranth-lang
balrog has quit [Read error: Connection reset by peer]
balrog has joined #amaranth-lang
<DevanshTanna[m]> I've one question, How can I have multiple assignment(in yield) while simulating sync_process?
<DevanshTanna[m]> s/assignment/assignments/, s/sync_process/sync\_process/
<whitequark> you can do yield x.eq(y); yield z.eq(t), which is basically the same as having multiple assignments
<whitequark> since the timeline doesn't advance unless you yield or yield Settle()
<DevanshTanna[m]> Ohh okay, I thought one yield takes one clock cycle, Thanks for the help
balrog has quit [Quit: Bye]
balrog has joined #amaranth-lang
DevanshTanna[m] is now known as DeVector[m]
<josuah> > since the timeline doesn't advance unless you yield or yield Settle()
<josuah> I was not sure, but that puts an end to my doubts... nice!
<josuah> such a great way to perform simulation!
<whitequark> it's actually a fairly difficult to use interface; there are plans to replace it with something less error-prone
<whitequark> the difficulty is in the following. suppose you change a signal from 0 to 1. when do other signals connected to it change?
<whitequark> right now the answer is "after `yield` or `yield Settle()`" and because of that sometimes when writing a testbench you sprinkle `yield` all over it until it works. not a great design
<josuah> so you mean it becomes a bit too verbose when debugging combinational signals?
<whitequark> it's more that it's difficult to think about
<whitequark> there's going to be an RFC describing the issues in more detail some time later this quarter
<josuah> very glad to see development taking this pace
<josuah> not rushing into anything yet addressing everything
<josuah> that kinds of break the "move fast break things (sucessor would clean)"
balrog has quit [Quit: Bye]
balrog has joined #amaranth-lang