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 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
Report domains, which can only be launched once Route flow is finished
Toolbar
through six categories of widgets:
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