И. В. ОЛЬХОВСКАЯ
Московский инженерно-физический институт (государственный университет)
ПРИМЕНЕНИЕ ВЫСОКОПРОИЗВОДИТЕЛЬНЫХ
ПРОЦЕССОРНЫХ ЯДЕР NIOS ДЛЯ АСНИ
Рассматривается возможность реализации систем управления и сбора данных на платформе программируемой логики (ПЛИС) с процессорным ядром Nios на базе технологии “система на кристалле”.
Активное применение процессорных ядер позволяет создавать мощные вычислительные системы и существенно сокращать сроки проектирования электронных устройств. В качестве аппаратной платформы в разрабатываемых устройствах можно использовать ПЛИС фирмы ALTERA семейства Cyclone или APEX.
Nios – это встраиваемый процессор общего назначения, с перестраиваемой конфигурацией, который легко вписывается в устройства Altera, оставляя большинство логики, доступной для размещения там периферийных устройств и пользовательских функций. Встраиваемое ядро процессора Nios — конвейерный RISC-процессор, Архитектура которого оптимизирована под SoPC -решения на базе ПЛИС. В основе идеи SoPC,«Системы на кристалле», лежит интеграция всей электронной системы в одном кристалле. Компоненты этих систем разрабатываются отдельно и хранятся в виде файлов параметризируемых модулей.
Средства конфигурации позволяют оптимальным образом выбрать характеристики встраиваемого процессора именно для данного приложения. Широкие пределы оптимизации способствуют использованию Nios в приложениях различной степени сложности: от высокопроизводительных встраиваемых приложений до создания мультипроцессорных систем. В табл. 1 даны краткие характеристики процессора с 16- и 32-бит архитектурами. Число используемых логических элементов кристалла ПЛИС зависит от структуры выбранного процессора - это может быть 16- или 32-бит приложение. Но и в пределах одной структуры это число может существенно изменяться. Так, к примеру, при прошивке 32-разрядного процессора в ПЛИС EP20K200E в кристалле остаётся порядка 80% свободного пространства.
Процессор имеет конвейерную архитектуру, позволяющую выполнять одну 16-бит инструкцию за один такт. Система команд Nios приспособлена к служебным программам, составленным на языках высокого уровня C и C++. Она включает стандартный набор арифметических и логических операций, команды поддерживают поразрядные и побайтовые операции.
Таблица 1. Архитектура процессора Nios
Блоки CPU | 32-бит Nios CPU | 16-бит Nios CPU |
Разрядность шины данных | 32 | 16 |
Разрядность ALU (бит) | 32 | 16 |
Разрядность внутренних регистров | 32 | 16 |
Разрядность шины адреса | 33 | 17 |
Разрядность инструкций | 16 | 16 |
Максимальное число внутренних регистров процессора | 512 | 512 |
Число используемых вентилей кристалла | 1 700 | 1 100 |
Максимальная частота в кристалле EP20K200E | До 50 МГц | До 50 МГц |
Процессор поддерживает широкий набор периферийных устройств. Сюда входят таймер/счётчик, последовательный порт, порты ввода/вывода различного назначения, IDE-контроллер, 10/100 Ethernet MAC и SDRAM - контроллер. В Nios предусмотрена поддержка внешней и встроенной памяти, 5-ступенчатая конвейерная архитектура позволяет выполнять одну инструкцию за один цикл процессора. Наряду с построением систем с одним процессором, программно/аппаратная гибкость Nios позволяет использовать его как основу для модульного наращивания системы в рамках одной унифицированной архитектуры.
Все вышеописанные приложения показывают возможность построения на базе ПЛИС мощных микропроцессорных систем в рамках современной концепции «Системы на кристалле». Используя современную элементную базу, пользователь получает микропроцессорную систему, работающую на частотах порядка 100 МГц, полностью приспособленную для его нужд, обеспечивающую легкость интеграции с жесткой логикой, а так же существенно экономящую как временные, так и финансовые затраты на разработку.
Список литературы
1. Nios Embedded Processor Development Board. Altera Corporation. Data Sheet. March 2001.
2. Nios 3.0 CPU datashet. Altera Corporation, 2003.


