Моделирование, тестирование и диагностика цифровых устройств

Машинные модели логических схем и управление процессом моделирования

Показывать лекцию целиком

Внутренние (машинные) модели схем

После ввода внешнего описания ДУ в компьютер, оно транслируется во внутреннее представление устройства, которое непосредственно используется в процессе логического моделирования. Существуют две основные формы (модели) внутреннего представления ДУ – компилятивная и интерпретативная. При компилятивной модели внешнее описание ДУ в виде структурной модели (схемы) или функциональной с использованием ЯРП транслируется в программу на некотором языке программирования (обычно ассемблере или С), которая непосредственно выполняет процесс моделирования. При интерпретативной модели внешнее описание транслируется в систему связанных таблиц, которые далее используются универсальной программой моделирования.

Компилятивная модель

В компилятивном методе моделирования описание схемы транслируется в последовательность операторов языка программирования или машинных инструкций. Например, синхронная последовательностная схема, представленная на рис.5.1 может быть транслирована в следующую программу, представленную ниже в листинге "Компилятивная модель".

Алгоритм компилятивного моделирования [39] приведен в виде псевдокода в листинге "Компилятивное моделирование". Следует обратить внимание на то, что при этом необходимо предварительно ранжировать схему по уровням. Основным преимуществом компилятивного метода моделирования является его высокое быстродействие. К недостаткам следует отнести то, что модель при изменении схемы (в процессе проектирования) каждый раз должна компилироваться заново. Здесь, как правило, используется сквозное (а не событийное ) моделирование, при котором на каждой итерации значение каждого логического элемента пересчитывается заново.

(рис 5.1) Схема для компилятивной модели

Компилятивная модель

$$ LDA B\\ AND Q\\ INV \\ STA E\\ OR A\\ STA F\\ STA Q\\ $$

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

Интерпретативная модель

В интерпретативном методе моделирования внешнее описание схемы транслируется в систему связанных таблиц, которая далее непосредственно используется в процессе моделирования. При этом каждой схеме соответствует своя система таблиц, а сама программа моделирования является универсальной. Например, на рис.2.20 приведены таблицы, представляющие схему S27 рис.2.9. Модель состоит из трех связанных между собой таблиц: $$TYPES$$ - таблица типов элементов, $$EL$$ - таблица элементов, $$LINKS$$ - таблица контактов. Каждая строка таблицы $$EL$$ соответствует элементу схемы и содержит следующую информацию: имя элемента (столбец $$NAME\_EL$$); ссылка на таблицу типов ($$R\_TYPES$$); ссылка на таблицу контактов ($$R\_LINKS$$), указывающая начало зоны контактов данного элемента.

Компилятивное моделирование

