Monday, 2018-04-23

*** tpb has joined #vtr-dev00:00
mithrokem_ / jhol: https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/32501:08
tpbTitle: VPR has issues when carry chain inputs are involved in a blocks internal routing · Issue #325 · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)01:08
jholmithro: I'm just rebasing fasm13:03
jholmithro, daveshah, kem_: https://github.com/verilog-to-routing/vtr-verilog-to-routing/pull/32713:07
tpbTitle: Replaced CRLFs with LFs by jhol · Pull Request #327 · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)13:07
jholI'd like to do something similar with tabs vs. spaces13:08
daveshahjhol: Thanks for doing that! It's been bugging me too13:08
daveshahThere were Windows-1252 smart quotes in a file that need removing too13:08
daveshahLemme find it13:08
jholoh dear13:08
daveshahjhol: https://github.com/verilog-to-routing/vtr-verilog-to-routing/blob/master/vpr/src/pack/hmetis_graph_writer.cpp#L813:19
tpbTitle: vtr-verilog-to-routing/hmetis_graph_writer.cpp at master · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)13:19
daveshahMay as well add that to the PR?13:19
jholsure13:20
daveshahThis is borked too: https://github.com/verilog-to-routing/vtr-verilog-to-routing/blob/master/vpr/src/place/place_macro.h#L15413:22
tpbTitle: vtr-verilog-to-routing/place_macro.h at master · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)13:22
jholdaveshah: I found a few more: https://github.com/verilog-to-routing/vtr-verilog-to-routing/pull/327/commits/d10eef8ade5cf862ea89841f14bad8ffa6db08f313:25
tpbTitle: Replaced CRLFs with LFs by jhol · Pull Request #327 · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)13:25
daveshahGreat, thanks13:26
mithrojhol: morning14:03
jholmithro: hi!14:05
mithrojhol: Still getting started but feel free to ask questions14:05
jholsure14:05
mithrojhol: One thing which really helped me with the fasm output was looking at the verilog writer in vpr14:06
mithrojhol: it's code which writes a verilog representation of the place and routed circuit for simulation14:06
jholso far I've just being polishing up your patches - do you have any introductory information about the format?14:07
mithrojhol: The FASM format?14:08
jholyeah14:08
mithrojhol: Nope! We are not tied to it either14:08
jholI can google it if necessary14:08
mithrojhol: No you can't, it doesn't really exist except in people's heads at the moment :-P14:08
jholyeah ok14:09
mithrojhol: it's basically related to SymbiFlow/prjxray/minitests/roi_harness14:09
mithrojhol: http://prjxray.readthedocs.io/en/latest/db_dev_process/minitests/partial_reconfig_flow.html#fasm-proof-of-concept-using-vivado-partial-reconfig-flow14:09
tpbTitle: FASM Proof of Concept using Vivado Partial Reconfig flow Project X-Ray 0.0-623-gb9298a3 documentation (at prjxray.readthedocs.io)14:09
mithrojhol: But as I said, we are very open to change -- if there exists a better format already for the ice40, maybe we look at just using that....14:10
daveshahThe only iCE40 equivalent atm is this https://github.com/cliffordwolf/icestorm/blob/master/icebox/icebox_hlc2asc.py but I'm not really sure I'd recommend it14:11
tpbTitle: icestorm/icebox_hlc2asc.py at master · cliffordwolf/icestorm · GitHub (at github.com)14:11
mithrobrb14:12
mithrojhol: I wouldn't worry about preserving history for the FASM stuff btw14:12
mithrojhol: did you understand the two parts of the fasm stuff?14:15
jholhttps://github.com/jhol/vtr-verilog-to-routing/commits/fasm-rebase14:15
tpbTitle: Commits · jhol/vtr-verilog-to-routing · GitHub (at github.com)14:15
jhol-- I squashed the commits together, and then removed irrelevant stuff, then divided it into logical patches14:15
jholstill got a few issues, but it's mostly working14:15
mithrojhol: one part was the generic walker object which made it easier to write things like fasm output14:15
jholyes14:15
mithroThe second part was the actual fasm output part14:16
jholreally should be done with predicates, not a derriving from a walker base class14:16
jholbut it will do the job14:16
mithroWith the generic walker part, I think we can rebase a lot of the other output code on top of that walker and it will make it simpler14:17
mithroI'm unsure if it makes sense to send the fasm output upstream until it works for both the ice40 and the artix7?14:18
jholdepends how high the standards are14:19
jholand how comitted we are to using it14:19
jholmithro: this compiles ok now. I'm going to start testing it14:47
mithrojhol: Okay, poke me if you want me to look at something...14:50
jholno problem14:50
mithrojhol: Oh - were are we at with doing a pnr of a picorv32 on virtual fabric?14:53
jholdidn't try it yet - we could do it with the no-carry-chain yosys option14:53
jholis that something you need?14:54
mithrojhol: Was your carry-chain problem related to the bug I linked over the weekend?14:54
jholI think so14:54
mithrojhol: This one -> https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/32514:54
jholso there were two issues14:54
tpbTitle: VPR has issues when carry chain inputs are involved in a blocks internal routing · Issue #325 · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)14:54
mithrojhol: The work around for that one seems to be just put the carry input last?14:55
jholoh I see - didn't know about that14:55
jholthe error I was getting was with counter.v, and it pertains to the SB_CARRY.CO -> LUT414:55
jholin the ice40, the SB_CARRY.CO links to LUT4.I3, but it couldn't figure out how to wire it up14:56
jhol-- even though I'd ostensibly declared the <direct> link for that14:56
jholthe other issue was that it got confused by pack_patterns that cross through modes, but I fixed that by separating the carry chain from the DFFs14:58
mithrojhol: Hrm - I think the mode thing is just a case of having to get the values right....?14:59
jholI dug into the source code - it has code to make sure your carry-chain doesn't fan out in any way15:00
jholbut it gives you an error because it claims your carry-chain does fan out - when in fact it just has N versions of the carry-chain for N modes15:01
mithrojhol: Hrm - interesting15:01
mithrojhol: Can you log a bug?15:01
jholI was quite sympathetic to that error15:02
jhol--- because how is it supposed to check the wiring if it could just switcheroo between modes?15:02
kem_Yep it gets complicated :) Feel free to file a bug though!15:03
kem_mithro: Can you attach a full architecture and netlist to reproduce #325?15:04
jholkem_: hi15:04
jholmithro: in bug 325, was that prompted by this error message: https://paste2.org/jdWgCaKw15:08
jholyou can get it by running this command in tests/ : make ARCH=ice40 DEVICE_TYPE=tile-routing-virt DEVICE=test4 counter.echo15:08
jholor are you looking at a separate problem?15:09
kem_mithro: #325 was the carry chain issues: https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/32515:09
tpbTitle: VPR has issues when carry chain inputs are involved in a blocks internal routing · Issue #325 · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)15:09
jholyes15:09
kem_ I've always found the symbi-flow makefiles rather indirect. If someone can attach the architecture, netlist and VPR command directly to the issue it would make it much easier for me to take a look :)15:13
jholkem_: I'll do that if I can confirm it's the same issue15:18
kem_jhol: Thanks!15:18
jholkem_: did you see this one?: https://github.com/verilog-to-routing/vtr-verilog-to-routing/pull/32715:26
tpbTitle: Replaced CRLFs with LFs by jhol · Pull Request #327 · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)15:26
mithrokem_: Yes, will try to get you one16:00
jholmithro: hi16:08
mithrojhol: Yesum?16:08
jholso 2 things: 1. did you see my question about 325?16:08
jholwhat error do you get? is it the same of this https://paste2.org/jdWgCaKw ... that I get when I use VPR to build counter.echo ?16:09
mithrojhol: You mean this one -> https://paste2.org/jdWgCaKw -- that is the same error I got with the testarch and carry chain in https://github.com/SymbiFlow/symbiflow-arch-defs/pull/9116:10
tpbTitle: Cleanup and fixes to testarch by mithro · Pull Request #91 · SymbiFlow/symbiflow-arch-defs · GitHub (at github.com)16:10
jholok - cool, so if I follow the fixes you did there's a good change I get the carry chains working in the ice4016:11
jhol*good chance16:11
jholsecond question: what's the easiest way to get some sample FASM code?16:12
mithrojhol: Hrm -- not sure, maybe ask digshadow?16:12
jholgoing to work on bringing the FASM writer into working order16:12
jholok16:13
jholdigshadow: ?16:13
*** digshadow has quit IRC17:25
*** digshadow has joined #vtr-dev17:51
*** digshadow has left #vtr-dev17:52
*** digshadow has joined #vtr-dev17:54
mithrokem_: I of course didn't commit the broken version which was exhibiting the cin problem -- and now I'm having trouble repoing it....18:43
mithrogit reflog to the rescue!18:45
mithrokem_: Test example added in the comment here -> https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/325#issuecomment-38368352918:56
tpbTitle: VPR has issues when carry chain inputs are involved in a blocks internal routing · Issue #325 · verilog-to-routing/vtr-verilog-to-routing · GitHub (at github.com)18:56
mithrokem_: Not sure the architecture is particularly "sane"....18:57
mithrodigshadow: I think https://github.com/SymbiFlow/symbiflow-arch-defs/pull/91/files is ready to be merged?20:20
tpbTitle: Cleanup and fixes to testarch by mithro · Pull Request #91 · SymbiFlow/symbiflow-arch-defs · GitHub (at github.com)20:20

Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!