📄 oc8051_decoder.v
字号:
ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_ANL_DC : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_ANL_B : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_ANL_NB : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_CJNE_D : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_CJNE_C : begin ram_rd_sel = `OC8051_RRS_DC; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_CLR_B : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_CPL_B : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_DEC_D : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_DIV : begin ram_rd_sel = `OC8051_RRS_B; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_DJNZ_D : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_INC_D : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_INC_DP : begin ram_rd_sel = `OC8051_RRS_DPTR; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_JB : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_SO2; comp_sel = `OC8051_CSS_BIT; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b1; end `OC8051_JBC : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_BIT; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b1; end/* `OC8051_JC : begin ram_rd_sel = `OC8051_RRS_PSW; pc_wr = eq; pc_sel = `OC8051_PIS_SO1; comp_sel = `OC8051_CSS_CY; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end*/ `OC8051_JMP_D : begin ram_rd_sel = `OC8051_RRS_DPTR; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_JNB : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_SO2; comp_sel = `OC8051_CSS_BIT; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b1; end/* `OC8051_JNC : begin ram_rd_sel = `OC8051_RRS_PSW; pc_wr = !eq; pc_sel = `OC8051_PIS_SO1; comp_sel = `OC8051_CSS_CY; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_JNZ : begin ram_rd_sel = `OC8051_RRS_ACC; pc_wr = !eq; pc_sel = `OC8051_PIS_SO1; comp_sel = `OC8051_CSS_AZ; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_JZ : begin ram_rd_sel = `OC8051_RRS_ACC; pc_wr = eq; pc_sel = `OC8051_PIS_SO1; comp_sel = `OC8051_CSS_AZ; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end*/ `OC8051_LCALL :begin ram_rd_sel = `OC8051_RRS_DC; pc_wr = `OC8051_PCW_Y; pc_sel = `OC8051_PIS_I16; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_LJMP : begin ram_rd_sel = `OC8051_RRS_DC; pc_wr = `OC8051_PCW_Y; pc_sel = `OC8051_PIS_I16; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_MOV_D : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_MOV_DD : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_MOV_BC : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_MOV_CB : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_MOVC_DP :begin ram_rd_sel = `OC8051_RRS_DPTR; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_MOVC_PC : begin ram_rd_sel = `OC8051_RRS_DC; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_MOVX_PA : begin ram_rd_sel = `OC8051_RRS_DC; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_MOVX_AP : begin ram_rd_sel = `OC8051_RRS_DC; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_MUL : begin ram_rd_sel = `OC8051_RRS_B; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_ORL_D : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_ORL_AD : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_ORL_CD : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_ORL_B : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_ORL_NB : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_Y; stb_i = 1'b1; bit_addr = 1'b1; end `OC8051_POP : begin ram_rd_sel = `OC8051_RRS_SP; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_PUSH : begin ram_rd_sel = `OC8051_RRS_D; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b1; bit_addr = 1'b0; end `OC8051_RET : begin ram_rd_sel = `OC8051_RRS_SP; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0; bit_addr = 1'b0; end `OC8051_RETI : begin ram_rd_sel = `OC8051_RRS_SP; pc_wr = `OC8051_PCW_N; pc_sel = `OC8051_PIS_DC; comp_sel = `OC8051_CSS_DC; rmw = `OC8051_RMW_N; stb_i = 1'b0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -