// Testbench for person detector `timescale 1ns/1ps module tb_person; parameter FEAT_DIM = 768; parameter BIT_WIDTH = 8; parameter ACC_WIDTH = 24; reg signed [BIT_WIDTH-1:0] features [0:FEAT_DIM-1]; wire signed [ACC_WIDTH-1:0] person_score; wire signed [ACC_WIDTH-1:0] box_ltrb [0:3]; wire signed [ACC_WIDTH-1:0] centerness; wire detection; person_detector #( .FEAT_DIM(FEAT_DIM), .BIT_WIDTH(BIT_WIDTH), .ACC_WIDTH(ACC_WIDTH) ) dut ( .features(features), .person_score(person_score), .box_ltrb(box_ltrb), .centerness(centerness), .detection(detection) ); initial begin $readmemh("rom/test_features.hex", features); #10; $display("=== Person Detector Circuit Output ==="); $display("Person score: %0d", person_score); $display("Detection: %0b", detection); $display("Box L: %0d", box_ltrb[0]); $display("Box T: %0d", box_ltrb[1]); $display("Box R: %0d", box_ltrb[2]); $display("Box B: %0d", box_ltrb[3]); $display("Centerness: %0d", centerness); $finish; end endmodule