$$ Компилятивное моделирование (схема, входные воздействия)\\ \{\\ Чтение внешнего описания схемы;\\ Разрыв обратных связей (если это необходимо для схем с памятью);\\ Упорядочивание элементов по уровням;\\ Генерация компилятивного кода;\\ Чтение начального значения для каждого линии схемы;\\ FOR каждого нового входного набора}\\ \{\\ \text{\quad FOR каждого уровня схемы}\\ \text{ \quad \{}\\ \text{ \qquad FOR каждого логического элемента в уровне}\\ \text{ \qquad \{}\\ \text{ \qquad Выполнение компилятивного кода логического элемента;}\\ \text{ \qquad \}}\\ \text{ \quad \}}\\ \text{ \quad IF вновь вычисленные значения выходов и\\ псевдовыходов обратных связей совпадают с предыдущими}\\ \text{ \quad THEN вывод результатов моделирования;}\\ \text{ \quad ELSE присваивание псевдовходам вновь \\ вычисленных значений псевдовыходов обратных связей}\\ \}\\ \}$$
Таблицы описания схемы S27
$$N$$$$R\_EL$$$$CONT$$$$FLAG$$$$NAME\_EL$$$$R\_TYPES$$$$R\_LINKS$$
$$0$$$$0$$$$-1$$$$1$$$$c0$$$$0$$$$0$$
$$1$$$$1$$$$-1$$$$1$$$$c1$$$$0$$$$1$$
$$2$$$$2$$$$-1$$$$1$$$$cu$$$$0$$$$2$$
$$3$$$$3$$$$15$$$$1$$$$G0$$$$1$$$$3$$
$$4$$$$4$$$$37$$$$1$$$$G1$$$$1$$$$4$$
$$5$$$$5$$$$40$$$$1$$$$G2$$$$1$$$$5$$
$$6$$$$6$$$$25$$$$1$$$$G3$$$$1$$$$6$$
$$7$$$$7$$$$16$$$$1$$$$YG17$$$$2$$$$7$$
$$8$$$$8$$$$34$$$$1$$$$G5$$$$3$$$$8$$
$$9$$$$8$$$$30$$$$2$$$$G6$$$$3$$$$10$$
$$10$$$$9$$$$20$$$$1$$$$G7$$$$3$$$$12$$
$$11$$$$9$$$$17$$$$2$$$$G14$$$$4$$$$14$$
$$12$$$$10$$$$38$$$$1$$$$G17$$$$4$$$$16$$
$$13$$$$10$$$$39$$$$2$$$$G8$$$$5$$$$18$$
$$14$$$$11$$$$19$$$$1$$$$G15$$$$6$$$$21$$
$$15$$$$11$$$$3$$$$2$$$$G16$$$$6$$$$24$$
$$16$$$$12$$$$7$$$$1$$$$G9$$$$7$$$$27$$
$$17$$$$12$$$$32$$$$2$$$$G10$$$$8$$$$30$$
$$18$$$$13$$$$23$$$$1$$$$G11$$$$8$$$$33$$
$$19$$$$13$$$$31$$$$2$$$$G12$$$$8$$$$36$$
$$20$$$$13$$$$10$$$$2$$$$G13$$$$8$$$$39$$
$$21$$$$14$$$$29$$$$1$$
$$22$$$$14$$$$41$$$$2$$
$$23$$$$14$$$$26$$$$2$$
$$24$$$$15$$$$28$$$$1$$
$$25$$$$15$$$$6$$$$2$$
$$26$$$$15$$$$18$$$$2$$
$$27$$$$16$$$$35$$$$1$$
$$28$$$$16$$$$24$$$$2$$
$$29$$$$16$$$$21$$$$2$$
$$30$$$$17$$$$9$$$$1$$
$$31$$$$17$$$$14$$$$2$$$$TYPES$$
$$32$$$$17$$$$33$$$$2$$$$N$$$$N\_IN$$$$N\_OUT$$$$ID$$
$$33$$$$18$$$$11$$$$1$$$$0$$$$0$$$$1$$$$0$$
$$34$$$$18$$$$8$$$$2$$$$1$$$$0$$$$1$$$$0$$
$$35$$$$18$$$$27$$$$2$$$$2$$$$1$$$$0$$$$0$$
$$36$$$$19$$$$22$$$$1$$$$3$$$$1$$$$1$$$$29$$
$$37$$$$19$$$$4$$$$2$$$$4$$$$1$$$$1$$$$1$$
$$38$$$$19$$$$12$$$$2$$$$5$$$$2$$$$1$$$$4$$
$$39$$$$20$$$$13$$$$1$$$$6$$$$2$$$$1$$$$5$$
$$40$$$$20$$$$5$$$$2$$$$7$$$$2$$$$1$$$$2$$
$$41$$$$20$$$$36$$$$2$$$$8$$$$2$$$$1$$$$3$$

В таблице $$TYPES$$ каждая строка содержит справочную информацию об элементе данного типа: число входов ($$N\_IN$$), число выходов ($$N\_OUT$$), число портов ($$N\_PORT$$), число переменных состояний ($$N\_SOST$$), величина задержки ($$DEL$$) ,тип функции ($$ID$$) и т.п.

Таблица $$LINKS$$ содержит информацию о контактах схемы. Каждая строка этой таблицы соответствует контакту некоторого элемента. Более того, в ней каждому элементу отведена своя зона контактов, начинающаяся со строки, указанной в $$R\_LINKS$$ таблицы элементов. В начале зоны идут выходные контакты, а затем входные. Входы схемы представляются как элементы, имеющие только выходные контакты, а выходы схемы имеют только входные контакты. Столбец $$R\_EL$$ содержит ссылку на таблицу элементов. В столбце $$FLAG$$ поразрядно записываются различные признаки, необходимые в процессе моделирования и генерации тестов. Столбец $$SV$$ содержит кодированные значения сигналов в многозначном алфавите. Столбец $$CONT$$ определяет связи между контактами. Из таблицы 5.1 видно, что контакты, образующие один узел в схеме (обычно это один выходной и несколько входных контактов), связаны между собой в кольцевой список. Такая структура данных п озволяет эффективно продвигаться от входов к выходам схемы и в противоположном направлении. Информационная избыточность (значения сигналов хранятся для нескольких контактов, образующих один узел) позволяет уменьшить число пересылок при подготовке элемента к обработке и существенно ускоряет процесс моделирования. Следует отметить, что первые строки во всех таблицах соответствуют фиктивным элементам, представляющим константы $$0,1,u$$, которые присутствуют во всех схемах независимо от того, используются они в данной схеме или нет. Эти элементы используются, например, для представления постоянных уровней напряжения $$0$$ или $$1$$, подаваемых на некоторые элементы.

Управление процессом моделирования

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

Поэтому для сходимости процесса необходимо иметь критерий окончания моделирования. Обычно задают два критерия: совпадение результатов моделирования на соседних итерациях или достижение некоторого предельного числа итераций $$Hmax$$.

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

$$ \text{Событийное интепретативное моделирование(схема, входные воздействия)}\\ \{\\ \text{\quad Чтение описания схемы;}\\ \text{\quad Чтение входных воздействий;}\\ \text{\quad FOR для каждого моделируемого входного набора }\\ \text{\quad \{}\\ \text{\qquad \{}\\ \text{\quad \qquad Обработка нового входного набора;}\\ \text{\quad \qquad Формирование новых событий, связанных с изменившимися входами;}\\ \text{\quad \qquad Постановка элементов, имеющих события на входах, в очередь будущих событий;}\\ \text{\quad \qquad WHILE есть элементы в очереди событий }\\ \text{\quad \qquad \{}\\ \text{\qquad \qquad Моделирование очередного элемента из очереди;}\\ \text{\qquad \qquad IF значение выходов элемента изменились }\\ \text{\qquad \qquad THEN Постановка всех элементов – последователей в очередь}\\ \text{\qquad \qquad \qquad будущих событий в соответствии с величиной задержки моделируемого элемента;}\\ \text{\qquad \quad \}}\\ \text{\qquad \}}\\ \text{\quad \}}\\ \}\\$$

Как отмечалось выше, в зависимости от очередности обработки логических элементов различают сквозные и событийные методы логического моделирования. При сквозном методе на каждой итерации каждый логический элемент моделируется заново вне зависимости от того, произошли изменения сигналов на его входах или нет. В событийном методе логический элемент моделируется только в том случае, если на его входах произошло событие – изменилось значение сигнала хотя бы на одном из его входов. Для элементов памяти событием является также изменение его состояния (изменение переменной внутреннего состояния). Обычно в процессе моделирования на каждой итерации активны (имеют изменения на входах) только несколько процентов элементов (3-5%), поэтому событийный метод гораздо быстрее сквозного.

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

При этом центральное место занимает понятие очереди будущих событий (ОБС) , . Каждое событие в ОБС содержит номер элемента $$i$$ и соответствующее значение сигнала $$v(i)$$. Это событие при моделировании привязывается в соответствии с задержкой $$\Delta_i$$ выхода $$i-го$$ элемента к моменту времени $$t+\Delta_i $$, где $$t$$ — текущее модельное время. Значения сигналов при этом для текущего момента времени хранятся в массиве $$SV$$. Вновь вычисленные значения элементов записываются в ОБС с учетом задержки $$\Delta_i$$.

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

