clifford changed the topic of #yosys to: Yosys Open SYnthesis Suite: http://www.clifford.at/yosys/ -- Channel Logs: https://irclog.whitequark.org/yosys
tpb has quit [Remote host closed the connection]
atk has quit [Quit: Well this is unexpected.]
tpb has joined #yosys
atk has joined #yosys
lf has quit [Ping timeout: 260 seconds]
lf has joined #yosys
FFY00 has quit [Ping timeout: 260 seconds]
<Lofty> agg: are you using "ABC" or "ABC9"? This sounds like a fundamental problem of logic optimisers called 'structural bias', where the optimiser is stuck in a local optimum due to the shape of the input netlist. ABC9 does a better job of solving this, in my experience.
<agg> using abc9
<agg> Does sound like the sort of issue I'm getting, yea
<agg> Is there any way to perturb it or permute the input in some way? seems like it would be amenable to at least trying a bunch of different starting conditions and from what I've seen would have a similar magnitude effect to nextpnr seeds
<agg> But if it's a deterministic optimisation that just depends on the input it might be kinda hard to find semantically equivalent permutations, idk..
<Lofty> agg: people have toyed with that idea, sure, but it doesn't do much to resolve the fundamental problem
FFY00 has joined #yosys
X-Scale has quit [Quit: HydraIRC -> http://www.hydrairc.com <- It'll be on slashdot one day...]
citypw has joined #yosys
aquijoule_ has joined #yosys
aquijoule__ has quit [Ping timeout: 240 seconds]
Degi_ has joined #yosys
Degi has quit [Ping timeout: 272 seconds]
Degi_ is now known as Degi
craigo has joined #yosys
citypw has quit [Ping timeout: 268 seconds]
jfcaron has quit [Quit: jfcaron]
futarisIRCcloud has joined #yosys
cr1901_modern has quit [Quit: Leaving.]
cr1901_modern has joined #yosys
s_frit has joined #yosys
FFY00 has quit [Ping timeout: 260 seconds]
danvet has joined #yosys
citypw has joined #yosys
emeb_mac has quit [Quit: Leaving.]
mndza has joined #yosys
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
Nazara has quit [Quit: ZNC - http://znc.in]
Nazara has joined #yosys
s_frit has quit [Remote host closed the connection]
s_frit has joined #yosys
vidbina_ has joined #yosys
jakobwenzel has joined #yosys
jakobwenzel has quit [Read error: Connection reset by peer]
jakobwenzel1 has joined #yosys
jakobwenzel1 is now known as jakobwenzel
citypw has quit [Ping timeout: 268 seconds]
citypw has joined #yosys
craigo has quit [Quit: Leaving]
mndza has quit [Read error: Connection reset by peer]
mndza has joined #yosys
aquijoule_ has quit [Remote host closed the connection]
aquijoule_ has joined #yosys
vidbina_ has quit [Ping timeout: 256 seconds]
vidbina_ has joined #yosys
vidbina_ has quit [Ping timeout: 240 seconds]
jakobwenzel has quit [Read error: Connection reset by peer]
jakobwenzel1 has joined #yosys
jakobwenzel1 has quit [Client Quit]
citypw has quit [Ping timeout: 268 seconds]
citypw has joined #yosys
FFY00 has joined #yosys
jakobwenzel has joined #yosys
jakobwenzel has quit [Client Quit]
jakobwenzel1 has joined #yosys
jakobwenzel1 is now known as jakobwenzel
jakobwenzel has quit [Ping timeout: 256 seconds]
jakobwenzel has joined #yosys
jakobwenzel has quit [Client Quit]
X-Scale has joined #yosys
vidbina_ has joined #yosys
futarisIRCcloud has joined #yosys
citypw has quit [Ping timeout: 268 seconds]
nengel has joined #yosys
Nazara has quit [Quit: ZNC - http://znc.in]
Nazara has joined #yosys
nengel has quit [Quit: gone afk]
jfcaron has joined #yosys
nengel has joined #yosys
mndza has quit [Ping timeout: 272 seconds]
X-Scale` has joined #yosys
X-Scale has quit [Ping timeout: 264 seconds]
X-Scale` is now known as X-Scale
danvet has quit [Ping timeout: 272 seconds]
X-Scale` has joined #yosys
X-Scale has quit [Ping timeout: 240 seconds]
X-Scale` is now known as X-Scale
vidbina_ has quit [Ping timeout: 264 seconds]
emeb_mac has joined #yosys
s_frit has quit [Remote host closed the connection]
s_frit has joined #yosys
mancaus has quit [Ping timeout: 256 seconds]
Jay_jayjay has joined #yosys
<Jay_jayjay> Anyone come across this error for synth_ice40?
<Jay_jayjay> 2.49.15.3. Executing XAIGER backend.
<Jay_jayjay> ERROR: Assert `!aig_map.count(bit)' failed in backends/aiger/xaiger.cc:435.
<Jay_jayjay> <suppressed ~433 debug messages>
vidbina_ has joined #yosys
<Jay_jayjay> it seems that the XAIGER backend won't deal with logic loops...
<gatecat> In theory earlier parts of the abc9 pass are supposed to break them
<gatecat> But this must be failing for some reason (it's not the first time I've seen it fail this way tbh)
<Jay_jayjay> Also, I need the logic loops intact
<Jay_jayjay> I use `SB_LUT' instantiations for this purpose
<Lofty> Jay_jayjay: logic loops are forbidden in Yosys.
<Jay_jayjay> yes, i know
<Jay_jayjay> you've mentioned this before
<Jay_jayjay> however, I need this, and I don't have a alternative to yosys
<Lofty> https://github.com/YosysHQ/yosys/issues/2530 <-- I've been doing my best to fix logic loop handling in ABC9 where possible
<Lofty> If you absolutely do need that, break the loops manually with a black box cell
<Jay_jayjay> I am using a black box cell
<Jay_jayjay> ice40's built in SB_LUT
<Lofty> No
<Lofty> SB_LUT is whitebox
<Lofty> Not blackbox
<Jay_jayjay> what would blackbox do that whitebox wouldn't?
<Lofty> Yosys can see into its contents, and see that you still have a logic loop
<Lofty> Black boxes do not have any contents as far as Yosys is concerned
<Jay_jayjay> how would I make sure that at the end of the day I have a SB_LUT?
<Lofty> Use an SB_LUT and your own blackbox cell
<Lofty> And then `techmap` out the blackbox cell
<Lofty> You could also try the eddie/abc9_scc_fixes2 branch of Yosys, which has some fixes in this situation
<Lofty> But as you can see, it's not enough by itself
<Jay_jayjay> so I put a (*blackbox*) on my lut module
<Jay_jayjay> and then... ?
<Lofty> Use (* keep *) as well for good luck :P
<Jay_jayjay> how would i use `techmap` to replace it with a SB_LUT?
<Lofty> <Lofty> Use an SB_LUT and your own blackbox cell
<Lofty> the "and" is important here
<Jay_jayjay> ?
<Lofty> https://gist.github.com/Ravenslofty/ca7d375b4f7296263995c97d70d5c177 <-- write your SB_LUT4 as before, but put the feedback path through a `loop_breaker` module
<Jay_jayjay> oh, I see.
<Lofty> And then after `synth_ice40 -abc9`, run `attrmap -remove blackbox t:loop_breaker; techmap -map loop_breaker.v`, and techmap will stitch the loops back together
vancz has quit [Ping timeout: 256 seconds]
<Jay_jayjay> Lofty: nextpnr still gives ERROR: cell type 'loop_breaker' is unsupported (instantiated as 'main.main.hlatch_i6.latch.genblk1[5].main.breaker')
<Jay_jayjay> no yosys errors
<Lofty> You didn't techmap it
<Jay_jayjay> i see attrmap and techmap executed
<Lofty> ...Okay, different approach
<Jay_jayjay> could i just use a blackbox module with SB_LUT4 in it, then techmap it?
<Lofty> I suspect the problem is that because it's marked blackbox in the source it's being ignored
<Lofty> Thus a different approach
<Lofty> https://gist.github.com/Ravenslofty/ca7d375b4f7296263995c97d70d5c177 <-- I renamed the pins of loop_breaker
<Jay_jayjay> would that change anything?
<Lofty> Please give me a moment >.>
<Lofty> That means you can try `chtype -set $_BUF_ t:loop_breaker; opt`
<Lofty> instead of the attrmap/techmap before
<Jay_jayjay> Great, it works!
fevv8[m] has joined #yosys
Jay_jayjay has quit [Quit: My iMac has gone to sleep. ZZZzzz…]
vidbina_ has quit [Ping timeout: 265 seconds]
Jay_jayjay has joined #yosys
vidbina_ has joined #yosys
nengel has quit [Quit: gone afk]
Jay_jayjay has quit [Quit: Textual IRC Client: www.textualapp.com]
vidbina_ has quit [Ping timeout: 240 seconds]