Wednesday, 2023-07-12

*** tpb <[email protected]> has joined #litex00:00
*** dark_star_1 <[email protected]> has quit IRC (Ping timeout: 240 seconds)00:03
*** dark_star_1 <[email protected]> has joined #litex00:37
*** joseng <[email protected]> has quit IRC (Ping timeout: 260 seconds)02:14
*** joseng <[email protected]> has joined #litex02:18
*** Degi_ <[email protected]> has joined #litex02:59
*** Degi <[email protected]> has quit IRC (Ping timeout: 245 seconds)03:00
*** Degi_ is now known as Degi03:00
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has quit IRC (Remote host closed the connection)04:13
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has joined #litex04:13
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::4> has quit IRC (Quit: Leaving)04:31
*** FabM <FabM!~FabM@2a03:d604:103:600:2e60:8c7c:e8fb:7990> has joined #litex05:42
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has quit IRC (Remote host closed the connection)05:58
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has joined #litex05:58
*** _whitelogger <[email protected]> has quit IRC (Ping timeout: 246 seconds)06:01
*** _whitelogger <[email protected]> has joined #litex06:02
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has quit IRC (Remote host closed the connection)06:18
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has joined #litex06:21
riktwHi everyone. I have a quick question. I'm doing stuff with Litex lately, I got a SoC and added a few peripherals and want to make some software for it. My current approach is to use the litex_term to upload new software in it. I compile and then reboot the FPGA, the bios starts and software is loaded in.07:28
riktwThis all works pretty nicely. But every boot the bios does a memtest and memory speed test. Is this something that can be disabled easily via an argument on building the SoC, or do I need to comment it out or such in the bios sourcecode?07:29
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)07:52
*** TMM_ <[email protected]> has joined #litex07:53
_florent_riktw: Hi, you can disable the sdram test with https://github.com/enjoy-digital/litex/blob/master/litex/tools/litex_sim.py#L21908:11
_florent_this is used here in simulation to avoid corrupting data that has been pre-initialized08:12
riktw@_florent_, Ah cool, I'll give that a try :) 08:16
*** shorne <[email protected]> has quit IRC (Read error: Connection reset by peer)10:39
*** shorne <[email protected]> has joined #litex10:44
sensillei really have a hard time with the litex documentation. i have my script that builds the bitstream for ecp5 with diamond. how do i use it for a simulation now? the project is mixed verilog/vhdl11:41
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has quit IRC (Remote host closed the connection)13:09
*** GNUmoon <GNUmoon!~GNUmoon@gateway/tor-sasl/gnumoon> has joined #litex13:10
*** lexano <[email protected]> has quit IRC (Remote host closed the connection)13:20
_florent_sensille: If you want to simulate with verilator, you'll first have to convert your vhdl to verilog, this can be done like this: https://github.com/enjoy-digital/litex/blob/master/litex/soc/cores/cpu/neorv32/core.py#L121-L17116:04
gurkinote that this ^ can backfire badly, since vhdl and verilog are quite different16:06
sensillei tried that some time ago, but the amount of errors it spilled out was not encouraging. trying to get modelsim to work for now.16:06
gurkii wouldnt trust a simulation/validation done with a conversion to be true to the original16:07
_florent_sensille: with modelsim, you'll have to create a small testbench around the generated LiteX design and provide all the files used in the LiteX design to modelsim.16:08
gurkiwe need vhdlator! :316:09
gurkiscnr16:09
sensillemixelator16:09
_florent_gurki: GHDL has greatly improved the last years on this and we can succesfully already simulate nice VHDL projects with it: Ex Microwatt, NeoRV32 or Mister's Scaler core. 16:10
_florent_gurki: I've also used it to develop some VHDL code for clients without issues.16:10
gurki'it runs. somehow.' doesnt equal validation of the original hdl though16:11
sensillethe code I use has internal tri-state busses. can ghdl handle that?16:11
gurkii have synthesized both converted and not converted neorv32 for funsies a while ago. quite different results16:12
gurkiso no, i dont trust thiw conversion16:13
gurkibut im derailing. lets talk sensilles actual problems :)16:14
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::4> has joined #litex16:26
jevinskie[m]I once added cocotb support which worked, iirc, with modelsim. I also once made a VPI wrapper around the LiteX verilator sim modules so they could work across simulators (iverilog was my target then) https://github.com/jevinskie/litex/blob/jev/main-old/litex/build/sim/cocotb.py17:39
jevinskie[m]If there’s interest I could resurrect those and add modelsim/questasim support 17:40
gurkijevinskie[m]: how can i buy you coffee to convince you to do so? :317:46
riktw_florent_: I had to go for self.add_constant("CONFIG_MAIN_RAM_INIT") and not SDRAM_TEST_DISABLE as I'm using a Tang nano with hyperram, but that makes development a little easier :) 17:57
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has quit IRC (Read error: Connection reset by peer)18:20
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has joined #litex18:20
*** FabM <FabM!~FabM@armadeus/team/FabM> has quit IRC (Ping timeout: 245 seconds)18:48
*** sakman <[email protected]> has quit IRC (Quit: Leaving)18:50
cr1901cocotb explicitly doesn't support mingw python (what could they be doing that's _so_ advanced that it _mandates_ MSVC ABI?) and I'm not completely changing my workflow for a single package. So unfortunately I can't use it.19:49
sensillemodelsim does not seem to handle the generated verilog well20:16
sensilleIteration limit 5000 reached at time 0 fs.20:16
sensillebut i'm still at the start of understanding this20:16
sensillefirst thing to notice is that it uses non-blocking assignments in always (@*) blocks20:18
cr1901That is considered good form, tho I couldn't tell you why offhand (see Cliff Cummings' papers on nonblocking assignments for an actual reason)20:19
sensille"Guideline: Use blocking assignments in always blocks that are written to generate20:19
sensillecombinational logic"20:19
sensille(from the mentioned paper, which states the opposite)20:24
cr1901sensille: You're correct, I swapped the two in my head20:26
cr1901meaning if I wrote out an example I would've used "=" and called in "nonblocking" lmao20:26
*** so-offishul <[email protected]> has joined #litex21:27
*** so-offishul <[email protected]> has quit IRC (Remote host closed the connection)21:28
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::4> has quit IRC (Ping timeout: 240 seconds)21:29
*** awordnot8 <awordnot8!~awordnot@user/awordnot> has joined #litex23:23
*** Melkhior_ <Melkhior_!~Melkhior@2a01:e0a:1b7:12a0:225:90ff:fefb:e717> has joined #litex23:23
*** keesj1 <[email protected]> has joined #litex23:25
*** acathla_ <[email protected]> has joined #litex23:27
*** awordnot <awordnot!~awordnot@user/awordnot> has quit IRC (*.net *.split)23:32
*** keesj <[email protected]> has quit IRC (*.net *.split)23:32
*** Melkhior <Melkhior!~Melkhior@2a01:e0a:1b7:12a0:225:90ff:fefb:e717> has quit IRC (*.net *.split)23:32
*** acathla <[email protected]> has quit IRC (*.net *.split)23:32
*** awordnot8 is now known as awordnot23:32
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)23:37
*** TMM_ <[email protected]> has joined #litex23:38
jevinskie[m]There is a toggle in the Verilog generator that might fix that  https://github.com/enjoy-digital/litex/blob/3a2586c48b276b66b7d92037c12c0d9e2aff8836/litex/gen/fhdl/verilog.py#L53423:53

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