Рекомендуем

Ключевые слова:
XilinxПЛИС
Проектирование встраиваемых микропроцессорных систем на основе ПЛИС фирмы XILINX<sup>®</sup>Зотов В.Ю. Проектирование встраиваемых микропроцессорных систем на основе ПЛИС фирмы XILINX®
Архитектуры ПЛИС фирмы Xilinx: CPLD и FPGA 7-й серииСоловьев В.В. Архитектуры ПЛИС фирмы Xilinx: CPLD и FPGA 7-й серии
Разработка цифровых устройств на основе ПЛИС Xilinx<sup>®</sup> с применением языка VHDLТарасов И.Е. Разработка цифровых устройств на основе ПЛИС Xilinx® с применением языка VHDL170 р.

Книга

Проектирование встраиваемых микропроцессорных систем на основе ПЛИС фирмы XILINX

2-е издание, стереотипное
Первое издание вышло в свет в 2006 г.
2017 г.
520 стр.
Тираж 100 экз.
Формат 70x100/16 (170x240 мм)
Исполнение: в мягкой обложке
ISBN 978-5-9912-0628-0
ББК 32.852.3
УДК 004.383:004.414.23/.4'2
Аннотация

Книга предназначена для самостоятельного изучения методики сквозного проектирования встраиваемых микропроцессорных систем на базе программируемых логических интегральных схем (ПЛИС) фирмы Xilinx®. Представлено подробное описание характеристик, архитектуры и системы команд микропроцессорных ядер семейств PicoBlaze™ и MicroBlaze™, применяемых в качестве основы встраиваемых систем. Рассмотрены этапы проектирования 8-разрядных микропроцессорных систем, реализуемых на базе ПЛИС с архитектурой FPGA, с использованием ядер семейства PicoBlaze, и их выполнение в рамках САПР серии Xilinx ISE™ (Integrated Sowtware Environment) версии 7.1i. Дана развернутая характеристика основных этапов разработки 32-разрядных встраиваемых систем, выполняемых на основе микропроцессорных ядер семейства MicroBlaze. Рассмотрен процесс осуществления этих этапов с помощью комплекса средств автоматизированного проектирования встраиваемых микропроцессорных систем Xilinx Embedded Development Kit™ (EDK). Приведены исходные тексты VHDL-описаний микропроцессорных ядер семейств PicoBlaze. Материал, изложенный в книге, также может быть использован в процессе самостоятельного освоения средств проектирования 32-разрядных встраиваемых микропроцессорных систем Xilinx EDK версии 7.1i.

Для инженерно-технических работников, может быть полезна студентам и аспирантам, специализирующимся в области разработки микропроцессорных систем различного назначения.

Оглавление

ПРЕДИСЛОВИЕ

1. ХАРАКТЕРИСТИКА МИКРОПРОЦЕССОРНЫХ ЯДЕР И СРЕДСТВ ПРОЕКТИРОВАНИЯ ВСТРАИВАЕМЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА ОСНОВЕ ПЛИС ФИРМЫ XILINX
1.1. Типы микропроцессорных ядер, предназначенных для разработки встраиваемых систем на основе ПЛИС фирмы Xilinx
1.2. Краткая характеристика микропроцессорных ядер семейства PicoBlaze
1.3. Краткая характеристика микропроцессорных ядер семейства MicroBlaze
1.4. Краткая характеристика микропроцессорных ядер семейства PowerPC
1.5. Краткий обзор основных средств проектирования, предоставляемых фирмой Xilinx

2. МИКРОПРОЦЕССОРНОЕ ЯДРО PICOBLAZE, ПРЕДНАЗНАЧЕННОЕ ДЛЯ РАЗРАБОТКИ ВСТРАИВАЕМЫХ СИСТЕМ НА ОСНОВЕ ПЛИС ФИРМЫ XILINX СЕМЕЙСТВ SPARTAN-II, SPARTAN-IIE, VIRTEX, VIRTEX-E
2.1. Основные характеристики микропроцессорного ядра PicoBlaze (семейства Spartan-II, Spartan-IIE, Virtex, Virtex-E)
2.2. Архитектура микропроцессорного ядра PicoBlaze (семейства Spartan-II, Spartan-IIE, Virtex, Virtex-E)
2.3. Структура проекта микропроцессорного ядра PicoBlaze (семейства Spartan-II, Spartan-IIE, Virtex, Virtex-E)
2.4. Общая характеристика системы команд, поддерживаемых микропроцессорным ядром PicoBlaze (семейства Spartan-II, Spartan-IIE, Virtex, Virtex-E)

