cocotb_benches.dau_normal_cdf_tb¶
The rendered normal-CDF tile against the model it was rendered from.
Zero tolerance. That model is correctly rounded over every representable input, so a mismatch here is a defect in the HDL, not an accuracy question.
Attributes¶
Functions¶
Beyond the domain the answer IS 0 or 1.0; the tile must emit it and |
|
The datapath folds on it, so a break is a wrong answer for every |
|
|
|
|
|
|
|
|
|
|
The proven quad-row collector: drive ready, sample in ReadOnly, and |
Module Contents¶
- cocotb_benches.dau_normal_cdf_tb._MASK32 = 4294967295¶
- cocotb_benches.dau_normal_cdf_tb._POINT¶
- cocotb_benches.dau_normal_cdf_tb._ONE = 65536¶
- async cocotb_benches.dau_normal_cdf_tb.matches_the_model_on_directed_inputs(dut)¶
- async cocotb_benches.dau_normal_cdf_tb.saturation_is_exact_and_needs_no_error_path(dut)¶
Beyond the domain the answer IS 0 or 1.0; the tile must emit it and stay silent rather than raising anything.
- async cocotb_benches.dau_normal_cdf_tb.matches_the_model_across_the_domain(dut)¶
- async cocotb_benches.dau_normal_cdf_tb.symmetry_holds_on_device(dut)¶
The datapath folds on it, so a break is a wrong answer for every negative input at once.
- async cocotb_benches.dau_normal_cdf_tb._start(dut) None¶
- async cocotb_benches.dau_normal_cdf_tb._run(dut, rows, *, ready_pattern=(1,))¶
- cocotb_benches.dau_normal_cdf_tb._signed32(value: int) int¶
- async cocotb_benches.dau_normal_cdf_tb._send(dut, words) None¶
- async cocotb_benches.dau_normal_cdf_tb._collect(dut, *, expect: int, ready_pattern=(1,))¶
The proven quad-row collector: drive ready, sample in ReadOnly, and only count a beat that actually fired. Sampling without checking the handshake is what made this harness report zeros against a tile the waveform showed was correct.