<sb0>
_florent_: shouldn't jsync meet setup/hold at the FPGA?
<sb0>
whitequark: ok
<sb0>
_florent_: right now it's just getting the bare signal from the I/O and using it to control several FSMs, without any sort of synchronization. or am I missing out something?
<sb0>
_florent_: or, if it doesn't have to meet setup/hold, it should be synchronized with MultiReg before being fed to the different FSMs
<sb0>
right now, the FSMs aren't even guaranteed to start at the same time. worse, depending on the synthesizer output and timing of jsync, you can even corrupt FSM state entirely.
<sb0>
whitequark: will nmigen forbid this kind of thing?
<sb0>
including with i/o
<whitequark>
sb0: that's the idea, yes
<whitequark>
all external inputs are asynchronous
<sb0>
_florent_: "Each receiver must locate K (K28.5) characters in its input data stream. After four consecutive K characters are detected on all link lanes, the receiver block deasserts the SYNCOUTx± signal to the transmitter block at the LMFC edge.The transmitter captures the change in the SYNCOUTx± signal, and at a future transmitter LMFC rising edge, starts the initial ILAS."
<sb0>
this seems to say that ILAS should start when SYNC is *low*?
hartytp has joined #m-labs
<hartytp>
sbo: thanks, that's just what I wanted
<hartytp>
sb0: okay, I see roughly how that works
dlrobertson has joined #m-labs
m4ssi has joined #m-labs
m4ssi has quit [Remote host closed the connection]