sb0_ changed the topic of #m-labs to: https://m-labs.hk :: Logs http://irclog.whitequark.org/m-labs
cedric has quit [Ping timeout: 255 seconds]
cedric has joined #m-labs
cedric has joined #m-labs
cedric has quit [Changing host]
_whitenotifier has joined #m-labs
<_whitenotifier> [nmigen] programmerjake opened issue #43: process function is defined but not used in test case - https://git.io/fjelI
rohitksingh_work has joined #m-labs
<attie> lkcl: for modules with several independent valid/ack interfaces I usually have one generator per interface. Not sure why you need the array of functions?
<lkcl> attie: ah yes, generators, that was it.
<lkcl> array of generators.
<lkcl> attie: because the input is an array of STB/ACK/DATA
<lkcl> to set multiple STB/DATA and monitor multiple ACK signals in a single unit test function (generator) would be absolute hell
<lkcl> it would quickly become one of the worst state-based nightmare pieces of code i'd ever written :)
<lkcl> whereas, an array of functions (generators) would have each function (generator) associated with and monitoring a single STB/ACK/DATA each
<lkcl> which is a dead-straightforward loop.
<lkcl> the tricky bit is, i'm not sure how to keep the functions (generators) in clock lock-step
<bb-m-labs> build #2484 of artiq-board is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/artiq-board/builds/2484
<bb-m-labs> build #2963 of artiq is complete: Failure [failed python_unittest_2] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/2963 blamelist: Sebastien Bourdeauducq <sb@m-labs.hk>
<bb-m-labs> build #2485 of artiq-board is complete: Success [build successful] Build details are at http://buildbot.m-labs.hk/builders/artiq-board/builds/2485
<bb-m-labs> build #2964 of artiq is complete: Failure [failed python_unittest_2] Build details are at http://buildbot.m-labs.hk/builders/artiq/builds/2964 blamelist: Sebastien Bourdeauducq <sb@m-labs.hk>
<attie> lkcl: no, I mean, why not have the generators be independent?
<attie> why do you want to keep them in lockstep?
cr1901_modern has quit [Quit: Leaving.]
<attie> there's a generator dealing with the input side and a generator dealing with the output side. They get passed whatever information they need (usually the data to expect, or how many transactions to do) either as argument or as a shared variable (self.data on the testbench here)
<attie> do you have some specific timing requirements that you need to observe? but then why stb/ack?
<lkcl> ah ha! that's precisely the example i needed
<lkcl> the array of generators is precisely and exactly what i was talking about
<lkcl> and the synchronisation i was referring to is being taken care of by run_with
<lkcl> the only thing.... i have absolutely no idea where SimCase comes from, because of the "import *"
<lkcl> attie: found it. had to guess where it was, from the name of the module. i guessed "tbsupport" was "test bench support"
m4ssi has joined #m-labs
cr1901_modern has joined #m-labs
<_whitenotifier> [nmigen] whitequark commented on issue #43: process function is defined but not used in test case - https://git.io/fjeBL
<attie> oh, yes, sorry
edef has quit [Read error: error:1408F10B:SSL routines:ssl3_get_record:wrong version number]
edef has joined #m-labs
<attie> that's just some boilerplate to make it use unittest
<attie> lkcl: here's an example that doesn't use the unittest stuff (from my integration test): https://github.com/nakengelhardt/fpgagraphlib/blob/da86b4f216b4a60796f4c708c552aee5def77c59/src/core_top_pico.py#L374
<attie> (with bonus clock domains but I guess that works differently in nmigen)
bluebugs has joined #m-labs
bluebugs has quit [Changing host]
bluebugs has joined #m-labs
cedric has quit [Ping timeout: 246 seconds]
<lkcl> attie: ooOo :) so, that's really helpful: it's allowed me to establish that run_simulation takes an array/dictionary of generator functions, which i hadn't expected
<lkcl> and is great news to discover
rohitksingh_work has quit [Read error: Connection reset by peer]
<lkcl> attie: yay, got it! split out pipeline-send from pipeline-receive, which is a good start.
<lkcl> the next thing i can do is the multi-input single-output multiplexer
bluebugs has quit [Quit: ZNC 1.7.1 - https://znc.in]
cedric has joined #m-labs
cedric has quit [Changing host]
cedric has joined #m-labs
rohitksingh has joined #m-labs
proteusguy has quit [Ping timeout: 252 seconds]
kristianpaul has quit [Quit: leaving]
kristianpaul has joined #m-labs
mumptai has joined #m-labs
kristianpaul has quit [Quit: Lost terminal]
kristianpaul has joined #m-labs
m4ssi has quit [Remote host closed the connection]
rohitksingh has quit [Ping timeout: 252 seconds]
mauz555 has joined #m-labs
<cr1901_modern> attie: What is fpgagraphlib, out of curiosity?
rohitksingh has joined #m-labs
proteusguy has joined #m-labs
mauz555 has quit []
rohitksingh has quit [Ping timeout: 246 seconds]
proteusguy has quit [Ping timeout: 252 seconds]
mumptai has quit [Remote host closed the connection]
futarisIRCcloud has joined #m-labs
Gurty has quit [Ping timeout: 258 seconds]