Настройте для HDL Cosimulation

К cosimulate ваш HDL-код с MATLAB® или проектом Simulink®, вы должны сначала:

  • Решите, как соединить ваш симулятор HDL с MATLAB или Simulink. У вас могут быть один или несколько модулей HDL в настройке cosimulation. Модули представлены matlabcp и функциями matlabtb для MATLAB, или HDL блоки Cosimulation для Simulink. См. Настройки Cosimulation.

  • Запустите симулятор HDL с MATLAB, или с интерпретатора. Необходимо использовать интерпретатор для перекрестной сетевой симуляции, такой, как будто симулятор HDL работает на различной машине от хоста MATLAB. Запуск средства моделирования из MATLAB позволяет вам задавать библиотеку по наименованию, а не точный путь. Смотрите Запуск симулятора HDL.

  • Если вы требуете библиотеки не по умолчанию или настроенного местоположения библиотеки, задаете библиотеку, когда вы запускаете симулятор HDL. Если при запуске симулятор HDL с MATLAB, используйте имя библиотеки. Если при запуске симулятор HDL с интерпретатора, используйте путь к библиотеке. См. Библиотеки Cosimulation.

  • Опционально, используйте настройку и диагностический скрипт, чтобы сконфигурировать ваше местоположение библиотеки и протестировать связь TCP/IP. Этот скрипт поддерживается только для машин Linux®. Для машин Windows® можно создать конфигурационный файл. Смотрите Настроенную Диагностику Настройки и Выполнения.

Настройки Cosimulation

Существует несколько способов соединить ваш симулятор HDL с проектом в MATLAB или Simulink. Можно запустить симулятор HDL на той же или различной хост-машине как MATLAB. Каждый симулятор HDL может соединиться с одной или несколькими функциями в MATLAB или одном или нескольких HDL блоки Cosimulation в модели Simulink. В конфигурации сети, чтобы идентифицировать ваши серверы приложений, используют интернет-адрес и порт сокета TCP/IP.

Примечание

  • Экземпляр MATLAB может запустить только один экземпляр сервера MATLAB (hdldaemon) за один раз.

  • Каждый симулятор HDL должен связаться с уникальным экземпляром сервера MATLAB.

  • Коммуникация общей памяти является опцией для настроек, которые требуют только одной линии связи в одной вычислительной системе.

  • Коммуникация сокета TCP/IP требуется для настроек, которые используют несколько линий связи в одной или нескольких вычислительных системах. Уникальные порты сокета TCP/IP отличают линии связи.

Допустимые настройки для HDL Cosimulation с MATLAB

Сеанс симулятора HDL, соединенный с функцией MATLAB через один экземпляр сервера MATLAB.
Сеанс симулятора HDL, соединенный с несколькими функциями MATLAB через один экземпляр сервера MATLAB.
Сеанс симулятора HDL, соединенный с функцией MATLAB через несколько экземпляров сервера MATLAB. Каждый экземпляр запускается в рамках уникального сеанса работы с MATLAB). Эта настройка не поддержана Cosimulation Wizard.
Несколько сеансов симулятора HDL, каждый соединенный с функцией MATLAB через несколько экземпляров сервера MATLAB. Каждый экземпляр запускается в рамках уникального сеанса работы с MATLAB.

Допустимые настройки для Cosimulation с Simulink

Блок HDL Cosimulation в модели Simulink, соединенной с одним сеансом симулятора HDL.
Несколько HDL Cosimulation блокируются в модели Simulink, соединенной с тем же сеансом симулятора HDL. Эта настройка не поддержана Cosimulation Wizard. Можно объединить несколько модулей HDL в высокоуровневый модуль, чтобы включать их в один блок HDL Cosimulation.
Несколько HDL Cosimulation блокируются в модели Simulink, соединенной с различными сеансами симулятора HDL. HDL блоки Cosimulation в модели Simulink может соединиться с теми же или различными сеансами симулятора HDL. Каждый блок HDL Cosimulation может связаться только с одним симулятором HDL.

Запуск симулятора HDL

Прежде чем вы запустите симулятор HDL, запустите cosimulation сервер с помощью функции hdldaemon.

Можно запустить симулятор HDL с MATLAB, или с интерпретатора. Необходимо использовать интерпретатор для перекрестной сетевой симуляции, такой, как будто симулятор HDL работает на различной машине от хоста MATLAB. Запуск средства моделирования из MATLAB позволяет вам задавать библиотеку по наименованию, а не точный путь.

