Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

Copyright

All the contents of this document are protected by the copyright law. They may not be disclosed to third parties or copied or duplicated in any form without the written consent of NanoXplore.

Introduction

This document is intended to guide users of NanoXplore NXmap software through all the steps involved in the design flow and the options available to perform floorplanning exploration. This document is an addition to the NXmap User manual which focus exclusively on the NXmap graphical interface.

Package description

The provided NXmap archive contains the following directories:

  • bin       folder contains binary files for each supported Linux distribution

  • doc      folder contains documentation files in pdf format

  • example folder contains several examples of different projects with design sources in VHDL

  • lib64 folder contains dynamic libraries and Python modules for each supported Linux distribution and associated Python version

  • share folder contains additional files (vhdl libraries, simulation libraries, etc...)

Installation

To install NXmap, the user needs to unpack nxmap-VERSION.tar.gz file into the installation directory (e.g. /opt/NanoXplore) using the following command:

$> tar xzf nxmap-VERSION.tar.gz -C /opt/NanoXplore

To set the license, it is required to export the following shell variable:

$> export LM_LICENSE_FILE=27000@servername

Where servername is the hostname of the server running the license daemon and 27000 is the port the daemon listens to.

Run Nxmap

To run nxmap, use the following command:

$> /opt/NanoXplore/nxmap/VERSION/bin/nxmap

NXmap graphical exploration

Main window

Launching NXmap opens the main window of the tool within the graphical interface (following figure).

This new interface at start is organized around:

  • a horizontal Menu presenting rolling options managed by File, Tools, Report, View & Help buttons

  • a horizontal Toolbar which allows to export several options from the menu to have direct access through a dedicated graphical icon

Menu

The horizontal menu presents:

  • File for creating and editing the current project

  • Tools for setting, editing and validating various constraints of the project

  • Report for printing various reports concerning the project

  • View to enable or mask widgets for dedicated section of the horizontal toolbar

  • Help to edit NXmap default setting and check release and license features information

File

File rolling menu disposes classic actions for management of the current project:

  • New project → action also possible through a dedicated New project clic button in the main window

  • Open project → action also possible through a dedicated Load project clic button in the main window

  • Close project

  • Edit project → allows to modify infrastructure elements of the current project such as the path directory used, the choice of the FPGA variant, which HDL source files are to be compiled, setting or not a sdc file, define HDL parameters

  • Save project → save a database version of the project at .nym format

  • Export bitstream → generate a bitstream file at .nxb format

  • Export placement constraint → allows to export placement constraints in a dedicated python file, useful to generate constrainModule() python command lines based on regions created or edited through NXmap graphical interface

  • Quit

Tools

Tools rolling menu

Tools rolling menu allows to edit certain constraints for the implementation of the project:

  • Configure ring provides options to configure bank & IO parameters (voltage, location, Standard, Drive, Weak Termination, SlewRate, Termination, Turbo, etc…)

→ Configure ring can only be edited before launching Place 1/5 step (Prepare); after Prepare step is done, the IO & bank mapping cannot be modified

  • Synthesis constraints allows to check the constraints declared for the project by script (new constraints cannot be declared through the graphical interface)

  • Apply constraints validates every constraint change (such as creation of a new region, coordinate change of a region) performed through the graphical interface in order to be taken into account by NXmap during the flow execution

  • Run static timing analysis launches a STA run

Report

This rolling menu provides select reporting generation options.

  • Report instances prints in the prompted terminal where NXmap has been launched an array of the resources used to map the design

  • Report ports prints in the prompted terminal where NXmap has been launched an array of the ports used to map the inputs & outputs of the design

  • Report regions prints in the prompted terminal where NXmap has been launched an array of the resources used to map the design for every region constrain created and used by the tool

  • Report registers command lists a summary of all registers implemented in the HDL hierarchy of the design

  • Report domains, which can be launched once the definitive placement of design elements is finished, provides a reporting of existing group paths based on existing clock constraints

View

