3.9.36 PL011_Uart

ARM PrimeCell UART(PL011). This model is written in LISA+.

PL011_Uart contains the following CADI targets:

  • ClockDivider
  • PL011_Uart

PL011_Uart contains the following MTI components:

About PL011_Uart

When the untimed_fifos parameter is false, characters of serial data are clocked to or from the SerialData port at a rate controlled by the clk_in_ref clock rate and the baud-rate-divider configuration of the UART clock. Enabling untimed_fifos permits serial data to be sent or received as fast as it can be generated or consumed. The modem control signals are still generated correctly, so the UART is not able to transmit data faster than the receiving end can handle. For example, TelnetTerminal uses the CTS signal to avoid overflowing its TCP/IP buffer.

Differences between the model and the RTL

This component does not implement the DMA functionality of the PL011 PrimeCell.

Table 3-360 Ports

Name Protocol Type Description
clk_in_ref ClockSignal Slave Clock input, typically 14.745MHz, which sets the master transmit/receive rate.
intr Signal Master Interrupt signal.
pvbus PVBus Slave Slave port for register access.
serial_out SerialData Master Serial input/output and control signals. Used to communicate with a serial device, such as a terminal.

Table 3-361 Parameters for PL011_Uart

Name Type Default value Description
baud_rate int 0x9600 Baud rate.
clock_rate int 0xe10000 Clock rate for PL011.
enable_dc4 bool 0x1 Enable DC4 commands (try echo -e "help\024" in a Linux shell in a serial console)
flow_ctrl_mask_en bool 0x0 Enable hardware flow control workaround which forcefully disables CTSen and RTSen bits in UARTCR register
in_file string "" Input file for data to be read by the UART
in_file_escape_sequence string "##" Input file escape sequence
out_file string "" Output file to hold data written by the UART (use '-' to send all output to stdout)
revision string "r1p4" Revision to simulate
shutdown_on_eot bool 0x0 Shutdown simulation when a EOT (ASCII 4) char is transmitted (useful for regression tests when semihosting is not available)
shutdown_tag string "" Shutdown simulation when a string is transmitted
uart_enable bool 0x0 Enable uart when the system starts up. (clock_rate and baud_rate are only valid when this option is enabled.)
unbuffered_output bool 0x0 Unbuffered output
untimed_fifos bool 0x1 Ignore the clock rate and transmit/receive serial data immediately
Non-ConfidentialPDF file icon PDF version100964_1110_00_en
Copyright © 2014–2020 Arm Limited or its affiliates. All rights reserved.