Запустите симулятор HDL с MATLAB

Каждый поддерживаемый симулятор HDL имеет уникальную команду, которая открывает его из MATLAB.

Примечание

Если вы используете Cosimulation Wizard, вы не должны запускать симулятор HDL отдельно.

Симулятор HDLКоманда, чтобы открыть средство моделированияПример
Cadence Incisive® nclaunchЗапустите тактовый сигнал, острый с MATLAB
Наставник Graphics® ModelSim® vsimЗапустите Mentor Graphics ModelSim с MATLAB

В любой функции можно задать библиотеку HDL Verifier, проект, чтобы загрузить, тип коммуникационной информации о связи и других обязательных параметров как аргументы пары "имя-значение". Никакая специальная настройка не требуется. См. Библиотеки Cosimulation.

Эта функция запускает и конфигурирует симулятор HDL для использования с программным обеспечением HDL Verifier™. По умолчанию функция запускает первую версию исполняемого файла средства моделирования, который это находит на системном пути, как задано переменной path. Эта функция использует временный файл, который перезаписывается каждый раз, когда симулятор HDL запускается.

Можно настроить файл запуска и коммуникационный режим, который будет использоваться между MATLAB или Simulink и симулятором HDL путем определения пар "имя-значение", когда вы вызываете функцию. Для получения дополнительной информации свойства смотрите nclaunch или vsim.

Чтобы запустить различную версию исполняемого файла средства моделирования, чем первый, найденный на системном пути, используйте setenv и функции MATLAB getenv, чтобы установить и получить среду любых подынтерпретаторов, порожденных UNIX(), DOS() или system().

Если вы задаете коммуникационный режим, когда вы вызываете одну из функций, которые открывают симулятор HDL, заданный режим применяется ко всем сеансам симулятора HDL, соединенным или с MATLAB или с Simulink.

Для получения дополнительной информации о том, как HDL Verifier соединяет симулятор HDL с MATLAB, смотрите Соединение с MATLAB и симулятором HDL.

Для полного cosimulation примера, который демонстрирует запуск симулятора HDL из MATLAB, смотрите, Проверяют Модуль HDL с Испытательным стендом MATLAB.

Чтобы диагностировать вашу настройку cosimulation и настроить вашу настройку для будущих вызовов функций, которые открывают симулятор HDL, следуйте за процессом в Настроенной Диагностике Настройки и Выполнения.

Запустите Тактовый сигнал, Острый с MATLAB.  Чтобы запустить Тактовый сигнал Острый симулятор HDL с MATLAB, в команде MATLAB запрашивают, введите:

nclaunch('PropertyName', 'PropertyValue', ...)

Этот пример изменяет местоположение папки к VHDLproj и затем открывает Incisive®. Поскольку командная строка не использует свойства 'hdlsimdir' и 'startupfile', nclaunch создает временный файл. Свойство 'tclstart' задает команды Tcl, которые загружают и инициализируют симулятор HDL для экземпляра испытательного стенда modsimrand.

cd VHDLproj
nclaunch('tclstart',...
 'hdlsimmatlab modsimrand; matlabtb modsimrand 10 ns -socket 4449')

Этот пример изменяет местоположение папки к VHDLproj и затем открывается Острый. Поскольку вызов функции не использует свойства 'hdlsimdir' и 'startupfile', nclaunch создает временный файл. Свойство 'tclstart' задает команду Tcl, которая загружает сущность VHDL® parse в библиотеке work для cosimulation между nclaunch и Simulink. Свойство 'socketsimulink' задает коммуникацию сокета TCP/IP на том же компьютере, с помощью порта 4449.

cd VHDLproj
nclaunch('tclstart', 'hdlsimulink work.parse', 'socketsimulink', '4449')

Запустите Mentor Graphics ModelSim с MATLAB.  Чтобы запустить средство моделирования Mentor Graphics ModelSimHDL с MATLAB, в команде MATLAB запрашивают, введите:

vsim('PropertyName','PropertyValue', ...)

Этот пример изменяет местоположение папки к VHDLproj и затем открывает ModelSim. Поскольку вызов vsim не использует свойства 'vsimdir' и 'startupfile', функция создает временный файл DO. Свойство 'tclstart' задает команды Tcl, которые загружают и инициализируют симулятор HDL для экземпляра испытательного стенда modsimrand.

cd VHDLproj
vsim('tclstart','vsimmatlab modsimrand; matlabtb modsimrand 10 ns -socket 4449')

