Tuesday, 2021-01-19

*** tpb has joined #yosys00:00
*** somlo has quit IRC00:07
*** somlo_ has joined #yosys00:07
*** vidbina_ has quit IRC00:24
*** lf_ has quit IRC01:02
*** lf has joined #yosys01:02
*** srk has quit IRC01:22
*** citypw has joined #yosys01:23
*** srk has joined #yosys01:23
*** aquijoule_ has joined #yosys01:24
*** richbridger has quit IRC01:26
*** srk has quit IRC01:43
*** srk has joined #yosys01:44
*** emeb has left #yosys01:45
*** srk has quit IRC03:15
*** srk has joined #yosys03:15
*** srk has quit IRC03:38
*** srk has joined #yosys03:41
*** Degi_ has joined #yosys04:00
*** Degi has quit IRC04:02
*** Degi_ is now known as Degi04:02
*** srk has quit IRC04:38
*** srk has joined #yosys04:40
*** jfcaron has quit IRC04:42
*** srk has quit IRC04:56
*** srk has joined #yosys04:59
*** modwizcode has quit IRC05:31
*** s_frit has joined #yosys06:08
*** emeb_mac has quit IRC06:56
*** bzztploink has quit IRC07:12
*** bzztploink has joined #yosys07:20
*** aquijoule__ has joined #yosys07:31
*** aquijoule_ has quit IRC07:32
*** kraiskil has joined #yosys07:40
*** kraiskil has quit IRC07:45
*** jakobwenzel has joined #yosys07:55
*** FFY00 has quit IRC08:11
*** FFY00 has joined #yosys08:11
*** vidbina_ has joined #yosys08:27
*** xtro has quit IRC08:31
*** _whitelogger has quit IRC10:25
*** _whitelogger has joined #yosys10:27
*** rrika has quit IRC11:58
*** captain_morgan has quit IRC11:58
*** X-Scale has quit IRC11:58
*** bwidawsk has quit IRC11:58
*** vancz has quit IRC11:58
*** smarter has quit IRC11:58
*** simeonm has quit IRC11:58
*** TD-Linux has quit IRC11:58
*** tmiw has quit IRC11:58
*** lethalbit has quit IRC11:58
*** bwidawsk has joined #yosys11:58
*** simeonm has joined #yosys11:58
*** lethalbit has joined #yosys11:58
*** vancz has joined #yosys11:58
*** TD-Linux has joined #yosys11:58
*** tmiw has joined #yosys11:58
*** rrika has joined #yosys11:59
*** captain_morgan has joined #yosys11:59
*** X-Scale has joined #yosys11:59
*** dys has quit IRC12:01
*** dys has joined #yosys13:02
*** kraiskil has joined #yosys13:10
*** modwizcode has joined #yosys14:06
*** kraiskil has quit IRC14:16
*** vidbina_ has quit IRC15:51
*** citypw has quit IRC15:58
*** emeb has joined #yosys16:20
*** klotz has joined #yosys16:32
*** oter has joined #yosys16:50
*** vidbina_ has joined #yosys17:14
*** oter has quit IRC18:21
*** xtro has joined #yosys18:32
*** tmeissner has joined #yosys18:36
*** Xark has quit IRC18:40
*** emeb_mac has joined #yosys18:58
*** FL4SHK has quit IRC19:19
*** jakobwenzel has quit IRC19:46
*** jakobwenzel1 has joined #yosys19:46
*** jakobwenzel1 has quit IRC19:47
*** mangelis has joined #yosys20:01
*** kraiskil has joined #yosys20:02
mangelishi, i  wonder if it's possible in yosys to force that certain inputs are not connected to same luts?20:02
mangelisi 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 etc20:05
mangelisi'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 expression20:08
Loftymangelis: Why do you need this? The solution is to just instantiate LUTs directly, but this is a weird thing to want20:08
mangelisthe 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 result20:15
LoftyAnd...what is the hardware you're using?20:17
Loftymangelis: ^20:17
mangelisamiga blitter20:19
*** kraiskil has quit IRC20:19
LoftyYou, um, what.20:19
mangelis:p20:19
LoftyWhy are you trying to synthesise a design for the Amiga blitter?20:19
mangelisi already have, several20:19
knielsenoh, nice, I spent a _lot_ of time understanding how to use the blitter back then ;-)20:19
Sarayanwasn't the copper a lot funkier?20:20
* Lofty sighs20:20
LoftyOkay, well20:20
mangelisah, missed your question "why"20:20
LoftyI wrote a Yosys flow for 7400 logic, so I'm in no position to judge20:20
LoftyThe long and short of it is that what you have here is not a LUT.20:21
LoftyInstead, you need to instruct ABC to produce something which maps to the blitter20:22
LoftyThere are two ways of doing this20:22
Sarayanalso "what is connected to a lut" is not something you're supposed to care about, It's like dictation the asm instructions to a compiler20:22
Lofty<Lofty> The long and short of it is that what you have here is not a LUT.20:23
mangeliswell actually blitter is a 3-input 1-output lut20:23
Lofty...20:24
LoftyThen why aren't you mapping to LUT3s?20:24
mangelisi am20:24
LoftyBut, that achieves what you're asking for, no?20:25
mangeliswell no, because i'm trying to implement game of life now, and it needs to calculate 8 neighbours20:26
LoftyBut you can construct that out of LUT3s.20:27
mangelisso 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 left20:28
LoftyI don't think Yosys is the tool for this.20:29
mangelisbut 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 inputs20:29
LoftyYou can write a postprocessing script to group the inputs20:29
mangelisi know it's not. but i was just wondering if there exists some way to force certain operations20:30
LoftyABC's idea of a LUT is too abstract to achieve this20:30
mangelishmm okay20:30
*** kraiskil has joined #yosys20:31
mangelisi imagine what i'd want is that i could force that optimization wouldn't happen across certain bits20:31
LoftyEven more: you're attempting to enforce a strict ordering of bits20:32
LoftyThat's a constraint not even expressible to ABC20:32
mangelisah, 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 expression20:34
mangelisbut i guess it's not possible then to force the group0's 2 bits to "always exist"20:36
mangelisi'm not at all familiar how the synthesis works under the hood, thanks for telling me this anyway :)20:37
LoftyWell, I wrote a LUT mapper, so I know a reasonable amount on the subject20:40
LoftyCould I port my own LUT mapper to achieve this? Probably, but it wouldn't necessarily be as good20:40
mangeliscool20:41
SarayanIn fact you want to use yosys to generate a blitter configuration?20:42
mangelisSarayan: more like i was thinking if i could add some constraints to generate design that fits the hw better20:43
Sarayanfun :-)20:47
mangelisactually while in shower i realized that non-blocking assignments probably do just what i want21:19
mangelishmm, 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
LoftyThat mapping is the proc pass, which is called by synth21:23
mangelisah it probably needs a clock, ie. doesn't work inside always @( * )21:28
mangeliswow, it actually generates less luts and satifies the constraint i wanted :-))21:32
*** philtor has joined #yosys21:35
*** somlo_ has quit IRC21:43
*** kraiskil has quit IRC21:46
*** somlo has joined #yosys21:54
*** tmeissner has quit IRC22:20
*** vidbina_ has quit IRC22:36
*** emeb has quit IRC22:55
*** minicom has quit IRC23:08
*** minicom has joined #yosys23:08
*** klotz has quit IRC23:27
*** anticw has quit IRC23:32
*** anticw has joined #yosys23:33
*** anticw has quit IRC23:33
*** anticw has joined #yosys23:34
*** anticw has quit IRC23:36
*** anticw has joined #yosys23:37

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