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

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

?? kcuart_tx.v

?? Xilinx的培訓教程的源碼 virtex
?? V
字號:
////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2004 Xilinx, Inc.
// All Rights Reserved
////////////////////////////////////////////////////////////////////////////////
//   ____  ____
//  /   /\/   /
// /___/  \  /    Vendor: Xilinx
// \   \   \/     Version: 1.03
//  \   \         Filename: kcuart_tx.v
//  /   /         Date Last Modified:  November 2, 2004
// /___/   /\     Date Created: October 14, 2002
// \   \  /  \
//  \___\/\___\
//
//Device:  	Xilinx
//Purpose: 	
// 	Constant (K) Compact UART Transmitter
//Reference:
// 	None
//Revision History:
//    Rev 1.00 - kc - Start of design entry in VHDL,  October 14, 2002
//    Rev 1.01 - sus - Converted to verilog,  August 4, 2004
//    Rev 1.02 - njs - Synplicity attributes added,  September 6, 2004
//    Rev 1.03 - njs - Fixed simulation attributes from string to hex, 
//				November 2, 2004
////////////////////////////////////////////////////////////////////////////////// 
// Contact: e-mail  picoblaze@xilinx.com
//////////////////////////////////////////////////////////////////////////////////
//
// Disclaimer: 
// LIMITED WARRANTY AND DISCLAIMER. These designs are
// provided to you "as is". Xilinx and its licensors make and you
// receive no warranties or conditions, express, implied,
// statutory or otherwise, and Xilinx specifically disclaims any
// implied warranties of merchantability, non-infringement, or
// fitness for a particular purpose. Xilinx does not warrant that
// the functions contained in these designs will meet your
// requirements, or that the operation of these designs will be
// uninterrupted or error free, or that defects in the Designs
// will be corrected. Furthermore, Xilinx does not warrant or
// make any representations regarding use or the results of the
// use of the designs in terms of correctness, accuracy,
// reliability, or otherwise.
//
// LIMITATION OF LIABILITY. In no event will Xilinx or its
// licensors be liable for any loss of data, lost profits, cost
// or procurement of substitute goods or services, or for any
// special, incidental, consequential, or indirect damages
// arising from the use or operation of the designs or
// accompanying documentation, however caused and on any theory
// of liability. This limitation will apply even if Xilinx
// has been advised of the possibility of such damage. This
// limitation shall apply not-withstanding the failure of the 
// essential purpose of any limited remedies herein. 
//////////////////////////////////////////////////////////////////////////////////

`timescale 1 ps / 1ps

module kcuart_tx
     (data_in,
      send_character,
      en_16_x_baud,
      serial_out,
      Tx_complete,
      clk);

input 	[7:0]	data_in;
input       	send_character;
input       	en_16_x_baud;
output		serial_out;
output		Tx_complete;
input 		clk;

//
////////////////////////////////////////////////////////////////////////////////////
//
// Start of KCUART_TX
//	 
//
////////////////////////////////////////////////////////////////////////////////////
//
////////////////////////////////////////////////////////////////////////////////////
//
// wires used in KCUART_TX
//
////////////////////////////////////////////////////////////////////////////////////
//
wire 		data_01;
wire 		data_23;
wire 		data_45;
wire 		data_67;
wire 		data_0123;
wire 		data_4567;
wire 		data_01234567;
wire 	[2:0] 	bit_select;
wire 	[2:0] 	next_count;
wire 	[2:0] 	mask_count;
wire 	[2:0] 	mask_count_carry;
wire 	[2:0] 	count_carry;
wire 		ready_to_start;
wire 		decode_Tx_start;
wire 		Tx_start;
wire 		decode_Tx_run;
wire 		Tx_run;
wire 		decode_hot_state;
wire 		hot_state;
wire 		hot_delay;
wire 		Tx_bit;
wire 		decode_Tx_stop;
wire 		Tx_stop;
wire 		decode_Tx_complete;
//
//
////////////////////////////////////////////////////////////////////////////////////
//
// Attributes to define LUT contents during implementation 
// The information is repeated in the generic map for functional simulation//
//
////////////////////////////////////////////////////////////////////////////////////

// synthesis attribute init of mux1_lut is "E4FF"; 
// synthesis attribute init of mux2_lut is "E4FF";
// synthesis attribute init of mux3_lut is "E4FF";
// synthesis attribute init of mux4_lut is "E4FF";
// synthesis attribute init of ready_lut is "10";
// synthesis attribute init of start_lut is "0190";
// synthesis attribute init of run_lut is "1540";
// synthesis attribute init of hot_state_lut is "94";
// synthesis attribute init of delay14_srl is "0000";
// synthesis attribute init of stop_lut is "0180";
// synthesis attribute init of complete_lut is "8";
// synthesis attribute init of count_lut_0 is "8";
// synthesis attribute init of count_lut_1 is "8";
// synthesis attribute init of count_lut_2 is "8";

//
////////////////////////////////////////////////////////////////////////////////////
//
// Start of KCUART_TX circuit description
//
////////////////////////////////////////////////////////////////////////////////////
//	

  // 8 to 1 multiplexer to convert parallel data to serial

  	LUT4 mux1_lut
  	  ( .I0(bit_select[0]),
   	    .I1(data_in[0]),
            .I2(data_in[1]),
            .I3(Tx_run),
            .O(data_01) )/* synthesis xc_props = "INIT=E4FF"*/;
	// synthesis translate_off
	defparam mux1_lut.INIT = 16'hE4FF; 
	// synthesis translate_on

  	LUT4 mux2_lut 
  	(   .I0(bit_select[0]),
            .I1(data_in[2]),
            .I2(data_in[3]),
            .I3(Tx_run),
            .O(data_23) )/* synthesis xc_props = "INIT=E4FF"*/;
	// synthesis translate_off
	defparam mux2_lut.INIT = 16'hE4FF; 
	// synthesis translate_on

  	LUT4 mux3_lut
  	   (.I0(bit_select[0]),
            .I1(data_in[4]),
            .I2(data_in[5]),
            .I3(Tx_run),
            .O(data_45) )/* synthesis xc_props = "INIT=E4FF"*/;
	// synthesis translate_off
	defparam mux3_lut.INIT = 16'hE4FF; 
	// synthesis translate_on

  	LUT4 mux4_lut
  	   (.I0(bit_select[0]),
            .I1(data_in[6]),
            .I2(data_in[7]),
            .I3(Tx_run),
            .O(data_67) )/* synthesis xc_props = "INIT=E4FF"*/;
	// synthesis translate_off
	defparam mux4_lut.INIT = 16'hE4FF; 
	// synthesis translate_on

  	MUXF5 mux5_muxf5
  		(		.I1(data_23),
            .I0(data_01),
            .S(bit_select[1]),
            .O(data_0123) );

  	MUXF5 mux6_muxf5
  		( 		.I1(data_67),
            .I0(data_45),
            .S(bit_select[1]),
            .O(data_4567) );

  	MUXF6 mux7_muxf6
  		(		.I1(data_4567),
            .I0(data_0123),
            .S(bit_select[2]),
            .O(data_01234567) );

  // Register serial output and force start and stop bits

  	FDRS pipeline_serial
   	(   .D(data_01234567),
            .Q(serial_out),
            .R(Tx_start),
            .S(Tx_stop),
            .C(clk) ) ;

  // 3-bit counter
  // Counter is clock enabled by en_16_x_baud
  // Counter will be reset when 'Tx_start' is active
  // Counter will increment when Tx_bit is active
  // Tx_run must be active to count
  // count_carry[2] indicates when terminal count [7] is reached and Tx_bit=1 (ie overflow)

	FDRE register_bit_0
   	(.D(next_count[0]),
         .Q(bit_select[0]),
         .CE(en_16_x_baud),
         .R(Tx_start),
         .C(clk) );

	LUT2 count_lut_0
     	(.I0(bit_select[0]),
         .I1(Tx_run),
         .O(mask_count[0]) )/* synthesis xc_props = "INIT=8"*/;
	// synthesis translate_off
	defparam count_lut_0.INIT = 4'h8; 					 
	// synthesis translate_on

   MULT_AND mask_and_0
   	(.I0(bit_select[0]),
       	 .I1(Tx_run),
         .LO(mask_count_carry[0]) );

	MUXCY count_muxcy_0
   	( .DI(mask_count_carry[0]),
         .CI(Tx_bit),
         .S(mask_count[0]),
         .O(count_carry[0]) );
       
	XORCY count_xor_0
   	(.LI(mask_count[0]),
         .CI(Tx_bit),
         .O(next_count[0]) );
 
	FDRE register_bit_1
     	(.D(next_count[1]),
         .Q(bit_select[1]),
         .CE(en_16_x_baud),
         .R(Tx_start),
         .C(clk) );

	LUT2 count_lut_1
     	(.I0(bit_select[1]),
         .I1(Tx_run),
         .O(mask_count[1]) )/* synthesis xc_props = "INIT=8"*/;
	// synthesis translate_off
	defparam count_lut_1.INIT = 4'h8; 					 
	// synthesis translate_on

   MULT_AND mask_and_1
     	( 	.I0(bit_select[1]),
         .I1(Tx_run),
         .LO(mask_count_carry[1]) );

	MUXCY count_muxcy_1
   	( 	.DI(mask_count_carry[1]),
         .CI(count_carry[0]),
         .S(mask_count[1]),
         .O(count_carry[1]) );
       
	XORCY count_xor_1
     	( 	.LI(mask_count[1]),
         .CI(count_carry[0]),
         .O(next_count[1]) );

	FDRE register_bit_2
     	( 	.D(next_count[2]),
         .Q(bit_select[2]),
         .CE(en_16_x_baud),
         .R(Tx_start),
         .C(clk) );

  	LUT2 count_lut_2
   	( 	.I0(bit_select[2]),
         .I1(Tx_run),
         .O(mask_count[2]) )/* synthesis xc_props = "INIT=8"*/;
	// synthesis translate_off
	defparam count_lut_2.INIT = 4'h8; 					 
	// synthesis translate_on
	
	MULT_AND mask_and_2
     	( 	.I0(bit_select[2]),
         .I1(Tx_run),
         .LO(mask_count_carry[2]) );


	MUXCY count_muxcy_2
   	( 	.DI(mask_count_carry[2]),
         .CI(count_carry[1]),
         .S(mask_count[2]) ,
         .O(count_carry[2]) );
       
	XORCY count_xor_2
		( 	.LI(mask_count[2]),
         .CI(count_carry[1]),
         .O(next_count[2]) );

  // Ready to start decode

  	LUT3 ready_lut
  		( 	.I0(Tx_run),
         .I1(Tx_start),
         .I2(send_character),
         .O(ready_to_start ) )/* synthesis xc_props = "INIT=10"*/;
	// synthesis translate_off
	defparam ready_lut.INIT = 8'h10; 
	// synthesis translate_on

  // Start bit enable

  	LUT4 start_lut
  		( 	.I0(Tx_bit),
         .I1(Tx_stop),
         .I2(ready_to_start),
         .I3(Tx_start),
         .O(decode_Tx_start ) )/* synthesis xc_props = "INIT=0190"*/;
	// synthesis translate_off
	defparam start_lut.INIT = 16'h0190; 
	// synthesis translate_on

  	FDE Tx_start_reg
  	(	.D(decode_Tx_start),
      .Q(Tx_start),
      .CE(en_16_x_baud),
      .C(clk) );


  // Run bit enable
  	LUT4 run_lut
  	( 	.I0(count_carry[2]),
      .I1(Tx_bit),
      .I2(Tx_start),
      .I3(Tx_run),
		.O(decode_Tx_run ) )/* synthesis xc_props = "INIT=1540"*/;
	// synthesis translate_off
	defparam run_lut.INIT = 16'h1540; 
	// synthesis translate_on

  	FDE Tx_run_reg
  	(	.D(decode_Tx_run),
      .Q(Tx_run),
      .CE(en_16_x_baud),
      .C(clk) );

  // Bit rate enable

  	LUT3 hot_state_lut
  	(	.I0(Tx_stop),
      .I1(ready_to_start),
      .I2(Tx_bit),
      .O(decode_hot_state) )/* synthesis xc_props = "INIT=94"*/;
	// synthesis translate_off
	defparam hot_state_lut.INIT = 8'h94; 
	// synthesis translate_on

  	FDE hot_state_reg
  	(	.D(decode_hot_state),
      .Q(hot_state),
      .CE(en_16_x_baud),
      .C(clk) );

  	SRL16E delay14_srl
  	(	.D(hot_state),
      .CE(en_16_x_baud),
      .CLK(clk),
      .A0(1'b1),
      .A1(1'b0),
      .A2(1'b1),
      .A3(1'b1),
      .Q(hot_delay) )/* synthesis xc_props = "INIT=0000"*/;
	// synthesis translate_off
	defparam delay14_srl.INIT = 16'h0000; 
	// synthesis translate_on

  	FDE Tx_bit_reg
  	(	.D(hot_delay),
     	.Q(Tx_bit),
      .CE(en_16_x_baud),
      .C(clk) );

  // Stop bit enable
  	LUT4 stop_lut
  	(	.I0(Tx_bit),
      .I1(Tx_run),
      .I2(count_carry[2]),
      .I3(Tx_stop),	  
      .O(decode_Tx_stop) )/* synthesis xc_props = "INIT=0180"*/;
	// synthesis translate_off
	defparam stop_lut.INIT = 16'h0180; 
	// synthesis translate_on

  FDE Tx_stop_reg
  ( 	    .D(decode_Tx_stop),
            .Q(Tx_stop),
            .CE(en_16_x_baud),
            .C(clk) );

  // Tx_complete strobe

  LUT2 complete_lut
  ( 	    .I0(count_carry[2]),
            .I1(en_16_x_baud),
            .O(decode_Tx_complete) )/* synthesis xc_props = "INIT=8"*/;
	// synthesis translate_off
	defparam complete_lut.INIT = 4'h8; 
	// synthesis translate_on

  FD Tx_complete_reg
  ( 	     .D(decode_Tx_complete),
             .Q(Tx_complete),
             .C(clk) );


endmodule

////////////////////////////////////////////////////////////////////////////////////
//
// END OF FILE KCUART_TX.V
//
////////////////////////////////////////////////////////////////////////////////////


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产麻豆| 国产一区二区中文字幕| 一本色道久久加勒比精品 | 成人三级在线视频| 日本一二三不卡| jiyouzz国产精品久久| 一区在线播放视频| 色吊一区二区三区| 午夜精品久久久久久久99水蜜桃 | 久久久久久综合| 国产精品一区二区果冻传媒| 精品美女一区二区| 成人a区在线观看| 一区二区三区加勒比av| 欧美日韩激情在线| 久久电影网站中文字幕| 国产日韩av一区| 欧洲亚洲国产日韩| 狠狠久久亚洲欧美| 国产精品久久毛片a| 欧美性猛交xxxx黑人交| 激情综合色播激情啊| 中文字幕在线观看一区| 欧美一区二区三区在线观看| 国产一区二区看久久| 亚洲人成精品久久久久| 在线播放91灌醉迷j高跟美女| 老司机午夜精品99久久| 日韩一区在线看| 日韩一二在线观看| 99久久免费精品高清特色大片| 亚洲成人激情综合网| 国产亚洲人成网站| 欧美日韩精品高清| 成人av网站在线观看| 五月婷婷另类国产| 中文字幕不卡在线观看| 欧美人xxxx| youjizz国产精品| 美腿丝袜亚洲一区| 亚洲激情成人在线| 久久久91精品国产一区二区三区| 色999日韩国产欧美一区二区| 激情都市一区二区| 视频一区在线播放| 亚洲欧洲一区二区在线播放| 日韩一级免费一区| 欧美日韩综合不卡| 北岛玲一区二区三区四区| 免费一级片91| 亚洲欧美另类综合偷拍| 久久亚洲精品小早川怜子| 欧美无人高清视频在线观看| 国产91对白在线观看九色| 日韩精品亚洲一区二区三区免费| 综合av第一页| 国产亲近乱来精品视频 | 久久亚洲精华国产精华液| 欧美亚洲尤物久久| voyeur盗摄精品| 国产精品综合二区| 久久精品国产一区二区| 亚洲成av人片在线观看| 亚洲日本电影在线| 中文字幕亚洲一区二区av在线| 欧美tickle裸体挠脚心vk| 在线成人免费视频| 精品视频全国免费看| 91美女在线看| 91在线看国产| 99精品视频一区| 成人97人人超碰人人99| 国产麻豆精品一区二区| 九九视频精品免费| 麻豆91在线看| 青青草精品视频| 日韩国产欧美一区二区三区| 婷婷中文字幕一区三区| 亚洲1区2区3区视频| 亚洲一区在线观看免费| 亚洲一区二区精品久久av| 亚洲免费在线播放| 亚洲色图视频网| 亚洲免费观看高清完整版在线观看 | 国产日韩视频一区二区三区| 日韩精品影音先锋| 日韩欧美国产精品一区| 日韩女优av电影| 精品国产污污免费网站入口 | 一区二区三区四区不卡在线| 成人欧美一区二区三区白人| 亚洲三级电影网站| 亚洲国产日韩精品| 日韩在线一二三区| 久久精品国产第一区二区三区| 免费观看91视频大全| 免费在线视频一区| 国产黄人亚洲片| 不卡高清视频专区| 欧美日韩一级片网站| 欧美一区二区三区四区视频| 精品免费99久久| 欧美国产精品一区| 最新日韩在线视频| 亚洲成人先锋电影| 国产在线麻豆精品观看| 国产精品一二二区| 欧美亚洲国产一区二区三区va| 在线综合视频播放| 久久影音资源网| 亚洲欧美国产77777| 日本成人在线网站| 波多野洁衣一区| 在线成人免费观看| 中文字幕国产一区二区| 亚洲制服丝袜一区| 国产毛片精品视频| 91社区在线播放| 日韩一二三区不卡| 最新国产成人在线观看| 日韩精品国产精品| 成人av免费观看| 91精品国产乱| 亚洲精品自拍动漫在线| 久久99精品久久久久久国产越南| 成人av电影在线网| 69堂精品视频| 国产精品国产三级国产普通话三级 | 亚洲精选在线视频| 精品中文字幕一区二区| 99re热这里只有精品视频| 欧美在线观看一区二区| 国产欧美一区视频| 日韩**一区毛片| 9久草视频在线视频精品| 日韩午夜激情免费电影| 亚洲欧美激情在线| 国产成人精品免费| 日韩你懂的在线播放| 亚洲黄色av一区| 从欧美一区二区三区| 日韩视频免费观看高清在线视频| 亚洲精品国产无套在线观| 国精品**一区二区三区在线蜜桃| 欧美亚洲一区二区在线| 亚洲欧洲www| 国产精品99久久久久久似苏梦涵 | 免费观看一级欧美片| 99re亚洲国产精品| 中文字幕免费不卡在线| 韩国理伦片一区二区三区在线播放| 欧美三级电影在线观看| 日韩美女视频一区| 99久久久精品| 亚洲国产精品99久久久久久久久 | 国产亚洲欧美日韩在线一区| 久久国内精品自在自线400部| 欧美日韩国产精品自在自线| 亚洲美女免费视频| 99久久婷婷国产| 国产精品久久一卡二卡| 国产精品99久久久久久宅男| 精品第一国产综合精品aⅴ| 日日夜夜免费精品| 精品视频在线免费观看| 夜夜揉揉日日人人青青一国产精品| eeuss鲁一区二区三区| 国产女主播在线一区二区| 国产精品一区久久久久| 久久九九国产精品| 国产91精品一区二区麻豆亚洲| 久久久精品tv| 不卡区在线中文字幕| 国产精品天美传媒沈樵| 成人福利视频在线看| 综合av第一页| 在线精品视频一区二区三四| 亚洲美女淫视频| 欧美日韩国产综合一区二区| 五月综合激情婷婷六月色窝| 欧美精品亚洲二区| 久久se这里有精品| 久久综合久久综合九色| 国产精品一区二区久久不卡 | 一区二区三区欧美视频| 日本韩国精品一区二区在线观看| 亚洲精品va在线观看| 欧美亚一区二区| 日韩一区欧美二区| 久久综合久久99| 91丨九色porny丨蝌蚪| 亚洲精选在线视频| 91精品国产综合久久精品图片| 久久超级碰视频| 中文字幕欧美激情一区| 色综合久久天天| 日韩中文字幕区一区有砖一区| 日韩免费一区二区| 99久久精品国产麻豆演员表| 夜夜嗨av一区二区三区网页 |