亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? cpu.v

?? RISC(reduced instruction setcomputer
?? V
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
      else begin
         inst <= pdata;
      end
   end
end

// SKIP signal.
always @(inst or aluz) begin
   casex ({inst, aluz}) 
      13'b10??_????_????_?:    // A GOTO, CALL or RETLW instructions
         skip = 1'b1;
         
      13'b0110_????_????_1:    // BTFSC instruction and aluz == 1
         skip = 1'b1;
	
      13'b0111_????_????_0:    // BTFSS instruction and aluz == 0
         skip = 1'b1;
      
      13'b0010_11??_????_1:    // DECFSZ instruction and aluz == 1
         skip = 1'b1;
	
      13'b0011_11??_????_1:    // INCFSZ instruction and aluz == 1
         skip = 1'b1;
	
      default:
         skip = 1'b0;
   endcase
end

// 4:1 Data MUX into alua
always @(aluasel or w or sbus or k or bd) begin
   case (aluasel) 
      2'b00: alua = w;
      2'b01: alua = sbus;
      2'b10: alua = k;
      2'b11: alua = bd;
   endcase
end

// 4:1 Data MUX into alub
always @(alubsel or w or sbus or k) begin
   case (alubsel) 
      2'b00: alub = w;
      2'b01: alub = sbus;
      2'b10: alub = k;
      2'b11: alub = 8'b00000001;
   endcase
end
// W Register
always @(posedge clk) begin
   if (reset) begin
      w <= 8'h00;
   end
   else begin
      if (wwe) begin
         w <= dbus;
      end
   end   
end

// Writes to various Special Registers 

always @(posedge clk) begin
   if (reset) begin
      tmr0 <= 8'h00;
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == TMR0_ADDRESS)) begin
         tmr0 <= dbus;
      end
      else begin
         if (~option[5]) begin
            casex (option[3:0])  
               4'b1XXX: tmr0 <= tmr0 + 1;
               4'b0000: if (~|(prescaler & 8'b00000001)) tmr0 <= tmr0 + 1;
               4'b0001: if (~|(prescaler & 8'b00000011)) tmr0 <= tmr0 + 1;
               4'b0010: if (~|(prescaler & 8'b00000111)) tmr0 <= tmr0 + 1;
               4'b0011: if (~|(prescaler & 8'b00001111)) tmr0 <= tmr0 + 1;
               4'b0100: if (~|(prescaler & 8'b00011111)) tmr0 <= tmr0 + 1;
               4'b0101: if (~|(prescaler & 8'b00111111)) tmr0 <= tmr0 + 1;
               4'b0110: if (~|(prescaler & 8'b01111111)) tmr0 <= tmr0 + 1;
               4'b0111: if (~|(prescaler & 8'b11111111)) tmr0 <= tmr0 + 1;
            endcase            
         end
      end
   end
end

always @(posedge clk) begin
   if (reset) begin
      prescaler <= 8'h00;
   end
   else begin
      if (~option[5]) begin
         prescaler <= prescaler + 1;
      end
   end
end

// PCL Register (Register #2)
parameter STATUS_RESET_VALUE = 8'h18;

always @(posedge clk) begin
   if (reset) begin
      status <= STATUS_RESET_VALUE;
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == STATUS_ADDRESS)) begin
         status <= dbus;
      end
      else begin
         status <= {
            status[7],
            status[6],
            status[5],
            status[4],	
            status[3],	
            (zwe) ? aluz : status[2],	
                           status[1],			
            (cwe) ? alucout : status[0]	
         };
      end
   end
end
          
always @(posedge clk) begin
   if (reset) begin
      fsr <= 8'h00;
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == FSR_ADDRESS)) begin
         fsr <= dbus;
      end
   end
end

// OPTION Register

parameter OPTION_RESET_VALUE = 8'h3F;
always @(posedge clk) begin
   if (reset) begin
      option <= OPTION_RESET_VALUE;
   end
   else begin
      if (isoption)
         option <= dbus;
   end   
end

// PORTA Input Port   (Register #5)

always @(posedge clk)
   if (reset) porta <= 8'h00;
   else       porta <= portain;

// PORTB Output Port  (Register #6)
always @(posedge clk) begin
   if (reset) begin
      portb <= 8'h00;
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == PORTB_ADDRESS) & ~istris) begin
         portb <= dbus;
      end
   end   
