Глава 1. Генерация тестовых программ для микропроцессоров

|
Глава 1. Генерация тестовых программ для микропроцессоров
|
bet | 6/7 | Sana | 16.05.2024 | Hajmi | 28,22 Kb. | | #238832 |
Bog'liq Mavzuning dolzarbligiГлава 1. Генерация тестовых программ для микропроцессоров
Данная глава содержит обзор техник и инструментов, применяемых для генерации тестовых программ для функциональной верификации микропроцессоров. В начале главы рассказывается об области применения генераторов тестовых программ, а затем делается сравнительный анализ существующих техник и инструментов. На основе данного анализа формулируется основные требования к методу автоматизации конструирования генераторов тестовых программ, предлагаемому в данной работе.
1.1 Проектирование микропроцессоров
Проектирование микропроцессора – сложный процесс, включающий в себя нескольких этапов [16, 25, 26], на каждом из которых создается описание микропроцессора на определенном уровне абстракции. На рисунке 2 показана общая схема процесса проектирования микропроцессора.
Проектирование микропроцессора начинается с составления детального плана (технического задания), в котором описывается концепция проектируемого устройства, целевая рыночная ниша и основные 16
характеристики (такие как цена, производительность и энергопотребление). Также определяется на основе каких предыдущих разработок будет создан микропроцессор и какое программное обеспечение будет на нем запускаться. Помимо этого делается оценка времени и ресурсов, отведенных на проектирование, составляется график работ и выбирается общая методология проектирования.
На этапе проектирования архитектуры определяется, какие команды будут поддерживаться микропроцессором. На этом этапе уточняются требования и создается спецификация архитектуры. Помимо документов требований и спецификаций архитектуры результатом данного этапа является программный эмулятор (симулятор), позволяющий интерпретировать программы, написанные для целевого микропроцессора. Он может использоваться для кросс-разработки программного обеспечения или выступать в качестве эталонной модели.
После архитектуры проектируется микроархитектура. Она описывает функциональные модули микропроцессора, их взаимодействие и разделение задач между ними. На этом этапе определяются такие характеристики, как организация конвейера команд и иерархии памяти, способ реализации многопоточности и т.д. Обычно результатом проектирования микроархитектуры являются диаграммы взаимодействия между модулями и спецификации, описывающие различные алгоритмы. Кроме того на этапах проектирования архитектуры и микроархитектуры осуществляется моделирование. Для этого применяются следующие средства: (1) языки программирования общего назначения, (2) языки системного проектирования (SLDL, System-Level Design Languages) и (3) языки описания архитектуры (ADL, Architecture Description Languages) [27, 28, 29]. Примеры языков указанных типов представлены в таблице 1. С их помощью создаются модели для проведения различных экспериментов (например, программные эмуляторы или формальные модели), а также средства разработки для проектируемой архитектуры (компиляторы, дизассемблеры, и т.д.).
На следующем этапе при помощи языков описания аппаратуры (HDL, Hardware Description Languages) описывается логическая структура микропроцессора. Результатом данного этапа является модель уровня регистровых передач (RTL, Register Transfer Level), называемая также HDL-моделью или HDL-описанием, которая с потактовой точностью определяет пересылки данных, возникающие при работе устройства. На этапе разработки HDL-модели часто прибегают к прототипированию (prototyping) [30]. Оно предполагает создание функционально идентичной реализации, выполненной с использованием программируемых логических интегральных схем (ПЛИС), с целью проведения различных экспериментов.
После этого на основе HDL-модели строится функционально ей эквивалентная схема из логических вентилей в заданном технологическом базисе. Процесс построения данной схемы осуществляется средствами систем автоматизированного проектирования (САПР) и называется логическим синтезом.
Далее осуществляется построение топологии, которая описывает размещение транзисторов и проводников в слоях материала, их которого изготовляется схема на кристалле. Этот этап называется физическим синтезом и он, также как и логический синтез, автоматизирован средствами САПР. В результате получается представление (как правило, основанное на фотошаблонах), которое затем используется при производстве интегральных схем.
По завершению физического проектирования осуществляется выпуск (tape-out) первого опытного образца (first silicon) интегральной схемы. Данный образец проходит несколько циклов отладки, в процессе которых выявляются и 18
исправляются ошибки, перед тем как, созданный микропроцессор может быть выпущен на рынок.
|
| |