chipsalliance / firrtl

Flexible Intermediate Representation for RTL
https://www.chisel-lang.org/firrtl/
Apache License 2.0
719 stars 176 forks source link

Improve code generation for UInt<1>[n] #99

Open aswaterman opened 8 years ago

aswaterman commented 8 years ago

Basically, emit them in Verilog like you'd emit UInt<n> -- don't flatten them, not even on ports.

It's not inconceivable that we could specialize Vec[Bool] in Chisel instead, but someone's got to do this to provide decent simulation performance. This is probably the single most profitable simulation performance optimization beyond DCE.

azidar commented 4 years ago

Related work: https://github.com/albertchen-sifive/firrtl/tree/optimizeVecOfBools