_florent_ changed the topic of #litex to: LiteX FPGA SoC builder and Cores / Github : https://github.com/enjoy-digital, https://github.com/litex-hub / Logs: https://libera.irclog.whitequark.org/litex
tpb has quit [Remote host closed the connection]
tpb has joined #litex
dark_star_1 has quit [Ping timeout: 240 seconds]
dark_star_1 has joined #litex
joseng has quit [Ping timeout: 260 seconds]
joseng has joined #litex
Degi_ has joined #litex
Degi has quit [Ping timeout: 245 seconds]
Degi_ is now known as Degi
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #litex
so-offish has quit [Quit: Leaving]
FabM has joined #litex
FabM has joined #litex
FabM has quit [Changing host]
GNUmoon has quit [Remote host closed the connection]
_whitelogger has joined #litex
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #litex
<riktw> Hi 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.
<riktw> This 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?
TMM_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM_ has joined #litex
<_florent_> riktw: Hi, you can disable the sdram test with https://github.com/enjoy-digital/litex/blob/master/litex/tools/litex_sim.py#L219
<_florent_> this is used here in simulation to avoid corrupting data that has been pre-initialized
<riktw> @_florent_, Ah cool, I'll give that a try :)
shorne has quit [Read error: Connection reset by peer]
shorne has joined #litex
<sensille> i 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/vhdl
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #litex
lexano has quit [Remote host closed the connection]
<_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-L171
<gurki> note that this ^ can backfire badly, since vhdl and verilog are quite different
<sensille> i tried that some time ago, but the amount of errors it spilled out was not encouraging. trying to get modelsim to work for now.
<gurki> i wouldnt trust a simulation/validation done with a conversion to be true to the original
<_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.
<gurki> we need vhdlator! :3
<gurki> scnr
<sensille> mixelator
<_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.
<_florent_> gurki: I've also used it to develop some VHDL code for clients without issues.
<gurki> 'it runs. somehow.' doesnt equal validation of the original hdl though
<sensille> the code I use has internal tri-state busses. can ghdl handle that?
<gurki> i have synthesized both converted and not converted neorv32 for funsies a while ago. quite different results
<gurki> so no, i dont trust thiw conversion
<gurki> but im derailing. lets talk sensilles actual problems :)
so-offish has joined #litex
<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.py
<jevinskie[m]> If there’s interest I could resurrect those and add modelsim/questasim support 
<gurki> jevinskie[m]: how can i buy you coffee to convince you to do so? :3
<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 :)
peepsalot has quit [Read error: Connection reset by peer]
peeps[zen] has joined #litex
FabM has quit [Ping timeout: 245 seconds]
sakman has quit [Quit: Leaving]
<cr1901> cocotb 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.
<sensille> modelsim does not seem to handle the generated verilog well
<sensille> Iteration limit 5000 reached at time 0 fs.
<sensille> but i'm still at the start of understanding this
<sensille> first thing to notice is that it uses non-blocking assignments in always (@*) blocks
<cr1901> That is considered good form, tho I couldn't tell you why offhand (see Cliff Cummings' papers on nonblocking assignments for an actual reason)
<sensille> "Guideline: Use blocking assignments in always blocks that are written to generate
<sensille> combinational logic"
<sensille> (from the mentioned paper, which states the opposite)
<cr1901> sensille: You're correct, I swapped the two in my head
<cr1901> meaning if I wrote out an example I would've used "=" and called in "nonblocking" lmao
so-offishul has joined #litex
so-offishul has quit [Remote host closed the connection]
so-offish has quit [Ping timeout: 240 seconds]
awordnot8 has joined #litex
Melkhior_ has joined #litex
keesj1 has joined #litex
acathla_ has joined #litex
awordnot has quit [*.net *.split]
keesj has quit [*.net *.split]
Melkhior has quit [*.net *.split]
acathla has quit [*.net *.split]
awordnot8 is now known as awordnot
TMM_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM_ has joined #litex
<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#L534