end

// Connect the output ports to the register output.
always @(portb)
   portbout = portb;
   
// PORTC Output Port  (Register #7)
always @(posedge clk) begin
   if (reset) begin
      portc <= 8'h00;
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == PORTC_ADDRESS) & ~istris) begin
         portc <= dbus;
      end
   end   
end

always @(portc)
   portcout = portc;
 
// TRIS Registers
always @(posedge clk) begin
   if (reset) begin
      trisa <= 8'hff; 
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == PORTA_ADDRESS) & istris) begin
         trisa <= dbus;
      end
   end   
end

always @(posedge clk) begin
   if (reset) begin
      trisb <= 8'hff; 
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == PORTB_ADDRESS) & istris) begin
         trisb <= dbus;
      end
   end   
end

always @(posedge clk) begin
   if (reset) begin
      trisc <= 8'hff; 
   end
   else begin
      if (fwe & specialsel & (fileaddr[2:0] == PORTC_ADDRESS) & istris) begin
         trisc <= dbus;
      end
   end   
end
  

// PC AND STACK 

always @(posedge clk)
   if (reset) pc <= RESET_VECTOR;
   else       pc <= pc_in;

always @(inst or stacklevel or status or stack1 or stack2 or pc or dbus) begin
   casex ({inst, stacklevel}) 
      14'b101?_????_????_??: pc_in = {status[6:5],       inst[8:0]};	
      14'b1001_????_????_??: pc_in = {status[6:5], 1'b0, inst[7:0]};	
      14'b1000_????_????_00: pc_in = stack1;			
      14'b1000_????_????_01: pc_in = stack1;	
      14'b1000_????_????_10: pc_in = stack2;
      14'b1000_????_????_11: pc_in = stack2;
      14'b00?0_0010_0010_??: pc_in = {pc[10:8], dbus};	
      default:
         pc_in = pc + 1;
   endcase
end