3. СИСТЕМА КОМАНД МИКРОПРОЦЕССОРНОГО ЯДРА PICOBLAZE, РЕАЛИЗУЕМОГО НА ОСНОВЕ ПЛИС СЕМЕЙСТВ SPARTAN-II, SPARTAN-IIE, VIRTEX, VIRTEX-E
3.1. Команды управления последовательностью выполнения операций в программе
3.2. Группа логических команд
3.3. Группа арифметических команд
3.4. Команды сдвига данных
3.5. Команды ввода/вывода
3.6. Команды обслуживания прерываний
3.7. Различия в системе команд микропроцессорных ядер семейства PicoBlaze

4. ОСОБЕННОСТИ МИКРОПРОЦЕССОРНОГО ЯДРА PICOBLAZE, ПРЕДНАЗНАЧЕННОГО ДЛЯ ПРИМЕНЕНИЯ В ПРОЕКТАХ, РЕАЛИЗУЕМЫХ НА ОСНОВЕ ПЛИС СЕМЕЙСТВА VIRTEX-II
4.1. Основные характеристики микропроцессорного ядра PicoBlaze (семейство Virtex-II)
4.2. Архитектура микропроцессорного ядра PicoBlaze (семейство Virtex-II)
4.3. Структура проекта микропроцессорного ядра PicoBlaze (семейство Virtex-II)
4.4. Система команд микропроцессорного ядра PicoBlaze (семейство Virtex-II)
4.5. Команды управления последовательностью выполнения операций в программе для ядра PicoBlaze, реализуемого на базе кристаллов семейства Virtex-II
4.6. Группа логических команд микропроцессорного ядра PicoBlaze (семейство Virtex-II)
4.7. Группа арифметических команд микропроцессорного ядра PicoBlaze (семейство Virtex-II)
4.8. Команды сдвига данных для микропроцессорного ядра PicoBlaze, реализуемого на основе кристаллов семейства Virtex-II
4.9. Команды ввода/вывода микропроцессорного ядра PicoBlaze (семейство Virtex-II)
4.10. Команды обслуживания прерываний микропроцессорного ядра PicoBlaze (семейство Virtex-II)

5. ОСОБЕННОСТИ МИКРОПРОЦЕССОРНОГО ЯДРА PICOBLAZE, ПРЕДНАЗНАЧЕННОГО ДЛЯ ПРИМЕНЕНИЯ В ПРОЕКТАХ, РЕАЛИЗУЕМЫХ НА ОСНОВЕ ПЛИС СЕМЕЙСТВА COOLRUNNER-II
5.1. Основные характеристики микропроцессорного ядра PicoBlaze (семейство CoolRunner-II)
5.2. Архитектура микропроцессорного ядра PicoBlaze (семейство CoolRunner-II)
5.3. Структура проекта микропроцессорного ядра PicoBlaze (семейство CoolRunner-II)
5.4. Система команд микропроцессорного ядра PicoBlaze (семейство CoolRunner-II)
5.5. Команды управления последовательностью выполнения операций в программе для ядра PicoBlaze, реализуемого на базе кристаллов семейства CoolRunner-II
5.6. Группа логических команд микропроцессорного ядра PicoBlaze, предназначенного для использования в кристаллах семейства CoolRunner-II
5.7. Группа арифметических команд микропроцессорного ядра PicoBlaze, предназначенного для применения в кристаллах семейства CoolRunner-II
5.8. Команды сдвига данных для микропроцессорного ядра PicoBlaze, предназначенного для использования в кристаллах семейства CoolRunner-II
5.9. Команды ввода/вывода микропроцессорного ядра PicoBlaze, предназначенного для применения в кристаллах семейства CoolRunner-II
5.10. Команды обслуживания прерываний микропроцессорного ядра PicoBlaze, реализуемого на основе кристаллов семейства CoolRunner-II

