oc8051_decoder.v

来自「verilog code,about oc8051」· Verilog 代码 · 共 1,832 行 · 第 1/5 页

V
1,832 行
字号
          `OC8051_DJNZ_D : begin              ram_rd_sel = `OC8051_RRS_DC;              pc_wr = `OC8051_PCW_N;              pc_sel = `OC8051_PIS_DC;            end          `OC8051_RET : begin              ram_rd_sel = `OC8051_RRS_SP;              pc_wr = `OC8051_PCW_Y;              pc_sel = `OC8051_PIS_AH;            end          `OC8051_RETI : begin              ram_rd_sel = `OC8051_RRS_SP;              pc_wr = `OC8051_PCW_Y;              pc_sel = `OC8051_PIS_AH;            end          `OC8051_DIV : begin              ram_rd_sel = `OC8051_RRS_B;              pc_wr = `OC8051_PCW_N;              pc_sel = `OC8051_PIS_DC;            end          `OC8051_MUL : begin              ram_rd_sel = `OC8051_RRS_B;              pc_wr = `OC8051_PCW_N;              pc_sel = `OC8051_PIS_DC;            end         default begin              ram_rd_sel = `OC8051_RRS_DC;              pc_wr = `OC8051_PCW_N;              pc_sel = `OC8051_PIS_DC;          end        endcase        comp_sel =  `OC8051_CSS_DC;        rmw = `OC8051_RMW_N;        stb_i = 1'b1;        bit_addr = 1'b0;      end      2'b00: begin        casex (op_cur) /* synopsys parallel_case */          `OC8051_ACALL :begin              ram_rd_sel = `OC8051_RRS_DC;              pc_wr = `OC8051_PCW_Y;              pc_sel = `OC8051_PIS_I11;              comp_sel =  `OC8051_CSS_DC;              rmw = `OC8051_RMW_N;              stb_i = 1'b0;              bit_addr = 1'b0;            end          `OC8051_AJMP : begin              ram_rd_sel = `OC8051_RRS_DC;              pc_wr = `OC8051_PCW_Y;              pc_sel = `OC8051_PIS_I11;              comp_sel =  `OC8051_CSS_DC;              rmw = `OC8051_RMW_N;              stb_i = 1'b0;              bit_addr = 1'b0;            end          `OC8051_ADD_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_ADDC_R : begin             ram_rd_sel = `OC8051_RRS_RN;              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_ANL_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_CJNE_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_DEC_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_DJNZ_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_MOV_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_DR : 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_RD : begin              ram_rd_sel = `OC8051_RRS_RN;              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_ORL_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_SUBB_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_XCH_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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_XRL_R : begin              ram_rd_sel = `OC8051_RRS_RN;              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        //op_code [7:1]          `OC8051_ADD_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_ADDC_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_ANL_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_CJNE_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_DEC_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_MOV_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_ID : begin              ram_rd_sel = `OC8051_RRS_I;              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_DI : 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_MOVX_IA : 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_AI :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_ORL_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_SUBB_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_XCH_I : begin              ram_rd_sel = `OC8051_RRS_I;              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_XCHD :begin              ram_rd_sel = `OC8051_RRS_I;              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_XRL_I : begin              ram_rd_sel = `OC8051_RRS_I;              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        //op_code [7:0]          `OC8051_ADD_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_ADDC_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_ANL_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_ANL_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_Y;              stb_i = 1'b1;              bit_addr = 1'b0;            end          `OC8051_ANL_DD : begin

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?