Методы и средства программного моделирования для обеспечения процесса проектирования микропроцессорных систем

  • Автор:
  • Специальность ВАК РФ: 05.13.11
  • Научная степень: Кандидатская
  • Год защиты: 2013
  • Место защиты: Москва
  • Количество страниц: 148 с. : ил.
  • бесплатно скачать автореферат
  • Стоимость: 250 руб.
Титульный лист Методы и средства программного моделирования для обеспечения процесса проектирования микропроцессорных систем
Оглавление Методы и средства программного моделирования для обеспечения процесса проектирования микропроцессорных систем
Содержание Методы и средства программного моделирования для обеспечения процесса проектирования микропроцессорных систем
Содержание
Введение
1. Разработка моделирующих комплексов процессорных архитектур
1.1 Подходы к моделированию
1.2 Принципы моделирования
1.3 Разновидности программных моделей
1.3.1 Модели пользовательского уровня
1.3.2 Модели уровня вычислительного комплекса
1.3.3 Функциональные модели
1.3.4 Потактовые модели
1.4 Аналогичные работы
1.4.1 SimICS
1.4.2 QEMU
1.4.3 Bochs
1.4.4 М
1.4.5 Shade
1.4.6 Strata
1.5 Выводы
2. Функциональные характеристики системы моделирования
2.1 Требования к построению моделирующих комплексов
2.2 Объект моделирования
2.2.1 Архитектура «Эльбрус»
2.2.2 Микропроцессор «Эльбрус-ЗМ» и вычислительный комплекс на его основе
2.2.3 Микропроцессор «Эльбрус-S» и вычислительный комплекс на его основе
2.2.4 Дальнейшее развитие архитектуры «Эльбрус»

2.2.5 Архитектура SPARC
2.2.6 Микропроцессор MLJ,CT-R500S (SPARC V8)
2.2.7 Микропроцессор МЦСТ-RIOOO (SPARC V9)
2.3 Функциональная схема
2.4 Выводы
3. Методы построения моделирующих комплексов
3.1 Принципы построения
3.1.1 Маршрут проектирования
3.1.2 Объектно-ориентированный подход
3.1.3 Использование парадигмы обобщенного программирования
3.1.4 Конфигурируемость
3.2 Функциональные схемы симуляторов «Эльбрус» и SPARC
3.3 Архитектурно-независимые методы построения моделирующих комплексов
3.3.1 Организация декодирования и выполнения инструкций
3.3.2 Программная реализация регистрового файла
3.3.3 Реализация системы прерываний
3.4 Реализация архитектурных особенностей в моделях семейства «Эльбрус»
3.4.1 Реализация тегирования данных в моделирующих комплексах
3.4.2 Вторичное виртуальное адресное пространство
3.4.3 Сегментная организация памяти в моделях пользовательского уровня
3.5 Организация подсистемы памяти
3.6 Периферийные устройства
3.7 Анализ кода и производительность
3.7.1 Производительность симуляторов вычислительного комплекса архитектуры «Эльбрус»
3.7.2 Производительность симуляторов пользовательского уровня архитектуры «Эльбрус»
3.7.3 Производительность симуляторов вычислительного комплекса архитектуры SPARC
3.7.4 Производительность симуляторов пользовательского уровня архитектуры SPARC
3.8 Выводы
4. Проектирование и реализация отладочных средств
4.1 Трассировка
4.1.1 Трассировка исполнения инструкций
4.1.2 Трассировка устройств процессора
4.1.3 Трассировка периферийных устройств
4.2 Слежение за состоянием регистров и памяти
4.3 Сбор статистики
4.4 Контроль неопределенных ситуаций
4.5 Контроль аппаратных зависимостей (правил планирования)
4.6 Контрольные точки
4.7 Выявление и контроль обхода аппаратных ошибок
4.8 Влияние отладочных средств на скорость моделирования
4.9 Выводы
Заключение
Литература
Приложение

машины прологом и эпилогом, с помощью которых регистры целевой машины отображаются на регистры инструментальной в начале блока и производится обратная операция — в конце. Результатом такого подхода оказывается замедление моделирования в 3-6 раз по сравнению со скоростью выполнения обычного немодифицированного кода.
1.4.6 Strata
Программный комплекс Strata [28] [29] позволяет моделировать произвольную целевую машину на инструментальной машине с той же самой архитектурой. Это достигается с помощью применения техники виртуализации, позволяющей получать последовательности инструкций целевой машины, называемых фрагментами, реализующих основные блоки инструкций целевой машины. Таким образом, архитектура Strata похожа на Shade, как и любой комплекс, использующий динамическую оптимизацию.
Благодаря своей модульной организации, Strata может легко портироваться для работы на различных архитектурах и операционных системах. В частности, разработаны трансляторы для архитектур SPARC, MIPS и х86. Для портирования Strata, пользователю требуется вручную реализовать набор интерфейсных функций, описывающих машиннозависимый уровень. Эти функции описывают декодирование инструкций целевой машины, создание фрагментов и изменение состояния моделируемой машины. Более того, сгенерированные фрагменты могут дополняться расширенной функциональностью, что позволяет в любой момент перехватить управление любой выполняющейся программы. В симуляторе реализован монитор системных вызовов, позволяющий контролировать поведение непроверенных программ и выявлять возможные нарушения безопасности в них. В Strata также реализованы модели кэшей инструкций и данных.
Результаты измерения скорости свидетельствуют о замедлении скорости выполнения в 1-3 раза, в зависимости от характера исполняющийся

Рекомендуемые диссертации данного раздела