*** tpb has joined #yosys | 00:00 | |
*** seldridge has quit IRC | 00:22 | |
*** seldridge has joined #yosys | 01:10 | |
*** Forty-Bot has quit IRC | 01:43 | |
*** awordnot has quit IRC | 03:39 | |
*** awordnot has joined #yosys | 03:44 | |
*** eightdot has quit IRC | 04:07 | |
*** eightdot has joined #yosys | 04:08 | |
*** pie_ has quit IRC | 04:28 | |
*** pie__ has joined #yosys | 04:28 | |
*** emeb_mac has quit IRC | 06:08 | |
*** leviathan has joined #yosys | 06:43 | |
*** seldridge has quit IRC | 06:43 | |
*** m4ssi has joined #yosys | 08:00 | |
*** kg6hum has joined #yosys | 08:26 | |
*** kraiskil has joined #yosys | 08:35 | |
*** kraiskil has joined #yosys | 08:57 | |
*** mjoldfie_ has joined #yosys | 09:20 | |
*** mjoldfield has quit IRC | 09:22 | |
*** jhol has quit IRC | 10:01 | |
*** AlexDaniel has quit IRC | 10:10 | |
*** jhol has joined #yosys | 10:11 | |
*** jhol has quit IRC | 10:20 | |
*** pie__ has quit IRC | 10:42 | |
*** GuzTech has joined #yosys | 10:51 | |
*** pie_ has joined #yosys | 11:07 | |
*** pie_ has quit IRC | 11:11 | |
*** leviathan has quit IRC | 11:51 | |
*** emeb_mac has joined #yosys | 12:06 | |
*** leviathan has joined #yosys | 12:12 | |
*** emeb_mac has quit IRC | 12:25 | |
*** jhol has joined #yosys | 12:29 | |
*** vup has quit IRC | 13:22 | |
*** vup has joined #yosys | 13:22 | |
*** maikmerten has joined #yosys | 13:46 | |
*** develonepi3 has quit IRC | 13:54 | |
maikmerten | I've switched to nextpnr-ice40 recently, but found that some seeds, my design would not work as intended. | 13:54 |
---|---|---|
maikmerten | https://docs.google.com/spreadsheets/d/112N3hGuBwdhUELS_-PhzIbzZsqG7G0bgPgXH-1xu-R4/edit?usp=sharing | 13:54 |
tpb | Title: nextpnr-ice40 seed (extension board, no cache) - Google Sheets (at docs.google.com) | 13:54 |
maikmerten | I never *noticed* such things with arachne-pnr (which may, of course, be luck) | 13:55 |
maikmerten | how would one tackle such issues where simulation is fine, most synthesis runs are fine, but for *some* seeds things just don't work out? | 13:56 |
daveshah | the best approach is to do a post-pnr simulation using icebox_vlog to go back to a netlist | 13:57 |
daveshah | however, this won't simulate timing issues | 13:57 |
daveshah | do you have any inverted clocks in your design? | 13:57 |
maikmerten | I have only one clock, but the control logic acts on the falling edge, while stuff like the ALU, bus unit etc. act on the rising edge | 13:58 |
daveshah | I would say these can cause weird timing issues because at the moment (this will be fixed soon in nextpnr's own timing analysis) they aren't taken into account. But the fact your design's Fmax is double your operating clock more or less, then this wouldn't be the problem | 13:59 |
maikmerten | ah, okay | 14:00 |
daveshah | do you rely on initialised bram? | 14:01 |
maikmerten | yes (boot ROM), which is why I keep the system in reset for 2048 cycles | 14:02 |
daveshah | great | 14:03 |
maikmerten | there's a strange bram errata IIRC | 14:03 |
daveshah | yup | 14:03 |
daveshah | but 2048 cycles is more than enough to mitigate it | 14:03 |
maikmerten | yeah, but I also need to make sure the cache tags are invaldidated on reset ;-) | 14:04 |
maikmerten | and my horrible solution to that is to write zero to the cache tags one entry after another on each clock when reset is asserted ;-) | 14:04 |
maikmerten | so... just in case this happens due to my usage of inverted clocks and thus skewing timing results... arachne-pnr wouldn't care for that because all it does it to keep signal paths short, no matter what the clock? | 14:07 |
daveshah | the timing weighting in nextpnr isn't that big tbh | 14:07 |
daveshah | I don't think this is an inverted clock issue | 14:07 |
daveshah | assuming your duty cycle is near enough 50%, your design passes timing even considering the inverted clocks | 14:08 |
*** cr1901_modern has quit IRC | 14:08 | |
*** FL4SHK has quit IRC | 14:08 | |
*** Max-P has quit IRC | 14:08 | |
*** mwk has quit IRC | 14:08 | |
*** flaviusb has quit IRC | 14:08 | |
*** gnufan has quit IRC | 14:08 | |
daveshah | *clock duty cycle | 14:08 |
maikmerten | \o/ net split, woooo! | 14:08 |
*** FL4SHK has joined #yosys | 14:08 | |
*** Max-P has joined #yosys | 14:08 | |
maikmerten | okay, thanks :-) | 14:09 |
maikmerten | guess I'll do similar tests with arachne-pnr. Perhaps I just was lucky all the time and I'll find out that some seeds for arachne-pnr fail as well | 14:10 |
*** mwk has joined #yosys | 14:10 | |
*** kraiskil has quit IRC | 14:11 | |
*** cr1901_modern has joined #yosys | 14:16 | |
*** celadon has joined #yosys | 15:03 | |
maikmerten | tested again with arachne-pnr: https://docs.google.com/spreadsheets/d/112N3hGuBwdhUELS_-PhzIbzZsqG7G0bgPgXH-1xu-R4/edit?usp=sharing | 15:26 |
tpb | Title: nextpnr-ice40 seed (extension board, no cache) - Google Sheets (at docs.google.com) | 15:26 |
maikmerten | the good news is that I don't need to switch back to arachne-pnr | 15:26 |
maikmerten | the bad news is that not hitting any problems earlier with arachne-pnr was most likely just luck | 15:26 |
maikmerten | there must be some critical timing stuff going on in my design | 15:27 |
*** seldridge has joined #yosys | 15:28 | |
daveshah | it could be metastability? | 15:28 |
daveshah | if you have different clock domains or external IO | 15:28 |
maikmerten | only one clock driving everything | 15:29 |
maikmerten | heh, perhaps a silicon defect in my iCE40 ;-) | 15:29 |
maikmerten | these tests were conducted with external SRAM attached to the FPGA board, this would of course add considerable room for timing issues | 15:31 |
maikmerten | but I distinctly remember issues appearing with BRAM-only as well | 15:31 |
daveshah | I dare say it, but it might be worth seeing what happens in the vendor tools | 15:40 |
daveshah | They do perhaps have better timing, and rule out any possible icestorm bugs | 15:40 |
maikmerten | yeah, I might have to resort to that. I hear icecube2 is full of excellence. | 15:48 |
maikmerten | wow, Lattice presents me a registration page via HTTP. Manually changing to HTTPS works... at least. | 15:52 |
cr1901_modern | "icecube2" and "full of excellence" in the same sentence. I must've jumped between timelines recently... | 15:54 |
maikmerten | timelines all right https://www.youtube.com/watch?v=izrzkS5xxuc | 15:57 |
*** leviathan has quit IRC | 16:10 | |
*** seldridge has quit IRC | 16:10 | |
maikmerten | oh my, icecube2 is 32 bit. Great. | 16:13 |
maikmerten | awwwww, maaaaan. It wants a license file. They happily send me a license file tied to my NIC. And then it complains that license file does not match my NIC. Excellent! | 16:32 |
*** m4ssi has quit IRC | 16:57 | |
*** GuzTech has quit IRC | 17:33 | |
bluesceada | maikmerten, if you are in linux it might be due to icecube2 relies on using "eth0", newer distros don't use that naming scheme anymore | 17:39 |
bluesceada | easy solution is to load the dummy module | 17:40 |
bluesceada | then do ip link add dev eth0 type dummy | 17:40 |
bluesceada | and give it any mac address you want with ip link set dev eth0 address 00:11:22:33:44:55 | 17:40 |
maikmerten | oh my. That's excellence right there. | 17:42 |
bluesceada | if you heard it with tuntap devices before, I prefer a dummy interface over that. At least on notebooks where you might use network-manager for all sorts of connections, a tuntap device sometimes can confuse it | 17:42 |
maikmerten | thanks for the hints | 17:43 |
bluesceada | it is anyway ridiculous "security", even on a 'real' eth0 device you can 1. rename it in software 2. often change the mac in software anyway ... | 17:44 |
maikmerten | I guess that's manager-type security | 17:46 |
maikmerten | bluesceada, cool, thanks, that worked wonderfully | 17:51 |
*** AlexDaniel has joined #yosys | 17:56 | |
maikmerten | okay, I guess I see now why iCECube2 is not universally referred to as being excellent. | 17:59 |
*** seldridge has joined #yosys | 18:11 | |
mithro | Has anyone played with RAM4K initialization options on the ice40 before? | 18:37 |
*** dxld has quit IRC | 18:38 | |
*** dxld has joined #yosys | 18:40 | |
*** seldridge has quit IRC | 18:58 | |
*** seldridge has joined #yosys | 19:15 | |
*** kristianpaul has quit IRC | 19:21 | |
*** kristianpaul has joined #yosys | 19:22 | |
*** SpaceCoaster has quit IRC | 20:55 | |
*** mjoldfield has joined #yosys | 21:18 | |
*** mjoldfie_ has quit IRC | 21:21 | |
*** m_w has joined #yosys | 21:27 | |
*** maikmerten has quit IRC | 21:31 | |
*** puddingpimp has quit IRC | 22:34 | |
*** m4ssi has joined #yosys | 22:36 | |
*** maartenBE has quit IRC | 22:43 | |
*** maartenBE has joined #yosys | 22:59 | |
*** maartenBE has quit IRC | 23:14 | |
*** puddingpimp has joined #yosys | 23:48 | |
*** maartenBE has joined #yosys | 23:49 | |
*** m4ssi has quit IRC | 23:50 | |
*** puddingpimp has quit IRC | 23:57 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!