code wiki / _hdl_build / nx_cpu_rtype_exec_test.nx

nx_cpu_rtype_exec_test.nx

buildroot/runtime/_hdl_build/nx_cpu_rtype_exec_test.nx

6556 B143 linesdepth 10pulls 26 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_cpu_rtype_exec_test.nx -- TOP-LEVEL COMPOSITION capstone: a full R-type decode->execute datapath, composed from the three proven gate-emit modules in ONE gate-sim graph: inst -> [decoder fields] -> funct3/funct7 -> [R-type control] -> alu_op (rs1_val, rs2_val, alu_op) -> [ALU build_select, divider-backed] -> result Verifies the composed netlist against the behavioral chain decode_kind -> sim_alu_select -> nx_rv64im_alu_compute over funct3 0..7 x funct7 {0,1,0x20} x random nonzero operands. Proves the decoder + control + ALU COMPOSE into a working R-type execute datapath at the GATE level -- the integration milestone toward emitting the whole CPU. Sovereign, no-float. license_tier: ORIGINAL expect_exit: 0

dependencies 5 imports · 0 importers

nx_decoder_select.nx nx_rtype_control.nx nx_alu_select.nx rv64im_min_sim.nx rv64im_min_alu.nx nx_cpu_rtype_exec_test.nx

imports: nx_decoder_select.nxnx_rtype_control.nxnx_alu_select.nxrv64im_min_sim.nxrv64im_min_alu.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_rtype_op_aluop_build _rc_eq nx_sink_const ↻ nx_sink_cell ↻ _rc_mux nx_sink_cell ↻ _rc_c nx_sink_const ↻ nx_alu_build_select nx_sink_const ↻ nx_div_synth_sink nx_sink_const ↻ nx_sink_cell ↻ nx_alu_mulh_sink nx_mul_wide_sink nx_sink_const ↻ nx_sink_cell ↻ nx_sink_const ↻ nx_sink_cell ↻ nx_wdiv_u_sink nx_sink_const ↻ nx_sink_cell ↻ nx_div_synth_sink ↻ nx_sext32_sink nx_sink_const ↻ nx_sink_cell ↻ nx_wdiv_s_sink nx_sink_const ↻

structs

none

consts

none

functions

16func _emit_cstr(s: *u8) -> i64
called by 1: main
22func _emit_dec(v: i64) -> i64
called by 1: main
36func main() -> i64