Этот пример изменяет местоположение папки к VHDLproj и затем открывает ModelSim. Поскольку вызов vsim не использует свойства 'vsimdir' и 'startupfile', vsim создает временный файл DO. Свойство 'tclstart' задает команду Tcl, которая загружает сущность VHDL parse в библиотеке work для cosimulation между vsim и Simulink. Свойство 'socketsimulink' задает коммуникацию сокета TCP/IP на том же компьютере, с помощью порта сокета 4449.

cd VHDLproj
vsim('tclstart','vsimulink work.parse','socketsimulink','4449')

Этот пример включает команды Tcl, которые запускают компиляцию HDL и симуляцию, когда программное обеспечение ModelSim запускает.

vsim('tclstart',{'vlib work','vlog +acc clocked_inverter.v hdl_top.v','vsim +acc hdl_top'});

Этот пример загружает модуль hdl_top для Simulink cosimulation. Команда vsimulink также задает сокет номер 5678 для связи с HDL блоки Cosimulation в моделях Simulink и задает точность времени HDL 10 пикосекунд. При определении сокета этот путь эквивалентен использованию свойства socketsimulink функции vsim.

vsim('tclstart', …
             {'vlib work', 'vlog -voptargs=+acc clocked_inverter.v hdl_top.v', …
              'vsimulink hdl_top -socket 5678 -t 10ps'});

Запустите симулятор HDL с Shell

Прежде чем вы будете запускать симулятор HDL с интерпретатора и будете включать библиотеки HDL Verifier, первый показ скрипт настройки. Конфигурационный файл, сгенерированный скриптом, сохраняет для будущего cosimulation сеансы. Смотрите Настроенную Диагностику Настройки и Выполнения.

Запустите Тактовый сигнал, Острый с Shell.  Если у вас уже есть конфигурационный файл, в вашем окне интерпретатора, выполнении:

ncsim -f configfile modelname

configfile является именем конфигурационного файла. Необходимо также задать путь к конфигурационному файлу, даже если это находится в той же папке как vsim.exe. Когда вы включаете аргумент design_name, вызов ncsim.exe также запускает симуляцию. Можно также задать любые другие существующие конфигурационные файлы, которые вы используете.

Запустите Mentor Graphics ModelSim с Shell.  Если у вас уже есть конфигурационный файл, в вашем окне интерпретатора, выполнении:

vsim design_name -f configfile

configfile является именем конфигурационного файла. Необходимо также задать путь к конфигурационному файлу, даже если это находится в той же папке как vsim.exe. Когда вы включаете аргумент design_name, вызов vsim также запускает симуляцию.

Конфигурационный файл задает опцию -foreign к vsim. Эта опция загружает HDL Verifier, совместно использовал библиотеку и задает ее точку входа. Можно также задать любые другие существующие конфигурационные файлы, которые вы используете.

Если вы не используете сгенерированный файл конфигурации, загружать клиент совместно использовало библиотеку, и задайте ее точку входа, откройте vsim с командой как это:

vsim design_name -foreign matlabclient /path/library

где path является путем к HDL Verifier cosimulation библиотека. См. Библиотеки Cosimulation, чтобы найти применимое имя библиотеки для вашей машины.

Примечание

Можно также вызвать эту команду из симулятора HDL.

Библиотеки Cosimulation

Рекомендуется использовать тот же компилятор для всех библиотек, соединенных в тот же исполняемый файл. Версии HDL Verifier библиотеки для компиляторов, которые поддерживают симуляторы HDL. Пользование теми же библиотеками помогает cosimulation программному обеспечению остаться совместимым с другими библиотеками C++, которые вы можете соединить в симулятор HDL, включая библиотеки SystemC.

Если какое-либо из этих условий применяет, выбирает версию библиотеки HDL Verifier, которая совпадает с компилятором, используемым для того кода:

  • Вы соединяете другие сторонние приложения в свой симулятор HDL.

  • Вы компилируете и соединяете код SystemC как часть вашего проекта или испытательного стенда.

  • Вы соединяете пользовательские приложения C/C++ в свой симулятор HDL.

Если вы не соединяете никакой другой код в свой симулятор HDL, можно использовать любую версию предоставленных библиотек. Функция для открытия симулятора HDL (nclaunch или vsim) выбирает версию по умолчанию этой библиотеки.

Для примеров при определении библиотек HDL Verifier, когда cosimulating через сеть, смотрите перекрестный Сетевой Cosimulation.

