Tuesday, 2019-06-25

*** tpb has joined #yosys00:00
*** emeb has quit IRC00:15
*** emeb_mac has joined #yosys00:19
*** gsi__ has joined #yosys00:56
*** gsi_ has quit IRC00:59
*** promach has joined #yosys02:14
promachHow much RAM does building nextpnr require ? 8GB RAM plus 5GB swap also fail to build02:15
cr1901_modernAt least 2GB IME, and even then on -j1 you will go to swap02:23
cr1901_modernIt's a pity, can't build on my ARM SBCs, and the Pinebook takes hours02:24
promachI already had 8GB RAM02:25
cr1901_modernI assume you're building -j$NPROC02:25
cr1901_modernif you're building w/ -j1, then WOW ._.02:25
promachcr1901_modern : how long does it take for -j$NPROC ? and only use 2GB ?02:30
cr1901_modernIf you use -j1, you can do it in 2GB of RAM and 2GB of swap02:31
cr1901_modernI have no idea how much -j$NPROC takes, but 8GB RAM seems extremely high02:31
promach-j$NPROC should use less time and RAM, I suppose ?02:33
promachcr1901_modern02:33
cr1901_modernLess time, more RAM02:33
cr1901_modernnevermind, I don't know what the problem is02:34
cr1901_modernsorry02:34
promachok02:34
*** lutsabound has quit IRC02:41
*** PyroPeter has quit IRC02:47
*** vonnieda has joined #yosys02:55
*** PyroPeter has joined #yosys03:00
*** rohitksingh_work has joined #yosys05:07
*** promach has quit IRC05:11
*** proteusguy has quit IRC05:15
*** dys has quit IRC05:27
*** rohitksingh has joined #yosys05:39
*** proteusguy has joined #yosys06:55
*** emeb_mac has quit IRC07:36
*** m4ssi has joined #yosys08:34
*** attie has quit IRC09:08
*** ddrown has quit IRC09:10
*** fsasm has joined #yosys09:57
*** AlexDaniel has quit IRC10:27
*** attie has joined #yosys10:32
*** gsi_ has joined #yosys11:37
*** gsi__ has quit IRC11:39
*** gsi__ has joined #yosys11:42
*** gsi_ has quit IRC11:42
*** gsi__ has quit IRC11:51
*** massi_ has joined #yosys12:03
*** massi_ has quit IRC12:08
*** proteusguy has quit IRC13:13
*** vonnieda has quit IRC13:55
*** vonnieda has joined #yosys14:08
*** rohitksingh_work has quit IRC14:23
*** rohitksingh has quit IRC14:27
*** fsasm has quit IRC15:04
*** rohitksingh has joined #yosys15:04
*** gsi_ has joined #yosys15:13
*** proteusguy has joined #yosys15:24
*** dys has joined #yosys15:43
*** emeb has joined #yosys15:52
*** rohitksingh has quit IRC15:53
*** rohitksingh has joined #yosys15:57
*** pie_ has quit IRC16:00
*** maikmerten has joined #yosys16:02
*** gsi__ has joined #yosys16:09
*** gsi_ has quit IRC16:10
*** citypw has joined #yosys16:11
*** citypw has quit IRC16:11
*** citypw has joined #yosys16:13
*** m4ssi has quit IRC16:13
*** gsi_ has joined #yosys16:14
*** gsi__ has quit IRC16:16
*** rohitksingh has quit IRC16:22
*** fsasm has joined #yosys16:30
*** citypw has quit IRC16:45
*** citypw has joined #yosys16:59
*** rohitksingh has joined #yosys17:01
*** _whitelogger has quit IRC17:11
*** pie_ has joined #yosys17:13
*** _whitelogger has joined #yosys17:14
*** pie_ has quit IRC17:14
*** pie_ has joined #yosys17:15
*** pie_ has quit IRC17:16
*** pie_ has joined #yosys17:16
*** citypw has quit IRC17:22
*** kraiskil has joined #yosys17:26
*** gsi__ has joined #yosys17:34
*** gsi_ has quit IRC17:37
pepijndevos_Are there any public liberty files I can look at as a reference?17:39
*** gsi_ has joined #yosys17:39
*** gsi__ has quit IRC17:42
*** AlexDaniel has joined #yosys17:53
*** gsi__ has joined #yosys17:57
*** gsi_ has quit IRC17:58
corecodewhat do you mean by liberty files?18:00
*** emeb_mac has joined #yosys18:01
pepijndevos_corecode, a library that describes asic logic cells18:04
*** rohitksingh has quit IRC18:18
*** emeb_mac has quit IRC18:28
*** kbeckmann has quit IRC18:29
*** kbeckmann has joined #yosys18:30
*** Thorn has quit IRC18:43
*** gsi_ has joined #yosys18:49
*** gsi__ has quit IRC18:51
*** Thorn has joined #yosys18:53
*** emeb_mac has joined #yosys18:58
pepijndevos_Warning: Found unsupported expression 'D*C' in pin attribute of cell '74AC575_8x1DFFR' - skipping.19:23
pepijndevos_Doesn't seem like Yosys supports synchronous reset flip-flops?19:24
*** pie_ has quit IRC19:25
*** pie_ has joined #yosys19:29
ZirconiumXPossibly one for daveshah: you can use `sat` to prove two netlists are equivalent, right?19:37
ZirconiumXI don't think netlist is at all the right term; I mean "an internally represented ILANG design"19:38
*** pie_ has quit IRC19:40
*** pie_ has joined #yosys19:43
pepijndevos_lol, for the pwm benchmark, almost all of the chips are used to say x>y19:44
ZirconiumXpepijndevos_: I made a pass to convert chips into 7485s19:45
ZirconiumX*convert comparison chips19:45
ZirconiumXIt was marginally worse for me, but I can commit it if you want19:46
ZirconiumXHmm, I wonder if it's better to use 7485s for variable comparisons and let ABC handle comparison to a constant19:47
*** emeb_mac has quit IRC19:48
ZirconiumXpepijndevos_: do you mind conducting an experiment for me?19:49
*** dys has quit IRC19:50
*** dys has joined #yosys19:51
pepijndevos_ZirconiumX, not at all19:59
pepijndevos_What do you think about adding a 74181, maybe as an $alu thingy?20:01
pepijndevos_* as long as your experiment allows me to go to bed before 1120:01
ZirconiumXCan you quickly scratch up a 32 bit comparison module between two variables, a variable and zero, and a variable and some random binary number?20:01
ZirconiumXAnd then `synth` them20:01
ZirconiumXHere's my hunch: comparison with zero will be smallest, then the comparison with the random number, and then the variable comparison20:02
pepijndevos_I'll try. My verilog skills are basically non-existant. (learned VHDL in uni)20:02
ZirconiumXpepijndevos_: nak on including a 74181 as an $alu cell; the inputs of the $alu cell are very different to what the 74181 expects20:04
ZirconiumXBut you could include the various functions as liberty cells20:04
ZirconiumXThe 74182 should make a good $lcu though20:04
pepijndevos_I thought liberty cells did not works for more than one output20:05
*** kraiskil has quit IRC20:05
pepijndevos_But yea, was thinking if we could complement the $add techpass with some other arithemitic.20:06
ZirconiumXAh, good point20:06
ZirconiumXHmm20:06
ZirconiumXSo20:06
ZirconiumXThe 74181 would be wonderful20:06
ZirconiumX*but* it's also difficult to obtain20:06
ZirconiumXWhich was why I picked a 28320:07
pepijndevos_oh... did not know that20:07
pepijndevos_what's a $lcu?20:07
pepijndevos_The manual just has a fixme20:07
ZirconiumXLookahead carry unit20:08
ZirconiumXThe 283 is (usually?) a carry-skip adder, but an adder with an LCU is far superior20:09
pepijndevos_Would it make sense to implement $sub with a quad inverter and carry in tied high?20:10
ZirconiumXThe '181 has /P and /G specifically to integrate with a '18220:10
ZirconiumXI'm reasonably sure Yosys knows how to do that already20:10
pepijndevos_Hmm, so far subtraction generated a bunch of xor stuff for me20:11
ZirconiumXHmm, okay20:11
ZirconiumXIn that case, sure20:11
pepijndevos_Eh... I'll get back to your compare test. Maybe I'll make an issue to collect ALU thoughts.20:12
ZirconiumXSure thing20:13
pepijndevos_So... 0 is actually smaller than the particular random number I picked20:15
pepijndevos_But with a variable is many times bigger20:15
pepijndevos_for any number 60-70, for the variable 196.20:16
*** maikmerten has quit IRC20:24
corecodethe gigatron does alu with mux chips20:25
corecodeit's a mind bender20:25
pepijndevos_Yea, I remember in the video they explained their ALU uses 6 chips, but they did not go into details20:29
pepijndevos_Because it'd be a whole seperate video I guess...20:29
corecodeyea i just stared at the schematic until it made sense20:34
pepijndevos_I wonder if maybe $sub -> $add+inv is maybe just some pass/parameter we're missing...20:34
pepijndevos_corecode, IIRC it was based on another thing... maybe there is an article out there that explains it... or I need to find some time to stare at the schematic too.20:35
pepijndevos_Is it *just* muxes?20:35
corecodeand one adder, i think20:36
corecodeor two?20:36
ZirconiumXpepijndevos_: It's not all that complex20:42
ZirconiumXThe ALU of the Gigatron is essentially F(A) + F(B)20:43
ZirconiumXSorry, Fa(A, B) + Fb(A, B)20:43
ZirconiumXWhere Fa and Fb are 4-bit LUTs20:46
ZirconiumXimplemented as 74153s20:46
ZirconiumXs/as/with/20:46
ZirconiumXSo addition is Fa(A, B) = A, and Fb(A, B) = B20:47
ZirconiumXsubtraction is Fa(A, B) = A, Fb(A, B) = ~B and the carry-in is set high20:47
ZirconiumXAnd for most boolean logic, e.g. AND: Fa(A, B) = A & B, Fb(A, B) = 020:48
ZirconiumXcorecode: ^20:48
pepijndevos_Sweet20:48
ZirconiumXSo, you *could* implement an ALU in terms of muxes and addition20:49
ZirconiumXHowever, it quickly grows a bit inefficient20:49
ZirconiumXBecause you need N 74153s and N/4 74283s20:50
ZirconiumXFor an N-bit ALU20:50
ZirconiumXIt's more flexible than a '181/'182 set up, but also bigger20:52
pepijndevos_So how did the gigatron get away with 6 chips for its ALU (IIRC)?20:53
ZirconiumXpepijndevos_: They didn't; https://cdn.hackaday.io/files/20781889094304/Schematics.pdf page 6 shows they use 10 ICs for the ALU21:00
ZirconiumXIt's an 8-bit ALU, so 8 74153s plus 8/4 = 2 74283s21:00
pepijndevos_IRI (I recalled incorrectly)21:02
ZirconiumXThe genius of the design comes to one Dieter Muller, AKA ttlworks21:03
ZirconiumXWho basically *wrote the book* on 74 series logic21:03
ZirconiumXhttp://www.6502.org/users/dieter/a1/a1_1.htm21:04
tpbTitle: PAL16L8 (at www.6502.org)21:04
pepijndevos_There is a book?? I need this21:04
pepijndevos_for reasons21:04
ZirconiumXAnd more generally: http://www.6502.org/users/dieter/index.htm21:05
tpbTitle: TAF (at www.6502.org)21:05
pepijndevos_Too sleepy. Will look tomorrow. After... ahem, studying for the oral exam thursday heh21:07
*** fsasm has quit IRC21:49
*** pie_ has quit IRC21:56
*** weatherhead has quit IRC22:15
*** knielsen has quit IRC22:25
*** gsi_ has quit IRC22:29
*** gsi_ has joined #yosys22:30
*** vonnieda has quit IRC22:50
*** pie_ has joined #yosys22:56
*** pie_ has joined #yosys22:58
*** pie_ has joined #yosys22:59
*** vonnieda has joined #yosys23:09
*** vonnieda has quit IRC23:12
*** _whitelogger has quit IRC23:35
*** _whitelogger has joined #yosys23:37

Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!