alMalsamo | lkcl: Okay how about why is the process node 180nm so old/large? | 00:11 |
---|---|---|
alMalsamo | and is this actually fabbed in an ASIC already? | 00:11 |
lkcl | because the smaller the transistor the less current it can drive | 00:12 |
lkcl | and the more susceptible to E.M.F | 00:12 |
lkcl | therefore you actually have to design the VLSI Layout program so that it can cope with that | 00:13 |
lkcl | yes | 00:13 |
lkcl | octavius, y'all still thinking in black-box terms :) | 12:12 |
lkcl | put some print statements into C4M TAP and see what it does | 12:12 |
octavius | thanks lkcl, will do | 12:47 |
lkcl | octavius, length calculation in elaborate_ios() is off btw | 13:12 |
lkcl | i need to investigate | 13:12 |
lkcl | ok sorted | 13:17 |
lkcl | https://www.youtube.com/watch?v=vEWizqP_dP0 | 13:34 |
lkcl | ooo i have just only 100 TRELLIS_SLICEs over the limit of an ECP5 45k | 13:37 |
lkcl | which is 21,000. which is good news, in that it should be easy to find 100 TRELLIS_SLICEs | 13:38 |
ghostmansd | lkcl: I'm checking get_assembly_name, at https://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=src/openpower/decoder/isa/caller.py#l1073 | 17:40 |
ghostmansd | I'm struggling to understand how it maps to CSV files, though | 17:41 |
ghostmansd | I see RC, but that's an enum `class RC` from power_enums.py | 17:42 |
ghostmansd | should I check `fields['rc'] is RC.RC` to decide whether to emit dotted as well? | 17:50 |
ghostmansd | as for OE, it looks like that all such insns have their own entries in CSVs | 17:58 |
ghostmansd | also, some insns have nothing in CSVs for RC, e.g. cmprb; should I consider it the same as RC.NONE? | 18:03 |
ghostmansd | ah yehyeh, from src/openpower/decoder/power_enums.py:50 looks like so | 18:05 |
octavius | Didn't realise that python allows accessing class constants without instantiation, weird. So that's how enums are done? | 18:16 |
octavius | or a group of constants in general I guess | 18:17 |
ghostmansd | octavius, something like this: https://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=src/openpower/decoder/power_enums.py#l69 | 18:28 |
ghostmansd | I've never bothered to dig up the particular details of how Enum is done, though | 18:28 |
octavius | Scary thing is you don't even need that | 18:29 |
octavius | class circle: radius=3 | 18:29 |
octavius | you can access radius without instantiation: circle.radius | 18:29 |
octavius | sorry, class circle(): radius=3 | 18:29 |
tplaten | I've successfully verilated the output of issuer_verilog.py using -Wno-UNOPTFLAT -Wno-CASEINCOMPLETE -Wno-CASEOVERLAP -Wno-WIDTH, so I'll document that soon. | 18:43 |
tplaten | Now I"ll explore how to run that one | 18:45 |
ghostmansd | well, enum provides some sugar atop, like checking for uniques, names binding, and other crap you don't always need, but, when you need, it comes in handy | 19:02 |
ghostmansd | updated sv_binutils script; please let me know whether the approach I use (check for `rc is _RC.RC`) is correct or not | 19:17 |
lkcl | ghostmansd, there is no direct inheritance, it uses the compiler | 19:42 |
lkcl | the compiler generates functions | 19:42 |
lkcl | the functions are put in a dictionary | 19:42 |
lkcl | the dictionary is looked up based on the name of the opcode | 19:42 |
lkcl | yes, no entry means zero, zero means "the lowest value of the enum" | 19:43 |
lkcl | tplaten, excellent | 19:44 |
tplaten | How do I compile that verilated issuer code, I saw there is a Vissuer.mk | 19:51 |
lkcl | _you_ don't: verilator does | 19:53 |
lkcl | look at the "make microwatt-verilator" target | 19:53 |
tplaten | But I need to copy the generated files somewhere before running make | 19:54 |
lkcl | in the example that you gave on the mailing list you missed the all-important "--exe" option | 19:54 |
lkcl | no you do not | 19:54 |
lkcl | you simply type, | 19:54 |
lkcl | "make microwatt-verilator" return | 19:54 |
lkcl | https://git.libre-soc.org/?p=microwatt.git;a=blob;f=Makefile;h=e4a46eac8bfd613c81c7bbe16a2aa72dd7fef9af;hb=refs/heads/verilator_trace#l229 | 19:56 |
lkcl | line 229 | 19:56 |
tplaten | that one looks good, i'll continue tomorrow | 20:02 |
*** tplaten <tplaten!~isengaara@p200300ddff3f2d002e094dfffe000232.dip0.t-ipconnect.de> has left #libre-soc | 20:04 | |
lkcl | wooow https://github.com/metalibm/metalibm/tree/main/metalibm_functions | 22:32 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!