*** tpb has joined #symbiflow | 00:00 | |
mithro | Raito_Bezarius: The Arty A7 boards (Artix 7) are supported. At some point the Arty Z7 boards (Zynq) should work but nobody has done any testing | 00:17 |
---|---|---|
Raito_Bezarius | mine is indeed Arty S7 (Spartan 7) which seems to have received no support | 00:18 |
Raito_Bezarius | to be fair, I'd be glad to help around if I can, but unsure how non trivial to help to port symbiflow to this | 00:19 |
mithro | Raito_Bezarius: The big problem is that the version of Vivado that prjxray uses to document the series 7 bitstream doesn't support Spartan 7 parts and there is one (atleast) vital fuzzer that doesn't work with newer Vivado versions. | 00:24 |
mithro | timichalak: Project U-Ray uses a new Vivavo version than Project X-Ray, right? | 00:25 |
Raito_Bezarius | ah I see | 00:25 |
Raito_Bezarius | what kind of efforts are required to port the vital fuzzer with newer Vivado versions? | 00:26 |
*** _florent_ has quit IRC | 00:45 | |
*** davidlattimore has quit IRC | 00:46 | |
*** jopdorp has quit IRC | 00:46 | |
*** davidlattimore has joined #symbiflow | 00:47 | |
*** jopdorp has joined #symbiflow | 00:47 | |
*** _florent_ has joined #symbiflow | 00:47 | |
*** ZipCPU has quit IRC | 00:57 | |
*** m_hackerfoo has quit IRC | 00:57 | |
*** dkozel has quit IRC | 00:57 | |
*** tnt has quit IRC | 00:57 | |
*** ZipCPU has joined #symbiflow | 01:17 | |
*** m_hackerfoo has joined #symbiflow | 01:17 | |
*** dkozel has joined #symbiflow | 01:17 | |
*** tnt has joined #symbiflow | 01:17 | |
*** Degi has quit IRC | 01:20 | |
*** xtro has joined #symbiflow | 01:24 | |
*** Degi has joined #symbiflow | 01:25 | |
*** hansfbaier has joined #symbiflow | 01:39 | |
*** citypw has joined #symbiflow | 02:26 | |
mithro | Raito_Bezarius: It's mostly an "unknown" effort type thing -- it definitely isn't super easy | 03:12 |
Raito_Bezarius | makes sense :D | 03:13 |
mithro | Raito_Bezarius: The other problem is that fuzzer was written a *long* time ago, so I'm not sure anyone remembers the exact reasons why it doesn't work | 03:14 |
Raito_Bezarius | what does the fuzzing accomplish exactly? does it helps to discover the undocumented commands that the FPGA uses? | 03:14 |
mithro | Raito_Bezarius: The entire bitstream of the FPGA is undocumented (it's not like CPUs which generally at least have ISA documentation so you can write a compiler for them....) | 03:15 |
Raito_Bezarius | ha | 03:16 |
Raito_Bezarius | :/ | 03:16 |
mithro | Raito_Bezarius: bunnie did a bunch of work on this for https://www.crowdsupply.com/sutajio-kosagi/precursor which some can be found in https://github.com/SymbiFlow/prjxray/pull/1155 | 03:17 |
tpb | Title: Precursor | Crowd Supply (at www.crowdsupply.com) | 03:17 |
mithro | Raito_Bezarius: But he never got around to getting the changes upstream and wasn't focused on a working toolchain (rather just verification of security boundaries / features in the FPGA are enabled) | 03:18 |
Raito_Bezarius | super cool though | 03:19 |
mithro | Raito_Bezarius: it is unclear to me how much work would be required to get Spartan 7 support into the architecture generation part once prjxray support was finished -- but it /shouldn't/ be a huge amount | 03:20 |
mithro | Raito_Bezarius: litghost who would probably be the best person to answer is currently on holidays -- some of the antmicro crew like acomodi, mkurc or tmichalak might have some advice | 03:21 |
Raito_Bezarius | well, I will take note of this and will come back to it once I can allocate time to it, with no real guarantee though as I am not really accustomed to this kind of low level reverse engineering | 03:21 |
Raito_Bezarius | but I'm curious indeed on the state of this | 03:22 |
Raito_Bezarius | and what can be done about it | 03:22 |
Raito_Bezarius | so I might ping litghost in few months again once they are out of holidays (or not) :) | 03:22 |
Raito_Bezarius | thanks for your many very helpful pointers mithro ! | 03:22 |
Raito_Bezarius | i really appreciate it | 03:22 |
mithro | Raito_Bezarius: it's actually a lot more massaging of grumpy tools and scripts than anything /really/ complicated | 03:24 |
Raito_Bezarius | oh :> | 03:25 |
Raito_Bezarius | that I can do theorically | 03:25 |
Raito_Bezarius | but does the fuzzing can be destructive? | 03:25 |
Raito_Bezarius | like can it kill the FPGA? | 03:25 |
mithro | That is very unlikely (but like all software, no implied guarantee / warranty here) -- the goal is that we never generate a bitstream sequence that Vivado itself wouldn't generate and in fact we do a lot of testing to try and make sure that happens | 03:27 |
Raito_Bezarius | (to be fair, we have multiple ones so I think I can break at least 2 of them :>) | 03:27 |
*** ayazar has quit IRC | 03:27 | |
mithro | See the two diagrams at the end of https://docs.google.com/document/d/11wJUvr2aVBkUiuYYsFN07jkoYr_ccWlLLLFH8YQw8uQ/edit#heading=h.3qexkmb1a1q7 | 03:28 |
tpb | Title: SymbiFlow Checking / Testing Approach - Google Docs (at docs.google.com) | 03:28 |
mithro | Raito_Bezarius: The FPGA itself isn't involved in the bitstream documentation side of things | 03:28 |
Raito_Bezarius | aaah I understand now | 03:29 |
Raito_Bezarius | you're using Vivado as a proxy, right? | 03:29 |
Raito_Bezarius | if I understand well the diagram | 03:29 |
Raito_Bezarius | okay that sounds indeed super safe | 03:30 |
hansfbaier | mithro: Why don't you put the link above in the online project doc? That would be really helpful to get started. | 03:33 |
mithro | hansfbaier: Because we are not as organized as we could be :-P | 03:33 |
hansfbaier | mithro: :) | 03:34 |
mithro | hansfbaier: And I tend to create a lot of google docs + diagrams and then forget about them until a discussion many months (or years) later | 03:34 |
mithro | hansfbaier: There is a whole bunch of random diagrams + documents in the Google shared folder at https://drive.google.com/drive/folders/1euSrrszzt3Bfz792S6Ud8Ox2w7TYUZNa | 03:35 |
tpb | Title: SymbiFlow - Publically Accessible Docs – Google Drive (at drive.google.com) | 03:35 |
mithro | hansfbaier: Almost all are in various states of bitrot :-) | 03:36 |
hansfbaier | mithro: Those diagrams are really cool. I am a visual guy mostly for intellectual information. That helps quite a bit. | 03:37 |
mithro | hansfbaier: I'm a visual person, which is why end up doing the diagrams - Mainly while trying to figure out what the hell something is trying to tell me | 03:38 |
hansfbaier | mithro: The most difficult thing about getting started is that it is so easy to drown in information (tons and tons of manuals) and it is so hard to see what information is important and which isn't | 03:38 |
mithro | hansfbaier: Yeap | 03:38 |
hansfbaier | mithro: The state of things being. I would like to add support for the FPGAs in Litefury and Nitefury, but can't because the database needs to be refactored for deduplication | 03:39 |
mithro | cr1901_modern: Did you find the documentation at https://symbiflow.readthedocs.io/en/latest/symbiflow-arch-defs/docs/source/development/structure.html ? | 03:39 |
tpb | Title: Structure SymbiFlow (at symbiflow.readthedocs.io) | 03:39 |
hansfbaier | mithro: Thanks for that link, seems to help. Might have glanced over it. | 03:42 |
mithro | hansfbaier: I think the db deduplication needs to happen before we wholesale add all Vivado supported Series 7 parts -- if you only care about 1 or 2 parts you can probably just add them... | 03:42 |
mithro | hansfbaier: Did you find https://symbiflow.readthedocs.io/en/latest/symbiflow-arch-defs/docs/source/prjxray/flow-diagram.html ? | 03:44 |
tpb | Title: Flow Diagram SymbiFlow (at symbiflow.readthedocs.io) | 03:44 |
hansfbaier | mithro: The proper way is to deduplicate first, but I have no idea how long it might take and if I could help with it (I have no overview yet where the duplicated information lives) | 03:45 |
mithro | hansfbaier: Sure, but sometimes it is better to do things the easy way first :-) | 03:45 |
hansfbaier | mithro: not yet, thanks! I think I only browsed the project x-ray docs, but not the symbiflow documentation, assuming it is self-contained | 03:46 |
hansfbaier | mithro: Yeah, it sucks to be blocked | 03:46 |
mithro | hansfbaier: Sometimes it can be useful to understand how something it used to understand why it looks like something | 03:46 |
mithro | hansfbaier: I would suggest plowing ahead with adding the part which should actually give you a bit of the background needed to understand what needs to be done for the deduplication stuff | 03:47 |
hansfbaier | mithro: Yes, adding parts seems to be pretty straightforward AFAICT: Add the metadata, run the fuzzers, create pull request. done. | 03:47 |
mithro | hansfbaier: Give it a go? | 03:48 |
hansfbaier | mithro: OK I'll try it | 03:48 |
mithro | hansfbaier: My diagram effort today was https://docs.google.com/drawings/d/15sVUnCHS1ex3lmuD3J7nDR-F1Xst6Panotc-2WlNRtQ/edit | 03:49 |
tpb | Title: SymbiFlow Environment Providers - Google Drawings (at docs.google.com) | 03:49 |
*** ayazar has joined #symbiflow | 03:52 | |
hansfbaier | mithro: I found it really helpful to play a bit with the die-view in vivado/quartus to get a more low level understanding of the FPGAs. Much easier than plowing through the handbooks and much more intuitive | 03:52 |
hansfbaier | mithro: But that old Vivado version won't concede to upscale to HiDPI, so I configured a hotkey in i3 to switch resolutions | 03:53 |
-_whitenotifier- [symbiflow-arch-defs] zjenny09 opened issue #1904: post-synthesis simulation error - https://git.io/JLVCT | 03:54 | |
mithro | hansfbaier: Did you see the two tools I linked from https://twitter.com/mithro/status/1340756795308924928 ? | 03:55 |
mithro | hansfbaier: https://antmicro.github.io/symbiflow-database-visualizer/ | 03:55 |
hansfbaier | mithro: not yet, looks very interesting | 03:56 |
mithro | hansfbaier: Still very basic | 03:56 |
mithro | hansfbaier: Also https://symbiflow.github.io/prjxray-db/artix7/ | 03:57 |
tpb | Title: X-Ray ARTIX7 Database (at symbiflow.github.io) | 03:57 |
mithro | https://symbiflow.github.io/prjxray-db/artix7/tile_int_l.html#b21_22 kind of shows how the various muxes look like | 03:58 |
tpb | Title: X-Ray ARTIX7 Database: INT_L (at symbiflow.github.io) | 03:58 |
cr1901_modern | mithro: No, but I'm reading it now. Good to know | 04:02 |
cr1901_modern | What is a "SITE" in Xilinx terminology? Do TILES contain SITEs? | 04:04 |
mithro | cr1901_modern: I believe there is a glossary somewhere... | 04:05 |
mithro | cr1901_modern: https://symbiflow.readthedocs.io/en/latest/prjxray/docs/architecture/glossary.html apparently.... | 04:06 |
tpb | Title: Glossary SymbiFlow (at symbiflow.readthedocs.io) | 04:06 |
cr1901_modern | Okay, essentially the terminology is the same as nextpnr, taking a skim | 04:08 |
cr1901_modern | Although in nextpnr-land a SLICE _is_ considered a BEL | 04:09 |
hansfbaier | mithro: what do the NULL/VBRK entries mean? NULL = unknown or unused? | 04:16 |
mithro | hansfbaier: VBRK means vertical break I think -- I'm afraid I can't recall what that actually means | 04:17 |
mithro | hansfbaier: I think the NULL tiles are padding in the bitstream to make shift registers and stuff line up? Others might probably know | 04:18 |
mithro | hansfbaier: I'm don't get to play with all the cool stuff these days, I mostly just do presentations to try and get people funding to do cool stuff | 04:19 |
hansfbaier | mithro: are the cells of those diagrams individual bits and the rows/columns a factorization of them? | 04:24 |
mithro | hansfbaier: Something like that, it's explained somewhere... | 04:24 |
mithro | Heading out, have a good night people | 04:33 |
hansfbaier | mithro: Good night, thanks! | 04:35 |
*** citypw has quit IRC | 04:48 | |
*** Degi has quit IRC | 04:59 | |
*** Degi has joined #symbiflow | 05:03 | |
*** hansfbaier has quit IRC | 06:25 | |
*** hansfbaier has joined #symbiflow | 06:25 | |
*** hansfbaier has quit IRC | 06:53 | |
*** _whitelogger has quit IRC | 06:57 | |
*** citypw has joined #symbiflow | 06:59 | |
*** _whitelogger has joined #symbiflow | 06:59 | |
*** _whitelogger has quit IRC | 07:27 | |
*** _whitelogger has joined #symbiflow | 07:29 | |
*** _whitelogger has quit IRC | 07:51 | |
*** _whitelogger has joined #symbiflow | 07:53 | |
*** xtro has quit IRC | 08:46 | |
*** hansfbaier has joined #symbiflow | 09:09 | |
hansfbaier | crazy, you can get xc7010 boards for $18 including shipping | 09:11 |
-_whitenotifier- [symbiflow-examples] acomodi opened issue #109: Fix counter example - https://git.io/JLwkG | 09:24 | |
*** hansfbaier has quit IRC | 12:20 | |
-_whitenotifier- [ideas] mark-stopka opened issue #59: Add SymbiFlow tooling to openSUSE - https://git.io/JLrU4 | 14:15 | |
*** ZipCPU has quit IRC | 16:29 | |
-_whitenotifier- [symbiflow-examples] acomodi opened issue #113: LiteX: Add missing CPU-types - https://git.io/JLrr6 | 16:29 | |
*** bjorkint0sh has quit IRC | 16:48 | |
*** citypw has quit IRC | 16:57 | |
*** umarcor|2 has joined #symbiflow | 17:25 | |
*** umarcor has quit IRC | 17:25 | |
*** umarcor|2 has quit IRC | 17:44 | |
*** umarcor has joined #symbiflow | 17:44 | |
*** ssb has quit IRC | 17:45 | |
*** ssb has joined #symbiflow | 17:45 | |
*** umarcor|2 has joined #symbiflow | 17:52 | |
*** umarcor has quit IRC | 17:53 | |
*** umarcor has joined #symbiflow | 17:55 | |
*** umarcor|2 has quit IRC | 17:55 | |
*** cr1901_modern has quit IRC | 18:26 | |
*** xtro has joined #symbiflow | 18:26 | |
*** kraiskil has joined #symbiflow | 19:15 | |
*** kraiskil has quit IRC | 19:23 | |
*** kraiskil has joined #symbiflow | 19:36 | |
*** cr1901_modern has joined #symbiflow | 20:48 | |
*** alexhw has quit IRC | 21:34 | |
*** alexhw has joined #symbiflow | 21:35 | |
*** kraiskil has quit IRC | 21:37 | |
*** frubbl has joined #symbiflow | 22:36 | |
*** frubbl has quit IRC | 22:37 | |
*** frubbl has joined #symbiflow | 22:37 | |
*** mats has quit IRC | 23:20 | |
*** TMM has quit IRC | 23:56 | |
*** TMM has joined #symbiflow | 23:56 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!