frgo has quit [Read error: Connection reset by peer]
frgo_ has joined #amaranth-lang
Degi has quit [Ping timeout: 260 seconds]
Degi has joined #amaranth-lang
jjsuperpower_ has joined #amaranth-lang
jjsuperpower has quit [Read error: Connection reset by peer]
ALTracer has quit [Read error: Connection reset by peer]
mindw0rk has joined #amaranth-lang
sugarbeet has quit [Ping timeout: 260 seconds]
sugarbeet has joined #amaranth-lang
frgo_ has quit [Ping timeout: 245 seconds]
jjsuperpower_ has quit [Ping timeout: 260 seconds]
frgo has joined #amaranth-lang
frgo has quit [Remote host closed the connection]
frgo has joined #amaranth-lang
frgo has quit [Read error: Connection reset by peer]
frgo_ has joined #amaranth-lang
frgo_ has quit [Read error: Connection reset by peer]
frgo has joined #amaranth-lang
frgo has quit [Remote host closed the connection]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 265 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 252 seconds]
frgo has joined #amaranth-lang
mkaiser[m] has quit [Quit: Idle timeout reached: 172800s]
frgo has quit [Ping timeout: 252 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 252 seconds]
frgo has joined #amaranth-lang
frgo has quit [Read error: Connection reset by peer]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 268 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 252 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 252 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 276 seconds]
ydnatag[m] has joined #amaranth-lang
<ydnatag[m]>
Is there any way to get a signal that is not driving any other part of the design and will be pruned by synth? I'm having a problen that synplify pro is pruninng a part of my design (breaking a cdc false path contraint) and i'm not finding what is unconnected
<whitequark[cis]>
sorry, can you rephrase that?
frgo has joined #amaranth-lang
<ydnatag[m]>
Yes, sure. Synplify pro is pruning part of my design and breaking pnr because a net has a false path contraint and does not exist anymore after synthesis. So i need to find out where the synthesizer started pruning my design. In other words, where i left a net not driving any logic or port.
frgo has quit [Ping timeout: 260 seconds]
<ydnatag[m]>
I was looking at logs but i was not able to find the net. So my question is if amaranth has a way to get signals that are in the design but are not driving any other signal.
galibert[m] has joined #amaranth-lang
<galibert[m]>
Define « get »
<ydnatag[m]>
Hmmm... i think it would be grest to get the ful path of the signal in the design, like top.fifo.consume_cdc.stage0. But having the object i can get the path to the signal with the SignalDict name_map
<whitequark[cis]>
jethromightbemydad: not currently, unfortunately, and signals in Amaranth have more than one full path
<whitequark[cis]>
however, if you look at the NIR (the internal Netlist class), you should be able to devise a way to get it
<whitequark[cis]>
right now I don't have the space in my life to write you a complete solution but hopefully this pointer will help you
<ydnatag[m]>
No problem! I was no expecting a complete solution neither xD. I'm just asking you because I was trying to solve this issue for a long and I'm a little bit frustrated, but i will find out the issue. Thank you for you time and help.
<ydnatag[m]>
The main problem I have is that I'm using amaranth to generate a project for the polarfire. I think that you know how bad libero is hahah
<whitequark[cis]>
I actually don't have libero installed somehow
<ydnatag[m]>
It is the worst sw i've ever used. And for old devices like proasic or smartfusion is even worse.
<ydnatag[m]>
I'm a little bit surprised that amaranth does not have support for any microchip, i thought it was because of libero
<ydnatag[m]>
* any microchip device, i
<whitequark[cis]>
no, nobody just expressed any interest in it
<whitequark[cis]>
I'm generally fairly proactive about adding new toolchains, and Amaranth probably has the most integrations of any HDL in existence (not including specialized tools like FuseSoC)
<ydnatag[m]>
That is why i was surprised, know your effor to include as much vendors as possible.
<ydnatag[m]>
I can't open the integration i've done because i'm not allowed u.u. but the main problem i had was the initialization value for memories. Synplify pro that comes with libero does not support inline memory initialization and must be done using a text file and use verilog file functions :/.
<whitequark[cis]>
ohhhhh, that problem
<whitequark[cis]>
this problem has been a thorn in my side for years, and unfortunately it's quite tricky to do anything about it
<whitequark[cis]>
I've hit it with Diamond too, it is currently unsolved
_whitelogger has joined #amaranth-lang
<ydnatag[m]>
I solved it in a very nasty way with regex. Looking for memory initialization, extracting the data and raplacing it with the supported syntax... I'm not really proud of it, but works
<whitequark[cis]>
tbh not the worst solution, the "better" alternatives involve so many cross-cutting hacks across so many projects that it's still not upstream
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 252 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 260 seconds]
whitequark[cis] has quit [Quit: Bridge terminating on SIGTERM]
_catircservices has quit [Quit: Bridge terminating on SIGTERM]
galibert[m] has quit [Quit: Bridge terminating on SIGTERM]
ydnatag[m] has quit [Quit: Bridge terminating on SIGTERM]