This section of the menu provides access to various options also available in the horizontal toolbar given user preferences.

The View rolling menu is organized into several categories:

  • Display allows to select which element to show or hide in the floorplan among Lobes, Aperture, Focus, Obstructions, Regions, Net name on pin, Anchors and Instance color

Net name on pin can be used to identify the hierarchy level of a net connected to a specific instance.

Activating Instance color is useful to have a visual organization on how the logic mapped on fabric resources is split between user-defined regions and what is automatically placed by NXmap outside of regions. It is also practical to get a quick view on the amount of logic mapped into the fabric corresponding to specific region constraints.

  • Zoom sub-menu provides commands to zoom in, zoom out, zoom full, zoom back and refresh through the floorplan view

  • Scroll sub-menu provides commands to scroll left, scroll right, scroll up and scroll down through the floorplan view

  • Docks widgets are dedicated to graphical exploration & edition of the floorplan: Interpreter, Dashboard, Selection & Regions:

    • Interpreter widget allows to write and execute python methods in command lines

    • Dashboard widget shows a reduction of the global floorplan view to easily zoom in and out of the design

    • Selection widget opens a pop up tab in which is reported all elements bound by Select nets, Select instances, Select Edges & Select paths commands with associated filter options. Select through the Command menu which action to perform

      • Select paths provides STA information on the selected paths

      • Select instances provides various information as hierarchy level, Region and Module detailed information; source file and TILE/CGB location; Input/Output name; dynamic setSite() management is available at Place 1/5 step through Locking button

  • Tool bars allows to show/mask dedicated sections of the horizontal toolbar among File, Tools, Display, Zoom, Scroll and Dock widgets

Help

This section of the menu provides access to various options also available in the horizontal toolbar given user preferences.

About section provides release information regarding current NXmap release with associating features enabled by the license with the validity date.

Toolbar

Through six categories of widgets, the horizontal toolbar menu presents:

  • File :

  • Tools

  • Display

  • Zoom

  • Scroll

  • Docks

  • Docks widgets are dedicated to graphical exploration & edition of the floorplan: Interpreter, Dashboard, Selection & Regions

  • Interpreter widget allows to write and execute python methods in command lines

  • Dashboard widget shows a reduction of the global floorplan view to easily zoom in and out of the design

  • Selection widget opens a pop up tab in which is reported all elements bound by Select nets, Select instances, Select Edges & Select paths commands with associated filter options

Select paths provides STA information on the selected paths

Select instances provides:

Hierarchy level, Region and Module information

Source file and TILE/CGB location

Input/output net name

Configuration information

Dynamic setSite management is available at Place 1/5 step through Locking button

  • Regions widget

Shows all Regions and Modules with utilization details

Creates/Resizes/Deletes Region dynamically

Assigns Module to a new Region dynamically

Clipboards and generates python file with all Region/Module/SetSIte/(DSP/RAM) Location

  • Information given by NXmap can be copy/paste from the GUI

  • Command updates

Select paths improvements:

Longest/Shortest path selection

New clock domain selection

Detail STA report on selected path

  • Floorplanning overview (Prepared):

Refresh fabric element dispatch after Region/Module modification in order to visualized new floorplanning

Until Place 1/5 step, regions can be manually edited though the floorplan view using Edit regions command.

To do so, select a defined regions among the listed ones and it will be highlighted in blank into the floorplan, allowing to expand or decrease left, right corners dimensions of the region at top and bottom.

Once the region has been edited, don’t forget to validate the changes by clicking on Tools → Apply constraints.

Docks

NXmap provides a dedicated Regions using Regions dock widget, which allows various actions through several right click menus:

  • outside existing regions, the logic is scattered into the fabric (identified as top level element with ‘~') and a right click on this gives access to General and Region '~’ menus

    • General allows to Edit Fabric dimensions inside which logic should be mapped, Create a Region or Create an Obstruction from scratch

    • Region ‘~’ allows to edit the dimensions of the top level '~’ region of the design

You can parse a list of Regions/Obstructions using

  • No labels