ChanServ changed the topic of #yosys to: Yosys Open SYnthesis Suite: https://github.com/YosysHQ/yosys/ | Channel logs: https://libera.irclog.whitequark.org/yosys/
tpb has quit [Remote host closed the connection]
tpb has joined #yosys
strobo has quit [Read error: Connection reset by peer]
strobo has joined #yosys
strobo has quit [Ping timeout: 260 seconds]
strobo has joined #yosys
somlo_ is now known as somlo
peeps[zen] has joined #yosys
peepsalot has quit [Ping timeout: 260 seconds]
tmiw has quit [*.net *.split]
gatecat has quit [*.net *.split]
anticw has quit [*.net *.split]
tlwoerner has quit [*.net *.split]
anuejn has quit [*.net *.split]
vup has quit [*.net *.split]
tmiw has joined #yosys
gatecat has joined #yosys
tlwoerner has joined #yosys
vup has joined #yosys
anuejn has joined #yosys
anticw has joined #yosys
jryans has quit [*.net *.split]
smkz has quit [*.net *.split]
Kamilion has quit [*.net *.split]
gruetzkopf has quit [*.net *.split]
piegames has quit [*.net *.split]
knielsen has quit [*.net *.split]
V has quit [*.net *.split]
koorogi has quit [*.net *.split]
rektide has quit [*.net *.split]
knielsen has joined #yosys
piegames has joined #yosys
koorogi has joined #yosys
koorogi has joined #yosys
koorogi has quit [Changing host]
rektide has joined #yosys
V has joined #yosys
gruetzkopf has joined #yosys
Kamilion has joined #yosys
Kamilion has joined #yosys
Kamilion has quit [Changing host]
jryans has joined #yosys
smkz has joined #yosys
kristianpaul has quit [Read error: Connection reset by peer]
kristianpaul has joined #yosys
vidbina has joined #yosys
dlobato has joined #yosys
dlobato has quit [Ping timeout: 260 seconds]
dlobato has joined #yosys
vidbina has quit [Ping timeout: 268 seconds]
peeps[zen] has quit [Ping timeout: 245 seconds]
peepsalot has joined #yosys
Lord_Nightmare has quit [Quit: ZNC - http://znc.in]
Lord_Nightmare has joined #yosys
vidbina has joined #yosys
gsmecher has joined #yosys
kraiskil has joined #yosys
kraiskil has quit [Ping timeout: 260 seconds]
<cr1901> ERROR: Unsupported or unknown directionality on port PAD of cell gate.\$iopadmap$top.clk ($paramod\FACADE_IO\DIR=t40'0100100101001110010100000101010101010100). <-- I'm guessing that's a fancy way of saying "the SMT2 backend does not support tristates"
<cr1901> ?*
<mwk> inout ports actually, but yes
<mwk> this is what -noiopad is for, btw
<cr1901> Yes, and I have a testcase where nextpnr breaks a yosys design where noiopad was used
<cr1901> and have been talking to gatecat about this in DM and am unsure whether I should just plain remove -noiopad from synth_machxo2 and error out if nextpnr sees an I/O signal w/o a pad
<cr1901> and fix synth_smt2
<cr1901> or what
<mwk> -noiopad is meant for two things
<mwk> formal verification and out-of-context mode
<mwk> it should stay for these two
<mwk> ... out-of-context is probably not particularly important for a tiny device, but still
<cr1901> Right, I'm using it to create a miter to compare pre and post-pnr designs
<mwk> but, hm
<cr1901> That's a reasonable use case, yes?
<mwk> post-pnr is tricky because these IO cells are left
<mwk> but... you can use techmap to flatten the FACADE_IO definition into the design, which will result in no more inout ports
<cr1901> is deminout also required?
<cr1901> (That was my next step, btw)
<mwk> no
<mwk> if you replace the cells with their insides via techmap, there won't *be* a port
<mwk> inout or otherwise
<cr1901> I was going to say "but FACADE_IO has a tristate in its definition", but... no it doesn't: https://github.com/YosysHQ/yosys/blob/master/techlibs/machxo2/cells_sim.v#L162-L169
<cr1901> I think I'm worried whether SMT2 can handle PAD being used on both the RHS and LHS of an assign
<cr1901> (even after flattening)
<cr1901> but I'll try and see what happens
<mwk> there may also be a tribuf that needs some handling
<cr1901> In all my designs I'm testing I don't actually use tristate functionality, so it should all "go away" with a sufficient number of yosys passes :P
<mwk> ... assuming they actually work
<mwk> tribufs are... let's just say I don't trust our handling of those
<cr1901> I have faith
<cr1901> (for now)
<mwk> .. I consider it more likely than not that you'll uncover some bugs
<mwk> as in, in yosys core
<cr1901> I'll at least report them, but I'm not sure how useful I'll be fixing them. Part of the reason I want to create miters is because I don't trust that my models are mistake-free compared to yosys' built-in ones
<cr1901> (It's also fun for some value of fun)
<cr1901> FWIW, if you try to run nextpnr when you have -noiopad enabled, it'll turn this Verilog: http://gopher.wdj-consulting.com:70/paste/453d20f1-f63a-4e1a-bb42-dcf3282084f9.txt
<cr1901> This is fine and definitely what I intended :)
<cr1901> So indeed, maybe it's better to just plain error out instead of trying to pnr this
<mwk> ... I would recommend either fixing the nextpnr bug here properly by auto-adding IOBs, or making it a hard error to have a pin with a missing IOB
<mwk> yes
<cr1901> I do not support auto-adding IOBs at all, in fact I remove them forcefully during packing (I'm not sure if the auto-IOB functionality is going away or not, but I don't want to deal w/ them)
<cr1901> I guess I just expected nextpnr to "do the right thing" even without the I/O pads :P
<cr1901> oops...
dlobato has quit [Ping timeout: 260 seconds]
vidbina has quit [Ping timeout: 268 seconds]
<cr1901> So how do you pass info about whether nextpnr_iobuf's ports were split or not up to the arch implementation? https://github.com/YosysHQ/nextpnr/blob/ee65e6f32d669cabd1d8a00534410da423348ac4/frontend/json_frontend.cc#L200
<cr1901> Maybe the context keeps that info... checking
<cr1901> doesn't appear to. Maybe I'll add that info as part of the MachXO2 bug fix PR (won't affect other backends right now)
dlobato has joined #yosys
vidbina has joined #yosys
<mwk> split?
<cr1901> if split_io is set, nextpnr_iobuf has a separate I and O port (default for JSON)
<cr1901> if not, nextpnr_iobuf has a single IO port
<cr1901> If I'm detecting whether FACADE_IO is attached to a nextpnr_*buf, I should know which ports a nextpnr_iobuf has
<cr1901> (okay realistically, I can just check "I" and "O" unconditionally for now)
dlobato has quit [Ping timeout: 260 seconds]