intel MAX 10 FPGA устройства през UART с процесор Nios II
Информация за продукта
Референтният дизайн предоставя просто приложение, което прилага основни функции за отдалечена конфигурация в базирани на Nios II системи за MAX 10 FPGA устройства. UART интерфейсът, включен в комплекта за разработка на MAX 10 FPGA, се използва заедно с Altera UART IP ядрото, за да осигури функционалност за отдалечена конфигурация. Устройствата MAX10 FPGA предоставят възможност за съхраняване на до две конфигурационни изображения, които допълнително подобряват функцията за надграждане на отдалечена система.
Съкращения
Съкращение | Описание |
---|---|
Авалон-ММ | Avalon Memory-Mapped Configuration Flash памет |
CFM | Графичен потребителски интерфейс |
ICB | Конфигурационен бит за инициализация |
КАРТА/.карта | Карта на паметта File |
Nios II EDS | Поддръжка на Nios II Embedded Design Suite |
PFL | IP ядро на Parallel Flash Loader |
POF/.pof | Програмист Обект File |
QSPI | Четворен сериен периферен интерфейс |
RPD/.rpd | Сурови програмни данни |
SBT | Инструменти за изграждане на софтуер |
SOF/.sof | SRAM обект File |
КОЛИЧКА | Универсален асинхронен приемник/предавател |
UFM | Потребителска флаш памет |
Инструкции за употреба на продукта
Предпоставка
Прилагането на този референтен дизайн изисква да имате посоченото ниво на знания или опит в следните области:
Изисквания:
Следват хардуерните и софтуерните изисквания за референтния дизайн:
Референтен дизайн Files
File Име | Описание |
---|---|
Factory_image | В режим на конфигуриране на изображения с двойна конфигурация, CFM1 и CFM2 се комбинират в едно хранилище на CFM. |
приложение_изображение_1 | Хардуерен дизайн на Quartus II file който замества app_image_2 по време на надграждане на отдалечена система. |
приложение_изображение_2 | Кодът на софтуерното приложение Nios II действа като контролер за дизайн на системата за дистанционно надстройване. |
Remote_system_upgrade.c | |
заводско_приложение1.поф | Програмиране на Quartus II file който се състои от фабрично изображение и изображение на приложение 1, за програмиране в CFM0 и CFM1 & CFM2 съответно при началните stage. |
фабрично_приложение1.rpd | |
изображение_приложение_1.rpd | |
изображение_приложение_2.rpd | |
Nios_application.pof |
Референтният дизайн предоставя просто приложение, което прилага основни функции за отдалечена конфигурация в базирани на Nios II системи за MAX 10 FPGA устройства. UART интерфейсът, включен в комплекта за разработка на MAX 10 FPGA, се използва заедно с Altera UART IP ядро, за да осигури функционалност за отдалечена конфигурация.
Референтен дизайн Files
Отдалечено надграждане на системата с MAX 10 FPGA Overview
С функцията за надграждане на отдалечена система подобренията и корекциите на грешки за FPGA устройства могат да се извършват дистанционно. Във вградена системна среда фърмуерът трябва да се актуализира често през различните типове протоколи, като UART, Ethernet и I2C. Когато вградената система включва FPGA, актуализациите на фърмуера могат да включват актуализации на изображението на хардуера на FPGA.
Устройствата MAX10 FPGA предоставят възможност за съхраняване на до две конфигурационни изображения, които допълнително подобряват функцията за надграждане на отдалечена система. Едно от изображенията ще бъде резервното изображение, което се зарежда, ако възникне грешка в текущото изображение.
Съкращения
Таблица 1: Списък на съкращенията
Съкращение Описание | |
Авалон-ММ | Avalon Memory-Mapped |
CFM | Флаш памет за конфигурация |
GUI | Графичен потребителски интерфейс |
ICB | Конфигурационен бит за инициализация |
КАРТА/.карта | Карта на паметта File |
Nios II EDS | Поддръжка на Nios II Embedded Design Suite |
PFL | IP ядро на Parallel Flash Loader |
POF/.pof | Програмист Обект File |
- Корпорация Intel. Всички права запазени. Intel, логото на Intel, думите и логата Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus и Stratix са търговски марки на Intel Corporation или нейните дъщерни дружества в САЩ и/или други страни. Intel гарантира производителността на своите FPGA и полупроводникови продукти според настоящите спецификации в съответствие със стандартната гаранция на Intel, но си запазва правото да прави промени на продукти и услуги по всяко време без предизвестие. Intel не поема никаква отговорност или задължения, произтичащи от приложението или използването на каквато и да е информация, продукт или услуга, описани тук, освен в случаите, когато Intel е изрично договорено в писмен вид. Клиентите на Intel се съветват да получат най-новата версия на спецификациите на устройството, преди да разчитат на публикувана информация и преди да направят поръчки за продукти или услуги.
- Други имена и марки могат да бъдат заявени като собственост на други.
Предпоставка
Съкращение
QSPI |
Описание
Четворен сериен периферен интерфейс |
RPD/.rpd | Сурови програмни данни |
SBT | Инструменти за изграждане на софтуер |
SOF/.sof | SRAM обект File |
UART | Универсален асинхронен приемник/предавател |
UFM | Потребителска флаш памет |
Предпоставка
- Прилагането на този референтен дизайн изисква да имате посоченото ниво на знания или опит в следните области:
- Работни познания за системите Nios II и инструментите за изграждането им. Тези системи и инструменти включват софтуера Quartus® II, Qsys и Nios II EDS.
- Познаване на методологиите и инструментите за конфигурация на Intel FPGA, като вътрешна конфигурация MAX 10 FPGA, функция за отдалечено надстройване на системата и PFL.
Изисквания
- Следват хардуерните и софтуерните изисквания за референтния дизайн:
- MAX 10 FPGA комплект за разработка
- Quartus II версия 15.0 с Nios II EDS
- Компютър с работещ UART драйвер и интерфейс
- Всеки двоичен/шестнадесетичен file редактор
Референтен дизайн Files
Таблица 2: Дизайн Files Включен в референтния дизайн
File Име
Factory_image |
Описание
• Хардуерен дизайн на Quartus II file да се съхранява в CFM0. • Резервното изображение/фабричното изображение, което да се използва, когато възникне грешка в изтеглянето на изображението на приложението. |
приложение_изображение_1 | • Хардуерен дизайн на Quartus II file да се съхранява в CFM1 и CFM2.(1)
• Първоначалното изображение на приложението, заредено в устройството. |
- В режим на конфигуриране на изображения с двойна конфигурация CFM1 и CFM2 се комбинират в едно CFM хранилище.
File Име
приложение_изображение_2 |
Описание
Хардуерен дизайн на Quartus II file който замества app_image_2 по време на отдалечено надграждане на системата. |
Remote_system_ upgrade.c | Код на софтуерно приложение Nios II, действащ като контролер за дизайна на системата за отдалечено надграждане. |
Отдалечен терминал.exe | • Изпълним file с GUI.
• Функционира като терминал за хост за взаимодействие с комплекта за разработка на MAX 10 FPGA. • Изпраща данни за програмиране през UART. • Изходният код за този терминал е включен. |
Таблица 3: Master Files Включен в референтния дизайн
Можете да използвате тези майстори files за референтния дизайн без компилиране на дизайна files.
File Име
factory_application1.pof factory_application1.rpd |
Описание
Програмиране на Quartus II file който се състои от фабрично изображение и изображение на приложение 1, които трябва да бъдат програмирани съответно в CFM0 и CFM1 & CFM2 в началните stage. |
factory_application2.pof factory_application2.rpd | • Програмиране на Quartus II file който се състои от фабрично изображение и изображение на приложение 2.
• Изображение на приложение 2 ще бъде извлечено по-късно, за да замени изображение на приложение 1 по време на отдалечена надстройка на системата, наречено application_ image_2.rpd по-долу. |
изображение_приложение_1.rpd | Сурови програмни данни на Quartus II file които съдържат само изображение на приложението 1. |
изображение_приложение_2.rpd | Сурови програмни данни на Quartus II file който съдържа само изображение на приложението 2. |
Nios_application.pof | • Програмиране file който се състои от софтуерно приложение за процесор Nios II .hex file само.
• Да се програмира във външна QSPI флаш. |
пфл.соф | • Квартус II .sof съдържащи PFL.
• Програмиран в QSPI флаш на MAX 10 FPGA комплект за разработка. |
Референтен дизайн Функционално описание
Процесор Nios II Gen2
- Процесорът Nios II Gen2 в референтния дизайн има следните функции:
- Главен автобус, който управлява всички интерфейсни операции с IP ядрото на Altera On-Chip Flash, включително четене, запис и изтриване.
- Осигурява алгоритъм в софтуера за получаване на програмния битов поток от хост компютър и задейства повторно конфигуриране чрез IP ядрото с двойна конфигурация.
- Трябва да зададете съответно вектора за нулиране на процесора. Това е, за да се гарантира, че процесорът стартира правилния код на приложението от UFM или външна QSPI флаш памет.
- Забележка: Ако кодът на приложението Nios II е голям, Intel препоръчва да съхранявате кода на приложението във външната QSPI флаш памет. В този референтен дизайн векторът за нулиране сочи към външната QSPI флаш памет, където се съхранява кодът на приложението Nios II.
Свързана информация
- Nios II Gen2 Урок за разработка на хардуер
- Предоставя повече информация за разработването на процесор Nios II Gen2.
Altera On-Chip Flash IP Core
- Ядрото Altera On-Chip Flash IP функционира като интерфейс за процесора Nios II за извършване на операция за четене, запис или изтриване на CFM и UFM. Ядрото Altera On-Chip Flash IP ви позволява да осъществявате достъп, да изтривате и актуализирате CFM с нов конфигурационен битов поток. Редакторът на параметрите на Altera On-Chip Flash IP показва предварително определен диапазон от адреси за всеки сектор на паметта.
Свързана информация
- Altera On-Chip Flash IP Core
- Предоставя повече информация за Altera On-Chip Flash IP Core.
Altera Dual Configuration IP Core
- Можете да използвате IP ядрото с двойна конфигурация на Altera за достъп до блока за надграждане на отдалечена система в MAX 10 FPGA устройства. IP ядрото на Altera Dual Configuration ви позволява да задействате повторно конфигуриране, след като новото изображение бъде изтеглено.
Свързана информация
- Altera Dual Configuration IP Core
- Предоставя повече информация за Altera Dual Configuration IP Core
Altera UART IP Core
- UART IP ядрото позволява комуникация на потоци от серийни символи между вградена система в MAX 10 FPGA и външно устройство. Като Avalon-MM master, процесорът Nios II комуникира с UART IP ядрото, което е Avalon-MM slave. Тази комуникация се осъществява чрез контролни регистри за четене и запис и данни.
- Ядрото изпълнява синхронизацията на протокола RS-232 и предоставя следните функции:
- регулируема скорост на предаване, паритет, стоп и битове за данни
- опционални RTS/CTS контролни сигнали за потока
Свързана информация
- UART ядро
- Предоставя повече информация за UART Core.
Generic Quad SPI Controller IP Core
- IP ядрото Generic Quad SPI Controller функционира като интерфейс между MAX 10 FPGA, външната светкавица и вградената светкавица QSPI. Ядрото осигурява достъп до QSPI флаш чрез операции за четене, запис и изтриване.
Когато приложението Nios II се разшири с повече инструкции, file размер на шестоъгълника file генерирани от приложението Nios II ще бъдат по-големи. Над определено ограничение на размера UFM няма да има достатъчно място за съхранение на шестнадесетичния файл на приложението file. За да разрешите това, можете да използвате външната QSPI флаш памет, налична в комплекта за разработка на MAX 10 FPGA, за да съхраните шестнадесетичния файл на приложението file.
Дизайн на софтуерно приложение Nios II EDS
- Референтният дизайн включва код на софтуерно приложение Nios II, който контролира дизайна на системата за отдалечено надграждане. Кодът на софтуерното приложение Nios II отговаря на хост терминала чрез UART чрез изпълнение на специфични инструкции.
Отдалечено актуализиране на изображения на приложения
- След като сте предали програмен битов поток file използвайки отдалечения терминал, софтуерното приложение Nios II е проектирано да прави следното:
- Настройте регистъра за управление на ядрото на IP на Flash на Altera On-Chip, за да отмени защитата на сектора CFM1 & 2.
- Извършете операция за изтриване на сектор на CFM1 и CFM2. Софтуерът проверява регистъра на състоянието на IP ядрото на Altera On-Chip Flash, за да гарантира успешното изтриване.
- Получаване на 4 байта битов поток наведнъж от stdin. Стандартният вход и изход могат да се използват за получаване на данни директно от хост терминала и отпечатване на изход върху него. Типовете стандартни входни и изходни опции могат да бъдат зададени чрез BSP Editor в Nios II Eclipse Build tool.
- Обръща реда на битовете за всеки байт.
- Забележка: Поради конфигурацията на Altera On-Chip Flash IP Core, всеки байт данни трябва да бъде обърнат, преди да се запише в CFM.
- Започнете да записвате 4 байта данни наведнъж в CFM1 и CFM2. Този процес продължава до края на програмния битов поток.
- Проверява регистъра на състоянието на Altera On-Chip Flash IP, за да осигури успешна операция по запис. Извежда съобщение, за да покаже, че предаването е завършено.
- Забележка: Ако операцията по запис е неуспешна, терминалът ще спре процеса на изпращане на битовия поток и ще генерира съобщение за грешка.
- Настройва контролния регистър за повторна защита на CFM1 и CFM2, за да предотврати нежелана операция по запис.
Свързана информация
- Генериране на pof чрез програмиране на конвертиране Fileе включено
- Предоставя информация за създаване на rpd files по време на програмиране на конвертиране files.
Задействане на преконфигуриране от разстояние
- След като изберете операция за преконфигуриране на задействане в отдалечения терминал на хоста, софтуерното приложение Nios II ще направи следното:
- Получаване на командата от стандартен вход.
- Стартирайте преконфигурирането със следните две операции за запис:
- Запишете 0x03 на отместения адрес на 0x01 в IP ядрото с двойна конфигурация. Тази операция презаписва физическия pin CONFIG_SEL и задава изображение 1 като следващо изображение за конфигурация за зареждане.
- Запишете 0x01 на отместения адрес на 0x00 в IP ядрото с двойна конфигурация. Тази операция задейства преконфигуриране към изображение на приложение в CFM1 и CFM2
Преглед на референтния дизайн
Генериране на програмиране Files
- Трябва да генерирате следното програмиране fileпреди да можете да използвате надстройката на отдалечената система на комплекта за разработка на MAX 10 FPGA:
За QSPI програмиране:
- соф—използване pfl.sof, включен в референтния дизайн, или можете да изберете да създадете различен .sof, съдържащ ваш собствен PFL дизайн
- pof—конфигурация file генериран от .hex и програмиран в QSPI флаш.
- За отдалечено надграждане на системата:
- pof—конфигурация file генериран от .sof и програмиран във вътрешната светкавица.
- rpd—съдържа данните за вътрешна светкавица, която включва ICB настройки, CFM0, CFM1 и UFM.
- карта—държа адреса за всеки сектор на паметта на настройките на ICB, CFM0, CFM1 и UFM.
Генериране files за QSPI програмиране
За да генерирате .pof file за програмиране на QSPI изпълнете следните стъпки:
- Изградете проект Nios II и генерирайте HEX file.
- Забележка: Обърнете се към AN730: Методи за зареждане на процесора Nios II в MAX 10 устройства за информация относно изграждането на проект Nios II и генерирането на HEX file.
- На File меню, щракнете върху Преобразуване на програмиране Files.
- Под Програмиране на изхода file, изберете Programmer Object File (.pof) в програмирането file тип списък.
- В списъка Mode изберете 1-bit Passive Serial.
- В списъка с устройства за конфигурация изберете CFI_512Mb.
- В File поле за име, посочете file име за програмирането file искате да създадете.
- Във входа files за конвертиране на списък, премахнете Опции и реда с данни за SOF. Щракнете върху Добавяне на шестнадесетични данни и се появява диалогов прозорец Добавяне на шестнадесетични данни. В полето Добавяне на шестнадесетични данни изберете Абсолютно адресиране и поставете .hex file генерирани от Nios II EDS Build Tools.
- След като всички настройки са зададени, щракнете върху Генериране, за да генерирате свързано програмиране file.
Свързана информация
AN730: Методи за зареждане на процесор Nios II в MAX 10 FPGA устройства
Генериране files за отдалечено надграждане на системата
За генериране на .pof, .map и .rpd files за надграждане на отдалечена система, изпълнете следните стъпки:
- Възстановете Factory_image, application_image_1 и application_image_2 и компилирайте и трите дизайна.
- Генерирайте два .pof fileса описани в следната таблица:
- Забележка: Вижте Генериране на .pof чрез Програмиране на конвертиране Files за стъпки за генериране на .pof files.
- Забележка: Вижте Генериране на .pof чрез Програмиране на конвертиране Files за стъпки за генериране на .pof files.
- Отворете app2.rpd с помощта на всеки шестнадесетичен редактор.
- В шестнадесетичния редактор изберете блока с двоични данни въз основа на началното и крайното отместване, като се позовавате на .map file. Началното и крайното отместване за устройството 10M50 е съответно 0x12000 и 0xB9FFF. Копирайте този блок в нов file и го запазете в различен .rpd file. Този нов .rpd file съдържа само изображение на приложението 2.
Генериране на pof чрез програмиране на конвертиране Files
За да конвертирате .sof files до .pof files, следвайте тези стъпки:
- На File меню, щракнете върху Преобразуване на програмиране Files.
- Под Програмиране на изхода file, изберете Programmer Object File (.pof) в програмирането file тип списък.
- В списъка Режим изберете Вътрешна конфигурация.
- В File поле за име, посочете file име за програмирането file искате да създадете.
- За генериране на карта на паметта File (.map), включете Създаване на карта на паметта File (Автоматично генериране на изход_file.карта). .map съдържа адреса на CFM и UFM с настройката ICB, която сте задали чрез опцията Option/Boot Info.
- За да генерирате необработени данни за програмиране (.rpd), включете Създаване на конфигурационни данни RPD (Генериране на изход_file_auto.rpd).
С помощта на Memory Map File, можете лесно да идентифицирате данните за всеки функционален блок в .rpd file. Можете също така да извлечете флаш данните за инструменти за програмиране на трети страни или да актуализирате конфигурацията или потребителските данни чрез Altera On-Chip Flash IP. - .sof може да се добави чрез въвеждане files за конвертиране на списък и можете да добавите до два .sof files.
- За целите на отдалечено надграждане на системата можете да запазите оригиналните данни от страница 0 в .pof и да замените данните от страница 1 с нови .sof file. За да направите това, трябва да добавите .pof file в страница 0, тогава
добавете .sof страница, след което добавете новата .sof file към
- За целите на отдалечено надграждане на системата можете да запазите оригиналните данни от страница 0 в .pof и да замените данните от страница 1 с нови .sof file. За да направите това, трябва да добавите .pof file в страница 0, тогава
- След като всички настройки са зададени, щракнете върху Генериране, за да генерирате свързано програмиране file.
Програмиране на QSPI
За да програмирате кода на приложението Nios II в QSPI флаш, изпълнете следните стъпки:
- На комплекта за разработка на MAX 10 FPGA превключете MAX10_BYPASSn на 0, за да прескочите вграденото VTAP (MAX II) устройство.
- Свържете кабела за изтегляне на Intel FPGA (по-рано USB Blaster) към JTAG заглавка.
- В прозореца на програмиста щракнете върху Настройка на хардуера и изберете USB Blaster.
- В списъка с режими изберете JTAG.
- Щракнете върху бутона Автоматично откриване в левия панел.
- Изберете устройството за програмиране и щракнете върху Добавяне File.
- Изберете pfl.sof.
- Щракнете върху Старт, за да започнете програмирането.
- След като програмирането е успешно, без да изключвате платката, щракнете отново върху бутона Auto Detect в левия панел. Ще видите флаш QSPI_512Mb да се появява в прозореца на програмиста.
- Изберете QSPI устройството и щракнете върху Добавяне File.
- Изберете .pof file генериран преди това от .hex file.
- Щракнете върху Старт, за да започнете да програмирате QSPI флаш.
Програмиране на FPGA с начално изображение с помощта на JTAG
Трябва да програмирате app1.pof в FPGA като първоначално изображение на устройството. За да програмирате app1.pof в FPGA, изпълнете следните стъпки:
- В прозореца на програмиста щракнете върху Настройка на хардуера и изберете USB Blaster.
- В списъка с режими изберете JTAG.
- Щракнете върху бутона Автоматично откриване в левия панел.
- Изберете устройството за програмиране и щракнете върху Добавяне File.
- Изберете app1.pof.
- Щракнете върху Старт, за да започнете програмирането.
Актуализиране на изображението и задействане на преконфигуриране с помощта на UART
За да конфигурирате дистанционно своя комплект за разработка MAX10 FPGA, изпълнете следните стъпки:
- Забележка: Преди да започнете, уверете се в следното:
- щифтът CONFIG_SEL на платката е настроен на 0
- UART портът на вашата платка е свързан към вашия компютър
- Отворете Remote Terminal.exe и интерфейсът за отдалечен терминал се отваря.
- Щракнете върху Настройки и ще се появи прозорец с настройки на сериен порт.
- Задайте параметрите на отдалечения терминал да съответстват на настройките на UART, избрани в ядрото Quartus II UART IP. След като настройката приключи, щракнете върху OK.
- Натиснете бутона nCONFIG на комплекта за разработка или въведете 1 в текстовото поле Изпрати и след това натиснете Enter.
- На терминала ще се появи списък с избор на операция, както е показано по-долу:
- Забележка: За да изберете операция, въведете номера в текстовото поле Изпрати и след това натиснете Enter.
- На терминала ще се появи списък с избор на операция, както е показано по-долу:
- За да актуализирате изображение на приложение 1 с изображение на приложение 2, изберете операция 2. Ще бъдете подканени да въведете начален и краен адрес на CFM1 и CFM2.
- Забележка: Адресът, показан на картата file включва настройки на ICB, CFM и UFM, но Altera On-Chip
- Flash IP има достъп само до CFM и UFM. Следователно има изместване на адреса между адреса, показан на картата file и прозорец за IP параметри на Altera On-Chip Flash.
- Въведете адреса въз основа на адреса, указан от прозореца на параметъра на Altera On-Chip Flash IP.
- Изтриването ще започне автоматично, след като въведете крайния адрес.
- Изтриването ще започне автоматично, след като въведете крайния адрес.
- След успешно изтриване ще бъдете подканени да въведете programming .rpd file за приложение изображение 2.
- За да качите изображение, щракнете върху ИзпратиFile и след това изберете .rpd, съдържащ само изображение на приложение 2, и щракнете върху Отвори.
- Забележка: Освен изображение на приложение 2, можете да използвате всяко ново изображение, което искате да актуализирате в устройството.
- Процесът на актуализиране ще започне директно и можете да наблюдавате напредъка през терминала. Операционното меню ще подкани Готово и вече можете да изберете следващата операция.
- За да задействате повторно конфигуриране, изберете операция 4. Можете да наблюдавате поведението на светодиода, показващо различното изображение, заредено в устройството.
Изображение | Светодиодно състояние (активно ниско) |
Фабрично изображение | 01010 |
Приложение Изображение 1 | 10101 |
Приложение Изображение 2 | 01110 |
История на ревизиите на документа
Дата | Версия | Промени |
февруари 2017 г | 2017.02.21 | Ребрандиран като Intel. |
юни 2015 г | 2015.06.15 | Първоначално издание. |
Документи / Ресурси
![]() |
intel MAX 10 FPGA устройства през UART с процесор Nios II [pdf] Ръководство за потребителя MAX 10 FPGA устройства през UART с процесор Nios II, MAX 10 FPGA устройства, през UART с процесор Nios II, през UART, UART за процесор Nios II, Nios II, UART за процесор |