Микросхема моделирование проектирование


Структурные схемы микросхем


Download 44.74 Kb.
bet8/9
Sana31.01.2023
Hajmi44.74 Kb.
#1143281
1   2   3   4   5   6   7   8   9
Bog'liq
микросхема моделирование проектирование

Структурные схемы микросхем
Так же для построения функциональной модели необходимо использовать схемы функционирования.
В силу того что схема К155ЛП5 является очень простой и поэтому структурная схема для нее необходимо. А ИС К155ИМ3 и К155ИР13 являются более сложными и имеют внутренние контакты и элементы с памятью ниже я привел две схемы.
Рекомендуемая структура программы, имитирующей функционирование элемента, приведена на рисунке 3.8. При переходе в режим формирования функциональной части модели элемента на экране дисплея появляется шаблон - начальная часть программы. Она включает в себя комментарий, название основной программы (MODEL) и фигурные скобки {}. Комментарий содержит имя модели и ее функциональное назначение.
Текст комментария берется из данных структурной части модели. Фигурные скобки отмечают начало и конец последовательности операторов, образующих тело функции.
После открывающейся фигурной скобки следует описание переменных. С точки зрения методики построения модели возможны входные, выходные, внутренние и промежуточные переменные. Каждому входу и выходу элемента сопоставляется некоторая входная или выходная переменные, соответственно. Для работы с этими переменными используются специальные функции IN(), OUT(,) ( см.п.4.4). Внутренние переменные вводятся для хранения внутреннего состояния элемента памяти (триггера). Им сопоставляют незадействованные и (или) несуществующие (будем использовать также термин "фиктивные") контакты элемента. Работа с внутренними переменными может также осуществляться с помощью функций IN() и OUT (,).
Описатель типа данных TEMP (рисунок 3.10) применяется для перечисления промежуточных переменных, которые будут использоваться при программировании функции элемента. Описатель типа данных TEMP в программе модели может отсутствовать, если в процессе вычислений достаточно оперировать значениями на контактах элемента, т.е. функциями IN и OUT.
В блоке присваивания начальных значений задаются начальные значения переменных. Для этого может применяться функция IN (), где в скобках указывается номер входного контакта. Функция IN читает из специального массива значения сигнала на контакте. Например, запись a = IN(2) означает: переменной "a" присвоить значение, равное значению сигнала на контакте 2.
В блоке вычислений программируются действия, в ходе которых по значениям сигналов на входах и внутренних переменных определяются выходные сигналы элемента.
Присвоение вычисленных значений выходным контактам элемента осуществляется с помощью функции OUT (,), где в скобках через запятую указываются номер выходного контакта и имя переменной (или выражения), значение которой присваивается выходному контакту. Так, запись OUT (7,a) означает, что выходному контакту с номером 7 присваивается значение переменной "a". Вместо переменной "a" может стоять выражение. Например, запись вида OUT(7,IN(2)&b) или OUT(7,f = IN(2)&b) означают: выходному контакту 7 присвоить значение произведения IN (2)&b или переменной f = IN(2)&b.
Для упрощения программирования функции элемента можно использовать специально разработанные функции (подпрограммы) на языке Си, а также специальные константы и переменные.
Ниже дается список имен специальных функций, констант, переменных и их назначений.
MODEL - имя основной пpогpаммы функции модели, включающей в себя все определения и вычисления.
IN(K) - чтение значения на входном контакте K.
OUT(Y,A) - запись значения A на выходной контакт Y.
PAR(P) - чтение значения СП модели; P - номер СП, по которому он описан в таблице ввода СП структурной части модели;
LN(А) - инверсия значения аргумента А.
LNA(А) - инверсия значения аргумента A - цифрового сигнала на контакте аналого- цифровой микросхемы.
LN(IN(K)) - инверсия значения цифрового сигнала на контакте K.
ADL(l1,L2) - алгебраическое сложение двух аналоговых значений; результатом является значение суммы (L1+L2) аргументов L1 и L2.
SUL(L1,L2) - алгебраическое вычитание двух аналоговых значений с проверкой переполнения и потери значимости; первый аргумент - вычитаемое; результатом является значение разности (L1-L2) аргументов L1 и L2.
MLL(L1,L2) - алгебраическое умножение двух аналоговых значений с проверкой переполнения; результатом является значение произведения (L1xL2) аргументов L1 и L2.
DIL(L1,L2) - алгебраическое деление нацело двух аналоговых значений с проверкой деления на ноль и потери значимости; первый аргумент - делимое; результатом является целая часть от деления L1 на L2, остаток при этом теряется.
CML(L1,L2) - сравнение (>,<,=) двух аналоговых значений; результатом сравнения аргументов L1 и L2 является:
1) 0, если L1 = L2;
2) 1, если L1 > L2;
3) -1, если L1 < L2.
(Сравнение аргументов используется в конструкциях: if (CML(L1,L2)>0), if (CML(L1,L2)<0), if (CML(L1,L2)=0).
OTR(A) - изменение знака аргумента (A) - аналогового значения сигнала.
TO64(A) - преобразование значения аргумента А из формата 32 бита (2 слова) в формат 64 бит (4 слова).
FROM64(A) - преобразование значения аргумента А из формата 64 бита (4 слова) в формат 32 бита (2 слова).
Определены следующие специальные константы:
1) аналоговые эквиваленты (в вольтах) логических уровней ИС ТТЛ технологии:
MIN0T - минимальное значение лог.0 (О в),
MAX0T - максимальное значение лог.0 (0,4 в),
MIN1T - минимальное значение лог.1 (2,4 в),
MAX1T - максимальное значение лог.1 (5,0 в);
2) аналоговые эквиваленты логических уровней ИС ЭСЛ технологии:
MIV0E - минимальное значение лог.0 (-1,85 в),
MAX0E - максимальное значение лог.0 (-1,52 в),
MIN1E - минимальное значение лог.1 (-1 в),
MAX1E - максимальное значение лог.1 (-0,81 в);
3) напряжение питания моделируемого устройства:
MINU - минимально допустимое значение,
MAXU - максимально допустимое значение;
4) константы, определяющие значения сигналов и СП:
NULL - нулевое аналоговое значение,
LOG1 - логический уровень '1',
LOG0 - логический уровень '0',
X - неизвестное (неопределенное) значение,
Z - высокоимпедансное состояние,
НЕТ - значение СП модели не задано.
Константы могут быть использованы при составлении функциональной модели. Например, OUT(Y,Z) - присваивание выходному контакту Y высокоимпедансного состояния;
OUT(Y,X) - присваивание выходному контакту Y неопределенного состояния;
OUT(Y,LOGO) - присваивание выходному контакту Y значение логического нуля.
5) константы, связанные с процессом моделирования всего устройства:
NN - номер текущего набора,
NI - номер текущей итерации.
Значения констант (1,2,3 и 5 групп) задаются в программе моделирования MODA и могут быть использованы при программировании функции элемента.
Специальные функции и константы описываются строчными латинскими буквами. Имена дpугих переменных могут быть произвольными, но не должны совпадать со специальными.
Допускается использовать функции стандартной библиотеки транслятора Туpбо-Cи [5]: ACOS, ASIN, ATAN, ATAN2, COS, COSH, EXP, LOG, LOG0, SIN, SINH, SQRT, TAN, TANH, CEIL, FABS, FLOOR,FMOD, FREXP, LDEXP, POW, POW10, HYPOT, POLY. Остальные функции не поддерживаются.

Download 44.74 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling