- •Введение
- •Обзор современного состояния субмикронной и глубоко-субмикронной технологий
- •Проектирование цифровых интегральных схем
- •Задачи и методы схемотехнического моделирования сбис
- •Этапы проектирования сбис
- •Общие вопросы характеризации цифровых библиотек
- •Характеризация логических элементов
- •Характеризация элементов памяти
- •Анализ переходных процессов
- •Описание характеристик ячеек из библиотеки
- •Языки моделирования цифровых библиотек
- •Обзор средств, существующих в настоящее время
- •Средства проектирования компании cadence
- •Системное проектирование
- •Аппаратное проектирование и верификация
- •Математическое макетирование
- •Топологическое проектирование
- •Средства проектирования компании synopsys
- •Средства проектирования компании mentor graphics
- •Системный уровень
- •Уровень регистровых передач
- •Логический уровень
- •Заказное проектирование аналоговых и смешанных схем
- •Топологическое проектирование
- •Краткое описание возможностей SystemC
- •Контекст SystemC
- •Аспекты SystemC
- •Точность моделирования
- •Модели вычислений
- •Функциональное моделирование
- •Моделирование на уровне транзакций
- •Уровень rtl и связь с реализацией
- •Верификационные расширения
- •Построение модели функционального виртуального прототипа
- •Модели использования fvp
- •Создание встроенных программ
- •Функциональная верификация
- •Анализ fvp с помощью транзакций
- •Программы для характеризации цифровых библиотек
- •Spice-подобные программы моделирования
- •Интерфейс к пользовательским моделям
- •Программная система Charisma
- •Характеризация цифровой ячейки по помехоустойчивости
- •Помехоустойчивость цифровых бис к воздействию внешних помех
- •Устойчивость цепей питания цифровых бис
- •Анализ устойчивости цифровых бис к воздействию внутренних помех
- •Влияние помех в шинах питания на входы бис
- •Рекомендуемые схемотехнические методы борьбы с помехами в шинах питания бис
- •Помехи, генерируемые в сигнальных шинах из-за перекрестного взаимодействия
- •Помехи в сигнальных шинах, вызванные «состязаниями» сигналов
- •Конечная верификация проекта
- •Электрическая верификация
- •Временная верификация
- •Функциональная верификация
- •Заключение
- •Библиографический список
- •Оглавление
- •394026 Воронеж, Московский просп., 14
Электрическая верификация
Имея транзисторную схему цифровой структуры, можно проверить (верифицировать), удовлетворяет ли она нескольким базовым правилам. Ниже приводится ряд примеров типичных правил, иллюстрирующих данную концепцию.
Число инверсий между двумя тактируемыми КМОП-элементами должно быть четным.
В псевдо-n-МОП-элементе для обеспечения достаточной нижней границы запаса помехоустойчивости необходимо строго определенное соотношение размеров задающих р-МОП- и n-МОП-устройств.
Чтобы удержать время нарастания и спада сигналов в определенных пределах, необходимо зафиксировать минимальные размеры задающих транзисторов как функцию разветвления по выходу.
Максимальная величина перераспределения заряда в динамическом проекте должна согласовываться с верхней границей запаса помехоустойчивости .
Просто руководствуясь здравым смыслом, можно сформулировать множество правил, которым должен удовлетворять проект. Применение этих правил требует глубокого понимания структуры схемы. Следовательно, программа электрической верификации начинается с выделения известных подструктур в общей схеме. В качестве типичных шаблонов используются простейшие логические элементы, проходные транзисторы и регистры. Программа верификации обходит получающуюся в результате цепь, последовательно применяя все правила. Поскольку некоторые электрические правила применимы только к определенным стилям проектирования, они должны формулироваться так, чтобы их было просто модифицировать. Например, экспертные системы на основе продукционных правил позволяют легко обновлять базу правил. Отдельные правила могут быть сложными и даже требовать применения программы моделирования схемы для небольших участков цепи. Короче говоря, электрическая верификация — это полезный инструмент, который существенно снижает опасность неверной работы схемы.
Временная верификация
Поскольку схемы постоянно становятся все более и более сложными, бывает проблематично точно определить, какие пути цепи критичны с точки зрения тактирования. Одним из решений данной проблемы является запуск подробных программ моделирования SPICE, что может потребовать довольно много времени. И далее при этом они не гарантируют, что определенный критический путь является наихудшим, поскольку задержка пути зависит от поданных на вход сигналов. Программа временной верификации обходит электрическую цепь и упорядочивает по рангам различные пути на основе их задержек. Задержка может определяться множеством способов. Например, можно создать RC-модель цепи и рассчитать граничные значения задержки получающейся пассивной цепи. Для получения более точных результатов многие программы вначале, основываясь на RC-модели, извлекают информацию о наиболее длинном пути и моделируют сокращенную схему, вычисляя более точную оценку. В качестве примеров ранних систем временной верификации можно привести системы Crystal и TV.
Проблемой многих ранних систем было определение ложных путей т.е. критических путей, которые при нормальной работе схемы никогда не будут задействованы. Например, один такой путь существует в сумматоре и в упрощенной форме показанном на рис. 29. Анализируя только топологию схемы, можно решить, что критический путь данной цепи проходит через сумматор и мультиплексор, как показано стрелкой. Более внимательно изучив работу схемы, мы находим, что такой путь невозможен. Чтобы пройти через весь сумматор, все отдельные биты сумматора должны находиться в режиме прохождения и поступать на вход In. Однако в таком случае включается сигнал обхода и выбирается нижний путь через мультиплексор. Следовательно, реальный критический путь короче, чем можно подумать, проведя анализ в первом приближении. Вообще, выявлять ложные пути непросто, поскольку это требует понимания функционирования схемы на уровне логических элементов. Современные программы временной верификации более успешно справляются с этой проблемой и существенно облегчают жизнь разработчику высокоскоростных схем.
Рис. 29. Пример ложного пути при временной верификации
Рассмотрим результат выполнения программы статической временной верификации PathMill от Synopsys. На вход процесса верификации подается таблица соединений транзисторов, но можно использовать и модели на уровне логических элементов или блоков. При анализе учитываются емкостные и резистивные паразитные нагрузки, вычисленные по транзисторной схеме или топологии.
Результатом временного анализа является упорядоченный список критических временных путей.