clash-lang / clash-compiler

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

Adjust `BiSignalDefault` doc to clarify affects simulation only #2720

Open lmbollen opened 1 month ago

lmbollen commented 1 month ago

No logic is added here, it only represents the state of the wire when no-one is driving it.

DigitalBrains1 commented 1 month ago

Doesn't this mean we break the contract that if Haskell simulation produces a defined value, HDL simulation should as well? I think HDL simulation will always produce high-impedance, and if we look here for VHDL for instance, you'll see the boolean operations returning X for Z inputs. So we see both Zs and Xs in HDL simulation, whereas Clash simulation, if I understand it correctly, will produce defined values.