`timescale 1ns / 1ps module inst_mem(clka, addra, douta); input clka; input [15:0] addra; output reg[15:0] douta; always @(addra) begin case(addra) 0: douta <= 16'h3042; // LDC R0, 0x42 1: douta <= 16'h3101; // LDC R1, 0x01 2: douta <= 16'h2F01; // ADD R15, R0, R1 3: douta <= 16'hE000; // END default: douta <= 16'h0000; endcase end endmodule