Суворова Е.А., Шейнин Ю.Е. Проектирование цифровых систем на VHDL (2003), страница 5
Описание файла
DJVU-файл из архива "Суворова Е.А., Шейнин Ю.Е. Проектирование цифровых систем на VHDL (2003)", который расположен в категории "". Всё это находится в предмете "микропроцессорные системы (мпс)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "микропроцессорные системы" в общих файлах.
Просмотр DJVU-файла онлайн
Распознанный текст из DJVU-файла, 5 - страница
Блочно-ориентированное проектирование По мере роста сложности СВИС, стоимости и временных затрат проектирования новой СБИС "с нуля", все большее значение придается повторному использованию ранее спроектированных и использованных в СБИС компонентов для создания новых изделий. В рамках этой тенденции получило развитие так называемое блочноориентированное проектирование (В)оск-Ьазед дез1яп). Оно позволяет использовать в новом проекте, в качестве готовых компонентов, функциональные узлы и топологические фрагменты из предыдущих проектов СБИС.
Реализация этой, вполне естественной по своей постановке, задачи требует частичного изменения в традиционной схеме проектирования СБИС, изменения соотношений и взаимодействия между проектированием на системном уровне, КТБ-уровне и физическим проектированием. Повторное использование относится к реализации функций системного уровня. Проектирование начинается с построения поведенческой модели на системном уровне, где отрабатывается системный проект, принимаются решения о разделении реализации функций аппаратными или программными средствами и т.д.
Затем компоненты системного уровня нового проекта разбиваются и отображаются на набор специфицированных ранее функциональных блоков КТЕ-уровня. Для выбранных блоков КТЕ-уровня проводится оценочное проектирование, устанавливаются условия их соответствия ограничениям по времени, потребляемой мощности, занимаемой площади кристалла. По результатам проведенной работы определяется, какие из готовых блоков можно оставить в новом проекте, а какие лучше спроектировать заново. Типичным для этой методики является использование в новых проектах готовых блоков программируемых процессоров (процессорных ядер— ргосеззог согез), т.
е. центральной части процессоров сигналов, популярных микропроцессоров, микроконтроллеров. Блоки могут браться либо как готовые, отработанные и надежные топологические фрагменты (магд Ыоскз), либо как спецификация на уровне схемотехнического проекта (Впп Ыоскз)„ либо как блоки на КТЕ-уровне, которые далее нало проектировать и верифицировать на нижних уровнях. При верификации как повторно используемых, так и новых блоков, в блочно-ориентированном проектировании применяют реалистические тестовые наборы, полученные на модели системы на поведенческом уровне.
Этот под- 1г Глава 1 ход знаменует переход к внутрисистемной верификаяии проектируемых блоков (твузгепт-1п" чепйсагюп), которая одна только и может дать достоверные результаты верификации для сложных СБИС комплексных систем. Таким образом, блочно-ориентированный подход требует интегрированных сред разработки, сквозных языков и методов спецификации систем по уровням проектирования СБИС. Проектирование Систем-на-кристалле Дальнейшим развитием технологии проектирования систем на СВИС является проектирование Систем-на-кристалле — СнК (Зузгеш-оп-а-сЫр Оез1р, БоС). В отличие от блочно-ориентированного проектирования, которое базировалось, в основном, на повторном использовании собственных разработок, проектирование СнК заключается в возможности использования готовых компонентов из разных источников, от разных разработчиков.
На это сориентирован как процесс создания комплексной СБИС, так и разработка самих компонентов для многократного использования в разных проектах (дез1яп гецзе). Проектирование СнК является следуюшим шагом в эволюции технологии построения систем на СБИС, включает в себя комбинацию инструментария и методологии проектирования сложных систем на одном кристалле в пределах короткого временного цикла. Как и блочно-ориентированное проектирование, СнК является иерархической технологией проектирования, начинаюшейся на системном уровне.
Иерархическое проектирование (дез1яп Ь|егагс)зу), а также использование в проектах преимушественно готовых функциональных компонентов, позволяют успешно справляться с большой сложностью проектируемых систем, размешаемых на кристалле, радикально сократить временной цикл создания СБИС, повысить производительность разработчиков. В качестве основных компонентов проекта СнК используются готовые, предварительно верифицированные и апробированные блоки со стандартизированными интерфейсами. Проектирование СнК включает две основные составляюшие: (.') авторизацию блоков для применения' в проекте (Иосси ацйог1пя); 0 интеграцию блоков в систему-на-кристалле (зувгеш-сп1р!пгейгабоп).
Авторизация блоков использует методологию, аналогичную блочно-ориентированному проектированию, дополняя ее двумя ключевыми методиками: стандартизацией интерфейсов блоков, а также проектированием для виртуальной системы (Игша! зузгеш с1ез1яп). Проектирование компонентов для виртуальной системы означает, что разработчик блоков (компонентов многократного применения в разных СнК) должен использовать средства для Уровни и процесс проектирования СБИС 13 установления системных ограничений на применение его компонента в конкретных СнК (для верификации соответствия компонента этим ограничениям и для адаптации компонента к ним при включении в проект СнК).
Интеграция СнК заключается в проектировании и верификации архитектуры на системном уровне, а также организации интерфейсов между блоками, компонуемыми в СнК. Здесь важную роль играет ориентация на архитектуру со стандартизированными интерфейсами блоков, а также на стандартизацию форм и языков спецификации интерфейсов компонуемых блоков. Разработчики блоков снабжают их стандартизированным комплектом спецификаций, включая спецификации интерфейсов, причем комплектом многоуровневым — от системного уровня до того уровня, который реализован в компоненте (для топологических компонентов — до физического уровня). Концепция СнК, принципы иерархического проектирования, заложенные в ее основу, дают возможность строить и использовать готовые блоки (компоненты СнК разного уровня).
Такие готовые блоки часто называют 1Р- блоками, 1Р-ядрами (1Р-согез; 1Р— от 1пге!!ее!па! Ргорепу, интеллектуальный продукт') или виртуальными компонентами (уггпга! остроленке — Щ, вирту- алькой элементной базой для систем на кристалле. Различают три основных класса блоков: 0 программные 1Р-блоки (зой Ыос!гз) — блоки, специфицированные в языке описания аппаратуры (например, на языке ЧНОЬ, на программируемых уровнях проектирования СБИС вЂ” функциональном, логическом; КТЬ- спецификации). Программные 1Р-блоки наиболее гибки в применении, технологически независимы, могут быть использованы в проектах, ориентированных на различные технологии реализации. Например, зой 1Р- блоки могут легко переноситься из проектов устройств на РРОА в проекты АЯС, проекты полузаказных и заказных СБИС.
Недостатком программных блоков является сложность прогнозирования характеристик их реализации на конкретной технологии (скоростных характеристик, занимаемой площади кристалла, потребляемой мощности). Еще одна проблема — сложность защиты авторских прав разработчика программного 1Р- блока (приходится передавать исходный текст на ЧНАЯ!. пользователю !4!); ьз схемотехнические блоки (йпп Ыос1сз) — блоки, специфицированные на схемотехническом уровне, без привязки к конкретной топологической реализации. Они более гибкие, чем блоки физического уровня, однако при применении в СнК потребуется проектирование (генерация) и верификация перевода блока на физический уровень.
Схемотехнические 1Р-блоки имеют достаточно предсказуемые характеристики по занимаемой площади и быстродействию, представляются на вентильном уровне, в ' Здесь аббревиатура 1Р не имеет никакого отношения к распространенному термину "!Р- протокол" в сети Интернет. 14 Глава 1 форме списков связей (пег!!зга). В них уже отражены определенные технологические ограничения реализации, эти блоки структурно и топологически оптимизированы по производительности и занимаемой площади, используют справочные данные о планируемой технологии реализации (ге1егепсе гесЬпо!ояу ВЬгагу), Р!гш 1Р-блоки могут содержать данные о взаимном расположении элементов на площади кристалла.
Однако полную трассировку связей внутри блока они все же не включают. Схемотехнические 1Р-блоки занимают промежуточное положение между программными 1Р-блоками и аппаратными 1Р-блоками, они более оптимизированы и предсказуемы по характеристикам, чем вой 1Р, но, в то же время, более жестко завязаны на технологию реализации; более гибки, чем Ьагд 1Р, но, по сравнению с последними, менее оптимизированы и требуют дополнительных этапов схемотехнического и топологического синтеза для конечной реализации на кристалле (л физические (топологические) блоки (!тагг! Ыосйз) — блоки, специфицированные на физическом уровне реализации СБИС.
Они представляют собой реализацию блока в топологии на кристалле (Ро!уяоп !ече! г!ага), дают наиболее оптимизированную форму реализации функций блока, имеют вполне определенные характеристики по быстродействию, плошади, потребляемой мощности. Однако физические блоки имеют жесткую привязку к технологии изготовления кристалла и топологическим ограничениям, поэтому перенос их в изделия, проектируемые под другие технологические требования, может повлечь за собой их полное перепроектирование.