6. ОСОБЕННОСТИ МИКРОПРОЦЕССОРНОГО ЯДРА PICOBLAZE, ПРЕДНАЗНАЧЕННОГО ДЛЯ ПРИМЕНЕНИЯ В ПРОЕКТАХ, РЕАЛИЗУЕМЫХ НА ОСНОВЕ ПЛИС СЕМЕЙСТВ SPARTAN-3, VIRTEX-II, VIRTEX-IIPRO И VIRTEX-4
6.1. Основные характеристики микропроцессорного ядра PicoBlaze (семейства Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4)
6.2. Архитектура микропроцессорного ядра PicoBlaze (семейства Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4)
6.3. Структура проекта микропроцессорного ядра PicoBlaze (семейства Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4)
6.4. Общая характеристика системы команд микропроцессорного ядра PicoBlaze (семейства Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4)
6.5. Команды управления последовательностью выполнения операций в программе для ядра PicoBlaze, реализуемого на базе кристаллов семейств Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4
6.6. Группа логических команд микропроцессорного ядра PicoBlaze, предназначенного для использования в кристаллах семейств Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4
6.7. Группа арифметических команд микропроцессорного ядра PicoBlaze, предназначенного для использования в кристаллах семейств Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4
6.8. Команды сдвига данных для микропроцессорного ядра PicoBlaze, реализуемого в кристаллах семейств Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4
6.9. Команды ввода/вывода микропроцессорного ядра PicoBlaze, предназначенного для использования в кристаллах семейств Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4
6.10. Команды обслуживания прерываний микропроцессорного ядра PicoBlaze, предназначенного для использования в кристаллах семейств Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4
6.11. Команды чтения и записи данных в сверхоперативное запоминающее устройство микропроцессорного ядра PicoBlaze, предназначенного для использования в кристаллах семейств Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4
6.12. Загрузчик программ для микропроцессорного ядра PicoBlaze (семейства Spartan-3, Virtex-II, Virtex-IIPRO и Virtex-4)

7. РАЗРАБОТКА ПРОГРАММ НА ЯЗЫКЕ АССЕМБЛЕРА ДЛЯ МИКРОПРОЦЕССОРНЫХ ЯДЕР СЕМЕЙСТВА PICOBLAZE
7.1. Подготовка исходного текста программы (семейство PicoBlaze)
7.2. Директивы ассемблера (семейство PicoBlaze)
7.3. Трансляция программ, написанных на языке ассемблера (семейство PicoBlaze)
7.4. Файлы, формируемые ассемблером (семейство PicoBlaze)
7.5. Типовые ошибки при написании программ на языке ассемблера

8. ПРОЕКТИРОВАНИЕ ВСТРАИВАЕМЫХ СИСТЕМ НА ОСНОВЕ МИКРОПРОЦЕССОРНЫХ ЯДЕР СЕМЕЙСТВА PICOBLAZE
8.1. Этапы проектирования встраиваемых систем на основе микропроцессорных ядер семейства PicoBlaze
8.2. Структура проекта встраиваемой микропроцессорной системы на основе ядра семейства PicoBlaze в САПР серии Xilinx ISE
8.3. Создание нового проекта встраиваемой микропроцессорной системы на основе ядра семейства PicoBlaze в САПР серии Xilinx ISE
8.4. Выполнение основных этапов проектирования встраиваемых систем на основе микропроцессорных ядер семейства PicoBlaze в САПР серии Xilinx ISE
8.5. Загрузка конфигурационной последовательности разработанной микропроцессорной системы в ПЛИС
8.6. Генерация файлов программирования ПЗУ/ППЗУ с помощью модуля iMPACT
8.7. Программирование ППЗУ серий XC18V00 и Platform Flash помощью модуля iMPACT
8.8. Проектирование контроллера на основе микропроцессорного ядра PicoBlaze, предназначенного для реализации в ПЛИС семейства Spartan-3

