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

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

?? cpu.v

?? RISC(reduced instruction setcomputer
?? V
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
module cpu (
   clk,
   reset,
   
   paddr,
   pdata,
   portain,
   portbout,
   portcout,
   
   expdin,
   expdout,
   expaddr,
   expread,
   expwrite,
   
   debugw,
   debugpc,
   debuginst,
   debugstatus
);

input		clk;
input		reset;

// Program memory interface
output [10:0]	paddr;
input  [11:0]	pdata;

// Basic I/O Ports
input  [7:0]	portain;
output [7:0]	portbout;
output [7:0]	portcout;

// Expansion Interface
input [7:0]	expdin;		
output [7:0]	expdout;	
output [6:0]	expaddr;	
output		expread;	
output		expwrite;	

// Debugging
output [7:0]	debugw;
output [10:0]	debugpc;
output [11:0]	debuginst;
output [7:0]	debugstatus;

// Register 
reg [10:0]	paddr;
reg [7:0]	portbout;
reg [7:0]	portcout;
reg [7:0]	expdout;
reg [6:0]	expaddr;
reg		expread;
reg		expwrite;

parameter RESET_VECTOR = 11'h7FF;

parameter	INDF_ADDRESS	= 3'h0,
		TMR0_ADDRESS	= 3'h1,
		PCL_ADDRESS	= 3'h2,
		STATUS_ADDRESS	= 3'h3,
		FSR_ADDRESS	= 3'h4,
		PORTA_ADDRESS	= 3'h5,
		PORTB_ADDRESS	= 3'h6,
		PORTC_ADDRESS	= 3'h7;

reg  [11:0]	inst;
reg  [10:0]	pc, pc_in;
reg [ 1:0]	stacklevel;
reg [10:0]	stack1;
reg [10:0]	stack2;

reg [ 7:0]	w;
reg [ 7:0]	status;

reg  [ 7:0]	fsr;

reg  [ 7:0]	tmr0;
reg  [ 7:0]	prescaler;

reg [7:0]	option;

reg [7:0]	trisa;
reg [7:0]	trisb;
reg [7:0]	trisc;

reg [7:0]	porta;	
reg [7:0]	portb;	
reg [7:0]	portc;	


reg 		skip; 

wire [ 7:0]	k;
wire [ 4:0]	fsel;
wire		d;
wire [ 2:0]	b;

reg [6:0]	fileaddr;

// Address Selects
reg		specialsel;
reg		regfilesel;
reg		expsel;

// Instruction Decoder Outputs 

wire [1:0]	aluasel;
wire [1:0]	alubsel;
wire [3:0]	aluop;

wire		zwe;
wire		cwe;

wire		isoption;
wire		istris;

wire		fwe;	
wire		wwe;	

// Bit decoder bits.  
reg [7:0]	bd;	
reg [7:0]	bdec;
wire		bdpol;	

reg [7:0]	regfilein;	
wire [7:0]	regfileout;	
reg		regfilewe;	
reg		regfilere;	

reg  [7:0]	dbus;
reg  [7:0]	sbus;


// ALU Signals
reg  [7:0]	alua;
reg  [7:0]	alub;
wire [7:0]	aluout;
wire		alucout;
wire       	aluz;

// ALU A and B mux selects.
parameter [1:0]	ALUASEL_W	= 2'b00,
		ALUASEL_SBUS	= 2'b01,
		ALUASEL_K	= 2'b10,
		ALUASEL_BD	= 2'b11;
		
parameter [1:0]	ALUBSEL_W	= 2'b00,
		ALUBSEL_SBUS	= 2'b01,
		ALUBSEL_K	= 2'b10,
		ALUBSEL_1	= 2'b11;

// ALU Operation codes.
parameter  [3:0] ALUOP_ADD  = 4'b0000;
parameter  [3:0] ALUOP_SUB  = 4'b1000;
parameter  [3:0] ALUOP_AND  = 4'b0001;
parameter  [3:0] ALUOP_OR   = 4'b0010;
parameter  [3:0] ALUOP_XOR  = 4'b0011;
parameter  [3:0] ALUOP_COM  = 4'b0100;
parameter  [3:0] ALUOP_ROR  = 4'b0101;
parameter  [3:0] ALUOP_ROL  = 4'b0110;
parameter  [3:0] ALUOP_SWAP = 4'b0111;


// Instantiate 
regs  regs (
   .clk		(clk), 
   .reset	(reset),
   .we  	(regfilewe),
   .re		(regfilere),
   .bank	(fileaddr[6:5]), 
   .location	(fileaddr[4:0]),
   .din		(regfilein), 
   .dout	(regfileout)
);

// Instatiate the ALU.
alu alu  (
   .op         (aluop), 
   .a          (alua), 
   .b          (alub),
   .y          (aluout),
   .cin        (status[0]), 
   .cout       (alucout), 
   .zout       (aluz)
);

wire		idecwwe;
wire		idecfwe;
wire		ideczwe;
wire		ideccwe;

idec idec (
   .inst     (inst),
   .aluasel  (aluasel),
   .alubsel  (alubsel),
   .aluop    (aluop),
   .wwe      (idecwwe),
   .fwe      (idecfwe),
   .zwe      (ideczwe),
   .cwe      (ideccwe),
   .bdpol    (bdpol),
   .option   (isoption),
   .tris     (istris)
);

assign wwe = idecwwe;
assign fwe = idecfwe;
assign zwe = ideczwe;
assign cwe = ideccwe;

assign	debugw = w;
assign	debugpc = pc;
assign	debuginst = inst;
assign	debugstatus = status;

// REGISTER FILE Address

always @(fsel or fsr or status) begin
   if (fsel == INDF_ADDRESS) begin
          fileaddr = fsr[6:0];
   end
   else begin
          fileaddr = {status[6:5], fsel};
   end
end
 
always @(regfilesel or fwe)
   regfilewe = regfilesel & fwe;
always @(regfilesel or aluasel or alubsel)
   regfilere = regfilesel & ((aluasel == ALUASEL_SBUS) | (alubsel == ALUBSEL_SBUS));

// Address Decodes

always @(fileaddr) begin
   casex (fileaddr) 

      7'bXX00XXX:
         begin
            specialsel	= 1'b1;
            regfilesel	= 1'b0;
            expsel	= 1'b0;
         end
     
      7'b11111XX: 
         begin
            specialsel	= 1'b0;
            regfilesel	= 1'b0;
            expsel	= 1'b1;
         end

      default:
         begin
            specialsel	= 1'b0;
            regfilesel	= 1'b1;
            expsel	= 1'b0;
         end
   endcase
end

// Expansion Interface

always @(dbus)
   expdout = dbus;
   
always @(fileaddr)
   expaddr = fileaddr;

always @(expsel or aluasel or alubsel)
   expread = expsel & ((aluasel == ALUASEL_SBUS) | (alubsel == ALUBSEL_SBUS));

always @(expsel or fwe)
   expwrite = expsel & fwe;

// SBUS 
always @(fsel or fsr or tmr0 or pc or status
         or porta or portb or portc or regfileout or expdin
         or specialsel or regfilesel or expsel) begin

   if (specialsel) begin
      case (fsel[2:0]) 
         3'h0:	sbus = fsr;
         3'h1:	sbus = tmr0;
         3'h2:	sbus = pc[7:0];
         3'h3:	sbus = status;
         3'h4:	sbus = fsr;
         3'h5:	sbus = porta; 
         3'h6:	sbus = portb; 
         3'h7:	sbus = portc;
      endcase
   end
   else begin

      if (expsel) begin
         sbus = expdin;
      end
      else begin
         if (regfilesel) begin
            sbus = regfileout;
         end
         else begin
            sbus = 8'h00;
         end
      end
   end
end
// DBUS
always @(aluout)
   dbus = aluout;

always @(dbus)
   regfilein = dbus;
   
always @(pc_in)
   paddr = pc_in;

assign k =     inst[7:0];
assign fsel  = inst[4:0];
assign d     = inst[5];
assign b     = inst[7:5];

// Bit Decoder
always @(b) begin
   case (b) 
      3'b000: bdec = 8'b00000001;
      3'b001: bdec = 8'b00000010;
      3'b010: bdec = 8'b00000100;
      3'b011: bdec = 8'b00001000;
      3'b100: bdec = 8'b00010000;
      3'b101: bdec = 8'b00100000;
      3'b110: bdec = 8'b01000000;
      3'b111: bdec = 8'b10000000;
   endcase
end

always @(bdec or bdpol)
   bd = (bdpol) ? ~bdec : bdec;

always @(posedge clk) begin
   if (reset) begin
      inst <= 12'h000;
   end
   else begin
      if (skip == 1'b1) begin
         inst <= 12'b000000000000; 
      end

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美大片在线观看一区| 国产人成亚洲第一网站在线播放| 成人午夜激情视频| 欧美视频一区二区三区在线观看| 97超碰欧美中文字幕| 婷婷中文字幕一区三区| 久久99精品久久久久久久久久久久| 国产综合久久久久影院| 99riav久久精品riav| 91精品国产日韩91久久久久久| 久久亚洲一级片| 亚洲精品ww久久久久久p站| 日本欧洲一区二区| 成人精品免费视频| 欧美精品久久一区| 中文字幕的久久| 视频一区欧美日韩| 成人网在线免费视频| 欧美老年两性高潮| 国产亚洲精品久| 亚洲高清三级视频| 国产91综合网| 91精品国产91久久久久久最新毛片 | 岛国精品在线播放| 欧美美女bb生活片| 国产精品麻豆久久久| 日本欧美一区二区| 色婷婷久久久久swag精品| 精品乱人伦一区二区三区| 亚洲综合激情网| 国产乱码精品1区2区3区| 欧美精品一二三| 国产精品灌醉下药二区| 九九九精品视频| 欧美天堂一区二区三区| 中文在线一区二区| 麻豆精品视频在线| 欧美最猛性xxxxx直播| 中文字幕av一区二区三区免费看| 日韩vs国产vs欧美| 一本大道久久a久久精二百 | 激情五月激情综合网| 欧美性猛交xxxxxxxx| 中文字幕日本乱码精品影院| 加勒比av一区二区| 欧美色中文字幕| 欧美国产日韩一二三区| 久久国产麻豆精品| 欧美三级欧美一级| 亚洲理论在线观看| 成人中文字幕合集| 精品黑人一区二区三区久久| 亚洲国产毛片aaaaa无费看| 91免费在线播放| 国产精品乱人伦| 国产精品一区二区无线| 日韩欧美的一区| 天天综合网 天天综合色| 欧美体内she精视频| 中文字幕亚洲成人| 久久夜色精品国产欧美乱极品| 天堂精品中文字幕在线| 91极品美女在线| 综合久久久久久久| 菠萝蜜视频在线观看一区| 国产日韩欧美综合在线| 国产最新精品精品你懂的| 日韩欧美在线观看一区二区三区| 午夜精品一区二区三区电影天堂 | 一区二区三区四区视频精品免费| 成人h动漫精品一区二| 欧美激情在线一区二区三区| 国产一区二区三区综合| 久久精品人人做人人综合 | 国产精品伦理在线| 波多野结衣一区二区三区| 国产精品色在线观看| 成人精品视频一区| 中文字幕在线一区二区三区| 成人黄色免费短视频| 最新日韩av在线| 日本韩国欧美国产| 在线免费观看日本一区| 欧美日韩成人在线| 人妖欧美一区二区| 国产蜜臀97一区二区三区| 色综合天天综合网国产成人综合天 | 成人av在线观| 欧美三级视频在线| 国产精品成人在线观看| 亚洲线精品一区二区三区八戒| 久草这里只有精品视频| 91在线观看美女| 精品久久久久久最新网址| 中文字幕+乱码+中文字幕一区| 欧美电影免费观看高清完整版在| 欧美tickle裸体挠脚心vk| 精品欧美一区二区久久| 精品国产髙清在线看国产毛片 | 91丝袜呻吟高潮美腿白嫩在线观看| 午夜国产不卡在线观看视频| 亚洲大片免费看| 综合欧美亚洲日本| 欧美大片一区二区| 国产一区二区看久久| 成人欧美一区二区三区白人| 欧美中文字幕一二三区视频| 丝袜美腿亚洲色图| 亚洲精品在线电影| 91在线精品一区二区| 亚洲国产精品一区二区尤物区| 日韩一区二区麻豆国产| 成人在线视频一区| 夜夜夜精品看看| 精品久久久久久综合日本欧美| 成人国产精品免费观看动漫| 夜夜揉揉日日人人青青一国产精品| 91精品国产丝袜白色高跟鞋| 丰满亚洲少妇av| 亚洲妇女屁股眼交7| 日韩欧美国产麻豆| 91看片淫黄大片一级在线观看| 日韩福利视频网| 中文字幕在线播放不卡一区| 欧美三级在线播放| 国产麻豆视频一区二区| 亚洲一区在线观看免费观看电影高清 | 欧美蜜桃一区二区三区| 国产一本一道久久香蕉| 亚洲不卡在线观看| 国产精品拍天天在线| 678五月天丁香亚洲综合网| 大美女一区二区三区| 日韩电影免费在线观看网站| 综合欧美一区二区三区| 欧美电影免费提供在线观看| 一本大道av伊人久久综合| 精品影视av免费| 夜夜精品视频一区二区 | 国产欧美日韩在线| 欧美亚一区二区| 国产精品白丝av| 日韩专区在线视频| 亚洲欧洲在线观看av| 欧美成va人片在线观看| 91高清视频免费看| 成人av综合在线| 久久精品国产秦先生| 一个色综合av| 国产精品成人午夜| 久久久午夜电影| 欧美一卡2卡3卡4卡| 在线免费观看日本欧美| 丁香激情综合国产| 国产美女精品一区二区三区| 三级在线观看一区二区| 一区二区三区在线播| 中文字幕av不卡| 久久精品在这里| 欧美成人午夜电影| 欧美日韩高清在线| 色88888久久久久久影院按摩| 懂色av一区二区三区免费看| 黄页视频在线91| 日本不卡视频在线| 三级欧美韩日大片在线看| 亚洲综合久久av| 亚洲精品国产成人久久av盗摄| 国产精品福利一区二区三区| 国产日产欧美一区二区三区 | 国产成人精品免费| 久久国产尿小便嘘嘘尿| 美日韩一区二区三区| 天堂在线一区二区| 亚洲乱码国产乱码精品精98午夜| 中文字幕的久久| 国产精品毛片无遮挡高清| 久久久久9999亚洲精品| 久久久精品国产免大香伊| 欧美成人一级视频| 精品成人一区二区| 精品国产免费一区二区三区四区 | 国产伦精一区二区三区| 蜜臀av一区二区| 蜜桃视频在线观看一区| 青青草国产精品97视觉盛宴| 五月天婷婷综合| 视频一区视频二区中文字幕| 石原莉奈在线亚洲二区| 免费看欧美美女黄的网站| 久久激五月天综合精品| 久久99热狠狠色一区二区| 国产综合色在线| 成人综合婷婷国产精品久久| 99久久精品国产精品久久| av电影天堂一区二区在线观看| 91麻豆高清视频| 欧美巨大另类极品videosbest | 日韩在线一二三区| 免费观看日韩电影|