📄 encode.v.bak
字号:
w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end 12'b1101_????_????://IORLW begin choice<=5'b01111; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end 12'b1111_????_????://XORLW begin choice<=5'b10000; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end 12'b0010_01??_????://COMF begin if(encode[5]==0) begin choice<=5'b10001; sel_imm<=1'b1; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end else if(encode[5]==1) begin choice<=5'b10001; sel_imm<=1'b1; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b0; end end 12'b0100_????_????://BCF begin choice<=5'b10010; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b1; ir_jump<=1'b0; end 12'b0101_????_????://BSF begin choice<=5'b10011; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b1; ir_jump<=1'b0; end 12'b0000_11??_????://DECF begin if(encode[5]==0) begin choice<=5'b10100; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end else if(encode[5]==1) begin choice<=5'b10100; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b0; end end 12'b0010_10??_????://INCF begin if(encode[5]==0) begin choice<=5'b10101; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end else if(encode[5]==1) begin choice<=5'b10101; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b0; end end 12'b0010_11??_????://DECFSZ begin if(encode[5]==0&&alu_z==0) begin choice<=5'b10110; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end else if(encode[5]==0&&alu_z==1) begin choice<=5'b10110; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b1; end else if(encode[5]==1&&alu_z==0) begin choice<=5'b10110; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b0; end else if(encode[5]==1&&alu_z==1) begin choice<=5'b10110; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b1; end end 12'b0011_11??_????://INCFSZ begin if(encode[5]==0&&alu_z==0) begin choice<=5'b10111; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end else if(encode[5]==0&&alu_z==1) begin choice<=5'b10111; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b1; end else if(encode[5]==1&&alu_z==1) begin choice<=5'b10111; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b1; end else if(encode[5]==1&&alu_z==0) begin choice<=5'b10111; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b0; end end 12'b0110_????_????://BTFSC begin if(alu_bitz==0) begin choice<=5'b11000; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b1; end else if(alu_bitz==1) begin choice<=5'b11000; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end end 12'b0111_????_????://BTFSS begin if(alu_bitz==0) begin choice<=5'b11001; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end else if(alu_bitz==1) begin choice<=5'b11001; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b1; end end 12'b1001_????_????://CALL begin choice<=5'b11010; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b1; load_pc_call<=1'b1; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end 12'b1000_????_????://RETLW begin choice<=5'b11011; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b1; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b1; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end 12'b101?_????_????://GOTO begin choice<=5'b11100; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b1; load_pc_call<=1'b0; load_pc_goto<=1'b1; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end 12'b0000_0000_0???://TRIS begin choice<=5'b11101; sel_imm<=1'b0; w_ena<=1'b1; sel_wd<=1'b0; load_pc<=1'b0; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b1; r_reg<=1'b0; ir_jump<=1'b0; end default : begin choice<=5'bxxxxx; sel_imm<=1'b0; w_ena<=1'b0; sel_wd<=1'b0; load_pc<=1'b1; load_pc_call<=1'b0; load_pc_goto<=1'b0; load_pc_retlw<=1'b0; w_reg<=1'b0; r_reg<=1'b0; ir_jump<=1'b0; end endcaseendendtaskendmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -