fabianschuiki / llhd

Low Level Hardware Description — A foundation for building hardware design tools.
http://www.llhd.io
Apache License 2.0
396 stars 30 forks source link

Move signal probes in ECM instead of TCM #114

Open fabianschuiki opened 4 years ago

fabianschuiki commented 4 years ago

At the moment, ECM and TCM are interdependent and may need to be executed multiple times. This is due to prb instructions being moved only during TCM, while all other instructions are already moved in ECM. This is problematic, since an instruction may not be movable since its argument comes from a prb, which in turn might depend on an instruction generating a signal. To resolve this, migrate the prb movement into ECM (taking care of not moving out of temporal regions), which will then leave TCM with only moving drv instructions.