Запланируйте сеанс испытательного стенда MATLAB для инстанцированного модуля HDL
Примечание
Введите эту команду в симулятор HDL, не в MATLAB®.
matlabtb
выполняет следующие действия: instance
Запускает клиентский компонент симулятора HDL программного обеспечения HDL Verifier™.
Сопоставляет заданный экземпляр проекта HDL, созданного в симуляторе HDL с функцией MATLAB.
Создает процесс, который планирует вызовы заданной функции MATLAB.
Отмены любые незаконченные события запланированы предыдущим matlabtb
команда, которая задала тот же экземпляр. Например, если вы даете команду matlabtb
например, foo
, matlabtb
отмены все ранее запланированные события, инициируемые matlabtb
на foo
.
Эта команда дается в симуляторе HDL.
Стимулы имитатора функций испытательного стенда MATLAB передали сущностям в модели HDL. Обеспечьте стимул из MATLAB или HDL, запланированного с matlabtb
.
Примечание
Коммуникационный режим, для которого вы задаете matlabtb
должен совпадать с коммуникационным режимом, для которого вы задали hdldaemon
когда вы установили связь сервера.
Для коммуникаций сокета задайте номер порта, для которого вы выбрали hdldaemon
когда вы выпускаете запрос ссылки с matlabtb
команда в симуляторе HDL.
matlabtb
добавляет время технические требования для планирования заданной функции MATLAB.instance
time-specs
matlabtb
задает одни или несколько дополнительных технических требований как пары, состоящие из допустимого имени спецификации и его значения. Например, instance
___ pair1 ... pairN
-mfunc vlogmatlabc
задает для функции MATLAB vlogmatlabc
быть сопоставленным с заданным модулем HDL. Можно задать эти пары с или без time-specs
.
matlabtb
с -socket
Аргумент и параметры времениЗапустите клиентский компонент симулятора HDL HDL Verifier, сопоставьте экземпляр сущности myfirfilter
с функцией MATLAB myfirfilter
, и начните локальный TCP/IP основанный на сокете сеанс испытательного стенда с помощью порта TCP/IP 4449. На основе заданных стимулов испытательного стенда, myfirfilter.m
выполняет 5 наносекунд с текущего времени и затем выполняется неоднократно каждые 10 наносекунд.
hdlsim> matlabtb myfirfilter 5 ns -repeat 10 ns -socket 4449
Запустите клиентский компонент симулятора HDL HDL Verifier. Начните удаленный TCP/IP основанный на сокете сеанс с помощью удаленного хоста - компьютера MATLAB под названием computer123
и порт TCP/IP 4449. На основе заданных стимулов испытательного стенда, myfirfilter.m
выполняет 10 наносекунд с текущего времени, каждый раз /top/fclk
сигнала испытывает возрастающее ребро, и каждый раз
/top/din
сигнала состояние изменений.
hdlsim> matlabtb /top/myfirfilter 10 ns -rising /top/fclk -sensitivity /top/din -socket 4449@computer123
Запустите клиентский компонент симулятора HDL программного обеспечения HDL Verifier. -mfunc
опция задает функцию MATLAB, чтобы соединиться с и -socket
пара задает номер порта для режима сокетного соединения. -sensitivity
пара указывает, что сеанс испытательного стенда делают чувствительным к sine_out
сигнала.
hdlsim> matlabtb osc_top -sensitivity /osc_top/sine_out -socket 4448 -mfunc hosctb
instance
— Экземпляр модуля HDL сопоставлен с функцией испытательного стенда MATLABЭкземпляр модуля HDL, который сопоставлен с функцией MATLAB в виде вектора символов или строкового скаляра, который указывает на экземпляр модуля HDL. По умолчанию, matlabtb
команда сопоставляет экземпляр к функции MATLAB, которая имеет то же имя как экземпляр. Например, если экземпляром является myfirfilter
, matlabtb
сопоставляет экземпляр с функцией MATLAB myfirfilter
Команда игнорирует имена иерархии. Например, если экземпляром является top.myfirfilter
, matlabtb
команда сопоставляет только myfirfilter
с функцией MATLAB. Чтобы сопоставить заданный экземпляр с функцией MATLAB, которая отличается от имени экземпляра, используйте -mfunc
спецификация как в pair1 ... pairN
аргумент.
Примечание
Если вы задаете экземпляр модуля HDL, который уже сопоставлен с функцией MATLAB (через matlabcp
или matlabtb
) новая ассоциация перезаписывает существующий.
Типы данных: char |
string
time-specs
— Запланируйте выполнение функции MATLABРазделенный пробелом список технических требований одного или нескольких времен в виде разделенного пробелом списка технических требований одного или нескольких времен перечислен в этой таблице.
Спецификация времени | Описание |
---|---|
time_1 time_2 ... time_n
| Задайте один или несколько дискретных раз, в котором симулятор HDL вызывает заданную функцию MATLAB. Требуемые времена относительно текущего времени симуляции. Если вы не задаете время, симулятор HDL вызывает функцию MATLAB однажды в начале симуляции. Каждый time_i состоит из номера, указывающего на временную стоимость и дополнительную единицу измерения времени:
Если вы не задаете единицу измерения времени, команда обрабатывает временную стоимость как значение меток деления симуляции HDL. Разделите каждый time_i пробелом. Например, этот код задает для функции MATLAB matlabtb vlogmodel_top 10 ns, 10 ms, 10 sec |
-repeat <time> | Укажите, что симулятор HDL вызывает функцию MATLAB неоднократно на основе требуемых времен. Временные стоимости относительно значения tnow в то время, когда симулятор HDL сначала вызывает функцию MATLAB. |
-cancel <time> | Задайте одно время, в которое заданная функция MATLAB прекращает выполняться. Временная стоимость относительно значения Примечание
|
Примечание
Поместите технические требования времени после matlabtb
экземпляр и перед любыми дополнительными аргументами команды; в противном случае технические требования времени проигнорированы.
pair1 ... pairN
— Дополнительные технические требованияДополнительные технические требования в виде разделенного пробелом списка одной или нескольких пар спецификации. Пара спецификации состоит из имени и значения. Эта таблица показывает допустимые варианты для этих пар.
Пары спецификации
Имя | Значение | Описание |
---|---|---|
-socket | Режим Communication, который совпадает с коммуникационным режимом, выпущенным hdldaemon команда | Задайте для HDL Verifier, чтобы использовать сокеты TCP/IP, чтобы связаться между симулятором HDL и MATLAB. Общая память является режимом по умолчанию коммуникации и вступает в силу, если вы не задаете Для получения дополнительной информации о выборе портов сокета TCP/IP смотрите Порты Сокета TCP/IP. Примечание Коммуникационный режим, который вы задаете с |
-rising | Список, разделенный запятыми одного или нескольких имен сигнала | Задайте
Примечание При определении сигналов с |
-falling | Список, разделенный запятыми одного или нескольких имен сигнала | Задайте пути одного или нескольких сигналов, заданных как логический тип ( Для определения перехода сигнала в:
Примечание При определении сигналов с |
-sensitivity | Список, разделенный запятыми одного или нескольких имен сигнала | Задайте пути одного или нескольких сигналов. Эта пара указывает, что приложение вызывает заданную функцию MATLAB каждый раз, когда любой из заданных сигналов изменяет состояние. Сигналы любого типа могут появиться в списке чувствительности и могут быть расположены в любой уровень в иерархии модели HDL. Примечание При определении сигналов с |
-mfunc | Имя функции MATLAB | Задайте имя функции MATLAB, которая сопоставлена с экземпляром модуля HDL, который вы задаете для |
-use_instance_obj | Структура с полями как описано в таблице в-use_instance_obj Полях | Эта пара Сообщает функции, заданной с аргументом |
-argument | Аргумент экземпляра HDL | Передайте пользовательские аргументы от |
-use_instance_obj
Поля
Поле | Доступ для чтения или доступ для записи | Описание |
---|---|---|
tnext | Только для записи | Запланируйте коллбэк в течение времени набора. Это поле эквивалентно старому hdl_instance_obj.tnext = hdl_instance_obj.tnow + 5e-9 |
userdata | Читайте или запишите | Сохраните переменные состояния тока matlabtb экземпляр. Можно получить переменные в следующий раз, когда коллбэк этого экземпляра планируется. |
simstatus | Только для чтения | Сохраните состояние симулятора HDL. Программное обеспечение HDL Verifier устанавливает это поле на >> hdl_instance_obj.simstatus ans= Init |
instance | Только для чтения | Сохраните полный путь экземпляра Verilog или VHDL, сопоставленного с коллбэком. В симуляторе HDL: hdlsim> matlabtb osc_top -mfunc oscfilter use_instance_obj В MATLAB: >> hdl_instance_obj.instance ans= osc_top |
argument | Только для чтения | Сохраните аргумент, который установлен matlabtb osc_top -mfunc oscfilter -use_instance_obj -argument foo -argument опция только, когда это используется с -use_instance_obj пара. В противном случае команда игнорирует аргумент. argument свойство только для чтения. >> hdl_instance_obj.argument ans= foo |
portinfo | Только для чтения | Храните информацию о портах VHDL и Verilog, которые сопоставлены с этим экземпляром. hdl_instance_obj.portinfo.field1.field2.field3
Примечание Когда вы используете |
tscale | Только для чтения | Сохраните предел разрешения (метка деления) в секундах симулятора HDL. >> hdl_instance_obj.tscale ans= 1.0000e-009 Примечание Когда вы используете |
tnow | Только для чтения | Сохраните текущее время. hdl_instance_obj.tnext = hld_instance_obj.tnow + fastestrate; |
portvalues | Читайте или запишите | Сохраните текущие значения и установите новые значения для выходных и входных портов для a >> hdl_instance_obj.portvalues ans = Read Only Input ports: clk_enable: [] clk: [] reset: [] Read/Write Output ports: sine_out: [22x1 char] |
linkmode | Только для чтения | Сохраните состояние коллбэка. HDL Verifier устанавливает это поле на >> hdl_instance_obj.linkmode ans= component |
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.