Lattice Radiant Software 1.1 Help
Total Page:16
File Type:pdf, Size:1020Kb
Lattice Radiant Software 1.1 Help March 29, 2019 Copyright Copyright © 2019 Lattice Semiconductor Corporation. All rights reserved. This document may not, in whole or part, be reproduced, modified, distributed, or publicly displayed without prior written consent from Lattice Semiconductor Corporation (“Lattice”). Trademarks All Lattice trademarks are as listed at www.latticesemi.com/legal. Synopsys and Synplify Pro are trademarks of Synopsys, Inc. Aldec and Active-HDL are trademarks of Aldec, Inc. All other trademarks are the property of their respective owners. Disclaimers NO WARRANTIES: THE INFORMATION PROVIDED IN THIS DOCUMENT IS “AS IS” WITHOUT ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND INCLUDING WARRANTIES OF ACCURACY, COMPLETENESS, MERCHANTABILITY, NONINFRINGEMENT OF INTELLECTUAL PROPERTY, OR FITNESS FOR ANY PARTICULAR PURPOSE. IN NO EVENT WILL LATTICE OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER (WHETHER DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL, INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OF OR INABILITY TO USE THE INFORMATION PROVIDED IN THIS DOCUMENT, EVEN IF LATTICE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME JURISDICTIONS PROHIBIT THE EXCLUSION OR LIMITATION OF CERTAIN LIABILITY, SOME OF THE ABOVE LIMITATIONS MAY NOT APPLY TO YOU. Lattice may make changes to these materials, specifications, or information, or to the products described herein, at any time without notice. Lattice makes no commitment to update this documentation. Lattice reserves the right to discontinue any product or service without notice and assumes no obligation to correct any errors contained herein or to advise any user of this document of any correction if such be made. Lattice recommends its customers obtain the latest version of the relevant information to establish that the information being relied upon is current and before ordering any products. Lattice Radiant Software 1.1 Help 2 Type Conventions Used in This Document Convention Meaning or Use Bold Items in the user interface that you select or click. Text that you type into the user interface. <Italic> Variables in commands, code syntax, and path names. Ctrl+L Press the two keys at the same time. Courier Code examples. Messages, reports, and prompts from the software. ... Omitted material in a line of code. Omitted lines in code and report examples. [ ] Optional items in syntax descriptions. In bus specifications, the brackets are required. ( ) Grouped items in syntax descriptions. { } Repeatable items in syntax descriptions. | A choice between items in syntax descriptions. Lattice Radiant Software 1.1 Help 3 Contents Chapter 1 Getting Started with Lattice Radiant Software 8 Tutorials 8 User Guides 9 Getting Help 9 Copyright, Trademarks, and Disclaimers 12 Chapter 2 Managing Projects 1 Running the Radiant Software 2 Creating a New Project 3 Modifying a Project 5 Importing Lattice Diamond Projects 5 Targeting a Device 6 Viewing Project Properties 6 Saving Project Files 7 Managing Project Sources 8 Working with Implementations 19 Using Strategies 21 Analyzing a Design 26 Running Processes 40 Clearing Tool Memory 44 Setting Options for Synthesis and Simulation 45 Finding Results 51 Viewing Logs and Reports 52 Setting Tool and Environment Options 57 Chapter 3 Entering the Design 59 HDL Design Entry 60 Lattice Radiant Software 1.1 Help 4 CONTENTS Packaging IP Using Radiant IP Packager 85 Designing with Soft IP, Modules, and PMI 98 Chapter 4 Securing the Design 106 HDL File Encryption Steps 108 Synthesizing Encrypted IP 111 Cross-probing in Encrypted Design 112 Secure Objects in the Design 112 Chapter 5 Simulating the Design 123 Simulation in the Radiant Software 123 Timing Simulation 127 Third-Party Simulators 128 Chapter 6 Applying Design Constraints 143 Multiple Entry Constraint Flow 143 Understanding Implications of Radiant Software Constraint Flows 145 Timing and Physical Constraints 147 Migrating from Former Lattice Diamond Preferences 148 Using Radiant Software Pre-Synthesis Constraints 150 Using Radiant Software Tools 155 Applying Radiant Software Physical Constraints 176 Checking Design Rules 187 Chapter 7 Implementing the Design 189 Synthesizing the Design 189 Mapping 196 Place and Route 203 Bit Generation 218 Chapter 8 Analyzing Static Timing 222 Static Timing Analysis Tools 222 Strategies for Timing Analysis 223 Running Timing Analysis 223 Using Timing Analysis View 240 Chapter 9 Analyzing Power Consumption 248 Starting Power Calculator from the Radiant Software 249 Starting Power Calculator as a Stand-Alone Tool 249 Running Power Calculator from the Tcl Console 251 Power Analysis Design Flow 251 Inputs 251 Outputs 252 Static and Dynamic Power Consumption 253 Activity Factor Calculation 253 Lattice Radiant Software 1.1 Help 5 CONTENTS Power Calculator Window Features 253 Working with Power Calculator Files 259 Entering Data 266 Reverting to Calculation Mode 270 Changing the Global Default Activity Factor 270 Importing a Value Change Dump (.vcd) File 271 Changing the Global Default Frequency Setting 271 Estimating Resource Usage 273 Estimating Routing Resource Usage 273 Controlling Operating Temperature 274 Viewing and Printing Results 278 Chapter 10 Programming the FPGA 286 File Formats 287 SPI Flash Support 287 Using the Radiant Software Programmer 299 Programmer Options 317 Programming and Configuring iCE40 Devices with Programmer 325 Deploying the Design with the Deployment Tool 333 Debugging SVF, STAPL, and VME Files 341 Download Debugger Options 350 Using Programming File Utility 354 Programming File Utility Options 359 Chapter 11 Testing and Debugging On-Chip 361 About Reveal Logic Analysis 361 Creating Reveal Modules 363 Performing Logic Analysis 388 Chapter 12 Strategy Reference Guide 413 Synplify Pro Options 417 LSE Options 422 Post-Synthesis Options 428 Post-Synthesis Timing Analysis Options 428 Map Design Options 429 Map Timing Analysis Options 430 Place & Route Design Options 430 Place & Route Timing Analysis Options 433 Timing Simulation Options 434 Bitstream Options 435 Chapter 13 Constraints Reference Guide 437 HDL Attributes 438 Lattice Synthesis Engine Constraints 450 Lattice Radiant Software 1.1 Help 6 CONTENTS Chapter 14 Lattice Module Reference Guide 517 Finding Modules in This Guide 517 Chapter 15 FPGA Libraries Reference Guide 520 Primitive Library - iCE40 UltraPlus 522 Alphanumeric Primitives List 527 DSP Inference Guide 587 Synthesis Attributes 589 Chapter 15 Command Line Reference Guide 591 Command Line Program Overview 591 Command Line Basics 593 Command Line Tool Usage 598 Chapter 16 Tcl Command Reference Guide 641 Running the Tcl Console 642 Accessing Command Help in the Tcl Console 644 Creating and Running Custom Tcl Scripts 644 Running Tcl Scripts When Launching the Radiant Software 647 Radiant Software Tool Tcl Command Syntax 648 Revision History 675 Lattice Radiant Software 1.1 Help 7 Chapter 1 Getting Started with Lattice Radiant Software Lattice Radiant™ software is the complete design environment for Lattice Semiconductor Field Programmable Gate Arrays (FPGAs). The software includes a comprehensive set of tools for all design tasks, including project management, design entry, simulation, synthesis, place and route, in-system logic analysis and more. To help you experiment further, example projects are available. These examples are designed to illustrate different aspects of designing with Radiant software. To see the examples, click the (Open Example) button, or choose File > Open > Design Example. Then open an example folder and open the example’s .rdf file. (An .rdf file defines a design project for Radiant software.) The rest of the Help system provides complete instructions for the different stages of the Radiant software design flow and extensive reference material. See Also Lattice on the Web Lattice Semiconductor Answer Database Lattice Solutions Intellectual Property Tutorials To quickly get some hands-on experience, try the following: Lattice Radiant Software Tutorial Lattice Radiant Software 1.1 Help 8 GETTING STARTED WITH LATTICE RADIANT SOFTWARE : User Guides User Guides To learn more about Radiant software, see the following User Guides and Reference Manuals: Lattice Radiant Software 1.1 Release Notes Lattice Radiant Software User Guide Lattice Radiant Software Guide for Lattice Diamond Users Migrating iCEcube2 iCE40 UltraPlus Designs to Lattice Radiant Software Reveal Troubleshooting Guide for Lattice Radiant Software Lattice Radiant Software 1.1 Help (HTML) Lattice Radiant Software 1.1 Help (PDF) Lattice Radiant Software 1.1 Installation Guide for Windows Lattice Radiant Software 1.1 Installation Guide for Linux Active-HDL On-line Documentation (Windows only) Synopsys Synplify Pro for Lattice User Guide Synopsys Synplify Pro for Lattice Reference Manual Synopsys Synplify Pro for Lattice Language Support Reference Manual Getting Help For almost all questions, the place to start is this Help. It describes the FPGA design flow using Radiant software, the libraries of logic design elements, and the details of the Radiant software design tools. The Help also provides easy access to many other information sources. To make the most effective use of the Help, please review this section. Opening the Help The Help can be opened in several ways: In Windows, choose Start > Programs > Lattice Radiant > Accessories > Radiant Help. In the main window, choose Help > Radiant Help. To go directly