ЛЕКЦИЯ 13 (11.05.10) Потактовое и событийное моделирование Блок-схема алгоритма потактового моделирования Событийное моделирование Сравнение методов потактового.

Презентация:



Advertisements
Похожие презентации
ЛЕКЦИЯ 11 ( ) Потактовое и событийное моделирование Блок-схема алгоритма потактового моделирования Событийное моделирование Сравнение методов.
Advertisements

ЛЕКЦИЯ 6 ( ) Механизмы продвижения модельного времени Реальное, модельное и машинное время Принцип дельта T Принцип дельта Z.
ЛЕКЦИЯ 12 ( ) Методы логического моделирования Классификация методов моделирования Ранжирование схем Потактовое моделирование.
ЛЕКЦИЯ 11 ( ) Модели логических элементов Табличное представление цифровой схемы.
Введение в теорию конечных автоматов. В вычислительной технике используются системы двух классов: -Комбинационные системы Особенности: имеют функциональную.
ЛЕКЦИЯ 6 ( ) Механизмы продвижения модельного времени Реальное, модельное и машинное время Принцип дельта T Принцип дельта Z.
Лекция 6. Нейронные сети Хопфилда и Хэмминга Среди различных конфигураций искусственных нейронных сетей (НС) встречаются такие, при классификации которых.
Электронные таблицы II Абсолютные и смешанные ссылки в формулах.
ЛЕКЦИЯ 5 ( ) Полные и упрощённые модели Закон Парето Поправка Шеннона Четыре способа построения упрощённых моделей.
Базы данных в электронных таблицах 1. Представление базы данных в виде таблицы и формы.
Лекция 4 Представление основных структур: итерации, ветвления, повторения. Вспомогательные алгоритмы и процедуры.
Алгоритм как модель деятельности. Что такое алгоритмическая модель Алгоритм- это понятное и точное предписание конкретному исполнителю совершить конечную.
Теория вычислительных процессов Сети Петри для моделирования Преподаватель: Веретельникова Евгения Леонидовна 1.
Подпрограммы 1.Принцип модульности 2.Область действия переменных 3.Параметры подпрограмм 4.Модули.
Оператор ветвления (условный оператор) позволяет изменить порядок выполнения операторов в зависимости от выполнения некоторого условия (истинности логического.
БЛОК-СХЕМА Выполнил Машнин Владимир Блок-схема в программировании это графическое представление программы или алгоритма с использованием стандартных.
Работа с массивами Массив – упорядоченный набор данных, обозначаемый одним именем.
Сортировка методом пузырька, выбором (Pascal) Кокарева Светлана Ивановна.
Одномерный массив. Цель урока: познакомить учащихся с понятием одномерный массив Задачи: дать определение массива дать представление: об описании массива.
Мазеева Татьяна Александровна, учитель информатики МКОУ «СОШ 3» г. Николаевска Волгоградской обл г. Алгоритмический язык КуМир.
Транксрипт:

ЛЕКЦИЯ 13 ( ) Потактовое и событийное моделирование Блок-схема алгоритма потактового моделирования Событийное моделирование Сравнение методов потактового и событийного моделирования

«Казуальное поведение оптимально-динамической системы в условиях полиантагонистического воздействия эффектированно возбуждённой интегрально-обобщённой среды с тремя степенями неопределённости описывается оказывается вполне стохастически, ибо квинтэссенция не есть субстанция, а есть концепция радикального эксцесса, локализованного дивергенцией ротора H и инкапсулированного в рамках гипераффигенного предиката.» Из выступления перед академиками на международном симпозиуме, январь, 2010

Особенности потактового моделирования Этот вид моделирования использует принцип t. 1 При потактовом моделировании обрабатываются все элементы схемы на всех временных тактах. Элементы всегда просматриваются в неизменном порядке. 2 Третья особенность заключается в том, что данному алгоритму присущи итерации, то есть многократные прогоны модели на одном и том же наборе данных (входных сигналов). 3

Генерация в схеме & 11 A Y F1F2 DD1DD2DD3 NAND2INV Исходное состояние A = 0A = 0F1=1Y=1Y=1 Работа, итерации A = 1A = 1F1=0Y=0 F1=1Y=1 F1=0Y=0 F1=1Y=1Y=1 и т.д. Получился генератор (осциллятор) Случай, когда на некотором такте модельного времени итерации не сходятся, а их число превысило величину R+1, свидетельствует о появлении колебаний в схеме. F2=0 F2=1 F2=0 F2=1 F2=0 T0 T1.1 A = 1A = 1T1.2T1.2 A = 1A = 1T1.3 A = 1A = 1T1.4T1.4 F1=0Y=0Y=0F2=1A = 1A = 1T1.5 Ранг схемы R = 3

Структура данных при потактовом моделировании Имена сигналов Номера тактов T0T1T1T2T2T3T3Tmax D0 D1D1 A F1 F3F3 F2F2 Y F1 = INV(A); 1 INV Исходное состояние Текущий такт Двумерный массив – наиболее удобная структура данных при потактовом моделировании & & 11 F1 F2 F3 Y D0 A D Ранг 1 Ранг 2 Ранг 3 F1 = not A; F3 = D1 and A; F2 = D0 and F1; Y = F2 or F3; 0 1 Интерпретирующее моделирование

Блок-схема алгоритма потактового моделирования Конец Ввод исходной информации Формирование входного набора, IT:=0 Начальные установки, T:=0 Прогон модели (Система булевских уравнений) A A Соседние итерации совпали? Начало IT = IT + 1 IT < R + 1 Нет Да Сообщение «Генерация в схеме» Хранение T < Tmax T := T+1 Вывод В В Да Нет Да ВД, R, Tmax Счётчик итераций Счётчик модельного времени

Особенности потактового моделирования 1 Модельное время движется по тактам (принцип t) T = T + 1 2Обработке подлежат все элементы схемы на всех тактах 3Моделирование выполняется без учёта задержек (tз = 0) 4 В процессе моделирования возникают итерации – повторные прогоны модели на неизменном наборе данных 5 Используется ранжирование схемы, то есть сортировка элементов в порядке их срабатывания 6В качестве структуры данных используется двумерный массив 7 Используется функциональное описание модели в виде систем логических уравнений 8Предпочтение отдаётся компилирующему моделированию 9 За один цикл работы моделятора обрабатывается один такт модельного времени, соответствующий одному набору входных данных

Событийное моделирование Событием называется любое изменение значения сигнала и неважно, в каком месте схемы оно произошло: на входе, выходе или внутри схемы. При двузначном алфавите {0,1} возможны только два события: 0 1 и 1 0. Для многозначного алфавита типов переключений может быть гораздо больше, например: 0 Х, 1 Х, Х 0, Х 1, 0 Z, 1 Z, Z 0, Z 1, X Z, Z X и т.п. Способ, основанный на моделировании событий, называют событийным моделированием. Основная его идея заключается в том, чтобы проследить, каким образом изменения на входах схемы передаются на выходы. При этом элементы, на входах которых нет изменений, вообще не моделируются (их состояния остаются неизменными), а таких элементов в цифровых схемах по разным оценкам от 90 до 98%. Это означает, что, отслеживая только пути переключений в схеме и моделируя только активные элементы (а их 2…10% в схеме), можно существенно повысить эффективность моделирования (примерно в 10…50 раз).

Событийное моделирование Итак, первая особенность событийного моделирования заключается в том, что при прогоне модели схемы обрабатываются только 2…10% её элементов. Это так называемые активные элементы, у которых в текущий момент времени изменились входные сигналы. Вторая особенность заключается в механизме продвижения модельного времени. Оно движется не равномерно с ранее заданным шагом t, а скачками разной величины от текущего события до ближайшего будущего (принцип z). В этом случае говорят, что время движется, опираясь на события, которые должны быть отсортированы в хронологическом порядке. Элементы - приёмники Генератор события Элемент - предшественник ИсточникПриёмник Элемент - последователь Внешний вход

Разновидности событий Все события можно разделить на безусловные и возможные (предполагаемые, условные). 1 INV 0 1 & AND2 & События нет 1 0 Безусловное событиеУсловное событие D C R T DFF Исходное состояние 0 1 События нет 1 Событие есть Условное событие Условие Событие есть 1 Условие 01 0 Сброс R=1 более приоритетная команда

E5 t E5 Разновидности событий События делятся также на отработанные, текущие и будущие. Графически событие E (от слова event) отображается точкой на оси модельного времени. 0 tMtM E1 t E1 E2 t E2 E3 t E3 E4 tE4tE4 t M =t E4 Текущее событие Отработанные события Модельные часы всегда указывают на текущее событие NOW - сейчас Ближайшее будущее событие E6 t E6 E7 E8E8 t E7 = t E8 E9E9 t E9 Кратные (одновременные) события Будущие события Предположим, симулятор уже выполнил часть работы (обработал первые три события) Что это за событие?

Разновидности событий Модельное время «перепрыгнуло» на событие E4, которое стало текущим. Очередной цикл работы моделятора связан теперь с обработкой реакции схемы на это событие. Будущие события – это те, которые ещё предстоит обрабатывать. Среди них выделим ближайшее будущее событие, то есть то событие, на которое моделятор собирается перевести модельные часы в следующем цикле работы (в примере E5). При моделировании схемы в текущий момент времени могут произойти новые события, которые добавляются в очередь будущих событий в хронологическом порядке. Если новое событие появится на интервале t E4 …t E5, то оно и станет ближайшим (пунктирный кружок на предыдущем слайде).

Очередь будущих событий Очередь будущих событий ОБС - это отсортированный в порядке возрастания времени список будущих событий. Иногда ОБС называют календарем событий. В общем случае каждое событие в ОБС задается тремя параметрами: именем, временем и новым значением события. 0100C 0160С 1140С 180C 040R 120R Новое значение Время ns Имя ОБС R С tMtM 20ns80ns 40ns100ns 140ns 160ns Изначально ОБС хранит только список событий на внешних входах. События расставлены в хронологическом порядке Формат события – запись. В вершине очереди находится событие (R 20ns 1), которое должно произойти раньше других – ближайшее будущее событие.

Массив состояний сигналов В отличие от потактового метода событийное моделирование использует не двумерный, а одномерный массив данных. XF3 XF1 XY XF2 0D1 0A 0D0 Текущее значение Имя сигнала МСС ( t m = 0) Перед началом моделирования в МСС заносятся исходные значения входных сигналов для tm = 0, по которым моделятор пытается выяснить исходное состояние схемы. 0 50ns t З =10ns t З =15ns Он называется массивом состояний сигналов МСС и хранит только текущие значения всех сигналов, действующих в моделируемой схеме. Для каждого сигнала (цепи) резервируется по одной ячейке в МСС. & & 11 D0 D1 A F1 F2 F3 Y DD1 DD3 DD2 DD4 МСС ( t m = 50ns) 1

50nsA1 Список отработанных событий В процессе работы моделятор накапливает все события, которые произошли в схеме. По ним легко восстановить историю, «картину» работы схемы, а, значит, их удобно использовать при выводе результатов моделирования. ОБС ИмяВремя Новое значение Ближайшее будущее событие СОС По имени события в табличном описании схемы находятся элементы – приёмники. Обработка заключается в следующем: Время события передаётся в модельные часы (событие становится текущим). Новое значение события передаётся в МСС. Планируются (предсказываются) новые будущие события – транзакты. Выталкивается из ОБС Помещается в хвост СОС Обработка

Планирование новых событий В процессе моделирования содержимое ОБС будет изменяться, так как переключения на входах могут порождать в будущем другие (новые) события – переключения на выходах элементов схемы. Кроме того, из ОБС будут удаляться текущие события и запоминаться в списке отработанных событий (СОС). Предположим, ближайшее будущее событие, записанное в ОБС – это переключение входа A из 0 в 1 в момент времени 50ns (см. слайд 14). По табличному описанию схемы мультиплексора находим элементы – приёмники сигнала A. Их два – DD1 и DD3 (см. слайд 14 или 18). Моделятор вызовет одну за другой подпрограммы моделей этих элементов (DD1 – инвертора и DD3 – элемент 2И) и определит, изменятся ли в будущем их выходы. Понятно, что модели элементов прогоняются на текущем наборе входных сигналов (tm = 50ns), причем вход A уже переключился на новое значение (A=1).

Планирование новых событий МСС (tm = 0 ns) Будущие события на выходах F1 и F3 (если они произойдут) будут удалены от текущего времени на величину задержки этих элементов, то есть на время 10ns (инвертор) и 15ns (2И) соответственно. Добавляя эти задержки к текущему времени, моделятор спланирует два новых события: F F1 Новое значение Время ns Имя Старое значение X X Спланированные события будут вставлены в ОБС в соответствии со временем их свершения: выше будут события с меньшим или равным временем, ниже – с большим временем. XF3 XF1 XY XF2 0D1 A 0D0 Текущее значение Имя сигнала 0 МСС (tm = 50 ns) 1 Текущее модельное время Задержки на INV и AND2

Табличное представление цифровой схемы & & 11 D0 D1 A F1 F2 F3 Y мультиплексор DD1 DD2 DD3 DD4 INV AND2 OR2 Потоковая форма F1

Номер логического элемента Имя логического элемента Тип логического элемента Задержка ns Указатель адреса в таблице цепей ВходыВыходы 1DD1INV1034 3DD3AND2152, 36 2DD2AND2151, 45 4DD4OR2205, 67 Табличное представление цифровой схемы Таблица элементов Таблица цепей Указатель адреса в таблице элементов Имя цепи Текущее значение (МСС) Номер цепи 2D011 3D102 1, 3A13 2F104 4F205 4F306 nullY07

Блок-схема алгоритма событийного моделирования 1 Включение в ОБС событий на входах A Начало В Да Инициализация схемы ОБС пуста? tm < tmax? Выбор из ОБС ближайшего события Нет Да Нет Конец Ввод исходной информации Вывод результатов Табличное описание схемы ВД на входах Исходное состояние tmax

Блок-схема алгоритма событийного моделирования 2 t m =t ближ A Нет Да Есть приёмник? Да Нет Занесение в МСС нового значенияПоиск приёмников текущего событияМоделирование элемента-приёмника Выход переключился? Планирование нового события -> ОБС B Модельные часы Здесь движется модельное время ИмяВремя Новое значение A 50ns 1 Имя сигнала A передаётся в таблицу описания схемы для поиска элементов-приёмников tc = tm + tз

Особенности событийного моделирования 1 Модельное время движется, опираясь на события скачками произвольной длины. Модельные часы t m = t ближ 2Обработке подлежат только активные элементы схемы (2…10% схемы) 3Моделирование выполняется с учётом задержек на элементах (t з 0) 4 В процессе моделирования отсутствуют итерации (повторные прогоны модели на неизменном наборе данных) 5 Отсутствует ранжирование схемы, то есть сортировка элементов в порядке их срабатывания 6В качестве структуры данных используется одномерный массив МСС 7 Используется структурное описание модели в табличном представлении Модель – это данные, а не программа 8Часто событийное моделирование выполняется в режиме интерпретации 9 За один цикл работы моделятора обрабатывается только одно событие (или несколько одновременных)

Особенности потактового моделирования 1 Модельное время движется по тактам (принцип t) T = T + 1 2Обработке подлежат все элементы схемы на всех тактах 3Моделирование выполняется без учёта задержек (tз = 0) 4 В процессе моделирования возникают итерации – повторные прогоны модели на неизменном наборе данных 5 Используется ранжирование схемы, то есть сортировка элементов в порядке их срабатывания 6В качестве структуры данных используется двумерный массив 7 Используется функциональное описание модели в виде систем логических уравнений 8Предпочтение отдаётся компилирующему моделированию 9 За один цикл работы моделятора обрабатывается один такт модельного времени, соответствующий одному набору входных данных

Сравнение методов потактового и событийного моделирования Принцип t Моделируются все элементы схемы Задержки не учитываются tз = 0 Возникают итерации Ранжирование нужно Двумерный массив Функциональная модель Компилирующее моделирование Один цикл работы моделятора - один такт Потактовое моделирование Событийное моделирование Принцип z Время движется, опираясь на события Счётчик модельного времени tm = tближT = T tm = tm + t Модельные часы Время движется, опираясь на такты Моделируются только активные элементы 4 Задержки имитируются tз 0 6 Итераций нет Ранжирование не требуется Одномерный массив Структурная модель Интерпретирующее моделирование Один цикл работы моделятора - одно событие