9. MICROBLAZE-СЕМЕЙСТВО 32-РАЗРЯДНЫХ МИКРОПРОЦЕССОРНЫХ ЯДЕР, ПРЕДНАЗНАЧЕННЫХ ДЛЯ ПРОЕКТИРОВАНИЯ ВСТРАИВАЕМЫХ СИСТЕМ НА ОСНОВЕ ПЛИС СЕРИЙ FPGA ФИРМЫ XILINX
9.1. Основные характеристики микропроцессорных ядер семейства MicroBlaze
9.2. Архитектура микропроцессорных ядер семейства MicroBlaze
9.3. Структура регистров статуса MSR и FSR микропроцессорных ядер семейства MicroBlaze
9.4. Шинные интерфейсы микропроцессорных ядер семейства MicroBlaze
9.5. Периферийные компоненты для проектирования встраиваемых систем на основе микропроцессорных ядер семейства MicroBlaze
9.6. Ограничения адресного пространства, производительности и объема памяти для микропроцессорных ядер семейства MicroBlaze
9.7. Распределение адресного пространства памяти микропроцессорных ядер семейства MicroBlaze
9.8. Размещение исполняемого кода программ в памяти микропроцессорных ядер семейства MicroBlaze
9.9. Организация хранения данных в памяти и регистрах общего назначения микропроцессорных ядер семейства MicroBlaze

10. СИСТЕМА КОМАНД МИКРОПРОЦЕССОРНЫХ ЯДЕР СЕМЕЙСТВА MICROBLAZE
10.1. Общая характеристика команд, поддерживаемых микропроцессорными ядрами семейства MicroBlaze
10.2. Форматы команд, поддерживаемых микропроцессорными ядрами семейства MicroBlaze
10. 3. Группа арифметических команд
10. 4. Группа логических команд
10. 5. Команды сдвига данных
10. 6. Команды преобразования типов данных
10. 7. Команды передачи данных
10. 8. Команды управления последовательностью выполнения операций в программе
10. 9. Группа инструкций ввода/вывода
10.10. Группа специальных команд
10.11. Инструкции записи в кеш-память
10.12. Инструкции поразрядного сравнения двух операндов
10.13. Группа команд, предназначенных для выполнения операций с плавающей запятой

11. EMBEDDED DEVELOPMENT KIT – СИСТЕМА ПРОЕКТИРОВАНИЯ ВСТРАИВАЕМЫХ 32-РАЗРЯДНЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА ОСНОВЕ ПЛИС СЕРИЙ FPGA ФИРМЫ XILINX
11.1. Основные характеристики пакета Xilinx Embedded Development Kit
11.2. Структура средств разработки встраиваемых микропроцессорных систем Embedded System Tools
11.3. Краткая характеристика и пользовательский интерфейс управляющей оболочки Xilinx Platform Studio
11.4. Этапы проектирования микропроцессорных систем на основе ПЛИС семейств FPGA фирмы Xilinx с применением ядер семейства MicroBlaze
11.5. Структура проекта в САПР встраиваемых микропроцессорных систем Xilinx Embedded System Tools

12. ПРОЕКТИРОВАНИЕ ВСТРАИВАЕМЫХ 32-РАЗРЯДНЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА ОСНОВЕ ЯДЕР СЕМЕЙСТВА MICROBLAZE
12.1. Создание нового проекта встраиваемой микропроцессорной системы в среде управляющей оболочки Xilinx Platform Studio
12.2. Синтаксис файла спецификации аппаратной платформы разрабатываемой микропроцессорной системы, реализуемой на базе ПЛИС семейств FPGA фирмы Xilinx
12.3. Создание спецификации аппаратной платформы разрабатываемой микропроцессорной системы в среде управляющей оболочки Xilinx Platform Studio
12. 4. Подготовка файла временных и топологических ограничений проекта аппаратной платформы разрабатываемой микропроцессорной системы
12.5. Формирование списка соединений аппаратной платформы разрабатываемой микропроцессорной системы
12.6. Реализация проекта аппаратной части разрабатываемой микропроцессорной системы в кристалле FPGA
12. 7. Генерация конфигурационной последовательности для проекта аппаратной части разрабатываемой 32-разрядной микропроцессорной системы
12.8. Синтаксис и структура файла спецификации программной платформы разрабатываемой 32-разрядной микропроцессорной системы, реализуемой на базе ПЛИС семейств FPGA фирмы Xilinx
12.9. Создание спецификации программных средств разрабатываемой 32-разрядной микропроцессорной системы в среде управляющей оболочки Xilinx Platform Studio
12.10. Генерация программной платформы разрабатываемой 32-разрядной микропроцессорной системы, реализуемой на основе ПЛИС семейств FPGA фирмы Xilinx
12.11. Создание проекта прикладной программы для разрабатываемой 32-разрядной микропроцессорной системы в среде управляющей оболочки Xilinx Platform Studio
12.12. Формирование исходных модулей прикладной программы для разрабатываемой 32-разрядной микропроцессорной системы
12.13. Создание файла директив для компоновщика (linker script)
12.14. Компиляция и компоновка прикладной программы для разрабатываемой 32-разрядной микропроцессорной системы
12.15. Запись исполняемого кода прикладной программы в конфигурационную последовательность проекта аппаратной части микропроцессорной системы, и загрузка конфигурационных данных в кристалл FPGA

