st16c550.v
来自「UART_verilog,自己设计的异步串行收发。包括测试文件。」· Verilog 代码 · 共 47 行
V
47 行
//------This is a brief UART ST16C550------2006211013-----//
//------Written by Song Yangjun---------------------------//
//--------------------------------------------------------//
// _____________________ //
// | | //
// RCLK----| I | //
// D[7:0]---| I/O O |----TX //
// IOR -----| I | //
// IOW_----| I | //
// -DDIS----| O I |----RX //
// RESET---| I O |----INT //
// | | //
// +-------------------+ //
//--------------------------------------------------------//
`timescale 1ns/10ps
//`include "receive.v"
//`include "transmit.v"
//--------------------------------------------------------------------------//
module ST16C550 ( RCLK, IOR, IOW_, RESET, RX, D, DDIS_, INT, TX );
input RCLK, IOR, IOW_, RESET, RX;
output DDIS_, INT, TX;
inout [7:0] D;
wire DDIS_, INT, TX;
wire INT_1, INT_2;
//--------------------------------------------------------------------------//
receive receive(.RCLK(RCLK),
.RX(RX),
.RESET(RESET),
.IOR(IOR),
.D(D),
.DDIS_(DDIS_),
.INT(INT_1)
);
transmit transmit( .RCLK(RCLK),
.IOW_(IOW_),
.RESET(RESET),
.D(D),
.TX(TX),
.INT(INT_2)
);
//--------------------------------------------------------------------------//
assign INT = INT_1 || INT_2; //Produce an interupt flag.
//--------------------------------------------------------------------------//
endmodule
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?