(рис 5.2) Список событий.

Здесь каждому моменту времени соответствует свой список ОБС. Времена $$t_i < t_j < t_k$$ упорядочены и связаны списком. Занесение нового события с использованием этого способа требуют поиска нужного $$t_j$$ путём просмотра соответствующих указателей. Если моменты времени, для которых ОБС не пусты, идут достаточно плотно, то эффективней другой способ моделирования временного механизма, который показан на рис.5.3 .

(рис 5.3) Колесо времени

При этом для хранения указателей ОБС используется массив,

"завязанный в кольцо". Каждый элемент массива соответствует моменту модельного времени. Включение нового элемента при этом не требует поиска. Так, например, если в текущий момент времени $$Т$$ моделируется элемент $$i$$, имеющий задержку $$t_i$$, то событие $$(i, v(i))$$ нужно занести в ОБС, для которого указатель содержится в элементе массива $$t+\Delta_i $$. С другой стороны этот способ не эффективен, если интервалы времени между событиями достаточно велики. Элементы массива при этом будут иметь в основном нулевые указатели, а сам массив может иметь чрезмерно большой размер. Наличие временного механизма позволяет при моделировании подавать тестовые наборы через соответствующие интервалы модельного времени. Для этого перед началом моделирования все изменения входных воздействий заносятся в ОБС, соответствующие временам изменения. Поэтому в процессе моделирования изменения входов обрабатываются наравне с другими событиями и в процессе моделирования нет необходимости ждать, пока значения сигналов стабилизируются на всех линиях.

В листинге "Алгоритм логического моделирования" представлен укрупненный алгоритм логического моделирования на основе временного механизма в виде очереди будущих событий. Этот алгоритм отражает движение по очереди будущих событий.

В каждый (не пустой) момент времени события обрабатываются по алгоритму, представленному в листинге "Алгоритм логического моделирования" [44] (который реализует соответствующий шаг алгоритма рис.2.24).

Отметим, что представленный в листинге "Двухпроходной алгоритм обработки событий" алгоритм является двухпроходным. На первом проходе здесь переписываются события $$(i,v_i^\prime)$$, связанные с моментом времени $$Т$$ очереди будущих событий в буфер – множество "Активные_элементы". Во время второго прохода выполняется собственно моделирование элементов $$j$$ – последователей элемента $$i$$ и постановка в очередь будущих событий в соответствии с задержкой $$d(j)$$ элемента $$j$$.

Алгоритм логического моделирования

$$ \text{WHILE (очередь событий не пуста)}\\ \{\\ \text{\quad T=следующий по очереди момент времени (имеющий события);}\\ \text{\quad Обработка событий текущего момента времени Т;}\\ \}\\ $$

Подобная (двухпроходная) стратегия позволяет в том случае, когда некоторый элемент $$i$$ активизируется более одного раза, выполнять моделирование, вызванное этим событием, только один раз. Следует отметить, что в приведенном алгоритме $$(i, vi’)$$ являются скорее кандидатами в события. Поэтому при обработке множества "Активные_элементы" выполняется сравнение с текущим значением $$v(i)$$.

Двухпроходной алгоритм обработки событий