13. РАЗРАБОТКА ВСТРАИВАЕМЫХ 32-РАЗРЯДНЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА ОСНОВЕ ЯДЕР СЕМЕЙСТВА MICROBLAZE С ПОМОЩЬЮ МАСТЕРА BASE SYSTEM BUILDER WIZARD
13.1. Выбор способа создания проекта разрабатываемой микропроцессорной системы в САПР Xilinx EST
13.2. Формирование исходных файлов описания разрабатываемой 32-разрядной микропроцессорной системы с помощью мастера Base System Builder Wizard
13.3. Формирование конфигурационной последовательности для проекта аппаратной части разрабатываемой 32-разрядной микропроцессорной системы
13.4. Создание программного обеспечения для разрабатываемой 32-разрядной микропроцессорной системы
13.5. Включение исполняемого кода прикладной программы в конфигурационную последовательность проекта аппаратной части микропроцессорной системы и загрузка конфигурационных данных в кристалл FPGA

14. АППАРАТНЫЕ СРЕДСТВА РАЗРАБОТКИ ВСТРАИВАЕМЫХ МИКРОПРОЦЕССОРНЫХ СИСТЕМ НА СНОВЕ ПЛИС ФИРМЫ XILINX
14.1. Инструментальный комплект CoolRunner-II Design Kit
14.1.1. Назначение и основные характеристики инструментального комплекта CoolRunner-II Design Kit
14.1.2. Структура инструментального модуля Digilab XC2 (Digilab XC2-XL)
14.1.3. Организация питания инструментального модуля Digilab XC2 (Digilab XC2-XL)
14.1.4. Формирование цепочки периферийного сканирования ПЛИС в составе инструментального модуля Digilab XC2 (Digilab XC2-XL)
14.1.5. Работа с инструментальным модулем Digilab XC2 (Digilab XC2-XL)
14.1.6. Краткая характеристика ПЛИС семейства CoolRunner-II, используемых в инструментальном модуле Digilab XC2 (Digilab XC2-XL)
14.2. Инструментальный комплект Spartan-3 Starter Kit
14.2.1. Назначение и основные характеристики инструментального комплекта Spartan-3 Starter Kit
14.2.2. Структура инструментального модуля Spartan-3 Starter Board
14.2.3. Краткая характеристика ПЛИС XC3S200, используемой в инструментальном модуле Spartan-3 Starter Board
14.2.4. Описание структуры тестового проекта
14.2.5. Использование инструментального модуля Spartan-3 Starter Board

Приложение 1. VHDL-ОПИСАНИЕ ИСПОЛНИТЕЛЬНОГО МОДУЛЯ МИКРОПРОЦЕССОРНОГО ЯДРА PICOBLAZE, РЕАЛИЗУЕМОГО НА ОСНОВЕ ПЛИС СЕМЕЙСТВ SPARTAN-II, SPARTAN-IIE, VIRTEX, VIRTEX-E

Приложение 2. VHDL-ОПИСАНИЕ МИКРОПРОЦЕССОРНОГО ЯДРА PICOBLAZE, ПРЕДНАЗНАЧЕННОГО ДЛЯ ИСПОЛЬЗОВАНИЯ В ПРОЕКТАХ, ВЫПОЛНЯЕМЫХ НА ОСНОВЕ ПЛИС СЕМЕЙСТВА COOLRUNNER-II

Приложение 3. VHDL-ОПИСАНИЕ ИСПОЛНИТЕЛЬНОГО МОДУЛЯ МИКРОПРОЦЕССОРНОГО ЯДРА PICOBLAZE, РЕАЛИЗУЕМОГО НА ОСНОВЕ ПЛИС СЕМЕЙСТВ SPARTAN-3, VIRTEX-II, VIRTEX-IIPRO, VIRTEX-4

ЛИТЕРАТУРА