*** tpb has joined #litex | 00:00 | |
*** cjearls has quit IRC | 00:12 | |
*** lf has quit IRC | 00:55 | |
*** lf has joined #litex | 00:56 | |
*** Degi_ has joined #litex | 01:09 | |
*** Degi has quit IRC | 01:13 | |
*** Degi_ is now known as Degi | 01:13 | |
*** Dolu has quit IRC | 01:16 | |
*** scanakci has joined #litex | 01:25 | |
*** captain_morgan has quit IRC | 01:35 | |
*** captain_morgan has joined #litex | 01:43 | |
*** captain_morgan has quit IRC | 01:44 | |
*** captain_morgan has joined #litex | 01:45 | |
*** vitalmixofnutrie has quit IRC | 02:10 | |
*** vitalmixofnutrie has joined #litex | 02:47 | |
*** TMM has quit IRC | 02:49 | |
*** TMM has joined #litex | 02:51 | |
*** CarlFK has quit IRC | 03:53 | |
*** CarlFK has joined #litex | 04:07 | |
*** lkcl has quit IRC | 04:28 | |
*** lkcl has joined #litex | 04:40 | |
*** vitalmixofnutrie has quit IRC | 04:59 | |
*** lkcl has quit IRC | 05:15 | |
*** lkcl has joined #litex | 05:27 | |
*** Bertl_zZ is now known as Bertl | 06:09 | |
*** Bertl is now known as Bertl_oO | 06:31 | |
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 | 08:52 |
---|---|---|
joseng | FIFO on write and read ports. | 08:52 |
joseng | But I never saw this anywhere in migen/litex where a FIFO is used. | 08:52 |
daveshah | There's no need for that. The place and route tooling will ensure that setup/hold times are met | 08:55 |
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 | 08:55 |
joseng | Ah interesting, didn't know that. Thanks | 08:59 |
_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: | 09:01 |
_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 | 09:02 |
_florent_ | I did some test with LiteICLink and the Versa ECP5 at the linerates used for SATA1 and SATA2: 1.5Gbps and 3.0Gbps | 09:02 |
_florent_ | here: https://github.com/enjoy-digital/liteiclink/tree/master/bench/serdes | 09:02 |
daveshah | Thanks, thats useful | 09:03 |
_florent_ | ./versa_ecp5.py --linerate=1.5e9 (or 3.0e9) --build --load | 09:03 |
_florent_ | sorry | 09:03 |
_florent_ | ./versa_ecp5.py --linerate=1.5e9 (or 3.0e9) --connector=pcie (or sma) --build --load | 09:04 |
_florent_ | you can then use a pcie loopback module or sma cable to do the loopback | 09:04 |
_florent_ | the RX leds should be blinking with the counter generated on TX | 09:04 |
_florent_ | the PRBS test can also be run with litex_server and ./test_prbs.py | 09:05 |
_florent_ | I've been able to get 0 errors with the PRBS test, so it shouldn't be too bad | 09:07 |
_florent_ | but that's possible some adjustments still need to be done on the SerDes parameters | 09:07 |
_florent_ | I also created a branch in LiteSATA: https://github.com/enjoy-digital/litesata/tree/ecp5 | 09:08 |
_florent_ | where I started the integration and started working on OOB | 09:08 |
_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 | 09:09 |
_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 | 09:10 |
daveshah | Great, I'll find some time to give it a try when my ECPIX arrives | 09:10 |
*** peeps[zen] has joined #litex | 09:14 | |
*** peepsalot has quit IRC | 09:15 | |
_florent_ | daveshah: great | 09:15 |
daveshah | Being able to capture to a SATA SSD definitely opens up a lot of interesting ideas | 09:16 |
_florent_ | Indeed, Artix7/Ultrascale(+) support has been added recently, but EPC5 would be really nice | 09:18 |
_florent_ | For these tests I was using a minimal bench with just the PHY and LiteScope in place: https://github.com/enjoy-digital/litesata/blob/ecp5/bench/versa_ecp5.py | 09:19 |
_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) | 09:23 |
*** acathla has quit IRC | 09:47 | |
*** acathla has joined #litex | 09:48 | |
*** acathla has quit IRC | 10:06 | |
*** acathla has joined #litex | 10:06 | |
zyp | ah, ECPIX is available to order now, nice | 10:19 |
*** Dolu has joined #litex | 10:35 | |
acathla | Wow, nice board! | 10:41 |
keesj | seen nice one also? https://shop.lambdaconcept.com/home/46-1-ecpix-5.html#/1-ecpix_5_fpga-ecpix_5_45f | 11:02 |
tpb | Title: ECPIX-5 (at shop.lambdaconcept.com) | 11:02 |
zyp | I just ordered one :) | 11:17 |
*** futarisIRCcloud has joined #litex | 11:23 | |
*** midnight has quit IRC | 11:51 | |
*** midnight has joined #litex | 12:00 | |
*** futarisIRCcloud has quit IRC | 13:32 | |
*** Degi has quit IRC | 14:10 | |
*** Degi has joined #litex | 14:16 | |
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 | 15:03 |
daveshah | Yes fwft defaults to true | 15:05 |
daveshah | https://github.com/m-labs/migen/blob/master/migen/genlib/fifo.py#L99 | 15:05 |
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 | 15:06 |
*** FFY00 has quit IRC | 16:13 | |
*** FFY00 has joined #litex | 16:13 | |
*** Xesxen has quit IRC | 16:22 | |
*** Xesxen has joined #litex | 16:23 | |
*** peeps[zen] is now known as peepsalot | 17:20 | |
*** roboknight has joined #litex | 19:01 | |
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. | 19:05 |
roboknight | I was wondering if there might be an issue with multi-level interrupts or something along those lines. | 19:05 |
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. | 19:07 |
*** futarisIRCcloud has joined #litex | 19:15 | |
roboknight | I guess I'll stick to UART polling for a while... seems like that works. For now anyway. | 19:23 |
*** scanakci has quit IRC | 19:54 | |
*** roboknight has left #litex | 20:28 | |
*** m4ssi has joined #litex | 20:58 | |
*** Bertl_oO is now known as Bertl_zZ | 21:36 | |
*** CarlFK has quit IRC | 22:12 | |
joseng | Is there any way to reset/empty FIFOs? | 22:32 |
*** m4ssi has quit IRC | 22:33 | |
zyp | I don't think so, but I guess it might work with a ResetInserter | 22:38 |
*** midnight has quit IRC | 22:55 | |
*** midnight has joined #litex | 22:59 | |
joseng | Hmm ok, then I have a look at it, thanks | 23:14 |
*** midnight has quit IRC | 23:15 | |
*** midnight has joined #litex | 23:33 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!