_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://freenode.irclog.whitequark.org/litex
tpb has quit [Remote host closed the connection]
tpb has joined #litex
<tpb> Title: LiteX Linux Ecosystem - Google Drawings (at docs.google.com)
<mithro> somlo / shorne: I'm 100% open to changing the default IP address in litex-buildenv if someone updates the documentation at the same time...
shorne has quit [Ping timeout: 240 seconds]
lf has quit [Ping timeout: 260 seconds]
lf_ has joined #litex
lkcl has quit [Ping timeout: 240 seconds]
<dkozel> _florent_ and miek did the camlink 4k support ever get tested, did it include any work on the HDMI interface?
Degi has quit [Ping timeout: 256 seconds]
<dkozel> mithro: Have you ever looked at the camlink as a target for the HDMI2TV project?
Degi has joined #litex
FFY00 has quit [Ping timeout: 260 seconds]
FFY00 has joined #litex
lkcl has joined #litex
Dolu has quit [Ping timeout: 256 seconds]
shorne has joined #litex
<shorne> mithro: the IP address in litex-buildenv is fine, it was a problem when using vanilla litex-boards, to get around it I just changed by subnet settings in my network
<shorne> working OK now
<mithro> shorne: Well, 192.168.1.x is a pretty common network for people to use...
<shorne> yeah, its that I have my worksation on a 10.0.0.x network and wifi on a 192.168.1.x network and route between the 2
<shorne> adding the 192.168.1.x ip to my workstation broke routing
<shorne> anyway, I got that sorted
<shorne> but, now I am facing another issue, using litex-boards, once I get to : Copying rootfs.cpio.gz to 0x07000000... / it seems to lock up/run really slow
<shorne> trying to debug now
<shorne> from tcpdump it seems its downloading the data but super slow compared to before
TMM has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM has joined #litex
FFY00 has quit [Remote host closed the connection]
FFY00 has joined #litex
Degi has quit [Ping timeout: 265 seconds]
Degi has joined #litex
kgugala_ has joined #litex
kgugala has quit [Read error: Connection reset by peer]
kgugala has joined #litex
kgugala_ has quit [Ping timeout: 260 seconds]
Bertl_oO is now known as Bertl_zZ
_whitelogger has joined #litex
_whitelogger has joined #litex
CarlFK has joined #litex
peeps[zen] has joined #litex
peepsalot has quit [Read error: Connection reset by peer]
<_florent_> dkozel: camlink 4k is working fine yes (SoC with DDR3 support) but the HDMI interface as not been tested
Dolu has joined #litex
_whitelogger has joined #litex
Bertl_zZ is now known as Bertl
kgugala_ has joined #litex
kgugala has quit [Ping timeout: 268 seconds]
kgugala_ has quit [Read error: Connection reset by peer]
kgugala has joined #litex
lf_ is now known as lf
<miek> dkozel: i ended up finding it useful in it's (mostly) stock state so i haven't done much hacking on it :p
peepsalot has joined #litex
peeps[zen] has quit [Ping timeout: 265 seconds]
Bertl is now known as Bertl_oO
acathla has quit [Ping timeout: 264 seconds]
acathla has joined #litex
acathla has joined #litex
acathla has quit [Changing host]
<Dolu> About the Adder stuff, i think daveshah is right, the carry chain should be fast enough in the FPGA to not be the major issue.
<Dolu> Often, the critical path that i have are mostly due to routing
<Dolu> one thing which might be critical on 64 bits is the MMU TLB hit logic, as it double in size, and is already close to the critical paths
<Dolu> the D$ tags check should be fine as it the physical address, which can be set smaller than 64 bits
<Dolu> about the 4 cycles 16 bits type of thing, in other words, kind of having a microcode to translate the RISC-V instruction into multiple one. That's would be likely the best way to reduce area, i'm just afraid that the performance would be too low to run a 64 bits linux well
<Dolu> @ mithro
<sorear> what does "microcode" mean to you?
STOP_NO_Anime has joined #litex
STOP_NO_Anime has quit [Remote host closed the connection]
<mithro> Dolu: Have you looked at the highest possible fmax of VexRISCV recently?
<mithro> Dolu: Most of the LiteX usage of VexRISCV doesn't target the highest frequencies
<mithro> sorear: microcode means to me there is some "code" somewhere that is decoding an instruction stream into a different set of operations that happens transparently to the user....
<mithro> sorear: It doesn't literally have to be "code" in the traditional sense that software people would recognize (but pretty much is in most modern cases)
<Dolu> mithro : the last optimisation i did was to allow having way more i$D$ way without FMax penality, i had mainly to split the MMU translation between the execute and memory stage.
<sorear> mithro: i was asking dolu because there's a pretty broad range of what microcode can mean in the literature
<sorear> from "any multicycle instructions are microcode" to "microcode is an interpreter written for a separate full-fledged instruction set"
<mithro> sorear: I actually missed Dolu's comment
<mithro> Dolu: I think the 4 cycles 16bit type thing is probably going to have much larger gains on something like the very slow iCE40UP5K than the Artix 7
<sorear> does vexriscv use bram for the register file?
<Dolu> So to me microcode mean decomposing each ISA instruction in the decode stage into one or more instructions (of another kind) for the pipeline
<sorear> so a fun property of the 16x4 approach that I noticed while trying to work out details years ago
<Dolu> I was thinking about it as "more" than just multi cycle instruction
<sorear> since your registers come in 4 "colors" and accesses to registers are spaced 4 cycles apart, you can pipeline with close to no hazard logic
<Dolu> multi cycle instruction is ofcourse a possibility, but seems less flexible than microcode
<mithro> sorear: A while back, I was actually thinking about how the risc-v instructions map to byte data access
<sorear> shifts are a pain with a folded datapath
<Dolu> hmm, fore the baremetal cache less CPU, as far i have seen, the weak link was often I bus D bus
<Dolu> Maybe should have some "very" thigly coupled ram there
<Dolu> sorear : Vex can use both BRAM or distributed ram as register file
<Dolu> and can move the read of it in the decode or in the execute stage, by default that's done in decode
<mithro> Interesting, I just found this spreadsheet form 2019 -> https://docs.google.com/spreadsheets/d/1b_I0wfvCPjRWGztSw7gEBMdaGJjmJOyKu_v3QVCoyOE/edit#gid=0
<tpb> Title: RISC-V Soft Core Comparisons Documents - Google Sheets (at docs.google.com)
<Dolu> > you can pipeline with close to no hazard logic => lol XD right ^^
<Dolu> Hoo the frequancy of Vex is wrong
<Dolu> I messed up the synthesis scripts :/
<Dolu> updated the readme since
<tpb> Title: RISC-V Instruction Set Encoding Exploration (ISA, CFU, etc) - Google Sheets (at docs.google.com)
<Dolu> I just updated the google doc fmax
<Dolu> (artix number were messedup)
<mithro> Dolu: Should probably have added a new "2020 VexRISCV" type thing?
david-sawatzke[m has joined #litex
<mithro> sorear: I was trying to understand how you might map things to a byte machine -- I think I discovered it ends up mapping to a frustrating 3/5 bit pattern
<Dolu> mithro : Apart the messed up Artix FMax (fixed now), there is no big change in the default config, basicaly the improvements were made on feature not realy used on them, but used in the multi core SMP + bigger caches configs
<mithro> Dolu: BTW Have you considered a VexRISCV 4-core complex with a single shared FPU unit?