Формат имени библиотеки

HDL Verifier cosimulation библиотеки использует следующий формат имени:

edalink/extensions/{version}/{arch}/lib{version_short_name}{client_server_tag}_{compiler_tag).{libext}
 
АргументОстрые значенияЗначения ModelSim
versionincisivemodelsim
archlinux64linux64, windows32 или windows64
version_short_name lfihdllfmhdl
client_server_tagMATLAB: c
Simulink: s
MATLAB: c
Simulink: s
compiler_taggcc41, gcc44

Linux: gcc433, gcc450vc12
Windows 32: gcc421vc12
Windows 64: gcc450vc12, tmwvs

Примечание

gcc450vc12 или gcc421vc12 требуют, чтобы Визуальный Studio® 2013 перераспределил, доступный от Microsoft®.

libextsodll или so

Не все комбинации поддерживаются. Смотрите Библиотеки По умолчанию для допустимых комбинаций.

Для больше на компиляторах сборки MATLAB, см. Компиляторы Сборки MATLAB.

Библиотеки по умолчанию

Скрипты HDL Verifier полностью поддерживают использование библиотек по умолчанию. Таблица приводит библиотеки, поставленные с HDL Verifier для каждого поддерживаемого симулятора HDL. Библиотеки по умолчанию для каждой платформы являются полужирным текстом.

Тактовый сигнал острые библиотеки

ПлатформаБиблиотека MATLABБиблиотека Simulink
Linux 64

liblfihdlc_gcc41.so
liblfihdlc_gcc44.so

liblfihdls_gcc41.so
liblfihdls_gcc44.so

Библиотеки Mentor Graphics ModelSim

ПлатформаБиблиотека MATLABБиблиотека Simulink
Linux 64

liblfmhdlc_gcc433.so
liblfmhdls_gcc450.dll

liblfmhdls_gcc433.so
liblfmhdls_gcc450.dll

Windows 32

liblfmhdlc_gcc421vc12.dll

liblfmhdls_gcc421vc12.dll

Windows 64liblfmhdlc_tmwvs.dll
liblfmhdlc_gcc450.dll
liblfmhdls_tmwvs.dll
liblfmhdls_gcc450.dll

Альтернативные библиотеки симулятора HDL

Можно пользоваться различной библиотекой стороны HDL путем определения пары "имя-значение" libfile, когда вы вызываете функция vsim или nclaunch. Выберите версию библиотеки, которая совпадает с компилятором и системными библиотеками, которые вы используете для любых других библиотек C/C++, соединенных в симулятор HDL. В зависимости от версии вашего симулятора HDL вы можете должны быть явным образом установить дополнительные пути в переменной окружения LD_LIBRARY_PATH.

Например, чтобы пользоваться библиотекой не по умолчанию:

  1. Скопируйте системные библиотеки с установки MATLAB на машину с симулятором HDL. Системные библиотеки установлены в matlabroot/sys/os.

  2. Измените переменную окружения LD_LIBRARY_PATH, чтобы добавить путь к скопированным системным библиотекам.

Задайте Альтернативную Библиотеку Используя nclaunch.  Этот пример показывает настройки библиотеки для симуляции HDL, которая соединяется в пользовательском приложении C++, скомпилированном с gcc44. Поэтому средство моделирования должно пользоваться cosimulation библиотеками, скомпилированными с gcc44, вместо того, чтобы пользоваться библиотекой по умолчанию. И MATLAB и Острый работает на той же 64-битной машине Linux.

Измените переменную PATH так, чтобы функция nclaunch нашла требуемую версию симулятора HDL. Затем задайте имя библиотеки с парой "имя-значение" libfile. В подсказке команды MATLAB введите:

currPath = getenv('PATH');
setenv('PATH',['/tools/IUS-1110/bin:' currPath]);
nclaunch('tclstart',{'exec ncvhdl -64bit inverter.vhd', ...
                     'exec ncelab -64bit -access +rwc inverter', ...
                     'hdlsimulink -gui inverter' }, ...
                     'libfile','liblfihdls_gcc44');

Проверьте разрешение библиотеки с помощью ldd из консоли ncsim.

exec ldd /path/to/matlab/toolbox/edalink/extensions/incisive/linux64/liblfihdls_gcc44.so
        linux-vdso.so.1 =>  (0x00007fff2ffff000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f98361a0000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f9835e99000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f9835c16000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f9835a00000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9835676000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f983661c000)

