Норенков И.П. - Основы автоматизированного проектирования (1060628), страница 54
Текст из файла (страница 54)
В случае использованияCPLD для отражения структуры конкретной схемы в инвариантном по отношению к приложению множестве функциональных ячеек требуется выполнитьзаключительные технологические операции металлизации. В случае схемыFPGA программатор, согласно заданной программе, просто расплавляет имеющиеся перемычки (fuse) или, наоборот, их создает, локально ликвидируя тонкий изолирующий слой (antifase). Следовательно, при использовании CPLD иFPGA необходимо с помощью САПР выбрать систему связей между ячейками программируемого прибора в соответствии с реализуемыми в схеме алгоритмами и синтезировать программы управления программатором или заключительной операцией металлизации.
Ячейки могут быть достаточно сложнымилогическими схемами, вентилями или даже отдельными транзисторами. Напроизводстве кристаллов ПЛИС специализируется ряд фирм, например Xilinx,Altera, Actel и другие, зачастую эти же фирмы поставляют ПО для синтезасхем на производимых ими ПЛИС.2255. Методическое и программное обеспечение автоматизированных системВ последнее время значительное внимание уделяется процедурам совмещенного проектирования программной и аппаратной частей СБИС (SW/HW Software/Hardware co-design).
Если в традиционных маршрутах проектирования разделение алгоритмов на части, реализуемые программно и аппаратно,происходит на самых ранних шагах, то в технологии совмещенного проектирования эта процедура фактически переносится на RTL-уровень и тем самымвходит в итерационный проектный цикл, что может привести к более обоснованным проектным решениям. Примером подхода к совмещенному проектированию может служить методика моделирования на уровне исполнения системы команд, в соответствии с которой моделируются события, происходящиена внешних выводах таких устройств, как арифметико-логическое, встроеннаяи внешняя память, системная шина и т. п.
Благодаря совмещенному проектированию удается на ранних стадиях проектирования не только найти и исправить возможные ошибки в аппаратной и программной частях проекта, но и отладить контролирующие тесты.Совмещенное проектирование аппаратных и программных частей успешноприменяют при проектировании систем на кристалле (SoC - System-on-Chip)для встроенной аппаратуры.
При этом аппаратная часть целевого процессорапредставляет собой модель уровня системы команд. Модель может быть описанием архитектуры процессора или расписанием работы шины процессора наязыке VHDL, но возможно использование и аппаратного тестера. При этомскорость моделирования сравнительно невелика. Производительность можноповысить, если моделирование операций обращения к памяти выполнять не ваппаратном, а в логическом симуляторе.Для проверки работоспособности и оценки параметров синтезированныхсхем применяют процедуры анализа (верификации) функциональных и логических схем. Чаще всего верификацию выполняют с помощью программ моделирования, ориентированных на системный, регистровый или вентильныйуровни.
В итерационном цикле проектирования моделирование должно выполняться многократно: сначала с ориентировочными значениями задержек, затем после этапа топологического проектирования уже с учетом уточненныхзадержек, обусловленных паразитными параметрами соединений.Отметим, что в СБИС проводники имеют малые площади поперечных сечений и, следовательно, увеличенное сопротивление, это приводит к тому, чтопо мере уменьшения проектных норм начинают доминировать задержки в соединениях.
Эти задержки имеют заметный разброс и существенно влияют набыстродействие схемы, поэтому во многих программах логического моделирования имеются модели проводников. С помощью этих моделей рассчитываются задержки в зависимости от результатов трассировки.Чтобы определить значения параметров схемы, полученных в результатетопологического проектирования, используют специальные программы уточнения задержек (экстракция параметров).
Для этих целей возможно применение и программ схемотехнического моделирования.2265.3. Система автоматизированного проектирования в радиоэлектроникеВ программах временного анализа на функционально-логическом уровне преимущественно применяется событийное асинхронное логическое моделирование с многозначной логикой.Наряду с асинхронным находит применение синхронное моделирование,быстродействие которого на один-два порядка выше, чем у временного анализа. Синхронное моделирование отличается тем, что на каждом такте синхросигналов определяется установившееся состояние схемы, а переходные процессы не рассматриваются.
При этом обычно используется двухзначная логика,реже четырехзначная.Синхронное моделирование не позволяет верифицировать схему в достаточной степени, поэтому принимаются меры, позволяющие повысить эффективность асинхронного событийного анализа.Еще более высокое быстродействие верификации можно получить в системах эмуляции логики, в которых по исходному описанию схемы на уровнях вентильном или RTL происходит ее параллельная эмуляция на аппаратных ускорителях.Другое направление сокращения времени на проверку корректности решений, принимаемых при функционально-логическом проектировании, связано сметодами формальной верификации. В этих методах вместо многократногомоделирования схемы при различных тестовых воздействиях выполняют сопоставление проектного решения с некоторым эталоном методами, развиваемыми в теории дедуктивных систем.Результаты логического синтеза в виде VHDL- или Verilog-описания используют далее для синтеза тестов и передают на этап конструкторского проектирования СБИС.Актуальность проблемы тестирования обусловлена сравнительно малымчислом внешних выводов СБИС, т.
е. ограниченными управляемостью и наблюдаемостью СБИС. Отметим также, что синтез и анализ тестов занимаютдо 35 % времени в цикле проектирования СБИС и, несмотря на такие затраты,удается разрабатывать тесты с приемлемой полнотой обнаружения константных неисправностей только для комбинационных схем.Для решения проблем тестирования в СБИС используют специальные методы проектирования самих микросхем. Это, во-первых, методы сканирования, преобразующие в режиме тестирования последовательностные схемы вкомбинационные. Методы сканирования основаны на объединении триггеров,имеющихся в схеме или специально вводимых в нее, в один или несколько сдвигающих регистров, управляющих состоянием схемы и управляемых через последовательный вход.
Во-вторых, это методы самотестирования (BIST— Builtin Self-Test), основанные на встраивании в кристалл генераторов тестовых наборов и схем, сжимающих результаты проверки основной части СБИС при этихтестовых наборах.Среди методов сканирования значительное внимание уделяется методу граничного сканирования (BS — boundary-scan}, предназначенному преимущественно для проверки соединений на печатных платах и в многокристальных2275 Методическое и программное обеспечение автоматизированных системСБИС.
С этой целью в каждый чип вводятся сдвигающие регистры, состоящие из ячеек по одной на каждый внешний вывод. Благодаря ячейкам можнопри проверке соединений отключать внутрикристальные цепи, а при проверкелогической схемы подключать или внутренние сканирующие регистры, или (вслучае BIST) генераторы тестовых наборов и схемы компрессии результатов.Для подключения платы к тестирующему по BS прибору достаточно пяти проводов.Для целей проектирования схем с граничным сканированием разработаныспециальный стандарт ШЕЕ 1149.1 и языки BSDL и HSDL (Boundary andHierarchical Scan Description Languages), являющиеся подмножеством VHDL.Очевидно, что проектирование схем тестирования целесообразно выполнять совместно с синтезом основных схем, т.
е. на уровнях RTL и вентильном.Основой ПО конструкторского проектирования в системах ECAD являютсясредства топологического проектирования, среди которых выделяют программы разработки топологии (layout) кристаллов СБИС, многокристальных СБИСи печатных плат.Конструкторское проектирование СБИС включает в себя ряд процедур.Разрезание (partitioning или компоновка) заключается в группировании компонентов по критерию связности, что необходимо или для размещения формируемых групп в отдельных чипах при многокристальной реализации, или дляопределения их взаимного расположения в одном кристалле в процессе выполнения последующей процедуры планирования (floorplanning) кристалла. Группы при планировании представляют в виде прямоугольников, их расположениеобычно определяется в интерактивном режиме, но находят применение такжегенетические алгоритмы.Далее следуют процедуры размещения (placement) компонентов, трассировки (routing) соединений, сжатия (compaction) топологической схемы, проверки соответствия топологической и принципиальной схем, подготовки информации для генераторов изображений.
Ответственность процедуры размещенияопределяется доминирующим влиянием на быстродействие СБИС задержекименно в соединениях. Трассировка состоит из глобальной фазы, во время которой намечается положение трасс, и детальной, которая, в свою очередь, подразделяется на канальную (channel) и локальную (switchbox).