MicroBlaze

редактировать
MicroBlaze
DesignerXilinx
Биты32-битные / 64 -бит (32 → 64)
Версия11.0
Дизайн RISC
Кодирование Фиксированное
Порядок байтов Маленький (Большой)
ОткрытьNo
регистры
32 × 32 бита

MicroBlaze - это ядро ​​программного микропроцессора, разработанное для Xilinx , программируемое на месте вентильные матрицы (ПЛИС). Как процессор с программным ядром, MicroBlaze полностью реализован в памяти общего назначения и в логической матрице ПЛИС Xilinx.

Содержание
  • 1 Обзор
  • 2 Vivado
  • 3 Открытый исходный код
  • 4 Клоны
  • 5 Другие программные процессоры
  • 6 См. Также
  • 7 Ссылки
  • 8 Внешние ссылки
Обзор

С точки зрения архитектуры набора команд MicroBlaze аналогичен архитектуре на основе RISC DLX, описанной в популярной книге по компьютерной архитектуре Паттерсон и Хеннесси. За некоторыми исключениями MicroBlaze может выдавать новую инструкцию в каждом цикле, поддерживая пропускную способность одного цикла в большинстве случаев.

MicroBlaze имеет универсальную систему межсоединений для поддержки множества встроенных приложений. Основная шина ввода-вывода MicroBlaze, межсоединение AXI, представляет собой отображаемую в системную память шину транзакций с возможностью ведущего-ведомого. В более старых версиях MicroBlaze использовалась шина CoreConnect PLB. Большинство поставщиков и сторонних IP-интерфейсов к AXI напрямую (или через межсоединение AXI). Для доступа к локальной памяти (FPGA RAM ) MicroBlaze использует выделенную шину LMB, которая обеспечивает быстрое хранение на кристалле. Определяемые пользователем сопроцессоры поддерживаются через выделенные соединения AXI4-Stream. Интерфейс сопроцессора (ов) может ускорить выполнение алгоритмов, требующих большого объема вычислений, за счет выгрузки частей или всего вычисления в аппаратный модуль, разработанный пользователем.

Многие аспекты MicroBlaze могут быть настроены пользователем: размер кэша, глубина конвейера (3-ступенчатая, 5-ступенчатая или 8-ступенчатая), встроенные периферийные устройства, блок управления памятью и шинные интерфейсы можно настраивать. Версия MicroBlaze с оптимизацией по площади, в которой используется трехступенчатый конвейер, жертвует тактовой частотой ради уменьшения области логики. Версия с оптимизацией производительности расширяет конвейер выполнения до 5 этапов, обеспечивая максимальную скорость более 700 МГц (в семействе Virtex UltraScale + FPGA ). Кроме того, ключевые инструкции процессора, которые используются редко, но более дорогие для аппаратной реализации, могут быть выборочно добавлены / удалены (например, операции умножения, деления и с плавающей запятой). Эта настройка позволяет разработчику делать соответствующие компромиссы при проектировании для конкретного набора требований к оборудованию хоста и прикладному программному обеспечению.

Благодаря блоку управления памятью MicroBlaze может размещать операционные системы, требующие аппаратной подкачки страниц и защиты, такие как ядро ​​Linux. В противном случае он ограничен операционными системами с упрощенной защитой и моделью виртуальной памяти, например FreeRTOS или Linux без поддержки MMU. Общая пропускная способность MicroBlaze существенно меньше, чем у сопоставимого ядра жесткого процессора (например, ARM Cortex-A9 в Zynq ).

Vivado

Xilinx Vivado Design Suite - это среда разработки для создания текущих встроенных процессорных систем MicroBlaze (или ARM - см. Zynq) в ПЛИС Xilinx. В более старых версиях использовался пакет разработки Xilinx EDK (Embedded Development Kit).

Разработчики используют Vivado IP Integrator для настройки и создания технических характеристик оборудования своей встроенной системы (ядро процессора, контроллер памяти, периферийные устройства ввода / вывода и т. Д.). IP Integrator преобразует блочную конструкцию разработчика в синтезируемую RTL описание (Verilog или VHDL ) и автоматизирует реализацию встроенной системы (от RTL до битового файла). Для ядра MicroBlaze, Vivado генерирует зашифрованный (не читаемый человеком) список соединений.

SDK обрабатывает программное обеспечение, которое будет выполняться во встроенной системе. На основе набора инструментов GNU (GNU Compiler Collection, GNU Debugger ), SDK позволяет программистам писать, компилировать и отлаживать приложения C / C ++ для своих встроенных система. Инструменты Xilinx предоставляют возможность запускать программное обеспечение в режиме моделирования или использовать подходящую плату FPGA для загрузки и выполнения в реальной системе.

Покупателям Vivado предоставляется бессрочная лицензия на использование MicroBlaze в ПЛИС Xilinx без периодических лицензионных отчислений. Лицензия не дает права использовать MicroBlaze вне устройств Xilinx.

Альтернативные компиляторы и инструменты разработки доступны на Altium, но по-прежнему требуется установка EDK и лицензия.

Открытый исходный код

В июне 2009 года MicroBlaze стала первой архитектурой с мягким центральным процессором, интегрированной в основное дерево исходных текстов ядра Linux. Эта работа была выполнена Михалом Симеком при поддержке PetaLogix и Xilinx.

С сентября 2009 года поддержка инструментов GNU MicroBlaze также была внесена в основные репозитории Free Software Foundation. Поддержка MicroBlaze включена в выпуски GCC, начиная с версии 4.6

Поддержка была добавлена ​​в LLVM в апреле 2010 года, но впоследствии удалена в июле 2013 года из-за отсутствия сопровождающего.

Клоны
  • aeMB, реализованные в Verilog, лицензия LGPL
  • подмножество OpenFire, реализованные в Verilog, лицензия MIT
  • MB-Lite, реализованные в VHDL, лицензия LGPL
  • MB-Lite +, реализовано в VHDL, лицензия LGPL
  • myBlaze, реализована в MyHDL, лицензия LGPL
  • SecretBlaze, реализована в VHDL, Лицензия GPL
Другие программные процессоры
См. Также
Ссылки
  1. ^"GCC 4.6 Release Series Changes, New Features, and Fixes «. 2011-03-15. Проверено 15 марта 2011. Добавлена ​​поддержка встроенного целевого процессора Xilinx MicroBlaze softcore (microblaze-elf).
  2. ^«Примечания к выпуску LLVM 2.7». releases.llvm.org. Проверено 7 апреля 2019 г.
  3. ^Кристофер, Эрик (24 июля 2013 г.). «[LLVMdev] Прекращение поддержки и удаление серверной части MBlaze». Проверено 7 апреля 2019 г.
Внешние ссылки
Последняя правка сделана 2021-05-30 09:57:49
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте