D16550 IP Core. Configurable UART with FIFO v. 2.25

Similar documents
D16950 IP Core. Configurable UART with FIFO v. 1.03

SC16C750B. 1. General description. 2. Features. 5 V, 3.3 V and 2.5 V UART with 64-byte FIFOs

SC16C550B. 1. General description. 2. Features. 5 V, 3.3 V and 2.5 V UART with 16-byte FIFOs

SC16C650B. 1. General description. 2. Features. 5 V, 3.3 V and 2.5 V UART with 32-byte FIFOs and infrared (IrDA) encoder/decoder

C16450 Universal Asynchronous Receiver/Transmitter. Function Description. Features. Symbol

PC16552D Dual Universal Asynchronous Receiver Transmitter with FIFOs

SC16C550 Rev June 2003 Product data General description Features

RCLK N.C. CS0 CS1 -CS2 -BAUDOUT

TL16C550A ASYNCHRONOUS COMMUNICATIONS ELEMENT

ST16C550. UART WITH 16-BYTE FIFO s GENERAL DESCRIPTION. PLCC Package FEATURES ORDERING INFORMATION

ST16C450 UNIVERSAL ASYNCHRONOUS RECEIVER/TRANSMITTER (UART) GENERAL DESCRIPTION. PLCC Package FEATURES ORDERING INFORMATION.

ASYNCHRONOUS COMMUNICATIONS ELEMENT

TL16C550A ASYNCHRONOUS COMMUNICATIONS ELEMENT

SC16C2552B. 1. General description. 2. Features. 5 V, 3.3 V and 2.5 V dual UART, 5 Mbit/s (max.), with 16-byte FIFOs

PC16550D Universal Asynchronous Receiver Transmitter with FIFOs. Features Y. Basic Configuration. June 1995

SC16C652B. 1. General description. 2. Features. 5 V, 3.3 V and 2.5 V dual UART, 5 Mbit/s (max.) with 32-byte FIFOs and infrared (IrDA) encoder/decoder

SC16C Description. 2. Features. Dual UART with 32 bytes of transmit and receive FIFOs

SLLS177H MARCH 1994 REVISED JANUARY 2006

FEATURES PLCC Package RXB RXA -TXRDYB TXA TXB -OPB -CSA -CSB

TL16C552A, TL16C552AM DUAL ASYNCHRONOUS COMMUNICATIONS ELEMENT WITH FIFO

XR16L570 GENERAL DESCRIPTION FEATURES APPLICATIONS FIGURE 1. BLOCK DIAGRAM. *5 V Tolerant Inputs (Except for CLK) PwrSave. Data Bus Interface

TL16C554A, TL16C554AI ASYNCHRONOUS-COMMUNICATIONS ELEMENT

SC16IS General description. 2. Features

SC16C General description. 2. Features and benefits

SC16C554B/554DB. 1. General description. 2. Features. 5 V, 3.3 V and 2.5 V quad UART, 5 Mbit/s (max.) with 16-byte FIFOs

APPLICATION NOTE ANI6. Connecting the SP504 Multiprotocol Transceiver to the 85C30 Universal Enhanced Serial Communications Controller (ESCC)

a6850 Features General Description Asynchronous Communications Interface Adapter

Serial Input/Output. Lecturer: Sri Parameswaran Notes by: Annie Guo

XR16V554/554D 2.25V TO 3.6V QUAD UART WITH 16-BYTE FIFO

D5 D6 D7 RCLK SIN SOUT CS0 CS1 CS2 BAUDOUT

Lecture #3 RS232 & 485 protocols

V62/03626 REVISIONS LTR DESCRIPTION DATE APPROVED REV PAGE REV PAGE REV REV STATUS OF PAGES PAGE

ST16C554/554D 2.97V TO 5.5V QUAD UART WITH 16-BYTE FIFO

SC28L General description. 3.3 V, 5 V UART, Mbit/s, with 256-byte FIFO

XR19L400 SINGLE CHANNEL INTEGRATED UART AND RS-485 TRANSCEIVER

Programmable communications interface (PCI)

XR16M V TO 3.63V UART WITH 64-BYTE FIFO AND VLIO INTERFACE

XR16M V TO 3.63V HIGH PERFORMANCE UART WITH 64-BYTE FIFO

XR18W750 WIRELESS UART CONTROLLER

XR20M1280 I2C/SPI UART WITH 128-BYTE FIFO AND INTEGRATED LEVEL SHIFTERS

Electronics / Water analogy. Resistor. Inductance. Capacitor. Water Electronics Energy - Energy Pressure - Voltage Flow - Current Volume - Charge

6551 ASYNCHRONOUS COMMUNICATION INTERFACE ADAPTER

PN PACKAGE (TOP VIEW) INTSEL GND TL16C754BPN DTRB CTSB DSRB NC A0 D3 RESET RXB CLKSEL XTAL1 XTAL2 RXRDY

ECE 4510/5530 Microcontroller Applications Week 6 Lab 5

Unit-6 PROGRAMMABLE INTERRUPT CONTROLLERS 8259A-PROGRAMMABLE INTERRUPT CONTROLLER (PIC) INTRODUCTION

ST16C V TO 5.5V DUART WITH 16-BYTE FIFO

XR16M752/XR68M752 HIGH PERFORMANCE DUART WITH 64-BYTE FIFO

XR16V2750 HIGH PERFORMANCE DUART WITH 64-BYTE FIFO

xr XR16L2750 GENERAL DESCRIPTION 2.25V TO 5.5V DUART WITH 64-BYTE FIFO

Asynchronous Serial Communications The MC9S12 Serial Communications Interface (SCI) Asynchronous Data Transfer

Chapter 9: Serial Communication Interface SCI. The HCS12 Microcontroller. Han-Way Huang. September 2009

PERIPHERAL INTERFACING Rev. 1.0

Verilog Implementation of UART with Status Register Sangeetham Rohini 1

1.8 V dual UART, 5 Mbit/s (max.) with 128-byte FIFOs, infrared (IrDA) and XScale VLIO bus interface

Design and FPGA Implementation of a High Speed UART. Sonali Dhage, Manali Patil,Navnath Temgire,Pushkar Vaity, Sangeeta Parshionikar

Minimal UART core. All the project files were published on the LGPL terms, you must read the GNU Lesser General Public License for more details.

Installation and Operation Manual HS-R. 4-Channel Low Speed Data Module with V.110 Rate Adaptation MEGAPLEX-2100 MODULE

Digital Systems Design

8253 functions ( General overview )

XR16M564/564D 1.62V TO 3.63V QUAD UART WITH 32-BYTE FIFO

Microcontrollers. Serial Communication Interface. EECE 218 Microcontrollers 1

XR19L202 TWO CHANNEL INTEGRATED UART AND RS-232 TRANSCEIVER

TRH031M 13.56MHz Multi-Protocol READER IC Short Specification Preliminary

Design and Simulation of Universal Asynchronous Receiver Transmitter on Field Programmable Gate Array Using VHDL

Topics Introduction to Microprocessors

Lab 2.2 Custom slave programmable interface

2014, IJARCSSE All Rights Reserved Page 459

Online Signature Verification by Using FPGA

CHAPTER III THE FPGA IMPLEMENTATION OF PULSE WIDTH MODULATION

Lesson UART. Clock Systems and Timing UART (Universal Asynchronous Receiver-Transmitter) Queues Lab Assignment: UART

a8259 Features General Description Programmable Interrupt Controller

THE DESIGN OF A PLC MODEM AND ITS IMPLEMENTATION USING FPGA CIRCUITS

Fanuc Serial (RS232) Communications Information

We are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists. International authors and editors

This document is designed to be used in conjunction with the CMX869A data sheet.

Roland Kammerer. 13. October 2010

ACIIR IP CORE IIR FILTERS

Design and Implementation of Universal Serial Bus Transceiver with Verilog

Features. TEMP RANGE ( C) PACKAGE PKG. DWG. # CP82C52 (No longer available or supported Recommended Replacement: CP82C52Z)

Microprocessor & Interfacing Lecture Programmable Interval Timer

AMBA Generic Infra Red Interface

9600 bps, Dual Modem 170 Card Private Wire Only

XR88C92/192 DUAL UNIVERSAL ASYNCHRONOUS RECEIVER AND TRANSMITTER DESCRIPTION FEATURES. PLCC Package ORDERING INFORMATION.

I hope you have completed Part 2 of the Experiment and is ready for Part 3.

Designing with STM32F3x

OBSOLETE. Bus Compatible Digital PWM Controller, IXDP 610 IXDP 610

Project Final Report: Directional Remote Control

Application Note 74 Reading and Writing ibuttons via Serial Interfaces

Using High-Speed Transceiver Blocks in Stratix GX Devices

Preliminary Information IP0 -IOW -IOR RXB N.C. TXB OP1 OP3 OP5 OP7

USER'S MANUAL. Model : K

4. SONET Mode. Introduction

Commsonic. Universal QAM/PSK Modulator CMS0004. Contact information. Continuous or burst-mode operation.

Concept of Serial Communication

Local Asynchronous Communication. By S.Senthilmurugan Asst.Professor/ICE SRM University. Chennai.

Am85C30. Advanced Micro Devices. Enhanced Serial Communications Controller DISTINCTIVE CHARACTERISTICS GENERAL DESCRIPTION FINAL

DigiPoints Volume 1. Student Workbook. Module 2 Modem Overview

Appendix A. Datum Systems PSM-2100/512 Satellite Modem. Technical Specification

SECTION 6 SERIAL AUDIO INTERFACE

FPGAs: Why, When, and How to use them (with RFNoC ) Pt. 1 Martin Braun, Nicolas Cuervo FOSDEM 2017, SDR Devroom

Transcription:

2017 D16550 IP Core Configurable UART with FIFO v. 2.25

C O M P A N Y O V E R V I E W Digital Core Design is a leading IP Core provider and a SystemonChip design house. The company was founded in 1999 and since the very beginning has been focused on IP Core architecture improvements. Our innovative, silicon proven solutions have been employed by over 300 customers and with more than 500 hundred licenses sold to companies like Intel, Siemens, Philips, General Electric, Sony and Toyota. Based on more than 70 different architectures, starting from serial interfaces to advanced microcontrollers and SoCs, we are designing solutions tailored to your needs. I P C O R E O V E R V I E W The D16550 is a soft Core of a Universal Asynchronous Receiver/Transmitter (UART), functionally identical to the TL16C550A. The D16550 allows serial transmission in two modes: UART and FIFO. In the FIFO mode, internal FIFOs are activated allowing 16 bytes (plus 3 bits of error data per byte in the RCVR FIFO) to be stored in both receive and transmit directions. The D16550 performs serialtoparallel conversion on data characters, received from a peripheral device or a MODEM and paralleltoserial conversion on data characters received from the CPU. The CPU can read the complete status of the UART at any time, during the functional operation. Reported status information includes the type and condition of transfer operations being performed by the UART, as well as any error conditions (parity, overrun, framing or break interrupt). The D16550 includes a programmable baud rate generator, which is capable of dividing the timing reference clock input, by divisors of 1 to (2 16 1) and producing a 16 clock, for driving the internal transmitter logic. Provisions are also included, to use this 16 clock to drive the receiver logic. The D16550 has a complete MODEM control capability and a processorinterrupt system. Interrupts can be programmed to the user's requirements, minimizing the computing required to handle the communications link. The separate BAUD CLK line allows setting an exact transmission speed, while the UART internal logic is clocked with the CPU frequency. There are two DMA modes supported: a single transfer and a multitransfer. These modes allow the UART to interface to higher performance DMA units, which can interleave their transfers between CPU cycles or execute multiple byte transfers. The configuration capability allows the user to enable or disable during the synthesis process, the Modem Control Logic and FIFO's Control Logic, change the FIFO size. So, in applications with area limitation and where the UART works only in the 16450 mode, disabling Modem Control and FIFO's allows to save about 50% of logic resources. The D16550 has a universal microcontroller interface, which allows correct communication with the D16550, no matter how the D16550 clock is related to the microcontroller clock. The core is perfect for applications where the UART Core and microcontroller are clocked by the same clock signal and are implemented inside the same ASIC or FPGA chip. It also works well for a standalone implementation, where several UARTs are required to be implemented inside a single chip and driven by some offchip devices. Thanks to the universal interface, the D16550 core implementation and verification are very simple, by eliminating a number of clock trees in complete system. K E Y F E A T U R E S Software compatible with 16450 and 16550 UARTs Configuration capability Separate configurable BAUD clock line Two modes of operation: UART mode and FIFO mode Majority Voting Logic In the FIFO mode, transmitter and receiver are each buffered with 16 byte FIFO, to reduce the number of interrupts presented to the CPU Adds or deletes standa asynchronous communication bits (start, stop, and parity) to, or from the serial data In UART mode, receiver and transmitter are double buffered, to eliminate a need for precise synchronization between the CPU and serial data Independently controlled transmit, receive, line status, and data set interrupts False start bit detection 16 bit programmable baud generator MODEM control functions (CTS, RTS, DSR, DTR, RI, and DCD) Fully programmable serialinterface characteristi: 5, 6, 7, or 8bit characters Even, odd, or noparity bit generation and detection 1, 1½, or 2stop bit generation Baud generation Complete status reporting capabilities Line break generation and detection. Internal diagnostic capabilities: Loopback controls for communications link fault isolation Break, parity, overrun, framing error simulation Two DMA Modes allows single and multitransfer Technology independent HDL Source Code Full prioritized interrupt system controls Fully synthesizable static design with no internal tristate buffers D E S I G N F E A T U R E S The functionality of the D16550 core was based on the Texas Instruments TL16C550A. The following characteristi differentiate the D16550 from Texas Instruments devices: The bidirectional data bus have been split into two separate buses: datai (7:0), datao (7:0) Signals 2 and wr2, xin and xout have been removed from interface Signal ADS and address latch have been removed The DLL, DLM and THR registers are reset to all zeros TEMT and THRE bits of Line Status Register, are reset during the second clock rising edge following a THR write RCLK clock is replaced by global clock CLK, internally divided by BAUD factor. Asynchronous microcontroller interface is replaced by equivalent Universal interface All latches implemented in original 16550 devices are replaced by equivalent flipflop registers, with the same functionality 2

