AR# 43728

|

13.2 System Generator - Why does using xlswitchLibrary command result in xlSwitchLibrary error message?

描述

If I attempt to use xlswitchLibrary, the following error occurs:

">> xlSwitchLibrary('pid_controller', 'work', 'pid_controller_lib') expected to find synopsis in working directory (looking for attribute 'design') at C:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pm line 194
SgSwitchLibrary::expandVariable('${{design}}.vhd') called at C:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pm line 202
SgSwitchLibrary::elaborateFileList() called at C:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pm line 220
SgSwitchLibrary::processDirectory('pid_controller', 'work', 'pid_controller_lib') called at C:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pm line 265
Error using ==> xlSwitchLibrary at 21
Error switching HDL library references in the target design.

expected to find synopsis in working directory (looking for attribute 'design') at C:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pm line 194
SgSwitchLibrary::expandVariable('${{design}}.vhd') called at C:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pmline 202

SgSwitchLibrary::elaborateFileList() called atC:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pmline 220
SgSwitchLibrary::processDirectory('pid_controller', 'work','pid_controller_lib') called at
C:\Tools\Xilinx\13.2\ISE_DS\ISE\sysgen\scripts\SgSwitchLibrary.pm line 265"

Why does this occur?

解决方案

Follow theseguidelines to ensure that thexlswitchLibrarycommand is used correctly:

  1. Generate the netlist files for the design (e.g., the output is called netlist1).
  2. Open the "*_cw.vhd" file generated in the netlist1 folder.
    In this file, you can seethat the following line lists the current library as "work".
    • library IEEE;
    • use IEEE.std_logic_1164.all;
    • use work.conv_pkg.all;
  3. Use the xlswitchLibrary command to change library name. Make sure that the current MATLAB directory is just above the netlist1 folder.
  4. Run xlswitchLibrary ('netlist1', 'work', 'new_lib_name')
    The following should be output to the console:

    "Warning: Could not find an exact (case-sensitive) match for 'xlswitchLibrary'.
    C:\Xilinx\13.2\ISE_DS\ISE\sysgen\bin\nt\xlSwitchLibrary.p is a case-insensitive match and will be used instead.
    You can improve the performance of your code by using exact name matches and we therefore recommend that you update your usage accordingly. Alternatively, you can disable this warning using warning('off','MATLAB:dispatcher:InexactCaseMatch').
    This warning will become an error in future releases.
    INFO: Switching HDL library references in design 'spram_cw' ...
    INFO: A backup of the original files can be found at 'C:/Xilinx/13.2/ISE_DS/ISE/sysgen/examples/projnav/mult_diff_designs/netlist1/switch_lib_backup.rK6N'.
    INFO: Processing file 'spram.vhd' ...
    INFO: Processing file 'spram_cw.vhd' ..."
  5. You can verify the change by opening the same file:

    library IEEE;
    use IEEE.std_logic_1164.all;
    use new_lib_name.conv_pkg.all;

    You can also open the backup copy of the files in the switch_lib_backup folder, located at netlist1/new_lib_name.xxxx'.

For System Generator for DSP Release Notes for other versions, see (Xilinx Answer 29595).

链接问答记录

相关答复记录

AR# 43728
日期 12/15/2012
状态 Active
Type 综合文章
Tools
People Also Viewed