Thursday, 2021-04-15

*** tpb has joined #symbiflow00:00
*** Degi_ has joined #symbiflow00:50
*** Degi has quit IRC00:50
*** Degi_ is now known as Degi00:50
*** anuejn has quit IRC01:57
*** anuejn has joined #symbiflow01:58
*** ASHR has joined #symbiflow04:46
*** gromero has quit IRC05:16
*** gromero has joined #symbiflow05:39
*** kgugala has joined #symbiflow05:48
*** kgugala_ has quit IRC05:50
*** ASHR has quit IRC06:24
*** kgugala_ has joined #symbiflow07:11
*** kgugala has quit IRC07:14
*** adjtm_ has joined #symbiflow11:41
*** adjtm has quit IRC11:42
*** infinite_recursi has joined #symbiflow12:25
*** bjorkintosh has quit IRC12:29
*** bjorkintosh has joined #symbiflow12:29
CarlosEDPHi all, I'm building a Docker container with Symbiflow focusing portability... while it builds the Arty demo fine, it couldn't find an instance of PLL2_BASE IP I use on my design.12:32
CarlosEDPIt was generated on Vivado Clocking Wizard...12:32
sf-slack<kgugala> hi CarlosEDP12:33
CarlosEDPHey Karol! :)12:33
sf-slack<kgugala> I think PPL2_ADV isi supported12:33
CarlosEDPah ok.. let me check and swap them12:33
CarlosEDPanother question, the toolchain didnt support my constraints in the format of -dict...12:34
CarlosEDPlike12:34
sf-slack<kgugala> in xdc?12:34
CarlosEDP`set_property -dict { PACKAGE_PIN E3    IOSTANDARD LVCMOS33 } [get_ports { clock }];`12:34
CarlosEDPyep12:34
CarlosEDPI had to break in two lines12:34
sf-slack<kgugala> I suppose this is a xdc yosys plugin limitation12:35
* CarlosEDP < https://matrix.org/_matrix/media/r0/download/matrix.org/XmtgnwVAOZiwOdeoRGvghbGi/message.txt >12:35
sf-slack<kgugala> @tmichalak can you look at this?12:35
CarlosEDPwant me to open an issue?12:35
sf-slack<kgugala> yes, please12:35
CarlosEDPon which repo? symbiflow-arch-defs ?12:36
sf-slack<tmichalak> I believe there is an issue for this already12:36
sf-slack<tmichalak> I mean this is a missing feature12:36
sf-slack<tmichalak> but let me double check12:36
CarlosEDPalso should I open an issue about the missing PLL2_BASE?12:37
sf-slack<kgugala> yep, this should be fairly easy to fix (I suppose)12:37
sf-slack<kgugala> It's just a missing techmap12:37
sf-slack<tmichalak> the issue with XDC is here: https://github.com/SymbiFlow/yosys-symbiflow-plugins/issues/3212:39
CarlosEDPI found this about the PLL but doesn't seem the same thing12:40
CarlosEDPhttps://github.com/SymbiFlow/symbiflow-arch-defs/pull/200712:40
sf-slack<kgugala> so @mkurc can tell us more about it :)12:41
-_whitenotifier-5- [symbiflow-arch-defs] carlosedp opened issue #2123: VPR error when using PLLE2_BASE in a design - https://git.io/JOnND12:45
CarlosEDPaha, we have a whistleblower bot in the channel :D12:45
sf-slack<mkurc> So this PR you've linked adds the techmap for PLL_BASE12:48
sf-slack<mkurc> It transform PLL_BASE to PLL_ADV as the vendor tools do.12:48
CarlosEDPah ok.. got it12:48
sf-slack<kgugala> we could potencially rebase this and merge?12:48
sf-slack<mkurc> Sure, let me look into that12:49
*** infinite_recursi has quit IRC12:52
CarlosEDPshould `conda env create` also pip install the required packages?13:39
CarlosEDPbecause I'm getting the modules not found error running here13:39
CarlosEDPI had to `pip3 install -r ./${FPGA_FAM}/requirements.txt` manually13:39
CarlosEDPI'm doing this on a Docker container so It might be confusing the Python installs13:40
CarlosEDPthis is my install flow: https://gist.github.com/carlosedp/1f9119e0645e842e474ec1a67b5aed7e13:41
sf-slack<kgugala> it should install them13:45
sf-slack<kgugala> maybe you need to set PYTHON_PATH?13:45
CarlosEDPhumm.. maybe..13:45
sf-slack<mkurc> `conda env create` doesn't do that on its own. In symbiflow you run `make env` which creates the env and install pip packages.13:47
CarlosEDPah ok... well, I added the pip install step in my Dockerfile13:49
mithroCarlosEDP: morning!13:59
CarlosEDPHi Tim! Morning13:59
CarlosEDPI'm already poking some stuff... and bugging the folks around here :)13:59
mithroCarlosEDP: As I mentioned, there is still a lot of work to polish the Xilinx flow14:19
*** curtosis has joined #symbiflow14:57
*** Raito_Bezarius has quit IRC15:03
-_whitenotifier-5- [actions] acomodi opened issue #17: Third party dir not excluded by license check - https://git.io/JOcC115:14
*** Raito_Bezarius has joined #symbiflow15:15
mithroCarlosEDP: In *theory*, you should be able to just build Yosys+yosys_symbiflow_plugins+VPR+prjxray-tools and then use the datafiles compiled from symbiflow-arch-defs rather than using conda directly.15:15
*** vup has quit IRC15:20
*** vup has joined #symbiflow15:20
CarlosEDPYep! Right now I'm doing the default install but my idea is that..15:21
CarlosEDPsince the container doesn't need examples and etc15:21
CarlosEDPJust updated the Dockerfile, works fine now. I was able to build my test project and program it to the Arty with Vivado.15:27
CarlosEDPhttps://gist.github.com/carlosedp/1f9119e0645e842e474ec1a67b5aed7e15:27
CarlosEDPGonna try to build  xc3sprog natively on Mac now so I don't depend on a VM15:27
* CarlosEDP < https://matrix.org/_matrix/media/r0/download/matrix.org/oISiXsYeQXoncHZvTMKtoduW/message.txt >15:28
CarlosEDPIs it a known/expected error ?15:29
sf-slack<kgugala> CarlosEDP: you can also program those boardswith openOCD15:29
sf-slack<kgugala> CarlosEDP - it's not really an error (however it looks like so)15:29
CarlosEDPkgugala:15:30
CarlosEDPgreat... gonna try with it too15:30
sf-slack<kgugala> it's more like info message saying that bitstream writer will not use antlr (faster implementation) and it's falling bach to slower (pure python based)15:31
CarlosEDPyep.. thought it "should" work with the default antlr... and it didn't for some error15:31
CarlosEDPand it works!15:41
CarlosEDP```15:41
CarlosEDPopenocd -f digilent-hs1.cfg -f xilinx-xc7.cfg -c "transport select jtag;init; pld load 0 /Users/cdepaula/projects/fusesoc/symbiflow/build/carlosedp_demo_chiselblinky_0/artya7-35t-oss-symbiflow/Toplevel.bit; exit"15:41
CarlosEDP```15:41
CarlosEDPFull opensource without VMs, Windows, Vivado...15:41
sf-slack<kgugala> YaaaY!!15:41
sf-slack<kgugala> now - time to open source the chip itself ;)15:42
CarlosEDPnow, run it on FuseSoc ;)15:42
CarlosEDPwith containers15:42
CarlosEDPexcept openocd part since on Mac/Windows you can't do USB passthru from plugged devices to the container... we were discussing this on Twitter other day15:43
*** gsmecher has joined #symbiflow15:52
*** ASHR has joined #symbiflow15:57
CarlosEDPthere is only one "issue" with Symbiflow on a container... the size15:59
* CarlosEDP < https://matrix.org/_matrix/media/r0/download/matrix.org/HHztnLlCGqMCQZIgrhIAqRFU/message.txt >15:59
sf-slack<acomodi> CarlosEDP: I suppose this is because the container has all of the architectures in there (200T 100T z010 and 50T)16:00
sf-slack<kgugala> you don't really need all the devices definitions16:00
* CarlosEDP < https://matrix.org/_matrix/media/r0/download/matrix.org/uejjULKninsTCVxPQSbTDAmt/message.txt >16:00
sf-slack<acomodi> If you are interested in only the arty, the xc7a50t is enough16:01
sf-slack<acomodi> (unless is the 100T arty version)16:02
mithroCarlosEDP: How good is your C++? Those files compress *really* well, it would be awesome to see if there was much of a performance impact from reading a compressed version.16:07
mithroCarlosEDP: But so far it has generally been cheaper for me to send people hard drives then spend the developer time on that :-)16:08
-_whitenotifier-5- [sphinx_symbiflow_theme] mithro opened issue #7: Migrate all the projects to the new sphinx theme - https://git.io/JOczm16:10
mithrodaniellimws: FWIW - https://github.com/orgs/SymbiFlow/projects/2316:11
CarlosEDPsorry, was out for lunch :)16:35
CarlosEDP<mithro "Carlos Eduardo de Paula: How goo"> it's close to none... I haven't coded for real in C++16:35
CarlosEDPahd yes, they compress to like 20% original size with bz216:36
CarlosEDPone naive question... why these. "databases" are so much larger for Xilinx than for the Lattice devices?16:37
mithroCarlosEDP: A bunch of complicated reasons16:45
mithroCarlosEDP: I think even better is lmza or other....16:45
CarlosEDPwho reads them? VPR?16:46
mithroCarlosEDP: yes16:47
mithroCarlosEDP: VPR uses "flattened" databases16:47
mithronextpnr uses flattened databases for ice40 and a more compressed format for the ecp517:06
sf-slack<cjearls> Several months ago, I received a recommendation to buy an OrangeCrab FPGA as a starter FPGA. I've really enjoyed trying it out, and I'm back looking for another recommendation. I have several hundred dollars to spend, and I'd like to purchase a larger FPGA, the OrangeCrab can only fit one Vexriscv core, and I'd like to be able to fit multiple. If possible, I'd like a board that works with the linux-on-litex project and17:22
sf-slackhas an FPGA-accessible ethernet port and FPGA-accessible microSD card slot or SATA port. I'd like the board to have plenty of RAM for Linux. Also, I think I'm interested in working with HDMI or DisplayPort inputs and/or outputs in the future, so built-in FPGA-accessible ports for this and would be nice, or if not, PMODs or some other connector that can be adapted to display standards. Is there something like that with SymbiFlow17:22
sf-slacksupport?17:22
sf-slack<cjearls> Also, the more example files that are available for a board, whether open-source or through the manufacturer, the better17:22
mithrocjearls: The Arty A7-100T or the higher end Nexys Video boards are nice (non-open source boards) but the open source Xilinx tooling is a bit rougher17:43
mithrocjearls: Higher end ECP5 boards are still less common, Greg Davill's ButterStick is kind of interesting17:44
CarlosEDPULX3S from Radiona is nice, there's a 85k LUT version and uses the full open-source toolchain17:45
CarlosEDPlike your OrangeCrab17:45
mithrocjearls: What ECP5 variant of the OrangeCrab do you have?17:45
CarlosEDPBut honestly as a beginner I found the Digilent boards amazing, in both quality and documentation17:46
mithroThe Digilent boards are heavily used in education, it is one of the reason Xilinx is the dominate FPGA company because everyone learns with their boards....17:47
CarlosEDPIf you have the dough, this is a preeeery nice board with a beefy FPGA: https://store.digilentinc.com/genesys-2-kintex-7-fpga-development-board/17:48
tpbTitle: Xilinx Kintex-7 FPGA Development Board - Digilent (at store.digilentinc.com)17:48
mithroCarlosEDP: The "baby brother" of that board is https://store.digilentinc.com/nexys-video-artix-7-fpga-trainer-board-for-multimedia-applications/17:48
tpbTitle: Nexys Video Artix-7 FPGA: Trainer Board for Multimedia Applications - Digilent (at store.digilentinc.com)17:48
mithroI would suggest the following order for Xilinx devices -- Arty A7-35T, Arty A7-100T, Nexys Video Artix-7, Genesys 2 Kintex-717:50
*** ASHR has quit IRC17:56
*** ASHR has joined #symbiflow17:57
*** ASHR has quit IRC17:59
*** ASHR has joined #symbiflow17:59
*** ASHR has quit IRC18:16
*** ASHR has joined #symbiflow18:20
CarlosEDPThere it is, full containerized toolchain on a Mac18:20
*** ASHR has quit IRC18:21
CarlosEDPusing FuseSoc to build my Chisel project, run thru Symbiflow and program via openocd18:21
CarlosEDPhttps://asciinema.org/a/407503?speed=318:21
tpbTitle: FPGA Bitstream for Xilinx Artix7 running on FuseSoc containers with open source toolchain - asciinema (at asciinema.org)18:21
*** ASHR has joined #symbiflow18:21
sf-slack<cjearls> I have the 25k LUT Orangecrab18:38
zypdid somebody suggest the ecpix-5 yet?18:40
sf-slack<cjearls> And I actually have a Genesys2 Kintex-7 on me currently, but I'm pretty sure the professor I'm working with is going to want it back once I graduate this semester :(18:41
zypthe ecpix-5 got both ethernet, microsd, sata, 512MB RAM, hdmi out, and 8 pmod sockets, so it seems like a good fit for your requirements18:45
sf-slack<cjearls> It looks like the ecpix-5 only has 256MB of RAM, otherwise, it's pretty tempting18:53
sf-slack<cjearls> Also the 85k LUT model is out of stock :S18:55
*** curtosis is now known as curtosis[away]19:35
*** rj has joined #symbiflow19:42
mithroOh yeah - the lambdaconcepts boards are pretty good!19:42
mithrocjearls: I might be tempted to send a Genesys2 Kintex-7 to a person who got it working well in SymbiFlow.... I've sent 2 people that board for other reasons before.....19:44
mithroCarlosEDP: will attest to the fact that doing cool things get you cool hardware :-)19:45
CarlosEDPyes it does!19:45
sf-slack<cjearls> What remains to be done to have it working well in SymbiFlow? It's something I'm absolutely interested in helping with19:45
CarlosEDP<mithro "cjearls: I might be tempted to s"> can I get in line? 😃19:46
sf-slack<cjearls> As a heads-up, my thesis is due at the beginning of next month, after which I'll be moving across the country, so for the next couple weeks, I'm pretty slammed. Once I move, I'll have just under a month before I start my job that I'd love to spend helping improve Genesys2 Symbiflow support19:48
mithroThe work to add support can be almost entirely done without needing the hardware19:51
sf-slack<cjearls> Oh, awesome19:52
sf-slack<cjearls> And to be fair, until I move, I have a Genesys2 on loan from my university19:52
mithrocjearls: The process of verification kind of looks like this -> https://docs.google.com/drawings/d/1NJlN-cPLNx4nULHiL4938RD-H14izpayqtNSQ4XRjfA/edit19:53
tpbTitle: SymbiFlow Bitstream Verification Process - Google Zeichnungen (at docs.google.com)19:53
sf-slack<cjearls> I see. I have used Vivado briefly before, that seems like something I could do. Do the DRC and timing violation checks need to be implemented, or are there still bugs to work out, or something else?19:57
mithrocjearls: I think we don't know19:58
mithrocjearls: Also I think the biggest problem will be things like running out of memory and disk space and hence requiring other fixes before being able to move forward19:58
sf-slack<cjearls> Oh, ok, so that whole part of the bitstream verification is still to-do19:59
*** rj has quit IRC19:59
*** ZipCPU has quit IRC20:00
bjorkintoshicestorm and symbiflow are not one and the same.20:01
bjorkintoshI don't know why I thought they were.20:01
*** rj has joined #symbiflow20:03
sf-slack<syed.ahmed.emails> Hello from syed to Tim20:03
mithrobjorkintosh: Well people confuse Linux + Debian and Linux + RedHat all the time20:03
mithroHey syed20:03
mithroTake a look at https://twitter.com/unaimarcor/status/138273444361030451620:04
bjorkintoshright. makes sense.20:04
*** ZipCPU has joined #symbiflow20:06
mithroSyed: https://github.com/hdl/awesome/issues/9820:07
mithrohttps://usercontent.irccloud-cdn.com/file/AGY9pdZF/image.png20:08
mithroSyed: It would be awesome to have https://github.com/google/verible in Visual Studio Code for linting and auto-formating your SystemVerilog code20:12
sf-slack<cjearls> So would the best way to start be to just choose an example project, and push it through Vivado and SymbiFlow, and compare the bitstreams?20:13
mithroSyed: https://cloud.google.com/blog/products/compute/scale-up-your-eda-flows-on-google-cloud20:14
tpbTitle: A sample EDA design verification workflow on Google Cloud | Google Cloud Blog (at cloud.google.com)20:14
mithroSyed: It is an example of using SLURM to improve an EDA simulation workload20:15
mithroThe ‘tile1_mini’ regression has 46 tests. Running all 46 tile1_mini tests sequentially took an average of 120 minutes. The parallel run for tile1_mini with 10 auto-scaled SLURM nodes completed in 21 minutes—a 6X improvement!20:15
* mithro https://cloud.google.com/composer -- A Google Cloud Engineer said 20:23
tpbTitle: Cloud Composer | Google Cloud (at cloud.google.com)20:23
mithro> Many customers use Composer because it’s “airflow under the hood” but we offset management / upgrades etc20:23
mithrohttps://airflow.apache.org/20:24
tpbTitle: Apache Airflow (at airflow.apache.org)20:24
mithroSyed: https://github.com/chriscardillo/gusty20:33
mithroSyed: https://cloud.google.com/ai-platform/training/docs/using-hyperparameter-tuning20:35
tpbTitle: Using hyperparameter tuning | AI Platform Training | Google Cloud (at cloud.google.com)20:35
mithroSyed: https://cloud.google.com/ai-platform/optimizer/docs/overview20:36
tpbTitle: Vizier overview | AI Platform Vizier | Google Cloud (at cloud.google.com)20:36
mithroCarlosEDP I would like to introduce you to Syed who is interested in helping edalize have support for distributed runners20:39
mithroSyed, I would like to introduce you to CarlosEDP who added the recent container support to EDALize20:39
mithroI should also note that umarcor is in this channel too20:40
sf-slack<syed.ahmed.emails> Hi CarlosEDP and Umarcor!20:40
mithrosyed: you probably want to also join the https://gitter.im/hdl/community and https://gitter.im/librecores/fusesoc channels20:41
tpbTitle: hdl/community - Gitter (at gitter.im)20:41
mithroSomeone just pointed me to https://dmtn-025.lsst.io/20:43
tpbTitle: DMTN-025: A survey of workflow management systems (at dmtn-025.lsst.io)20:43
mithroApparently olofk is hiding on the slack channel too!20:43
*** rj has quit IRC20:43
sf-slack<olof.kindgren> Hi there20:44
*** rj has joined #symbiflow20:46
sf-slack<olof.kindgren> Haven't been here in a while20:47
mithroSyed: also look at https://github.com/verilog-to-routing/vtr-verilog-to-routing/tree/master/vtr_flow20:48
mithroSyed: https://docs.verilogtorouting.org/en/latest/vtr/running_vtr/20:49
tpbTitle: Running the VTR Flow Verilog-to-Routing 8.1.0-dev documentation (at docs.verilogtorouting.org)20:49
sf-slack<pgielda> @olof.kindgren too many channels ;)20:54
sf-slack<olof.kindgren> @pgielda Yeah. Although it's mostly just slighly different subsets of people in all of them :)20:56
sf-slack<pgielda> this makes it even harder21:00
sf-slack<pgielda> if  it was a completely different set then it would be easier to track ;)21:00
mithroumarcor / Syed / CarlosEDP / olofk: Any idea what hammer / chipyard from Berkeley uses for this type of stuff?21:00
sf-slack<cjearls> Chipyard is AWS-based21:01
*** gsmecher has quit IRC21:03
CarlosEDPSorry, was in a quick "solder PCB break" ... hehe.. yesterday I almost ripped out the micro usb connector from a PCB I was testing... just soldered it.. the flux arrived 😃21:13
CarlosEDPHi Syed! It's a pleasure21:14
CarlosEDPSo Olof is around too... I'm on Matrix.. I don't see him21:14
*** rj has quit IRC21:27
umarcorcjearls: since you asked last time, we added a list of boards to https://hdl.github.io/awesome/ Apart from the Arty, Nexys and others from Xilinx, you might like the ULX3S or the ECPIX-5. Both have variants with the ECP5 85F, which is larger than the one in the OrangeCrab (25F).21:31
tpbTitle: Awesome HDL | Home (at hdl.github.io)21:31
*** rj has joined #symbiflow21:32
umarcorGiven the requirements you mentioned, I would recoment PYNQ or other Zynq based boards from Xilinx/Digilent. They provide 1-2 ARM cores running at 500-900MHz, plus the programmable region (FPGA) in the same SoC. However, your are yet dependent on vendor tools if you want to use them.21:33
umarcormithro: Digilent boards are not only used but also discounted in education. I got my PYNQ at $65. Not through my uni, but just using my uni e-mail on the Digilent site.21:35
umarcoroh, now I see that ECPIX was mentioned later...21:37
umarcorsyed, mithro, with regard to Verible support in VSCode, see this dialogue: https://github.com/TerosTechnology/vscode-terosHDL/issues/9921:45
umarcorsuzizecat in gitter channel GHDL has a mixed-language synthesis example (VHDL, Verilog and System Verilog) and he is interested in havin mixed-language LSP support by combining Verible with GHDL and/or rust_hdl21:46
sf-slack<syed.ahmed.emails> thanks!21:47
sf-slack<syed.ahmed.emails> Tim and I were chatting that VSCode should become the default GUI for open source fpga toolchain :)21:50
yetiemacs!21:50
yeti:-P21:50
sf-slack<syed.ahmed.emails> hahah21:50
umarcorwrt being in this channel, I'm mostly always online, but I don't start the IRC client automatically. So, sometimes I might not see something. Ping me in gitter if you want to be sure.21:50
sf-slack<syed.ahmed.emails> I was hoping to annoy somebody with that21:50
umarcorsyed, have a look at TerosHDL, the project from that last link21:51
umarcorhttps://terostechnology.github.io/terosHDLdoc/21:51
tpbTitle: Welcome to TerosHDL’s documentation! TerosHDL 0.1.4 documentation (at terostechnology.github.io)21:51
umarcorhowever, we know of people which use GHDL's LSP with VSCode, vim or emacs. Hence, any "multilanguage" LSP might work regardless of the editor.21:52
umarcormithro: I'm not aware of hammer/chipyard...21:53
umarcorjokes aside, the remote containers or remote wsl features of VSCode are really nice; but not open source.21:54
sf-slack<syed.ahmed.emails> nice! TerosHDL looks nice, although got a little confused with the name if it were a new HDL21:54
umarcoryeah, I don't know were is the name coming from: https://www.terostech.com/21:56
tpbTitle: Teros Technology Develop hardware, take advantage of software tools (at www.terostech.com)21:56
umarcordespite the name, it's not a company AFAIAA, just a group of friends/colleagues21:57
*** rj has quit IRC22:12
sf-slack<romckend> Hello, I work at BYU and we are using the python-fpga-interchange project as part of our bootcamp. We noticed that the DeviceResources python interface does not expose all of the constructs available in the capnp file generated by Rapid wright, and we are considering expanding it. Is there any specific reason why the python object structures do not have everything in the capnp file?22:14
*** rj has joined #symbiflow22:14
*** curtosis has joined #symbiflow22:27
*** ASHR has quit IRC22:28
*** rj has quit IRC22:42
*** rj has joined #symbiflow22:47
*** rj has quit IRC23:27
*** rj has joined #symbiflow23:33
*** rj has quit IRC23:53

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