vitalmixofnutrie has quit [Ping timeout: 268 seconds]
lkcl has quit [Ping timeout: 265 seconds]
lkcl has joined #litex
Bertl_zZ is now known as Bertl
Bertl is now known as Bertl_oO
<joseng>
FIFO on write and read ports.
<joseng>
Hi guys, in all my designs so far with VHDL for xilinx devices I needed to use the inverted clock for the FIFO ports, otherwise lets say the FSM is on the "sys" clock and changes the WE signal of the fifo, the signals would change with the rising edge of the fifo. So when the fifo should latch. This is why I every time used the inverted clock for a
<joseng>
But I never saw this anywhere in migen/litex where a FIFO is used.
<daveshah>
There's no need for that. The place and route tooling will ensure that setup/hold times are met
<daveshah>
Using the opposite edge of the clock only serves to reduce the available timing period from one clock cycle to half a clock cycle, and can actually halve Fmax in the worst case scenario
<joseng>
Ah interesting, didn't know that. Thanks
<_florent_>
daveshah: Hi, I saw on discord you were eventually interested in trying to get LiteSATA running on ECP5, just want to share some info that can be useful I think:
<_florent_>
I initiated some work recently on that, but only had a few hours to work on this, so there is still work to do
<_florent_>
I did some test with LiteICLink and the Versa ECP5 at the linerates used for SATA1 and SATA2: 1.5Gbps and 3.0Gbps
<_florent_>
where I started the integration and started working on OOB
<_florent_>
sata-specification.3.3.gaps-filled-by-sata-qvip_vh-v14-i1.pdf could be useful if you want to understand OOB on SATA
<_florent_>
I was able to see the COMINIT to see and detect the COMINIT from the device and send the COMWAKE but was not seeing the COMAWAKE from the device
<daveshah>
Great, I'll find some time to give it a try when my ECPIX arrives
peeps[zen] has joined #litex
peepsalot has quit [Ping timeout: 240 seconds]
<_florent_>
daveshah: great
<daveshah>
Being able to capture to a SATA SSD definitely opens up a lot of interesting ideas
<_florent_>
Indeed, Artix7/Ultrascale(+) support has been added recently, but EPC5 would be really nice
<_florent_>
I suspect the OOB from the FPGA are not received by the SSD (COMINIT are generated spontaneously by the SSD, even without sending COMRESET)
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
Degi has quit [Ping timeout: 240 seconds]
Degi has joined #litex
<joseng>
Am I right in the assumption that the async FIFOs in migen are First Word Fall Through (by default)? Seems to from my tests with it and and watch the output with litescope
<joseng>
For the SyncFIFO I saw that there is a parameter, but I mean the AsyncFIFO. Need to cross from the SerDes clock domain to sys
FFY00 has quit [Ping timeout: 260 seconds]
FFY00 has joined #litex
Xesxen has quit [Quit: No Ping reply in 180 seconds.]
Xesxen has joined #litex
peeps[zen] is now known as peepsalot
roboknight has joined #litex
<roboknight>
Okay, I've gotten the vexrisc running a very short piece of blinky code (not the LedChaser, but some actual software manipulating Leds). I can see the LEDs running. I can even get serial output that I can see. But if I output more than about 16 or so characters, it freezes (no more sweeping LEDs) and no output.
<roboknight>
I was wondering if there might be an issue with multi-level interrupts or something along those lines.
<roboknight>
The ice40-hx8k is VERY small (maybe too small), but I can pack the code in with about 2K ram and about 10K of rom (that nearly exhausts my 32 ram blocks)... I haven't moved to XIP flash yet, but that's where I'm trying to head.
futarisIRCcloud has joined #litex
<roboknight>
I guess I'll stick to UART polling for a while... seems like that works. For now anyway.
scanakci has quit [Quit: Connection closed for inactivity]
roboknight has left #litex [#litex]
m4ssi has joined #litex
Bertl_oO is now known as Bertl_zZ
CarlFK has quit [Quit: Leaving.]
<joseng>
Is there any way to reset/empty FIFOs?
m4ssi has quit [Remote host closed the connection]
<zyp>
I don't think so, but I guess it might work with a ResetInserter