Задайте Альтернативную Библиотеку для Острого Используя Системную Shell.  Этот пример показывает, как запустить Острый с явной опции, чтобы задать cosimulation библиотеку. Можно запустить Острый с системного интерпретатора на той же машине как MATLAB на различной машине, или на машине с различной операционной системой.

Этот пример кода работает на 64-битной версии Linux Острых. Не имеет значения, на какой машине MATLAB работает. Вместо того, чтобы пользоваться библиотекой по умолчанию в Остром распределении, этот пример пользуется библиотекой, скомпилированной с GCC 4.4.

Измените переменную PATH, чтобы указать на требуемую версию симулятора HDL. Несмотря на то, что ncsim находит любые библиотеки GCC в установке, этот пример изменяет LD_LIBRARY_PATH, чтобы показать, как использовать пользовательскую установку GCC. В csh-совместимой системе окружают, введите:

setenv PATH /tools/ius/lnx/tools/bin/64bit:${PATH}
setenv LD_LIBRARY_PATH /tools/ius/lnx/tools/systemc/gcc/4.4-x86_64/install/lib64:${LD_LIBRARY_PATH}
ncvhdl -64bit inverter.vhd
ncelab -64bit -access +rwc inverter
ncsim -tcl -loadvpi /tools/matlab/toolbox/edalink/extensions/incisive/linux64/liblfihdlc_gcc44:matlabclient inverter.vhd

Можно проверять разрешение библиотеки с помощью ldd, как в предыдущем примере.

Задайте Альтернативную Библиотеку Используя vsim.  Этот пример показывает настройки библиотеки для симуляции HDL, которая использует некоторые приложения SystemC, скомпилированные с gcc450. Можно загрузить эту версию GCC с ее связанными системными библиотеками от Mentor Graphics. Поэтому средство моделирования должно пользоваться cosimulation библиотеками, скомпилированными с gcc450, вместо того, чтобы пользоваться библиотекой по умолчанию. И MATLAB и ModelSim работают на той же 64-битной машине Linux.

Измените переменную PATH так, чтобы функция vsim нашла требуемую версию симулятора HDL. Измените theLD_LIBRARY_PATH, потому что симулятор HDL не добавляет путь к системным библиотекам. Затем задайте имя библиотеки с парой "имя-значение" libfile. В подсказке команды MATLAB введите:

currPath = getenv('PATH');
currLdPath = getenv('LD_LIBRARY_PATH');
setenv('PATH',['/tools/modelsim-10.1c/bin:' currPath]);
setenv('LD_LIBRARY_PATH',['/tools/modelsim-10.1c/gcc-4.5.0-linux/lib:' currLdPath]);
vsim('tclstart',{'vlib work','vcom inverter.vhd','vsimulink inverter'}, ...
       'libfile','liblfmhdls_gcc450');

Проверьте разрешение библиотеки с помощью ldd из графический интерфейса пользователя vsim.

exec ldd /path/to/matlab/toolbox/edalink/extensions/modelsim/linux64/liblfmhdls_gcc450.so 
        linux-vdso.so.1 =>  (0x00007fff06652000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f505083d000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f5050536000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f50502b3000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f505009d000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f504fd13000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f5050cb8000)

Задайте Альтернативу Библиотека ModelSim Используя Системную Shell.  Этот пример показывает, как запустить ModelSim с явной опции, чтобы задать cosimulation библиотеку. Можно запустить ModelSim с системного интерпретатора на той же машине как MATLAB на различной машине, или на машине с различной операционной системой.

Этот пример кода работает на 64-битной версии Linux ModelSim. Не имеет значения, на какой машине MATLAB работает. Вместо того, чтобы пользоваться библиотекой по умолчанию в распределении ModelSim, этот пример пользуется библиотекой, скомпилированной с GCC 4.5.0. Можно загрузить эту версию GCC с ее связанными системными библиотеками от Mentor Graphics.

Измените переменную PATH, чтобы указать на требуемую версию симулятора HDL. Измените theLD_LIBRARY_PATH, потому что симулятор HDL не добавляет путь к системным библиотекам, если вы сохраненный GCC в корне установки ModelSim. В csh-совместимой системе окружают, введите:

setenv PATH /tools/questasim/bin:${PATH}
setenv LD_LIBRARY_PATH /tools/mtigcc/gcc-4.5.0-linux_x86_64/lib64:${LD_LIBRARY_PATH}
setenv MTI_VCO_MODE 64
vlib work
vcom +acc+inverter inverter.vhd
vsim +acc+inverter -foreign "matlabclient /tools/matlab/toolbox/edalink/extensions/modelsim/linux64/liblfmhdlc_gcc450.so" work.inverter

Можно проверять разрешение библиотеки с помощью ldd, как в предыдущем примере.

Настройте настройку и запущенную диагностику

Если ваш симулятор HDL установлен на UNIX® или Linux, можно использовать ведомый скрипт настройки (syscheckmq для ModelSim и syscheckin для Острого), чтобы сконфигурировать MATLAB и связи Simulink со средством моделирования. Этот скрипт работает, установили ли вы HDL Verifier и MATLAB на той же машине как симулятор HDL, или на различных машинах. Скрипт настройки создает конфигурационный файл, содержащий местоположение заданных cosimulation библиотек для MATLAB и Simulink. Можно также использовать скрипт настройки, чтобы помочь диагностировать проблемы библиотеки или связь.

Для Windows HDL simulators можно вручную создать конфигурационный файл, следование инструкциям в Создает Конфигурационные файлы для Windows.

Можно затем включать этот файл, когда вы запускаете свой симулятор HDL. Только необходимо запустить этот скрипт однажды.

Можно найти скрипты настройки в этой папке:

matlabroot/toolbox/edalink/foundation/hdllink/scripts

Для получения дополнительной информации о библиотеках см. Библиотеки Cosimulation.

После того, как вы создали свои конфигурационные файлы, смотрите, Запускают симулятор HDL с Shell.

Запустите настройку и диагностический скрипт для UNIX или Linux

Этот пример показывает, как запустить скрипт настройки и протестировать связь TCP/IP с этими условиями:

  • Вы установили HDL Verifier на 64-битной машине Linux.

  • Вы переместили библиотеки HDL Verifier в различную папку, чем стандартная установка. Или, вы переместили их в различную машину, чем ваша установка MATLAB.

Тактовый сигнал, Острый (syscheckin).  Запустите скрипт путем ввода syscheckin при системном приглашении. Система возвращает следующую информацию:

% syscheckin
********************************************************************************

Kernel name: Linux
Kernel release: 2.6.22.8-mw017
Machine: x86_64
********************************************************************************

Скрипт сначала возвращает местоположение установки симулятора HDL (ncsim.exe). Если это не находит установку, вы получаете сообщение об ошибке. Или обеспечьте путь к установке или выйдите из скрипта и установите симулятор HDL. Вам затем предлагают принять эту установку или обеспечить путь к другому, после которого вы получаете сообщение, подтверждающее установку симулятора HDL:

Found /hub/share/apps/HDLTools/IUS/IUS-61-tmw-000/lnx/tools/bin/64bit/ncsim on the path.
Press Enter to use the path we found or enter another one:

********************************************************************************

/hub/share/apps/HDLTools/IUS/IUS-61-tmw-000/lnx/tools/bin/64bit/ncsim -version
TOOL: ncsim(64) 06.11-s005
Cadence Incisive mode: 64 bits
********************************************************************************

Затем, задайте, где скрипт может найти библиотеки HDL Verifier.

Select method to search for HDL Verifier libraries:
1. Use libraries in a MATLAB installation.
2. Prompt me to specify the direct path to the libraries.
2
Enter the path to liblfihdlc_gcc44.so and liblfihdls_gcc44.so:
tmp/extensions/incisive/linux64
Found /tmp/extensions/incisive/linux64/liblfihdlc_gcc44.so
and /tmp/extensions/incisive/linux64/liblfihdls_gcc44.so.

Скрипт затем запускает средство проверки зависимости, чтобы проверять на поддержку библиотек. Если это не может найти библиотеки, добавьте свой путь к среде, чтобы найти их.

********************************************************************************

Running dependency checker "ldd /tmp/extensions/incisive/linux64/liblfihdlc_gcc44.so".
Dependency checker passed.
Dependency status:
     librt.so.1 => /lib/librt.so.1 (0x00002b6119631000)
     libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x00002b611973a000)
     libm.so.6 => /lib/libm.so.6 (0x00002b6119916000)
     libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002b6119a99000)
     libc.so.6 => /lib/libc.so.6 (0x00002b6119ba6000)
     libpthread.so.0 => /lib/libpthread.so.0 (0x00002b6119de3000)
     /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
********************************************************************************