$$ \text{Обработка событий текущего момента времени Т()}\\ \{\\ \text{\quad Активные\_элементы=}\varnothing; /* \text{множество активных элементов, */}\\ \text{\quad FOR каждого события (i, }v_i^\prime, \text{ связанного с Т /* имеющих события на входах */}\\ \text{\quad}\{\\ \text{\qquad IF }v_i^\prime\not = v(i)\text{ THEN }\\ \text{\qquad \{ /*если это действительно событие*/}\\ \text{\qquad\quad} v(i)=v_i^\prime; \text{ /* перепись нового значения */}\\ \text{\qquad\quad FOR каждого элемента j – последователя обрабатываемого элемента i}\\ \text{\qquad\quad} \{}\\ \text{\qquad\qquad Изменение значений входов j; /* перепись с выхода i*/}\\ \text{\qquad\qquad Пополнение множества Активные\_элементы элементом j;}\\ \text{\qquad\quad} \}\\ \text{\qquad\quad FOR каждого элемента }j\in\text{ Активные\_элементы}\\ \text{\qquad\quad} \{\\ \text{\qquad\qquad} v_j^\prime = \text{ моделирование элемента (j);}\\ \text{\qquad\qquad постановка события }(j,v_j^\prime) \text{ в ОБС в момент времени T+d(j);}\\ \text{\qquad\quad} \}\\ \text{\qquad} \}\\ \text{\quad} \}\\ \}\\ $$

Улучшенный двухпроходной алгоритм обработки событий

$$ \text{Обработка событий текущего момента времени Т()}\\ \{\\ \text{\quad Активные\_элементы=}\varnothing; /* \text{множество активных элементов, */}\\ \text{\quad FOR каждого события (i, }v_i^\prime, \text{ связанного с Т /* имеющих события на входах */}\\ \text{\quad}\{\\ \text{\qquad} v(i)=v_i^\prime; \text{/* перепись нового значения */}\\ \text{\qquad IF }v_i^\prime\not = v(i)\text{ THEN }\\ \text{\qquad FOR каждого элемента j – последователя обрабатываемого элемента i}\\ \text{\qquad} \{}\\ \text{\qquad\quad Изменение значений входов j; /* перепись с выхода i*/}\\ \text{\qquad\quad Пополнение множества Активные\_элементы элементом j;}\\ \text{\qquad} \}\\ \text{\quad} \}\\ \text{\quad FOR каждого элемента }j\in\text{ Активные\_элементы}\\ \text{\quad} \{\\ \text{\qquad} v_j^\prime = \text{ моделирование элемента (j);}\\ \text{\qquad IF }v_i^\prime \not =lsv(j)\text{\quad THEN}\\ \text{\qquad} \{\\ \text{\qquad\quad постановка события }(j,v_j^\prime) \text{ в ОБС в момент времени T+d(j);}\\ \text{\qquad\quad} lsv(j)=v_i^\prime;\\ \text{\qquad} \}\\ \text{\quad} \}\\ \}\\ $$

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

Несмотря на свою привлекательность (простоту и эффективность) этот алгоритм имеет недостаток. На рис.5.4 показана суть проблемы обработки кратного события. Здесь на входе элемента $$И$$ имеет место одновременное изменение двух сигналов $$a$$ и $$b$$. Если эти события обрабатываются в последовательности $$(b,0), (a,1)$$, то выход элемента $$y$$ не изменяется и, следовательно, не ставится в очередь будущих событий для последующей обработки.

Однопроходной алгоритм обработки событий

$$ \text{Обработка событий текущего момента времени Т()}\\ \{\\ \text{\quad FOR каждого события (i, }v_i^\prime, \text{ связанного с Т /* имеющих события на входах */}\\ \text{\quad}\{\\ \text{\qquad} v(i)=v_i^\prime; \text{/* перепись нового значения */}\\ \text{\qquad FOR каждого элемента j – последователя обрабатываемого элемента i}\\ \text{\qquad} \{}\\ \text{\qquad\quad Изменение значений входов j; /* перепись с выхода i*/}\\ \text{\qquad\quad} v_j^\prime = \text{ моделирование элемента (j);}\\ \text{\qquad\quad IF }v_i^\prime \not =lsv(j)\text{\quad THEN}\\ \text{\qquad\quad} \{\\ \text{\qquad\qquad постановка события }(j,v_j^\prime) \text{ в ОБС в момент времени T+d(j);}\\ \text{\qquad\qquad} lsv(j)=v_i^\prime;\\ \text{\qquad\quad} \}\\ \text{\qquad} \}\\ \text{\quad} \}\\ \}\\ $$ (рис 5.4) Пример некорректного моделирования

Но если событие $$(a,1)$$ обрабатывается первым, то результат $$(y,1)$$ будет поставлен в момент времени $$T=4$$ очереди событий. Далее обработка события $$(b,0)$$ вызывает событие $$(y,0)$$, которое также будет отнесено к моменту времени $$Т=4$$. Таким образом, мы имеем "импульс нулевой протяженности", что не соответствует реальному поведению схемы. Алгоритм, приведенный ниже, позволяет избежать подобных ситуаций.

Улучшенный однопроходной алгоритм обработки событий

$$ \text{Обработка событий текущего момента времени Т()}\\ \{\\ \text{\quad FOR каждого события (i, }v_i^\prime, \text{ связанного с Т /* имеющих события на входах */}\\ \text{\quad}\{\\ \text{\qquad} v(i)=v_i^\prime; \text{/* перепись нового значения */}\\ \text{\qquad FOR каждого элемента j – последователя обрабатываемого элемента i}\\ \text{\qquad} \{}\\ \text{\qquad\quad Изменение значений входов j; /* перепись с выхода i*/}\\ \text{\qquad\quad} v_j^\prime = \text{ моделирование элемента (j);}\\ \text{\qquad\quad IF }v_i^\prime \not =lsv(j)\text{\quad THEN}\\ \text{\qquad\quad} \{\\ \text{\qquad\qquad}T^\prime =T+d(j);\\ \text{\qquad\qquad IF }T^\prime =lst(j);\\ \text{\qquad\qquad THEN Устранение события (j, lsv(j)) с момента }T^\prime\text{ очереди;}\\ \text{\qquad\qquad постановка события }(j,v_j^\prime) \text{ в ОБС в момент времени T+d(j);}\\ \text{\qquad\qquad} lsv(j)=v_i^\prime;\\ \text{\qquad\qquad}lst(j)=T^\prime;\\ \text{\qquad\quad} \}\\ \text{\qquad} \}\\ \text{\quad} \}\\ \}\\ $$

Мы рассмотрели основные алгоритмы событийного логического моделирования с использованием модели номинальных задержек. Но они с небольшими изменениями могут быть использованы и для других более сложных моделей задержек, рассмотренных в лекции 4 (различные задержки для переднего и заднего фронтов, разброс задержек, инерционная задержка).

Ключевые термины:

Компилятивная модель схемы – представляется компьютерной программой, моделирующей данную схему.

Интерпретативная модель схемы – представляется системой связанных таблиц.

Событийное моделирование – здесь логический элемент моделируется в том случае, если на его входах произошло событие – изменение значений сигналов.

Очередь будущих событий – упорядоченные в модельном времени события (изменения сигналов на линиях схемы).

Краткие итоги

В лекции рассмотрены машинные модели цифровых схем и управление процессом логического моделирования..

В разделе 5.1 описаны машинные модели схем, которые используются в логическом моделировании, к которым относятся:

  • компилятивная модель, изложенная в разделе 5.1.1;
  • интерпретативная модель в виде связанных таблиц, которая представлена в 5.12.
  • В разделе 5.2 изложены основные алгоритмы логического событийного моделирования на основе очереди будущих событий, к которым относятся однопроходной и двухпроходной алгоритм обработки событий.

    Вопросы и упражнения

  • Какие используются машинные модели схемы?
  • Опишите компилятивную модель схемы.
  • Что составляет интерпретативную модель схемы.
  • Чем отличается сквозное моделирование от событийного?
  • Опишите основной алгоритм событийного логического моделирования.
  • Что такое очередь будущих событий?
  • Какие вы знаете способы моделирования временного механизма?
  • Опишите двухпроходной алгоритм логического моделирования на основе продвижения по очереди будущих событий.
  • Какие недостатки имеет этот алгоритм?
  • Опишите улучшенный двухпроходной алгоритм логического моделирования.
  • Опишите однопроходной алгоритм событийного логического моделирования.
  • Вернуться к учебному плану