*** tpb has joined #litex | 00:00 | |
*** Dolu has joined #litex | 00:07 | |
Dolu | benh: Hi, i'm working on VexRiscv SMP. About the SMP stuff / DMA coherency, basicaly, VexRiscv SMP is based on write-through invalidate L1 D$ | 00:14 |
---|---|---|
Dolu | So, each CPU has a invalidation port, to make the DMA coherent, i was thinking about snooping all DMA writes to invalidate all the CPU related cache line, so seem similar to your idea isn't it ? | 00:16 |
Dolu | But about the sync stuff, i think that's a bit different, basicaly the invalidation bus is as following : | 00:17 |
Dolu | 3 Streams : inv stream to request invalidation (interconnect -> CPU), ack stream to notify the invalidation is effective (CPU -> interconnect), sync stream to notify the master who produce the invalidation that it is done and coherent. (interconnect -> CPU) | 00:20 |
Dolu | Basicaly, the DMA can be seen as a proper "HART", my idea was that a CPU can ask the DMA to issue a fence (so basicaly, waiting that all pending sync are done) | 00:24 |
Dolu | Or maybe the DMA should just simply not consider a memory job done until all the modified memory is consistant ? | 00:24 |
Dolu | But honestly i do not have much experiences into SMP systems XD, so i might say bullshit. | 00:28 |
*** Dolu has quit IRC | 00:35 | |
*** st-gourichon-f has quit IRC | 01:21 | |
*** st-gourichon-fid has joined #litex | 01:22 | |
*** HoloIRCUser1 has joined #litex | 01:45 | |
*** HoloIRCUser2 has joined #litex | 01:46 | |
*** HoloIRCUser has quit IRC | 01:49 | |
*** HoloIRCUser1 has quit IRC | 01:49 | |
scanakci | is it possible to have ethernet support without depending on any external interrupts? I saw this discussion and looks like it is possible (https://github.com/litex-hub/linux-on-litex-vexriscv/issues/13). I just wanted to make sure that I am not misinterpreting something. | 02:55 |
tpb | Title: Integrate LiteEth · Issue #13 · litex-hub/linux-on-litex-vexriscv · GitHub (at github.com) | 02:55 |
*** CarlFK has quit IRC | 03:37 | |
*** Degi has quit IRC | 03:40 | |
*** Degi has joined #litex | 03:41 | |
*** CarlFK has joined #litex | 04:18 | |
futarisIRCcloud | scanakci: Polling works (slowly). | 04:52 |
scanakci | thanks @futarisIRCcloud. | 05:28 |
*** gregdavill has quit IRC | 05:55 | |
*** disasm[m] has quit IRC | 07:56 | |
*** xobs has quit IRC | 07:56 | |
*** pdp7 has quit IRC | 07:56 | |
*** guan has quit IRC | 07:56 | |
*** Claude has quit IRC | 07:56 | |
*** disasm[m] has joined #litex | 08:01 | |
*** xobs has joined #litex | 08:01 | |
*** pdp7 has joined #litex | 08:01 | |
*** guan has joined #litex | 08:01 | |
*** Claude has joined #litex | 08:01 | |
*** Dolu has joined #litex | 08:31 | |
*** CarlFK has quit IRC | 09:02 | |
benh | Dolu: hey | 09:05 |
benh | Dolu: not sure you need to notify the master per-se... | 09:06 |
benh | Dolu: Ideally you want to synchronize the control path to the master with the DMA path, so if you really have completely separate "busses" | 09:07 |
benh | Dolu: you could have something like the MMIO reads by the CPU from that master would have their response held until previous invalidations by that master have completed | 09:07 |
benh | not necessarily *all* invalidations, just previous ones | 09:07 |
benh | but there are many different ways ... the MMIO orderingg method is just the most common | 09:08 |
benh | if you really don't want to go down that path, and prefer just notifying the master, then you can have a status reg that the CPU can read to check that pending DMAs have completed | 09:08 |
benh | but it's impractical as the master could already be writing data for a different packet | 09:08 |
benh | anyway, food for thoughts... | 09:09 |
*** david-sawatzke[m has quit IRC | 09:39 | |
*** sajattack[m] has quit IRC | 09:39 | |
*** synaption[m] has quit IRC | 09:40 | |
*** john_k[m] has quit IRC | 09:40 | |
*** abeljj[m] has quit IRC | 09:40 | |
*** nrossi has quit IRC | 09:40 | |
*** bunnie has quit IRC | 09:40 | |
*** disasm[m] has quit IRC | 09:40 | |
*** xobs has quit IRC | 09:40 | |
*** CarlFK has joined #litex | 09:45 | |
*** sajattack[m] has joined #litex | 09:57 | |
*** synaption[m] has joined #litex | 10:38 | |
*** abeljj[m] has joined #litex | 10:38 | |
*** david-sawatzke[m has joined #litex | 10:38 | |
*** disasm[m] has joined #litex | 10:38 | |
*** john_k[m] has joined #litex | 10:38 | |
*** nrossi has joined #litex | 10:38 | |
*** xobs has joined #litex | 10:38 | |
*** bunnie has joined #litex | 10:38 | |
*** Dolu has quit IRC | 10:52 | |
*** HoloIRCUser has joined #litex | 11:35 | |
*** HoloIRCUser2 has quit IRC | 11:35 | |
*** Skip has joined #litex | 13:13 | |
*** Alberto has joined #litex | 15:01 | |
*** Alberto is now known as Guest44387 | 15:01 | |
*** Guest44387 has quit IRC | 15:02 | |
*** mocambo has joined #litex | 15:03 | |
*** mocambo has quit IRC | 15:33 | |
*** abeljj[m] has quit IRC | 16:53 | |
*** captain_morgan has quit IRC | 18:09 | |
*** captain_morgan has joined #litex | 18:10 | |
*** robert1 has joined #litex | 18:18 | |
*** dkozel is now known as dkozel-m | 20:38 | |
*** dkozel-m is now known as dkozel | 20:39 | |
*** Dolu has joined #litex | 20:44 | |
Dolu | benh: Hi ^^ What do you mean by 'per-se' ? | 20:47 |
futarisIRCcloud | https://twitter.com/enjoy_digital/status/1257985111469015040 | 21:28 |
*** CarlFK has quit IRC | 21:42 | |
*** Dolu has quit IRC | 22:25 | |
sajattack[m] | too cool | 22:43 |
*** robert1 has quit IRC | 22:53 | |
*** CarlFK has joined #litex | 22:59 | |
benh | That looks amazing ! I just ordered one :) | 23:17 |
benh | now the question is ... is there such a thing as an M2 slot to PCIe slot that allows to use that thing as a PCIe master :) | 23:20 |
sajattack[m] | how about them apples https://www.ebay.ca/itm/XC7K325T-2FFG900C-XC7K325T-2FFG676I-IC-FPGA-900FPGA-BGA676Good-for-Mining/323639890046?hash=item4b5a70d07e:g:p6IAAOSwDmxcNBGk | 23:30 |
tpb | Title: XC7K325T-2FFG900C XC7K325T-2FFG676I IC FPGA 900FPGA BGA676Good for Mining | eBay (at www.ebay.ca) | 23:30 |
*** CarlFK has quit IRC | 23:45 | |
*** CarlFK has joined #litex | 23:58 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!