*** tpb has joined #tomu | 00:00 | |
*** NoGodDamnIdea has quit IRC | 00:41 | |
*** srk has quit IRC | 01:10 | |
*** srk has joined #tomu | 01:11 | |
*** rj_ has joined #tomu | 01:59 | |
*** rj_ has quit IRC | 02:10 | |
*** rj_ has joined #tomu | 02:12 | |
*** rj_ has quit IRC | 02:50 | |
*** jas4711 has quit IRC | 08:00 | |
st-gourichon-f | Regarding the issue I raised yesterday about https://github.com/im-tomu/foboot/blob/882ce04da8b97084ef95f5a967a0e2b7312b19c2/sw/src/dfu.c#L184 , is it useful that I submit a pull request? | 10:39 |
---|---|---|
*** rj_ has joined #tomu | 11:08 | |
*** lucab has quit IRC | 11:19 | |
*** psydroid has quit IRC | 11:19 | |
*** promach3 has quit IRC | 11:19 | |
*** jimt[m] has quit IRC | 11:19 | |
*** js has quit IRC | 11:19 | |
*** xobs has quit IRC | 11:19 | |
*** NotaUser has quit IRC | 11:19 | |
*** hEl[pm0mey[m] has quit IRC | 11:19 | |
*** leons has quit IRC | 11:19 | |
*** im-tomu_ has quit IRC | 11:21 | |
*** im-tomu has joined #tomu | 11:22 | |
*** promach3 has joined #tomu | 11:28 | |
*** rj_ has quit IRC | 11:29 | |
*** rj_ has joined #tomu | 11:31 | |
*** jimt[m] has joined #tomu | 11:34 | |
*** js has joined #tomu | 11:34 | |
*** xobs has joined #tomu | 11:34 | |
*** psydroid has joined #tomu | 11:34 | |
*** lucab has joined #tomu | 11:34 | |
*** leons has joined #tomu | 11:34 | |
*** NotaUser has joined #tomu | 11:34 | |
*** hEl[pm0mey[m] has joined #tomu | 11:34 | |
*** tpb` has joined #tomu | 11:39 | |
*** tpb has quit IRC | 11:39 | |
*** tpb` is now known as tpb | 11:39 | |
*** rj_ has quit IRC | 11:40 | |
*** coderobe has quit IRC | 12:03 | |
*** coderobe has joined #tomu | 12:04 | |
*** rj_ has joined #tomu | 12:28 | |
acathla | anyone made the litex_bare_metal_demo work on a fomu? | 13:10 |
*** thaytan has quit IRC | 14:27 | |
*** thaytan has joined #tomu | 14:34 | |
*** GNUtoo has quit IRC | 16:12 | |
*** AnimaInvicta has joined #tomu | 16:48 | |
*** GNUtoo has joined #tomu | 17:08 | |
tcal | Yes! | 17:14 |
tcal | acathla: I did get the demo working. At first, I thought it hung on the donut demo....but it was just that slow. 10 or 20s before the first donut is rendered. So I rebuilt the VexRiscv with single-cycle mult, and got it close to 1 donut/second. Then I rebuilt again with single-cycle shifter and got it to something like 1.4 donuts/second. | 17:16 |
tcal | I loaded the code into the SRAM area, using LiteX serialboot instead of dfu-util. | 17:17 |
tcal | I'm working on a blog post but having a hard time finding the time. I can dump the details here if you're interested. One issue I had to work around is that I had to revert to an older version of litex_term to get the serialboot to work: https://github.com/enjoy-digital/litex/issues/773 | 17:20 |
*** im-tomu has left #tomu | 19:36 | |
*** im-tomu has joined #tomu | 19:37 | |
*** kcnickerson_____ has quit IRC | 20:13 | |
*** kcnickerson_____ has joined #tomu | 20:14 | |
*** rj_ has quit IRC | 20:44 | |
*** rj_ has joined #tomu | 20:45 | |
*** rj_ has quit IRC | 21:05 | |
*** rj_ has joined #tomu | 21:07 | |
acathla | wow wow wow tcal, how do you make a vexriscv do a single-cycle mult? And how can it fit in a fomu? | 21:29 |
acathla | And how do you send the demo via serialboot? At which address? It never worked for me. | 21:29 |
acathla | We successfully built a demo that is working on fomu, by sending it in place of the bios and modifying the linker.ld too | 21:32 |
tcal | :) Single-cycle mult: the credit all goes to Charles Papon's VexRiscv. All I had to do was turn on the option and rebuild it. It already knew how to make a 32b multiplier out of 4 16x16 multipliers. It didn't meet timing according to the P&R tools (44MHz vs 48MHz), but they're pretty conservative, and it worked on every actual Fomu that I tried it on. | 21:33 |
acathla | sfl_payload = 64 is the key, cool :) | 21:33 |
tcal | Yeah, I was going to say, you can use the current litex_term.py if you hack a couple of the params :) | 21:34 |
acathla | My problem is that I measure 156 cycles between two writes to a CSR (an UART), and there is nothing to multiply | 21:35 |
tcal | The Vexriscv minimal + single-cycle mult used 97% of the available logic cells, so it's pretty tight. | 21:35 |
acathla | And every operation seems to take way more than one cycle | 21:35 |
acathla | tcal, with USB and debug? | 21:36 |
tcal | And yes, to use serialboot I did need to alter the linker.ld in the demo. In the #773 issue above, I describe a way that I added a new region. But that isn't actually necessary; you can use the existing sram region, and just add an empty section at the beginning, say 0x3000, to avoid stomping on memory that the BIOS is using while doing the serialboot. | 21:37 |
tcal | I don't think the vexriscv I used had the debug plugin enabled. | 21:40 |
tcal | I'm not sure what you mean by USB. The LiteX fomu.py has an ACM UART using ValentyUSB. | 21:41 |
acathla | yes, that USB. it takes a lot of space | 21:41 |
acathla | And the debug is when you have a wishbone bridge | 21:42 |
acathla | tcal, thank you, that issue discribes exactly all the problems I had. | 21:43 |
tcal | Yeah, I didn't try, but I don't think you can peek and poke using wishbone-tool with this build. But not sure. | 21:43 |
acathla | tcal, you can't with litex-board target, but you can with the one from the workshop. I added a few lines and it works fine. It should be optionnal in litex... | 21:44 |
tcal | Note: to rebuild VexRiscv, you need sbt (the scala build tool), which is not small. I barely understand it enough to do the rebuild; thank goodness Charles is very helpful. But you don't need to rebuild if you're content with slow donuts :) | 21:45 |
acathla | https://github.com/litex-hub/litex-boards/blob/929e55d7e62b7430b917d8a28604f315d4bb64b5/litex_boards/targets/fomu.py line 213 to 227 mostly | 21:47 |
acathla | slow donuts are OK, slow writes to CSR is not OK | 21:49 |
tcal | Ah, the old targets/fomu.py. :) The one still used in Fomu Workshop. | 21:50 |
*** rj_ has quit IRC | 22:09 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!