Tuesday, 2020-09-08

*** tpb has joined #yosys00:00
*** citypw has joined #yosys01:30
*** SpaceCoaster has joined #yosys01:44
*** Degi has quit IRC03:30
*** Degi has joined #yosys03:30
*** LJ_cache has joined #yosys03:59
*** az0re has quit IRC04:07
*** LJ_cache has quit IRC05:06
*** nobodywasishere has quit IRC05:11
*** az0re has joined #yosys05:49
*** proteusguy has quit IRC05:54
*** proteusguy has joined #yosys06:07
*** elGamal has quit IRC06:20
*** elGamal has joined #yosys06:22
*** Asu has joined #yosys06:22
*** _whitelogger has quit IRC08:09
*** _whitelogger has joined #yosys08:11
*** X-Scale` has joined #yosys08:58
*** X-Scale has quit IRC08:59
*** X-Scale` is now known as X-Scale08:59
*** elGamal has quit IRC09:56
*** elGamal has joined #yosys09:57
*** jakobwenzel has joined #yosys10:57
*** cr1901_modern has quit IRC13:06
*** cr1901_modern has joined #yosys13:07
*** cr1901_modern has quit IRC13:12
*** cr1901_modern has joined #yosys13:13
*** AdamHorden has quit IRC13:15
*** X-Scale` has joined #yosys13:19
*** AdamHorden has joined #yosys13:20
*** X-Scale has quit IRC13:21
*** X-Scale` is now known as X-Scale13:21
*** gtw has quit IRC13:34
*** AdamHorden has quit IRC13:38
*** AdamHorden has joined #yosys13:52
*** jakobwenzel has quit IRC13:56
*** jakobwenzel has joined #yosys13:56
thardindoes sign extension happen when extracting bits from a signed wire into another signed wire?14:43
*** emeb has joined #yosys14:44
thardinnm, I'll use an arithmetic shift instead14:46
*** cr1901_modern has quit IRC15:15
*** cr1901_modern has joined #yosys15:16
*** LJ_cache has joined #yosys16:20
DaKnigthardin: in what lang?16:23
*** cr1901_modern has quit IRC16:27
*** cr1901_modern has joined #yosys16:27
thardinverilog16:35
*** citypw has quit IRC16:45
z0ttelIf an equivalence check passes for the outputs, but fails for some intermediate wires, can I assume that the (entirely combinatorial) modules implement the same functions?17:01
Loftyz0ttel: depends on which equivalence checking method you're using, but yes17:06
Loftyequiv_induct has a different definition of "equivalent" than sat or equiv_simple, AIUI17:06
z0ttelequiv_simple and equiv_struct yield the same result. Is equiv_induct any use for combinatorial circuits? Shouldn't have any temporally relevant behaviour.17:08
az0reShould be the same, then17:08
z0ttelokay, cool, thx :)17:09
Loftyz0ttel: sure equiv_induct is useful for combinatorial circuits; it's *way* faster17:13
z0ttelequiv_induct can't prove the base case, circuit inherently diverges!17:19
LoftyThat's...generally an indication these are *not* equivalent17:20
z0ttelMh, can I make yosys show me a counterexample?17:34
LoftyUh, the `sat` command will do that, at least17:35
LoftyI don't think equiv_induct has enough information for that17:35
LoftyBut `miter` followed by `sat -prove-asserts` would give a counterexample, I think.17:36
DaKnigwould it try to minimize the example?17:40
az0reErr hang on a second.  How is it possible for the same combinational circuit to fail equiv_induct but pass equiv_struct?17:43
az0reMy mental model must be wrong17:43
z0ttelmiter -equiv gold gate miter; hierarchy -top miter; flatten; sat -prove-asserts            <- that gives me a "proof finished, no models found" QED.17:48
z0ttelaz0re: it did report some failing equivalences on internal wires after equiv_struct...17:58
z0ttelThe backend I get internal wiring from enumerates wires differently for the two structures I compare, so it makes sense for some of the wires to be shuffled between the two.18:00
z0ttelAlso, I'm using debian stable with default packaged yosys, so it may just be an ancient version doing ancient things.18:00
*** cr1901_modern has quit IRC18:29
az0reYes, sure I understand they are structurally different.  But as that command shows, they are functionally equivalent at the PIs/POs.  I guess my question is better stated: How can it be that these two combinational circuits are equivalent yet `equiv_induct` fails?18:44
*** oldtopman has quit IRC19:40
*** oldtopman has joined #yosys19:40
*** Asu has quit IRC22:03
*** strobokopp has joined #yosys22:48
*** az0re has quit IRC22:59
*** cr1901_modern has joined #yosys23:05
*** lf has quit IRC23:39
*** emeb has quit IRC23:39
*** lf has joined #yosys23:40

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!