Dispositivos FPGA intel MAX 10 sobre UART co procesador Nios II
Información do produto
O deseño de referencia proporciona unha aplicación sinxela que implementa funcións básicas de configuración remota nos sistemas baseados en Nios II para dispositivos MAX 10 FPGA. A interface UART incluída no kit de desenvolvemento MAX 10 FPGA úsase xunto co núcleo IP Altera UART para proporcionar a funcionalidade de configuración remota. Os dispositivos FPGA MAX10 ofrecen a capacidade de almacenar ata dúas imaxes de configuración que melloran aínda máis a función de actualización do sistema remoto.
Abreviaturas
Abreviatura | Descrición |
---|---|
Avalon-MM | Avalon Memory-Mapped Configuration Memoria flash |
CFM | Interface gráfica de usuario |
ICB | Bit de configuración de inicialización |
MAPA/.mapa | Mapa da memoria File |
Nios II EDS | Compatibilidade con Nios II Embedded Design Suite |
PFL | Núcleo IP Parallel Flash Loader |
POF/.pof | Obxecto Programador File |
QSPI | Interfaz periférica serial cuádruple |
RPD/.rpd | Datos de programación en bruto |
SBT | Ferramentas de creación de software |
SOF/.sof | Obxecto SRAM File |
CARRITO | Receptor/transmisor asíncrono universal |
UFM | Memoria flash de usuario |
Instrucións de uso do produto
Requisito previo
A aplicación deste deseño de referencia require ter o nivel de coñecemento ou experiencia indicado nas seguintes áreas:
Requisitos:
Os requisitos de hardware e software para o deseño de referencia son os seguintes:
Deseño de referencia Files
File Nome | Descrición |
---|---|
Imaxe_fábrica | No modo de configuración de imaxes de configuración dual, CFM1 e CFM2 combínanse nun único almacenamento CFM. |
imaxe_aplicación_1 | Deseño de hardware Quartus II file que substitúe app_image_2 durante unha actualización remota do sistema. |
imaxe_aplicación_2 | O código de aplicación de software Nios II actúa como controlador para o deseño do sistema de actualización remota. |
Actualización_del_sistema_remoto.c | |
aplicación_fábrica1.pof | Programación Quartus II file que consta de imaxe de fábrica e imaxe da aplicación 1, para ser programada en CFM0 e CFM1 e CFM2 respectivamente no s inicialtage. |
aplicación_fábrica1.rpd | |
imaxe_aplicación_1.rpd | |
imaxe_aplicación_2.rpd | |
Nios_application.pof |
O deseño de referencia proporciona unha aplicación sinxela que implementa funcións básicas de configuración remota nos sistemas baseados en Nios II para dispositivos MAX 10 FPGA. A interface UART incluída no kit de desenvolvemento MAX 10 FPGA úsase xunto co núcleo IP Altera UART para proporcionar a funcionalidade de configuración remota.
Deseño de referencia Files
Actualización remota do sistema con MAX 10 FPGA Overview
Coa función de actualización remota do sistema, pódense facer melloras e correccións de erros para os dispositivos FPGA de forma remota. Nun entorno de sistema integrado, o firmware debe actualizarse con frecuencia a través dos distintos tipos de protocolos, como UART, Ethernet e I2C. Cando o sistema integrado inclúe unha FPGA, as actualizacións de firmware poden incluír actualizacións da imaxe de hardware na FPGA.
Os dispositivos FPGA MAX10 ofrecen a capacidade de almacenar ata dúas imaxes de configuración que melloran aínda máis a función de actualización do sistema remoto. Unha das imaxes será a imaxe de copia de seguranza que se carga se se produce un erro na imaxe actual.
Abreviaturas
Táboa 1: Lista de abreviaturas
Abreviatura Descrición | |
Avalon-MM | Avalon Memory-Mapped |
CFM | Memoria flash de configuración |
GUI | Interface gráfica de usuario |
ICB | Bit de configuración de inicialización |
MAPA/.mapa | Mapa da memoria File |
Nios II EDS | Compatibilidade con Nios II Embedded Design Suite |
PFL | Núcleo IP Parallel Flash Loader |
POF/.pof | Obxecto Programador File |
- Intel Corporation. Todos os dereitos reservados. Intel, o logotipo de Intel, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus e as palabras e logotipos de Stratix son marcas comerciais de Intel Corporation ou das súas filiais nos EUA e/ou noutros países. Intel garante o rendemento dos seus produtos FPGA e semicondutores segundo as especificacións actuais de acordo coa garantía estándar de Intel, pero resérvase o dereito de facer cambios en calquera produto e servizo en calquera momento e sen previo aviso. Intel non asume ningunha responsabilidade ou responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito aquí, salvo que Intel o acorde expresamente por escrito. Recoméndase aos clientes de Intel que obteñan a versión máis recente das especificacións do dispositivo antes de confiar en calquera información publicada e antes de facer pedidos de produtos ou servizos.
- Outros nomes e marcas pódense reclamar como propiedade doutros.
Requisito previo
Abreviatura
QSPI |
Descrición
Interfaz periférica serial cuádruple |
RPD/.rpd | Datos de programación en bruto |
SBT | Ferramentas de creación de software |
SOF/.sof | Obxecto SRAM File |
UART | Receptor/transmisor asíncrono universal |
UFM | Memoria flash de usuario |
Requisito previo
- A aplicación deste deseño de referencia require ter o nivel de coñecemento ou experiencia indicado nas seguintes áreas:
- Coñecemento práctico dos sistemas Nios II e das ferramentas para construílos. Estes sistemas e ferramentas inclúen o software Quartus® II, Qsys e Nios II EDS.
- Coñecemento das metodoloxías e ferramentas de configuración de Intel FPGA, como a configuración interna MAX 10 FPGA, a función de actualización remota do sistema e o PFL.
Requisitos
- Os requisitos de hardware e software para o deseño de referencia son os seguintes:
- Kit de desenvolvemento MAX 10 FPGA
- Quartus II versión 15.0 con Nios II EDS
- Un ordenador cun controlador e interface UART funcionando
- Calquera binario/hexadecimal file editor
Deseño de referencia Files
Táboa 2: Deseño Files Incluído no deseño de referencia
File Nome
Imaxe_fábrica |
Descrición
• Deseño de hardware Quartus II file para almacenarse en CFM0. • A imaxe alternativa/imaxe de fábrica que se utilizará cando se produza o erro na descarga da imaxe da aplicación. |
imaxe_aplicación_1 | • Deseño de hardware Quartus II file para almacenarse en CFM1 e CFM2.(1)
• A imaxe da aplicación inicial cargada no dispositivo. |
- No modo de configuración de imaxes de configuración dual, CFM1 e CFM2 combínanse nun único almacenamento CFM.
File Nome
imaxe_aplicación_2 |
Descrición
Deseño de hardware Quartus II file que substitúe app_image_2 durante a actualización remota do sistema. |
Actualización_sistema_remoto.c | Código de aplicación de software Nios II que actúa como controlador para o deseño do sistema de actualización remota. |
Terminal remoto.exe | • Executábeis file cunha GUI.
• Funciona como terminal para que o host interactúe co kit de desenvolvemento MAX 10 FPGA. • Envía datos de programación a través de UART. • Inclúese o código fonte deste terminal. |
Táboa 3: Mestre Files Incluído no deseño de referencia
Podes usar estes mestres files para o deseño de referencia sen compilar o deseño files.
File Nome
factory_application1.pof factory_application1.rpd |
Descrición
Programación Quartus II file que consiste na imaxe de fábrica e na imaxe da aplicación 1, que se programarán en CFM0 e CFM1 e CFM2, respectivamente, nos primeiros momentos.tage. |
factory_application2.pof factory_application2.rpd | • Programación Quartus II file que consta de imaxe de fábrica e imaxe de aplicación 2.
• A imaxe da aplicación 2 extrairase máis tarde para substituír a imaxe da aplicación 1 durante a actualización remota do sistema, denominada a continuación application_image_2.rpd. |
imaxe_aplicación_1.rpd | Datos de programación en bruto Quartus II file que conteñan só a imaxe da aplicación 1. |
imaxe_aplicación_2.rpd | Datos de programación en bruto Quartus II file que só contén a imaxe da aplicación 2. |
Nios_application.pof | • Programación file que consiste na aplicación de software do procesador Nios II .hex file só.
• Para ser programado en flash QSPI externo. |
pfl.sof | • Cuarto II .sof que contén PFL.
• Programado en flash QSPI no kit de desenvolvemento MAX 10 FPGA. |
Deseño de referencia Descrición funcional
Procesador Nios II Gen2
- O procesador Nios II Gen2 no deseño de referencia ten as seguintes funcións:
- Un bus mestre que xestiona todas as operacións de interface co núcleo IP Flash de Altera On-Chip, incluíndo lectura, escritura e borrado.
- Proporciona un algoritmo no software para recibir o fluxo de bits de programación desde un ordenador host e activar a reconfiguración a través do núcleo IP de configuración dual.
- Debe configurar o vector de reinicio do procesador en consecuencia. Isto é para garantir que o procesador inicie o código de aplicación correcto desde o flash UFM ou QSPI externo.
- Nota: Se o código da aplicación Nios II é grande, Intel recomenda que o almacene no flash QSPI externo. Neste deseño de referencia, o vector de reinicio apunta ao flash QSPI externo onde se almacena o código da aplicación Nios II.
Información relacionada
- Tutorial de desenvolvemento de hardware Nios II Gen2
- Ofrece máis información sobre o desenvolvemento do procesador Nios II Gen2.
Altera On-Chip Flash IP Core
- O núcleo Altera On-Chip Flash IP funciona como unha interface para o procesador Nios II para facer unha operación de lectura, escritura ou borrado no CFM e UFM. O núcleo IP Flash de Altera On-Chip permítelle acceder, borrar e actualizar o CFM cun novo fluxo de bits de configuración. O editor de parámetros IP Altera On-Chip Flash mostra un intervalo de enderezos predeterminado para cada sector de memoria.
Información relacionada
- Altera On-Chip Flash IP Core
- Ofrece máis información sobre Altera On-Chip Flash IP Core.
Altera Dual Configuration IP Core
- Podes usar o núcleo IP de configuración dual de Altera para acceder ao bloque de actualización do sistema remoto en dispositivos MAX 10 FPGA. O núcleo IP de configuración dual de Altera permítelle activar a reconfiguración unha vez que se descargue a nova imaxe.
Información relacionada
- Altera Dual Configuration IP Core
- Ofrece máis información sobre Altera Dual Configuration IP Core
Altera UART IP Core
- O núcleo IP UART permite a comunicación de fluxos de caracteres en serie entre un sistema integrado en MAX 10 FPGA e un dispositivo externo. Como mestre Avalon-MM, o procesador Nios II comunícase co núcleo IP UART, que é un escravo Avalon-MM. Esta comunicación realízase mediante lectura e escritura de rexistros de control e datos.
- O núcleo implementa a sincronización do protocolo RS-232 e ofrece as seguintes características:
- velocidade en baudios axustable, paridade, parada e bits de datos
- sinais de control de fluxo RTS/CTS opcionais
Información relacionada
- Núcleo UART
- Ofrece máis información sobre UART Core.
Núcleo IP de controlador Quad SPI genérico
- O núcleo IP de Generic Quad SPI Controller funciona como interface entre MAX 10 FPGA, o flash externo e o flash QSPI integrado. O núcleo proporciona acceso ao flash QSPI mediante operacións de lectura, escritura e borrado.
Cando a aplicación Nios II se expande con máis instrucións, o file tamaño do hexágono file xerado desde a aplicación Nios II será maior. Máis aló dun determinado límite de tamaño, o UFM non terá espazo suficiente para almacenar o hexágono da aplicación file. Para solucionar isto, pode usar o flash QSPI externo dispoñible no kit de desenvolvemento MAX 10 FPGA para almacenar o hexadecimal da aplicación. file.
Deseño de aplicacións de software Nios II EDS
- O deseño de referencia inclúe o código de aplicación de software Nios II que controla o deseño do sistema de actualización remota. O código da aplicación de software Nios II responde ao terminal host a través de UART executando instrucións específicas.
Actualizando as imaxes da aplicación de forma remota
- Despois de transmitir un fluxo de bits de programación file usando o terminal remoto, a aplicación de software Nios II está deseñada para facer o seguinte:
- Establece o Rexistro de control de núcleo IP Flash de Altera On-Chip para desprotexer o sector CFM1 e 2.
- Realiza a operación de borrado de sector en CFM1 e CFM2. O software consulta o rexistro de estado do núcleo IP de Altera On-Chip Flash para garantir que se complete correctamente o borrado.
- Reciba 4 bytes de fluxo de bits á vez desde stdin. A entrada e saída estándar pódense usar para recibir datos directamente do terminal host e imprimir a saída nel. Os tipos de opcións de entrada e saída estándar pódense configurar a través do Editor BSP na ferramenta Nios II Eclipse Build.
- Inverte a orde de bits para cada byte.
- Nota: Debido á configuración de Altera On-Chip Flash IP Core, cada byte de datos debe ser invertido antes de escribilos en CFM.
- Comeza a escribir 4 bytes de datos á vez en CFM1 e CFM2. Este proceso continúa ata o final do fluxo de bits de programación.
- Sondea o rexistro de estado de Altera On-Chip Flash IP para garantir a operación de escritura correcta. Solicita unha mensaxe para indicar que a transmisión está completa.
- Nota: Se a operación de escritura falla, o terminal deterá o proceso de envío do fluxo de bits e xerará unha mensaxe de erro.
- Establece o rexistro de control para volver protexer CFM1 e CFM2 para evitar calquera operación de escritura non desexada.
Información relacionada
- Xeración pof a través da programación de conversión Files on
- Ofrece información sobre a creación de rpd files durante a programación de conversión files.
Activar a reconfiguración de forma remota
- Despois de seleccionar a operación de reconfiguración do activador no terminal remoto host, a aplicación de software Nios II fará o seguinte:
- Reciba o comando da entrada estándar.
- Inicie a reconfiguración coas dúas operacións de escritura seguintes:
- Escriba 0x03 no enderezo de compensación de 0x01 no núcleo IP de configuración dual. Esta operación sobrescribe o PIN físico CONFIG_SEL e establece a imaxe 1 como a seguinte imaxe de configuración de arranque.
- Escriba 0x01 no enderezo de compensación de 0x00 no núcleo IP de configuración dual. Esta operación desencadea a reconfiguración da imaxe da aplicación en CFM1 e CFM2
Guía de deseño de referencia
Xeración de programación Files
- Ten que xerar a seguinte programación files antes de poder utilizar a actualización do sistema remoto no kit de desenvolvemento MAX 10 FPGA:
Para programación QSPI:
- sof—utilizar o pfl.sof incluído no deseño de referencia ou pode optar por crear un .sof diferente que conteña o seu propio deseño PFL
- pof—configuración file xerado desde un .hex e programado no flash QSPI.
- Para Actualización remota do sistema:
- pof—configuración file xerado a partir dun .sof e programado no flash interno.
- rpd—contén os datos para o flash interno que inclúe a configuración ICB, CFM0, CFM1 e UFM.
- mapa - sostén o enderezo para cada sector de memoria dos axustes ICB, CFM0, CFM1 e UFM.
Xerando files para programación QSPI
Para xerar o .pof file para a programación QSPI, realice os seguintes pasos:
- Construír o proxecto Nios II e xerar HEX file.
- Nota: Consulte AN730: Métodos de arranque do procesador Nios II en dispositivos MAX 10 para obter información sobre a construción do proxecto Nios II e a xeración de HEX file.
- Sobre o File menú, faga clic en Convertir programación Files.
- En Programación de saídas file, seleccione Objeto programador File (.pof) na Programación file lista de tipos.
- Na lista Modo, seleccione Serie pasiva de 1 bit.
- Na lista de dispositivos de configuración, seleccione CFI_512Mb.
- No File caixa de nome, especifique o file nome para a programación file quere crear.
- Na entrada files para converter a lista, elimine as opcións e a fila de datos SOF. Fai clic en Engadir datos hexadecimales e aparecerá unha caixa de diálogo Engadir datos hexadecimales. Na caixa Engadir datos hexadecimales, seleccione Enderezo absoluto e insira o .hex file xerado desde Nios II EDS Build Tools.
- Despois de configurar todas as opcións, fai clic en Xerar para xerar programación relacionada file.
Información relacionada
AN730: métodos de arranque do procesador Nios II en dispositivos FPGA MAX 10
Xerando files para a actualización remota do sistema
Para xerar os .pof, .map e .rpd files para actualizar o sistema remoto, siga os seguintes pasos:
- Restaura a imaxe_fábrica, a imaxe_a_aplicación_1 e a imaxe_a_aplicación_2 e compila os tres deseños.
- Xera dous .pof filedescríbense na seguinte táboa:
- Nota: Consulte a xeración de .pof a través da programación de conversión Files para os pasos para xerar .pof files.
- Nota: Consulte a xeración de .pof a través da programación de conversión Files para os pasos para xerar .pof files.
- Abre o app2.rpd usando calquera editor hexadecimal.
- No editor hexadecimal, seleccione o bloque de datos binarios en función da compensación inicial e final facendo referencia ao .map file. A compensación inicial e final para o dispositivo 10M50 é 0x12000 e 0xB9FFF respectivamente. Copia este bloque nun novo file e gárdao nun .rpd diferente file. Este novo .rpd file só contén a imaxe da aplicación 2.
Xeración pof a través da programación de conversión Files
Para converter .sof files a .pof files, siga estes pasos:
- Sobre o File menú, faga clic en Convertir programación Files.
- En Programación de saídas file, seleccione Objeto programador File (.pof) na Programación file lista de tipos.
- Na lista Modo, seleccione Configuración interna.
- No File caixa de nome, especifique o file nome para a programación file quere crear.
- Para xerar un mapa de memoria File (.map), active Crear mapa de memoria File (Xerar automaticamente saída_file.mapa). O .map contén o enderezo do CFM e do UFM coa configuración ICB que estableceu a través da opción Opción/Información de arranque.
- Para xerar datos de programación en bruto (.rpd), active Crear datos de configuración RPD (Xerar saída_file_auto.rpd).
Coa axuda de Memory Map File, pode identificar facilmente os datos de cada bloque funcional no .rpd file. Tamén pode extraer os datos flash para ferramentas de programación de terceiros ou actualizar a configuración ou os datos do usuario a través da IP Flash de Altera On-Chip. - O .sof pódese engadir mediante a entrada files para converter a lista e pode engadir ata dous .sof files.
- Para actualizar o sistema remoto, pode conservar os datos orixinais da páxina 0 no .pof e substituír os datos da páxina 1 por novos .sof file. Para facelo, cómpre engadir o .pof file na páxina 0, entón
engadir páxina .sof e, a continuación, engadir o novo .sof file a
- Para actualizar o sistema remoto, pode conservar os datos orixinais da páxina 0 no .pof e substituír os datos da páxina 1 por novos .sof file. Para facelo, cómpre engadir o .pof file na páxina 0, entón
- Despois de configurar todas as opcións, fai clic en Xerar para xerar programación relacionada file.
Programación do QSPI
Para programar o código da aplicación Nios II no flash QSPI, siga os seguintes pasos:
- No kit de desenvolvemento MAX 10 FPGA, cambie o MAX10_BYPASSn a 0 para evitar o dispositivo VTAP (MAX II) integrado.
- Conecte o cable de descarga Intel FPGA (anteriormente USB Blaster) ao JTAG cabeceira.
- Na xanela do programador, faga clic en Configuración de hardware e seleccione USB Blaster.
- Na lista Modo, seleccione JTAG.
- Fai clic no botón Detección automática no panel esquerdo.
- Seleccione o dispositivo que se quere programar e prema Engadir File.
- Seleccione o pfl.sof.
- Fai clic en Inicio para iniciar a programación.
- Despois de que a programación teña éxito, sen apagar o taboleiro, prema de novo no botón Auto Detect no panel esquerdo. Verá aparecer un flash QSPI_512Mb na xanela do programador.
- Seleccione o dispositivo QSPI e prema Engadir File.
- Seleccione o .pof file xerado previamente desde .hex file.
- Fai clic en Inicio para comezar a programar o flash QSPI.
Programando o FPGA con imaxe inicial usando JTAG
Ten que programar o app1.pof na FPGA como imaxe inicial do dispositivo. Para programar o app1.pof na FPGA, siga os seguintes pasos:
- Na xanela do programador, faga clic en Configuración de hardware e seleccione USB Blaster.
- Na lista Modo, seleccione JTAG.
- Fai clic no botón Detección automática no panel esquerdo.
- Seleccione o dispositivo que se quere programar e prema Engadir File.
- Seleccione a aplicación 1.pof.
- Fai clic en Inicio para iniciar a programación.
Actualizando a imaxe e activando a reconfiguración usando UART
Para configurar remotamente o seu kit de desenvolvemento MAX10 FPGA, siga os seguintes pasos:
- Nota: Antes de comezar, asegúrese do seguinte:
- o PIN CONFIG_SEL no taboleiro está configurado en 0
- o porto UART do teu taboleiro está conectado ao teu ordenador
- Abra Remote Terminal.exe e ábrese a interface de Terminal remoto.
- Fai clic en Configuración e aparecerá a xanela de configuración do porto serie.
- Establece os parámetros do terminal remoto para que coincidan coa configuración UART seleccionada no núcleo IP UART de Quartus II. Despois de completar a configuración, faga clic en Aceptar.
- Preme o botón nCONFIG no kit de desenvolvemento ou teclea 1 na caixa de texto Enviar e, a continuación, preme Intro.
- Aparecerá unha lista de opcións de operación no terminal, como se mostra a continuación:
- Nota: Para seleccionar unha operación, introduza o número na caixa de texto Enviar e, a continuación, prema Intro.
- Aparecerá unha lista de opcións de operación no terminal, como se mostra a continuación:
- Para actualizar a imaxe da aplicación 1 coa imaxe da aplicación 2, seleccione a operación 2. Solicitarase que insira o enderezo inicial e final de CFM1 e CFM2.
- Nota: O enderezo que aparece no mapa file inclúe a configuración ICB, CFM e UFM pero o Altera On-Chip
- Flash IP só pode acceder a CFM e UFM. Polo tanto, hai un desprazamento de enderezo entre o enderezo mostrado no mapa file e xanela de parámetros IP de Altera On-Chip Flash.
- Introduza o enderezo baseándose no enderezo especificado na xanela de parámetros IP de Altera On-Chip Flash.
- O borrado comezará automaticamente despois de introducir o enderezo final.
- O borrado comezará automaticamente despois de introducir o enderezo final.
- Despois de borrar correctamente, solicitaráselle que introduza a programación .rpd file para a imaxe da aplicación 2.
- Para cargar imaxes, fai clic en EnviarFile e, a continuación, seleccione a imaxe 2 da aplicación que contén .rpd e prema en Abrir.
- Nota: Ademais da imaxe da aplicación 2, pode usar calquera imaxe nova que desexe actualizar no dispositivo.
- O proceso de actualización comezará directamente e pode supervisar o progreso a través do terminal. O menú de operacións indicará Feito e agora podes escoller a seguinte operación.
- Para activar a reconfiguración, seleccione a operación 4. Pode observar o comportamento do LED que indica a imaxe diferente cargada no dispositivo.
Imaxe | Estado do LED (activo baixo) |
Imaxe de fábrica | 01010 |
Imaxe da aplicación 1 | 10101 |
Imaxe da aplicación 2 | 01110 |
Historial de revisión de documentos
Data | Versión | Cambios |
febreiro 2017 | 2017.02.21 | Rebautizado como Intel. |
Xuño 2015 | 2015.06.15 | Lanzamento inicial. |
Documentos/Recursos
![]() |
Dispositivos FPGA intel MAX 10 sobre UART co procesador Nios II [pdfGuía do usuario MAX 10 dispositivos FPGA sobre UART co procesador Nios II, MAX 10 dispositivos FPGA, sobre UART co procesador Nios II, sobre UART, procesador Nios II UART, Nios II, procesador UART |