<azonenberg>
cr1901_modern: yes, afaik gp5 is as documented as gp4
<azonenberg>
it's just that i never had the time to add a backend for my tools
<azonenberg>
especially the new blocks like the async state machine, which would be somewhat nontrivial to implement inference for in HDL
<azonenberg>
the other issue is that the newer greenpaks have a lot more resource sharing going on, where you might have a block that's either a DFF or a LUT
<azonenberg>
but can't be both at once
<azonenberg>
my rather simplistic techmapping wasnt smart enough to handle that
<whitequark>
nextpnr should be able to handle that very well
<whitequark>
and it's under ISC so you should be able to just contribute to it
OmniMancer has joined ##openfpga
<azonenberg>
whitequark: rewriting the toolchain to use my existing yosys synthesis and techmapping followed by nextpnr has been a planned project for a long time
<azonenberg>
i've been too busy to touch it
<azonenberg>
I wanted to try nextpnr for coolrunner too
<whitequark>
nice
<azonenberg>
My problem for the last few years has been too many things going on and not enough minions to help me with them
<azonenberg>
I'm slowly working on trying to fix that, in the middle of training up a friend to be an assembly tech for me so i don't have to build boards by hand anymore
<azonenberg>
yes i could outsource it, but for one-offs most PCBA shops just pay a tech to do the work anyway
<whitequark>
minions
<azonenberg>
The house project is winding down so that's one less thing on my plate, we're moved in now but still have a bunch of unpacking to do as well as some trim and fiber cable installation that i've been putting off
<azonenberg>
whitequark: would you prefer "henchmen"? :p
<azonenberg>
that implies more of a subterranean volcano lair though
<whitequark>
people usually call them "interns"
<whitequark>
or "assistants" perhaps.
<azonenberg>
Lol
<azonenberg>
That doesn't have the same mad scientist sound to it
<whitequark>
idk, "minion" sounds sort of degrading to me
<whitequark>
doesn't really matter i guess
<azonenberg>
In all seriousness it's a disabled friend interested in learning more about tech stuff who lives alone and recently lost her job
<azonenberg>
i figure if i can pay her 25 USD/hr or something to build boards for me here and there it'll give her some extra cash and keep her from being bored around the house all day
<whitequark>
25 USD/hr for PCBA isn't bad
<azonenberg>
and it's better than she was getting delivering pizzas
<azonenberg>
it wouldn't be too many hours a week of course, but that's time i can spend on more interesting stuff
<azonenberg>
so seems like a good deal for all parties
<azonenberg>
i'm not expecting an expert engineer, just somebody who can run a stencil and tweezer parts, watch the oven, then hand solder some PTH connectors
<azonenberg>
i had her doing 0.5mm TQFP for practice last time she was over and after the first two sides she seemed to be doing pretty decently
<azonenberg>
the fringe benefit of the whole deal is that she usually brings her dog when she's over, and my wife really misses having one around the house lol
<azonenberg>
We're planning to get one, but wanted to finish the rest of the construction first
<azonenberg>
but if said dog is just an occasional visitor we don't have to worry about him getting hurt while we're tearing out an old door or something
<azonenberg>
since we'd just do the work on other days
<azonenberg>
Anyway, i probably need a few more training sessions but i'm gonna put her to work doing a run of two or three integralsticks later in the month
<azonenberg>
as i have a couple projects coming up that will need them
_whitelogger has joined ##openfpga
<ZirconiumX>
The Quartus timing analyser is great fun when you've got to map its suggestions back to nmigen
freemint has joined ##openfpga
<whitequark>
can nmigen be improved in this regard?
<ZirconiumX>
Give me a bit and I'll copy the suggestions over
ZipCPU|Alt has quit [Remote host closed the connection]
Asu has joined ##openfpga
mumptai has joined ##openfpga
kernlbob_ has joined ##openfpga
kernlbob has quit [Ping timeout: 246 seconds]
Bob_Dole has quit [Ping timeout: 250 seconds]
<GenTooMan>
out of curiosity per the "greenpak" conversation I looked at those, kind of a strange mix of things. I'm not sure "what I could do with one", they do make one very tempted to "try all sorts of things" however. :D
<whitequark>
it's glue logic
<whitequark>
apple uses a lot of greenpak chips on their boards
<ZirconiumX>
I was wondering "why not use a CPLD", and then I found out the sheer size of a GreenPAK
<ZirconiumX>
Or lack thereof
<whitequark>
they're very cheap and OTP capable
<ZirconiumX>
Though it does frustrate me a little that synth_greenpak4 errors out if you try to synthesise something too big instead of letting you see how big the end result is
<whitequark>
does it?
<ZirconiumX>
ERROR: Insufficient number of LUTs to map all logic cells!
<whitequark>
oh, right, that's abc
<whitequark>
the reason it does that is um
<whitequark>
because it will use smaller LUTs if it runs out of larger LUT
<whitequark>
so you can't actually get a sensible "size of design"
<ZirconiumX>
Darn
<ZirconiumX>
It's interesting to compare the gate list of quartus_map vs Yosys's synth_intel
Bob_Dole has joined ##openfpga
<ZirconiumX>
When the latter works, anyway :P
<ZirconiumX>
With such highlights as quartus_map producing a LUT7
<ZirconiumX>
7 LUT7s, actually
<ZirconiumX>
361 LUTs for Quartus, 515 for Yosys; 153 DFFs for Quartus, 165 for Yosys
<whitequark>
comparing LUT counts isn't very representative
<whitequark>
because yosys with -abc9 optimizes for delay, not area
<ZirconiumX>
synth_intel has no -abc9
<whitequark>
oh
<whitequark>
yosys without -abc9 just has horrible QoS
<ZirconiumX>
Because IIUC ABC9 requires timing models of the FPGA cells
<ZirconiumX>
Which we don't have
<daveshah>
Well, you can use it without but that would be missing the point of it somewhat
<ZirconiumX>
It is pretty neat that Quartus can explain why some things got removed in synthesis
<ZirconiumX>
It comforts me greatly that not even Quartus can agree on what they call their primitive cells
<ZirconiumX>
wq: is there a way to suppress the nMigen attribute spam for Verilog? Quartus spams the log with warnings about unrecognised attributes
<whitequark>
well, it's not spam, it's telling you where everything comes from
<whitequark>
anyway, no, there's currently no option to suppress that
<azonenberg>
sure there is
<azonenberg>
it's called "grep" :p
<whitequark>
that'd suppress all attributes, not just the ones nmigen produces
<azonenberg>
just means more precision grepping :p
<azonenberg>
Only half kidding
<daveshah>
You can do `write_verilog -noattr` as a nicer grep
<daveshah>
Or `-attr2comment`, iirc
<ZirconiumX>
Hurray, my line algorithm thing meets timing!
Maya-sama has joined ##openfpga
hackkitten has quit [Disconnected by services]
Maya-sama is now known as hackkitten
<GenTooMan>
whitequark I can see apple using greenpak's a lot. They
rohitksingh has joined ##openfpga
<mwk>
ZirconiumX: attrmap pass can remove attributes matching a pattern
<ZirconiumX>
Mmm
<ZirconiumX>
By the way mwk, did you look at my code? It's changed a bit since I last linked it, but it's now at up to 170MHz
<mwk>
not yet, been busy with... things
genii has quit [Quit: Dammit Mitch]
* mwk
takes this opportunity to learn nmigen
<adamgreig>
how much more faff is an ecp5 to design in than ice40? i've done a handful of ice40 boards now but would like to play with ecp5
<adamgreig>
it seems like bigger packages, another voltage rail, more strapping pins for more complicated configuration
genii has joined ##openfpga
rohitksingh has quit [Ping timeout: 240 seconds]
<azonenberg>
adamgreig: honestly the hard part with FPGA boards isn't the minimum connections
<azonenberg>
it's figuring out all of the rules regarding which pins can be used for what
<adamgreig>
ice40 was pretty easygoing on that sort of thing
<adamgreig>
some differential inputs, two pll cells
<azonenberg>
yeah, when you get to a big xilinx part it's... a bit more complicated
<adamgreig>
admittedly the pll stuff is a nuisance as it's very poorly documented which inputs to use to go directly to pll and that you can't use the io and the pll at the same time etc
<azonenberg>
ecp5, although i havent used it yet, is likely somewhere in the middle
freeemint has quit [Ping timeout: 245 seconds]
egg has joined ##openfpga
oeuf has quit [Ping timeout: 246 seconds]
emeb_mac has joined ##openfpga
Asu` has joined ##openfpga
Asu has quit [Ping timeout: 240 seconds]
oeuf has joined ##openfpga
egg has quit [Ping timeout: 246 seconds]
egg has joined ##openfpga
oeuf has quit [Ping timeout: 245 seconds]
cr1901_modern has quit [Read error: Connection reset by peer]
cr1901_modern has joined ##openfpga
freeemint has joined ##openfpga
keesj has quit [Ping timeout: 246 seconds]
keesj has joined ##openfpga
Asu` has quit [Quit: Konversation terminated!]
genii has quit [Quit: Dammit Mitch]
ZipCPU has quit [Ping timeout: 276 seconds]
ZipCPU has joined ##openfpga
freeemint has quit [Ping timeout: 264 seconds]
Bike has joined ##openfpga
emeb has quit [Quit: Leaving.]
carl0s has quit [Remote host closed the connection]