clash-lang / clash-compiler

Haskell to VHDL/Verilog/SystemVerilog compiler
https://clash-lang.org/
Other
1.4k stars 149 forks source link

Add `Clash.Annotations.SynthesisAttributes.markDebug` (plus an unfortunate amount of baggage) #2547

Closed martijnbastiaan closed 1 year ago

martijnbastiaan commented 1 year ago

I was playing around with constraint files and thought it would be nice if we could have a term level way of annotating signals with synthesis attributes. That is, the markDebug proposed in this PR. Unfortunately, I ran into quite a number of things I needed (and "needed") to fix before being able to add the function:

Each of these points correspond to a commit. This PR can be split up into multiple smaller ones if desired.

Still TODO: