10.07.2015 Views

Carbon UART PL011 Model User Guide for SoC Designer

Carbon UART PL011 Model User Guide for SoC Designer

Carbon UART PL011 Model User Guide for SoC Designer

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Carbon</strong> <strong>UART</strong> <strong>PL011</strong> <strong>Model</strong><strong>User</strong> <strong>Guide</strong> <strong>for</strong><strong>SoC</strong> <strong>Designer</strong> Plus<strong>Carbon</strong> <strong>Model</strong> Version 4.2.2For the ARM PrimeCell® <strong>UART</strong> (<strong>PL011</strong>)Silicon Version: r1p4The Trusted Path to Accuracy The in<strong>for</strong>mation contained in this document is confidential in<strong>for</strong>mation of <strong>Carbon</strong> Design Systems, Inc.,and may not be duplicated or disclosed to unauthorized and/or third parties.


CopyrightCopyright © 2003-2013 <strong>Carbon</strong> Design Systems, Inc. All rights reserved.Files, documents or portions thereof presented on the <strong>Carbon</strong> Design Systems Internet server “Publication”, permits personsto view, copy, and print the Publication subject to the following conditions:• The Publication are to be kept strictly confidential• Copies of the Publication will not be distributed• Copies of the Publication must include the <strong>Carbon</strong> Design Systems copyright notice• <strong>Carbon</strong> Design Systems logos may only be used with <strong>Carbon</strong>'s expressed written permission, including but not limitedto: linking through hyperlinks, electronic display, and print <strong>for</strong>mat.Disclaimer of WarrantyThis publication is provided “as is” without warranty of any kind, either expressed or implied, including, but not limitedto, the implied warranties of merchantability, fitness <strong>for</strong> a particular purpose, or non-infringement. <strong>Carbon</strong> Design Systemsassumes no responsibility <strong>for</strong> errors or omissions in this publication or other documents which are referenced by orlinked to this publication.References to corporations, their services and products, are provided “as is” without warranty of any kind, eitherexpressed or implied. In no event shall <strong>Carbon</strong> Design Systems be liable <strong>for</strong> any special, incidental, indirect or consequentialdamages of any kind, or any damages whatsoever, including, without limitation, those resulting from loss ofuse, data or profits, whether or not advised of the possibility of damage, and on any theory of liability, arising out of or inconnection with the use or per<strong>for</strong>mance of this in<strong>for</strong>mation.This publication may include technical or other inaccuracies or typographical errors. <strong>Carbon</strong> Design Systems may makeimprovements and/or changes in the product(s) and/or the program(s) described in this publication and in the publicationitself at any time.Trademarks© 2003-2013 <strong>Carbon</strong> Design Systems, Inc. All rights reserved. <strong>Carbon</strong> Design Systems, the <strong>Carbon</strong> Design Systemslogo, <strong>Carbon</strong> <strong>Model</strong> Studio, Replay, OnDemand, <strong>SoC</strong> <strong>Designer</strong>, Software Be<strong>for</strong>e Silicon, SOC-VSP, VSP, and TheAnswer to Validation are trademarks or registered trademarks of <strong>Carbon</strong> Design Systems, Incorporated in the UnitedStates and/or other countries.ARM, AMBA and RealView are registered trademarks of ARM Limited. AHB, APB and AXI are trademarks of ARMLimited. “ARM” is used to represent ARM Holdings plc; its operating company ARM Limited; and the regional subsidiariesARM INC.; ARM KK; ARM Korea Ltd.; ARM Taiwan; ARM France SAS; ARM Consulting (Shanghai) Co.Ltd.; ARM Belgium N.V.; ARM Embedded Technologies Pvt. Ltd.; and ARM Physical IP, Inc.Microsoft, Windows 2000, and Windows XP are trademarks or registered trademarks of Microsoft Corporation in theUnited States and/or other countries.SystemC is a trademark of the Open SystemC Initiative.All other trademarks, registered trademarks, and products referenced herein are the property of their respective owners.<strong>Carbon</strong> Design Systems, Inc. Confidential


Technical SupportIf you have questions or problems concerning <strong>Carbon</strong> software, contact Technical Support.Phone Support Hours: Monday–Friday9:00 am–5:00 pm EST<strong>Carbon</strong> Design Systems, Inc.125 Nagog ParkActon, MA 01720Voice: +1-978-264-7399Asia: +81-3-5524-1288Fax: +1-978-264-9990Email: support@carbondesignsystems.comWeb: www.carbondesignsystems.comVoice mail is available after hours. You may also access our on-line feedback <strong>for</strong>m any time from the Support page ofthe <strong>Carbon</strong> web site.Document revised September 2013.


<strong>Carbon</strong> Design Systems, Inc. Confidential


ContentsPrefaceAbout This <strong>Guide</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Chapter 1.Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> Plus<strong>PL011</strong> <strong>UART</strong> <strong>Model</strong> Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-1Fully Functional and Accurate Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-2Fully Functional and Approximate Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-2Hardware Features not Implemented . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-3Features Additional to the Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-4Differences from the ARM RVML <strong>Model</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-5Adding and Configuring the <strong>SoC</strong> <strong>Designer</strong> Plus Component . . . . . . . . . . . . . . . . . . . . . . . .1-6<strong>Carbon</strong> <strong>SoC</strong> <strong>Designer</strong> Plus Component Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-6Adding the <strong>Carbon</strong> <strong>Model</strong> to the Component Library . . . . . . . . . . . . . . . . . . . . . . . . . .1-7Adding the Component to the <strong>SoC</strong> <strong>Designer</strong> Canvas . . . . . . . . . . . . . . . . . . . . . . . . . . .1-7Available Component ESL Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-8Setting Component Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-10Debug Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-14Register In<strong>for</strong>mation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-14Available Profiling Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-17<strong>Carbon</strong> Design Systems, Inc. Confidential


2 Contents<strong>Carbon</strong> Design Systems, Inc. Confidential


PrefaceA <strong>Carbon</strong> <strong>Model</strong> component is a library developed from ARM intellectual property (IP)that is generated through <strong>Carbon</strong> <strong>Model</strong> Studio. The model then can be used within avirtual plat<strong>for</strong>m tool, <strong>for</strong> example, <strong>Carbon</strong> <strong>SoC</strong> <strong>Designer</strong> Plus.About This <strong>Guide</strong>This guide provides all the in<strong>for</strong>mation needed to configure and use the <strong>Carbon</strong> <strong>UART</strong><strong>PL011</strong> <strong>Model</strong> in <strong>Carbon</strong> <strong>SoC</strong> <strong>Designer</strong> Plus.AudienceThis guide is intended <strong>for</strong> experienced hardware and software developers who create components<strong>for</strong> use with <strong>Carbon</strong> <strong>SoC</strong> <strong>Designer</strong> Plus. You should be familiar with the followingproducts and technology:• <strong>Carbon</strong> <strong>SoC</strong> <strong>Designer</strong> Plus• Hardware design verification• Verilog or VHDL programming language<strong>Carbon</strong> Design Systems, Inc. Confidential


Chapter 1Using the <strong>Model</strong> Kit Component in<strong>SoC</strong> <strong>Designer</strong> PlusThis chapter describes the functionality of the <strong>Model</strong> component, and how to use it in <strong>Carbon</strong><strong>SoC</strong> <strong>Designer</strong> Plus. It contains the following sections:• <strong>PL011</strong> <strong>UART</strong> <strong>Model</strong> Functionality• Adding and Configuring the <strong>SoC</strong> <strong>Designer</strong> Plus Component• Available Component ESL Ports• Setting Component Parameters• Debug Features• Available Profiling Data1.1 <strong>PL011</strong> <strong>UART</strong> <strong>Model</strong> FunctionalityThe PrimeCell <strong>UART</strong> is an AMBA compliant System-on-Chip peripheral. The <strong>UART</strong> isan AMBA slave module that connects to the Advanced Peripheral Bus (APB). This modelsupports data transfer in both receive and transmit direction via a transaction port.This section provides a summary of the functionality of the model compared to that of thehardware, and the per<strong>for</strong>mance and accuracy of the model. For details of the functionalityof the hardware that the model simulates, refer to the ARM PrimeCell <strong>UART</strong> (<strong>PL011</strong>)Technical Reference Manual.• Fully Functional and Accurate Features• Fully Functional and Approximate Features• Hardware Features not Implemented• Features Additional to the Hardware• Differences from the ARM RVML <strong>Model</strong><strong>Carbon</strong> Design Systems, Inc. Confidential


<strong>PL011</strong> <strong>UART</strong> <strong>Model</strong> Functionality 1-31.1.3 Hardware Features not ImplementedThe following features of the <strong>UART</strong> <strong>PL011</strong> hardware are not implemented in the <strong>UART</strong><strong>PL011</strong> model:• Standard asynchronous communication bits (start, stop, and parity) are not supported• False start bit detection is not supported• Line break generation and detection are not supported• Using different-frequency clocks <strong>for</strong> <strong>UART</strong>CLK and clk-in is not supported• The modem control functions CTS, DCD, DSR, RTS, DTR, and RI are not supported• Programmable serial interface– data widths of 5, 6, 7, or 8 bits are not supported– even, odd, stick, or no-priority bit generation and diction are not supported– 1 or 2 stop bit generation is not supported• IrDA SIR ENDEC block is not supported.• Internal nominal clock frequency to generate low-power mode shorter bit duration isnot supported.• <strong>UART</strong>MSINTR does not support changes on the RI, CTS, DCD, or DSR modem statuslines.• <strong>UART</strong>EINTR – <strong>UART</strong> error interrupt does not support framing, parity, and breakerror interrupts.• The following registers are not available to be read / written via debug transactions —<strong>for</strong> example, in the <strong>SoC</strong> <strong>Designer</strong> Plus Registers window, or by accessing themdirectly from RealView Debugger:– Data register; <strong>UART</strong>DR (bits 8:15)– Receive status/error clear register; <strong>UART</strong>RSR/<strong>UART</strong>ECR (bits 0:2)– Flag register; <strong>UART</strong>FR (bits 8, 0:3)– IrDA low-power counter register; <strong>UART</strong>ILPR (all bits)– Line control register; <strong>UART</strong>LCR_H (bits 0:3, 5:7)– Control register; <strong>UART</strong>CR (bits 1, 2, 10:15)– Interrupt mask set/clear register; <strong>UART</strong>IMSC (bits 0:3, 7:9)– Raw interrupt status register; <strong>UART</strong>RIS (bits 0:3, 7:9)– Masked interrupt status register; <strong>UART</strong>MIS (bits 0:3, 7:9)– Interrupt clear register; <strong>UART</strong>ICR (bits 0:3, 7:9)– DMA control register; <strong>UART</strong>DMACR (all bits)The functionality of these registers, however, does exist and can be accessed by softwarerunning on the virtual plat<strong>for</strong>m.<strong>Carbon</strong> Design Systems, Inc. Confidential


1-4 Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> Plus1.1.4 Features Additional to the HardwareThe following features are implemented in the <strong>UART</strong> <strong>PL011</strong> model to enhance usability;they do not exist in the <strong>UART</strong> <strong>PL011</strong> hardware:• Immediate <strong>UART</strong>LCR register updates.According to the ARM PrimeCell® <strong>UART</strong> (<strong>PL011</strong>) Technical Reference Manual, thefollowing registers <strong>for</strong>m a single 30-bit wide register (<strong>UART</strong>LCR):– <strong>UART</strong>LCR_H– <strong>UART</strong>IBRD– <strong>UART</strong>FBRD<strong>UART</strong>LCR is updated on a single write strobe generated by a <strong>UART</strong>LCR_H write.So, to internally update the contents of <strong>UART</strong>IBRD or <strong>UART</strong>FBRD, a <strong>UART</strong>LCR_Hwrite must always be per<strong>for</strong>med at the end.The <strong>Carbon</strong> model implements CADI access to these registers such that they do notrequire execution of a separate write to <strong>UART</strong>LCR_H to internally update the contentsof the <strong>UART</strong>LCR register.CADI access to the registers includes access via:– the View Registers window in <strong>SoC</strong> <strong>Designer</strong> Plus– CADI API access directly to the register (CADIRegWrite)– CADI API access via a memory mapped address (CADIMemWrite)All of these accesses update the appropriate bits of the 30-bit <strong>UART</strong>LCR registerimmediately.In addition, a CADI write to <strong>UART</strong>LCR_H also generates the "strobe generated by a<strong>UART</strong>CR_H write" that is referred to in the TRM.The <strong>Carbon</strong> model implementation provides a convenient interface to the registerview in that if you write to one of these registers, that value is immediately storedinternally in the <strong>UART</strong>LCR.• Rx/Tx FIFO-related pseudo registers display.You can view the Rx/Tx FIFO contents, size of FIFO, base pointer of FIFO and tippointer of FIFO in the “Transmit FIFO” and “Receive FIFO” register groups of theRegister Window. All of these registers are pseudo registers, <strong>for</strong> in<strong>for</strong>mation only, andshould not be modified. Sixteen FIFO content registers are displayed.<strong>Carbon</strong> Design Systems, Inc. Confidential


<strong>PL011</strong> <strong>UART</strong> <strong>Model</strong> Functionality 1-51.1.5 Differences from the ARM RVML <strong>Model</strong>The following differences exist between the <strong>Carbon</strong> <strong>Model</strong> and the older ARM®RealView® <strong>Model</strong> Library model.• The Direct Memory Access (DMA) ports are available: <strong>UART</strong>TXDMASREQ,<strong>UART</strong>TXDMABREQ, <strong>UART</strong>TXDMACLR, <strong>UART</strong>RXDMASREQ, <strong>UART</strong>RXDMA-BREQ, and <strong>UART</strong>RXDMACLR• The RXD and TXD ports are 1-bit, not 8-bit.• The reset port is not available on the component. The component reset ports have beenassociated with a reset generator. The reset is low <strong>for</strong> 15 cycles, then high <strong>for</strong> 10cycles.• The output from the <strong>UART</strong>, even when using Pseudo IO, is controlled by the baud ratethat you set. This is not the case <strong>for</strong> the RVML version, which set its own baud rate,independent of the baud rate set by the user when Pseudo IO was enabled.• The Debug registers DbgRemoveDataOnRead and MxDIRemoveDataOnRead are notsupported.• The following component parameters are not available in the <strong>Carbon</strong> <strong>Model</strong>: APBRegion Name, FIFO Depth, AutoStart Terminal, Flush input on enable, Mask,RxPeripNum, TxPeripNum, Wait States.<strong>Carbon</strong> Design Systems, Inc. Confidential


Adding and Configuring the <strong>SoC</strong> <strong>Designer</strong> Plus Component 1-71.2.2 Adding the <strong>Carbon</strong> <strong>Model</strong> to the Component LibraryThe compiled <strong>Carbon</strong> <strong>Model</strong> component is provided as a configuration file (.conf). Tomake the component available in the Component Window in <strong>SoC</strong> <strong>Designer</strong> Canvas, per<strong>for</strong>mthe following steps:1. Launch <strong>SoC</strong> <strong>Designer</strong> Canvas.2. From the File menu, select Preferences.3. Click on Component Library in the list on the left.4. Under the Additional Component Configuration Files window, click Add.5. Browse to the location where the <strong>SoC</strong> <strong>Designer</strong> Plus model is located and select thecomponent configuration file:– maxlib.lib.conf (<strong>for</strong> Linux)– maxlib.lib.windows.conf (<strong>for</strong> Windows)6. Click OK.7. To save the preferences permanently, click the OK & Save button.The component is now available from the <strong>SoC</strong> <strong>Designer</strong> Plus Component Window.1.2.3 Adding the Component to the <strong>SoC</strong> <strong>Designer</strong> CanvasLocate the component in the Component Window and drag it out to the Canvas. It willappear as shown in Figure 1-1.Figure 1-1 PrimeCell <strong>UART</strong> (<strong>PL011</strong>) Component in <strong>SoC</strong> <strong>Designer</strong> Plus<strong>Carbon</strong> Design Systems, Inc. Confidential


