Thursday, 2023-11-02

*** gnucode <gnucode!~gnucode@user/jab> has quit IRC00:35
*** gnucode <gnucode!~gnucode@user/jab> has joined #libre-soc00:35
*** lx0 <lx0!~lxo@gateway/tor-sasl/lxo> has quit IRC02:01
*** octavius <octavius!> has quit IRC02:14
*** gnucode <gnucode!~gnucode@user/jab> has quit IRC02:19
*** jn_ <jn_!> has joined #libre-soc05:38
*** jn_ <jn_!> has quit IRC05:38
*** jn_ <jn_!~quassel@user/jn/x-3390946> has joined #libre-soc05:38
*** jn <jn!~quassel@user/jn/x-3390946> has quit IRC05:38
*** ghostmansd[m] <ghostmansd[m]!> has quit IRC05:43
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has joined #libre-soc05:44
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has quit IRC06:03
*** ghostmansd[m] <ghostmansd[m]!> has joined #libre-soc06:03
*** ghostmansd <ghostmansd!> has joined #libre-soc06:57
*** ghostmansd[pc] <ghostmansd[pc]!> has joined #libre-soc07:04
*** ghostmansd <ghostmansd!> has quit IRC07:05
*** ghostmansd[pc] <ghostmansd[pc]!> has quit IRC07:15
*** ghostmansd[m] <ghostmansd[m]!> has quit IRC07:19
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has joined #libre-soc07:19
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has quit IRC07:26
*** ghostmansd[pc] <ghostmansd[pc]!> has joined #libre-soc07:27
*** ghostmansd[pc] <ghostmansd[pc]!> has quit IRC07:34
*** ghostmansd[pc] <ghostmansd[pc]!> has joined #libre-soc07:57
*** ghostmansd[pc] <ghostmansd[pc]!> has quit IRC08:03
*** psydroid2 <psydroid2!~psydroid@user/psydroid> has quit IRC08:22
*** psydroid <psydroid!~psydroid@user/psydroid> has joined #libre-soc08:22
*** psydroid2 <psydroid2!~psydroid@user/psydroid> has joined #libre-soc08:33
*** ghostmansd[m] <ghostmansd[m]!> has joined #libre-soc09:06
*** octavius <octavius!> has joined #libre-soc09:47
*** ghostmansd <ghostmansd!> has joined #libre-soc10:50
*** ghostmansd <ghostmansd!> has quit IRC11:05
*** ghostmansd <ghostmansd!> has joined #libre-soc11:20
*** ghostmansd <ghostmansd!> has quit IRC11:54
*** specing <specing!~specing@user/specing> has quit IRC12:55
*** specing <specing!~specing@user/specing> has joined #libre-soc12:56
*** ghostmansd <ghostmansd!> has joined #libre-soc13:27
*** ghostmansd <ghostmansd!> has quit IRC13:59
*** ghostmansd[m] <ghostmansd[m]!> has quit IRC14:45
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has joined #libre-soc14:46
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has quit IRC14:54
*** ghostmansd[m] <ghostmansd[m]!> has joined #libre-soc14:55
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc14:55
*** ghostmansd[m] <ghostmansd[m]!> has quit IRC14:59
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has joined #libre-soc15:00
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has quit IRC15:06
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has joined #libre-soc15:08
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has quit IRC15:54
*** lxo <lxo!~lxo@gateway/tor-sasl/lxo> has joined #libre-soc15:55
*** ghostmansd[m] <ghostmansd[m]!~ghostmans@> has quit IRC15:59
*** ghostmansd[m] <ghostmansd[m]!> has joined #libre-soc16:00
openpowerbot[irc] <macpijan[m]> Hello. So I just asked in apparently inactive Matrix channel a while ago on your experience with DDR3 initialization on Orange Crab. We've been looking at using this board with microcontroller core like this one , but we would need memory to be initialized first.17:18
openpowerbot[irc] <macpijan[m]> Apparently you've been having problems with that as well?17:18
openpowerbot[slack] <github> signin17:18
openpowerbot[irc] <programmerjake> one thing that iirc worked on some fpga at some point (sorry, icr which fpgas) is using litedram, but we've had troubles with litex in general due to the intentionally difficult to understand code (iirc it's so the devs can get paid to work on it)17:22
openpowerbot[irc] <programmerjake> we've tried gram (a port of litedram to nmigen), but it randomly initializes in an unusable state (clock on wrong phase), iirc we fixed the random initialization, but now it always is the wrong phase...😭 tobias has been working on it for quite some time17:25
openpowerbot[irc] <macpijan[m]> We are not fans of Litex either TBH, and were looking for some understable verilog module, experimenting with projects like
openpowerbot[irc] <macpijan[m]> But what you say here does not sound ecnouraging at all17:28
openpowerbot[irc] <programmerjake> so, as i mentioned on the other channel we've just been using block ram and/or hyperram. we've even considered using a rpi to emulate ram over a spi bus
openpowerbot[irc] <macpijan[m]> wow17:30
openpowerbot[irc] <macpijan[m]> So it does sound like it was a real challenge with gettin up DRAM on this board...17:31
openpowerbot[irc] <macpijan[m]> Have you used other boards as well in place of this due to these problems? Ideally we have something that just works so we can focus on the project, not on everything around that17:32
openpowerbot[irc] <programmerjake> the rpi has a hw spi master that can go up to 300mhz, so should be quite fast, we can also arbitrarily lower the spi bus clock if our fpga or wires can't keep up17:32
openpowerbot[irc] <programmerjake> iirc we've just had dram issues in general, since we insist on using only open-source fpga tools, which don't support multiple clock domains well17:34
openpowerbot[irc] <programmerjake> dram presumably works if you use the proprietary dram softcore and toolchain...17:34
openpowerbot[irc] <programmerjake> so on the open toolchains we've had to run the dram and cpu at the same speed, so if the cpu can't run fast enough to talk to the dram, that's problematic17:36
openpowerbot[irc] <macpijan[m]> We'been specifically looking into open toolchains as well. We've already tried EOS S3 board (with hard MCU core, which would have been enough for us, as we need only some of the FPGA for peripherals), but we faced even more problems with open toolchain there (the board is not really that popular), and with performance as well17:37
openpowerbot[irc] <programmerjake> we've largely switched to using the arty A100T which has a bigger fpga17:38
openpowerbot[irc] <macpijan[m]> Do you have similar DRAM problems there, or it works better with open toolchains?17:39
openpowerbot[irc] <programmerjake> though, you might be surprised what you can run in block ram, e.g. i wrote a raytraced simple 3d game (runs at like 2fps) and previously a 2.5D maze game (runs at like 30fps)17:41
openpowerbot[irc] <programmerjake> yeah, we've also had dram issues on xilinx17:41
openpowerbot[irc] <programmerjake> 3d game: i later made it display "Libre-SOC" in blocks in the 3D world17:44
openpowerbot[irc] <programmerjake> screenshot:
openpowerbot[irc] <macpijan[m]> How much block ram you have available then? I think there are crabs with varying ECP5 variants17:46
openpowerbot[irc] <programmerjake> we use the 85k variant, it has somewhere around 400kbyte block ram (maybe a little less, icr)17:47
openpowerbot[irc] <programmerjake> nm, i misremembered the power of 2, for the demo i set it to 192kbyte17:49
openpowerbot[irc] <macpijan[m]> Ok, thanks. We use the 25k variant right now. But maybe with 85k would be in fact enough for us. Thanks, this is something to consider ...17:50
openpowerbot[irc] <macpijan[m]> s/25k/25/17:51
openpowerbot[irc] <programmerjake> the 85k variant has 208 block rams, each is 18kbit, but you generally only use 16kbit of it (rest is parity/ecc data), so that comes out to 416kbyte17:57
openpowerbot[irc] <cesar[m]> sadoon found a DDR3 core which turned off the memory PLL, so it could be driven at much lower speeds. I can't find it right now.17:58
openpowerbot[irc] <macpijan[m]> We do not need much speed at all for MCU, so if you have that reference somewhere (or maybe I can dig trthough bugzilla or something) that would be greatly appreciated17:59
openpowerbot[irc] <cesar[m]> I believe it was mentioned in this chat room. I'm also looking. Maybe sadoon bookmarked it.18:02
openpowerbot[irc] <cesar[m]> Found it!
openpowerbot[irc] <cesar[m]> I did not tried it, tough.18:06
openpowerbot[irc] <programmerjake> afaict the arty a100t has 540kbyte usable block ram (same story with parity/ecc)18:07
openpowerbot[irc] <programmerjake> if you can find something with the XC7VX1140T, it has 7520kbyte block ram, but is probably really expensive18:10
openpowerbot[irc] <programmerjake> it should work with the open toolchains since it is still xilinx 7-series18:10
*** ghostmansd <ghostmansd!> has joined #libre-soc18:19
openpowerbot[irc] <macpijan[m]> This is the second one as well. We will try that one as well since you recommend it18:28
openpowerbot[irc] <macpijan[m]> * second one we have found as well.18:29
openpowerbot[irc] <programmerjake> like $28170 expensive:
*** psydroid <psydroid!~psydroid@user/psydroid> has quit IRC18:58
*** psydroid <psydroid!~psydroid@user/psydroid> has joined #libre-soc19:00
openpowerbot[irc] <macpijan[m]> > I did not tried it, tough.19:07
openpowerbot[irc] <macpijan[m]> Oh, I thought you had some results with it. Thanks, will let you know if we have more success19:07
*** ghostmansd <ghostmansd!> has quit IRC19:10
*** ghostmansd <ghostmansd!> has joined #libre-soc19:20
*** octavius <octavius!> has quit IRC20:48
*** octavius <octavius!> has joined #libre-soc21:13
*** Gooberpatrol66 <Gooberpatrol66!~Gooberpat@user/gooberpatrol66> has quit IRC21:43
*** Gooberpatrol66 <Gooberpatrol66!~Gooberpat@user/gooberpatrol66> has joined #libre-soc21:45
*** psydroid2 <psydroid2!~psydroid@user/psydroid> has quit IRC21:47
openpowerbot[irc] <programmerjake> I just finished upgrading the build server, it now has the root and swap partitions on a 1TB nvme ssd. the boot partition is still on the old sata ssd since the mobo is old enough to not support booting off nvme drives23:02
openpowerbot[irc] <programmerjake> hopefully it will be faster and more reliable23:03
openpowerbot[irc] <programmerjake> i left a copy of the root partition on the old sata ssd in case anything breaks23:05
*** octavius <octavius!> has quit IRC23:22

Generated by 2.17.1 by Marius Gedminas - find it at!