一个串口的完整FPGA工程

源代码在线查看: top.v

软件大小: 2023 K
上传用户: archimedes88
关键词: FPGA 串口 工程
下载地址: 免注册下载 普通下载 VIP

相关代码

				/*********************************************************************************************************
				 **                                  All right reserve 2008-2009(C) 
				 **                           Created & maintained by http://www.edaok.net
				 **=======================================================================================================
				 ** 模 块 名:   top 
				 ** 描    述:   顶层连接
				 **
				 ** 原 作 者:   Adeko (from http://www.edaok.net)
				 ** 参 与 者:   (...welcome you join in)
				 **
				 **=======================================================================================================
				 ********************************************************************************************************/
				
				module top(
				    clk,
				    rst_n,
				
				    ad, 
				    addr, 
				    wr_n, 
				    rd_n, 
				    ale,
				    
				    txd,
				    rxd,
				
				    int_o,
				
				    uart_clk
				);
				
				input               clk;                                        //  全局时钟线
				input               rst_n;                                      //  全局复位线
				
				inout   [7:0]       ad;                                         //  EBI的数据线, 
				input   [7:0]       addr;                                       //  地址线
				input               wr_n;                                       //  写信号线, 低有效
				input               rd_n;                                       //  读信号线, 低有效 
				input               ale;                                        //  地址锁存信号线
				
				input               rxd;
				output              txd;
				
				output              int_o;
				
				output              uart_clk;
				
				
				wire                clk_inter;//   = clk;
				wire                rst_n_inter = rst_n; 
				
				wire    [7:0]       xmc_data;
				
				wire    [7:0]       xmc_data_in;
				wire    [7:0]       xmc_data_out;
				wire    [15:0]      xmc_addr_out;
				wire    [15:0]      wAddr;
				wire                wWrNeg;
				
				
				assign  clk_inter = clk;
				    
				ebi U_1(
				    .clk            (clk_inter),
				                    
				    .ebi_ad         (ad),
				    .ebi_addr_h     (addr),
				    .ebi_wr_n       (wr_n),
				    .ebi_rd_n       (rd_n),
				    .ebi_ale        (ale),
				
				    .we             (wWrNeg),
				    .data_in        (xmc_data_in),
				    .data_out       (xmc_data_out),
				    .addr_out       (xmc_addr_out)
				);
				assign wAddr = xmc_addr_out;
				
				uart U_2(
				    .clk            (clk_inter),
				    .rst_n          (rst_n_inter),
				
				    .we             (wWrNeg), 
				    .rd_n           (rd_n),
				    .addr_base      (16'h1200),
				    .addr           (wAddr),
				    .data_i         (xmc_data_out),
				    .data_o         (xmc_data_in),
				
				    .rxd_xi         (rxd),
				    .txd_xo         (txd),
				
				    .int_o          (int_o),
				
				    .uart_clk       (uart_clk)
				);
				
				endmodule
				
				/*********************************************************************************************************
				 ** End Of File
				 ********************************************************************************************************/
				
							

相关资源