Answers Database
M1.4: How to setup and debug Multi-Pass Place and Route/Turns Engine/Networked PARRecord #1644
Product Family: Software -m <nodelist file> => Use only for multi-node MPPR. Omit for single node MPPR. Use absolute local path name. -n <# of iterations> => Specifies number of Place and Route passes. -s <# of iterations to save> => Only the best -s results are saved. <mapped design>.ncd => Input ncd file. <output directory>.dir => Directory where the best -s results are saved. Files include placed and routed ncd, summary timing reports (.dly), pinout files (.pad), and log files (.par). o Graphical User Interface => => Open the design manager: dsgnmgr. => Open a project in the design manager. => Select a version. MPPR will not be available if a revision is selected. => Select Implement->FPGA Multi-Pass Place and Route. => In the pop up dialog, enter the number of iterations to run and to save. The starting strategy determines the initial point for the algorithms. As each PAR process is initiated, its starting strategy is incremented by 1. Varying the starting strategy produces varying routing and timing results; it is impossible to predict which starting strategies will produce the best results. It is a "Try and See" variable. For single node MPPR, leave the nodelist field blank, for multi-node MPPR enter the full path name to the nodelist file. DEBUG: o With multi-node MPPR you may receive messages from the login process. The problems are either network related environment variable related. Network: You may not be able to logon to the machines listed in the nodelist file. Try to ping the nodes - ping <machine name>. You should get a message "machine is alive". ping should also be in your path (UNIX cmd: which ping). If returns packet information, then you should confirm that ping was run with no options. Ping must return the message "machine is alive" for MPPR to work. Try to logon to the nodes - rsh <machine name>. You should be able to logon to the machine. If you can not, make sure rsh is in your path (UNIX cmd: which rsh). If rsh is in your path, but you still can not logon, contact your network administrator. Try launch par on node - rsh <machine name> /bin/sh -c par This is the same command that multi-node MPPR uses to launch par. If this command is successful, everything is setup correctly for <machine name> node. Environment: Check the environment on the nodes - Logon to the problematic node (UNIX cmd: rsh <machine name>). Check the $XILINX, $LD_LIBRARY_PATH, and $path variable (UNIX cmd: echo $<variable name>). If these variables aren't set correctly, then check to make sure these variables are defined in your .cshrc file. Note, some, but not all, errors in reading the .cshrc may prevent the rest of the file from being read; these errors may need to be corrected before the XILINX environment variables in the .cshrc are read. /bin/sh: par not found - This message indicates that the environment in the .cshrc is not being correctly read by the node. SAMPLE FILES: -------------------------- .cshrc file segment ------------------------------- # This is a comment. # This setup enables using multi-node MPPR with homogeneous and heterogenous networks: # Solaris, SunOS, and HP-UX. When a login occurs, the bintype variable is # set to the node platform, which then points the Xilinx environment variables # to the platform specific software and libraries. if (!($?bintype)) then set hosttype = `uname -s -r` if ("$hosttype" =~ SunOS\ 4.1.[34]*) then set bintype = sun else if ("$hosttype" =~ SunOS\ 5.[45]*) then set bintype = sol else if ("$hosttype" =~ HP-UX\ [AB.0-9]*) then set bintype = hp else echo "Unknown Hostype" set bintype = unknown endif endif setenv XILINX /products/xilinx/m1 setenv LD_LIBRARY_PATH ${XILINX}/bin/${bintype}:${LD_LIBRARY_PATH} setenv LM_LICENSE_FILE /poducts/license/combined.flexlm:/xilinx/flex/license.dat setenv XILINX_SERVER "license_server1;license_server2" set path=($path ${XILINX}/bin/${bintype}) NOTE: The .cshrc file will often contain a line that terminates execution early for non-interactive shells. A common example is the following: if ($?USER == 0 || $?prompt == 0) exit If the Xilinx environment is not not set prior to this line, all multi-node MPPR jobs will fail because the remote shells will not have the proper environment. All stty commands should be placed after this line in the .cshrc file. Otherwise, stty error messages will be seen while running the Turns Engine: "stty: Invalid Argument". ------------------------- nodelist file below -------------------------------- # This is a comment # Note: machines are accessed by multi-node MPPR from top to bottom # Sparc 20 machines running Solaris (SunOS 5.5) kirk spock mccoy krusher janeway picard # Sparc 10 machines running SunOs (4.1.4) michael jermaine marlon tito jackie # HP's running HP-UX 9.05 william george ronald jimmy gerald End of Record #1644 - Last Modified: 02/17/98 08:30 |
For the latest news, design tips, and patch information on the Xilinx design environment, check out the Technical Tips! |