www.aldec.com Open in urlscan Pro
147.135.28.15  Public Scan

URL: https://www.aldec.com/en/support/resources/documentation/articles/2123
Submission: On October 26 via api from SE — Scanned from DE

Form analysis 3 forms found in the DOM

Name: formGET /en/search

<form name="form" method="get" action="/en/search">
  <input type="text" name="search_field" title="Minimum three characters required" pattern=".{3,}" class="search" placeholder="Search aldec.com"><!--
             --><button type="submit" class="submit"></button>
</form>

POST /en/support/customer_portal/login

<form action="/en/support/customer_portal/login" method="POST">
  <div class="header">Sign In</div>
  <div class="field"><span>Username: </span>
    <div><input type="email" name="login" placeholder="username@example.com" required="required"></div>
  </div>
  <div class="field"><span>Password: </span>
    <div><input type="password" name="password" required="required"></div>
  </div>
  <a class="link" href="/en/support/customer_portal/forgot">Forgot your password?</a>
  <div class="buttons">
    <button type="submit">Sign In</button>
    <a href="#closeWidget">Close</a>
  </div>
</form>

POST

<form id="msg_form" method="post" action="" onsubmit="dynamicForm_submit(&quot;submit=Send&quot; + &quot;&amp;question=&quot; + $(&quot;#ask_question_form_question&quot;).val());
                return false;">
  <table id="DynamicFormTable">
    <tbody>
      <tr>
        <td><label id="label_name">Name: </label><input type="text" name="ask_question_form[name]" id="ask_question_form_name"></td>
      </tr>
      <tr>
        <td><label id="label_phone">Phone: </label><input type="text" name="ask_question_form[phone]" id="ask_question_form_phone"></td>
      </tr>
      <tr>
        <td><label id="label_email">Email: </label><input type="text" name="ask_question_form[email]" id="ask_question_form_email"></td>
      </tr>
      <tr>
        <td><label id="label_question">Question: </label><textarea rows="4" cols="30" maxlength="10000" name="ask_question_form[question]" id="ask_question_form_question"></textarea></td>
      </tr>
      <tr>
        <td><label id="label_captcha">Security code:</label><input type="text" name="ask_question_form[captcha]" id="ask_question_form_captcha"></td>
      </tr>
    </tbody>
  </table>
  <div id="captcha"><img id="captcha_img" name="captcha_img" src="/captcha/1635243332" alt="Captcha Image"><a style="cursor:pointer" onclick="javascript:(function() {
  var randomize = Math.round(Math.random(0)*1000)+1;
  document.getElementsByName('captcha_img').forEach(function(item,i,arr) {
    item.src='/captcha/'+randomize+''; return false;})
  })();"><img alt="Reload Captcha" title="Reload Captcha" src="/images/cryptocaptcha/reload_original.png"></a></div>
  <input id="msg_send" type="submit" value="Send message">
</form>

Text Content

Aldec Logo
日本語Sign In | Register | Search

 * Solutions
   FPGA DesignFunctional VerificationHardware Emulation
   SolutionsPrototypingRequirements ManagementFPGA Embedded SolutionsDO-254
   ComplianceSpecialized ApplicationsHigh Performance Computing
 * Products
   FPGA SimulationActive-HDLFunctional VerificationRiviera-PROALINT-PROEmulation
   & PrototypingHES-DVMHES Proto-AXIHES BoardsTySOM BoardsDaughter
   CardsRTAX/RTSX Adaptor BoardsRTAX/RTSX Netlist ConverterCloudHES-DVM Proto
   Cloud EditionEmbeddedTySOM™ EDKRequirements ManagementSpec-TRACERMil/Aero
   VerificationDO-254/CTSUniversity ProgramsVIP/IP Products
 * Events
 * Company
   About UsContact UsCareersTestimonialsNewsroomBlogPartnersLogosUsecasesSPIFF
   ProgramEvents
 * Blog
 * Support
   Customer PortalTrainingResourcesDocumentationMultimedia
 * Downloads

Home

Support

Resources

Documentation

Application Notes