// Implement STACK1 and STACK2 registers
always @(posedge clk) begin
   if (reset) begin
      stack1 <= 9'h000;
   end
   else begin
      if (inst[11:8] == 4'b1001) begin
         case (stacklevel) 
            2'b00:
                begin
                  stack1 <= pc;
               end
            2'b01:
                begin
                  stack2 <= pc;
               end
            2'b10:
               begin
                  $display ("Too many CALLs!!");
               end
            2'b11: 
               begin
                  $display ("Too many CALLs!!");
               end
         endcase
      end
   end
end

// Write to stacklevel
always @(posedge clk) begin
   if (reset == 1'b1) begin
      stacklevel <= 2'b00;  
   end
   else begin
      casex ({inst, stacklevel}) 
         14'b1001_????_????_00: stacklevel <= 2'b01; 
         14'b1001_????_????_01: stacklevel <= 2'b10; 
         14'b1001_????_????_10: stacklevel <= 2'b10; 
         14'b1001_????_????_11: stacklevel <= 2'b00; 

       
         14'b1000_????_????_00: stacklevel <= 2'b00; 
         14'b1000_????_????_01: stacklevel <= 2'b00; 
         14'b1000_????_????_10: stacklevel <= 2'b01; 
         14'b1000_????_????_11: stacklevel <= 2'b10; 
         default:
            stacklevel <= stacklevel;
      endcase
   end
end

// Debug Stuff 

reg [8*8-1:0] inst_string;

always @(inst) begin
   casex (inst)
      12'b0000_0000_0000: inst_string = "NOP     ";
      12'b0000_001X_XXXX: inst_string = "MOVWF   ";
      12'b0000_0100_0000: inst_string = "CLRW    ";
      12'b0000_011X_XXXX: inst_string = "CLRF    ";
      12'b0000_10XX_XXXX: inst_string = "SUBWF   ";
      12'b0000_11XX_XXXX: inst_string = "DECF    ";
      12'b0001_00XX_XXXX: inst_string = "IORWF   ";
      12'b0001_01XX_XXXX: inst_string = "ANDWF   ";
      12'b0001_10XX_XXXX: inst_string = "XORWF   ";
      12'b0001_11XX_XXXX: inst_string = "ADDWF   ";
      12'b0010_00XX_XXXX: inst_string = "MOVF    ";
      12'b0010_01XX_XXXX: inst_string = "COMF    ";
      12'b0010_10XX_XXXX: inst_string = "INCF    ";
      12'b0010_11XX_XXXX: inst_string = "DECFSZ  ";
      12'b0011_00XX_XXXX: inst_string = "RRF     ";
      12'b0011_01XX_XXXX: inst_string = "RLF     ";
      12'b0011_10XX_XXXX: inst_string = "SWAPF   ";
      12'b0011_11XX_XXXX: inst_string = "INCFSZ  ";

      // *** Bit-Oriented File Register Operations
      12'b0100_XXXX_XXXX: inst_string = "BCF     ";
      12'b0101_XXXX_XXXX: inst_string = "BSF     ";
      12'b0110_XXXX_XXXX: inst_string = "BTFSC   ";
      12'b0111_XXXX_XXXX: inst_string = "BTFSS   ";

      // *** Literal and Control Operations
      12'b0000_0000_0010: inst_string = "OPTION  ";
      12'b0000_0000_0011: inst_string = "SLEEP   ";
      12'b0000_0000_0100: inst_string = "CLRWDT  ";
      12'b0000_0000_0101: inst_string = "TRIS    ";
      12'b0000_0000_0110: inst_string = "TRIS    ";
      12'b0000_0000_0111: inst_string = "TRIS    ";
      12'b1000_XXXX_XXXX: inst_string = "RETLW   ";
      12'b1001_XXXX_XXXX: inst_string = "CALL    ";
      12'b101X_XXXX_XXXX: inst_string = "GOTO    ";
      12'b1100_XXXX_XXXX: inst_string = "MOVLW   ";
      12'b1101_XXXX_XXXX: inst_string = "IORLW   ";
      12'b1110_XXXX_XXXX: inst_string = "ANDLW   ";
      12'b1111_XXXX_XXXX: inst_string = "XORLW   ";

      default:            inst_string = "-XXXXXX-";
   endcase
end

endmodule

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲蜜臀av乱码久久精品| 亚洲自拍另类综合| 亚洲男同性视频| 日韩欧美中文字幕一区| 欧美刺激脚交jootjob| 国产精品久久网站| 午夜久久久影院| 国产乱人伦精品一区二区在线观看| 国产精品综合久久| 色综合久久久久| 精品国产一区二区三区忘忧草 | 亚洲国产精品高清| 一区二区在线观看视频| 久久国产福利国产秒拍| 波多野结衣中文一区| 日韩午夜小视频| 一区二区久久久久久| 国产精品中文欧美| 欧美一区二区三区四区五区 | 午夜精品福利一区二区三区蜜桃| 国产在线播精品第三| 欧洲国内综合视频| 欧美激情一区二区三区不卡| 日本强好片久久久久久aaa| 99久久精品费精品国产一区二区| 精品免费一区二区三区| 精品国产青草久久久久福利| 亚洲激情五月婷婷| 成人免费毛片aaaaa**| 日韩一区和二区| 一区二区三区在线影院| 国产成人亚洲精品青草天美| 91麻豆精品久久久久蜜臀 | 99久久99精品久久久久久| 欧美日韩中文国产| 亚洲男人的天堂在线观看| 国产盗摄一区二区| 久久综合av免费| 日本在线不卡视频一二三区| 欧美视频在线一区二区三区| 国产精品国产三级国产普通话99 | 在线观看国产日韩| 亚洲天堂av一区| 高清不卡一区二区在线| 欧美videos大乳护士334| 视频一区国产视频| 欧美久久久久久蜜桃| 亚洲午夜在线电影| 欧美日韩国产在线播放网站| 亚洲制服丝袜在线| 欧美在线免费视屏| 亚洲国产一区二区在线播放| 欧美自拍偷拍午夜视频| 一区二区三区日韩| 欧美在线观看视频一区二区三区| 一区二区在线观看不卡| 91国产福利在线| 中文字幕一区二区三区视频| 成人一二三区视频| 国产精品理论片| 91蜜桃在线观看| 亚洲激情校园春色| 欧美狂野另类xxxxoooo| 日韩高清不卡一区| 日韩欧美一级精品久久| 六月婷婷色综合| 日韩三级伦理片妻子的秘密按摩| 免费在线看一区| 国产欧美久久久精品影院| 国产a视频精品免费观看| 欧美极品少妇xxxxⅹ高跟鞋| 91亚洲大成网污www| 国产亚洲精品bt天堂精选| 91美女片黄在线观看91美女| 亚洲精品视频在线看| 日韩一区二区精品| 国产91在线观看| 一区二区三区精品视频| 欧美一区二区三区在线观看| 国产精品自产自拍| 日韩理论片在线| 91精品国产免费| 床上的激情91.| 午夜精品福利久久久| 日韩情涩欧美日韩视频| 极品瑜伽女神91| 亚洲精品亚洲人成人网| 在线观看一区二区视频| 免费三级欧美电影| 中文字幕在线一区二区三区| 欧美女孩性生活视频| 国产乱子伦一区二区三区国色天香| 国产精品久久久久精k8| 欧美另类一区二区三区| 美女性感视频久久| 亚洲免费观看在线视频| 精品国精品国产| 欧美性猛交xxxx乱大交退制版| 国产一区二区三区在线观看精品 | 日韩一区二区三区在线视频| 成人综合在线网站| 免费看欧美女人艹b| 亚洲欧美二区三区| 久久久九九九九| 日韩一级精品视频在线观看| 99re这里只有精品6| 久久国产精品72免费观看| 国产精品久久久久天堂| 欧美一级夜夜爽| 欧美在线一二三| 91视频免费看| 高潮精品一区videoshd| 看片网站欧美日韩| 午夜精品久久久久久久久久| 中日韩免费视频中文字幕| 亚洲精品一区二区三区影院| 4438成人网| 日本丰满少妇一区二区三区| 国内精品久久久久影院色| 人人超碰91尤物精品国产| 亚洲自拍欧美精品| 亚洲精品第1页| 国产精品免费免费| 国产午夜一区二区三区| 欧美精品一区二区三区久久久| 欧美精品少妇一区二区三区| 成人看片黄a免费看在线| 国产一区二区按摩在线观看| 蜜桃精品视频在线观看| 一区二区三区日本| 亚洲嫩草精品久久| 一区二区在线观看视频| 亚洲乱码国产乱码精品精小说| 国产精品久久毛片a| 国产色一区二区| 国产欧美一区在线| 欧美精品一区二区高清在线观看| 欧美一区二区视频免费观看| 欧美一区二区私人影院日本| 91精品久久久久久蜜臀| 欧美一级片免费看| 日韩免费一区二区| 久久久久国产精品人| 国产亚洲综合性久久久影院| 欧美一区二区久久| 精品国产一区a| 亚洲精品国产无套在线观| 视频一区二区三区入口| 国产高清精品久久久久| 在线亚洲一区二区| 欧美精品一区二区三区视频| 亚洲桃色在线一区| 久久精品国产在热久久| 99久久精品久久久久久清纯| 日韩一级精品视频在线观看| 中文字幕中文字幕一区| 日韩和欧美一区二区| 成人中文字幕在线| 91精品国产一区二区人妖| 国产精品乱子久久久久| 六月婷婷色综合| 欧美在线免费观看亚洲| 日本一区二区三区dvd视频在线| 亚洲成av人片观看| 国产成人在线视频免费播放| 在线成人午夜影院| 综合婷婷亚洲小说| 国产黄人亚洲片| 日韩免费观看高清完整版| 亚洲精品高清在线| av成人老司机| 国产日韩欧美a| 久久国产精品第一页| 欧美久久高跟鞋激| 亚洲一区二区三区视频在线| 成人一区在线看| 久久久午夜精品| 激情综合网最新| 欧美一区二区三区啪啪| 亚洲一区二区三区四区的 | 欧美日韩日本视频| 亚洲精品国产精品乱码不99| 国产·精品毛片| 久久午夜老司机| 麻豆91免费看| 日韩三级免费观看| 免费成人你懂的| 制服视频三区第一页精品| 香蕉加勒比综合久久| 在线观看一区日韩| 一区二区三区产品免费精品久久75| 成人黄色电影在线| 2020国产精品自拍| 国产最新精品精品你懂的| 日韩精品一区二区在线观看| 视频一区二区国产| 欧美一区二区三区免费视频| 水野朝阳av一区二区三区| 欧美日韩亚洲综合| 一区二区三区中文免费|