tpb has quit [Remote host closed the connection]
tpb has joined #symbiflow
xobs has joined #symbiflow
abeljj[m] has joined #symbiflow
promach3 has joined #symbiflow
unrznbl[m] has joined #symbiflow
craigo has joined #symbiflow
craigo_ has joined #symbiflow
ktemkin_ has joined #symbiflow
tpb has quit [Disconnected by services]
tpb has joined #symbiflow
ktemkin has quit [Ping timeout: 256 seconds]
ktemkin_ is now known as ktemkin
craigo has quit [Ping timeout: 256 seconds]
ktemkin has quit [Ping timeout: 246 seconds]
<promach3> mithro: I had already asked in #freenode_#yosys:matrix.org
ktemkin has joined #symbiflow
<mithro> promach3: Sorry, the people in #yosys probably know a *lot* more about formal than we do.
citypw_ has joined #symbiflow
maartenBE has quit [Ping timeout: 240 seconds]
maartenBE has joined #symbiflow
Degi_ has joined #symbiflow
Degi has quit [Ping timeout: 256 seconds]
Degi_ is now known as Degi
rvalles has joined #symbiflow
rvalles_ has quit [Ping timeout: 272 seconds]
<sf-slack> <jgoeders> @litghost Still having some issues with fasm2bels + interchange format. This is what I've done so far: • Downloaded/compiled rapidwright • Installed capnproto • Downloaded capnproto-java, compiled, and added capnpc-java to my PATH • After that I can "cd interchange && make" in rapidwright without error. • However, running fasm2bels test-py still hits several errors like this: ```raceback (most recent call
<sf-slack> last): File "/home/jgoeders/bfasst/third_party/fasm2bels/env/lib/python3.8/site-packages/parameterized/parameterized.py", line 533, in standalone_func return func(*(a + p.args), **p.kwargs) File "/home/jgoeders/bfasst/third_party/fasm2bels/tests/test_fasm2bels.py", line 108, in test_fasm2bels main() File "/home/jgoeders/bfasst/third_party/fasm2bels/fasm2bels/fasm2bels.py", line 493, in main
<sf-slack> output_interchange(top, args.interchange_capnp_schema_dir, File "/home/jgoeders/bfasst/third_party/fasm2bels/fasm2bels/lib/interchange.py", line 561, in output_interchange interchange = Interchange(capnp_folder) File "/home/jgoeders/bfasst/third_party/fasm2bels/env/lib/python3.8/site-packages/fpga_interchange/interchange_capnp.py", line 797, in __init__ self.logical_netlist_schema = capnp.load( File
<sf-slack> "capnp/lib/capnp.pyx", line 4030, in capnp.lib.capnp.load File "capnp/lib/capnp.pyx", line 3293, in capnp.lib.capnp.SchemaParser.load capnp.lib.capnp.KjException: home/jgoeders/RapidWright/interchange/LogicalNetlist.capnp:1: failed: Import failed: /capnp/java.capnp``` I'm probably just missing a simple setup step, but I'm not sure what it is. I'd be happy to update the documentation once I get it running.
daniellimws has quit [Quit: ZNC 1.7.5+deb4 - https://znc.in]
daniellimws has joined #symbiflow
kgugala has quit [Read error: Connection reset by peer]
kgugala has joined #symbiflow
jopdorp_ is now known as jopdorp
diamondman has quit [Ping timeout: 256 seconds]
diamondman has joined #symbiflow
kgugala has quit [Quit: -a- Connection Timed Out]
kgugala has joined #symbiflow
kgugala_ has joined #symbiflow
kgugala has quit [Ping timeout: 264 seconds]
<LoneTech> making minor progress. xilinx bitgen can actually report the bit and frame locations of all LUTs and RAMs (that are in use in any design) using -l
ym_ has joined #symbiflow
ym has quit [Ping timeout: 246 seconds]
mkru has joined #symbiflow
kgugala has joined #symbiflow
kgugala_ has quit [Ping timeout: 260 seconds]
kgugala_ has joined #symbiflow
kgugala has quit [Ping timeout: 256 seconds]
mkru has quit [Quit: Leaving]
kraiskil has joined #symbiflow
umarcor|2 has joined #symbiflow
umarcor has quit [Ping timeout: 246 seconds]
kraiskil has quit [Ping timeout: 240 seconds]
craigo_ has quit [Ping timeout: 256 seconds]
citypw_ has quit [Remote host closed the connection]
citypw_ has joined #symbiflow
kraiskil has joined #symbiflow
m_hackerfoo has quit [Ping timeout: 246 seconds]
HackerFoo has quit [Ping timeout: 256 seconds]
m_hackerfoo has joined #symbiflow
HackerFoo has joined #symbiflow
craigo_ has joined #symbiflow
kgugala_ has quit [Quit: -a- Connection Timed Out]
kgugala has joined #symbiflow
rvalles has quit [Ping timeout: 240 seconds]
rvalles has joined #symbiflow
kraiskil has quit [Ping timeout: 264 seconds]
sf-slack3 has joined #symbiflow
sf-slack has quit [Read error: Connection reset by peer]
FFY00 has quit [Ping timeout: 240 seconds]
rvalles has quit [Ping timeout: 256 seconds]
rvalles has joined #symbiflow
sf-slack has joined #symbiflow
sf-slack3 has quit [Read error: Connection reset by peer]
rvalles has quit [Ping timeout: 256 seconds]
rvalles has joined #symbiflow
rvalles has quit [Ping timeout: 272 seconds]
citypw_ has quit [Ping timeout: 268 seconds]
<Lofty> kgugala: Been looking through the test results you've sent me and added them to my chart
<litghost> jgoeders: How did you install capnproto-java? There was a bug in capnproto-java where it didn't install `capnp/java.capnp`, but I thought I had fixed it.
<litghost> jgoeders: If you create an issue on fasm2bels with your replication instructions, I take a look and see where your setup went astray
<litghost> jgoeders: But overall, I think you had the right idea
<litghost> jgoeders: I see the problem actually. You said " added capnpc-java to my PATH". You want to install capnproto-java, not just add capnpc-java to the PATH
<litghost> jgoeders: If you don't want to run "make install" on capnproto-java, we have conda packages for capnproto-java etc all
<Lofty> kgugala: So, top-120-13 is one of the ABC9 regressions, and it can be analyzed by `sta`
<sf-slack> <kgugala> I suppose this will be good test case
<Lofty> ABC finds a 474 LC, 78.9 ns logic path
<Lofty> ABC9 finds a 702 LC, 43.1 ns logic path
<Lofty> The reason that -D does nothing there is because the 16.8 ns logic target is too aggressive for that design
rvalles has joined #symbiflow
<Lofty> And I bet something similar is happening for soc_litex_pwm
<sf-slack> <kgugala> yep I think all the regressions are similar
<Lofty> So if you do a run with `scratchpad -set abc9.D 80000` on that design, ABC9 finds a design with a lot fewer LUT4s
FFY00 has joined #symbiflow
<Lofty> kgugala: ^
<sf-slack> <kgugala> I see, can this parameter be somehow auto calculated? What about the two run approach you proposed yestarday?
<sf-slack> <kgugala> (I'll run this test case)
<Lofty> kgugala: you know how e.g. Quartus will ask you to specify the target clock frequency, and complain if you don't
<Lofty> abc9.D *is* that target clock frequency
<sf-slack> <kgugala> can we suck in sdc file?
<sf-slack> <kgugala> and use it to set this?
<Lofty> That would be feasible, yes
<sf-slack> <kgugala> I believe we have a plugin for xdc parsing
<sf-slack> <kgugala> there is an sdc plugin
<sf-slack> <kgugala> maybe you can try using it?
<Lofty> I would probably fudge it a little and set abc9.D to roughly half (or maybe a third) the target delay
<Lofty> But sure, I can give that a go
<litghost> The XDC + SDC plugins should provide target periods for clock wires
<litghost> Once the propagation pass is done, all clock wires should have clock period annotations
<Lofty> litghost: to my knowledge, the Yosys ABC9 pass doesn't do clock partitioning, and abc9.D is a global parameter
<litghost> Oph
<litghost> In the long term that might be problematic
<litghost> I know many real designs have multiple clock domains
<Lofty> In the long term, depending on a pass which has a maintainer that is currently on parental leave is more problematic :P
<litghost> I'd say that just means we have a documentation/testing problem, but sure
<Lofty> It's uh, not that straightforward
<litghost> Never is :)
<Lofty> Anyway, if kgugala can provide an SDC file for the benchmarks (which might require talking to QL), then I'd be happy to plumb SDC to ABC9 support
<sf-slack> <kgugala> those SDCs should be in QL repos
<Lofty> I also think tuning abc9.W could be beneficial
<Lofty> abc9.W is roughly intended to represent typical interconnect delay
<Lofty> Which is of course very tricky to estimate
<sf-slack> <kgugala> hmm, there is no sdc
<sf-slack> <kgugala> you can grab it for tests (before we add the rest)
<Lofty> Noted
epony has quit [Ping timeout: 240 seconds]
<Lofty> Funny to note: ABC gets a delay of 11.164 ns, while ABC9 gets a delay of 8.449 ns.
<Lofty> If you take into account potential interconnect delays, I think that means ABC fails timing
<Lofty> (for counter_16bit)
<sf-slack> <kgugala> I think we can have the number for interconnects
<sf-slack> <kgugala> @mkurc can possibly help here
<sf-slack> <mkurc> Hello. Indeed the data is present.
<sf-slack> <mkurc> But defining a single number for LUT-to-LUT connection won't be possible as it depends on the final routing. Nevertheless we can take eg. worst case or average delay and use it in Yosys
<Lofty> mkurc: as I said, it's difficult to come up with a good number for abc9.W
<Lofty> Something something machine learning /s
<sf-slack> <mkurc> @Lofty: You may find routing propagation delays there: https://github.com/QuickLogic-Corp/EOS-S3/tree/master/Timing%20Data%20Files. There should be two CSV files
emilazy has quit [Read error: Connection reset by peer]
emilazy has joined #symbiflow
craigo_ has quit [Quit: Leaving]
kgugala has quit [Ping timeout: 256 seconds]
rvalles has quit [Ping timeout: 256 seconds]
rvalles has joined #symbiflow
kgugala has joined #symbiflow
epony has joined #symbiflow
epony has quit [Remote host closed the connection]
kraiskil has joined #symbiflow
epony has joined #symbiflow
<nickoe> ammm, acomodi here?
<nickoe> I wonder what args write_bitstream actually takes
<sf-slack> <acomodi> @nickoe: https://github.com/SymbiFlow/symbiflow-arch-defs/blob/master/xc/xc7/toolchain_wrappers/symbiflow_write_bitstream this is the script. I think we should add a help command to get its usage.
<sf-slack> <acomodi> In general though it takes: device, part, input FASM file and output bit file
<nickoe> acomodi, do I need it for the synth command as well?
<nickoe> it looks like the quicklogic veriosn has the device for everything?
infinite_recursi has joined #symbiflow
<nickoe> mmm
<nickoe> acomodi, not it looks for FileNotFoundError: [Errno 2] No such file or directory: '/home/nickoe/symbiflow_install/xc7/conda/envs/xc7/share/symbiflow/prjxray-db/xc7a35t'
<nickoe> I added "-d {{platform.device}}"
<sf-slack> <acomodi> @nickoe No, that should be provided for the symbiflow_write_bitstream command only
<nickoe> acomodi, I am not sure how to actually get the device string properly
<nickoe> What do you mean?
<nickoe> ah, right.
<sf-slack> <acomodi> artix based devices (e.g. xc7a50tfgg484-1) has device name ase `artix7`
<nickoe> But still, I am not sure if we can get the artix7 string from the current nmigen stuff, but I wonder why it is required. Can't the write_bitstream just fint it?
<_whitenotifier> [symbiflow-arch-defs] acomodi opened issue #1985: Provide better usage output for the toolchain wrappers - https://git.io/Jtl8l
<nickoe> but it looks like it tries to find that device folder by itself..
<nickoe> but fails
* nickoe adds set -x
<tpb> Title: dpaste: BSWNNSJ34 (at dpaste.com)
<nickoe> ohh that log was with my non working patch, wait a bit
<nickoe> unmodified incomminf
FFY00 has quit [Read error: Connection reset by peer]
<nickoe> so this is unmodified https://dpaste.com/ARSDXEFUV
<tpb> Title: dpaste: ARSDXEFUV (at dpaste.com)
<nickoe> omg, it does fin the dir
<nickoe> but just not for the part_file
<nickoe> but does not set it as the root
FFY00 has joined #symbiflow
<nickoe> acomodi, so I guess it is a but in the toolchain wapper instead?
<nickoe> I mean it defines DEVICE but does not use it for the DBROOT
<nickoe> acomodi, isn't that the root causE?
<nickoe> ah
<nickoe> it moved the DBROOT=`realpath ${XRAY_DATABASE_DIR}/${DEVICE}` up
<nickoe> mmm, acomodi, but there is still no tilegrid.json
<nickoe> where is that located?
<sf-slack> <rsiddiqui> Hey everyone, I hope you all are fine and healthy. I'm Raheel an undergraduate student. I've been contributing to opensource for an year I've developed RISCV single cycle and 5 stage processor using chisel language and with that I have contributed in BURQ IDE for RISCV core testing with that I'm a python developer ranked 42 over all the world in Google Hashcode 2020 extended round. This yearI I'm really passionate
<sf-slack> about participating in Google Summer of code and couldn't found better organization than symbiflow for it. Can you guys help me If some one new want to contribute he can start? I would love to contribute as I just checked there are really cool projects. symbiflow
<nickoe> or is tilegrid.json generated?
<nickoe> mm, no the other chips has it :S
<litghost> prjxray-db conda package has it
<litghost> example
<sf-slack> <acomodi> nickoe: in the conda environment it can be found under `<install_dir>/conda/envs/xc7/share/symbiflow/prjxray-db/artix7/<part>`
<nickoe> acomodi, yeah, it _can_ but it is not dfined for all https://github.com/SymbiFlow/symbiflow-examples/issues/123#issuecomment-769289044
<nickoe> why is it not present locally for me?
<litghost> nickoe: The file paths are getting switched around
<sf-slack> <acomodi> Yeah, so, there was a recent change in the database structure
<litghost> nickoe: I had you install a newer prjxray-db, which was an error
<litghost> nickoe: Install the version in xc7/requirements.txt and I think you'll be okay
infinite_recursi has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
<nickoe> litghost: ... but when was this updated?
<nickoe> how do I update it? isn't there some conda thing to do that?
<litghost> The following packages will be DOWNGRADED:
<litghost> 11:44 AM prjxray-db 0.0_0239_gd87c844-20201120_145821 --> v0.0_243_g057e179-20210119_091808
<litghost> So to reverse it do:
<litghost> Run "conda install -c litex-hub prjxray-db=0.0_0239_gd87c844=20201120_145821"
<nickoe> ok, now it did build the bit file, but the flashing in nmigen does not appear to look for the correct bit file.
<tpb> Title: dpaste: BBY5L3UGW (at dpaste.com)
infinite_recursi has joined #symbiflow
<sf-slack> <acomodi> You can use xc3sprog to program the basys3 through the microUSB port
<nickoe> well, yes, but it needs to know the path to the bit file
<nickoe> and that does not really resolve correctly when the symbiflow toolchain is used in nmigen, apparently.
<sf-slack> <acomodi> If symbiflow_write_bitstream completed correctly, the bit file should be in the build directory
infinite_recursi has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
<nickoe> using openocd -f ${INSTALL_DIR}/${FPGA_FAM}/conda/envs/${FPGA_FAM}/share/openocd/scripts/board/digilent_arty.cfg -c "init; pld load 0 build/top.bit; exit" does flash and it blinks
<sf-slack> <acomodi> Great!
<litghost> Yay!
<nickoe> I am stuck at fixing the nmigen flashing though
<nickoe> acomodi, what is that kokoro thing?
<nickoe> the ci thin is not overly happy, but that does not seem to be caused by my change
<nickoe> ERROR: Could not find a version that satisfies the requirement rapidyaml (from python-fpga-interchange)
<nickoe> ERROR: No matching distribution found for rapidyaml
<nickoe> litghost: ^
<litghost> Which CI failed?
<litghost> Thanks
* nickoe goes to the grocery store go get food
<nickoe> lets hope your fix makes it green
<nickoe> litghost: why is that rapidyaml not on pypi yet?
<litghost> We don't have anything on PyPi right now
<litghost> Wider issue
<nickoe> ok
<nickoe> litghost: How long time does those other tests take?
<_whitenotifier> [python-fpga-interchange] litghost opened issue #11: Remove rapidyaml git+https in requirements once rapidyaml is in PyPi - https://git.io/JtlaV
kraiskil has quit [Ping timeout: 246 seconds]
<litghost> nickoe: A while, the CI is not short
toshywoshy has joined #symbiflow
vup has quit [Remote host closed the connection]
vup has joined #symbiflow
y2kbugger has quit [Ping timeout: 268 seconds]
perillamint has quit [Ping timeout: 260 seconds]
y2kbugger has joined #symbiflow
ovf has quit [Disconnected by services]
elms_ has joined #symbiflow
tannewt has quit [Ping timeout: 264 seconds]
ovf has joined #symbiflow
elms has quit [Ping timeout: 272 seconds]
perillamint has joined #symbiflow
elms_ is now known as elms
tannewt has joined #symbiflow