
- •«Иус на основе плис» Лабораторная работа №3 «Оптимизация вычислений, Soft-процессоры, многоядерные архитектуры»
- •1. Общие сведения
- •2. Обзор Soft-процессора Microblaze
- •3. Работа с проектом xps
- •4. Импорт проекта в Xilinx sdk для разработки программного обеспечения soft-процессора Microblaze.
- •5. Разработка программы для управления Soft-процессором Microblaze
«Иус на основе плис» Лабораторная работа №3 «Оптимизация вычислений, Soft-процессоры, многоядерные архитектуры»
Цель работы:
Ознакомиться с процессом разработки проекта, включающего в свой состав Soft-процессор на примере MicroBlaze.
Продолжительность:
4 академических часа
Оборудование, приборы, инструменты, программное обеспечение:
ПК с установленной операционной средой семейства Windows версии не ниже Windows XP
Xilinx Design Suit 14.2
Краткие теоретические сведения
1. Общие сведения
При проектировании цифрового устройства на основе ПЛИС следует иметь ввиду, что реализация сложных алгоритмов на основе крупных конечных автоматов со сложной логикой переходов может приводить к неоправданному усложнению и увеличению объема ресурсов, необходимых для работы проекта. Даже реализация относительно простого протокола обмена информацией может потребовать использования значительного количества ресурсов, не говоря уже о неоправданно высокой сложности реализации и отладки.
Нередко также возникает потребность в “центральном” модуле, который будет отвечать за управление остальными модулями и обеспечивать их взаимодействие между собой.
В таких случаях использование Soft-процессора может оказаться выгодным решением, как с точки зрения потребляемых ресурсов, так и с точки зрения сокращения времени разработки и отладки проекта.
Использование Soft-процессора при решении определенного круга задач, имеет столь существенные преимущества, что были созданы серии ПЛИС, содержащие процессорную логику, выполненную непосредственно на кристалле (т.е. включающие в свой состав аппаратный процессор).
Используя Soft-процессоры можно проектировать достаточно сложные системы на основе ПЛИС, где относительно небольшая производительность такого процессора будет компенсироваться наличием пользовательских модулей, реализованных на гибкой логике и позволяющих выполнять специфичные для системы операции существенно быстрее, чем их выполнял бы универсальный процессор.
2. Обзор Soft-процессора Microblaze
Soft-процессор Microblaze специально разработан фирмой Xilinx для использования в ПЛИС производства этой фирмы. Он спроектирован таким образом чтобы максимально полно использовать доступные ресурсы ПЛИС.
Microblaze использует гарвардскую архитектуру с разделенными шинами данных и команд. В Microblaze не разделены обращения к вводу/выводу и обращения к памяти. Таким образом, Microblaze использует отображение ввода/вывода в память (memory mapped I/O).
Для доступа к памяти Microblaze может использовать три интерфейса:
Local Memory Bus (LMB)
On-Chip Peripheral Bus (OPB)
AXI4
Также Microblaze поддерживает интерфейс Fast Simplex Link, который дает возможность подключать к процессору разработанные пользователем аппаратные ускорители (со-процессоры).
Последний получает все большее распространение, вплоть до поддержки в IP ядрах, предоставляемых фирмой Xilinx.
Microblaze является 32-битным процессором с двумя типами комманд:
Тип А – 32-битная команда с максимум двумя операндами (адреса регистров-источников) и одним адресом назначения (адрес регистра-приемника).
Тип Б – 32-битная команда с одним операндом (адресом регистра-источника), 16-битным операндом (значение) и одним адресом назначения (адрес регистра-приемника).
Microblaze использует формат представления двоичных чисел Big-Endian и поддерживает доступ к памяти по словам (32 бит), полусловам (16 бит) и байтам (8 бит).
Необходимо отметить, что Microblaze в отличие от процессоров, реализованных аппаратно, может быть гибко настроен. В частности при необходимости могут быть добавлены такие модули как FPU, Контроллер прерываний, MMU и многие другие модули.