*** tpb <[email protected]> has joined #litex | 00:00 | |
*** Coldberg <[email protected]> has quit IRC (Ping timeout: 265 seconds) | 01:28 | |
*** aquijoule__ <[email protected]> has joined #litex | 01:43 | |
*** aquijoule_ <[email protected]> has quit IRC (Ping timeout: 252 seconds) | 01:45 | |
*** Degi_ <[email protected]> has joined #litex | 02:38 | |
*** Degi <[email protected]> has quit IRC (Ping timeout: 258 seconds) | 02:40 | |
*** Degi_ is now known as Degi | 02:40 | |
*** xfxf_ <[email protected]> has joined #litex | 04:02 | |
*** shorne_ <[email protected]> has joined #litex | 04:04 | |
*** shorne <[email protected]> has quit IRC (*.net *.split) | 04:09 | |
*** lkcl <[email protected]> has quit IRC (*.net *.split) | 04:09 | |
*** xfxf <[email protected]> has quit IRC (*.net *.split) | 04:09 | |
*** xfxf_ is now known as xfxf | 04:09 | |
*** lkcl <[email protected]> has joined #litex | 04:16 | |
*** FabM <FabM!~FabM@2a03:d604:101:1200:a62a:72ee:af4f:c90c> has joined #litex | 06:01 | |
FabM | ave | 06:04 |
---|---|---|
*** pftbest <pftbest!~pftbest@2a01:4f8:c17:6afc::1:2> has joined #litex | 06:23 | |
*** pftbest <pftbest!~pftbest@2a01:4f8:c17:6afc::1:2> has quit IRC (Remote host closed the connection) | 06:28 | |
*** pftbest <pftbest!~pftbest@2a01:4f8:c17:6afc::1:2> has joined #litex | 06:30 | |
*** Leon[m] <Leon[m]!~leons@2001:470:69fc:105::abc> has quit IRC (Quit: issued !quit command) | 06:43 | |
*** leons[m] <leons[m]!~leons@2001:470:69fc:105::abc> has joined #litex | 06:44 | |
*** leons[m] is now known as Leon[m] | 06:44 | |
_florent_ | tnt: nice, I can probably help for the packaging (and that's also true that we need an equivalent of add_source for .init file) | 08:29 |
_florent_ | I created https://github.com/enjoy-digital/litex/issues/951 for this | 08:29 |
_florent_ | tnt: I see you have various cores at: https://github.com/no2fpga, are you only interested for LiteX wrappers/integration for the USB core or also for the other cores? | 08:31 |
_florent_ | to ease reuse with LiteX cores, there are different options, this could be a repository in https://github.com/no2fpga that would provide the wrappers for LiteX (and eventual examples) or we could also create a pythondata-misc-no2fpga in LiteX-Hub that would provides your cores + wrappers | 08:34 |
tnt | _florent_: so the way I started this morning is creating a no2migen repo that will eventually contain both a no2migen.migen and no2migen.litex submodule (since some cores would not really be meant for litex specifically). | 08:36 |
tnt | I'm finishing up a proto right now and will push it for you to have a look. I'm removing the dependency on hardcoded path and moving to pkg_resources to get the sources now. | 08:36 |
_florent_ | ok perfect | 08:39 |
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) | 09:09 | |
*** TMM_ <[email protected]> has joined #litex | 09:09 | |
acathla | tnt, the minimal vex does not have any cache, hardware mul, etc, so everything is very slow. Lite vex is too big for the fomu with USB. But by default the FOMU uses a vex with just an instruction cache. It seems to take only a few LC (only 13 ! on my last test) and some RAM. | 09:22 |
tnt | _florent_: https://github.com/no2fpga/no2migen | 09:24 |
tnt | acathla: ? what takes 13 LCs ? | 09:24 |
tnt | Anyway, I changed my code to use minimal and execute all from SRAM (copied from flash at boot) and that works just fine. 64k/128k is plenty of space, no need to bother with flash XiP for that example. | 09:26 |
*** xfxf <[email protected]> has quit IRC () | 09:28 | |
*** xfxf <[email protected]> has joined #litex | 09:28 | |
acathla | tnt, adding instruction cache to the minimal vexriscv takes only 13 LC | 09:29 |
acathla | And yes, copying everything to RAM helps a lot too =) | 09:29 |
tnt | acathla: ah yeah, but I don't think there is a pre-done litex variant that's just `minimal+icache` | 09:32 |
tnt | makes it way less convenient for a code example. | 09:32 |
acathla | we could add that variant to litex =) | 09:34 |
*** Coldberg <[email protected]> has joined #litex | 09:38 | |
*** Coldberg <[email protected]> has quit IRC (Remote host closed the connection) | 09:54 | |
*** Coldberg <[email protected]> has joined #litex | 09:54 | |
*** Coldberg <[email protected]> has quit IRC (Ping timeout: 252 seconds) | 10:08 | |
*** aquijoule__ <[email protected]> has quit IRC (Ping timeout: 265 seconds) | 10:10 | |
_florent_ | tnt: no2migen looks very nice! I'll test the build in the next days and will also try to implement #951 while doing this | 10:11 |
tnt | _florent_: Thanks. Still need to add examples. ATM I just have a hacked up example for the icebreaker with usb pmod. I'll probably add one for the icebreaker-bitsy / fomu. | 10:14 |
*** richbridger <[email protected]> has joined #litex | 10:21 | |
_florent_ | tnt: Examples can indeed simplify reproducing things. BTW, you can create examples by copying the LiteX targets, but you can also build your design on top of the LiteX target and just integrate the additional logic, like done here for example on LiteSDCard bench that is based on Arty target and just add some additional logic to it: https://github.com/enjoy-digital/litesdcard/blob/master/bench/arty.py | 10:24 |
tnt | Yeah, I was planning on copying the targets files and just stripping them :p | 10:25 |
_florent_ | which USB PMOD are you using? (I can try to have the hardware to be able to test things) | 10:26 |
tnt | Can a core itself know what address its mapped to and generates some #defines ? The tinyusb driver needs a few specific #defines to match the core config and its place in the address space and ideally I'd like to have the core itself generate those rather than the 'target.py'. | 10:26 |
tnt | _florent_: well ... huh, I just have a USB cable that I cut up and wired to a pin header with DP/DN and a 1.5k through hold resistor directly soldered to it. | 10:27 |
_florent_ | ah ok :) | 10:28 |
tnt | https://github.com/icebreaker-fpga/icebreaker-pmod/tree/master/usb | 10:28 |
tnt | This should also work. In the PR I opened I copied the various pinouts defined in LUNA. | 10:28 |
_florent_ | for now, the #defines are generated with soc.add_constant, so if you want the core to generate add constant, you have to pass soc to your Core or at least have a method doing this (with soc as argument). But we could also eventually add a mechanism to allow the SoC to collect the constants defined in submodules. | 10:31 |
tnt | _florent_: And how can the core gets access to where it was mapped ? | 10:40 |
*** geertu <[email protected]> has quit IRC (Ping timeout: 272 seconds) | 10:41 | |
*** geertu <[email protected]> has joined #litex | 10:42 | |
tnt | I guess I don't really need that though, as long as I have the 'name' of the region I can use offsets wrt `REGIONXXX_BASE`. | 10:42 |
*** Coldberg <[email protected]> has joined #litex | 10:42 | |
*** pftbest <pftbest!~pftbest@2a01:4f8:c17:6afc::1:2> has quit IRC (Remote host closed the connection) | 11:14 | |
*** pftbest <pftbest!~pftbest@2a01:4f8:c17:6afc::1:2> has joined #litex | 11:17 | |
*** pftbest <pftbest!~pftbest@2a01:4f8:c17:6afc::1:2> has quit IRC (Remote host closed the connection) | 11:34 | |
*** pftbest <pftbest!~pftbest@2a01:4f8:c17:6afc::1:2> has joined #litex | 11:36 | |
_florent_ | tnt: The mapping is indeed handled at the SoC level, the firmware/software can just reuse the generated mapping. | 12:00 |
_florent_ | In some cases, it's not convenient to let the SoC do all the mapping automatically (ex for retro-compatibility), so the user can also force it when required | 12:04 |
*** Coldberg <[email protected]> has quit IRC (Ping timeout: 250 seconds) | 13:29 | |
*** C-Man <[email protected]> has joined #litex | 15:55 | |
*** FabM <FabM!~FabM@armadeus/team/FabM> has quit IRC (Quit: Leaving) | 16:24 | |
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has quit IRC (Quit: Connection reset by peep) | 16:46 | |
*** lkcl <[email protected]> has quit IRC (Ping timeout: 258 seconds) | 16:52 | |
*** somlo <[email protected]> has quit IRC (Remote host closed the connection) | 17:02 | |
*** somlo <[email protected]> has joined #litex | 17:02 | |
*** lkcl <[email protected]> has joined #litex | 17:05 | |
*** awordnot <awordnot!~awordnot@user/awordnot> has quit IRC (Ping timeout: 272 seconds) | 17:05 | |
*** awordnot <awordnot!~awordnot@user/awordnot> has joined #litex | 17:07 | |
*** lkcl <[email protected]> has quit IRC (Ping timeout: 258 seconds) | 17:16 | |
*** lkcl <[email protected]> has joined #litex | 17:29 | |
*** C-Man <[email protected]> has quit IRC (Ping timeout: 258 seconds) | 18:16 | |
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) | 21:01 | |
*** TMM_ <[email protected]> has joined #litex | 21:02 | |
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has joined #litex | 21:29 | |
*** C-Man <[email protected]> has joined #litex | 21:33 | |
*** C-Man <[email protected]> has quit IRC (Ping timeout: 258 seconds) | 21:47 | |
*** C-Man <[email protected]> has joined #litex | 21:52 | |
*** Coldberg <[email protected]> has joined #litex | 22:52 | |
*** C-Man <[email protected]> has quit IRC (Ping timeout: 258 seconds) | 22:56 | |
*** Coldberg <[email protected]> has quit IRC (Ping timeout: 258 seconds) | 23:38 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!