1-8 Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> Plus1.3 Available Component ESL PortsTable 1-2 describes the ESL ports that are exposed in <strong>SoC</strong> <strong>Designer</strong> Plus Plus. See theARM PrimeCell® <strong>UART</strong> (<strong>PL011</strong>) Technical Reference Manual <strong>for</strong> more in<strong>for</strong>mation.Table 1-2 ESL Component PortsESL Port Description Direction TypePRESETn Bus reset signal, active LOW. Input Reset controllerRXD1-bit port <strong>for</strong> receiving data from signal master Input Signal Slaveport. The data received via this port is pushedinto Rx FIFO <strong>UART</strong>.<strong>UART</strong>CLKClock input <strong>for</strong> <strong>UART</strong>.Input Clock SlaveNote: This clock input must be connected to thesame clock that is used <strong>for</strong> clk-in. If clkinis left unconnected then this clockinput must also be unconnected.<strong>UART</strong>RXDMACLR Receive DMA Clear Input Signal Slave<strong>UART</strong>TXDMACLR Transmit DMA Clear Input Signal SlaveapbAllows the user to program the memory-mappedregisters. This interface is expected to be connectedto an APB-compliant device. This interfaceis clocked by the clk-in port.Input TransactionSlaven<strong>UART</strong>RSTclk-inTXD<strong>UART</strong> reset signal to <strong>UART</strong>CLK clock domain,active LOW.The reset controller must use PRESETn to assertn<strong>UART</strong>RST asynchronously but negate it synchronouslywith <strong>UART</strong>CLK.Input clock port. This component and the APBport are clocked at the frequency of the clockconnected to this port. If the clk-in port is notconnected, clock frequency is taken from <strong>SoC</strong><strong>Designer</strong> Plus System Properties.Note: This clock input must be connected to thesame clock that is used <strong>for</strong> <strong>UART</strong>CLK, or if<strong>UART</strong>CLK is unconnected then clk-in must alsobe unconnected.1-bit port <strong>for</strong> transmitting data to connected signalslave port. The data transmitted via this portis popped out of Tx FIFO of <strong>UART</strong>.InputInputOutputReset TransactorClock SlaveSignal Master<strong>UART</strong>RXDMABREQ Receive DMA Burst Request Output Signal Master<strong>UART</strong>RXDMASREQ Receive DMA Single Request Output Signal Master<strong>UART</strong>TXDMABREQ Transmit DMA Burst Request Output Signal Master<strong>UART</strong>TXDMASREQ Transmit DMA Single Request Output Signal Master<strong>Carbon</strong> Design Systems, Inc. Confidential


Available Component ESL Ports 1-9Table 1-2 ESL Component Ports (Continued)ESL Port Description Direction TypeintpProvides interrupts to the interrupt controller.The value contains the interrupt number andextended value (interrupt low or high). You canspecify unique interrupt numbers <strong>for</strong> each interruptsupported via parameters – see Table 1-3on page 1-10 <strong>for</strong> more details.OutputInterrupt MasternSIROUTTransmitted Serial Data Output, active LOW. Inthe idle state, this signal remains LOW (themarking state).OutputSignal MasterWhen this signal is HIGH, an infrared light pulseis generated that represents a logic 0 (spacingstate).n<strong>UART</strong>DTRData Terminal Ready modem status output,active LOW. The reset value is 0.OutputSignal Mastern<strong>UART</strong>RTSRequest to Send modem status output, activeLOW. The reset value is 0.OutputSignal Mastern<strong>UART</strong>Out1Out1 modem status output, active LOW. Thereset value is 0.OutputSignal Mastern<strong>UART</strong>Out2Out2 modem status output, active LOW. Thereset value is 0.OutputSignal MasterAll pins that are not listed in this table have been either tied or disconnected <strong>for</strong> per<strong>for</strong>mancereasons.<strong>Carbon</strong> Design Systems, Inc. Confidential


