Skip to main content

emit_seq_datapath_verilog

Function emit_seq_datapath_verilog 

Source
pub fn emit_seq_datapath_verilog(name: &str, df: &DecisionFabric) -> String
Expand description

Emit a general SEQUENCED datapath over a DecisionFabric’s cells — the LATENCY-INSENSITIVE fabric. A combinational Arith/Select cell settles in one step; a Func DIVISION cell (DivS/ModS/FloorDivS) ISSUES the multi-cycle shared_divider and STALLS until its done (a variable-latency TILE). This is the same cell stream emit_decision_fabric_verilog wires as a pure combinational DAG, but with the sequential functional units as first-class multi-cycle tiles — so it composes with the fpu.v FPU (Phase B) and the block-walk sequencer (Phase C). Proven == eval_decision_fabric == the VM by iverilog. (Phase A: Arith/ Select/division; float/pow/mem are the following increments and PANIC here as the honest boundary.)