UG898 (V2019.2) October 30, 2019 Revision History
Total Page:16
File Type:pdf, Size:1020Kb
See all versions of this document Vivado Design Suite User Guide Embedded Processor Hardware Design UG898 (v2019.2) October 30, 2019 Revision History Revision History The following table shows the revision history for this document. Section Revision Summary 10/30/2019 Version 2019.2 General Updates • Updated for Vivado 2019.2 release • Updated for Vitis™ software platform 06/04/2019 Version 2019.1 General Updates Initial 2019.1 release. MicroBlaze Configuration Wizard: MMU Page Updated links to Cache Page. Using the MicroBlaze Configuration Window Clarified number of block RAMs in 32-bit and 64-bit modes. Trace and Profiling Additional information on Extended Profiling. UG898 (v2019.2) October 30, 2019 Send Feedback www.xilinx.com Embedded Processor Hardware Design 2 Table of Contents Revision History...............................................................................................................2 Chapter 1: Introduction..............................................................................................5 Device Tools Flow Overview....................................................................................................... 5 General Steps for Creating an Embedded Processor Design................................................ 7 Completing Connections Using Designer Assistance.............................................................9 Making Manual Connections in a Design...............................................................................15 Manually Creating and Connecting to I/O Ports...................................................................16 Enhanced Designer Assistance................................................................................................17 Platform Board Flow in IP Integrator..................................................................................... 18 Memory-Mapping in the Address Editor................................................................................19 Adding RTL to Block Design..................................................................................................... 20 Running Design Rule Checks................................................................................................... 24 Integrating a Block Design in the Top-Level Design.............................................................24 Vivado Pin Planner View of PS I/O...........................................................................................26 Vivado IDE Generated Embedded Files ................................................................................. 26 Using the Vitis software platform .......................................................................................... 27 Chapter 2: Using a Zynq UltraScale+ MPSoC Device in an Embedded Design.................................................................................................... 30 Designing Zynq UltraScale+ MPSoC Devices......................................................................... 30 Overview of Zynq UltraScale+ MPSoc Configurations.......................................................... 33 Validation IP............................................................................................................................... 56 Finishing the Design................................................................................................................. 56 Chapter 3: Using a Zynq-7000 Processor in an Embedded Design.... 58 Designing with Zynq-7000 Processors....................................................................................58 Overview of the Zynq-7000 Block Design and Configuration Window...............................62 Using the Programmable Logic (PL).......................................................................................80 Chapter 4: Using a MicroBlaze Processor in an Embedded Design.. 84 Creating a MicroBlaze Processor Design............................................................................... 85 UG898 (v2019.2) October 30, 2019 Send Feedback www.xilinx.com Embedded Processor Hardware Design 3 Using the MicroBlaze Configuration Window........................................................................87 Cross-Trigger Feature of MicroBlaze Processors................................................................ 112 Custom Logic........................................................................................................................... 116 Embedded IP Catalog............................................................................................................. 117 Completing Connections........................................................................................................118 Multiple MicroBlaze Processor Designs............................................................................... 125 Chapter 5: Designing with the Memory IP Core........................................133 Adding the Memory IP............................................................................................................133 Chapter 6: Reset and Clock Topologies in IP Integrator.......................144 MicroBlaze Design without a Memory IP Core....................................................................144 MicroBlaze Design with a Memory IP Core..........................................................................148 Zynq Design without PL Logic............................................................................................... 151 Zynq-7000 Design with PL Logic............................................................................................153 Zynq Design with a Memory IP Core in the PL.................................................................... 159 Designs with Memory IP and the Clocking Wizard............................................................. 161 Chapter 7: Using UpdateMEM to Update BIT files with MMI and ELF Data....................................................................................................................... 162 Using UpdateMEM.................................................................................................................. 163 Memory (MEM) Files............................................................................................................... 165 BRAM Memory Map Info (MMI) File..................................................................................... 166 Xilinx Parameterized Macros (XPM) Memories................................................................... 174 Appendix A: Additional Resources and Legal Notices........................... 180 Xilinx Resources.......................................................................................................................180 Solution Centers...................................................................................................................... 180 Documentation Navigator and Design Hubs...................................................................... 180 References................................................................................................................................181 Please Read: Important Legal Notices................................................................................. 182 UG898 (v2019.2) October 30, 2019 Send Feedback www.xilinx.com Embedded Processor Hardware Design 4 Chapter 1 Introduction This chapter provides an introduction to using the Xilinx® Vivado® Design Suite flow for programming an embedded design using the Zynq® UltraScale+™ MPSoC device, the Zynq®-7000 SoC device, or the MicroBlaze™ processor. Embedded systems are complex. Hardware and software portions of an embedded design are projects in themselves. Merging the two design components so that they function as one system creates additional challenges. Add an FPGA design project, and the situation can become very complicated. To simplify the design process, Xilinx provides several sets of tools with which you need to become acquainted. The following describes a few of the basic tool names and acronyms for these tools. The Vivado Integrated Design Environment (IDE) includes the IP integrator tool, which you can use to stitch together a processor-based design. This tool, combined with the Xilinx Vitis™ software platform, provide an integrated environment to design and debug microprocessor-based systems and embedded software applications. For an example of working with embedded processors, hardware and software cross-triggering, and debugging designs, see the Vivado Design Suite Tutorial: Embedded Processor Hardware Design (UG940). In this tutorial, you use the Vivado IP integrator tool to build embedded processor designs, and then debug the design with the Vitis software development platform and the Vivado Integrated Logic Analyzer (ILA). The following section provides an overview of the general hardware and software flow and the related information for generating an embedded design with a Xilinx processor. These sections apply to all Xilinx processor development. Device Tools Flow Overview The Vivado tools provide specific flows for programming, based on the processor. The Vivado IDE uses the IP integrator with graphic connectivity screens to specify the device, select peripherals, and configure hardware settings. UG898 (v2019.2) October 30, 2019 Send Feedback www.xilinx.com Embedded Processor Hardware Design 5 Chapter 1: Introduction You can use the Vivado IP integrator to capture hardware platform information in XML format applications,