Active-HDL LE Tutorial

Active-HDL LE Tutorial

Active-HDL LE Tutorial Lattice Semiconductor Corporation 5555 NE Moore Court Hillsboro, OR 97124 (503) 268-8000 April 2008 Copyright Copyright © 2008 Lattice Semiconductor Corporation. This document may not, in whole or part, be copied, photocopied, reproduced, translated, or reduced to any electronic medium or machine- readable form without prior written consent from Lattice Semiconductor Corporation. Trademarks Lattice Semiconductor Corporation, L Lattice Semiconductor Corporation (logo), L (stylized), L (design), Lattice (design), LSC, E2CMOS, Extreme Performance, FlashBAK, flexiFlash, flexiMAC, flexiPCS, FreedomChip, GAL, GDX, Generic Array Logic, HDL Explorer, IPexpress, ISP, ispATE, ispClock, ispDOWNLOAD, ispGAL, ispGDS, ispGDX, ispGDXV, ispGDX2, ispGENERATOR, ispJTAG, ispLEVER, ispLeverCORE, ispLSI, ispMACH, ispPAC, ispTRACY, ispTURBO, ispVIRTUAL MACHINE, ispVM, ispXP, ispXPGA, ispXPLD, LatticeEC, LatticeECP, LatticeECP-DSP, LatticeECP2, LatticeECP2M, LatticeMico8, LatticeMico32, LatticeSC, LatticeSCM, LatticeXP, LatticeXP2, MACH, MachXO, MACO, ORCA, PAC, PAC-Designer, PAL, Performance Analyst, PURESPEED, Reveal, Silicon Forest, Speedlocked, Speed Locking, SuperBIG, SuperCOOL, SuperFAST, SuperWIDE, sysCLOCK, sysCONFIG, sysDSP, sysHSI, sysI/O, sysMEM, The Simple Machine for Complex Design, TransFR, UltraMOS, and specific product designations are either registered trademarks or trademarks of Lattice Semiconductor Corporation or its subsidiaries in the United States and/or other countries. ISP, Bringing the Best Together, and More of the Best are service marks of Lattice Semiconductor Corporation. HyperTransport is a licensed trademark of the HyperTransport Technology Consortium in the U.S. and other jurisdictions. Other product names used in this publication are for identification purposes only and may be trademarks of their respective companies. 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 SEMICONDUCTOR CORPORATION (LSC) 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 LSC 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. LSC may make changes to these materials, specifications, or information, or to the products described herein, at any time without notice. LSC makes no commitment to update this documentation. LSC reserves the right to discontinue any product or service without notice and assumes no obligation Active-HDL LE Tutorial ii to correct any errors contained herein or to advise any user of this document of any correction if such be made. LSC recommends its customers obtain the latest version of the relevant information to establish, before ordering, that the information being relied upon is current. 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. Active-HDL LE Tutorial iii Active-HDL LE Tutorial iv Contents Active-HDL LE Tutorial 1 Learning Objectives 1 Time to Complete This Tutorial 2 System Requirements 2 Accessing Online Help 3 About the Tutorial Design 3 About Lattice Edition (LE) 3 Task 1: Setting Up Project Navigator to Start Active-HDL 4 Task 2: Create a New Project 6 Task 3: Functional Simulation 8 Task 4: Browsing the Design 11 Task 5: Source-Level Debugging 12 Controlling the Simulation with a Code Breakpoint 12 Controlling the Simulation with a Signal Breakpoint 14 Viewing Instantaneous States 16 Task 6: Waveform Analysis 17 Adding Port and Signal Objects 17 Adjusting the Waveform View 18 Measuring the Time Between Waveform Events 20 Task 7: Scripting a Simulation 22 Task 8: Interactive Simulation 24 Running Active-HDL LE in Interactive Mode 24 Examining HDL Compiler Options 29 Compiling Design Source Files 30 Summary 32 Glossary 33 Recommended References 33 Active-HDL LE Tutorial 1 Contents Active-HDL LE Tutorial 2 Active-HDL LE Tutorial This tutorial leads you through a typical simulation scenario using Active-HDL Lattice Edition (Active-HDL LE) as the simulation environment for ispLEVER. The tutorial design models a project using both VHDL and Verilog HDL blocks. It shows you how to set up ispLEVER and Active-HDL LE so you can use them interactively to manage a simulation run, use basic simulation and HDL debugging features, perform waveform analysis, and write scripts. Although this tutorial emphasizes the feature set provided with Active-HDL LE, you can use all procedures described with more advanced versions of the Aldec Active-HDL product line. Learning Objectives When you have completed this tutorial, you should be able to do the following: Configure the ispLEVER Project Navigator to use Active-HDL LE as the default simulator. Execute simulation and perform HDL debugging tasks. Perform waveform analysis. Create scripts to automate simulation tasks. Use Active-HDL LE in both batch or interactive simulation scenarios. This tutorial emphasizes using Active-HDL LE exclusively as a simulator launched as a “point” tool from the ispLEVER Project Navigator. Other Active- HDL licenses may include design entry features, such as schematics, state machines, and IP generators, and project management features that can be used to complement a Lattice Semiconductor FPGA design flow. Refer to the tutorial resources in the Aldec Active-HDL online help for more information. Active-HDL LE Tutorial 1 Active-HDL LE Tutorial Time to Complete This Tutorial Time to Complete This Tutorial The time to complete this tutorial is about 90 minutes. System Requirements The following software configuration is required to complete the tutorial: Active-HDL Lattice Edition 7.3 or later ispLEVER-Starter (7.1 or later): FPGA Module and Precision RTL Synthesis Module or ispLEVER (7.1 or later) and Mentor Graphics® Precision® RTL Synthesis for Lattice or ispLEVER (7.1 or later) and Synplicity® Synplify Pro® Note Synplify for Lattice does not support concurrent synthesis of Verilog HDL and VHDL source. Active-HDL LE Tutorial 2 Active-HDL LE Tutorial Accessing Online Help Accessing Online Help You can find online help information on any tool included in the tutorial at any time by pressing the F1 key. Both ispLEVER Project Navigator and Active- HDL LE respond to F1 in a similar way. About the Tutorial Design The small design in this tutorial consists of both VHDL and Verilog HDL blocks targeted to a LatticeECP2M FPGA device. The block diagram in Figure 1 illustrates the design. Three comparator blocks evaluate the COMPDAT input data against the value of a storage register. Most of the model is coded in VHDL, and the COMP_EQ block is coded in Verilog. Figure 1: Tutorial Design About Lattice Edition (LE) Lattice Edition is a special configuration of Aldec Active-HDL that includes features focused on the needs of the FPGA designer, including mixed- language support, a variety of debugging tools, and powerful documentation and visualization tools. Figure 2 illustrates its architecture and major features. Active-HDL LE Tutorial 3 Active-HDL LE Tutorial Task 1: Setting Up Project Navigator to Start Active-HDL Figure 2: Architecture and Features of Active-HDL LE Task 1: Setting Up Project Navigator to Start Active- HDL In the following procedure, you will configure the ispLEVER Project Navigator to use Active-HDL LE as the default HDL simulator. Whenever a simulation- related process is run from within Project Navigator, Active-HDL LE is launched with a script to compile the simulation file list and run a default simulation based on the test bench. To configure Project Navigator to start Active-HDL: 1. Start the ispLEVER Project Navigator, if it is not already running. 2. From Project Navigator, choose Options > Environment. The Environment Options dialog box appears. 3. Click the Directories tab, then click the browse (...) button next to the Active-HDL box. The Set Active-HDL Install Path dialog box appears. 4. Select the folder where the Active-HDL LE executable file (ahdl.exe) is installed, for example, c:\Program Files\Aldec\Active-Hdl <version>\bin. Active-HDL LE Tutorial 4 Active-HDL LE Tutorial Task 1: Setting Up Project Navigator to Start Active-HDL The directory for Active-HDL LE appears in the ActiveHDL box in the Directories tab of the Environment Options dialog box, as shown in Figure 3. Figure 3: Active-HDL LE Directory in Environment Options Dialog Box 5. Click OK. The Active-HDL LE button appears in the Project Navigator toolbar. 6. Choose Options >

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    40 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us