code wiki / _hdl_build / nx_decoder_fields_mem_test.nx

nx_decoder_fields_mem_test.nx

buildroot/runtime/_hdl_build/nx_decoder_fields_mem_test.nx

4451 B96 linesdepth 8pulls 9 transitivereach 0 importersview sourcekind gate/prooftopic decoder
docsdependenciesstructsconstsfunctions

about

nx_decoder_fields_mem_test.nx -- FUNCTIONAL gate-level verify of the decoder field extractors. Builds the 6 field sub-networks (nx_decoder_fields_build) into a MEM sink, runs the gate-sim over 200 pseudo-random 32-bit instructions, and diffs every field net against the behavioral oracle (nx_rv64im_opcode/rd/funct3/rs1/rs2/funct7). 1200 checks must all match. Plus a KAT (add x3,x1,x2) and a NEGATIVE CONTROL: a deliberately-wrong rd extractor (shift 8 not 7) MUST mismatch the oracle -> proves the verify has teeth. Mirrors nx_alu_select_mem_test (one source, two sinks). Sovereign. license_tier: ORIGINAL expect_exit: 0

dependencies 2 imports · 0 importers

nx_decoder_select.nx rv64im_min_decoder.nx nx_decoder_fields_mem_test.nx

imports: nx_decoder_select.nxrv64im_min_decoder.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main nx_sink_init_mem nx_decoder_fields_build nx_dec_field nx_sink_const nx_hdl_wire nx_hdl_signal_alloc nx_hdl_kind_is_valid nx_hdl_width_is_valid nx_sink_cell nx_hdl_wire ↻ sys_mmap nx_dec_field ↻ nx_gsim_run nx_gsim_kind_supported nx_gsim_eval_cell nx_rv64im_opcode nx_rv64im_rd nx_rv64im_funct3 nx_rv64im_rs1 nx_rv64im_rs2 nx_rv64im_funct7 _emit_cstr _emit_dec

structs

none

consts

none

functions

11func _emit_cstr(s: *u8) -> i64
called by 1: main
17func _emit_dec(v: i64) -> i64
called by 1: main
31func main() -> i64