Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Цифровые компоненты
Цифровые компоненты Цифровые компоненты (примитивы) задаются по формату Uxxx < mun> [(< список параметров> *)] < +узел источника питания> + < -узел источника питания> < список узлов> * + < имя модели динамики> < имя модели вход/выход> + [MNTYMXDLY=< вы6op значения задержки> ] + [IO_LEVEL=< уровень модели интерфейса> ] Параметр < тип> указывает тип логического устройства (их перечень приведен ниже, например AND, NOR); в круглых скобках указываются значения одного или более параметров через запятую (например, для схемы И указывается количество входов). После списка узлов подключения логического устройства следуют имена двух, моделей. Первая модель описывает динамические свойства устройства, вторая - характеристики входных и выходных сопротивлений. Модели динамики имеют ключевые слова, приведенные в табл. 4.30. Таблица 4.30. Ключевые слова модели динамики
Модели вход/выход имеют ключевое слово UIO (п. 4.3.5). Параметр MNTYMXDLY позволяет конкретному индивидуальному устройству назначить минимальное, типичное или максимальное значение времени задержки, указанное в спецификации модели его динамики: 0 - значение задержки, заданное параметром DIGMNTYMX директивы.OPTIONS (по умолчанию параметр равен 2); 1 - минимальное значение; 2 - типичное значение; 3 - максимальное значение; 4 - расчет наихудшего случая (минимум/максимум). Параметр IO_LEVEL указывает тип цифроаналогового и аналого-цифрового интерфейса данного цифрового устройства: 0 - в соответствии со значением параметра DIGIOLVL директивы.OPTIONS (по умолчанию он равен 1); 1 - интерфейс AtoD1/DtoA1; 2 - интерфейс AtoD2/DtoA2; 3 - интерфейс AtoD3/DtoA3; 4 - интерфейс AtoD4/DtoA4. Запаздывание сигнала в примитивах цифровых устройств определяется в двух моделях: динамики и вход/выход. Модель динамики определяет задержки распространения и такие временные ограничения, как время установки (setup) и удерживания (hold). Модель вход/выход задает входные и выходные сопротивления, емкости и время переключения. Когда выход примитива соединяется с другим примитивом, общее время задержки распространения первого примитива равно сумме времени установления напряжения на его нагрузке и времени распространения сигнала, указанного в модели динамики. Время установления напряжения на нагрузке (loading delay) рассчитывается по формуле T нагр =0, 69R вых С нагр где R вых - выходное сопротивление устройства, равное DRVH или DRVL в зависимости от логического уровня на выходе; С нагр - сумма входных и выходных емкостей цифровых устройств INLD, OUTLD, подключенных к данному выводу. Когда цифровой примитив подключен к аналоговому устройству, задержка распространения уменьшается на величину, равную времени переключения, заданного в модели вход/выход. Минимальная длительность сигнала на входе цифрового примитива, необходимая для изменения его логического состояния, должна превышать время задержки, приведенное в модели динамики (это ограничение не относится к цифровым линиям задержки). Более короткие входные импульсы не вызовут на выходе никакого эффекта. Пример. Приведем описание смешанной цепи на рис. 4.33, а: Analog/Digital Interface Example .ОРТ АССТ LIST LIBRARY EXPAND RELTOL=.001 .LIB DIG.LIB VSIN 1 OSIN(05v1MEG) U1 STIM(1, 1) $G_DPWR $G_DGND 2 IO_STD + TIMESTEP = 10ns + (OC, 1)LABEL=BEGIN + (10, 0) (20, 1) (3C.X) (40, 0) (5C.Z) + 6C GOTO BEGIN -1 TIMES X1 1 23133LA3 RL 3 0 25k CL 3 0 5pF .TRAN 5ns 500ns .PRINT TRAN V(1) D(2) V(3) .PROBE .END Здесь имеется обращение к библиотечному файлу моделей цифровых отечественных компонентов dig.lib5. Обратим внимание, что цифровые ИС, даже простейшие, для которых имеются примитивы, представлены в библиотеке в виде макромоделей, имена которых совпадают с обозначением по ЕСКД (правда, в латинской транскрипции). Это позволяет пользователю не задумываться о правилах описания каждой конкретной ИС, предоставляя это разработчикам библиотек моделей. Информация об автоматически включаемых в схему макромоделях устройств сопряжения, их именах и именах новых цифровых узлов помещается в выходном файле с расширением*.OUT: **** Generated AtoD and DtoA Interfaces **** * Analog/Digital interface for node 1 * Moving X1.U1: IN1 from analog node 1 to new digital + node 1$AtoD X$1_AtoD1 1 1$AtoDAtoD Analog/Digital interface for node 3 Moving X1.111: OUT1 from analog node 3 to new digital + node 3$DtoA X$3_DtoA1 3$DtoA 3 DtoA 'Analog/Digital interface power supply subckt X$DIGIFPWR 0 DIGIFPWR В качестве примера расчета переходных процессов приведем фрагмент выдачи данных в табличной форме по директиве.PRINT: TIME V(1) D(2) V(3) 0.000E+00O 0.000E+00 1 3.551 E+00 5.000E-09 1.570E-01 1 3.551 E+00 1.000E-08 3.139E-01 0 3.551 E+00 1.500E-08 4.704E-01 0 3.551 E+00 2.000E-08 6.264E-01 1 3.551 E+00 2.500E-08 7.820E-01 X 3.551 E+00 З.ОООЕ-08 9.369Е-01 X 3.551 E+00 .Перейдем теперь к описанию цифровых компонентов различных типов, сгруппировав их по следующим категориям:
Многоразрядные АЦП задаются по формату Uxxx ADC(< m>) < список узлов> < модель динамики> + < модель вход / выход> + [MNTYMXDLY=< вы6op значения задержки> ] + [IO_LEVEL=< уровень модели интерфейса> ] Имена узлов перечисляются в < списке узлов> в следующем порядке (рис. 4.26): < +узел источника питания>, < -узел источника питания>, < аналоговый вход>, < опорное напряжение>, < " земля" >, < сигнал разрешений, < сигнал преобразований, < сигнал переполнения>, < т-и разряд >,..., < 1-й разряд> Смысл остальных параметров такой же, что и для интерфейса А/Ц типа Оххх. Модель динамики имеет формат .MODEL < имя модели> UADC [(параметры)] Рис. 4.26. Аналого-цифровой преобразователь Параметры этой модели приведены в табл. 4.31 (значения по умолчанию - 0, единица измерения - с). Таблица 4.31. Параметры модели динамики ЦАП
Временная диаграмма АЦП показана на рис. 4.27. Выходной сигнал АЦП равен ближайшему целому выражения (V(< аналоговый вход >, < " земля" > /V(< опорное напряжение >, < " земля" >)*2 m где т - количество разрядов. Если это выражение больше 2 т -1, все разряды данных и разряд переполнения примут значение 1. Если оно меньше нуля, разряды данных примут нулевое значение, а разряд переполнения - 1. Таким образом, опорное напряжение устанавливает диапазон входного напряжения АЦП. Сигнал разрешения (convert pulse) может иметь любую, в том числе и нулевую длительность. Если цикл кодирования t psd = 0, то т разрядов данных и разряд переполнения, не принимая неопределенного состояния, сразу принимают новое значение. Между узлами < опорное напряжение> и < " земля" > включается резистор с сопротивлением, равным 1/GMIN. Рис. 4.27. Переходные процессы в АЦП Выборки входных напряжений производятся по переднему фронту импульса разрешения, причем скорость изменения входных напряжений не влияет на результат преобразования. Приведем пример описания 4-разрядного АЦП: U3 ADC(4) $G_DPWR G_DGND1 10 0 conv stat over out3 out2 outl outO DINAM IO_ADC .MODEL DINAM UADC( + tpcsmn=5ns, tpcsty=8ns, tpcsmx=10ns, + tpsdmn=16ns, tpsdty=20ns, tpsdmx=22ns, + tpdsmn=4ns, tpdsty=5ns, tpdsmx=6ns) .MODEL IO_ADQ UIO(drvh=50 drvl=50) Многоразрядный ЦАП задается по формату Uxxx DAC(< m>) < список узлов> < модель динамики> + < модель вход/выход> + [MNTYMXDLY=< выбор значения задержки> ] + [IO_LEVEL=< ypoвень модели интерфейса> ] Имена узлов перечисляются в < списке узлов> в следующем порядке (рис. 4.28): < +узел источника питания>, < -узел источника питания>, < аналоговый выход>, < опорное напряжение>, < " земля" >, < т-й разряд входного сигнала>,..., < 1-й разряд входного сигнала> Модель динамики ЦАП имеет вид .MODEL < имя модели> UDAC [(параметры)] Параметры этой модели приведены в табл. 4.32 (значения по умолчанию - 0, единица измерения - с). Рис. 4.28. Цифроаналоговый преобразователь Таблица 4.32. Параметры модели динамики АПЦ
Между узлами < аналоговый выход> и < " земля" > включается источник напряжения с нулевым внутренним сопротивлением, ЭДС которого равна:, ч бинарный входной сигнал (< опорное напряжение>, < земля >) х*(бинарный входной сигнал)/2 m Опорное напряжение определяет диапазон выходного аналогового напряжения. Между узлом источника опорного напряжения и «землей» включается сопротивление, равное 1/GMIN. Если какой-либо разряд входного цифрового сигнала не определен, выходное напряжение равно половине разности двух напряжений. Одно из них представляет собой выходное напряжение ЦАП, если все не определенные состояния «X» заменить на «1», второе - если эти состояния заменить на логический «О». При изменении состояний всех разрядов выходное напряжение линейно изменяется в течение интервала преобразования, как показано на рис. 4.29. Рис. 4.29. Переходные процессы в ЦАП Вентили. Вентили подразделяются на элементарные и сложные. Элементарные вентили имеют один или несколько входов и только один выход. Сложные вентили (сборки) содержат в одном корпусе несколько простых вентилей (рис. 4.30). Кроме того, вентили подразделяются на два типа: стандартные вентили и вентили с тремя состояниями. Вентили с тремя состояниями управляются сигналами разрешения. Когда этот сигнал имеет уровень «0», выходной сигнал вентиля имеет неопределенный уровень «X» при высоком выходном сопротивлении Z. Все вентили описываются по формату, приведенному в начале разд. 4.3. Стандартные вентили перечислены в табл. 4.33. Рис. 4.30. Стандартные вентили и их сборки Таблица 4.33. Параметры моделей стандартных вентилей
Модель динамики вентилей имеет формат .MODEL < имя модели> UGATE [{параметры}] Параметры моделей вентилей типа UGATE приведены в табл. 4.34 (значения по умолчанию - 0, единица измерения - с). Таблица 4.34. Параметры моделей стандартных вентилей
Вентили с тремя состояниями перечислены в табл. 4.35. Таблица 4.35. Вентили с тремя состояниями
Модель динамики этих вентилей имеет формат .MODEL < имя модели> UTGATE [(параметры)] Параметры моделей вентилей типа UTGATE приведены в табл. 4.36 (значение по умолчанию - 0, единица измерения - с). Таблица 4.36. Параметры моделей вентилей с тремя состояниями
Двунаправленные вентили. Двунаправленный вентиль представляет собой пассивное устройство, которое соединяет или разъединяет два узла. Коммутация этих узлов определяется логическим состоянием входного управляющего узла. Устройства типа NBTG соединяют два узла при подаче на вход логической «1» и разъединяют при подаче «0». Устройства типа PBTG соединяют.два узла при подаче на вход логического «0» и разъединяют при подаче «1».Они задаются по формату Vxxx NBTG или PBTG + < +узел источника питания> < -узел источника питания> + < узел затвора> < узел канала 1> < узел канала 2> + < имя модели динамики> < имя модели вход/выход> + [MNTYMXDLY=< выбор значения задержки> ] + [IO_LEVEL=< уровень модели интерфейса> ] Эти устройства не имеют параметров, модель их динамики имеет вид MODEL < имя модели> UBTG Параметры DRVH и DRVL модели вход/выход используются для управления ячейками запоминания заряда, сигналы с которых передаются через двунаправленные вентили. Если двунаправленный вентиль соединен с цепью, к которой подключен хотя бы один вход устройства, в модели вход/выход которого имеется параметр INLD со значением больше нуля, или выход устройства, в модели которого параметр OUTLD больше нуля, то эта цепь будет моделироваться как ячейка запоминания заряда. Двунаправленные вентили имеют стандартный формат записи. Приведем пример: U4 NBTG $G_DRWR $_DGND GATE SD1 SD2 BTG1 10_BTG. MODEL BTG1 VBTG Триггеры. Триггеры имеют динамическое и потенциальное управление. Каждый компонент может содержать один или несколько триггеров в корпусе, у которых общими являются сигналы установки, сброса и тактовой синхронизации (рис. 4.31). Перечень триггеров приведен в табл. 4.37. Рис. 4.31. Триггеры: а - JK-триггер с отрицательным фронтом срабатывания и низким уровнем сигналов установки и сброса; б - D-триггер с положительным фронтом срабатывания и низким уровнем сигналов установки и сброса; в - синхронный двухтактный RS-триггер; г - синхронный однотактный D-триггер Таблица 4.37. Перечень триггеров
Модели динамики триггеров с динамическим управлением имеют формат.MODEL < имя модели> UEFF [(параметры)] Параметры модели триггеров с динамическим управлением типа UEFF приведены в табл. 4.38 (значения-по умолчанию - 0, единица измерения - с). Косая черта «/» означает «или»; например, запись S/R означает сигнал S или R. Таблица 4.38. Параметры моделей триггеров с динамическим управлением
Модель динамики триггеров с потенциальным управлением имеет формат.MODEL < имя модели> UGFF [(параметры)] Параметры моделей триггеров с потенциальным управлением типа UGFF приведены в табл. 4.39 (значения по умолчанию - 0, единица измерения - с). Таблица 4.39. Параметры моделей триггеров с потенциальным управлением
По умолчанию в начальный момент времени выходные состояния триггеров приняты неопределенными (состояния X). Они остаются таковыми до подачи сигналов установки или сброса или перехода триггера в определенное состояние. Определенное начальное состояние триггеров устанавливается с помощью параметра DIGINITSTATE директивы.OPTIONS. В моделях триггеров имеются параметры, характеризующие минимальные длительности сигналов установки и сброса и минимальную длительность импульсов. Если эти параметры больше нуля, то в процессе моделирования измеренные значения длительностей импульсов сравниваются с заданными данными и при наличии слишком коротких импульсов на экран выдаются предупреждающие сообщения (Warning messages), которые также передаются в программу Probe и заносятся в выходной файл с расширением *OUT. Программируемые логические матрицы. Программируемые логические матрицы (ПЛМ, PLA - Programmable Logic Arrays) имеют ряд входов, которые формируют столбцы матрицы, и ряд выходов, образующих строки. Каждый выход (строка) управляется одним логическим элементом. Совокупность управляющих сигналов составляют программу для ПЛМ, которая определяет, какие входы соединяются с логическими элементами. В состав примитивов ПЛМ входят только однотипные вентили (И, ИЛИ, И-НЕ и т.п.), поэтому реальные ИС ПЛМ составляются из нескольких примитивов в виде макромоделей. Программа ПЛМ вводится в задание на моделирование двояко:
Однако при использовании библиотек, в которых ПЛМ оформлены в виде макромоделей, пользователю не нужно разбираться в деталях их моделей - достаточно указать имя модели ПЛМ, список узлов включениями с помощью опции TEXT указать имя JEDEC-файла, содержащего описание программы ПЛМ, как показано на следующем примере: Х1 IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8 IN9 IN10 IN11 IN12 IN13 IN14 + OUT1 OUT2 OUT3 OUT4 PAL14H4 TEXT: JEDEC_FILE = " myprog.jed" Здесь в схему включена ПЛМ типа PAL14H4,.программируемая из файла myprog. jed. Примитивы ПЛМ вводятся в задание на моделирование предложением: Uххх < тип ПЛМ> (< количество входов>, < количество выходов>) + < +узел источника питания> < -узел источника питания> + < входной узел> * < выходной узел> * + < имя модели динамики> < имя модели вход/выход> + [FILЕ=< имя файла> ] + [DАТА=< флаг системы счисления> $ < данные программы> $] + [MNTYMXDLY= < выбор значения задержки> ] + [IO_LEVEL=< уровень модели интерфейса> ] Имеются ПЛМ следующих типов: PLAND - матрица логики И; PLOR - матрица логики ИЛИ; Рис. 4.32. Программируемая логическая матрица PLXOR - матрица логики исключающее ИЛИ; PLNAND - матрица логики И-НЕ; PLNOR - матрица логики ИЛИ-НЕ; PLNXOR - матрица логики исключающее ИЛИ-НЕ; PLANDC - матрица логики И, содержащая для каждого входа столбцы прямого и дополнительного кода; PLORC - матрица логики ИЛИ, содержащая для каждого входа столбцы прямого и дополнительного кода; PLXORC - матрица логики исключающее ИЛИ, содержащая для. каждого входа столбцы прямого и дополнительного кода; PLNANDC - матрица логики И-НЕ, содержащая для каждого входа столбцы прямого и дополнительного кода; PLNORC - матрица логики ИЛИ-НЕ, содержащая для каждого входа столбцы прямого и дополнительного кода; PLNXORC - матрица логики исключающее ИЛИ, содержащая для каждого входа столбцы прямого и дополнительного кода. После ключевого слова FILE указывается имя файла в формате JEDEC, в котором записана программа ПЛМ. Оно может быть указано как текстовая, константа (и тогда заключается в кавычки " ") или как текстовое выражение (заключается между вертикальными черточками | |). Если приведена опция FILE, то любые данные, приведенные после опции DATA, игнорируются. Способ адресации, принятый в файле JEDEC для расположения данных, определяется параметрами модели динамики. Флаг системы счисления принимает значения:
Данные программы помещаются между знаками доллара $ и могут располагаться как слитно, так и разделяться одним или несколькими пробелами. Поток данных начинается с нулевого адреса, по которому программируется соединение первого входа с вентилем, управляющим первым выходом. Наличие «0» означает, что вход не подсоединен к вентилю, а «1» - наличие такого соединения (изначально все входы не подсоединены ни к каким выходам). Данные по следующему адресу управляют соединением дополнения первого входа к вентилю, управляющему первым выходом (только для ПЛМ с прямыми и дополнительными входами), или второго входа, подключенного к вентилю, управляющему первым выходом. Каждая дополнительная «1» или «0» программирует соединение следующего входа или его дополнения с вентилем, управляющим первым выходом, до тех пор, пока не переберут все входы (и их дополнения). Последующие данные программируют соединения входов со вторым выходом и т.д. Модель динамики ПЛМ имеет формат .MODEL < имя модели динамики> UPLD {(параметры модели динамики)} Параметры этой модели приведены в табл. 4.40. Таблица 4.37. Перечень триггеров
Модели динамики триггеров с динамическим управлением имеют формат.MODEL < имя модели> UEFF [(параметры)] Параметры модели триггеров с динамическим управлением типа UEFF приведены в табл. 4.38 (значения-по умолчанию - 0, единица измерения - с). Косая черта «/» означает «или»; например, запись S/R означает сигнал S или R. Таблица 4.38. Параметры моделей триггеров с динамическим управлением
Модель динамики триггеров с потенциальным управлением имеет формат.MODEL < имя модели> UGFF [(параметры)] Параметры моделей триггеров с потенциальным управлением типа UGFF приведены в табл. 4.39 (значения по умолчанию - 0, единица измерения - с). Таблица 4.39. Параметры моделей триггеров с потенциальным управлением
Приведем пример дешифратора 3x8 (рис. 4.33). Входные узлы обозначим IN1 (старший разряд), IN2, IN3 (младший разряд). Если все входы находятся в состоянии «0», выход OUT1=«1». Если IN1 и IN2 - в состоянии «0», a IN3 - в состоянии «1», OUT2=«1» и т.д. Данные программы для удобства чтения записаны в виде массива. В комментариях сверху от программы указаны имена входных узлов, находящихся в состоянии «1» - true (Т) и «0» - false (F, дополнительный код); в комментариях в конце строк указаны имена выходных узлов, управляемых вентилем. Рис. 4.33. Дешифратор 3x8, реализованный на ПЛМ UDECODE PLANDC(3, 8); 3 входа, 8 выходов + $G_DPWR $G_DGND; Узлы источника питания и " земли" + IN1 IN2 IN3; Входы + OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8; Выходы + PLD_MDL; Имя модели динамики ПЛМ + IO_STD; Имя модели вход/выход ПЛМ + DATA=B$; Данные программы ПЛМ *IN1 IN2IN3 * TF TF TF + 01 01 01; OUT1 + 01 01 10; OUT2 + 01 1001; OUT3 + 01 1010; OUT4 + 1001 01; OUT5 + 1001 10; OUT6 + 101001; OUT7 + 10 10 10$; OUT8 .MODEL PLD_MDL UPLD(...); Определение модели динамики ПЛМ Запоминающие устройства. Запоминающие устройства (ЗУ) подразделяются на постоянные ЗУ (ROM, Read Only Memories) и оперативные ЗУ (RAM, Random Access Read-Write Memories). Постоянные запоминающие устройства (ПЗУ). Существует два способа записи данных в ПЗУ для последующего моделирования:
ПЗУ (рис. 4.44) вводится в задание на моделирование предложением Uxxx ROM (< количество адресных входов>, < количество выходов>) + < +узел источника питания> < -узел источника питания> + < вход разрешения чтения> + < старший разряд адреса>...< младший разряд адреса> + < старший разряд выхода>.. < младший разряд выхода> +, < имя модели динамики> < имя модели вход/выход> - + [virtual=< имя файла> ] + [DАТА=< флаг системы счисления> $< данные программы> $] + [MNTYMXDLY=< выбор значения задержки> ] + [IO_LEVEL=< уровень модели интерфейса> ] Рис. 4.34. Постоянное запоминающее устройство После ключевого слова FILE указывается имя файла в формате Intel Hex, в котором записаны данные ПЗУ. Оно может быть указано как текстовая константа (и тогда заключается в кавычки " ") или как текстовое выражение (заключается между вертикальными черточками | |). Если приведена опция FILE, то любые данные, приведенные после опции DATA, игнорируются. Флаг системы счисления принимает значения:
Данные программы помещаются между знаками доллара $ и могут располагаться как слитно, так и разделяться одним или несколькими пробелами. Поток данных начинается с нулевого адреса, по которому размещается первый разряд данных. Следующий бит относится ко второму разряду данных и так до тех пор, пока не будут определены состояния всех разрядов по этому адресу. После этого перечисляются данные по следующему адресу и т.д. Модель динамики ПЗУ имеет формат: .MODEL < имя модели динамики> UROM [(параметры модели динамики)] Параметры этой модели приведены в табл. 4.41 (значения по умолчанию - О, единица измерения - с). Таблица 4.41. Параметры модели динамики ПЗУ
|