- •Введение
- •Обзор современного состояния субмикронной и глубоко-субмикронной технологий
- •Проектирование цифровых интегральных схем
- •Задачи и методы схемотехнического моделирования сбис
- •Этапы проектирования сбис
- •Общие вопросы характеризации цифровых библиотек
- •Характеризация логических элементов
- •Характеризация элементов памяти
- •Анализ переходных процессов
- •Описание характеристик ячеек из библиотеки
- •Языки моделирования цифровых библиотек
- •Обзор средств, существующих в настоящее время
- •Средства проектирования компании cadence
- •Системное проектирование
- •Аппаратное проектирование и верификация
- •Математическое макетирование
- •Топологическое проектирование
- •Средства проектирования компании synopsys
- •Средства проектирования компании mentor graphics
- •Системный уровень
- •Уровень регистровых передач
- •Логический уровень
- •Заказное проектирование аналоговых и смешанных схем
- •Топологическое проектирование
- •Краткое описание возможностей SystemC
- •Контекст SystemC
- •Аспекты SystemC
- •Точность моделирования
- •Модели вычислений
- •Функциональное моделирование
- •Моделирование на уровне транзакций
- •Уровень rtl и связь с реализацией
- •Верификационные расширения
- •Построение модели функционального виртуального прототипа
- •Модели использования fvp
- •Создание встроенных программ
- •Функциональная верификация
- •Анализ fvp с помощью транзакций
- •Программы для характеризации цифровых библиотек
- •Spice-подобные программы моделирования
- •Интерфейс к пользовательским моделям
- •Программная система Charisma
- •Характеризация цифровой ячейки по помехоустойчивости
- •Помехоустойчивость цифровых бис к воздействию внешних помех
- •Устойчивость цепей питания цифровых бис
- •Анализ устойчивости цифровых бис к воздействию внутренних помех
- •Влияние помех в шинах питания на входы бис
- •Рекомендуемые схемотехнические методы борьбы с помехами в шинах питания бис
- •Помехи, генерируемые в сигнальных шинах из-за перекрестного взаимодействия
- •Помехи в сигнальных шинах, вызванные «состязаниями» сигналов
- •Конечная верификация проекта
- •Электрическая верификация
- •Временная верификация
- •Функциональная верификация
- •Заключение
- •Библиографический список
- •Оглавление
- •394026 Воронеж, Московский просп., 14
Функциональное моделирование
Функциональные модели системы также известны как исполняемые спецификации. В общем это проектные спецификации и требования, транслированные в SystemC модель или иерархию моделей.
Предполагается, что эти функциональные модели совершенно не связаны с возможной реализацией. Однако, обычно в функциональные модели, в их разбиение на части и структуру уже заложены некоторые представления проектировщика о том, как модель может быть реализована хотя бы на одной платформе. Например, хотя в теории модель кодирования или декодирования данных может быть одним процессом, независимым от любого разделения проектной спецификации на аппаратную и программную компоненты, проектировщик, заранее представляющий себе, как алгоритм может быть реализован, возможно на основе предыдущего опыта с похожими алгоритмами в других системах, может создать модель, состоящую из двух или более последовательных процессов, некоторые из которых явно предназначены для аппаратной реализации, а некоторые для выполнения на RISC или DSP процессоре. Поэтому довольно трудно настаивать на исполняемых спецификациях, которые полностью независимы от реализации; иногда опыт проектирования, отраженный в структуре функциональной модели, является слишком ценным, чтобы им пренебречь.
Функциональные модели могут быть временными (timed) или невременными (untimed). Так как мы имеем дело с функциональной спецификацией, то в процессе нисходящего проектирования (top-down) имеет смысл начать с невременной функциональной модели и затем добавить информацию о задержках в процессе детализации. Однако, так как функциональная модель не зависит от реализации, эта информация о задержках не должна рассматриваться как часть детальной реализации - это просто временные ограничения, которые должны быть переданы процессу реализации — требования к минимальной производительности системы, наложенные проектируемой системой и ее характеристиками. Так как функциональные модели обычно абстрактны, ориентированы на спецификацию и предназначены для быстрого выполнения, интерфейсы являются абстрактными, двухточечными (point-to-point), (прямая связь между модулями без промежуточных носителей), с использованием абстрактных типов данных (для эффективности), и простых механизмов, таких как FIFO с блокирующимися чтением и записью, (либо с не-блокирующимися, если в спецификацию системы заложена возможность потери данных). Это применимо и к временным функциональным моделям, но информация о задержках в этом случае может быть добавлена на основе спецификаций производительности системы.
Для моделирования алгоритмов очень часто используется такой тип функционального моделирования как поток данных (dataflow), особенно в прикладных областях обработки сигналов и изображений.
Наиболее общей моделью вычислений является сеть процессов Кана (Kahn), специальные случаи которой - статическая и динамическая модели потоков данных. Такие алгоритмические функциональные модели отображают с помощью акторов (actors) входные потоки токенов данных в выходные потоки преобразованных данных. SystemC обеспечивает эффективные способы реализации сетей процессов и моделей потоков данных - используя потоки, FIFO каналы и методы блокировки чтения/записи.
К таким функциональным моделям легко можно добавить временные задержки.
Для общего управления очень часто используются конечные автоматы. Они могут взаимодействовать с моделями потоков данных; а временные и невременные модели также могут взаимодействовать с помощью FIFO каналов.