?? uart_tx.v
字號(hào):
//-----------------------------------------------------------------------------// // Copyright (c) 2009 Xilinx Inc.//// Project : Programmable Wave Generator// Module : uart_tx.v// Parent : wave_gen.v // Children : uart_tx_ctl.v uart_baud_gen.v .v//// Description: // Top level of the UART transmitter.// Brings together the baudrate generator and the actual UART transmit// controller//// Parameters:// BAUD_RATE : Baud rate - set to 57,600bps by default// CLOCK_RATE: Clock rate - set to 50MHz by default//// Local Parameters://// Notes : //// Multicycle and False Paths// The uart_baud_gen module generates a 1-in-N pulse (where N is// determined by the baud rate and the system clock frequency), which// enables all flip-flops in the uart_tx_ctl module. Therefore, all paths// within uart_tx_ctl are multicycle paths, as long as N > 2 (which it// will be for all reasonable combinations of Baud rate and system// frequency).//`timescale 1ns/1psmodule uart_tx ( input clk_tx, // Clock input input rst_clk_tx, // Active HIGH reset - synchronous to clk_tx input char_fifo_empty, // Empty signal from char FIFO (FWFT) input [7:0] char_fifo_dout, // Data from the char FIFO output char_fifo_rd_en, // Pop signal to the char FIFO output txd_tx // The transmit serial signal);//***************************************************************************// Parameter definitions//*************************************************************************** parameter BAUD_RATE = 57_600; // Baud rate parameter CLOCK_RATE = 50_000_000;//***************************************************************************// Reg declarations//***************************************************************************//***************************************************************************// Wire declarations//*************************************************************************** wire baud_x16_en; // 1-in-N enable for uart_rx_ctl FFs //***************************************************************************// Code//*************************************************************************** uart_baud_gen # ( .BAUD_RATE (BAUD_RATE), .CLOCK_RATE (CLOCK_RATE) ) uart_baud_gen_tx_i0 ( .clk (clk_tx), .rst (rst_clk_tx), .baud_x16_en (baud_x16_en) ); uart_tx_ctl uart_tx_ctl_i0 ( .clk_tx (clk_tx), // Clock input .rst_clk_tx (rst_clk_tx), // Active HIGH reset .baud_x16_en (baud_x16_en), // 16x oversample enable .char_fifo_empty (char_fifo_empty), // Empty signal from char FIFO (FWFT) .char_fifo_dout (char_fifo_dout), // Data from the char FIFO .char_fifo_rd_en (char_fifo_rd_en), // Pop signal to the char FIFO .txd_tx (txd_tx) // The transmit serial signal );endmodule
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -