Saturday, 2020-08-22

*** tpb has joined #yosys00:00
*** Nazara has quit IRC00:00
*** Nazara has joined #yosys00:02
*** Degi_ has joined #yosys00:04
*** Degi has quit IRC00:07
*** Degi_ is now known as Degi00:07
*** gorbak25 has quit IRC00:58
*** mithro has quit IRC02:22
*** rjeli has quit IRC02:24
*** rohitksingh has quit IRC02:26
*** rjeli has joined #yosys02:27
*** emilazy has quit IRC02:27
*** bubble_buster has quit IRC02:30
*** emeb has left #yosys02:31
*** bubble_buster has joined #yosys02:34
*** mithro has joined #yosys02:36
*** emilazy has joined #yosys02:41
*** rohitksingh has joined #yosys02:41
*** sorear has quit IRC03:05
*** sorear has joined #yosys03:08
*** FFY00 has quit IRC03:18
*** FFY00 has joined #yosys03:18
*** FFY00 has quit IRC03:25
*** FFY00 has joined #yosys03:25
*** citypw has joined #yosys03:26
*** craigo has joined #yosys03:34
*** FFY00 has quit IRC04:16
*** FFY00 has joined #yosys04:16
*** az0re has quit IRC04:24
*** az0re has joined #yosys04:35
*** LJ_cache has quit IRC04:39
*** FFY00 has quit IRC04:46
*** FFY00 has joined #yosys04:47
*** FFY00 has quit IRC04:57
*** FFY00 has joined #yosys04:58
*** anticw has quit IRC05:56
*** anticw has joined #yosys05:59
*** emeb_mac has quit IRC06:01
*** jordigw has joined #yosys06:04
*** _whitelogger has joined #yosys06:32
*** kraiskil has joined #yosys07:01
*** Asu has joined #yosys07:12
*** xtro has quit IRC07:14
*** Asu has quit IRC07:28
*** Asuu has joined #yosys07:28
*** kraiskil has quit IRC07:28
*** Asuu has quit IRC07:34
*** Asuu has joined #yosys07:37
*** Asu has joined #yosys07:47
*** Asuu has quit IRC07:47
*** kraiskil has joined #yosys07:48
*** craigo has quit IRC07:51
*** Forty-Bot has quit IRC09:59
*** cr1901_modern has quit IRC11:01
thardinwhat's the equivalent if #if and #error in verilog? `ifdef and `ifndef exist, but `if and `error do not11:14
thardinwhat I want to do is check certain parameters and have yosys error out in case of incompatible combinations11:15
Loftythardin: try using generate if and $error11:24
thardinI found some snippets defining an assert macro11:28
*** Thorn has quit IRC11:36
*** Thorn has joined #yosys11:37
*** peeps[zen] has quit IRC11:38
*** Forty-Bot has joined #yosys11:40
*** peeps[zen] has joined #yosys11:41
*** FFY00 has quit IRC11:54
*** FFY00 has joined #yosys11:55
DaKnigyou can switch to sv and use assert :)12:02
LoftyDaKnig: that's not the behaviour thardin is looking for - $assert does not make Yosys error out, as far as I know12:03
DaKnigah, they want the synth to error out12:04
*** cr1901_modern has joined #yosys12:12
cr1901_modernI'm trying an experiment to build chipdbs in nextpnr ahead of time, and I'm quite confused about the options I need to set. Why do we need to set EXTERNAL_CHIPDB if there's already a (for instance) "ECP5_CHIPDB" variable?12:14
cr1901_modernWhat does the BBASM_MODE value "embed" mean? How does it interact with the other two variables above?12:15
Loftydaveshah: ^12:15
daveshahI have no idea tbh12:16
daveshahI'd have to look at that code again12:16
daveshahThese instructions should work, https://github.com/YosysHQ/nextpnr#pre-generating-chip-databases12:19
tpbTitle: GitHub - YosysHQ/nextpnr: nextpnr portable FPGA place and route tool (at github.com)12:19
daveshahECP5_CHIPDB selects the bba files to use for the build, EXTERNAL_CHIPDB actually configures it to mmap the chipdbs at runtime rather than include them in the binary12:20
cr1901_modernOkay, so what I can gather then, the CMake projects to build the chipdbs only generate the .bbas12:21
cr1901_modernhttps://github.com/YosysHQ/nextpnr/blob/master/ecp5/CMakeLists.txt#L11412:22
tpbTitle: nextpnr/CMakeLists.txt at master · YosysHQ/nextpnr · GitHub (at github.com)12:22
cr1901_modernSo you can't cross-compile the *bins from the chipdbs- only the *.bbas12:24
cr1901_modernOh wait... I remember what embed does... that's some weird C++ extension that effectively implements "incbin" found in an assembler worth its salt12:28
*** Forty-Bot has quit IRC12:28
cr1901_modernhttps://lists.isocpp.org/sg16/2019/11/0923.php12:30
tpbTitle: sg16: [SG16-Unicode] [ #embed_str ] Unicode Input (at lists.isocpp.org)12:30
*** Forty-Bot has joined #yosys12:30
thardinDaKnig: I've looked a bit at SV, might give some of its features a go at some point12:33
thardinfor now I'm happy just making sure parameters are sensible  :)12:33
DaKnig(I dont even use sv or suggest using it; its just that in many cases you are using sv features when you think you are doing just verilog)12:36
thardinaha12:37
thardinI take  it negative shifts aren't a thing? else these checks would be less necessary12:37
thardinas in 3 >> -1 == 612:38
DaKnigparens12:41
*** Asu has quit IRC12:44
*** emeb has joined #yosys12:46
Loftythardin: that would require much more hardware, so no, negative shifts are not a thing12:48
*** Asu has joined #yosys12:54
cr1901_modern>So you can't cross-compile the *bins from the chipdbs- only the *.bbas13:00
cr1901_modernThis isn't as bad as I thought... because the *.bbas compress REALLY well to send them over network13:00
*** Asu has quit IRC13:04
*** Asu has joined #yosys13:16
*** kraiskil has quit IRC14:00
*** Asuu has joined #yosys14:01
*** Asu has quit IRC14:03
thardinLofty: aw14:17
thardinthough that just means an if is necessary14:17
*** kraiskil has joined #yosys15:12
thardinhas anyone tried using yosys together with gnuradio? as in compiling a grc flowgraph using yosys15:27
thardinbecause it strikes me that a direct conversion receiver should be possible using the UP5K15:27
daveshahI think dkozel or tnt might have been?15:27
tntthardin: huh what now ?  You can't take an arbitrary flow graph coded in C++ and just "compile" it to a FPGA ...15:39
tntyou could do something akin to rfnoc where you use the gui to basically 'connect' stuff but each block still needs to be implemented for your target fpga. (and then write approproate architecture on the fpga to pass data between them etc ...)15:40
tntAnd that's especially true for something like a UP5k whih is rather slow and small and so you need implementation tailored to it to use it to its full potential.15:41
thardintnt: I mean on the GRC level15:48
thardinI'm fairly sure I've read gnuradio can put parts of a flowgraph on FPGAs15:48
*** citypw has quit IRC15:49
Ultrasaucehttps://github.com/jpendlum/gr-zynq looks bitrotted and limited in scope15:53
tpbTitle: GitHub - jpendlum/gr-zynq: GNU Radio support for Xilinx Zynq based FPGA accelerators (at github.com)15:53
thardininteresting15:55
thardinso it uses some zynq-specific library rather than a general verilog thing?15:56
Ultrasaucea generalized approach would be a huge undertaking15:58
thardinor would it?16:00
thardinred pitaya does something like that, but with R16:01
thardinrelies on vivado unfortunately16:01
tntthardin: yeah, as I mentionned RFNoC ... that targets Xilinx Kintex and the like ...16:08
tntand as I said, blocks needs to manually implemented, you can just "wire them up" in the gui that's it.16:08
thardinobviously the blocks themselves need implementing. I'm mostly getting at the plumbing side of things :)16:10
thardingnuradio has no support for bitdepths not a multiple of 8bit tho, I think16:11
thardinah you said "can" not "can't"16:12
DaKnigyou can always pad your signals with 0s17:04
DaKnigif its 12 bits, just connect the top bits to the remaining bits17:04
*** xtro has joined #yosys17:08
*** craigo has joined #yosys17:12
*** strongsaxophone has joined #yosys17:18
*** kraiskil has quit IRC17:30
strongsaxophoneexit17:38
*** strongsaxophone has quit IRC17:38
thardinDaKnig: waste of lcs tho18:19
LoftyNo?18:22
LoftyThat would be purely routing.18:22
thardinhum18:25
thardini suppose padding would be optimized out18:26
LoftyIt *is*, through the wreduce pass.18:26
DaKnigone trick I found recently is that if you use the top bits as the padding, it gives you a bigger range and you still have constant resolution19:00
DaKnigand it makes sense because you are pretty much multiplying by 0b100..01 to get that result19:00
DaKnigso d(3 downto 0) & d(3) & d(2) to get 6 bit samples from 4 bit samples instead of just d(3 downto 0) & (others=>'0')19:02
DaKnig(or whatever the equivalent Verilog is19:02
*** maartenBE has quit IRC19:46
*** maartenBE has joined #yosys19:52
*** emeb_mac has joined #yosys20:20
dkozelthardin: Hey. Yes. I've been writing an example of building LiteX SoCs from GNU Radio Companion flowgraphs21:15
dkozelI have a litepcie DMA Source and Sink block, but lack the time and LiteX experience to get interesting blocks setup correctly21:16
*** ayazar1 has joined #yosys21:27
*** ayazar1 has quit IRC21:31
thardindkozel: ooh21:50
*** tux3 has joined #yosys22:33
*** Asuu has quit IRC22:35
*** _whitelogger has quit IRC22:57
*** kraiskil has joined #yosys22:57
*** _whitelogger has joined #yosys22:59
cr1901_modernwhitequark: Building .bbas on a remote machine and then xferring them to another to build nextpnr works like a charm. Ty for your effort :D!23:30
whitequarki'm happy it works for you!23:31
cr1901_modernI've built yosys/nextpnr enough that I wrote a script to automate it. Added remote .bba support tonight. And for the first time in over a year, I got a working yosys/nextpnr on an ARM machine (plan to add nmigen as well soon).23:34
dkozelthardin: I'd be very interested in chatting about the *extensive* current efforts going on in GR to add much better heterogeneous computing support plumbing23:52
dkozelThere's a lot of content about it in the GRCon lineup next month23:53
dkozelI'm hoping to talk about my LiteX proof of concept there, but I'm one block short of a good demo and conference prep is eating all my time23:55
*** lf has quit IRC23:58
*** lf has joined #yosys23:58

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