*** tpb has joined #yosys | 00:00 | |
*** klotz has joined #yosys | 00:02 | |
*** strongsaxophone has quit IRC | 00:44 | |
*** klotz has quit IRC | 00:56 | |
*** emeb has quit IRC | 01:19 | |
*** rohitksingh has joined #yosys | 01:30 | |
*** emeb_mac has joined #yosys | 01:31 | |
*** rohitksingh has quit IRC | 01:40 | |
*** citypw has joined #yosys | 02:19 | |
*** az0re has quit IRC | 02:57 | |
*** futarisIRCcloud has quit IRC | 03:00 | |
*** rohitksingh has joined #yosys | 03:26 | |
*** ZipCPU has joined #yosys | 04:48 | |
*** lutsabound has quit IRC | 05:12 | |
*** emeb_mac has quit IRC | 07:00 | |
*** kraiskil has joined #yosys | 07:33 | |
*** kraiskil has quit IRC | 07:38 | |
*** Cerpin has quit IRC | 07:45 | |
*** kraiskil has joined #yosys | 07:54 | |
*** m4ssi has joined #yosys | 08:09 | |
*** adjtm has quit IRC | 08:20 | |
*** adjtm has joined #yosys | 08:21 | |
*** fsasm has joined #yosys | 08:28 | |
*** dys has joined #yosys | 09:08 | |
*** fsasm has quit IRC | 09:16 | |
*** rohitksingh has quit IRC | 09:17 | |
*** kraiskil has quit IRC | 09:29 | |
*** twnqx has joined #yosys | 09:38 | |
*** kraiskil has joined #yosys | 11:57 | |
*** doubleyou has joined #yosys | 12:06 | |
*** kraiskil has quit IRC | 13:40 | |
*** ZipCPU has quit IRC | 13:50 | |
*** kraiskil has joined #yosys | 13:52 | |
*** voxadam has quit IRC | 14:18 | |
*** Cerpin has joined #yosys | 14:47 | |
*** emeb has joined #yosys | 15:49 | |
*** citypw has quit IRC | 16:32 | |
*** fsasm has joined #yosys | 16:47 | |
*** dys has quit IRC | 17:07 | |
*** X-Scale` has joined #yosys | 17:25 | |
*** strubi has joined #yosys | 17:26 | |
*** X-Scale has quit IRC | 17:27 | |
*** X-Scale` is now known as X-Scale | 17:27 | |
strubi | Hi there, sorry for the first newbie question, possibly: I'm playing with RAM inference, in particular, I'd wanted to get some true dual port RAM working. Is it sufficient to modify what's in share/<arch and techlibs/<arch>? | 17:29 |
---|---|---|
strubi | (arch is ECP5, in this case) | 17:29 |
*** thardin has left #yosys | 17:30 | |
*** m4ssi has quit IRC | 17:30 | |
daveshah | No, the Yosys BRAM passes don't support it at all | 17:31 |
daveshah | There are a few possible ways you could hack it but truth be told the BRAM inference code is enough of a mess as it stands | 17:32 |
strubi | So, it would involve touching `./passes/memory/memory_bram.cc` as well? | 17:33 |
daveshah | Yes | 17:34 |
daveshah | Or burning it and starting again, which would probably be the more tempting option | 17:34 |
strubi | Uh oh. Well, I assume there's a test bench.. | 17:34 |
daveshah | Yes, although plenty of subtle untested bugs have cropped up in bram code in the past | 17:35 |
strubi | I think I've run into some. But really hard to tell, as I'm playing with the GHDL side, mostly | 17:35 |
strubi | But now mimicking things in Verilog, there's some weirdness as well | 17:36 |
*** kraiskil has quit IRC | 17:58 | |
*** Sarayan has joined #yosys | 18:43 | |
*** rohitksingh has joined #yosys | 18:45 | |
*** rohitksingh has quit IRC | 18:59 | |
*** rohitksingh has joined #yosys | 19:03 | |
strubi | daveshah, what I can see so far in the synth .dot output ('show') is that different clocks (like a_clk, b_clk) seem to not correctly map to the $mem entity in the first place. | 19:14 |
strubi | tried both verilog and VHDL | 19:15 |
strubi | I | 19:18 |
strubi | Not sure, but it looks like it's happening during the memory_collect pass | 19:19 |
*** _whitelogger has quit IRC | 19:22 | |
*** Jybz has joined #yosys | 19:24 | |
*** _whitelogger has joined #yosys | 19:24 | |
daveshah | strubi: can you give an example? | 19:30 |
strubi | Let me see where I can drop this | 19:32 |
strubi | ; | 19:35 |
strubi | https://gist.github.com/hackfin/1201612defcea0aa6cbfa22f88113c9c | 19:35 |
tpb | Title: Example TDP 2R1W · GitHub (at gist.github.com) | 19:35 |
daveshah | strubi: it can't merge the clock into a_read because it doesn't support that pattern of transparent port | 19:40 |
daveshah | see https://github.com/YosysHQ/yosys/issues/1087 | 19:40 |
tpb | Title: Memory inference fails for read-after-write · Issue #1087 · YosysHQ/yosys · GitHub (at github.com) | 19:40 |
strubi | Ah, ok. So it's known then. | 19:41 |
daveshah | Indeed | 19:42 |
strubi | Verilog parsing seems right though. So in pre.dot it's split up in $memrd and $memwr ports. GHDL doesn't do that and directly creates a $mem, obviously. | 19:43 |
daveshah | Yes, the problem is in memory_dff | 19:43 |
*** vidbina has joined #yosys | 19:44 | |
strubi | Allright, now when working around the memory_dff issue (using the proper template for a read-after-write) the clocks map right. | 19:54 |
strubi | Thanks for the hint! This helps to divide-et-impera :-) | 19:58 |
*** Ristovski has quit IRC | 20:05 | |
*** twnqx has quit IRC | 20:35 | |
*** [Ristovski] has joined #yosys | 20:41 | |
*** emeb_mac has joined #yosys | 20:54 | |
*** fsasm has quit IRC | 21:23 | |
*** N2TOH has quit IRC | 22:13 | |
*** N2TOH has joined #yosys | 22:14 | |
*** N2TOH_ has joined #yosys | 22:15 | |
*** Jybz has quit IRC | 22:16 | |
*** N2TOH has quit IRC | 22:19 | |
*** strubi has quit IRC | 22:25 | |
*** rohitksingh has quit IRC | 22:38 | |
*** sfs1926 has quit IRC | 22:50 | |
*** rohitksingh has joined #yosys | 22:58 | |
*** [Ristovski] is now known as Ristovski | 22:59 | |
*** rohitksingh has quit IRC | 23:06 | |
*** rohitksingh has joined #yosys | 23:08 | |
*** vidbina has quit IRC | 23:32 | |
*** vidbina has joined #yosys | 23:38 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!