<DemiMarieObenou4>
Given the input & output of a P&R tool, how difficult is it to check that the output is correct? If it is easy to check that the output is correct, I wonder if a machine learning model could be used.
<whitequark[cis]>
it's easy to check that the output is correct. and yeah, people have been doing ML-driven P&R for a while
<whitequark[cis]>
synthesis too, with pathetic results
<DemiMarieObenou4>
whitequark[cis]: Is it any faster/better/etc than the traditional way?
<whitequark[cis]>
far as i can tell it's just a fad
<DemiMarieObenou4>
Are the results garbage? I couldn’t tell if “with pathetic results” only applied to synthesis or to P&R as well.
<whitequark[cis]>
synthesis, where it's like... only occasionally correct at all
<DemiMarieObenou4>
whitequark[cis]: Is that because it has no advantages over standard P&R?
<whitequark[cis]>
it doesn't seem practical enough for any major vendor to use it
<DemiMarieObenou4>
I wonder if the immense amount of work put into ML would make things better now.
<RobTaylor[m]>
Maybe placement (I have a collection of interesting papers for ASIC placement, padring, and pinout) but I very much doubt routing. You could have some mileage by providing a model with a routing tool and a tool to understand the graph of the design and using it to vary parameters.
<DemiMarieObenou4>
Which one is slower in practice?
<RobTaylor[m]>
Sorry I don’t understand the question
<DemiMarieObenou4>
Which step of P&R takes more time?
<whitequark[cis]>
routing takes a lot more, usually
<RobTaylor[m]>
Yeah routing by far. It’s iterated until completion
<RobTaylor[m]>
Demi Marie Obenour: David Z. Pan's team at utexas has done some investigation, worth reading through their papers.
<ignaloidas>
About routing on larger spaces being easier - from experience with Factorio belt balancer finding using SAT (it's honestly not that different from a very, very small scale P&R), for the same "circuit", only the sizes at the limits of where it's possible to fit them get slow, if you bump it so it's like 20% more space, you get as results as fast as you're gonna get, more room will just take more time to express and slow you down a very small
<ignaloidas>
amount
<galibert[m]>
isn't placement also iterated until completion? I thought it was using annealing or something similar
azonenberg has quit [Ping timeout: 276 seconds]
azonenberg has joined #prjunnamed
cr1901_ has joined #prjunnamed
cr1901 has quit [Ping timeout: 265 seconds]
<vancz>
i just remembered logisim or what also has HDL synthesis
<vancz>
today, attempt number 3 at trying to get myself to do something with serv. I have copy pasted the demo commands in the readme, way to go me.
<vancz>
and then one more thing I need to do is figure out what to do about the timer interrupt to make serv/zephyr happy
<vancz>
derp, I think I actually want to hook up the Mem interface in the top right of the diagrams
<vancz>
AFAIU "RF" is the internal registers?
<vancz>
"and an RF interface for connecting to an SRAM for GPR and CSR registers."
<vancz>
so I just want that to be part of the RTL model
<vancz>
ok RF is Register File not radio frequency (well, registers are fast I guess?)
<vancz>
so, I probably dont care about Data(?)/gpio since right now everything is MMIO. I dont care about RF and want it to be internal. I do care about Mem.
<vancz>
I guess I could try just cannibalizing a Servant example and exposing the ram lines