Automated Conversion of Intel FPGA Quartus Projects to ALINT-PRO



 * 
 * Solutions
   * 
   * Solutions
   * FPGA Design
     * 
     * FPGA Design
     * Simulation and Debugging
     * Documentation HTML/PDF
     * Project Management
     * Graphical/Text Design Entry
     * FPGA Vendors Support
       * 
       * FPGA Vendors Support
       * Xilinx Design Flow
       * Altera Design Flow
   * Functional Verification
     * 
     * Functional Verification
     * Metric Driven Verification
     * UVM Transaction Debugging
     * UVM, OVM and VMM
     * OS-VVM™
     * Static Linting
     * CDC and RDC Verification
     * QEMU Co-Sim
   * Hardware Emulation Solutions
     * 
     * Hardware Emulation Solutions
     * Co-emulation
     * UVM Simulation Acceleration
     * Scalability of Acceleration
     * Verification IP
     * SoC Partitioning
     * Emulation Debugging
   * Prototyping
     * 
     * Prototyping
     * Scalable HES™ Prototyping Platform
     * HES Proto-AXI Interconnect
     * Multi-FPGA Design Partitioning
     * ARM Cortex Support
     * RTAX/RTSX Prototyping
   * Requirements Management
     * 
     * Requirements Management
     * Requirements Capture
     * Traceability
     * Change Impact Analysis
     * Tests Management
     * Team-Based Methodology
     * Documentation and Reporting
   * FPGA Embedded Solutions
     * 
     * FPGA Embedded Solutions
     * Deep Learning
     * NVMe Data Storage
     * Internet of Things (IoT)
     * Automotive ADAS
     * Networking
     * 4K UltraHD Imaging
     * Python and PYNQ
     * COVID-19 Detection
   * DO-254 Compliance
     * 
     * DO-254 Compliance
     * HDL Coding Standards
     * Tool Assessment and Qualification Process
     * FPGA Level In-Target Testing
     * HDL Detailed Design and Verification
     * DO-254 Templates and Checklists
   * Specialized Applications
     * 
     * Specialized Applications
     * Regression Manager
     * Encryption
     * DSP Tailored RTL Design Flows
   * High Performance Computing
     * 
     * High Performance Computing
     * Computer Vision
     * Encryption & Security
     * Genome Alignment
     * High Frequency Trading
     * Large Scale HPC
     * Embedded HPC
 * Products
   * 
   * Products
   * FPGA Simulation
     * 
     * FPGA Simulation
     * Active-HDL
   * Functional Verification
     * 
     * Functional Verification
     * Riviera-PRO
     * ALINT-PRO
   * Emulation & Prototyping
     * 
     * Emulation & Prototyping
     * HES-DVM
     * HES Proto-AXI
     * HES Boards
       * 
       * HES Boards
       * Virtex UltraScale+
       * Virtex UltraScale
       * Virtex-7
       * HES Backplane
     * TySOM Boards
       * 
       * TySOM Boards
       * Zynq-7000 SoC
       * Zynq UltraScale+ MPSoC
       * PolarFire SoC
     * Daughter Cards
       * 
       * Daughter Cards
       * FMC Daughter Cards
       * BPX Daughter Cards
     * RTAX/RTSX Adaptor Boards
       * 
       * RTAX/RTSX Adaptor Boards
       * RTAX-S/SL Family Adaptors
       * RTSX-SU/SX-A Family Adaptors
     * RTAX/RTSX Netlist Converter
   * Cloud
     * 
     * Cloud
     * HES-DVM Proto Cloud Edition
   * Embedded
     * 
     * Embedded
     * TySOM™ EDK
   * Requirements Management
     * 
     * Requirements Management
     * Spec-TRACER
   * Mil/Aero Verification
     * 
     * Mil/Aero Verification
     * DO-254/CTS
       * 
       * DO-254/CTS
       * DO-254 News
       * DO-254 Ecosystem
       * DO-254 Training
       * DO-254 Seminar NV
   * University Programs
   * VIP/IP Products
 * Events
 * Company
   * 
   * Company
   * About Us
   * Contact Us
     * 
     * Contact Us
     * Corporate Offices
     * Distributors
   * Careers
   * Testimonials
     * 
     * Testimonials
     * Cast
     * Cobham Gaisler
     * CVC
     * Daktronics
     * Elbit
     * InterMotion Technology
     * Ocean Logic
     * Renishaw
     * Silora R&D
     * Telesoft
     * Thales
     * EDU
     * Others
   * Newsroom
   * Blog
   * Partners
   * Logos
   * Usecases
     * 
     * Usecases
     * Fabless Semiconductor
     * Digital Imaging Solution
     * Defense Research
     * Electronics RD
     * Xelic
   * SPIFF Program
   * Events
 * Blog
 * Support
   * 
   * Support
   * Customer Portal
     * 
     * Customer Portal
     * Show All My Cases
     * Open New Case
     * View Requested Documents
     * Request New Document
     * View My Licenses
     * My Profile
     * Downloads
   * Training
   * Resources
     * 
     * Resources
     * Documentation
       * 
       * Documentation
       * Application Notes
       * FAQ
       * Manuals
       * White Papers
       * Tutorials
       * Technical Specification
          * Resources
          * Documentation
          * Application Notes
          * FAQ
          * Manuals
          * White Papers
          * Tutorials
          * Technical Specification
          * Multimedia
          * Demonstration Videos
          * Recorded Webinars
     * Multimedia
       * 
       * Multimedia
       * Demonstration Videos
       * Recorded Webinars
 * Downloads
   * 
   * Downloads
   * Product Builds
   * Request Eval License
   * Support
   * Resources

« Prev | Next »


AUTOMATED CONVERSION OF INTEL FPGA QUARTUS PROJECTS TO ALINT-PRO


INTRODUCTION

Aldecs ALINT-PRO design verification solution performs static RTL and design
constraints code analysis to uncover critical design issues early in the design
cycle. The product helps FPGA developers rise to the challenge of designing
large FPGA designs and multiprocessor system on chip devices that include
high-capacity and high-performance FPGA hardware.

The solution supports running rule checks for designs that target FPGAs from
Xilinx, Intel or Microchip with minimal setup. It also offers the latest
versions of FPGA vendor libraries, which are pre-built, installed by default,
and pre-configured for advanced timing and CDC rule checks.

To help FPGA designers, ALINT-PRO provides automated project conversion from the
most popular FPGA design environments - Xilinx Vivado and Intel FPGA Quartus.
ALINT-PRO automates the import of a projects code into the native ALINT-PRO
environment, whereas the automated project conversion functionality helps the
designer prepare and run static verification of FPGA projects in ALINT-PRO. As
part of the conversion, workspaces and projects are created and populated with
code and settings, allowing designers to immediately run static code
verification.


GETTING STARTED

You will need to install Quartus II or you may install Quartus Prime and the
latest version of ALINT-PRO. You will need to request a license for Aldec.


INTEL FPGA QUARTUS PROJECTS CONVERSION

There are two ways to run project conversion, either by using the GUI or by
running a conversion command from the console.

 1. ALINT-PRO GUI
    
    * Click on Tools | Convert | QPF Project.
    
    * Specify the full path to the Quartus Design Project Suite with its .qpf
      file.
    
    * Specify path to the automatically generated ALINT-PRO project directory.
      
      Note: By default, the output ALINT-PRO project will be created in the same
      directory where the QPF project file resides.
      
      
      
      Figure 1: Convert QPF Project Wizard
    
    * Click Next.
    
    * Workspace Structure will be presented. In instances where the QPF project
      contains links to non-existing project files, these files will be marked
      in red, and it is recommended to halt the conversion and fix the Quartus
      project in its native development environment.
      
      
      
      Figure 2: Workspace Structure
    
    * Click Finish.

 2. Conversion Command from console
    
    * To convert the project using command line, run convert.qpf.project command
      from the console window. The command has the following syntax:
      
      
    
    * Compared to the GUI-based route, the conversion command provides more
      options, including such options as -force and -ip_mode.

-force option

 * After project conversion into ALINT-PROs environment, you may change the
   projects rules selections, add waivers, etc. You may also continue to develop
   RTL code within Quartus projects. Then, the changed Quartus project can be
   converted again for static verification in ALINT-PRO.
   
   Note: By default, ALINT-PRO will keep project-specific properties such as
   policy and waivers for the repeated conversions. Using the -force option will
   reset all project properties to the default one, removing all waivers and
   using Global policy setting for each generated project.

-ip_mode option

 * First, the script parses Quartus project .qpf file to extract all
   project-related files as well as project IP designs.

"OOC" (Out Of Context) IP mode:

 1. Parsing
    
    * For each IP design, the script creates a separate ALINT-PRO project filled
      with IP RTL files.
    
    * All IP designs with protected code are grouped in IP_PROJECTS. Whereas all
      IP designs with open source code are grouped in an IP_OOC_PROJECTS folder.
    
    * The project design files placed in main project named xil_defaultlib.

 2. Elaboration, synthesis and constraint phases happen next for each generated
    project (including all projects from the IP_OOC_PROJECTS).

 3. Next, for each OOC project, the script generates block-level constraints and
    adds them to the main project (xil_defaultlib).
    
    * The block-level constraints generation is performed using
      project.generate.constraints.toplevel command. At the same time, the
      script generates stub files for each IP project, adding them to the main
      project. Then, during the full design synthesis and linting, the IP
      wrapper units will be considered as gray-boxes and their content will not
      be processed during the linting.
    
    * At the same time, generated block-level timing constraints provide timing
      characterization of IP blocks for the full design linting and CDC
      analysis.

 4. The ooc mode is the default for the project conversion. In addition to
    running linting on the main (xil_defaultlib) project, users may run linting
    and CDC analysis for any IP with non-protected code. Every time a user runs
    the main project linting, the IP projects will be processed as well.
    
    * This is done automatically by the main projects parse pre-macro script:
      
      
      
      Figure 3: Parsing

 5. If IP designs are stable, there is no need to keep processing each of the IP
    projects along with the main project. In this case, users may remove the
    pre-macro code. Alternatively, users may disable the processing of selected
    IP projects by removing them from the script.

 6. Lastly, the script adds Quartus Design Constraints files to the main
    (xil_defaultlib) project as well. The constraint file may require some
    tuning for proper CDC analysis, as ALINT-PRO may not support
    Quartus-specific design constraint commands. Also, Aldec-specific reset
    design constraints must be added to the constraint file to enable proper
    verification of the designs reset structures.
    
    Note: Protected design IP cannot be automatically constrained, as their
    source code is unavailable. It is therefore necessary to add manually
    developed block-level constraint files for each of the protected design IP
    blocks.

 7. In cases where protected code exists in a project, the conversion script
    enables an option to Generate black boxes for missing units, allowing the
    compiler to accept the undefined design units.
    
    * The following figure illustrates a converted projects structure, with the
      open-source IP projects grouped under IP_OOC_PROJECTS and source-protected
      IP project residing under IP_PROJECTS:
      
      
      
      Figure 4: Project Structure

"global" IP mode:

 * In this mode, all the out-of-context IP designs with non-protected code is
   added into the main project. No separate projects will be created for these
   IP designs.

 * Both IP mode approaches can be used for linting and CDC verification.

 * For large projects, the OOC approach is preferable as it reduces the size and
   complexity of the main project by abstracting instantiated IP designs. These
   IP designs could be verified with linting tools in their separate projects,
   and then excluded from main project analysis if their code remain intact.

Previous article
Next article
 * Solutions
 * FPGA Design
 * Functional Verification
 * Hardware Emulation Solutions
 * Hardware Prototyping
 * Requirements Management
 * FPGA Embedded Solutions
 * DO-254 Compliance
 * Specialized Applications
 * High Performance Computing

 * Technical Resources
 * Recorded Webinars
 * White Papers
 * Blog
 * Application Notes

 * What's New
 * Press Releases
 * Events

 * Let Us Help You
 * Contact Us
 * Ask Aldec
 * Customer Portal

--------------------------------------------------------------------------------

©2021 Aldec, Inc. All Rights Reserved.


Legal | Privacy | Site Map | RSS Feeds | Feedback
Sign In
Username:

Password:

Forgot your password?
Sign In Close
Ask Us a Question
x
Ask Us a Question
x


Name: Phone: Email: Question: Security code:



Incorrect data entered.
Thank you! Your question has been submitted. Please allow 1-3 business days for
someone to respond to your question.
Internal error occurred. Your question was not submitted. Please contact us
using Feedback form.
We use cookies to ensure we give you the best user experience and to provide you
with content we believe will be of relevance to you. If you continue to use our
site, you consent to our use of cookies. A detailed overview on the use of
cookies and other website information is located in our Privacy Policy.
I agree. Do not show again.