Затем, скрипт загружает библиотеки HDL Verifier и компилирует тестовый модуль, чтобы проверить, что библиотеки загрузили как ожидалось.

Press Enter to load HDL Verifier or enter 'n' to skip this test:

ncvlog(64): 06.11-s005: (c) Copyright 1995-2007 Cadence Design Systems, Inc.
define linux64 /work/matlab/toolbox/incisive/linux64
.
.
.
ncsim> exit

********************************************************************************

HDL Verifier libraries loaded successfully.
********************************************************************************

Затем скрипт проверяет на соединение по протоколу TCP. Если вы пропускаете этот шаг, конфигурационный файл задает использование общей памяти. И общая память и настройки сокета находятся в конфигурационном файле. В зависимости от вашего выбора комментируются одна настройка или другой.

Press Enter to check for TCP connection or enter 'n' to skip this test:

Enter an available port [5001]

Enter remote host [localhost]

Press Enter to continue

ttcp_glnx -t -p5001 localhost
Connection successful

Наконец, скрипт создает конфигурационные файлы. Это создает файлы и для MATLAB и для Simulink.

********************************************************************************

Press Enter to Create Configuration files or 'n' to skip this step:

********************************************************************************

Created template files simulink9675.arg and matlab8675.arg. Inspect and modify
if desired.
********************************************************************************

Diagnosis Completed

Имена файлов отличаются каждый раз, когда вы запускаете этот скрипт.

После того, как скрипт завершен, можно оставить конфигурационные файлы, где они - или перемещают их в удобное местоположение. Теперь, используйте файл, когда вы Запустите симулятор HDL с Shell.

Mentor Graphics ModelSim (syscheckmq).  Запустите скрипт путем ввода syscheckmq при системном приглашении. Система возвращает следующую информацию:

syscheckmq
********************************************************************************

Kernel name: Linux
Kernel release: 2.6.22.8-mw017
Machine: x86_64
********************************************************************************

Скрипт сначала возвращает местоположение установки симулятора HDL (vsim.exe). Если это не находит установку, вы получаете сообщение об ошибке. Или обеспечьте путь к установке или выйдите из скрипта и установите симулятор HDL. Вам затем предлагают принять эту установку или обеспечить путь к другому, после которого вы получаете сообщение, подтверждающее установку симулятора HDL.

Found /hub/share/apps/HDLTools/ModelSim/modelsim-6.4a-tmw-000/modeltech/bin/vsim
    on the path.
Press Enter to use the path we found or enter another one:

********************************************************************************

/hub/share/apps/HDLTools/ModelSim/modelsim-6.4a-tmw-000/modeltech/bin/vsim -version
Model Technology ModelSim SE-64 vsim 6.4a Simulator 2008.08 Aug 28 2008
ModelSim mode: 32 bits
********************************************************************************

Затем, задайте, где скрипт может найти библиотеки HDL Verifier.

Select method to search for HDL
            Verifier libraries:
1. Use libraries in a MATLAB installation.
2. Prompt me to specify the direct path to the libraries.
2
Enter the path to liblfmhdlc_gcc450.so and liblfmhdls_gcc450.so:
/tmp/extensions/modelsim/linux64
Found /tmp/extensions/modelsim/linux64/liblfmhdlc_gcc450.so
and /tmp/extensions/modelsim/linux64/liblfmhdls_gcc450.so.

Скрипт затем запускает средство проверки зависимости, чтобы проверять на поддержку библиотек. Если это не может найти библиотеки, добавьте свой путь к среде, чтобы найти их.

********************************************************************************

Running dependency checker "ldd /tmp/extensions/modelsim/linux64/liblfmhdlc_gcc450.so".
Dependency checker passed.
Dependency status:
        librt.so.1 => /lib/librt.so.1 (0x00002acfe566e000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00002acfe5778000)
        libm.so.6 => /lib/libm.so.6 (0x00002acfe5976000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002acfe5af8000)
        libc.so.6 => /lib/libc.so.6 (0x00002acfe5c6000)
        /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
********************************************************************************

Затем, скрипт загружает библиотеки HDL Verifier и компилирует тестовый модуль, чтобы проверить, что библиотеки загрузили как ожидалось.

Press Enter to load HDL
            Verifier or enter 'n' to skip this test:

Reading /hub/share/apps/HDLTools/ModelSim/modelsim-6.4a-tmw-000/se/modeltech/
    linux_x86_64/../modelsim.ini "worklfx9019" maps to directory worklfx9019. 
    (Default mapping)