L I C E N S I N G Comprehensible and clearly defined licensing methods without royaltyperchip fees make use of our IP Cores easy and simple. SingleSite license option dedicated to small and middle sized companies, which run their business in one place. MultiSite license option dedicated to corporate customers, who operate at several locations. The licensed product can be used in selected company branches. In all cases the number of IP Core instantiations within a project and the number of manufactured chips are unlimited. The license is royaltyperchip free. There are no restrictions regaing the time of use. There are two formats of the delivered IP Core: VHDL or Verilog RTL synthesizable HDL Source code FPGA EDIF/NGO/NGD/QXP/VQM Netlist D E L I V E R A B L E S Source code: VHDL Source Code or/and VERILOG Source Code or/and Encrypted, or plain text EDIF VHDL VERILOG test bench environment ActiveHDL automatic simulation macros ModelSim automatic simulation macros Tests with reference responses Technical documentation Installation notes HDL core specification Datasheet Synthesis scripts Example application Technical support IP Core implementation support 3 months maintenance Delivery of the IP Core and documentation updates, minor and major versions changes Phone email support C O N F I G U R A T I O N The following parameters of the D16550 core can be easily adjusted to requirements of a dedicated application and technology. The configuration of the core can be effortlessly done, by changing appropriate constants in the package file. There is no need to change any parts of the code. Baud generator External RCLK source External BAUDCLK source Modem Control logic SCR Register FIFO Control logic O P T I O N A L F E A T U R E S IEEE 1284 Bidirectional Parallel Data Port Compatible with Standa Centroni Parallel Interface Support for Parallel Protocols: ECP and EPP Decompression of Run Length Encoded Data in ECP Reserve Mode Serial Ports with Infrared Data Association (IRDA) inputs and outputs A P P L I C A T I O N S Serial Data communications applications Modem interface CPU addr ale we int A P P L I C A T I O N addr latch addr(2:0) D16550 wr intr rxy txy out1 out2 clk rst baudclk rclk so si rts dtr dsr dcd cts ri temt baudclken rclken EIA Drivers Typical D16550 and processor connection is shown in the figure above. addr(2:0) wr ddis txy rxy rts cts dtr dsr dcd ri out1 out2 baudclk baudclken baudout clk rst B L O C K D I A G R A M Data Bus Buffer Modem control logic Baud Generator Receiver Control Shift Register RCVR Buffer RCVR FIFO Transmitter Control Shift Register THR Buffer THR FIFO Interrupt Controller rclk rclken si so temt intr 3

P I N S D E S C R I P T I O N PIN TYPE DESCRIPTION rst input Global reset clk input Global clock datai[7:0] input Parallel data input addr[2:0] input Address bus input Chip select input wr input Write input input Read input rclk input Receiver clock baudclk input Baud generator clock si input Serial data input cts input Clear to send input dsr input Data set ready input dcd input Data carrier detect input ri input Ring indicator input baudclken input Baud generator clock enable rclken input Receiver clock enable baudout output Baud generator output datao[7:0] output Parallel data output so output Serial data output ddis output Driver disable output txy output Transmitter ready output rxy output Receiver ready output rts output Request to send output dtr output Data terminal ready output out1 output Output 1 out2 output Output 2 intr output Interrupt request output temt output Transmitter empty Note: When RCLK and BAUDCLK pins enabled, frequency should be at least two times lower than CLK, 2*f RCLK< f CLK U N I T S S U M M A R Y Baud Generator The D16550 contains a programmable 16 bit baud generator that divides clock input by a divisor in the range between 1 and (2 16 1). The output frequency of the baud generator is 16 the baud rate. The formula for the divisor is: frequency divisor baudrate*16 Two 8bit registers, called divisor latches DLL and DLM, store the divisor in a 16bit binary format. These divisor latches must be loaded during initialization of the D16550, in oer to ensure desired operation of the baud generator. When either of the divisor latches is loaded, a 16bit baud counter is also loaded on the CLK rising edge, following the write to DLL or DLM, to prevent long counts on initial load. Data Bus Buffer The data Bus Buffer accepts inputs from the system bus and generates control signals for other D16550 functional blocks. Address bus ADDR(2:0) selects one of the registers to be read from/written into. Both, RD and WE signals, are active low and are qualified by CS; RD and WE are ignored, unless the D16550 has been selected by holding CS low. Modem Control Logic controls the interface with the MO DEM or data set (or a peripheral device emulating a MO DEM). Interrupt Controller D16550 contains fully prioritized interrupt system controller. It controls interrupt requests to the CPU and interrupt priority. Interrupt controller contains Interrupt Enable (IER) and Interrupt Identification (IIR) registers. Receiver Control Receiving starts, when the falling edge on Serial Input (SI) during IDLE State is detected. After starting, the SI input is sampled every 16 internal baud cycles, as it is shown in figure above. When the logic 1 state is detected during START bit, it means, that the False Start bit was detected and receiver is back to the IDLE state. Receiver FIFO The Rx FIFO is 16 levels deep, it receives data, until the number of bytes in the FIFO, equals the selected interrupt trigger level. At that time, if R x interrupts are enabled, the UART will issue an interrupt to the CPU. The Rx FIFO will continue to store bytes, until it holds 16 of them. It will not accept any more data, once it is full. Any more data entering the Rx shift register will set the Overrun Error flag. Transmitter Control module controls transmission of written to THR (Transmitter Holding register) character via serial output SO. The new transmission starts on the next overflow signal of internal baud generator, after writing to THR register or Transmitter FIFO. Transmission control contains THR register and transmitter shift register. Transmitter FIFO the T x portion of the UART, transmits data through SO as soon as the CPU loads a byte into the T x FIFO. The UART will prevent loads to the T x FIFO, if it currently holds 16 characters. Loading to the T x FIFO will again be enabled, as soon as the next character is transferred to the T x shift register. These capabilities account for the largely autonomous operation of the T x. The UART starts the above operations typically with a T x interrupt. 4

SDLC Synchronous Transmission FIFO Size (Bytes) Separate BAUD Clock l Soft Flow Control Xon/Xoff RTS/CTS Flow Control MODEM Control False START detection Complete status report Internal diagnostic Prioritized interrupts Break gen. and detect HalfDuplex RS485 IRDA Port 1284 Parallel Port D C D S U A R T F A M I L Y O V E R V I E W The family of DCD s UART IP Cores combines high performance, low cost and a small compact size, offering best price/performance ratio in the IP Market. DCD s Cores are designed to be used in costsensitive consumer products, such as computer peripherals, office automation, automotive control systems, security and telecommunication applications. Our Cores are written in pure VHDL/VERILOG HDL languages, which makes them technologically independent. All DCD s UART IP Cores can be fully customized accoing to the customer s needs. Design DUART D2692 2*8 D16450 * * D16550 2* 16 * * D16750 2* 64 * * * D16552 2* 16 D16752 2* 64 * * * D16950 2* 128 * D85C30 4 *Optional P E R F O R M A N C E The following table gives a survey about the Core area and performance in INTEL FPGA devices after Place Route: Device Speed grade Logic Cells Memory Bits F max ARIA GX 6 342/231 304 243 MHz ARIA V 6 330/263 304 209 MHz CYCLONE 6 465 304 193 MHz CYCLONE2 6 476 304 220 MHz CYCLONE3 6 477 304 250 MHz CYCLONE4 6 478 304 250 MHz CYCLONE5 6 328/231 304 187 MHz STRATIX 5 465 304 206 MHz STRATIX2 3 342/232 304 343 MHz STRATIX3 2 334/231 304 527 MHz STRATIX4 2 330/250 304 497 MHz STRATIX5 2 332/262 304 456 MHz STRATIX GX 5 465 304 214 MHz STRATIX2 GX 3 340/231 304 341 MHz Core performance in INTEL FPGA devices C O N T A C T Digital Core Design Headquarters: Wroclawska 94, 41902 Bytom, POLAND email: info@dcd.pl tel.: 0048 32 282 82 66 fax: 0048 32 282 74 37 Distributors: Please check: http://dcd.pl/sales 5