Часть 10: СИМУЛЯЦИЯ


plug

10-5: Концепции симуляции (ALS)

plug



База данных внутренней симуляции составлена из узлов симуляции (simulation nodes). Узел симуляции - точка соединения, которая может иметь один или больше сигналов (signals), ассоциированных с ней.

Узел симуляции может иметь 3 значения (L, H или X) и может иметь 4 значения интенсивности (strengths) (off, node, gate и VDD, в порядке возрастания интенсивности). Таким образом, это симулятор с 12 состояниями. При решении вопроса о состоянии узла симуляции в отдельный момент симуляции симулятор рассматривает состояния и интенсивности всех управляющих входов узла.

Figure 10.4

Управляющие входы могут быть из других узлов симуляции, в этом случае интенсивность управления - "gate" (то есть, H(gate) показывающая логическое состояние HIGH с вентильной управляющей интенсивностью); из ввода питания или земли ("VDD" strength) или из пользовательского (любая интенсивность). Если не был введен пользовательский вектор в текущее время симуляции, тогда вход определяется, как "off" интенсивность.

В примере выше комбинация высокого и низкого управляющих входов одинаковой интенсивности из сигналов  "out" и "in2" приводит к результату в алгоритме симуляции - установлению состояния X (не определено) выходного сигнала, представленного как "q". Этот пример также показывает поведение части устройства симуляции -  арбитражного алгоритма (arbitration algorithm), который предписывает, чтобы осуществлялось неопределенное состояние, если узел симуляции возбуждается сигналами одинаковой интенсивности, но разного состояния, обуславливая, что интенсивность управляющих сигналов в конфликте - это самое высокое состояние управляющее узлом.

Другая важная концепция, которую следует помнить пользователю, это то, что симулятор - управляемый событиями (event-driven) симулятор. Когда узел симуляции изменяет состояние, устройство симуляции просматривает netlist в поисках других узлов, которые могут потенциально изменить состояние. Очевидно, только узлы симуляции, связанные с моделью, вентилем или функцией объектов, могут потенциально изменить состояние. Если требуется изменение состояния или событие (базируемое на определении междоузлового поведения, как задано моделью, вентилем или определением функции), событие добавляется в список событий, планируемых для осуществления в симуляции позже. Когда время события приходит, и событие возбуждается, симулятор должен вновь обратиться к базе данных в поисках других узлов симуляции, которые потенциально могут изменить состояние. Этот процесс продолжается, пока ни пройдет по всем возможным узлам и событиям.

Количество событий в симуляции ограничено 10,000. Если у вас более сложная симуляция, требующая больше событий, измените поле Maximum Events в субкоманде Simulation Options... команды Simulation (Built-in) меню Tools.


Prev

Предыдущий

   

Contents

Содержание

   

Следующий

Next