Model Technology ModelSim SE-64 vlog 6.4a Compiler 2008.08 Aug 28 2008
-- Compiling module d9019

Top level modules:
        d9019

********************************************************************************

Reading /hub/share/apps/HDLTools/ModelSim/modelsim-6.4a-tmw-000/se/modeltech/tcl
    /vsim/pref.tcl 

# 6.4a

# vsim -do exit -foreign {matlabclient /tmp/lfmconfig/linux64/liblfmhdlc_gcc450.so} 
      -noautoldlibpath -c worklfx9019.d9019
# //  ModelSim SE-64 6.4a Aug 28 Linux 2.6.22.8-mw017
.
.
.
# Loading work.d9019
# Loading /tmp/lfmconfig/linux64/liblfmhdlc_gcc450.so
# exit 

********************************************************************************

HDL
            Verifier libraries loaded successfully.
********************************************************************************

Затем скрипт проверяет на соединение по протоколу TCP. Если вы пропускаете этот шаг, конфигурационный файл задает использование общей памяти. И общая память и настройки сокета находятся в конфигурационном файле. В зависимости от вашего выбора комментируются одна настройка или другой.

Press Enter to check for TCP connection or enter 'n' to skip this test:

Enter an available port [5001]

Enter remote host [localhost]

Press Enter to continue

ttcp_glnx -t -p5001 localhost
Connection successful

Наконец, скрипт создает конфигурационные файлы. Это создает файлы и для MATLAB и для Simulink.

********************************************************************************

Press Enter to Create Configuration files or 'n' to skip this step:

********************************************************************************

Created template files simulink9675.arg and matlab8675.arg. Inspect and modify
if desired.
********************************************************************************

Diagnosis Completed

Имена файлов отличаются каждый раз, когда вы запускаете этот скрипт.

После того, как скрипт завершен, можно оставить конфигурационные файлы, где они - или перемещают их в удобное местоположение. Теперь, используйте файл, когда вы Запустите симулятор HDL с Shell.

Создайте конфигурационные файлы для Windows

Скрипт настройки не работает на Windows. Однако, если ваш симулятор HDL работает на Windows, можно вручную создать конфигурационные файлы. Только симулятор HDL ModelSim поддерживается для Windows.

Конфигурационный файл должен содержать аргумент -foreign, используемый для вызовов vsim. Укажите, что путь к HDL Verifier совместно использовал библиотеку, которую вы хотите вызвать. См. Библиотеки Cosimulation. Строки с комментариями, отмеченные //, являются дополнительными.

Для получения дополнительной информации об опции -foreign обратитесь к документации ModelSim.

  • Создайте конфигурационный файл MATLAB:

    //Command file for HDL Verifier MATLAB library
    //for use with Mentor Graphics ModelSim.
    //Loading of foreign Library, usage example: vsim -f matlab14455.arg entity.
    //You can manually change the following line to point to the applicable library.
    //The default location of the 32-bit Windows library is at
    //MATLABROOT/toolbox/edalink/extensions/modelsim/windows32/liblfmhdlc_gcc421vc12.dll.
    
    -foreign "matlabclient c:/path/liblfmhdlc_gcc421vc12.dll"
  • Создайте конфигурационный файл Simulink:

    //Command file for  HDL Verifier Simulink library
    //for use with Mentor Graphics ModelSim.
    //Loading of foreign Library, usage example: vsim -f simulink14455.arg entity.
    //You can manually change the following line to point to the applicable library.
    //For example the default location of the 32-bit Windows library is at
    //MATLABROOT/toolbox/edalink/extensions/modelsim/windows32/liblfmhdls_gcc421vc12.dll.
    
    //For socket connection uncomment and modify the following line:
    -foreign "simlinkserver c:/path/liblfmhdls_gcc421vc12.dll  ; -socket 5001"
    
    //For shared connection uncomment and modify the following line:
    //-foreign "simlinkserver c:/path/liblfmhdls_gcc421vc12.dll"

    Примечание

    Этот пример показывает синтаксис -foreign и для сопряжений с общей памятью и для сокетных соединений. Прокомментируйте, какой бы ни тип коммуникации вы не используете. Если вы используете сокетное соединение TCP/IP, подтвердите, что номер порта, используемый в этом конфигурационном файле, доступен.

Сохраните конфигурационный файл в удобное местоположение. Теперь, используйте файл, когда вы Запустите симулятор HDL с Shell.

Смотрите также

Функции

Блоки

Похожие темы