Микросхема моделирование проектирование
Структурные схемы микросхем
Download 44.74 Kb.
|
микросхема моделирование проектирование
Структурные схемы микросхем
Так же для построения функциональной модели необходимо использовать схемы функционирования. В силу того что схема К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: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling