sb0 has joined #m-labs
rohitksingh_work has joined #m-labs
sb0 has quit [Quit: Leaving]
sb0 has joined #m-labs
<
sb0>
rjo, whitequark I have ordered a new CPU for the buildbot, will probably install it Monday
<
sb0>
or this weekend, depending when it arrives
Gurty has quit [Ping timeout: 240 seconds]
Gurty has joined #m-labs
Gurty has joined #m-labs
Gurty has quit [Changing host]
Gurty has quit [Ping timeout: 240 seconds]
Gurty has joined #m-labs
futarisIRCcloud has joined #m-labs
rohitksingh_wor1 has joined #m-labs
rohitksingh_work has quit [Ping timeout: 258 seconds]
sb0 has quit [Quit: Leaving]
<
whitequark>
sb0: excellent
sb0 has joined #m-labs
rohitksingh_wor1 has quit [Read error: Connection reset by peer]
rohitksingh has joined #m-labs
<
whitequark>
sb0: hm, weird
<
whitequark>
I redid the arbiter but now the DMA core hangs
*every* time, inexplicabl
<
whitequark>
enable_read() never comes down, I have not yet instrumented the FSMs again
<
sb0>
did it pass timing?
<
GitHub>
artiq/master 391660e whitequark: gateware: simplify the CRI arbiter to use a plain mux.
<
whitequark>
sb0: does vivado save a log somewhere? tmux ate the backscroll
<
whitequark>
another question: is there some flag we can set that makes vivado just outright fail if the timing doesn't pass?
<
whitequark>
(why is that not the case in first place?!)
<
sb0>
whitequark, you have mapped the cri_con CSRs to the comms CPU
<
sb0>
this should go to the kernel CPU
<
sb0>
whitequark, yes, vivado saves a log (vivado.jou iirc) and there is also the timing report file
<
sb0>
I don't know about such an optio
<
whitequark>
sb0: oh
<
whitequark>
that would do it
<
whitequark>
sb0: actually, why did it just do nothing?
<
whitequark>
I'd expect an exception
<
sb0>
whitequark, yes, it should have done nothing
<
sb0>
whitequark, what exception and why?
<
whitequark>
access to a nonexistent CSR
<
whitequark>
so a bus error or something
<
sb0>
ah. this. i thought you were talking about the DMA core
<
sb0>
detecting non-existent CSRs requires additional logic that isn't there
<
sb0>
and if adding it, it should be done in a way that doesn't slow down the sluggish xilinx fpgas any further
<
whitequark>
does adding cri_con at 0x70000000 sound ok?
<
whitequark>
oh nvm it detects conflicts
<
whitequark>
regarding vivado not being able to fail the build on timing failure: that's idiotic
<
whitequark>
I can't believe this isn't the single most obvious feature to add wanted by anyone ever touching an FPGA
<
whitequark>
do they use their own software?
<
rjo>
afaict automated building and ci on fpgas the way we do it is "very exotic".
<
rjo>
people tend to babysit it.
<
whitequark>
even when I build manually I have very little desire to read the log every time to make sure the PAR didn't strike an instability
<
sb0>
ISE printed a clear message "All constraints were met" (or not) at the end, but Vivado does not
<
whitequark>
sb0: this is interesting
<
whitequark>
but it hangs in a more interesting way
<
whitequark>
oh nevermind
<
whitequark>
sb0: doesn't hang
<
whitequark>
in fact the DMA core now works quite nicely
<
sb0>
good! finally
<
whitequark>
well the question is why?
<
whitequark>
meet the new switch, essentially the same as the old switch
<
whitequark>
there is no functional difference given the way we drive it
<
sb0>
I would guess xilinx miscompilation, or timing failure not found by the xilinx timing models
<
sb0>
the second option is less likely considering that the freeze spray did nothing
<
sb0>
whitequark, so, there's still #700
<
whitequark>
I'm working on that already
_whitelogger has quit [K-Lined]
_whitelogger has joined #m-labs
<
GitHub>
artiq/master 674bf82 Sebastien Bourdeauducq: gateware: add cri_con CSRs to all DMA-capable targets
<
GitHub>
artiq/master 5e3aef4 Sebastien Bourdeauducq: drtio: support collision/replace + detect sequence errors at satellite
whitequark has joined #m-labs
cedric has joined #m-labs
cedric has joined #m-labs
cedric has quit [Changing host]
rohitksingh has quit [Quit: Leaving.]
mumptai has joined #m-labs
mumptai has quit [Quit: Verlassend]