Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2017.Макет.Лекции.Разр.САПР_v4.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
646 Кб
Скачать
☆

10.3. Компьютерные модели

Существует два основных типа компьютерные моделей схемы: табличная и программная. В соответствии с этим используются два метода моделирования: интерпретативный и компилятивный. Интерпретативное моделирование использует модель схемы в виде ряда таблиц, связанных системой ссылок, является более универсальным и позволяет проводить более точный временной анализ. Компилятивный метод моделирования использует готовую скомпилированную машинную программу и поэтому является более быстродействующим за счёт сокращения операций поиска адресов нужных значений сигналов и вызовов подпрограмм, которые составляют существенную часть в интерпретативном методе.

10.4. Синхронное и асинхронное моделирование

Синхронное моделирование применяется для оценки правильности логического функционирования дискретных устройств без учёта переходных процессов. Основной особенностью синхронного моделирования является решение логических уравнений в определённом порядке, соответствующем последовательности прохождения сигналов через элементы схемы. Для определения этого порядка схему нужно ранжировать. Ранжировать схему – значит расположить её элементы так, чтобы к моменту решения каждого уравнения, значения всех входных сигналов каждого элемента схемы были известны. Практически ранжирование обеспечивает соблюдение причинно-следственного принципа моделирования функциональной схемы: причина (сигнал на входе элемента) не должна вычисляться позже следствия (реакция на сигнал). В САПР операции ранжирования логической элементов структуры выполняются автоматически на основе информации о связях схемы.

Асинхронное моделирование позволяет выявить риски сбоев и критические состязания. Модель логического элемента представляется в виде последовательного соединения безынерционного логического элемента и элемента задержки. При асинхронном моделировании требуется определить состояния на выходах элемента и моменты времени, в которые произошли изменения состояний. В простейшем случае для этого многократно просчитываются состояния элементов через некоторый интервал Δt, который выбирается как наибольший общий делитель времени задержки элементов, используемых в моделируемом устройстве.

Пример:

Устройство состоит из элементов, имеющих задержки 15, 21, 27, 30 нс. Значит, интервал Δt=3нс.

10.5. Событийное моделирование

Прямой счет по исходным формулам означает рассмотрение на каждом микротакте состояния всей схемы. Такой подход называется сквозным, и он требует, как уже отмечалось, значительных затрат машинного времени. Однако анализ работы дискретных устройств показывает, что одновременно находятся в активном состоянии, т.е. изменяют свое состояние, лишь 1-2,5% всех элементов схемы. Отсюда следует, что существенное уменьшение времени моделирования может быть достигнуто, если каждый раз моделировать только те элементы, у которых изменились входные сигналы. В этом и заключается принцип событийного моделирования. Событие в системах событийного моделирования – это изменение состояния какого-либо элемента и связанных с ним цепей.

В системах асинхронного событийного моделирования время моделирования изменяется не постепенно с заранее заданным шагом Δt, а в моменты возникновения событий. Моменты же возникновения событий определяются задержками логических элементов, которые в общем случае различны.

В программах асинхронного событийного моделирования важную роль играют два массива –массив состояния цепей моделируемой схемы и очередь будущих событий. Массив состояния цепей хранит текущие состояния всех цепей моделируемой схемы в виде логических 0 и 1. В очередь будущих событий (ОБС) в процессе моделирования записываются события, которые должны произойти в моделируемой схеме. Каждый элемент ОБС содержит номер цепи, в которой должно произойти изменение состояния (т.е. произойдет событие), и момент времени возникновения события. В ОБС события записаны в порядке возрастания времени, и в вершине очереди находится событие, которое произойдет раньше всех.

Асинхронное событийное моделирование выполняется следующим образом. Перед началом моделирования устанавливается исходное состояние схемы путем записи значений в массив состояния цепей. Тестовые входные воздействия, подаваемые в схему, заносятся в ОБС в соответствии с временем их появления. Далее начинается собственно моделирование, которое состоит из следующих действий.

  1. Из ОБС выбирается верхний элемент. Время, указанное в нем, заносится в счетчик модельного времени, а в массив состояния цепей по номеру, указанному в элементе, вместо старого, производится запись нового состояния цепи, указанного, в ОБС.

  2. Находятся логические элементы, для которых данная цепь является входной, и вычисляются значения сигналов на выходах этих элементов (т. е. определяются новые состояния цепей) и их задержки.

  3. Для каждой из цепей значение сигнала сравнивается со значением, хранящимся в массиве состояния цепей, и, если они не совпадают, то, следовательно, происходит изменение состояния цепи, и событие заносится в ОБС. Если значения совпадают, то запись в ОБС не производится. Далее операции повторяются, начиная с п. 1. Процесс моделирования заканчивается при исчерпании всех элементов ОБС либо заданного времени моделирования.

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