- •Встроенные микропроцессорные системы
- •Оглавление
- •2. Программное обеспечение встроенных систем ……….
- •Введение
- •Модуль 1
- •Аппаратные средства встроенных систем
- •1.2. Элементы архитектуры процессоров встроенных систем
- •1.2.1. Множество команд
- •1.2.3.1. Адресное пространство
- •1.2.3.2. Порядок байт
- •1. 2.3.3. Когерентность памяти
- •1. 2.3.4. Защита памяти
- •1. 2. 4. Модель прерываний
- •1.2. 5.Модель управления памятью
- •1.2.5.1. Страничная организация памяти
- •1.2.5.2. Сегментация памяти
- •1.3. Типы процессоров
- •1.4. Формы параллелизма в процессорах
- •1.4.1. Конвейеризация
- •1.4.2. Параллелизм уровня команд
- •1.5.Технологии памяти
- •1.5.1. Оперативная память
- •1.5.1. 1. Статическое озу
- •1.5.2. Постоянное запоминающее устройство (rom)
- •1.6. Иерархия памяти
- •1.6.1. Распределение или карта памяти
- •1.6.2. Блокнотная и кэш память
- •1.6.2.1. Кэш-память прямого отображения
- •1.6.2.2. Ассоциативная по множеству кэш-память
- •1.6.2.3. Обновление кэш-памяти.
- •1.6.2.4. Протокол когерентности кэширования с обратной записью
- •1.7. Магистраль микропроцессорной системы
- •1.8. Базовые устройства ввода-вывода встроенных систем
- •1.8.1. Порты ввода-вывода общего назначения
- •1.7.2. Таймер-счетчик
- •1.8.3. Импульсно-кодовая модуляция.
- •1.8.4. Многоканальный аналого-цифровой преобразователь
- •1.9. Базовые последовательные интерфейсы ввода-вывода
- •1.9.2. Последовательный интерфейс spi
- •1.9.4.1. Введение в usb
- •1.9.4.2. Интерфейс Open Host Controller для usb
- •Вопросы для самоконтроля
- •Модуль 2
- •1.10. Язык проектирования аппаратуры vhdl
- •1.10.2. Введение в vhdl
- •1.10.2.1. Программирование на vhdl для моделирования и синтеза [19]
- •1.10.2.2. Entity и architecture
- •1.10.2.3. Операторы присваивание и process [19]
- •1.10.2.4. Цикл моделирования vhdl
- •1.10.2.5. Многозначная логика и стандарт ieee 1164
- •1.11. Проектирование устройств ввода-вывода и контроллеров
- •1.12. Интегрированная среда разработки аппаратных средств
- •Вопросы для самоконтроля
- •Модуль 3
- •2. Программное обеспечение встроенных систем
- •2.1 Модель вычислений
- •2.2 Автомат с конечным числом состояний
- •2.3. Асинхронный язык проектирования sdl
- •2.4. Синхронный язык проектирования Lustre
- •2.5. Многозадачность.
- •2.5.1. Язык программирования Си
- •2.5.2. Потоки
- •2.5.2.1. Реализация потоков
- •2.5.2.2. Взаимное исключение
- •2.5.2.3. Взаимная блокировка
- •2.5.2.4. Модели непротиворечивости памяти
- •2.5.2.5. Проблемы с потоками
- •2.5.3. Процессы и передача сообщений
- •2.6. Интегрированная среда разработки прикладного программного
- •2.6.2. Комплект программ Telelogic Tau sdl Suite
- •2.6.3. Средства разработки программного обеспечения
- •2.7.1. Моделирование, эмуляция и макетирование
- •2.7.2. Формальная верификация
- •2.7.3. Оценка производительности
- •2.7.3.1. Оценка wcet
- •2.7.3.2. Исчисление реального времени
- •1 2 3 E
- •2.7.4. Модели энергии и мощности
- •2.7.5. Тепловая модель
- •Вопросы для самоконтроля
- •Заключение
- •Задания
- •1. Конвейеризация
- •2. Иерархия памяти
- •3. Базовые устройства ввода-вывода встроенных систем
- •5. Многозадачность
- •6. Валидация и оценка проекта
- •Библиографический список
- •Встроенные микропроцессорные системы
1.12. Интегрированная среда разработки аппаратных средств
Active-HDLTM
Автоматизированное проектирование — это магистральное направление развития технологий создания электронной аппаратуры [22]. До недавнего времени образцом решения таких задач считались разработки на базе серийно выпускаемых стандартных интегральных микросхем, и большинство САПР ориентировались на реализацию именно этой технологии проектирования. Идеальным вариантом казались «сквозные» САПР, которые позволяли выполнить всю цепочку проектирования: от входного описания до создания эскиза печатной платы. Примерами сквозных САПР являются PCAD, DesignLab и OrCAD.
В последние годы набирают силу новые технологии проектирования электронной аппаратуры, основанные на современных персональных компьютерах, интегрированных САПР и программируемой логике. Яркий представитель таких САПР нового поколения — это интегрированная среда проектирования Active-HDL. Ее отличает особая легкость и «элегантность» в работе. Фирма ALDEC, создатель этого программного продукта, год от года совершенствует свое детище и наделяет его новыми возможностями.
Продукт Active-HDL является самым популярным среди разработчиков цифровой аппаратуры интегрированной средой разработки для проектирования цифровых схем, созданных с помощью языков описания оборудования VHDL, Verilog/SystemVerilog, EDIF и SystemC. Она содержит инструменты для входа в систему, компиляторы VHDL и Verilog, отдельное ядро моделирования, несколько стандартных и продвинутых инструментов отладки, программы просмотра результатов моделирования в графической и текстовой форме. Также содержит вспомогательные утилиты для упрощения управления ресурсными файлами, проектами и библиотеками проектов; также встроенные интерфейсы для запуска моделирования, синтеза, управления версиями исходных файлов, взаимодействия со средствами поддержки моделей сторонних производителей. На рис. 62 показаны инструменты и компоненты Active-HDL.
Рис. 62. Инструменты и компоненты Active-HDL
Console (Консоль). Окно консоли является интерактивным механизмом для ввода макрокоманд Active-HDL и пользовательских скриптов, вывода сообщений, генерируемых инструментами Active-HDL.
Workspace/Design Explorer (Анализатор рабочей области/проекта) позволяет администрировать проекты Active-HDL, так что нет необходимости беспокоится о месте нахождения файлов на компьютере.
Design Browser (Программа просмотра проекта). Окно просмотра показывает содержимое текущего проекта:
- ресурсные файлы, прикрепленные к проекту,
- рабочие библиотеки по умолчанию,
- структуру узла, выбранного для моделирования,
-VHDL, Verilog, и EDIF объекты, объявленные внутри выбранной области текущего проекта.
Design Flow Manager (Менеджер процесса проектирования) помогает автоматизировать обработку Active-HDL проектов. Он показывает типовую последовательность проектирования в форме диаграммы. Встроенные в диаграмму программные кнопки вызывают приложения, участвующие в преобразованиях.
Language Assistant (Языковый помощник ) является вспомогательным инструментом для представления шаблонов логических примитивов и функциональных блоков. Он интегрирован с редактором HDL, так что можно автоматически вводить требуемые шаблоны в редактируемый исходный файл. Языковый помощник также позволяет определять собственные шаблоны пользователя.
HDL Editor (Редактор HDL) – это тестовый редактор. Он индицирует специфические синтаксические категории различными цветами. Редактор неразрывно интегрирован с симумятором для получения возможности отлаживать исходный код.
State Diagram Editor (Редактор диаграммы состояний) – это графическое средство разработано для редактирования графов переходов автоматов. Редактор автоматически транслирует графически спроектированный граф в VHDL или Verilog код.
Waveform Viewer/Editor (Программа просмотра/редактирования временной диаграммы) показывает результаты моделирования в виде временной диаграммы. Она дает возможность графической редакции временной диаграммы как требуемых тестовых векторов.
Block Diagram Editor (Редактор блок-диаграмм) является графическим инструментом для создания блок-диаграмм. Он автоматически транслирует графически представленную схему в VHDL или Verilog код.
Окно List (Список) показывает результаты моделирования в табличном текстовом формате. Это позволяет выполнять трассировку результатов с точность до дельта-цикла.
Окно Watch (Наблюдение) показывает текущие значения выбранных объектов VHDL или Verilog во время моделирования.
Окно Processes (Процессы) показывает текущий статус параллельных процессов в окончательном проекте во время моделирования.
Окно Call Stack (Стека вызовов) является инструментом отладки, показывающим список подпрограмм (процедур и функций), выполняемых в текущем процессе.
Library Manager(Администратор библиотеки) разработан для управления библиотеками и их содержанием.
Окно Dataflow (Поток данных) является инструментом для отображения в графической форме последовательности входных и выходных сигналов процессов во время моделирования.
Окно Memory View(Просмотр памяти) является инструментом для отображения содержимого памяти (двумерных объектов), объявленной в проекте.
Server Farm (Серверное хозяйство) является продвинутым, независимым инструментом работающим в локальной сети, который позволяет пользователю планировать задачи, а затем их автоматически исполнять на выбранных компьютерах доступных в сети.
Code Coverage (Покрытие кода VHDL) позволяет с помощью испытательных программ (test bench) определять выполнение исходного кода.
Design Profiler (Программа протоколирования проекта) показывает, где симулятор тратит время при моделировании и дает возможность понять как используется центральный процессор компьютера.
Source Revision Control (Управление версиями) – это интерфейс взаимодействия с профессиональной системой управления версиями проекта.