НПО Системы Безопасности
(499)340-94-73 График работы:
ПН-ПТ: 10:00-19:00
СБ-ВС: выходной

Главная » Периодика » Безопасность

0 ... 84858687888990 ... 233


Математические функции и операторы

Для манипулирования с данными и проверки условий, влияющих на выполнение программы, в программе выражения с различными операторами и функциями. Выражения всегда записываются в круглых скобках. Операторы в выражении выполняются слева направо, начиная с самых внутренних скобок.

Таблица 4.49

Выражение

Описание

Операторы

+, -, *, /, ~,!, &&, II,&, 1,», «, >, <, =, !=, >=, <=

Математические функции

POW, ABS, SQRT, ЕХР, LOG, LOG10, SIN, COS, TAN, ASIN, ACOS, ATAN, HSIN, HCOS, HTAN

Выражения

Таблица 4.50

Выражение

Описание

PARAM SET

Определяет, были ли предварительно установлены какие-либо SimCode параметры

PWL TABLE

Возвращает значение из интерполяционной поисковой таблицы

SELECT VALUE

Возвращает значение из простой поисковой таблицы

MIN TYP MAX

Возвращает значение из MIN TYP MAX поисковой таблицы

NUMBER

Возвращает число, полученное на основе двоичных взвешенных состояний выводов

VALUE

Возвращает состояние указанного вывода

CHANGE TIME

Возвращает время последнего изменения состояния указанного вывода

WIDTH TIME

Возвращает ширину последнего импульса сигнала на указанном выводе

INSTANCE

Проверяет наличие указанного экземпляра устройства

CHANGED xx

Проверяет, изменилось ли состояние указанного вывода

READ DATA

Читает данные из ASCII файла в массивы

Программное управление

Эти выражения применяются для управления процессом выполнения программы.

Таблица 4.51

Выражение

Описание

# хххх source

Определяет начало SimCode кода функции

IF... THEN

Задает условный переход

WHILE... DO

Задает циклическое выполнение, пока условие истинно

GOTO

Определяет безусловный переход

GOSUB

Выполняет вызов подпрограммы

RETURN

Выполняет возврат из подпрограммы

EXIT

Определяет конец программы



Вывод текста

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

Таблица 4.52

Выражение

Описание

PROMPT

Приостановка процесса моделирования и вывод сообщения

MESSAGE

Вывод сообщения без остановки

Отладка

Эти команды управляют пошаговым выполнением программы в режиме отладки.

Таблица 4.53

Выражение

Описание

STEP.ON

Включение режима пошагового выполнения

STEP OFF

Выключение режима пошагового выполнения

Синтаксис языка SimCode

в данном разделе приведено подробное описание всех элементов языка SimCode. При описании синтаксиса здесь используются следующие стили: italics зарезервированные слова или важное замечание;

< > значение/переменная/вывод/выражение;

[ ] необязательный параметр;

{ }1{ } выбор (возможен выбор одного из этих параметров).

# хххх source

Определяет начало SimCode кода функции. Основная форма

# <func name> source

Параметры

<func name> Имя SimCode функции. Применение

Это выражение позволяет идентифицировать SimCode функцию, после чего она может быть использована для моделирования устройства. Каждая функция должна начинаться с этого выражения.

Замечания

Ядро моделирования программы SPICE способно читать как исходный, так и скомпилированный коды моделей. Ключевое слово source сообщает программе моделирования, что это исходный код, который она автоматически скомпилирует при запуске процесса моделирования. Скомпилированный код будет помещен в текстовый ASCII файл SIMLIST.TXT в той же директории, где расположен проект схемы, использующей данное устройство.



Пример

==================================

# MyDevice source

==================================

INPUTS VCC, GND, INI, IN2

OUTPUTS VCC LD, IN1 LD, IN2 LD, OUT

EXIT

CHANGE TIME

Возвращает время последнего изменения состояния указанного вывода. Основная форма

CHANGE TIME(<pin>)

Параметры

<pin> Имя входного или выходного вывода.

Применение

Эта функция возвращает вещественное значение, показывающее время последнего изменения состояний указанного входного или выходного вывода.

Пример

Т1 = (CHANGE TIME(INA));

CHANGED xx

Проверяет, изменилось ли состояние указанного вывода. Основная форма

CHANGED xx(<pin> [{<){<=){>){>=} <var/time/value>])

Параметры

<pin> Имя входного или выходного вывода.

<var/time/value> Элемент, с которым сравнивается <pin>.

Применение

Эта функция используется для определения того, изменилось ли состояние указанного вывода. Часть ключевого слова хх может быть опущена, что устанавливает проверку всех типов изменений, или может принимать одно из следующих значений:

LH, LX, HL, их, XL, ХН, LZ, ZL, ZH, ZX, HZ, XZ,

что устанавливает проверку специфичных типов изменений. Необязательные параметры, операторы сравнения и <var/time/value> должны быть включены в выражение, если нужно сделать проверку более специфичных изменений. При их отсутствии функция возвратит 1, если состояние вывода изменилось на текущем щаге моделирования.

Пример

IF (CHANGED LH(CLK)) THEN ...

IF (CHANGED(DATA < lOn)) THEN ...



0 ... 84858687888990 ... 233