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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? usienrzo.v

?? 實現USB接口功能的VHDL和verilog完整源代碼
?? V
字號:
/******************************************
	Filename: 	sienrzo.v 1.13
******************************************/

/*
The sienrzo module does the NRZi Output encoding including
bit stuffing.  It also generates the usb output enable which
has an async flop to be sure we don't drive during reset.
If a bit gets stuffed, then nextxmitdata goes low for one
clock - nextxmitdata does the throttling of the next bit.
*/

module Usienrzo
	(
	// inputs
                testmode,
                testreset,
		usbclock,
		syncreset,
                usbreset,
		xmitactive,	// essentially turns on output
		xmitidle,	// sends idle after se0
		xmitdata,
		xmitse0,
		cpusignalresume,

	// outputs
		nextxmitdata,
		vpo,
		vmo,
		usboen
	);

`include "Usienrzodef.v"

  input         testmode;
  input         testreset;
  input	usbclock;
  input	syncreset;
  input	usbreset; // synopsys sync_set_reset "usbreset"
  input	 xmitactive;
  input	 xmitidle;
  input	 xmitdata;
  input	 xmitse0;
  input  cpusignalresume;

 output	nextxmitdata;
  output	 vpo;
  output	 vmo;
  output usboen;

reg	nextxmitdata;
reg	vpo;
reg	vmo;
wire	usboe;

reg	[7:0]	nrzost, nextnrzost;

wire	nrzozero = ~xmitdata;
wire	usboen = ~usboe;

// special aysnc flop logic for usboen 
wire    rstn;
assign  rstn = (testmode)? testreset : ~syncreset;
dffr asyncflop (
	.q (usboe),
	.d ((xmitactive || cpusignalresume)),
	.clk (usbclock),
	.rstn (rstn)
	);

always @(posedge usbclock)
begin
	if (cpusignalresume)	// we are causing a remote wakeup
	begin
		vpo <= 1'b0;
		vmo <= 1'b1;
	end
	else if (xmitse0)
	begin
		vpo <= 1'b0;
		vmo <= 1'b0;
	end
	else if (xmitidle)
	begin
		vpo <= 1'b1;
		vmo <= 1'b0;
	end
	else if ((nrzost == NRZOSTUFF) || nrzozero)
	begin
		vpo <= ~vpo;	// toggle
		vmo <= vpo;	// keep opposite of vpo
	end
	else
	begin
		vpo <= vpo;	// leave alone
		vmo <= ~vpo;	// keep opposite of vpo
	end
end

// state machine for syncing to the rcv transition edges

always @(posedge usbclock)
begin
	nrzost <= nextnrzost;
end

always @(nrzost or usbreset or xmitactive or xmitidle or xmitse0 or nrzozero)
begin
	if (usbreset)
	begin
		nextxmitdata = 1'b0;
		nextnrzost = NRZOIDLE;
	end
	else
		case (nrzost)	// synopsys parallel_case full_case
			NRZOIDLE:
			begin
				if (xmitactive && ~xmitidle)	// must leave idle with a 0
				begin
					nextnrzost = NRZOONE0;
					nextxmitdata = 1'b1;
				end
				else
				begin
					nextnrzost = NRZOIDLE;
					nextxmitdata = 1'b0;
				end
			end
			NRZOONE0:
			begin
			        nextxmitdata = 1'b1;
				if (xmitidle || ~xmitactive)
				    nextnrzost = NRZOIDLE;
				else if (xmitse0 || nrzozero)
				    nextnrzost = NRZOONE0;
				else
				    nextnrzost = NRZOONE1;	// must have been a 1
			end
			NRZOONE1:
			begin
				nextxmitdata = 1'b1;
				if (xmitidle || ~xmitactive)
				    nextnrzost = NRZOIDLE;
				else if (xmitse0 || nrzozero)
				    nextnrzost = NRZOONE0;
				else
				    nextnrzost = NRZOONE2;	// must have been a 1
			end
			NRZOONE2:
			begin
				nextxmitdata = 1'b1;
				if (xmitidle || ~xmitactive)
				    nextnrzost = NRZOIDLE;
				else if (xmitse0 || nrzozero)
				    nextnrzost = NRZOONE0;
				else
				    nextnrzost = NRZOONE3;	// must have been a 1
			end
			NRZOONE3:
			begin
				nextxmitdata = 1'b1;
				if (xmitidle || ~xmitactive)
				    nextnrzost = NRZOIDLE;
				else if (xmitse0 || nrzozero)
				    nextnrzost = NRZOONE0;
				else
				    nextnrzost = NRZOONE4;	// must have been a 1
			end
			NRZOONE4:
			begin
				nextxmitdata = 1'b1;
				if (xmitidle || ~xmitactive)
				    nextnrzost = NRZOIDLE;
				else if (xmitse0 || nrzozero)
				    nextnrzost = NRZOONE0;
				else
				    nextnrzost = NRZOONE5;	// must have been a 1
			end
			NRZOONE5:
			begin
				if (xmitidle || ~xmitactive)
				begin
					nextxmitdata = 1'b1;
					nextnrzost = NRZOIDLE;
				end
				else if (xmitse0 || nrzozero)
				begin
					nextxmitdata = 1'b1;
					nextnrzost = NRZOONE0;
				end
				else
				begin
					nextxmitdata = 1'b0;		// don't advance, I'm sending stuff bit next
					nextnrzost = NRZOSTUFF;	// must have been a 1
				end
			end
			NRZOSTUFF:
			begin
				nextxmitdata = 1'b1;
				nextnrzost = NRZOONE0;	// doing mandatory transition, see what's next
			end
	endcase
end

// make the ascii version of the nrzo state
// synopsys translate_off
reg [8*10:1]	nrzostate;
always @(nrzost)
case (nrzost)
	NRZOIDLE : nrzostate = "NRZOIDLE";
	NRZOONE0 : nrzostate = "NRZOONE0";
	NRZOONE1 : nrzostate = "NRZOONE1";
	NRZOONE2 : nrzostate = "NRZOONE2";
	NRZOONE3 : nrzostate = "NRZOONE3";
	NRZOONE4 : nrzostate = "NRZOONE4";
	NRZOONE5 : nrzostate = "NRZOONE5";
	NRZOSTUFF : nrzostate = "NRZOSTUFF";
endcase
// synopsys translate_on

endmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99麻豆久久久国产精品免费| 精久久久久久久久久久| 欧美久久久久久久久| 国产综合色在线| 一区二区在线免费| 久久一留热品黄| 国产日韩精品视频一区| 91久久精品一区二区| 韩国精品一区二区| 亚洲动漫第一页| 国产精品视频yy9299一区| 欧美一区二区三区免费视频| av资源网一区| 国产一区二区三区| 天堂蜜桃91精品| 亚洲色图在线视频| 国产午夜三级一区二区三| 欧美日韩视频在线第一区 | 国产亚洲欧美日韩日本| 欧洲一区二区三区在线| 国产黄色精品网站| 狂野欧美性猛交blacked| 亚洲在线一区二区三区| 国产精品久99| 久久精品亚洲精品国产欧美| 欧美一区二区三区免费在线看 | 国产亚洲欧美一区在线观看| 欧美老肥妇做.爰bbww| 色综合天天在线| 成人禁用看黄a在线| 国产一级精品在线| 另类小说图片综合网| 日韩精品色哟哟| 偷拍亚洲欧洲综合| 亚洲国产sm捆绑调教视频| 综合婷婷亚洲小说| 亚洲私人黄色宅男| 国产精品成人午夜| 国产精品久久久久久久蜜臀| 国产视频亚洲色图| 国产亚洲婷婷免费| 欧美精彩视频一区二区三区| 亚洲精品一区二区三区影院| 91麻豆精品国产综合久久久久久| 欧美天堂亚洲电影院在线播放| av一区二区久久| 99久久婷婷国产综合精品| 福利一区二区在线| 白白色亚洲国产精品| 99久久精品免费看国产免费软件| 99久久精品久久久久久清纯| 99精品欧美一区| 色婷婷综合中文久久一本| 色域天天综合网| 国产精品色婷婷久久58| 国产精品乱子久久久久| 亚洲视频每日更新| 亚洲精品国产视频| 亚洲成国产人片在线观看| 亚洲国产精品久久不卡毛片 | 国产一区二区三区不卡在线观看| 韩国精品免费视频| 成人av动漫网站| 91黄色激情网站| 欧美日高清视频| 精品免费99久久| 久久久久国色av免费看影院| 欧美韩国日本一区| 一区二区久久久久| 日本中文一区二区三区| 国产伦精一区二区三区| 不卡av电影在线播放| 欧美三级在线视频| 精品久久久久久久久久久久包黑料| 久久久久久久久岛国免费| 中文字幕在线视频一区| 亚洲国产成人va在线观看天堂| 麻豆免费精品视频| 99久久99久久综合| 欧美精品久久久久久久久老牛影院| 精品久久久久一区二区国产| 国产色产综合产在线视频| 亚洲精品久久7777| 久久成人免费日本黄色| 99久久国产综合精品麻豆| 久久天堂av综合合色蜜桃网| 中文字幕日本乱码精品影院| 国产精品欧美久久久久一区二区| 欧美三日本三级三级在线播放| 欧美一区二区三区啪啪| 欧美经典一区二区| 亚洲h在线观看| 国产69精品久久99不卡| 在线观看国产一区二区| 精品国产露脸精彩对白| 一区二区三区小说| 国产美女av一区二区三区| 欧美日韩在线综合| 国产精品少妇自拍| 九色综合狠狠综合久久| 欧美在线免费观看亚洲| 日本一区二区不卡视频| 婷婷综合在线观看| 色综合天天综合| 久久久777精品电影网影网| 天堂va蜜桃一区二区三区| av高清不卡在线| 国产亚洲综合在线| 青青国产91久久久久久| 欧美性感一区二区三区| 中文字幕av资源一区| 狠狠狠色丁香婷婷综合激情 | 欧美精品aⅴ在线视频| 国产精品久久久久久久久免费樱桃 | 蜜桃av一区二区| 精品少妇一区二区三区在线播放| 中文字幕第一区| 日韩电影在线免费看| 成人精品电影在线观看| 亚洲精品一区二区三区四区高清| 国产精品国产三级国产| 国产盗摄精品一区二区三区在线| 色视频成人在线观看免| 亚洲欧洲日产国产综合网| 免费在线视频一区| 欧美另类一区二区三区| 中文字幕一区二区三| 国产成a人无v码亚洲福利| 91精品国产福利| 日韩精品免费视频人成| 欧美色中文字幕| 日韩一区欧美小说| 成人国产精品免费观看动漫| 精品免费日韩av| 狠狠色丁香久久婷婷综| 欧美一级黄色片| 日韩av一级电影| 欧美三电影在线| 亚洲国产精品久久人人爱 | 国产一区二区三区黄视频 | 欧美图片一区二区三区| 综合色天天鬼久久鬼色| 99re66热这里只有精品3直播 | 国产欧美一区二区精品性| 日本特黄久久久高潮| 欧美一区二区三区视频在线| 亚洲影院久久精品| 欧美色图一区二区三区| 一区二区在线观看视频 | 国产二区国产一区在线观看| 91精品国产91热久久久做人人| 日韩高清不卡一区二区三区| 91精品国产aⅴ一区二区| 爽爽淫人综合网网站| 日韩欧美亚洲一区二区| 免费不卡在线观看| 久久影视一区二区| 国产精品一区2区| 国产精品久久久久久久久久久免费看| 成人高清视频在线| 最新国产の精品合集bt伙计| 91黄色免费网站| 性感美女极品91精品| 欧美va亚洲va| 国产凹凸在线观看一区二区| 亚洲男帅同性gay1069| 97久久人人超碰| 亚洲国产精品欧美一二99| 精品久久久网站| 国产98色在线|日韩| 亚洲一区二区av在线| 91影视在线播放| 天堂资源在线中文精品| 精品va天堂亚洲国产| 懂色av一区二区三区免费观看| 亚洲精品v日韩精品| 欧美高清性hdvideosex| 国产伦精品一区二区三区在线观看| 中文字幕在线观看一区| 在线视频国内一区二区| 久久99精品国产91久久来源| 国产人成一区二区三区影院| 91黄色激情网站| 亚洲第一主播视频| 久久青草欧美一区二区三区| 日韩一区二区三区免费看| 国模少妇一区二区三区| 国产精品青草久久| 欧美视频三区在线播放| 久久成人久久鬼色| 亚洲欧美一区二区三区极速播放| 欧美日韩三级一区二区| 成人午夜看片网址| 日日骚欧美日韩| 国产精品人成在线观看免费 | 欧美一区二区在线播放| 成人av网站在线观看免费| 五月天亚洲婷婷| 成人欧美一区二区三区| 欧美日韩色一区|