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

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

?? paula.v

?? Verilog, c and asm source codes of the Minimig system, a fpga implementation of the Amiga computer.
?? V
?? 第 1 頁 / 共 2 頁
字號:
			intena[14:0]<=intena[14:0]|datain[14:0];		else			intena[14:0]<=intena[14:0]&(~datain[14:0]);		end//intenar registeralways @(regaddress or intena)	if(regaddress[8:1]==INTENAR[8:1])		intenar[15:0]={1'b0,intena[14:0]};	else		intenar=0;//intreqr registeralways @(regaddress or intreq)	if(regaddress[8:1]==INTREQR[8:1])		intreqr[15:0]={2'b00,intreq[13:0]};	else		intreqr=0;// control all interrupts, intterupts are registered at the rising edge of clkreg [13:0]tmp;always @(regaddress or datain or intreq)	//check if we are addressed and some bits must change	//(generate mask tmp[13:0])	if(regaddress[8:1]==INTREQ[8:1])	begin		if(datain[15])			tmp[13:0]=intreq[13:0]|datain[13:0];		else			tmp[13:0]=intreq[13:0]&(~datain[13:0]);	 	end	else		tmp[13:0]=intreq[13:0];always @(posedge clk)begin	if(reset)//synchronous reset		intreq<=0;	else 	begin		//transmit buffer empty interrupt		intreq[0]<=tmp[0]|txint;		//diskblock finished		intreq[1]<=tmp[1]|blckint;		//software interrupt		intreq[2]<=tmp[2];		//I/O ports and timers		intreq[3]<=tmp[3]|int2;		//Copper		intreq[4]<=tmp[4];		//start of vertical blank		intreq[5]<=tmp[5]|sof;		//blitter finished		intreq[6]<=tmp[6]|int3;		//audio channel 0		intreq[7]<=tmp[7]|audint[0];		//audio channel 1		intreq[8]<=tmp[8]|audint[1];		//audio channel 2		intreq[9]<=tmp[9]|audint[2];		//audio channel 3		intreq[10]<=tmp[10]|audint[3];		//serial port receive interrupt		intreq[11]<=tmp[11]|rxint;		//disk sync register matches disk data		intreq[12]<=tmp[12]|syncint;		//external interrupt		intreq[13]<=tmp[13]|int6;	endend						  //create m68k interrupt request signalsreg	[13:0]intreqena;always @(intena or intreq)begin	//and int enable and request signals together	if(intena[14])		intreqena[13:0]=intreq[13:0]&intena[13:0];	else		intreqena[13:0]=14'b00000000000000;	end//interrupt priority encoderalways @(posedge clk)begin	casez(intreqena[13:0])		14'b1????????????? : _ipl<=1;		14'b01???????????? : _ipl<=2;		14'b001??????????? : _ipl<=2;		14'b0001?????????? : _ipl<=3;		14'b00001????????? : _ipl<=3;		14'b000001???????? : _ipl<=3;		14'b0000001??????? : _ipl<=3;		14'b00000001?????? : _ipl<=4;		14'b000000001????? : _ipl<=4;		14'b0000000001???? : _ipl<=4;		14'b00000000001??? : _ipl<=5;		14'b000000000001?? : _ipl<=6;		14'b0000000000001? : _ipl<=6;		14'b00000000000001 : _ipl<=6;		14'b00000000000000 : _ipl<=7;		default:			 _ipl<=7;	endcaseendendmodule//--------------------------------------------------------------------------------------//--------------------------------------------------------------------------------------//--------------------------------------------------------------------------------------//Simplified uart//NOTES://not supported are 9 databits mode and overrun detection for the receiver//also the behaviour of tsre is not completely according to the amiga hardware//reference manual, it should work thoughmodule uart(clk,reset,regaddress,datain,dataout,rbfmirror,rxint,txint,rxd,txd);input 	clk;		    			//bus clockinput 	reset;			   	//reset input 	[8:1] regaddress;		//register address inputsinput	[14:0]datain;			//bus data inoutput	[15:0]dataout;			//bus data outinput	rbfmirror;			//rbf mirror from interrupt controlleroutput 	txint;				//transmitter intterruptoutput 	rxint;				//receiver intteruptoutput 	txd;					//serial port transmitted datainput 	rxd;					//serial port received data//register names and addressesparameter	SERDAT=9'h030;		parameter	SERDATR=9'h018;parameter	SERPER=9'h032;//local signal for txreg		[14:0]serper;			//period (baud rate) registerreg		[15:0]txdiv;			//transmitter baud rate dividerreg		[10:0]serdat;			//serdat registerreg		[11:0]txshift;			//transmit shifterreg		[1:0]txstate;			//transmitter statereg		[1:0]txnextstate;		//next transmitter statewire		txbaud;				//transmitter baud clockreg 		txload;				//load transmit shifterreg		tsre;				//transmit shift register emptyreg		tbe;					//transmit buffer emptyreg		txint;				//see above//local signals for rxreg		[15:0]rxdiv;			//receiver baud rate dividerreg		[9:0]rxshift;			//receiver shift registerreg		[7:0]rxdat;			//received data bufferreg		[1:0]rxstate;			//receiver statereg		[1:0]rxnextstate;		//next receiver statewire		rxbaud;				//receiver baud clockreg		rxpreset;				//preset receiver baud clock	reg		lrxd1;				//latched rxd signalreg		lrxd2;				//latched rxd signalreg		rxint;				//see abovereg		[15:0]dataout;			//see above//serper registeralways @(posedge clk)	if(regaddress[8:1]==SERPER[8:1])		serper[14:0]<=datain[14:0];		//tx baudrate generatoralways @(posedge clk)	if(txbaud)		txdiv[15:0]<={serper[14:0],1'b0};//serper shifted right because of 7.09MHz clock	else		txdiv<=txdiv-1;assign txbaud=(txdiv==0)?1:0;//txd shifteralways @(posedge clk)	if(reset)		txshift[11:0]<=12'b000000000001;		else if(txload && txbaud)		txshift[11:0]<={serdat[10:0],1'b0};	else if(!tsre && txbaud)		txshift[11:0]<={1'b0,txshift[11:1]};assign txd=txshift[0];//generate tsre signalalways @(txshift[11:0])	if(txshift[11:0]==12'b000000000001)		tsre=1;	else		tsre=0;//serdat registeralways @(posedge clk)	if(regaddress[8:1]==SERDAT[8:1])		serdat[10:0]<=datain[10:0];//transmitter state machinealways @(posedge clk)	if(reset)		txstate<=2'b00;	else		txstate<=txnextstate;always @(txstate or tsre or regaddress)begin	case(txstate)		2'b00://wait for new data and go to next state if serdat is loaded			begin			txint=0;			txload=0;			tbe=1; 			if(regaddress[8:1]==SERDAT[8:1])				txnextstate=2'b01;			else				txnextstate=2'b00;			end		2'b01://wait for shift register to become empty (tsre goes high)			begin			txint=0;			txload=0;			tbe=0;			if(tsre)				txnextstate=2'b10;			else				txnextstate=2'b01;			end		2'b10://wait for shift register to read serdat (tsre goes low)			begin			txint=0;			txload=1;			tbe=0;			if(!tsre)				txnextstate=2'b11;			else				txnextstate=2'b10;			end		2'b11://serdat is now empty again, generate interupt			begin			txint=1;			txload=0;			tbe=0;			txnextstate=2'b00;			end	endcase			end//rx baud rate generatoralways @(posedge clk)	if(rxpreset)		rxdiv[15:0]<={1'b0,serper[14:0]};	else if(rxbaud)		rxdiv[15:0]<={serper[14:0],1'b0};//serper shifted right because of 7.09MHz clock	else		rxdiv<=rxdiv-1;assign rxbaud=(rxdiv==0)?1:0;//rxd input synchronizer latchalways @(posedge clk)begin	lrxd1<=rxd;	lrxd2<=lrxd1;end//receiver shift registeralways @(posedge clk)	if(rxpreset)		rxshift[9:0]<=10'b1111111111;	else if(rxbaud)		rxshift[9:0]<={lrxd2,rxshift[9:1]};		//receiver bufferalways @(posedge clk)	if(rxint)		rxdat[7:0]<=rxshift[8:1];//receiver state machinealways @(posedge clk)	if(reset)		rxstate<=2'b00;	else		rxstate<=rxnextstate;always @(rxstate or lrxd2 or rxshift[0])begin	case(rxstate)		2'b00://wait for startbit			begin			rxint=0;			rxpreset=1;			if(!lrxd2)				rxnextstate=2'b01;			else				rxnextstate=2'b00;			end		2'b01://shift in 10 bits (start, 8 data, stop)			begin			rxint=0;			rxpreset=0;			if(!rxshift[0])				rxnextstate=2'b10;			else				rxnextstate=2'b01;			end		2'b10,2'b11://new byte has been received, latch byte and request interrupt			begin			rxint=1;			rxpreset=0;			rxnextstate=2'b00;			end	endcaseend	//serdatr registeralways @(regaddress or rbfmirror or tbe or tsre or lrxd2 or rxdat)	if(regaddress[8:1]==SERDATR[8:1])		dataout[15:0]={1'b0,rbfmirror,tbe,tsre,lrxd2,3'b001,rxdat[7:0]};	else		dataout[15:0]=0;endmodule

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久看| 日韩精品一区二区三区视频在线观看 | 色综合天天综合网国产成人综合天| 日韩精品一区二区三区视频 | 免费亚洲电影在线| 日韩三级视频在线观看| 男女性色大片免费观看一区二区| 欧美日韩中字一区| 奇米影视在线99精品| 欧美一区二区免费| 久草这里只有精品视频| 26uuu久久综合| 成人免费精品视频| 一区二区三区日韩欧美精品| 欧美性猛片aaaaaaa做受| 日韩专区在线视频| 久久综合色综合88| 9l国产精品久久久久麻豆| 亚洲精品成人在线| 91精品国产一区二区三区| 毛片不卡一区二区| 欧美国产综合色视频| 色婷婷综合久久久中文字幕| 午夜不卡av免费| 欧美成人三级电影在线| 成人一区二区三区在线观看| 亚洲精品乱码久久久久久| 欧美久久久久久久久久| 国产一区二区免费在线| 亚洲视频 欧洲视频| 在线播放欧美女士性生活| 国产一区二区精品在线观看| 亚洲日本乱码在线观看| 日韩午夜精品电影| 成人av电影免费在线播放| 午夜精品福利一区二区三区av | 欧美三级蜜桃2在线观看| 麻豆成人免费电影| 亚洲三级理论片| 精品成人在线观看| 欧美亚洲图片小说| 成人午夜视频在线观看| 日产国产欧美视频一区精品| 日本一区二区高清| 欧美mv日韩mv| 欧美午夜影院一区| 成人黄色电影在线| 精品亚洲欧美一区| 午夜精品一区二区三区免费视频 | 91黄色在线观看| 韩国女主播一区| 亚洲国产成人高清精品| 国产欧美精品在线观看| 6080亚洲精品一区二区| 成人精品亚洲人成在线| 老司机免费视频一区二区| 亚洲麻豆国产自偷在线| 久久久综合视频| 欧美一区二区三区精品| 91官网在线免费观看| 成人午夜av在线| 国产一区二区成人久久免费影院| 五月天激情小说综合| 亚洲免费观看高清完整版在线观看熊 | 欧美福利视频一区| 欧美在线一区二区| 91视频你懂的| 99国产精品久久久久久久久久久 | 不卡在线观看av| 国产不卡在线播放| 韩国成人精品a∨在线观看| 视频一区视频二区中文字幕| 一区二区在线免费观看| 亚洲欧美色图小说| 亚洲视频在线观看三级| 亚洲人成精品久久久久久| 国产精品卡一卡二| 国产精品久久久久永久免费观看| 久久综合给合久久狠狠狠97色69| 日韩一区二区在线观看视频 | 欧美一二三四区在线| 制服.丝袜.亚洲.中文.综合| 欧美午夜理伦三级在线观看| 在线免费观看视频一区| 欧洲视频一区二区| 欧美精品久久久久久久久老牛影院| 欧美三级资源在线| 欧美精品第1页| 日韩精品在线一区二区| 精品久久久久久久久久久久久久久 | 麻豆视频一区二区| 麻豆久久久久久| 国内久久精品视频| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 国产精品理论片| 一区二区三区.www| 香蕉久久一区二区不卡无毒影院| 丝袜美腿亚洲综合| 国模无码大尺度一区二区三区| 激情伊人五月天久久综合| 日韩一区二区三区电影在线观看| 欧美日韩高清在线播放| 欧美一区日本一区韩国一区| 欧美zozo另类异族| 欧美高清一级片在线观看| 一区二区三区在线免费播放 | 国产精品久久久久久久第一福利| 最新国产精品久久精品| 亚洲激情图片一区| 青青草国产成人av片免费| 国产精品中文字幕欧美| 99久久国产综合精品色伊| 欧美日韩国产首页在线观看| 精品噜噜噜噜久久久久久久久试看 | 亚洲一区二区三区自拍| 日本不卡视频在线观看| 国产99久久精品| 日本高清不卡在线观看| 日韩视频永久免费| 国产精品不卡一区| 日本欧美一区二区| 成人高清av在线| 欧美日本国产一区| 国产精品拍天天在线| 亚洲专区一二三| 国产精品一区二区久久精品爱涩| 色老综合老女人久久久| 精品国产一区久久| 亚洲另类春色国产| 精品一区二区三区在线观看| 不卡的看片网站| 日韩精品一区二区在线观看| 亚洲啪啪综合av一区二区三区| 男男成人高潮片免费网站| 不卡的av网站| 日韩美一区二区三区| 亚洲精品免费电影| 国产成人精品1024| 欧美精品三级日韩久久| 成人免费在线视频| 韩国午夜理伦三级不卡影院| 欧美熟乱第一页| 国产精品家庭影院| 美国毛片一区二区| 欧美日韩国产乱码电影| 国产精品进线69影院| 国产经典欧美精品| 欧美一级高清大全免费观看| 亚洲自拍偷拍网站| 91免费国产在线| 中文字幕不卡一区| 国内精品伊人久久久久av一坑| 欧美日韩一区二区三区在线| 最新国产成人在线观看| 国产成人精品免费视频网站| 精品国产91九色蝌蚪| 三级欧美在线一区| 在线观看成人免费视频| 1区2区3区国产精品| 成人中文字幕合集| 久久久久久久久蜜桃| 韩国精品久久久| wwwwxxxxx欧美| 精品一区二区三区av| 精品少妇一区二区三区| 日韩 欧美一区二区三区| 欧美日韩亚洲高清一区二区| 亚洲一区二区免费视频| 91黄色免费版| 色94色欧美sute亚洲13| 成人免费一区二区三区视频 | 91在线免费视频观看| 国产精品另类一区| 福利一区二区在线| 国产精品久久久久永久免费观看| 久久国产三级精品| 精品福利一区二区三区| 国产一区二三区好的| 久久久高清一区二区三区| 韩国三级电影一区二区| 国产婷婷色一区二区三区四区| 国产黄色精品网站| 中文字幕欧美日本乱码一线二线 | 一区二区三区四区国产精品| 91社区在线播放| 亚洲曰韩产成在线| 91.麻豆视频| 捆绑调教一区二区三区| 久久日韩粉嫩一区二区三区| 国产传媒一区在线| 国产精品成人免费精品自在线观看| 99久久综合色| 亚洲小少妇裸体bbw| 欧美一级精品在线| 国产成人免费视频网站高清观看视频| 国产精品福利一区| 欧美三级资源在线| 国内精品自线一区二区三区视频| 国产三级欧美三级| 色八戒一区二区三区|