Nios II

редактировать
Nios II
DesignerAltera
Bits32-бит
Дизайн RISC
Endianness Little-Endian
ОткрытыеNo
регистры
Общее назначение 32

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

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

Содержание

  • 1 Ключевые особенности
    • 1.1 Пользовательские инструкции
    • 1.2 Пользовательские периферийные устройства
    • 1.3 Блок управления памятью
    • 1.4 Блок защиты памяти
  • 2 Семейство ЦП Nios II
    • 2.1 Nios II / f
    • 2.2 Nios II / s
    • 2.3 Nios II / e
  • 3 Интерфейс коммутационной матрицы Avalon
  • 4 Процессы разработки
    • 4.1 Процесс создания оборудования
    • 4.2 Процесс создания программного обеспечения
    • 4.3 Лицензирование
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки

Ключевые особенности

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

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

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

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

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

Модуль управления памятью

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

Memory Protection Unit

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

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

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

Nios II / f

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

  • Отдельные кеши инструкций и данных (от 512 B до 64 kB )
  • Необязательно 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

Nios II использует коммутационную матрицу Avalon в качестве интерфейс со встроенными периферийными устройствами. По сравнению с традиционной шиной в системе на основе процессора, которая позволяет только одному мастеру шины получать доступ к шине одновременно, коммутационная матрица 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 и рекомендуется для новых проектов.

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

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

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

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

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

См. Также

Ссылки

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

Последняя правка сделана 2021-05-31 10:24:51
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте