`include "macro.sv" module bfm_top( ); logic bfm_l_clk; logic bfm_l_rst_b; logic bfm_l_next_instr; logic [`WIDTH_CISC_OPCODE-1:0] bfm_l_opcode; logic [`WIDTH_CISC_MODRM-1:0] bfm_l_modrm; logic [`WIDTH_WORD-1:0] bfm_l_immediate; logic [`WIDTH_WORD-1:0] bfm_l_displacement; academic_x86_subcore dut (.sub86_i_rst_b(bfm_l_rst_b), .sub86_i_clk(bfm_l_clk), .sub86_i_opcode(bfm_l_opcode), .sub86_i_modrm(bfm_l_modrm), .sub86_i_displacement(bfm_l_displacement), .sub86_i_immediate(bfm_l_immediate), .sub86_o_fetch_next_instr(bfm_l_next_instr)); bfm_server bfm_server (.bfm_svr_o_clk(bfm_l_clk), .bfm_svr_o_rst_b(bfm_l_rst_b), .bfm_svr_o_opcode(bfm_l_opcode), .bfm_svr_o_modrm(bfm_l_modrm), .bfm_svr_o_immediate(bfm_l_immediate), .bfm_svr_o_displacement(bfm_l_displacement), .bfm_svr_i_next_instr(bfm_l_next_instr)); bfm_client bfm_client ( ); bfm_verifier bfm_ver ( ); bfm_task bfm_task ( ); endmodule