Wednesday, 2022-03-23

*** tpb <[email protected]> has joined #litex00:00
*** ilia__s <[email protected]> has joined #litex00:47
*** ilia__s6 <[email protected]> has quit IRC (Ping timeout: 260 seconds)00:50
*** Wolfvak <[email protected]> has quit IRC (Quit: ZNC - https://znc.in)01:00
*** Wolfvak <[email protected]> has joined #litex01:10
*** Degi <[email protected]> has quit IRC (Ping timeout: 256 seconds)02:30
*** Degi <[email protected]> has joined #litex02:32
*** cr1901_ <cr1901_!~cr1901@2601:8d:8600:911:258e:a763:608d:bfea> has joined #litex05:12
*** cr1901 <cr1901!~cr1901@2601:8d:8600:911:8c5b:d8c8:b4df:ee9> has quit IRC (Ping timeout: 252 seconds)05:15
*** cr1901_ is now known as cr190105:15
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has quit IRC (Quit: Connection reset by peep)06:05
*** FabM <FabM!~FabM@2a03:d604:103:600:aac5:208d:83c8:4c29> has joined #litex06:37
*** nelgau <[email protected]> has joined #litex07:23
tnt_florent_: Morning.07:37
tnt_florent_: Did you ever investigate the UART Rx/Tx lines on the quad recorder ?07:37
tntThey're not in the platform file but there is clearly a marked uart connector. Not sure if it's connected to the fpga though.07:39
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has joined #litex08:38
*** C-Man <[email protected]> has quit IRC (Ping timeout: 256 seconds)08:50
*** sebo <[email protected]> has joined #litex09:13
_florent_tnt: Hi, I think I only investigated the debug pins, not the UART ones09:21
_florent_tnt: But I could give it a try if this could be useful for you09:22
_florent_tnt: Otherwise, on the quad recorder, I'm not sure I got LitePCIe working yet with it. It should not be far and the PCIe lanes should be fine, but last time I tried I think the PCIe was not enumerated correctly.09:23
_florent_tnt: This could be related to the issue you saw in the last week or a wrong reset signal09:23
_florent_tnt: Happy to put more effort on this if you are also playing with it.09:24
*** sebo <[email protected]> has quit IRC (Ping timeout: 240 seconds)09:27
tnt_florent_: I ordered a card yesterday. Not really for me, it's just to have a platform with litepcie I can ship to someone helping me on the software/kernel side that's hopefully close enough to the real target hardware (which is both expensive and hard to find ATM so I can't just ship them one of those boards).09:47
*** sebo <[email protected]> has joined #litex09:47
*** sebo_ <[email protected]> has joined #litex10:05
_florent_https://usercontent.irccloud-cdn.com/file/cd2lq3hU/DSC_0901.JPG10:07
_florent_https://usercontent.irccloud-cdn.com/file/a6M5dVPt/DSC_0902.JPG10:07
*** sebo <[email protected]> has quit IRC (Ping timeout: 252 seconds)10:08
_florent_tnt: now you have the UART pins :): https://github.com/litex-hub/litex-boards/commit/73458ae9d7b0dd7a8580f70a6861c6e488d95c7b10:09
tnt_florent_: :)10:10
tntAre they level translated to 3v3 or are them 1v5 ?10:10
_florent_it's translated to 3.3v10:10
tntOh is the DDR what you unsoldered or did they reduce it to 1 bank ?  (I was just using reference pics from https://www.thomann.de/be/blackmagic_design_decklink_quad_hdmi_recorder.htm )10:12
tpbTitle: Blackmagic Design DeckLink Quad HDMI Recorder – Thomann België (at www.thomann.de)10:12
tntnice to see what's under the heatsink. Looks like just a flash and the clock gen maybe ?10:13
_florent_tnt: In fact I originally desoldered the 4 DDR for probing10:14
_florent_tnt: I then reballed 2 and resoldered them and got LiteDRAM working on these 210:15
_florent_tnt: but I damaged on DDR module, so need to order a few to resolder them10:15
_florent_but for my current tests, I already have enough bandwidth with the 2 modules10:16
*** sebo_ <[email protected]> has quit IRC (Ping timeout: 256 seconds)10:16
tnt_florent_: I haven't looked yet, but how fast has litedram been tested with for DDR3 / DDR4 ?10:17
*** sebo_ <[email protected]> has joined #litex10:20
_florent_tnt: On a Kintex7, I did this overclocking test last year: https://twitter.com/enjoy_digital/status/135762838663457587310:20
_florent_tnt: the DDR3 was rated for 1600MT/s10:21
_florent_tnt: On DDR4/Ultrascale, I'm also using it on client's designs at up to 1400-1600MT/s too10:22
tntOk nice. I'll have a go at 250 MHz sysclk see if that works on the usp+ ddr4.10:24
tntIt'd just fit nicely with the samplerate of 245.76Msps.10:24
_florent_IIRC the limiting factor is the max bufg frequency currently (but the DRC can be disabled for tests)10:29
*** sebo__ <[email protected]> has joined #litex10:30
tntIf it's an issue, it's not the end of the world, I just like to keep things synchronous when I can and having all the DSP run at 1 sample per cycle is just more convenient.10:31
*** sebo_ <[email protected]> has quit IRC (Ping timeout: 256 seconds)10:33
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has quit IRC (Quit: Connection reset by peep)10:34
*** C-Man <[email protected]> has joined #litex10:36
*** sebo__ <[email protected]> has quit IRC (Ping timeout: 260 seconds)11:08
_florent_tnt: I just re-tested the PCIe on the HDMI Quad Recorder11:25
_florent_tnt: and it seems to work fine11:25
_florent_https://www.irccloud.com/pastebin/BKmVJNT6/11:25
tpbTitle: Snippet | IRCCloud (at www.irccloud.com)11:25
*** sebo__ <[email protected]> has joined #litex11:33
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has joined #litex11:35
*** Coldberg <[email protected]> has joined #litex11:35
tnt_florent_: awesome thanks !11:35
tnti'm hoping to receive mine before the weekend ...11:35
*** C-Man <[email protected]> has quit IRC (Ping timeout: 240 seconds)11:38
*** sebo__ <[email protected]> has quit IRC (Remote host closed the connection)11:41
*** sebo__ <[email protected]> has joined #litex11:41
*** sebo__ <[email protected]> has quit IRC (Ping timeout: 252 seconds)12:00
*** sebo__ <[email protected]> has joined #litex12:15
*** sebo_ <[email protected]> has joined #litex12:29
*** sebo__ <[email protected]> has quit IRC (Ping timeout: 252 seconds)12:32
_florent_tnt: back from lunch, I just also tested the DMA and it's also working13:13
_florent_tnt: but it seems the link was downgraded to 1X instead of 4X, I'll have a look13:13
_florent_tnt: otherwise, you might find this useful if you use LiteScope to debug your design: https://twitter.com/enjoy_digital/status/150412667015604634513:15
_florent_it's just a quick PoC for now, but can already be more convenient than the command line13:16
_florent_tnt: When changing the PCIe slot, the card is now correctly recognized as X4, so maybe it was just not correctly inserted.13:34
acathlahttps://github.com/litex-hub/litespi/blob/master/litespi/core/mmap.py#L169-L170 those two lines seem useless. And it frees 4 LC on an ice40 \o/13:34
tnt_florent_: some physical slots are physical x4 and only wired for x1 ... what mother board is it ?13:35
tnt_florent_: board itself is x8 also not x4 :p13:36
tnt_florent_: I'll give the litescope cli a try next time I need to use it.  ATM I run the capture on a remote host and scp the vcd to mylaptop.13:36
_florent_tnt: Indeed, forgot the board was x8, while it's still in the computer, let's do a test!13:39
_florent_tnt: BTW, it's also possible to only run litex_server on the remote host and litex_cli/litescope_cli on your local machine13:40
tnt_florent_: yeah, I know but I usually find the added latency hurts performance. Although now that there is long bursting, I should retry that since it might have lessened the impact of wifi latency quite a bit.13:41
_florent_It's possible but I don't use this very often, only for some specific use-cases13:42
tntDamnit, just spend like 30 min trying to debug i2c accesses and why it was not working ... to realize I got the i2c pin assignement wrong in the platform ... confused bank 64 and bank 67 on the schematic.13:42
cr1901It happens :)13:44
_florent_Arf... 13:49
tntYeah, I got confused because I had just modified my i2c controller so a single controller could control multiple physical bus/pins-pairs and so naturally I thought I had screwed that part up, not the actual pin assignement.13:50
tnt_florent_: btw have you seen this https://libre-soc.org/docs/gtkwave_tutorial/ ?13:51
tpbTitle: gtkwave tutorial (at libre-soc.org)13:51
tntGenerating gtkw from litescope directly with better hierarchical names and fsm state names and such would be pretty cool :)13:53
acathlaOh, colors!13:57
_florent_tnt: in fact we should first add hierachy to the generated verilog (it should be possible by keep Migen for now and revisiting the final verilog generation steps)14:01
_florent_tnt: but yes, adding colors to LiteScope would be good14:01
_florent_tnt: we also have some code that is used by litex_sim: https://github.com/enjoy-digital/litex/blob/master/litex/build/sim/gtkwave.py14:01
_florent_acathla: Thanks, I'll have a look at the LiteSPI changes you suggest14:03
_florent_tnt: PCIe 8X is also working on the decklink quad hdmi recorder14:21
tnt_florent_: Ok great. I'll need to test that here, it'll be interesting if it works here. (still not working on the adi board for some reason even after regenerating the .xci and sys_clk 200M, but I haven't dug further for now).14:23
_florent_tnt: but just for info, there still seems to be an issue when enabling both DRAM and PCIe on this board: when enabling DRAM, the board is enumerared with lspci, but accesses do not work.14:25
_florent_tnt: so when testing PCIe, maybe first disable DRAM with --integrated-main-ram-size=0x10014:25
_florent_I added a note: https://github.com/litex-hub/litex-boards/blob/master/litex_boards/targets/decklink_quad_hdmi_recorder.py#L90-L9114:26
tntOh, that's weird.14:37
_florent_tnt: I'll try to investigate, but just wanted to share this with you to avoid loosing time14:47
tnt_florent_: yup thanks.14:48
_florent_tnt: I think that's the reason why PCIe was not working when I was tested it in the past14:49
_florent_Thanks @acathla, the changes make sense and are integrated with https://github.com/litex-hub/litespi/commit/7d32810ee05eb96e5cf4152483a3e1e501f9113c14:55
jevinskie[m]<_florent_> "tnt: in fact we should first add..." <- _florent_ verilog hierarchy!? Be still my heart, that is my biggest peeve with migen that amaranth solves. Would be great for waveform viewing as mentioned but also for design viewing in Quartus/Vivado and resource usage breakdown 15:00
acathla_florent_, thanks! That's a major improvement =)15:01
*** sebo_ <[email protected]> has quit IRC (Ping timeout: 256 seconds)15:20
*** sebo_ <[email protected]> has joined #litex15:24
tntIs there a way to specify a default pullup in the platform file ?15:40
*** Ikkepop <[email protected]> has joined #litex16:01
*** Coldberg <[email protected]> has quit IRC (Ping timeout: 260 seconds)16:05
tntnm, got it. Misc("PULLUP") works.16:06
*** sebo_ <[email protected]> has quit IRC (Ping timeout: 240 seconds)17:43
_florent_jevinskie[m]: It's becoming limiting yes to not have the hierarchy. I already reworked/replaced the final verilog generation a few weeks ago and would like to go continue and go further to have the hierachy (at least optionally).18:08
*** FabM <FabM!~FabM@armadeus/team/FabM> has quit IRC (Ping timeout: 240 seconds)20:56
*** Ikkepop <[email protected]> has quit IRC (Ping timeout: 240 seconds)21:49
*** C-Man <[email protected]> has joined #litex22:52
SpaceCoasterWhat is the hierarchy?23:43

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!