Ниос II - Nios II

Ниос II
ДизайнерАльтера
Биты32-битный
дизайнRISC
Порядок байтовLittle-Endian
ОткрытоНет
Регистры
Общее назначение32

Ниос II 32-битная архитектура встроенного процессора, разработанная специально для Альтера семья программируемая вентильная матрица (FPGA) интегральные схемы. Nios II включает в себя множество улучшений по сравнению с исходной архитектурой Nios, что делает его более подходящим для более широкого спектра встраиваемых вычислительных приложений, начиная с цифровая обработка сигналов (DSP) для управления системой.

Nios II является преемником первого настраиваемого 16-разрядного встроенного процессора Altera. Nios.

Ключевая особенность

Как и оригинальный Nios, архитектура Nios II представляет собой RISC мягкое ядро архитектура, которая полностью реализована в программируемой логике и блоках памяти ПЛИС Altera. Программный характер процессора Nios II позволяет разработчику системы определять и генерировать собственное ядро ​​Nios II, адаптированное к его или ее конкретным требованиям приложения. Системные дизайнеры могут расширить базовую функциональность Nios II, добавив предопределенный блок управления памятью или определив собственные инструкции и настраиваемые периферийные устройства.

Пользовательские инструкции

Подобно собственным инструкциям Nios II, определяемые пользователем инструкции принимают значения от двух до двух 32-немного исходные регистры и, возможно, записать результат обратно в 32-битный регистр назначения. Используя настраиваемые инструкции, разработчики системы могут точно настроить оборудование системы для достижения целей производительности, а также разработчик может легко обработать инструкцию как макрос в C.

Настраиваемые периферийные устройства

Для критичных к производительности систем, которые тратят большую часть циклов ЦП на выполнение определенного раздела кода, определяемое пользователем периферийное устройство потенциально может выгружать часть или все выполнение программного алгоритма на определяемый пользователем аппаратная логика, повышая энергоэффективность или производительность приложений.

Блок управления памятью

Представлено с Quartus 8.0, дополнительный MMU позволяет Nios II запускать операционные системы, требующие аппаратного пейджинга и защиты, такие как ядро ​​Linux. Без MMU Nios ограничен операционными системами, которые используют упрощенную защиту и модель виртуальной памяти: например, µClinux и FreeRTOS.

Блок защиты памяти

Представленный в Quartus 8.0 дополнительный MPU обеспечивает защиту памяти, аналогичную той, что предоставляется MMU, но с более простой моделью программирования и без накладных расходов на производительность, связанных с MMU.

Семейство процессоров Nios II

Nios II classic предлагается в 3 различных конфигурациях: Nios II / f (быстрый), Nios II / s (стандартный) и Nios II / e (экономичный). Nios II gen2 предлагается в двух различных конфигурациях: Nios II / f ( быстро) и Nios II / e (экономичный).

Nios II / f

Ядро Nios II / f предназначено для максимальной производительности за счет размера ядра. Особенности Nios II / f включают:

  • Отдельные кеши инструкций и данных (512 B до 64 кБ )
  • Необязательный MMU или MPU
  • Доступ до 2 ГБ внешнего адресного пространства
  • Дополнительная тесно связанная память для инструкций и данных
  • Шестиступенчатый конвейер для достижения максимальной DMIPS / МГц
  • Одноцикловый аппаратный множитель и баррель-шифтер
  • Дополнительный вариант аппаратного разделения
  • Динамический предсказание ветвления
  • До 256 пользовательских инструкций и неограниченное количество аппаратных ускорителей
  • JTAG модуль отладки
  • Дополнительные усовершенствования модуля отладки JTAG, включая аппаратные точки останова, триггеры данных и трассировку в реальном времени

Nios II / s

Ядро Nios II / s предназначено для поддержания баланса между производительностью и стоимостью. Особенности Nios II / s включают:

  • Кэш инструкций
  • До 2 ГБ внешнего адресного пространства
  • Дополнительная плотно связанная память для инструкций
  • Пятиступенчатый трубопровод
  • Статическое предсказание ветвления
  • Параметры аппаратного умножения, деления и сдвига
  • До 256 пользовательских инструкций
  • JTAG модуль отладки
  • Дополнительные усовершенствования модуля отладки JTAG, включая аппаратные точки останова, триггеры данных и трассировку в реальном времени

Nios II / e

Ядро Nios II / e предназначено для минимально возможного использования логики ПЛИС. Это особенно эффективно для недорогих приложений Cyclone II FPGA. Особенности Nios II / e:

  • До 2 ГБ внешнего адресного пространства
  • JTAG модуль отладки
  • Полные системы менее чем за 700 LE
  • Дополнительные улучшения отладки
  • До 256 пользовательских инструкций
  • Бесплатно, лицензия не требуется

Интерфейс коммутационной фабрики Avalon

Ниос II использует Авалон коммутационная ткань как интерфейс для встроенных периферийных устройств. По сравнению с традиционной шиной в системе на основе процессора, которая позволяет только одному мастеру шины получать доступ к шине одновременно, коммутационная матрица Avalon, использующая схему арбитража на стороне ведомого, позволяет нескольким мастерам работать одновременно.

Процессы разработки

Разработка Nios II состоит из двух отдельных этапов: создание оборудования и создание программного обеспечения.

Разработка размещается в приложении Altera под названием Embedded Design Suite (EDS). EDS содержит полную интегрированную среду разработки для управления как аппаратным, так и программным обеспечением в два отдельных этапа:

Процесс создания оборудования

Разработчики оборудования Nios II используют инструмент системной интеграции Qsys, компонент пакета Quartus-II, для настройки и создания системы Nios. Конфигурация графический интерфейс пользователя (GUI) позволяет пользователям выбирать набор функций Nios-II и добавлять периферийные устройства и блоки ввода-вывода (таймеры, контроллеры памяти, последовательный интерфейс и т. Д.) Во встроенную систему. Когда спецификация оборудования завершена, Quartus-II выполняет синтез, размещение и маршрут для реализации всей системы на выбранной цели FPGA.
Qsys заменяет более старый конструктор SOPC (System-on-a-Programmable-Chip), который также можно использовать для построения системы Nios II, и рекомендуется для новых проектов.[1]

Процесс создания программного обеспечения

Отдельный пакет, называемый Embedded Design Suite (EDS), управляет разработкой программного обеспечения. На основе Затмение IDE, EDS включает компилятор C / C ++ (на основе Набор инструментов GNU ), отладчик и симулятор набора инструкций. EDS позволяет программистам тестировать свои приложения в моделировании или загружать и запускать скомпилированные приложения на реальном хосте FPGA.

Поскольку цепочка разработки C / C ++ основана на GCC, подавляющее большинство Открытый исходный код программное обеспечение для Linux компилируется и запускается с минимальными изменениями или без них. Сторонние операционные системы также были перенесены на Nios II. К ним относятся Micrium MicroC / OS-II, eCos, Микроконтроллер Segger embOS, ChibiOS / RT, μCLinux и FreeRTOS.

Лицензирование

Nios II сопоставим с MicroBlaze, конкурирующий softcore CPU для Xilinx семейство FPGA. В отличие от MicroBlaze, Nios II можно лицензировать для стандартных ячеек. ASIC через стороннего IP-провайдера, Synopsys Дизайнерское ПО. Благодаря лицензии Designware дизайнеры могут переносить проекты на базе Nios с платформы FPGA на массовое производство ASIC-устройств.

Смотрите также

использованная литература

  1. ^ «5 причин перейти с SOPC Builder на Qsys». Альтера. Получено 16 марта 2012.

внешние ссылки