1-10 Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> Plus1.4 Setting Component ParametersYou can change the settings of all the component parameters in <strong>SoC</strong> <strong>Designer</strong> Canvas, andof some of the parameters in <strong>SoC</strong> <strong>Designer</strong> Simulator. To modify the <strong>Carbon</strong> component’sparameters:1. In the Canvas, right-click on the <strong>Carbon</strong> component and select Edit Parameters....You can also double-click the component. The Edit Parameters dialog box appears.Figure 1-2 Component Parameters Dialog Box2. In the Parameters window, double-click the Value field of the parameter that youwant to modify.3. If it is a text field, type a new value in the Value field. If a menu choice is offered,select the desired option. The parameters are described in Table 1-3.Table 1-3 Component ParametersName Description Allowed Values Default Value Runtime 1Align Wave<strong>for</strong>msapb Base AddressWhen set to true, wave<strong>for</strong>ms dumpedfrom the <strong>Carbon</strong> component are alignedwith the <strong>SoC</strong> <strong>Designer</strong> Plus simulationtime. The reset sequence, however, is notincluded in the dumped data.When set to false, the reset sequence isdumped to the wave<strong>for</strong>m data, however,the <strong>Carbon</strong> component time is notaligned with the <strong>SoC</strong> <strong>Designer</strong> Plustime.Base address <strong>for</strong> APB region accessedvia APB slave port of <strong>UART</strong>.true, false true No0x00000000 -0xFFFFFFFF0x0No<strong>Carbon</strong> Design Systems, Inc. Confidential


Setting Component Parameters 1-11apb EnableDebug MessagesEnable or disable debug messages. true, false false Yesapb Size Address range size. 0x00000000 -0xFFFFFFFF<strong>Carbon</strong> DB PathClone Output toConsole?Dump Wave<strong>for</strong>msEnable DebugMessagesintp int_1 idintp int_2 idintp int_3 idintp int_4 idintp int_5 idintp int_6 idTable 1-3 Component Parameters (Continued)Name Description Allowed Values Default Value Runtime 1Sets the directory path to the <strong>Carbon</strong>database file.The output of TXD port or file or Socketis also displayed on <strong>SoC</strong> <strong>Designer</strong> Plusconsole window.Whether <strong>SoC</strong> <strong>Designer</strong> Plus dumpswave<strong>for</strong>ms <strong>for</strong> this component.0x10000000NoNot Used empty Notrue, false false Notrue, false false YesEnable or disable debug messages. true, false false YesThe Intr value. It is the combined interruptof Rx_int, Tx_int, Receive timeoutinterrupt, and Overflow error interrupt.Always comes on “Intp” signal masterport after the individual interrupt hascome. Both come in same simulationcycle. Associated with <strong>UART</strong>INTR.The Rx_int number. Rx FIFO tide interruptnumber. Associated with <strong>UART</strong>RX-INTR.The Tx_int number. Tx FIFO tide interruptnumber. Associated with <strong>UART</strong>TX-INTR.The Receive Timeout Interrupt Number.Interrupt number <strong>for</strong> receive timeoutinterrupt. Associated with UAR-TRTINTR.The Overflow Error Interrupt Number.Interrupt number <strong>for</strong> overflow error –which could occur on Rx FIFO. Associatedwith <strong>UART</strong>EINTR.Interrupt controller <strong>UART</strong> modem statusinterrupt. Associated with <strong>UART</strong>M-SINTR.Integer within arange. 2-1 indicates interruptis disabled.Integer within arange. 2-1 indicates interruptis disabled.Integer within arange. 2-1 indicates interruptis disabled.Integer within arange. 2-1 indicates interruptis disabled.Integer within arange. 2-1 indicates interruptis disabled.Integer within arange. 2-1 indicates interruptis disabled.1 Yes2 Yes3 Yes4 Yes5 Yes6 Yes<strong>Carbon</strong> Design Systems, Inc. Confidential


1-12 Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> PlusIPFileNameOPFileNamePseudo I/O? 3Raw SocketData? 3TCP SocketNumber 4Use ExternalLoopback?Use Sockets? 3Input file name with path to be used <strong>for</strong>receiving data. This file name takeseffect only when Pseudo I/O? is true andUseSockets? is false (see Table 1-4).Output file name with path which will beused to transmit data to. This file namecomes into effect only when Pseudo I/O?is true and UseSockets is false.Used to specify that RXD/TXD portswill not be used <strong>for</strong> receive or transmit.Instead either File IO <strong>for</strong> Socket IO willbe used.When set to true, Telnet terminal willnot automatically open. Instead the userneeds to create a server or a client tosend data to <strong>UART</strong> or receive data from<strong>UART</strong>.TCP port number to use <strong>for</strong> Socket IO.Note: When using multiple instances ofthe <strong>PL011</strong> model, each model’s TCPPort Number must be unique. DuplicateTCP port numbers result in data contentionand errors such as “Couldn’t initializesocket.”Used to loop back data from transmit toreceive of the same <strong>UART</strong>. File, Socket,or RXD/TXD ports are not used whenset to true.When both Use Sockets? = true andPseudo I/O? = true — Socket IO is used<strong>for</strong> Rx/Tx.When false — File IO is used <strong>for</strong> Rx/Tx.Any valid filename present inhost OS with pathabsolute pathAny valid filename present inhost OS with pathabsolute pathINPUTFILEOUTPUTFILENoNotrue, false true Notrue, false false No0x400 - 0xFFFF 0 Notrue, false false Notrue, false false NoWave<strong>for</strong>m File 5 Name of the wave<strong>for</strong>m file. string pl011.fsdb NoWave<strong>for</strong>m The <strong>for</strong>mat of the wave<strong>for</strong>m dump file. VCD, FSDB VCD NoFormatWave<strong>for</strong>mTimescaleTable 1-3 Component Parameters (Continued)Name Description Allowed Values Default Value Runtime 1Sets the timescale to be used in thewave<strong>for</strong>m.Many values indrop-down1 ns No1. Yes means the parameter can be dynamically changed during simulation, No means it can be changed onlywhen building the system, Reset means it can be changed during simulation, but its new value will be takeninto account only at the next reset.2. Range depends on the number of interrupts of the destination component.3. See Table 1-4 <strong>for</strong> in<strong>for</strong>mation about how this parameter interacts with others.4. At its default setting (0), the model automatically selects an available TCP port.<strong>Carbon</strong> Design Systems, Inc. Confidential


1-14 Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> Plus1.5 Debug FeaturesThe <strong>UART</strong> <strong>PL011</strong> model has a debug interface (CADI) that allows the user to view,manipulate, and control the registers of <strong>UART</strong>. The views shown in this section are <strong>for</strong> the<strong>SoC</strong> <strong>Designer</strong> Simulator.Figure 1-3 Registers View1.5.1 Register In<strong>for</strong>mationThis section lists the register views available <strong>for</strong> the <strong>UART</strong> <strong>PL011</strong> model in the <strong>SoC</strong><strong>Designer</strong> Simulator. The available groups are:• General Registers• Peripheral ID Registers• Primecell ID Registers• Transmit FIFO Registers• Receive FIFO RegistersSee the ARM PrimeCell <strong>UART</strong> (<strong>PL011</strong>) Technical Reference Manual <strong>for</strong> detailed descriptionsof these registers.Note:The contents of the “Transmit FIFO” and “Receive FIFO” Register tabs arepseudo registers and are <strong>for</strong> in<strong>for</strong>mation only - they should not be modified.<strong>Carbon</strong> Design Systems, Inc. Confidential


Debug Features 1-151.5.1.1 General RegistersTable 1-5 shows the General registers.Table 1-5 General Registers SummaryBase Offset Name Description Type Reset Value0x00 <strong>UART</strong>DR Data Register RW 0x00000x04<strong>UART</strong>RSR_ Receive Status Register/Error Clear RW 0x00000000<strong>UART</strong>ECR Register0x18 <strong>UART</strong>FR Flag Register RO 0x1970x20 <strong>UART</strong>ILPR IrDA Low-Power Counter Register RW 0x000x24 <strong>UART</strong>IBRD Integer Baud Rate Register RW 0x000000000x28 <strong>UART</strong>FBRD Fractional Baud Rate Register RW 0x000x2C <strong>UART</strong>LCR_H Line Control Register RW 0x000x30 <strong>UART</strong>CR 1 Control Register RW 0x03000x34 <strong>UART</strong>IFLS Interrupt FIFO Level Select Register RW 0x120x38 <strong>UART</strong>IMSC Interrupt Mask Set/Clear Register RW 0x0000x3C <strong>UART</strong>RIS Raw Interrupt Status Register RO 0x0000x40 <strong>UART</strong>MIS Masked Interrupt Status Register RO 0x0000x44 <strong>UART</strong>ICR Interrupt Clear Register WO 0x0000x48 <strong>UART</strong>DMACR DMA Control Register RW 0x01. If you set the <strong>UART</strong> control register to Receive Enable, and the Pseudo I/O? parameter is set to True,the <strong>UART</strong>CR register setting does not take effect. This approach prevents data contention to the<strong>UART</strong> FIFO memory buffers.1.5.1.2 Peripheral ID RegistersTable 1-6 shows the Peripheral ID registers.Table 1-6 Peripheral ID Registers SummaryBase Offset Name Description Type Reset Value0xFE0 <strong>UART</strong>PeriphID0 <strong>UART</strong>PeriphID0 Register. Always setto reset value.0xFE4 <strong>UART</strong>PeriphID1 <strong>UART</strong>PeriphID1 Register. Always setto reset value.0xFE8 <strong>UART</strong>PeriphID2 <strong>UART</strong>PeriphID2 Register. Always setto reset value.0xFEC <strong>UART</strong>PeriphID3 <strong>UART</strong>PeriphID3 Register. Always setto reset value.RO 0x0011RO 0x0010RO 0x00_4 1RO 0x00001. The value depends on the revision of the <strong>UART</strong>. For version r1p4 the value is 2, e.g. 0x24. For versionr1p5 the value is 3, e.g. 0x34. See the TRM <strong>for</strong> more in<strong>for</strong>mation.<strong>Carbon</strong> Design Systems, Inc. Confidential


1-16 Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> Plus1.5.1.3 Primecell ID RegistersTable 1-7 shows the Primecell ID registers.Table 1-7 Primecell ID Registers SummaryBase Offset Name Description Type Reset Value0xFF0 <strong>UART</strong>PCellID0 <strong>UART</strong>PCellID0 Register. Always setto reset value.0xFF4 <strong>UART</strong>OCellID1 <strong>UART</strong>PCellID1 Register. Always setto reset value.0xFF8 <strong>UART</strong>PCellID2 <strong>UART</strong>PCellID2 Register. Always setto reset value.0xFFC <strong>UART</strong>PCellID3 <strong>UART</strong>PCellID3 Register. Always setto reset value.RORORORO0x000d0x00f00x00050x00b11.5.1.4 Transmit FIFO RegistersTable 1-8 shows the Transmit FIFO registersTable 1-8 Transmit FIFO Registers SummaryName Description TypeTxFIFOTip Register being transferred ROTxFIFOBase Last register written ROTxFIFOSize Difference between Tip and Base ROTxFIFOElement0-15 Transmit FIFOs RO1.5.1.5 Receive FIFO RegistersTable 1-9 shows the Receive FIFO registersTable 1-9 Receive FIFO Registers SummaryName Description TypeRxFIFOTip Register being received RORxFIFOBase Last register read RORxFIFOSize Difference between Tip and Base RORxFIFOElement0-15 Receive FIFOs RO<strong>Carbon</strong> Design Systems, Inc. Confidential


Available Profiling Data 1-171.6 Available Profiling DataThe <strong>UART</strong> <strong>PL011</strong> component has no profiling capabilities.<strong>Carbon</strong> Design Systems, Inc. Confidential


1-18 Using the <strong>Model</strong> Kit Component in <strong>SoC</strong> <strong>Designer</strong> Plus<strong>Carbon</strong> Design Systems, Inc. Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!