Home
Name Modified Size InfoDownloads / Week
readme.txt 2022-10-29 4.7 kB
MyePnR_090.zip 2022-10-28 29.2 MB
manual.pdf 2022-10-28 1.2 MB
Totals: 3 Items   30.4 MB 1
ePnR Revision 0.9.0 - release date 2022-10-28
=============================================

Release notes:
ePnR 0.9.0 is a bug-fixed 0.8.1 version & a beta release of a simple IC block placement & routing tool, with the following characteristics:

    • Places & routes small & medium size circuit blocks using specified standard cells
    • Graphical User Interface (GUI)
    • Placed & routed circuit available in CIF and GDS formats
    • Manual accessible from 'Help -> Manual' in the ePnR main menu    
    • Demo & tutorial examples in distribution package    
    
ePnR is currently a pretty simple tool - it doesn't make a complete manufacturable IC chip but rather perform basic placement of equal height standard cells and routes interconnect between the cells based on a SPICE like user circuit file (<circuit>.spc). The placement is done in stacked rows of user-defined length. Initially the cells are placed strictly following the order of cell calls in the (flattend) circuit file. When the first row is filled from left to right, a new row above is created and filled the same way and so on until all cells in the circuit file have been placed. Cell outlines, ports and interconnect layers & vias are described in a (standard cell) outline library (<standard cells>.lib) which also may contain data for logic simulation by eLogSim (see https://sourceforge.net/projects/elogsim).
After inital placement, the user can get an automatic placement optimization step based on a "simulated annealing" algorithm which tries to reduce overall user-weighted sum of wire lengths by shuffling cell placement around in the created rows.
Finally, the user can get ePnR to route the circuit using minimum 4 and maximum 5 interconnect layers. Routing involves by default two steps: a) channel routing which also include over-the-cell routing, b) Maze routing attempt on remaining un-routed wires. Any wires left un-routed after step b), must be manually routed in an layout editor using the rubberband guidance left by ePnR.

Version 0.9.0 differs from previous version 0.8.1 in:

    • GDS output file format now available
    • Default checking of input file extensions (.lib, .set, .spc) 
    • New command line options: 
      -noenfx disables file extension checks on input files 
      -pf <prefix> adds <prefix> string to all component cell calls in top cell. Option only active for GDS output.
    • Placed & routed circuit available in CIF and GDS formats
    • Auto LVS labeling of all I/O nets and power bars w/ library configurable label GDS layer setting and naming & location for power bars.
    * A few bugs fixed.    
    • Updated manual  
 
Now to the install instructions for pre-compiled binaries for various Linux distributions and Win10/11.
It is highly recommended to update from 0.8.1 to 0.9.0 to avoid uneccessary ePnR crashes and to benefit from the features of GDS output. Version 0.9.0 is regarded as a 1.0.0 release candidate. 

Installing ePnR:
    1. unzip downloaded distribution package ‘MyePnR_090.zip’ with destination to your local ”Documents folder”. A folder named 'MyePnR' will be created directly under your “Documents” folder.
    2. Open a terminal and cd to the sub-folder ‘ePnR/binaries’ (or Win10/11 'ePnR\binaries') under ‘MyePnR’. Then cd to your target CPU type (amd64 or arm) and finally cd to the OS (OpenSUSE, Ubuntu, Rasberry  PiOS64 or Win10/11) you have on your pc.
    3. Read the readme.txt (if present) and then run the install script by typing the command bash install_binary.sh in a terminal on linux platforms. On Win10/11 platforms, open a terminal with the option "Run as administrator" and then execute install_binary.bat on the command line.
    4. First time you click on the generated ePnR desktop shortcut, you may have to approve it for execution (right click and find the option in the pop-up menu).
    
Provided you have installed correctly the Lazarus IDE, you may want to compile the ePnR source code your self. Go to sub-folder 'ePnR/src' (or Win10/11 'ePnR\src') and run 'bash install_from_source.sh' in a terminal window or 'install_from_source.bat' in a Win10/11 administrator terminal window. Ignore the warnings (but not errors!).    

You are now ready to invoke ePnR. Try one or more of the demo examples contained in 'MyePnR' top get familiar with ePnR. In order to complete your circuit for manufacturing, you may want to download and install the excellent, free & open-source IC layout editor KLayout - see https://klayout.de.

Feel more than welcome to comment/rate the program or ask questions via the forums on https://sourceforge.net/projects/epnr. 

--- End of file ---
Source: readme.txt, updated 2022-10-29