*** tpb has joined #yosys | 00:00 | |
*** somlo has quit IRC | 00:07 | |
*** somlo_ has joined #yosys | 00:07 | |
*** vidbina_ has quit IRC | 00:24 | |
*** lf_ has quit IRC | 01:02 | |
*** lf has joined #yosys | 01:02 | |
*** srk has quit IRC | 01:22 | |
*** citypw has joined #yosys | 01:23 | |
*** srk has joined #yosys | 01:23 | |
*** aquijoule_ has joined #yosys | 01:24 | |
*** richbridger has quit IRC | 01:26 | |
*** srk has quit IRC | 01:43 | |
*** srk has joined #yosys | 01:44 | |
*** emeb has left #yosys | 01:45 | |
*** srk has quit IRC | 03:15 | |
*** srk has joined #yosys | 03:15 | |
*** srk has quit IRC | 03:38 | |
*** srk has joined #yosys | 03:41 | |
*** Degi_ has joined #yosys | 04:00 | |
*** Degi has quit IRC | 04:02 | |
*** Degi_ is now known as Degi | 04:02 | |
*** srk has quit IRC | 04:38 | |
*** srk has joined #yosys | 04:40 | |
*** jfcaron has quit IRC | 04:42 | |
*** srk has quit IRC | 04:56 | |
*** srk has joined #yosys | 04:59 | |
*** modwizcode has quit IRC | 05:31 | |
*** s_frit has joined #yosys | 06:08 | |
*** emeb_mac has quit IRC | 06:56 | |
*** bzztploink has quit IRC | 07:12 | |
*** bzztploink has joined #yosys | 07:20 | |
*** aquijoule__ has joined #yosys | 07:31 | |
*** aquijoule_ has quit IRC | 07:32 | |
*** kraiskil has joined #yosys | 07:40 | |
*** kraiskil has quit IRC | 07:45 | |
*** jakobwenzel has joined #yosys | 07:55 | |
*** FFY00 has quit IRC | 08:11 | |
*** FFY00 has joined #yosys | 08:11 | |
*** vidbina_ has joined #yosys | 08:27 | |
*** xtro has quit IRC | 08:31 | |
*** _whitelogger has quit IRC | 10:25 | |
*** _whitelogger has joined #yosys | 10:27 | |
*** rrika has quit IRC | 11:58 | |
*** captain_morgan has quit IRC | 11:58 | |
*** X-Scale has quit IRC | 11:58 | |
*** bwidawsk has quit IRC | 11:58 | |
*** vancz has quit IRC | 11:58 | |
*** smarter has quit IRC | 11:58 | |
*** simeonm has quit IRC | 11:58 | |
*** TD-Linux has quit IRC | 11:58 | |
*** tmiw has quit IRC | 11:58 | |
*** lethalbit has quit IRC | 11:58 | |
*** bwidawsk has joined #yosys | 11:58 | |
*** simeonm has joined #yosys | 11:58 | |
*** lethalbit has joined #yosys | 11:58 | |
*** vancz has joined #yosys | 11:58 | |
*** TD-Linux has joined #yosys | 11:58 | |
*** tmiw has joined #yosys | 11:58 | |
*** rrika has joined #yosys | 11:59 | |
*** captain_morgan has joined #yosys | 11:59 | |
*** X-Scale has joined #yosys | 11:59 | |
*** dys has quit IRC | 12:01 | |
*** dys has joined #yosys | 13:02 | |
*** kraiskil has joined #yosys | 13:10 | |
*** modwizcode has joined #yosys | 14:06 | |
*** kraiskil has quit IRC | 14:16 | |
*** vidbina_ has quit IRC | 15:51 | |
*** citypw has quit IRC | 15:58 | |
*** emeb has joined #yosys | 16:20 | |
*** klotz has joined #yosys | 16:32 | |
*** oter has joined #yosys | 16:50 | |
*** vidbina_ has joined #yosys | 17:14 | |
*** oter has quit IRC | 18:21 | |
*** xtro has joined #yosys | 18:32 | |
*** tmeissner has joined #yosys | 18:36 | |
*** Xark has quit IRC | 18:40 | |
*** emeb_mac has joined #yosys | 18:58 | |
*** FL4SHK has quit IRC | 19:19 | |
*** jakobwenzel has quit IRC | 19:46 | |
*** jakobwenzel1 has joined #yosys | 19:46 | |
*** jakobwenzel1 has quit IRC | 19:47 | |
*** mangelis has joined #yosys | 20:01 | |
*** kraiskil has joined #yosys | 20:02 | |
mangelis | hi, i wonder if it's possible in yosys to force that certain inputs are not connected to same luts? | 20:02 |
---|---|---|
mangelis | i have module with 9 input bits, and it would help if i could force that only bits 0,1,2 or internal bits can be connected to a lut, then only 3,4,5 and internals etc | 20:05 |
mangelis | i've tried to do group0 = input[0]+input[1]+input[2]; group1 = input[3]+input[4]+input[5]; ... result=group0+group1+group2; but the synthesis results are the same than if i have everything in one big expression | 20:08 |
Lofty | mangelis: Why do you need this? The solution is to just instantiate LUTs directly, but this is a weird thing to want | 20:08 |
mangelis | the hardware i'm using to run the design can't access all the inputs directly. i'll have to insert manual "buffer" luts if it's not possible with yosys to directly generate valid result | 20:15 |
Lofty | And...what is the hardware you're using? | 20:17 |
Lofty | mangelis: ^ | 20:17 |
mangelis | amiga blitter | 20:19 |
*** kraiskil has quit IRC | 20:19 | |
Lofty | You, um, what. | 20:19 |
mangelis | :p | 20:19 |
Lofty | Why are you trying to synthesise a design for the Amiga blitter? | 20:19 |
mangelis | i already have, several | 20:19 |
knielsen | oh, nice, I spent a _lot_ of time understanding how to use the blitter back then ;-) | 20:19 |
Sarayan | wasn't the copper a lot funkier? | 20:20 |
* Lofty sighs | 20:20 | |
Lofty | Okay, well | 20:20 |
mangelis | ah, missed your question "why" | 20:20 |
Lofty | I wrote a Yosys flow for 7400 logic, so I'm in no position to judge | 20:20 |
Lofty | The long and short of it is that what you have here is not a LUT. | 20:21 |
Lofty | Instead, you need to instruct ABC to produce something which maps to the blitter | 20:22 |
Lofty | There are two ways of doing this | 20:22 |
Sarayan | also "what is connected to a lut" is not something you're supposed to care about, It's like dictation the asm instructions to a compiler | 20:22 |
Lofty | <Lofty> The long and short of it is that what you have here is not a LUT. | 20:23 |
mangelis | well actually blitter is a 3-input 1-output lut | 20:23 |
Lofty | ... | 20:24 |
Lofty | Then why aren't you mapping to LUT3s? | 20:24 |
mangelis | i am | 20:24 |
Lofty | But, that achieves what you're asking for, no? | 20:25 |
mangelis | well no, because i'm trying to implement game of life now, and it needs to calculate 8 neighbours | 20:26 |
Lofty | But you can construct that out of LUT3s. | 20:27 |
mangelis | so when blitter is executing it reads 3 words from memory, performs this 3-to-1 boolean operation to all bits and writes output. you can do shifts by delaying some of the inputs. that gives a way how to access cells on the left | 20:28 |
Lofty | I don't think Yosys is the tool for this. | 20:29 |
mangelis | but to access cells on the right, blitter has to be run in "descending" mode. so one can not combine those in one blit operation. hence my need to group the inputs | 20:29 |
Lofty | You can write a postprocessing script to group the inputs | 20:29 |
mangelis | i know it's not. but i was just wondering if there exists some way to force certain operations | 20:30 |
Lofty | ABC's idea of a LUT is too abstract to achieve this | 20:30 |
mangelis | hmm okay | 20:30 |
*** kraiskil has joined #yosys | 20:31 | |
mangelis | i imagine what i'd want is that i could force that optimization wouldn't happen across certain bits | 20:31 |
Lofty | Even more: you're attempting to enforce a strict ordering of bits | 20:32 |
Lofty | That's a constraint not even expressible to ABC | 20:32 |
mangelis | ah, on verilog side i see that reg "group0" has 2 bits, which are generated by the sum of three input bits and then group0 is used in other expression | 20:34 |
mangelis | but i guess it's not possible then to force the group0's 2 bits to "always exist" | 20:36 |
mangelis | i'm not at all familiar how the synthesis works under the hood, thanks for telling me this anyway :) | 20:37 |
Lofty | Well, I wrote a LUT mapper, so I know a reasonable amount on the subject | 20:40 |
Lofty | Could I port my own LUT mapper to achieve this? Probably, but it wouldn't necessarily be as good | 20:40 |
mangelis | cool | 20:41 |
Sarayan | In fact you want to use yosys to generate a blitter configuration? | 20:42 |
mangelis | Sarayan: more like i was thinking if i could add some constraints to generate design that fits the hw better | 20:43 |
Sarayan | fun :-) | 20:47 |
mangelis | actually while in shower i realized that non-blocking assignments probably do just what i want | 21:19 |
mangelis | hmm, doesn't seem to change the result of synthesis. is the non blocking assigment -> flipflop mapping done somewhere else than just generic synthesis? | 21:21 |
Lofty | That mapping is the proc pass, which is called by synth | 21:23 |
mangelis | ah it probably needs a clock, ie. doesn't work inside always @( * ) | 21:28 |
mangelis | wow, it actually generates less luts and satifies the constraint i wanted :-)) | 21:32 |
*** philtor has joined #yosys | 21:35 | |
*** somlo_ has quit IRC | 21:43 | |
*** kraiskil has quit IRC | 21:46 | |
*** somlo has joined #yosys | 21:54 | |
*** tmeissner has quit IRC | 22:20 | |
*** vidbina_ has quit IRC | 22:36 | |
*** emeb has quit IRC | 22:55 | |
*** minicom has quit IRC | 23:08 | |
*** minicom has joined #yosys | 23:08 | |
*** klotz has quit IRC | 23:27 | |
*** anticw has quit IRC | 23:32 | |
*** anticw has joined #yosys | 23:33 | |
*** anticw has quit IRC | 23:33 | |
*** anticw has joined #yosys | 23:34 | |
*** anticw has quit IRC | 23:36 | |
*** anticw has joined #yosys | 23:37 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!