altera Nios V Embedded Processor

Especificacións

  • Nome do produto: Procesador Nios V
  • Software Compatibility: Quartus Prime Software and Platform Designer
  • Tipo de procesador: Altera FPGA
  • Sistema de memoria: memoria volátil e non volátil
  • Interface de comunicación: Axente UART

Nios V Processor Hardware System Design

To design the Nios V Processor hardware system, follow these steps:

  1. Create Nios V Processor system design using Platform Designer.
  2. Integrar o sistema no proxecto Quartus Prime.
  3. Design memory system including volatile and non-volatile memory.
  4. Implementar reloxos e restablecer as mellores prácticas.
  5. Asignar axentes predeterminados e UART para un funcionamento eficiente.

Nios V Processor Software System Design

Para deseñar o sistema de software para o procesador Nios V:

  1. Siga o fluxo de desenvolvemento de software para o procesador Nios V.
  2. Create Board Support Package Project and Application Project.

Nios V Processor Configuration and Booting Solutions

Para configurar e iniciar o procesador Nios V:

  1. Understand the introduction to configuration and booting solutions.
  2. Vincular aplicacións para un funcionamento sen fisuras.

About the Nios® V Embedded Processor
1.1. FPGA Altera® e procesadores integradosview
Os dispositivos Altera FPGA poden implementar lóxica que funciona como un microprocesador completo ao tempo que ofrece moitas opcións.
Unha diferenza importante entre os microprocesadores discretos e a FPGA Altera é que a estrutura da FPGA Altera non contén lóxica cando se acende. O procesador Nios® V é un procesador de propiedade intelectual flexible (IP) baseado na especificación RISC-V. Antes de executar software nun sistema baseado no procesador Nios V, debes configurar o dispositivo FPGA Altera cun deseño de hardware que conteña un procesador Nios V. Podes colocar o procesador Nios V en calquera lugar da FPGA Altera, dependendo dos requisitos do deseño.


Para que o seu sistema integrado Altera® FPGA baseado en IP se comporte como un sistema baseado en microprocesador discreto, o sistema debe incluír o seguinte: · AJTAG interface para soportar a configuración, o hardware e o software de Altera FPGA
depuración · Un mecanismo de configuración de Altera FPGA ao arrancar
Se o teu sistema ten estas capacidades, podes comezar a refinar o teu deseño a partir dun deseño de hardware preprobado cargado na Altera FPGA. O uso dunha Altera FPGA tamén che permite modificar o teu deseño rapidamente para solucionar problemas ou engadir novas funcionalidades. Podes probar estes novos deseños de hardware facilmente reconfigurando a Altera FPGA usando a configuración J do teu sistema.TAG interface.
O JTAG A interface permite o desenvolvemento de hardware e software. Podes realizar as seguintes tarefas usando JTAG interface: · Configurar a Altera FPGA · Descargar e depurar software · Comunicarse coa Altera FPGA a través dunha interface tipo UART (JTAG UART
terminal) · Hardware de depuración (co analizador lóxico integrado Signal Tap) · Memoria flash do programa
Despois de configurar a Altera FPGA cun deseño baseado nun procesador Nios V, o fluxo de desenvolvemento de software é similar ao fluxo para os deseños de microcontroladores discretos.


Información relacionada · AN 985: Titorial do procesador Nios V
Unha guía de inicio rápido sobre a creación dun sistema de procesador Nios V sinxelo e a execución da aplicación Hello World.
© Altera Corporation. Altera, o logotipo de Altera, o logotipo "a" e outras marcas de Altera son marcas comerciais de Altera Corporation. Altera resérvase o dereito de realizar cambios en calquera produto e servizo en calquera momento sen previo aviso. Altera non asume ningunha responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito neste documento, agás o acordo expreso por escrito de Altera. Aconséllase aos clientes de Altera que obteñan a última versión das especificacións do dispositivo antes de confiar en calquera información publicada e antes de realizar pedidos de produtos ou servizos. *Outros nomes e marcas poden ser reclamados como propiedade doutros.

1. Acerca do procesador integrado Nios® V 726952 | 2025.07.16/XNUMX/XNUMX
· Manual de referencia do procesador Nios V Ofrece información sobre as probas de rendemento do procesador Nios V, a arquitectura do procesador, o modelo de programación e a implementación principal.
· Guía do usuario de periféricos integrados IP · Manual para desenvolvedores de software do procesador Nios V


Describe o entorno de desenvolvemento de software do procesador Nios V, as ferramentas dispoñibles e o proceso para crear software que se execute no procesador Nios V. · Guía do usuario do entorno de desenvolvemento integrado (IDE) de Ashling* RiscFree* para FPGAs Altera Describe o entorno de desenvolvemento integrado (IDE) de RiscFree* para FPGAs Altera, HPS baseado en Arm* e procesador central Nios V. · Notas da versión do procesador Nios V Altera FPGA IP
1.2. Soporte de software Quartus® Prime
O fluxo de compilación do procesador Nios V é diferente para o software Quartus® Prime Pro Edition e o software Quartus Prime Standard Edition. Consulte AN 980: Soporte do software Quartus Prime para o procesador Nios V para obter máis información sobre as diferenzas.
Información relacionada AN 980: Procesador Nios V Soporte de software Quartus Prime
1.3. Licenzas do procesador Nios V
Cada variante do procesador Nios V ten a súa propia clave de licenza. Unha vez que adquira a clave de licenza, poderá usar a mesma clave de licenza para todos os proxectos do procesador Nios V ata a data de caducidade. Pode adquirir as licenzas IP Altera FPGA do procesador Nios V sen custo ningún.
A lista de claves de licenza do procesador Nios V está dispoñible no Centro de licenzas de autoservizo de Altera FPGA. Fai clic na lapela Rexistrarse para avaliación ou Licenza gratuíta e selecciona as opcións correspondentes para realizar a solicitude.
Figura 1. Centro de licenzas de autoservizo de FPGA de Altera

Coas claves de licenza, podes:
Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 7

1. Acerca do procesador integrado Nios® V 726952 | 2025.07.16/XNUMX/XNUMX
· Implementar un procesador Nios V dentro do sistema. · Simular o comportamento dun sistema con procesador Nios V. · Verificar a funcionalidade do deseño, como o tamaño e a velocidade. · Xerar programación do dispositivo files. · Programar un dispositivo e verificar o deseño no hardware.
Non precisa unha licenza para desenvolver software no IDE Ashling* RiscFree* para FPGAs Altera.
Información relacionada · Centro de licenzas de autoservizo de FPGA de Altera
Para obter máis información sobre como obter as claves de licenza IP Altera FPGA do procesador Nios V. · Instalación e licenzas do software Altera FPGA Para obter máis información sobre as licenzas do software Altera FPGA e a configuración dunha licenza fixa e dun servidor de licenzas de rede.
1.4. Deseño de sistemas integrados
A seguinte figura ilustra un fluxo de deseño de sistema baseado nun procesador Nios V simplificado, que inclúe tanto o desenvolvemento de hardware como de software.

Manual de deseño de procesadores integrados Nios® V 8

Enviar comentarios

1. Acerca do procesador integrado Nios® V 726952 | 2025.07.16/XNUMX/XNUMX

Figura 2.

Fluxo de deseño do sistema do procesador Nios V
Concepto de sistema

Analizar os requisitos do sistema

Nios® V
Núcleos de procesador e compoñentes estándar

Definir e xerar un sistema en
Deseñador de plataformas

Fluxo de hardware: Integración e compilación do proxecto Intel Quartus Prime

Fluxo de software: Desenvolver e crear software de propostas para Nios V

Fluxo de hardware: Descargar deseño de FPGA
ao taboleiro de destino

Fluxo de software: Proba e depuración do software do procesador Nios V

O software non cumpre coas especificacións?
Si
Hardware Non Cumpre as especificacións? Si
Sistema completo

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 9

726952 | 2025.07.16/XNUMX/XNUMX Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime

Figura 3.

O seguinte diagrama ilustra un deseño típico de hardware dun procesador Nios V. Fluxo de deseño de hardware do sistema do procesador Nios V

Comeza

Núcleos e compoñentes estándar de Nios V

Usar o deseñador de plataformas para deseñar un sistema baseado en Nios V
Xerar deseño de deseñador de plataforma

Integrar o sistema Platform Designer co proxecto Intel Quartus Prime
Asignar localizacións de pines, requisitos de temporización e outras restricións de deseño
Compilar hardware para o dispositivo de destino en Intel Quartus Prime

Listo para descargar
2.1. Creación do deseño do sistema de procesador Nios V con Platform Designer
O software Quartus Prime inclúe a ferramenta de integración de sistemas Platform Designer, que simplifica a tarefa de definir e integrar o núcleo IP do procesador Nios V e outros enderezos IP no deseño dun sistema Altera FPGA. Platform Designer crea automaticamente lóxica de interconexión a partir da conectividade de alto nivel especificada. A automatización da interconexión elimina a tarefa, que leva moito tempo, de especificar conexións HDL a nivel de sistema.
© Altera Corporation. Altera, o logotipo de Altera, o logotipo "a" e outras marcas de Altera son marcas comerciais de Altera Corporation. Altera resérvase o dereito de realizar cambios en calquera produto e servizo en calquera momento sen previo aviso. Altera non asume ningunha responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito neste documento, agás o acordo expreso por escrito de Altera. Aconséllase aos clientes de Altera que obteñan a última versión das especificacións do dispositivo antes de confiar en calquera información publicada e antes de realizar pedidos de produtos ou servizos. *Outros nomes e marcas poden ser reclamados como propiedade doutros.

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Despois de analizar os requisitos de hardware do sistema, use Quartus Prime para especificar o núcleo do procesador Nios V, a memoria e outros compoñentes que require o seu sistema. O Deseñador de plataformas xera automaticamente a lóxica de interconexión para integrar os compoñentes no sistema de hardware.

2.1.1. Instanciación do procesador Nios V Altera FPGA IP

You can instantiate any of the processor IP cores in Platform Designer IP Catalog Processors and Peripherals Embedded Processors.

O núcleo IP de cada procesador admite diferentes opcións de configuración baseadas na súa arquitectura única. Podes definir estas configuracións para adaptalas mellor ás túas necesidades de deseño.

Táboa 1.

Opcións de configuración entre as variantes principais

Opcións de configuración

Procesador Nios V/C

Procesador Nios V/m

Solicitude de restablecemento de uso de depuración

Trampas, excepcións e interrupcións

Arquitectura CPU

ECC

Cachés, rexións periféricas e TCM

Instrucións personalizadas

Paso de cadea

Procesador Nios V/g

2.1.1.1. Instanciación do microcontrolador compacto Nios V/c Altera FPGA IP Figura 4. Microcontrolador compacto Nios V/c Altera FPGA IP

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 11

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

2.1.1.1.1. Pestana Arquitectura da CPU

Táboa 2.

Pestana Arquitectura da CPU

Característica

Descrición

Activar a interface de Avalon® Activa a interface de Avalon para o xestor de instrucións e o xestor de datos. Se está desactivada, o sistema usa a interface AXI4-Lite.

Valor de RSE de mhartid

· Opción de IP non válida. · Non empregues o valor CSR de mhartid no procesador Nios V/c.

2.1.1.1.2. Usar a pestana Solicitude de restablecemento

Táboa 3.

Usar o parámetro da pestana Solicitude de restablecemento

Usar a pestana Solicitude de restablecemento

Descrición

Engadir interface de solicitude de restablecemento

· Active esta opción para expoñer os portos de reinicio locais onde un mestre local poida usalos para activar o reinicio do procesador Nios V sen afectar a outros compoñentes dun sistema de procesador Nios V.
· A interface de reinicio consiste nun sinal de reinicio de entrada e un sinal de confirmación de saída.
· Podes solicitar un reinicio do núcleo do procesador Nios V activando o sinal resetreq.
· O sinal resetreq debe permanecer activado ata que o procesador active o sinal de ACK. Se o sinal non permanece activado, o procesador pode entrar nun estado non determinista.
· O procesador Nios V responde que o reinicio se realizou correctamente activando o sinal de ack.
· Despois de que o procesador se reinicie correctamente, a activación do sinal de recibo pode producirse varias veces periodicamente ata que se desactive o sinal de resetreq.

2.1.1.1.3. Pestana Trampas, excepcións e interrupcións

Táboa 4.

Parámetros da lapela Trampas, excepcións e interrupcións

Trampas, excepcións e interrupcións

Descrición

Restablecer axente

· A memoria que aloxa o vector de reinicio (o enderezo de reinicio do procesador Nios V) onde reside o código de reinicio.
· Podes seleccionar calquera módulo de memoria conectado ao mestre de instrucións do procesador Nios V e compatible cun fluxo de arranque do procesador Nios V como axente de restablecemento.

Restablecer a compensación

· Especifica o desprazamento do vector de reinicio en relación co enderezo base do axente de reinicio escollido. · Platform Designer proporciona automaticamente un valor predeterminado para o desprazamento de reinicio.

Nota:

O Deseñador de plataformas ofrece unha opción Absoluta, que permite especificar un enderezo absoluto en Desprazamento de reinicio. Use esta opción cando a memoria que almacena o vector de reinicio estea situada fóra do sistema e dos subsistemas do procesador.

Manual de deseño de procesadores integrados Nios® V 12

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

2.1.1.1.4. Pestana ECC

Táboa 5.

Pestana ECC

ECC

Activar a detección de erros e os informes de estado

Descrición
· Activa esta opción para aplicar a funcionalidade ECC aos bloques de RAM internos do procesador Nios V. · As funcionalidades ECC detectan erros de ata 2 bits e reaccionan segundo o seguinte comportamento:
— Se se trata dun erro corrixible de 1 bit, o procesador continúa a funcionar despois de corrixir o erro na canle do procesador. Non obstante, a corrección non se reflicte nas memorias de orixe.
— Se o erro é incorrixible, o procesador continúa funcionando sen corrixilo na canle do procesador e nas memorias de orixe, o que podería provocar que o procesador entrase nun estado non determinista.

2.1.1.2. Instanciación do microcontrolador Nios V/m Altera FPGA IP Figura 5. Microcontrolador Nios V/m Altera FPGA IP

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 13

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

2.1.1.2.1. Pestana Depuración

Táboa 6.

Parámetros da lapela Depuración

Pestana Depuración

Descrición

Activar a depuración
Activar o restablecemento desde o módulo de depuración

· Activa esta opción para engadir a JTAG módulo de conexión de destino ao procesador Nios V. · O JTAG O módulo de conexión de destino permite conectarse ao procesador Nios V a través do
JTAG pines da interface da FPGA. · A conexión proporciona as seguintes capacidades básicas:
— Iniciar e deter o procesador Nios V — Examinar e editar rexistros e memoria. — Descargar a aplicación Nios V .elf file á memoria do procesador en tempo de execución a través de
niosv-download. — Depurar a aplicación que se executa no procesador Nios V · Conectar o porto dm_agent ao bus de instrucións e datos do procesador. Asegurarse de que o enderezo base entre ambos buses sexa o mesmo.
· Activa esta opción para expoñer os portos dbg_reset_out e ndm_reset_in. · JTAG o depurador ou o comando niosv-download -r activan o dbg_reset_out, que
permite que o procesador Nios V restableza os periféricos do sistema que se conectan a este porto. · Debe conectar a interface dbg_reset_out a ndm_reset_in en lugar de reset
interface para activar o reinicio do núcleo do procesador e do módulo temporizador. Non debes conectar a interface dbg_reset_out á interface de reinicio para evitar un comportamento indeterminado.

2.1.1.2.2. Usar a pestana Solicitude de restablecemento

Táboa 7.

Usar o parámetro da pestana Solicitude de restablecemento

Usar a pestana Solicitude de restablecemento

Descrición

Engadir interface de solicitude de restablecemento

· Active esta opción para expoñer os portos de reinicio locais onde un mestre local poida usalos para activar o reinicio do procesador Nios V sen afectar a outros compoñentes dun sistema de procesador Nios V.
· A interface de reinicio consiste nun sinal de reinicio de entrada e un sinal de confirmación de saída.
· Podes solicitar un reinicio do núcleo do procesador Nios V activando o sinal resetreq.
· O sinal resetreq debe permanecer activado ata que o procesador active o sinal de ACK. Se o sinal non permanece activado, o procesador pode entrar nun estado non determinista.
· A afirmación do sinal resetreq no modo de depuración non ten ningún efecto no estado do procesador.
· O procesador Nios V responde que o reinicio se realizou correctamente activando o sinal de ack.
· Despois de que o procesador se reinicie correctamente, a activación do sinal de recibo pode producirse varias veces periodicamente ata que se desactive o sinal de resetreq.

2.1.1.2.3. Pestana Trampas, excepcións e interrupcións

Táboa 8.

Pestana Trampas, excepcións e interrupcións

Pestana Trampas, excepcións e interrupcións

Descrición

Restablecer axente

· A memoria que aloxa o vector de reinicio (o enderezo de reinicio do procesador Nios V) onde reside o código de reinicio.
· Podes seleccionar calquera módulo de memoria conectado ao mestre de instrucións do procesador Nios V e compatible cun fluxo de arranque do procesador Nios V como axente de restablecemento.

Restablecer o modo de interrupción de desprazamento

· Especifica o desprazamento do vector de reinicio en relación co enderezo base do axente de reinicio escollido. · Platform Designer proporciona automaticamente un valor predeterminado para o desprazamento de reinicio.
Especifique o tipo de controlador de interrupcións, xa sexa directo ou vectorial. Nota: O procesador non segmentado Nios V/m non admite interrupcións vectoriales.
Polo tanto, evite usar o modo de interrupción vectorizada cando o procesador estea en modo non segmentado.

Manual de deseño de procesadores integrados Nios® V 14

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Nota:

O Deseñador de plataformas ofrece unha opción Absoluta, que permite especificar un enderezo absoluto en Desprazamento de reinicio. Use esta opción cando a memoria que almacena o vector de reinicio estea situada fóra do sistema e dos subsistemas do procesador.

2.1.1.2.4. Arquitectura da CPU

Táboa 9.

Parámetros da lapela Arquitectura da CPU

Arquitectura CPU

Descrición

Activar a canalización na CPU

· Activa esta opción para crear unha instancia do procesador Nios V/m segmentado. — O IPC é maior a costa dunha maior área lóxica e unha menor frecuencia Fmax.
· Desactiva esta opción para crear unha instancia dun procesador Nios V/m non segmentado. — Ten un rendemento central similar ao do procesador Nios V/c. — Admite a depuración e a capacidade de interrupcións — Menor área lóxica e maior frecuencia Fmax a custo dun IPC máis baixo.

Activar a interface de Avalon

Activa a interface Avalon para o xestor de instrucións e o xestor de datos. Se está desactivada, o sistema usa a interface AXI4-Lite.

Valor de RSE de mhartid

· O valor predeterminado do rexistro de ID de Hart (mhartid) é 0. · Asigna un valor entre 0 e 4094. · Compatible coa API HAL de Altera FPGA Avalon Mutex Core.

Información relacionada Guía do usuario de IP periférico integrado: Intel FPGA Avalon® Mutex Core

2.1.1.2.5. Pestana ECC
Táboa 10. Pestana ECC
Activar a detección de erros e a notificación de estado de ECC

Descrición
· Activa esta opción para aplicar a funcionalidade ECC aos bloques de RAM internos do procesador Nios V. · As funcionalidades ECC detectan erros de ata 2 bits e reaccionan segundo o seguinte comportamento:
— Se se trata dun erro corrixible de 1 bit, o procesador continúa a funcionar despois de corrixir o erro na canle do procesador. Non obstante, a corrección non se reflicte nas memorias de orixe.
— Se o erro é incorrixible, o procesador continúa funcionando sen corrixilo na canle do procesador e nas memorias de orixe, o que podería provocar que o procesador entrase nun estado non determinista.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 15

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16
2.1.1.3. Instanciación do procesador de propósito xeral Nios V/g Altera FPGA IP
Figura 6. Procesador de propósito xeral Nios V/g Altera FPGA IP: parte 1

Figura 7.

Procesador de propósito xeral Nios V/g Altera FPGA IP: parte 2 (desactivar e activar o controlador de interrupción a nivel de núcleo)

Manual de deseño de procesadores integrados Nios® V 16

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Figura 8.

Procesador de propósito xeral Nios V/g Altera FPGA IP: parte 2 (activar o controlador de interrupción a nivel de núcleo)

Figura 9. Procesador de propósito xeral Nios V/g Altera FPGA IP: parte 3

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 17

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16
Figura 10. Procesador de propósito xeral Nios V/g Altera FPGA IP: parte 4

2.1.1.3.1. Arquitectura da CPU

Táboa 11. Parámetros da arquitectura da CPU

Pestana Arquitectura da CPU Activar a unidade de coma flotante

Descrición Active esta opción para engadir a unidade de coma flotante (extensión “F”) no núcleo do procesador.

Activar a predición de ramas

Activar a predición de bifurcación estática (cara atrás e cara adiante non) para as instrucións de bifurcación.

Valor de RSE de mhartid

· O valor predeterminado do rexistro de ID de Hart (mhartid) é 0. · Asigna un valor entre 0 e 4094. · Compatible coa API HAL de Altera FPGA Avalon Mutex Core.

Desactivar as instrucións FSQRT e FDIV para FPU

· Eliminar as operacións de raíz cadrada de punto flotante (FSQRT) e división de punto flotante (FDIV) en FPU.
· Aplicar a emulación de software en ambas as instrucións durante o tempo de execución.

Información relacionada Guía do usuario de IP periférico integrado: Intel FPGA Avalon® Mutex Core

Manual de deseño de procesadores integrados Nios® V 18

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

2.1.1.3.2. Pestana Depuración

Táboa 12. Parámetros da lapela Depuración

Pestana Depuración

Descrición

Activar a depuración
Activar o restablecemento desde o módulo de depuración

· Activa esta opción para engadir a JTAG módulo de conexión de destino ao procesador Nios V. · O JTAG O módulo de conexión de destino permite conectarse ao procesador Nios V a través do
JTAG pines da interface da FPGA. · A conexión proporciona as seguintes capacidades básicas:
— Iniciar e deter o procesador Nios V — Examinar e editar rexistros e memoria. — Descargar a aplicación Nios V .elf file á memoria do procesador en tempo de execución a través de
niosv-download. — Depurar a aplicación que se executa no procesador Nios V · Conectar o porto dm_agent ao bus de instrucións e datos do procesador. Asegurarse de que o enderezo base entre ambos buses sexa o mesmo.
· Activa esta opción para expoñer os portos dbg_reset_out e ndm_reset_in. · JTAG o depurador ou o comando niosv-download -r activan o dbg_reset_out, que
permite que o procesador Nios V restableza os periféricos do sistema que se conectan a este porto. · Debe conectar a interface dbg_reset_out a ndm_reset_in en lugar de reset
interface para activar o reinicio do núcleo do procesador e do módulo temporizador. Non debes conectar a interface dbg_reset_out á interface de reinicio para evitar un comportamento indeterminado.

2.1.1.3.3. Pestana Lockstep Táboa 13. Pestana Lockstep
Parámetros Activar Bloqueo Período de tempo límite predeterminado Activar Interface de reinicio ampliado

Descrición · Activa o sistema Lockstep de dobre núcleo. · Valor predeterminado do tempo de espera programable ao saír do reset (entre 0 e 255). · Activa a interface de reset ampliada opcional para o control de reset ampliado. · Cando está desactivada, o fRSmartComp implementa o control de reset básico.

2.1.1.3.4. Usar a pestana Solicitude de restablecemento

Táboa 14. Usar o parámetro da lapela Solicitude de restablecemento

Usar a pestana Solicitude de restablecemento

Descrición

Engadir interface de solicitude de restablecemento

· Active esta opción para expoñer os portos de reinicio locais onde un mestre local poida usalos para activar o reinicio do procesador Nios V sen afectar a outros compoñentes dun sistema de procesador Nios V.
· A interface de reinicio consiste nun sinal de reinicio de entrada e un sinal de confirmación de saída.
· Podes solicitar un reinicio do núcleo do procesador Nios V activando o sinal resetreq.
· O sinal resetreq debe permanecer activado ata que o procesador active o sinal de ACK. Se o sinal non permanece activado, o procesador pode entrar nun estado non determinista.
· A afirmación do sinal resetreq no modo de depuración non ten ningún efecto no estado do procesador.
· O procesador Nios V responde que o reinicio se realizou correctamente activando o sinal de ack.
· Despois de que o procesador se reinicie correctamente, a activación do sinal de recibo pode producirse varias veces periodicamente ata que se desactive o sinal de resetreq.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 19

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

2.1.1.3.5. Pestana Trampas, excepcións e interrupcións

Táboa 15.

Pestana Trampas, excepcións e interrupcións cando a opción Activar controlador de interrupcións de nivel central está desactivada

Pestana Trampas, excepcións e interrupcións
Restablecer axente

Descrición
· A memoria que aloxa o vector de reinicio (o enderezo de reinicio do procesador Nios V) onde reside o código de reinicio.
· Podes seleccionar calquera módulo de memoria conectado ao mestre de instrucións do procesador Nios V e compatible cun fluxo de arranque do procesador Nios V como axente de restablecemento.

Restablecer a compensación

· Especifica o desprazamento do vector de reinicio en relación co enderezo base do axente de reinicio escollido. · Platform Designer proporciona automaticamente un valor predeterminado para o desprazamento de reinicio.

Activar o controlador de interrupcións a nivel central (CLIC)

· Activar CLIC para admitir interrupcións preventivas e condicións de activación de interrupcións configurables.
· Cando está activado, pode configurar o número de interrupcións da plataforma, establecer condicións de activación e designar algunhas das interrupcións como preventivas.

Rexistro de sombras do modo de interrupción Files

Especifique os tipos de interrupción como Directa ou Vectorizada. Habilite o rexistro sombra para reducir o cambio de contexto tras a interrupción.

Táboa 16.

Trampas, excepcións e interrupcións cando a opción Activar controlador de interrupcións de nivel central está activada

Trampas, excepcións e interrupcións

Descricións

Restablecer axente
Restablecer a compensación
Activar o controlador de interrupcións a nivel central (CLIC)

· A memoria que aloxa o vector de reinicio (o enderezo de reinicio do procesador Nios V) onde reside o código de reinicio.
· Podes seleccionar calquera módulo de memoria conectado ao mestre de instrucións do procesador Nios V e compatible cun fluxo de arranque do procesador Nios V como axente de restablecemento.
· Especifica o desprazamento do vector de reinicio en relación co enderezo base do axente de reinicio escollido. · Platform Designer proporciona automaticamente un valor predeterminado para o desprazamento de reinicio.
· Activa CLIC para admitir interrupcións preventivas e condicións de activación de interrupcións configurables. · Cando está activado, podes configurar o número de interrupcións da plataforma, establecer condicións de activación,
e designar algunhas das interrupcións como preventivas.

Modo de interrupción

· Especifique os tipos de interrupción como Directa, Vectorizada ou CLIC.

Rexistro de sombras Files

· Activar o rexistro sombra para reducir o cambio de contexto tras unha interrupción.
· Ofrece dúas opcións:
— Número de niveis de interrupción CLIC
— Número de niveis de interrupción CLIC – 1: Esta opción é útil cando se quere que o número de niveis de rexistro file copias para que encaixen nun número exacto de bloques M20K ou M9K.
· Activar o procesador Nios V para usar o rexistro de sombras fileque reducen a sobrecarga de cambio de contexto tras unha interrupción.
Para obter máis información sobre o rexistro en sombras files, consulte o Manual de referencia do procesador Nios V.

Número de fontes de interrupcións da plataforma

· Especifica o número de interrupcións da plataforma entre 16 e 2048.
Nota: O CLIC admite ata 2064 entradas de interrupción e as primeiras 16 entradas de interrupción tamén están conectadas ao controlador de interrupción básico.

Aliñamento da táboa vectorial CLIC

· Determínase automaticamente en función do número de fontes de interrupción da plataforma. · Se usas un aliñamento inferior ao valor recomendado, o CLIC aumenta a lóxica
complexidade engadindo un sumador adicional para realizar cálculos de vectorización. · Se usas unha aliñación que está por debaixo do valor recomendado, isto resulta nun aumento
Complexidade lóxica no CLIC.
continuou…

Manual de deseño de procesadores integrados Nios® V 20

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Trampas, excepcións e interrupcións
Número de niveis de interrupción
Número de prioridades de interrupción por nivel
Polaridade de interrupción configurable. Compatibilidade con interrupcións activadas por flanco.

Descricións
· Especifica o número de niveis de interrupción cun nivel adicional 0 para o código da aplicación. As interrupcións dun nivel superior poden interromper (preemptar) un xestor en execución para unha interrupción de nivel inferior.
· Con niveis de interrupción distintos de cero como únicas opcións para as interrupcións, o código da aplicación sempre está no nivel máis baixo, 0. Nota: A configuración en tempo de execución do nivel e a prioridade dunha interrupción realízase nun único rexistro de 8 bits. Se o número de niveis de interrupción é 256, non é posible configurar a prioridade de interrupción en tempo de execución. En caso contrario, o número máximo de prioridades configurables é 256 / (número de niveis de interrupción – 1).
· Especifica o número de prioridades de interrupción, que o CLIC emprega para determinar a orde na que se chaman os xestores de interrupción non preemptivos. Nota: A concatenación de valores binarios do nivel de interrupción seleccionado e a prioridade de interrupción seleccionada debe ser inferior a 8 bits.
· Permite configurar a polaridade das interrupcións durante a execución. · A polaridade predeterminada é a polaridade positiva.
· Permite configurar a condición de activación da interrupción durante o tempo de execución, é dicir, activación de alto nivel ou activación por flanco positivo (cando a polaridade da interrupción é positiva na polaridade da interrupción configurable).
· A condición de disparo predeterminada é unha interrupción disparada por nivel.

Nota:

O Deseñador de plataformas ofrece unha opción Absoluta, que permite especificar un enderezo absoluto en Desprazamento de reinicio. Use esta opción cando a memoria que almacena o vector de reinicio estea situada fóra do sistema e dos subsistemas do procesador.

Información relacionada Manual de referencia do procesador Nios® V

2.1.1.3.6. Pestana Configuracións de memoria

Táboa 17. Parámetros da lapela Configuración da memoria

Categoría

Pestana de configuración da memoria

Descrición

Cachés

Tamaño da caché de datos

· Especifica o tamaño da caché de datos. · Os tamaños válidos van dende 0 kilobytes (KB) ata 16 KB. · Desactiva a caché de datos cando o tamaño sexa de 0 KB.

Tamaño da caché de instrucións

· Especifica o tamaño da caché de instrucións. · Os tamaños válidos van de 0 KB a 16 KB. · Desactiva a caché de instrucións cando o tamaño sexa de 0 KB.

Rexión periférica A e B

Tamaño

· Especifica o tamaño da rexión periférica.
· Os tamaños válidos van dende 64 KB ata 2 gigabytes (GB) ou Ningún. Ao seleccionar Ningún, desactívase a rexión periférica.

Enderezo base

· Especifica o enderezo base da rexión periférica despois de seleccionar o tamaño.
· Todos os enderezos da rexión periférica producen accesos a datos que non se poden almacenar na caché.
· O enderezo base da rexión periférica debe estar aliñado co tamaño da rexión periférica.

Memorias fortemente acopladas

Tamaño

· Especifica o tamaño da memoria fortemente acoplada. — Os tamaños válidos van dende 0 MB ata 512 MB.

Inicialización do enderezo base File

· Especifica o enderezo base da memoria fortemente acoplada. · Especifica a inicialización file para memoria estreitamente acoplada.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 21

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Nota:

Nun sistema con procesador Nios V coa caché activada, debes colocar os periféricos do sistema dentro dunha rexión periférica. Podes usar rexións periféricas para definir unha transacción non almacenable na caché para periféricos como UART, PIO, DMA e outros.

2.1.1.3.7. Pestana ECC

Táboa 18. Pestana ECC
Activar a detección de erros e a notificación de estado de ECC
Activar a corrección dun só bit

Descrición
· Activa esta opción para aplicar a funcionalidade ECC aos bloques de RAM internos do procesador Nios V. · As funcionalidades ECC detectan erros de ata 2 bits e reaccionan segundo o seguinte comportamento:
— Se se trata dun erro dun só bit corrixible e a opción Activar corrección dun só bit está desactivada, o procesador continúa funcionando despois de corrixir o erro na canle do procesador. Non obstante, a corrección non se reflicte nas memorias de orixe.
— Se se trata dun erro dun só bit corrixible e a opción Activar a corrección dun só bit está activada, o procesador continúa funcionando despois de corrixir o erro na canle do procesador e nas memorias de orixe.
— Se se trata dun erro incorrixible, o procesador detén o seu funcionamento.
Activar a corrección dun só bit nos bloques de memoria integrados no núcleo.

2.1.1.3.8. Pestana de instrucións personalizadas

Nota:

Esta lapela só está dispoñible para o núcleo do procesador Nios V/g.

Táboa de interface de hardware de instrucións personalizadas para Nios V
Táboa de macros do software de instrucións personalizadas Nios V

Descrición
· O procesador Nios V usa esta táboa para definir as súas interfaces de xestor de instrucións personalizadas.
· As interfaces do xestor de instrucións personalizadas definidas están codificadas de forma única mediante un código de operación (CUSTOM0-3) e 3 bits de funct7[6:4].
· Podes definir ata un total de 32 interfaces individuais de xestor de instrucións personalizadas.
· O procesador Nios V usa esta táboa para definir codificacións de software de instrucións personalizadas para interfaces de xestor de instrucións personalizadas definidas.
· Para cada codificación de software de instrucións personalizadas definida, o código de operación (CUSTOM0-3) e 3 bits da codificación funct7[6:4] deben correlacionarse cunha codificación de interface de xestor de instrucións personalizadas definida na táboa de interfaces de hardware de instrucións personalizadas.
· Podes usar func7[6:4], func7[3:0] e func3[2:0] para definir unha codificación adicional para unha instrución personalizada determinada ou especificala como X para que se pasen como argumentos de instrución adicionais.
· O procesador Nios V proporciona codificacións de software de instrucións personalizadas definidas como macros C xeradas en system.h e segue o formato de instrucións RISC-V de tipo R.
· Os mnemotécnicos pódense usar para definir nomes personalizados para: — As macros C xeradas en system.h.
— Os mnemónicos de depuración de GDB xerados en custom_instruction_debug.xml.

Información relacionada
AN 977: Instrucións personalizadas do procesador Nios V Para obter máis información sobre as instrucións personalizadas que che permiten personalizar o procesador Nios® V para satisfacer as necesidades dunha aplicación específica.

Manual de deseño de procesadores integrados Nios® V 22

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
2.1.2. Definición do deseño de compoñentes do sistema
Emprega o Deseñador de plataformas para definir as características do hardware do sistema de procesador Nios V e engade os compoñentes desexados. O seguinte diagrama mostra un deseño básico do sistema de procesador Nios V cos seguintes compoñentes: · Núcleo do procesador Nios V · Memoria no chip · JTAG UART · Temporizador de intervalos (opcional)(1)
Cando se engade unha nova memoria no chip a un sistema Platform Designer, executa a función Sincronizar información do sistema para reflectir os compoñentes de memoria engadidos ao restablecer. De xeito alternativo, podes activar a sincronización automática en Platform Designer para reflectir automaticamente os últimos cambios nos compoñentes.
Figura 11. Exampa conexión do procesador Nios V con outros periféricos en Platform Designer

(1) Tes a opción de usar as funcións do temporizador interno de Nios V para substituír o temporizador de intervalos externo en Platform Designer.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 23

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16
Tamén debes definir os pines de operación para exportalos como condutos no teu sistema Platform Designer. Por exemplo,ampé dicir, unha lista de pines de funcionamento axeitada dun sistema FPGA defínese a continuación, pero non se limita a:
· Reloxo
· Restablecer
· Sinais de E/S
2.1.3. Especificación de enderezos base e prioridades de solicitudes de interrupción
Para especificar como interactúan os compoñentes engadidos no deseño para formar un sistema, cómpre asignar enderezos base para cada compoñente do axente e asignar prioridades de solicitude de interrupción (IRQ) para o J.TAG UART e o temporizador de intervalos. O Deseñador de plataformas proporciona un comando (Asignar enderezos base) que asigna automaticamente os enderezos base axeitados a todos os compoñentes dun sistema. Non obstante, podes axustar os enderezos base segundo as túas necesidades.
Estas son algunhas pautas para asignar enderezos base:
· O núcleo do procesador Nios V ten un intervalo de enderezos de 32 bits. Para acceder aos compoñentes do axente, o seu enderezo base debe estar entre 0x00000000 e 0xFFFFFFFF.
· Os programas de Nios V empregan constantes simbólicas para referirse a enderezos. Non tes que escoller valores de enderezo que sexan fáciles de lembrar.
· Os valores de enderezo que diferencian os compoñentes cunha diferenza de enderezo de só un bit producen hardware máis eficiente. Non é necesario compactar todos os enderezos base no rango de enderezos máis pequeno posible porque a compactación pode crear hardware menos eficiente.
· O Deseñador de plataformas non tenta aliñar compoñentes de memoria separados nun rango de memoria contiguo. Por exemploampé dicir, se queres que varios compoñentes de memoria no chip sexan direccionables como un rango de memoria contiguo, debes asignar enderezos base explicitamente.
O Deseñador de plataformas tamén proporciona un comando de automatización (Asignar números de interrupción) que conecta sinais IRQ para producir resultados de hardware válidos. Non obstante, a asignación eficaz de IRQ require a comprensión do comportamento xeral da resposta do sistema. O Deseñador de plataformas non pode facer conxecturas fundamentadas sobre a mellor asignación de IRQ.
O valor de IRQ máis baixo ten a maior prioridade. Nun sistema ideal, Altera recomenda que o compoñente do temporizador teña a IRQ de maior prioridade, é dicir, o valor máis baixo, para manter a precisión do tic-tac do reloxo do sistema.
Nalgúns casos, pode asignar unha prioridade maior aos periféricos en tempo real (como os controladores de vídeo), o que require unha taxa de interrupcións máis alta que os compoñentes do temporizador.
Información relacionada
Guía do usuario de Quartus Prime Pro Edition: Máis información sobre a creación dun sistema con Platform Designer.

Manual de deseño de procesadores integrados Nios® V 24

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
2.2. Integración do sistema Platform Designer no proxecto Quartus Prime
Despois de xerar o deseño do sistema Nios V en Platform Designer, realice as seguintes tarefas para integrar o módulo do sistema Nios V no proxecto de deseño da FPGA Quartus Prime. · Instanciar o módulo do sistema Nios V no proxecto Quartus Prime · Conectar sinais do módulo do sistema Nios V a outros sinais na lóxica da FPGA · Asignar a localización dos pines físicos · Restrinxir o deseño da FPGA
2.2.1. Instanciación do módulo do sistema de procesamento Nios V no proxecto Quartus Prime
O deseñador de plataformas xera unha entidade de deseño de módulo de sistema que podes instanciar en Quartus Prime. O xeito de instanciar o módulo de sistema depende do método de entrada de deseño para o proxecto xeral de Quartus Prime. Por exemplo,ampPor exemplo, se estabas a usar Verilog HDL para a entrada de deseño, crea unha instancia do módulo de sistema baseado en Verilog. Se prefires usar o método do diagrama de bloques para a entrada de deseño, crea unha instancia dun símbolo de módulo de sistema .bdf file.
2.2.2. Conexión de sinais e asignación de localizacións físicas de pines
Para conectar o deseño da FPGA de Altera ao deseño a nivel de placa, realice as seguintes tarefas: · Identifique o nivel superior file para o seu deseño e sinais para conectar a Altera externos
Pines do dispositivo FPGA. · Comprende que pines conectar a través da guía do usuario de deseño a nivel de placa ou
esquemas. · Asigna sinais no deseño de nivel superior a portos do teu dispositivo Altera FPGA con pin
ferramentas de asignación.
O seu sistema Platform Designer pode ser o deseño de nivel superior. Non obstante, a Altera FPGA tamén pode incluír lóxica adicional baseada nas súas necesidades e, polo tanto, introduce un deseño de nivel superior personalizado. fileO nivel superior file conecta os sinais do módulo do sistema de procesamento Nios V a outra lóxica de deseño de FPGA de Altera.
Información relacionada Guía do usuario de Quartus Prime Pro Edition: Restricións de deseño
2.2.3. Restricións no deseño da FPGA de Altera
Un deseño axeitado dun sistema Altera FPGA inclúe restricións de deseño para garantir que o deseño cumpra os requisitos de peche temporal e outras restricións lóxicas. Debe restrinxir o seu deseño Altera FPGA para que cumpra estes requisitos explicitamente usando as ferramentas proporcionadas no software Quartus Prime ou provedores de EDA de terceiros. O software Quartus Prime usa as restricións proporcionadas durante a fase de compilación para obter os resultados de colocación óptimos.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 25

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16
Información relacionada · Guía do usuario de Quartus Prime Pro Edition: Restricións de deseño · Socios de EDA externos · Guía do usuario de Quartus Prime Pro Edition: Analizador de temporización
2.3. Deseño dun sistema de memoria con procesador Nios V
Esta sección describe as mellores prácticas para seleccionar dispositivos de memoria nun sistema integrado Platform Designer cun procesador Nios V e acadar un rendemento óptimo. Os dispositivos de memoria desempeñan un papel fundamental na mellora do rendemento xeral dun sistema integrado. A memoria do sistema integrado almacena as instrucións e os datos do programa.
2.3.1. Memoria volátil
Unha distinción principal nun tipo de memoria é a volatilidade. A memoria volátil só conserva o seu contido mentres se lle subministra enerxía ao dispositivo de memoria. En canto se corta a alimentación, a memoria perde o seu contido.
ExampOs ficheiros de memoria volátil son a RAM, a caché e os rexistros. Trátase de tipos de memoria rápidos que aumentan o rendemento en execución. Altera recomenda cargar e executar instrucións do procesador Nios V na RAM e emparellar o núcleo IP de Nios V coa memoria IP integrada no chip ou a interface IP de memoria externa para obter un rendemento óptimo.
Para mellorar o rendemento, podes eliminar compoñentes adicionais de adaptación do Deseñador de plataforma facendo coincidir o tipo ou o ancho da interface do xestor de datos do procesador Nios V coa RAM de arranque. Por exemplo,ampPor exemplo, podes configurar a memoria en chip II cunha interface AXI-32 de 4 bits, que coincide coa interface do xestor de datos Nios V.
Información relacionada · Interfaces de memoria externa Centro de asistencia IP · Memoria no chip (RAM ou ROM) Altera FPGA IP · Memoria no chip II (RAM ou ROM) Altera FPGA IP · Aplicación do procesador Nios V Execución no lugar desde OCRAM na páxina 54
2.3.1.1. Configuración da memoria no chip RAM ou ROM
Podes configurar os enderezos IP de memoria no chip Altera FPGA como RAM ou ROM. · A RAM ofrece capacidade de lectura e escritura e ten natureza volátil. Se estás a...
Ao iniciar o procesador Nios V desde unha memoria RAM integrada no chip, debes asegurarte de que o contido de arranque se conserve e non se corrompa no caso dun reinicio durante o tempo de execución. · Se un procesador Nios V arranca desde a ROM, calquera erro de software no procesador Nios V non pode sobrescribir erroneamente o contido da memoria integrada no chip. Deste xeito, redúcese o risco de corrupción do software de arranque.
Información relacionada · Memoria no chip (RAM ou ROM) Altera FPGA IP · Memoria no chip II (RAM ou ROM) Altera FPGA IP · Aplicación do procesador Nios V Execución no lugar desde OCRAM na páxina 54

Manual de deseño de procesadores integrados Nios® V 26

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
2.3.1.2. Cachés
As memorias integradas no chip úsanse habitualmente para implementar a funcionalidade de caché debido á súa baixa latencia. O procesador Nios V usa memoria integrada no chip para as súas cachés de instrucións e datos. A capacidade limitada da memoria integrada no chip non adoita ser un problema para as cachés porque adoitan ser pequenas.
As cachés úsanse habitualmente nas seguintes condicións:
· A memoria normal está situada fóra do chip e ten un tempo de acceso máis longo que a memoria integrada no chip.
· As seccións críticas para o rendemento do código do software poden caber na caché de instrucións, mellorando o rendemento do sistema.
· A sección de datos crítica para o rendemento e que se usa con máis frecuencia pode caber na caché de datos, mellorando o rendemento do sistema.
A activación das cachés no procesador Nios V crea unha xerarquía de memoria que minimiza o tempo de acceso á memoria.
2.3.1.2.1. Rexión periférica
Non se debe almacenar na caché ningún IP de periférico integrado, como UART, I2C e SPI. A caché é moi recomendable para memorias externas que se ven afectadas por un longo tempo de acceso, mentres que as memorias internas no chip poden excluírse debido ao seu curto tempo de acceso. Non debes almacenar na caché ningún IP de periférico integrado, como UART, I2C e SPI, agás as memorias. Isto é importante porque os eventos de dispositivos externos, como os dispositivos axentes que actualizan os IP suaves, non son capturados pola caché do procesador e, á súa vez, o procesador non os recibe. Como resultado, estes eventos poden pasar desapercibidos ata que baleiras a caché, o que pode levar a un comportamento non desexado no teu sistema. En resumo, a rexión mapeada na memoria dos IP de periféricos integrados non se pode almacenar na caché e debe residir dentro das rexións periféricas do procesador.
Para definir unha rexión periférica, siga estes pasos:
1. Abra o Mapa de enderezos do sistema no Deseñador de plataformas.
2. Navegue ata o mapa de enderezos do Xestor de instrucións e do Xestor de datos do procesador.
3. Identifica os periféricos e as memorias do teu sistema.
Figura 12. ExampMapa de enderezos

Nota: As frechas azuis apuntan ás memorias. 4. Agrupa os periféricos:
a. Memoria como caché b. Periféricos como non caché

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 27

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Táboa 19. Rexión almacenable na caché e non almacenable na caché

Subordinado

Mapa de enderezos

Estado

Rexión periférica

Tamaño

Enderezo base

memoria_da_aplicación_de_usuario.s1

0x0 ~ 0x3ffff

Cachéable

N/A

N/A

cpu.dm_agent bootcopier_rom.s1

0x40000 ~ 0x4ffff 0x50000 ~ 0x517ff

Non almacenable na caché Almacenable na caché

65536 bytes N/D

0x40000 N/A

bootcopier_ram.s1 cpu.timer_sw_agent correo.avmm

0x52000 ~ 0x537ff 0x54000 ~ 0x5403f 0x54040 ~ 0x5407f

Almacenable na caché Non almacenable na caché Non almacenable na caché

144 bytes (o tamaño mínimo é de 65536 bytes)

0x54000

sysid_qsys_0.control_slave

0x54080 ~ 0x54087

Non se pode almacenar na caché

uart.avalon_jtag_escravo

0x54088 ~ 0x5408f

Non se pode almacenar na caché

5. Aliña as rexións periféricas cos seus tamaños específicos:
· Por exampé dicir, se o tamaño é de 65536 bytes, corresponde a 0x10000 bytes. Polo tanto, o enderezo base permitido debe ser un múltiplo de 0x10000.
· O CPU.dm_agent usa un enderezo base de 0x40000, que é un múltiplo de 0x10000. Como resultado, a Rexión Periférica A, cun tamaño de 65536 bytes e un enderezo base de 0x40000, cumpre os requisitos.
· O enderezo base da colección de rexións que non se poden gardar na caché en 0x54000 non é un múltiplo de 0x10000. Debes reasignalas a 0x60000 ou a outro múltiplo de 0x10000. Polo tanto, a Rexión Periférica B, que ten un tamaño de 65536 bytes e un enderezo base de 0x60000, cumpre os criterios.

Táboa 20. Rexión almacenable na caché e non almacenable na caché con reasignación

Subordinado

Mapa de enderezos

Estado

Rexión periférica

Tamaño

Enderezo base

memoria_da_aplicación_de_usuario.s1

0x0 ~ 0x3ffff

Cachéable

N/A

N/A

axente_dm da cpu

0x40000 ~ 0x4ffff

Non almacenable na caché 65536 bytes

0x40000

bootcopier_rom.s1

0x50000 ~ 0x517ff

Cachéable

N/A

N/A

bootcopier_ram.s1 cpu.timer_sw_agent correo electrónico.avmm sysid_qsys_0.control_slave

0x52000 ~ 0x537ff 0x60000 ~ 0x6003f 0x60040 ~ 0x6007f 0x60080 ~ 0x60087

Almacenable na caché Non almacenable na caché Non almacenable na caché Non almacenable na caché

144 bytes (o tamaño mínimo é de 65536 bytes)

0x60000

uart.avalon_jtag_escravo

0x60088 ~ 0x6008f

Non se pode almacenar na caché

2.3.1.3. Memoria fortemente acoplada
As memorias fortemente acopladas (TCM) impleméntanse empregando memoria integrada no chip, xa que a súa baixa latencia as fai axeitadas para a tarefa. As TCM son memorias mapeadas no espazo de enderezos típico, pero teñen unha interface dedicada ao microprocesador e posúen as propiedades de alto rendemento e baixa latencia da memoria caché. As TCM tamén proporcionan unha interface subordinada para o host externo. O procesador e o host externo teñen o mesmo nivel de permisos para xestionar as TCM.

Manual de deseño de procesadores integrados Nios® V 28

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Nota:

Cando o porto subordinado TCM está conectado a un host externo, pode mostrarse cun enderezo base diferente do enderezo base asignado no núcleo do procesador. Altera recomenda aliñar ambos enderezos co mesmo valor.

2.3.1.4. Interface de memoria externa (EMIF)
A EMIF (Interface de Memoria Externa) funciona de xeito similar á SRAM (Memoria de Acceso Aleatorio Estática), pero é dinámica e require actualizacións periódicas para manter o seu contido. As celas de memoria dinámica da EMIF son moito máis pequenas que as celas de memoria estática da SRAM, o que resulta en dispositivos de memoria de maior capacidade e menor custo.
Ademais do requisito de actualización, EMIF ten requisitos de interface específicos que a miúdo requiren hardware de controlador especializado. A diferenza da SRAM, que ten un conxunto fixo de liñas de enderezos, EMIF organiza o seu espazo de memoria en bancos, filas e columnas. O cambio entre bancos e filas introduce certa sobrecarga, polo que debes ordenar coidadosamente os accesos á memoria para usar EMIF de forma eficiente. EMIF tamén multiplexa enderezos de fila e columna nas mesmas liñas de enderezos, o que reduce o número de pines necesarios para un tamaño EMIF determinado.
As versións de maior velocidade de EMIF, como DDR, DDR2, DDR3, DDR4 e DDR5, impoñen requisitos estritos de integridade do sinal que os deseñadores de PCB deben ter en conta.
Os dispositivos EMIF están entre os tipos de RAM máis rendibles e de alta capacidade dispoñibles, o que os converte nunha opción popular. Un compoñente clave dunha interface EMIF é o IP EMIF, que xestiona tarefas relacionadas coa multiplexación de enderezos, a actualización e o cambio entre filas e bancos. Este deseño permite que o resto do sistema acceda a EMIF sen necesidade de comprender a súa arquitectura interna.

Información relacionada Interfaces de memoria externa Centro de asistencia IP

2.3.1.4.1. Extensor de alcance de enderezos IP
O extensor de amplitude de enderezos Altera FPGA IP permite que as interfaces de host mapeadas en memoria accedan a un mapa de enderezos maior ou menor que o ancho dos seus sinais de enderezo. O extensor de amplitude de enderezos IP divide o espazo direccionable en varias xanelas separadas para que o host poida acceder á parte apropiada da memoria a través da xanela.
O extensor de amplitude de enderezos non limita as anchuras do host e do axente a unha configuración de 32 e 64 bits. Podes usar o extensor de amplitude de enderezos con xanelas de enderezos de 1 a 64 bits.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 29

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Figura 13. Extensor de alcance de enderezos Altera FPGA IP
Enderezo de palabra do axente

Extensor de alcance de enderezos

A

Táboa de cartografía
Porto de control A

Rexistro de control 0 Rexistro de control Z-1

Enderezo de host expandido H

Información relacionada
Guía do usuario de Quartus® Prime Pro Edition: Deseñador de plataformas Consulte o tema Extensor de intervalo de enderezos Intel® FPGA IP para obter máis información.

2.3.1.4.2. Uso do extensor de alcance de enderezos IP cun procesador Nios V
O procesador Nios V de 32 bits pode abordar ata 4 GB dun intervalo de enderezos. Se o EMIF contén máis de 4 GB de memoria, supera o intervalo de enderezos máximo admitido, o que fai que o sistema Platform Designer sexa erróneo. Necesítase un extensor de intervalo de enderezos IP para resolver este problema dividindo un único espazo de enderezos EMIF en varias xanelas máis pequenas.
Altera recomenda que teñas en conta os seguintes parámetros.

Táboa 21. Parámetros do extensor de intervalo de enderezos

Parámetro

Configuración recomendada

Largura da ruta de datos
Largura do enderezo de byte mestre expandido

Selecciona 32 bits, que se correlaciona co procesador de 32 bits. Depende do tamaño da memoria EMIF.

Largura do enderezo da palabra escrava Largura do reconto de ráfagas

Seleccione 2 GB ou menos. O intervalo de enderezos restante do procesador Nios V está reservado para outras IP software integradas.
Comeza con 1 e aumenta este valor gradualmente para mellorar o rendemento.

Número de subxanelas

Selecciona 1 subxanela se estás a conectar EMIF ao procesador Nios V como memoria de instrucións e datos, ou ambas. É perigoso cambiar entre varias subxanelas mentres o procesador Nios V se executa desde EMIF.

Activar o porto de control escravo

Desactiva o porto de control escravo se estás a conectar EMIF ao procesador Nios V como memoria de instrucións e/ou datos. Os mesmos problemas que o número de subxanelas.

Lecturas pendentes máximas

Comeza con 1 e aumenta este valor gradualmente para mellorar o rendemento.

Manual de deseño de procesadores integrados Nios® V 30

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
Figura 14. Conexión do xestor de instrucións e datos ao extensor de alcance de enderezos

Figura 15. Mapeo de enderezos

Teña en conta que o extensor de alcance de enderezos pode acceder a todo o espazo de memoria de 8 GB do EMIF. Non obstante, a través do extensor de alcance de enderezos, o procesador Nios V só pode acceder ao primeiro espazo de memoria de 1 GB do EMIF.

Figura 16. Diagrama de bloques simplificado

Sistema de deseño de plataformas

3 GB restantes

Enderezo do procesador Nios V

O intervalo é para incrustado

NNioios sVV PProrocecsesosor r
M

IP brandas no mesmo sistema.
xanela de 1 GB

Intervalo de enderezos

S

Extensor

M

Só o primeiro GB

da memoria EMIF está conectada a Nios V

EMIF

procesador.

8 GB
S

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 31

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16
2.3.1.4.3. Definición do dispositivo de memoria Linker do extensor de intervalo de enderezos 1. Defina o extensor de intervalo de enderezos (EMIF) como vector de reinicio. De forma alternativa, pode asignar o vector de reinicio do procesador Nios V a outras memorias, como OCRAM ou dispositivos flash.
Figura 17. Múltiples opcións como vector de reinicio
Non obstante, o editor do paquete de soporte da placa (BSP) non pode rexistrar automaticamente o extensor de amplitude de enderezos (EMIF) como unha memoria válida. Dependendo da elección que fagas, verás dúas situacións diferentes, como se mostra nas seguintes figuras. Figura 18. Erro de BSP ao definir o extensor de amplitude de enderezos (EMIF) como vector de reinicio

Manual de deseño de procesadores integrados Nios® V 32

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
Figura 19. Falta EMIF ao definir outras memorias como vector de reinicio

2. Debe engadir manualmente o extensor de intervalo de enderezos (EMIF) mediante Engadir dispositivo de memoria, Engadir rexión de memoria do linker e Engadir asignacións de sección do linker na lapela Script do linker BSP.
3. Siga estes pasos:
a. Determinar a extensión de enderezos do extensor de extensión de enderezos usando o mapa de memoria (o exampO le da seguinte figura usa o rango de extensor de alcance de enderezos de 0x0 a 0x3fff_ffff).
Figura 20. Mapa da memoria

b. Fai clic en Engadir dispositivo de memoria e completa segundo a información do mapa de memoria do teu deseño: i. Nome do dispositivo: emif_ddr4. Nota: Asegúrate de copiar o mesmo nome do mapa de memoria. ii. Enderezo base: 0x0 iii. Tamaño: 0x40000000
c. Fai clic en Engadir para engadir unha nova rexión de memoria do linker:

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 33

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Táboa 22. Engadir rexión de memoria do linker

Pasos

Restablecer vector

emif_ddr4

Outras lembranzas

1

Engade unha nova Rexión de Memoria do Linker chamada reset. Engade unha nova Rexión de Memoria do Linker para o

· Nome da rexión: restablecer

emif_ddr4.

· Tamaño da rexión: 0x20

· Nome da rexión: emif_ddr4

· Dispositivo de memoria: emif_ddr4

· Tamaño da rexión: 0x40000000

· Desprazamento de memoria: 0x0

· Dispositivo de memoria: emif_ddr4

· Desprazamento de memoria: 0x0

2

Engadir unha nova rexión de memoria do linker para o

emif_ddr4 restante.

· Nome da rexión: emif_ddr4

· Tamaño da rexión: 0x3fffffe0

· Dispositivo de memoria: emif_ddr4

· Desprazamento de memoria: 0x20

Figura 21. Rexión do linker ao definir o extensor de alcance de enderezos (EMIF) como vector de reinicio

Figura 22. Rexión do enlazador ao definir outras memorias como vector de reinicio
d. Unha vez engadido o emif_ddr4 ao BSP, podes seleccionalo para calquera sección do linker.
Figura 23. Engadiuse correctamente o extensor de alcance de enderezos (EMIF)

e. Ignore o aviso sobre que o dispositivo de memoria emif_ddr4 non é visible no deseño SOPC.
f. Proceder á xeración de BSP.
Información relacionada Introdución aos métodos de arranque do procesador Nios V na páxina 51

Manual de deseño de procesadores integrados Nios® V 34

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
2.3.2. Memoria non volátil
A memoria non volátil conserva o seu contido cando se corta a alimentación, o que a converte nunha boa opción para almacenar información que o sistema debe recuperar despois dun ciclo de acendido e apagado do sistema. A memoria non volátil adoita almacenar código de arranque do procesador, configuracións de aplicacións persistentes e datos de configuración de Altera FPGA. Aínda que a memoria non volátil ten a vantaxe de...tagde conservar os seus datos cando se corta a alimentación, é moito máis lento en comparación coa memoria volátil e, a miúdo, ten procedementos de escritura e borrado máis complexos. A memoria non volátil tamén adoita ter garantía de que só se poida borrar un número determinado de veces, despois do cal pode fallar.
ExampOs ficheiros de memoria non volátil inclúen todos os tipos de flash, EPROM e EEPROM. Altera recomenda almacenar os fluxos de bits da FPGA de Altera e as imaxes do programa Nios V nunha memoria non volátil e usar flash en serie como dispositivo de arranque para os procesadores Nios V.
Información relacionada
· Guía do usuario da interface flash serie xenérica Altera FPGA IP
· Guía do usuario do cliente de caixa de correo Altera FPGA IP · Guía do usuario da memoria flash do usuario de MAX® 10: memoria flash integrada no chip Altera FPGA IP Core
2.4. Boas prácticas para reloxos e reinicios
É importante comprender como o reloxo do procesador Nios V e o dominio de reinicio interactúan con cada periférico ao que se conecta. Un sistema de procesador Nios V sinxelo comeza cun único dominio de reloxo e pode complicarse cun sistema de dominios de reloxo múltiples cando un dominio de reloxo rápido choca cun dominio de reloxo lento. Debes ter en conta e comprender como se secuencian estes diferentes dominios despois do reinicio e asegurarte de que non haxa ningún problema sutil.
Como práctica recomendada, Altera recomenda colocar o procesador Nios V e a memoria de arranque no mesmo dominio de reloxo. Non liberes o procesador Nios V do reinicio nun dominio de reloxo rápido cando arranca desde unha memoria que reside nun dominio de reloxo moi lento, o que pode causar un erro de busca de instrucións. Pode que necesites algunha secuenciación manual máis alá do que proporciona Platform Designer por defecto e planifica a topoloxía de liberación do reinicio en consecuencia en función do teu caso de uso. Se queres reiniciar o sistema despois de que se arranque e funcione durante un tempo, aplica as mesmas consideracións á secuenciación de reinicio do sistema e ao requisito de inicialización posterior ao reinicio.
2.4.1. Sistema JTAG Reloxo
Especificar as restricións de reloxo en cada sistema de procesador Nios V é unha consideración importante no deseño do sistema e é necesaria para a corrección e o comportamento determinista. O analizador de temporización Quartus Prime realiza unha análise de temporización estática para validar o rendemento de temporización de toda a lóxica do seu deseño mediante unha metodoloxía de restricións, análises e informes estándar da industria.
Exampo 1. Reloxo básico de 100 MHz con ciclo de traballo de 50/50 e J de 16 MHzTAG Reloxo
#***************************************************************** # Crear reloxo de 100 MHz #***************************************************************** create_clock -name {clk} -period 10 [get_ports {clk}] #************************* Crear J de 16 MHzTAG Reloxo #*************************

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 35

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16
create_clock -name {altera_reserved_tck} -period 62.500 [get_ports {altera_reserved_tck}] set_clock_groups -asynchronous -group [get_clocks {altera_reserved_tck}] Información relacionada Libro de receitas do analizador de temporización principal de Quartus
2.4.2. Interface de solicitude de restablecemento
O procesador Nios V inclúe unha función opcional de solicitude de reinicio. A función de solicitude de reinicio consta dos sinais reset_req e reset_req_ack.
Para activar a solicitude de restablecemento en Platform Designer: 1. Inicie o editor de parámetros IP do procesador Nios V. 2. Na opción Usar solicitude de restablecemento, active Engadir interface de solicitude de restablecemento.
opción.
Figura 24. Activar a solicitude de reinicio do procesador Nios V
O sinal reset_req actúa como unha interrupción. Cando se activa reset_req, estás a solicitar un reinicio do núcleo. O núcleo agarda calquera transacción de bus pendente para completar a súa operación. Por exemplo,ampÉ dicir, se hai unha transacción de acceso á memoria pendente, o núcleo agarda unha resposta completa. Do mesmo xeito, o núcleo acepta calquera resposta de instrución pendente pero non emite unha solicitude de instrución despois de recibir o sinal reset_req.
A operación de reinicio consiste no seguinte fluxo: 1. Completar todas as operacións pendentes 2. Baleirar a canle interna 3. Axustar o contador de programa ao vector de reinicio 4. Reiniciar o núcleo Toda a operación de reinicio leva uns cantos ciclos de reloxo. O reset_req debe permanecer activado ata que se active reset_req_ack, o que indica que a operación de reinicio do núcleo se completou correctamente. Se non se fai isto, o estado do núcleo non será determinista.

Manual de deseño de procesadores integrados Nios® V 36

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
2.4.2.1. Casos de uso típicos
· Podes activar o sinal reset_req desde o acendido para evitar que o núcleo do procesador Nios V inicie a execución do programa desde o seu vector de reinicio ata que outros hosts FPGA do sistema inicialicen a memoria de arranque do procesador Nios V. Neste caso, todo o subsistema pode experimentar un reinicio limpo do hardware. O procesador Nios V mantense indefinidamente nun estado de solicitude de reinicio ata que os outros hosts FPGA inicialicen a memoria de arranque do procesador.
· Nun sistema no que sexa necesario reiniciar o núcleo do procesador Nios V sen interromper o resto do sistema, pódese activar o sinal reset_req para deter de forma limpa o funcionamento actual do núcleo e reiniciar o procesador desde o vector de reinicio unha vez que o sistema libere o sinal reset_req_ack.
· Un servidor externo pode usar a interface de solicitude de restablecemento para facilitar a implementación das seguintes tarefas:
— Deter o programa actual do procesador Nios V.
— Cargar un novo programa na memoria de arranque do procesador Nios V.
— Permitir que o procesador comece a executar o novo programa.
Altera recomenda implementar un mecanismo de tempo límite para monitorizar o estado do sinal reset_req_ack. Se o núcleo do procesador Nios V entra nunha condición de estado de espera infinita e se detén por unha razón descoñecida, reset_req_ack non pode activarse indefinidamente. O mecanismo de tempo límite permíteche:
· Definir un período de tempo límite de recuperación e realizar a recuperación do sistema con reinicio a nivel de sistema.
· Realizar un restablecemento a nivel de hardware.
2.4.3. Restablecer o enderezo IP de liberación
Os dispositivos baseados en Altera SDM empregan unha arquitectura paralela baseada en sectores que distribúe a lóxica do núcleo da estrutura en varios sectores. Altera recomenda usar o IP de Altera FPGA de liberación de reinicio como unha das entradas iniciais para o circuíto de reinicio. Os dispositivos baseados en Intel® SDM inclúen os dispositivos Stratix® 10 e Agilex™. Os dispositivos baseados en bloques de control non se ven afectados por este requisito.
Información relacionada
AN 891: Usando o reinicio e a liberación de Altera FPGA IP
2.5. Asignación dun axente predeterminado
O Deseñador de plataformas permíteche especificar un axente predeterminado que actúa como axente predeterminado de resposta a erros. O axente predeterminado que designes proporciona un servizo de resposta a erros para os hosts que tentan accesos non descodificados ao mapa de enderezos.
Os seguintes escenarios desencadean un evento non descodificado:
· Violación do estado de seguridade das transaccións do bus
· Acceso por transaccións a unha rexión de memoria non definida
· Evento de excepción etc.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 37

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Deberíase asignar un axente predeterminado para xestionar estes eventos, nos que a transacción non definida se redirixe ao axente predeterminado e posteriormente responde ao procesador Nios V cunha resposta de erro.
Información relacionada
· Guía do usuario de Quartus Prime Pro Edition: Deseñador de plataforma. Designación dun axente predeterminado
· Guía do usuario de Quartus Prime Pro Edition: Deseñador de plataformas. Resposta a erros escravo Altera FPGA IP
· Github: compoñentes de restablecemento suplementarios para Qsys

2.6. Asignación dun axente UART para a impresión
A impresión é útil para depurar a aplicación de software, así como para monitorizar o estado do sistema. Altera recomenda imprimir información básica como unha mensaxe de inicio, unha mensaxe de erro e o progreso de execución da aplicación de software.
Evite usar a función da biblioteca printf() nas seguintes circunstancias: · A biblioteca printf() fai que a aplicación se deteña se ningún host está a ler a saída.
Isto é aplicable a J.TAG Só UART. · A biblioteca printf() consume grandes cantidades de memoria de programa.

2.6.1. Evitar as paradas por mor da JTAG UART

Táboa 23. Diferenzas entre UART tradicional e JTAG UART

Tipo de UART UART tradicional

Descrición
Transmite datos en serie independentemente de se un host externo está escoitando. Se ningún host le os datos en serie, estes pérdense.

JTAG UART

Escribe os datos transmitidos nun búfer de saída e depende dun host externo para ler do búfer para baleiralo.

O JTAG O controlador UART agarda cando o búfer de saída estea cheo. O JTAG O controlador UART agarda a que un host externo lea o búfer de saída antes de escribir máis datos de transmisión. Este proceso evita a perda de datos de transmisión.
Non obstante, cando non se require a depuración do sistema, como durante a produción, os sistemas integrados despréganse sen un PC anfitrión conectado a J.TAG UART. Se o sistema seleccionase a JTAG UART como axente UART, podería causar o bloqueo do sistema porque non hai ningún host externo conectado.
Para evitar que J se estanqueTAG UART, aplique unha das seguintes opcións:

Manual de deseño de procesadores integrados Nios® V 38

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16

Táboa 24. Prevención de estancamento por JTAG UART

Opcións
Non hai ningunha interface nin controlador UART presentes
Usar outra interface e controlador UART
Preserve JTAG Interface UART (sen controlador)

Durante o desenvolvemento do hardware (no deseñador de plataformas)

Durante o desenvolvemento de software (no editor de paquetes de soporte da placa)

Eliminar JTAG UART do sistema

Configura hal.stdin, hal.stdout e hal.stderr como Ningún.

Substituír JTAG UART con outros soft Configurar hal.stdin, hal.stdout e hal.stderr

IP UART

con outras IP UART suaves.

Preserve JTAG UART no sistema

· Configura hal.stdin, hal.stdout e hal.stderr como None no editor de paquetes de soporte da placa.
· Desactivar JTAG Controlador UART na lapela Controlador BSP.

2.7. JTAG Sinais
O módulo de depuración do procesador Nios V usa o JTAG interface para a descarga de software ELF e a depuración de software. Cando depuras o teu deseño con JTAG interface, a JTAG Os sinais TCK, TMS, TDI e TDO impleméntanse como parte do deseño. Especificación da JTAG As restricións de sinal en cada sistema de procesador Nios V son unha consideración importante no deseño do sistema e son necesarias para a corrección e o comportamento determinista.
Altera recomenda que a frecuencia de reloxo do sistema de calquera deseño sexa polo menos catro veces maior que a JTAG frecuencia de reloxo para garantir que o núcleo de instrumentación no chip (OCI) funcione correctamente.
Información relacionada · Libro de receitas do analizador de temporización principal de Quartus®: JTAG Sinais
Para máis información sobre JTAG directrices sobre restricións de tempo. · KDB: Por que falla a descarga de niosv cun procesador Nios® V/m non canalizado en
JTAG Frecuencia 24 MHz ou 16 MHz?
2.8. Optimización do rendemento do sistema Platform Designer
O deseñador de plataformas proporciona ferramentas para optimizar o rendemento da interconexión do sistema para deseños de FPGA de Altera.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 39

2. Deseño do sistema de hardware do procesador Nios V con software e deseñador de plataformas Quartus Prime
726952 | 2025.07.16
Figura 25. Exemplo de optimizaciónamples

O exampA figura que se mostra amosa os seguintes pasos:
1. Engade Pipeline Bridge para aliviar as rutas críticas colocándoa: a. Entre o Xestor de Instrucións e os seus axentes b. Entre o Xestor de Datos e os seus axentes
2. Aplicar memoria RAM integrada en chip de dous portos, con cada porto dedicado ao xestor de instrucións e ao xestor de datos respectivamente.

Manual de deseño de procesadores integrados Nios® V 40

Enviar comentarios

2. Deseño do sistema de hardware do procesador Nios V con software Quartus Prime e Platform Designer 726952 | 2025.07.16
Consulta as seguintes ligazóns relacionadas, que presentan técnicas para aproveitar as ferramentas dispoñibles e as vantaxes e desvantaxes de cada implementación.
Información relacionada · Guía do usuario de Quartus® Prime Pro Edition: Deseñador de plataformas
Consulte o tema Optimización do rendemento do sistema Platform Designer para obter máis información. · Guía do usuario de Quartus® Prime Standard Edition: Platform Designer Consulte o tema Optimización do rendemento do sistema Platform Designer para obter máis información.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 41

726952 | 2025.07.16/XNUMX/XNUMX Enviar comentarios

3. Deseño do sistema de software do procesador Nios V
Este capítulo describe o fluxo de desenvolvemento de software do procesador Nios V e as ferramentas de software que podes usar para desenvolver o teu sistema de deseño integrado. O contido serve como resumo.view antes de desenvolver un sistema de software para o procesador Nios V.
Figura 26. Fluxo de deseño de software
Comeza

Xerar o BSP no Deseñador de plataformas usando o Editor de BSP

Xerar o BSP usando o shell de comandos de Nios V
Xerar a compilación de CMake da aplicación File Usando o shell de comandos de Nios V

Nota:

Importar o BSP e a compilación de CMake da aplicación File
Construír a aplicación do procesador Nios V usando o
IDE RiscFree para FPGA de Intel

Crea a aplicación do procesador Nios V usando calquera
editor de código fonte da liña de comandos, CMake e Make
comandos
Fin

Altera recomenda que empregues un kit de desenvolvemento de FPGA de Altera ou unha placa prototipo personalizada para o desenvolvemento e a depuración de software. Moitos periféricos e funcións a nivel de sistema só están dispoñibles cando o software se executa nunha placa real.

© Altera Corporation. Altera, o logotipo de Altera, o logotipo "a" e outras marcas de Altera son marcas comerciais de Altera Corporation. Altera resérvase o dereito de realizar cambios en calquera produto e servizo en calquera momento sen previo aviso. Altera non asume ningunha responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito neste documento, agás o acordo expreso por escrito de Altera. Aconséllase aos clientes de Altera que obteñan a última versión das especificacións do dispositivo antes de confiar en calquera información publicada e antes de realizar pedidos de produtos ou servizos. *Outros nomes e marcas poden ser reclamados como propiedade doutros.

3. Deseño do sistema de software do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
3.1. Fluxo de desenvolvemento de software do procesador Nios V
3.1.1. Proxecto do paquete de apoio á xunta directiva
Un proxecto de paquete de soporte de placa Nios V (BSP) é unha biblioteca especializada que contén código de soporte específico do sistema. Un BSP proporciona un entorno de execución de software personalizado para un procesador nun sistema de hardware de procesador Nios V.
O software Quartus Prime proporciona o editor de paquetes de soporte para placas Nios V e as ferramentas de utilidade niosv-bsp para modificar a configuración que controla o comportamento do BSP.
Un BSP contén os seguintes elementos: · Capa de abstracción de hardware · Controladores de dispositivos · Paquetes de software opcionais · Sistema operativo en tempo real opcional
3.1.2. Proxecto de aplicación
Un proxecto de aplicación Nios VC/C++ ten as seguintes características: · Consta dunha colección de código fonte e un ficheiro CMakeLists.txt.
— CMakeLists.txt compila o código fonte e o vincula cun BSP e unha ou máis bibliotecas opcionais para crear un ficheiro .elf file
· Unha das fontes files contén a función main(). · Inclúe código que chama as funcións en bibliotecas e BSP.
Altera fornece a ferramenta de utilidade niosv-app nas ferramentas de utilidade de software Quartus Prime para crear a aplicación CMakeLists.txt e o IDE RiscFree para FPGAs de Altera para modificar o código fonte nun ambiente baseado en Eclipse.
3.2. Ferramentas de desenvolvemento integradas para FPGA de Altera
O procesador Nios V admite as seguintes ferramentas para o desenvolvemento de software: · Interface gráfica de usuario (GUI): ferramentas de desenvolvemento gráfico dispoñibles en
Sistemas operativos (SO) Windows* e Linux*. — Editor de paquetes de soporte para placas Nios V (editor BSP de Nios V) — IDE Ashling RiscFree para FPGAs Altera · Ferramentas de liña de comandos (CLI): ferramentas de desenvolvemento que se inician desde o shell de comandos de Nios V. Cada ferramenta proporciona a súa propia documentación en forma de axuda accesible desde a liña de comandos. Abra o shell de comandos de Nios V e escriba o seguinte comando: –axudar a view o menú Axuda. — Ferramentas de Nios V Utilities — File Ferramentas de conversión de formatos: outras ferramentas de utilidade

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 43

3. Deseño do sistema de software do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Táboa 25. Resumo das tarefas das ferramentas da GUI e da liña de comandos

Tarefa

Ferramenta GUI

Ferramenta de liña de comandos

Creación dun BSP

Editor de Nios V BSP

· No software Quartus Prime Pro Edition: niosv-bsp -c -s=<.qsys file> -t= [OPCIÓNS] configuración.bsp
· No software Quartus Prime Standard Edition: niosv-bsp -c -s=<.sopcinfo file> -t= [OPCIÓNS] configuración.bsp

Xeración dun BSP usando un ficheiro .bsp existente file
Actualización dun BSP

Editor de Nios V BSP Editor de Nios V BSP

niosv-bsp -g [OPCIÓNS] configuración.bsp niosv-bsp -u [OPCIÓNS] configuración.bsp

Examinando un BSP

Editor de Nios V BSP

niosv-bsp -q -E= [OPCIÓNS] configuración.bsp

Creando unha aplicación

aplicación-niosv -a= -b= -s= filedirectorio s> [OPCIÓNS]

Creación dunha biblioteca de usuarios

aplicación-niosv -l= -s= filedirectorio s> -p= [OPCIÓNS]

Modificar unha aplicación Modificar unha biblioteca de usuarios Crear unha aplicación

IDE RiscFree para FPGAs Altera
IDE RiscFree para FPGAs Altera
IDE RiscFree para FPGAs Altera

Calquera editor de código fonte da liña de comandos
Calquera editor de código fonte da liña de comandos
· facer · cmacar

Construíndo unha biblioteca de usuarios

IDE RiscFree para FPGAs Altera

· facer · cmacar

Descarga dunha aplicación ELF
Convertendo o ficheiro .elf file

IDE RiscFree para FPGAs Altera

descarga de niosv
· elf2flash · elf2hex

Información relacionada
Guía do usuario do ambiente de desenvolvemento integrado (IDE) de Ashling RiscFree para FPGAs Altera

3.2.1. Editor de paquetes de compatibilidade coa placa do procesador Nios V
Podes usar o editor BSP do procesador Nios V para realizar as seguintes tarefas: · Crear ou modificar un proxecto BSP do procesador Nios V · Editar a configuración, as rexións do linker e as asignacións de seccións · Seleccionar paquetes de software e controladores de dispositivos.
As capacidades do editor BSP inclúen as capacidades das utilidades niosv-bsp. Calquera proxecto creado no editor BSP tamén se pode crear usando as utilidades da liña de comandos.

Manual de deseño de procesadores integrados Nios® V 44

Enviar comentarios

3. Deseño do sistema de software do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Nota:

Para o software Quartus Prime Standard Edition, consulte AN 980: Nios V Processor Quartus Prime Software Support para obter os pasos para invocar a GUI do editor BSP.

Para iniciar o editor BSP, siga estes pasos: 1. Abra o deseñador de plataformas e navegue ata a File menú.
a. Para abrir unha configuración BSP existente file, prema en Abrir… b. Para crear un novo BSP, prema en Novo BSP… 2. Seleccione a lapela Editor de BSP e introduza os detalles axeitados.

Figura 27. Iniciar o editor BSP

Información relacionada AN 980: Procesador Nios V Soporte de software Quartus Prime
3.2.2. IDE RiscFree para FPGAs Altera
O IDE RiscFree para FPGAs Altera é un IDE baseado en Eclipse para o procesador Nios V. Altera recomenda que desenvolvas o software do procesador Nios V neste IDE polas seguintes razóns: · As características están desenvolvidas e verificadas para ser compatibles con Nios V.
fluxo de compilación do procesador. · Equipado con todas as cadeas de ferramentas e ferramentas de apoio necesarias que che permiten
para iniciar facilmente o desenvolvemento do procesador Nios V.
Información relacionada Guía do usuario do ambiente de desenvolvemento integrado (IDE) de Ashling RiscFree para FPGAs de Altera
3.2.3. Ferramentas de utilidades de Nios V
Podes crear, modificar e compilar programas de Nios V con comandos escritos nunha liña de comandos ou integrados nun script. As ferramentas da liña de comandos de Nios V descritas nesta sección están no Directorio /niosv/bin.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 45

3. Deseño do sistema de software do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Táboa 26. Ferramentas de Nios V Utilities

Ferramentas da liña de comandos

Resumo

aplicación-niosv bsp-niosv descarga-niosv shell-niosv informe-pila-niosv

Para xerar e configurar un proxecto de aplicación.
Para crear ou actualizar a configuración dun BSP file e crear o BSP files. Para descargar o ELF file a un procesador Nios® V.
Para abrir o shell de comandos de Nios V. Para informarche do espazo de memoria restante dispoñible para a túa aplicación .elf para uso de pila ou memoria dinámica.

3.2.4. File Ferramentas de conversión de formatos

File a conversión de formato ás veces é necesaria ao pasar datos dunha utilidade a outra. O file as ferramentas de conversión de formato están no
directorio de instalación do software>directorio/niosv/bin.

Táboa 27. File Ferramentas de conversión de formatos

Ferramentas da liña de comandos elf2flash elf2hex

Resumo Para traducir o ficheiro .elf file a formato .srec para programación de memoria flash. Para traducir o .elf file a formato .hex para a inicialización da memoria.

3.2.5. Outras ferramentas de utilidade

Pode que precises as seguintes ferramentas de liña de comandos ao crear un sistema baseado no procesador Nios V. Estas ferramentas de liña de comandos son proporcionadas por Intel en /quartus/bin ou adquirido de
ferramentas de código aberto.

Táboa 28. Outras ferramentas da liña de comandos

Ferramentas da liña de comandos

Tipo

Resumo

terminal juart

Proporcionado por Intel

Para monitorizar stdout e stderr e para proporcionar entrada a un procesador Nios® V
subsistema a través de stdin. Esta ferramenta só se aplica a JTAG UART IP cando está conectado ao procesador Nios® V.

openocd

Proporcionado por Intel para executar OpenOCD.

xeración-cfg-de-openocd

Proporcionado por Intel · Para xerar a configuración de OpenOCD file. · Para mostrar JTAG índice de dispositivos en cadea.

Manual de deseño de procesadores integrados Nios® V 46

Enviar comentarios

726952 | 2025.07.16/XNUMX/XNUMX Enviar comentarios
4. Configuración do procesador Nios V e solucións de arranque
Podes configurar o procesador Nios V para que arranque e execute software desde diferentes localizacións de memoria. A memoria de arranque é a memoria flash Quad Serial Peripheral Interface (QSPI), a memoria no chip (OCRAM) ou a memoria fortemente acoplada (TCM).
Información relacionada · Condicións do disparador de acendido na páxina 193 · Disparadores de acendido
Para obter máis información sobre os activadores de encendido.
4.1. Introdución
O procesador Nios V admite dous tipos de procesos de arranque: · Execute-in-Place (XIP) mediante a función alt_load() · Programa copiado á RAM mediante a copiadora de arranque. O desenvolvemento de programas integrados de Nios V baséase na capa de abstracción de hardware (HAL). O HAL proporciona un pequeno programa de cargador de arranque (tamén coñecido como copiadora de arranque) que copia as seccións relevantes do linker da memoria de arranque á súa localización de tempo de execución no momento do arranque. Podes especificar as localizacións de tempo de execución da memoria de datos e do programa manipulando a configuración do editor do paquete de soporte da placa (BSP). Esta sección describe: · Copiadora de arranque do procesador Nios V que arranca o teu sistema de procesador Nios V segundo
a selección da memoria de arranque · Opcións de arranque do procesador Nios V e fluxo xeral · Solucións de programación de Nios V para a memoria de arranque seleccionada
4.2. Vincular aplicacións
Ao xerar o proxecto do procesador Nios V, o editor BSP xera dous linkers relacionados files: · linker.x: O comando do linker file que a aplicación xerada faifile usos
para crear o binario .elf file. · linker.h: Contén información sobre a disposición da memoria do linker. Todas as modificacións da configuración do linker que fagas no proxecto BSP afectan ao contido destes dous linkers. files. Cada aplicación de procesador Nios V contén as seguintes seccións de enlace:
© Altera Corporation. Altera, o logotipo de Altera, o logotipo "a" e outras marcas de Altera son marcas comerciais de Altera Corporation. Altera resérvase o dereito de realizar cambios en calquera produto e servizo en calquera momento sen previo aviso. Altera non asume ningunha responsabilidade derivada da aplicación ou uso de calquera información, produto ou servizo descrito neste documento, agás o acordo expreso por escrito de Altera. Aconséllase aos clientes de Altera que obteñan a última versión das especificacións do dispositivo antes de confiar en calquera información publicada e antes de realizar pedidos de produtos ou servizos. *Outros nomes e marcas poden ser reclamados como propiedade doutros.

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Táboa 29. Seccións do enlace

.texto

Seccións de enlace

.rodata

.rwdata

.bss

.montón

.stack

Descricións Código executable. Calquera dato de só lectura empregado na execución do programa. Almacena datos de lectura e escritura empregados na execución do programa. Contén datos estáticos non inicializados. Contén memoria asignada dinamicamente. Almacena parámetros de chamada de funcións e outros datos temporais.

Podes engadir seccións de enlace adicionais ao ficheiro .elf. file para conter código e datos personalizados. Estas seccións de vinculación colócanse en rexións de memoria con nome, definidas para corresponder con dispositivos e enderezos de memoria física. Por defecto, o editor BSP xera automaticamente estas seccións de vinculación. Non obstante, podes controlar as seccións de vinculación para unha aplicación específica.

4.2.1. Comportamento de vinculación
Esta sección describe o comportamento de vinculación predeterminado do editor BSP e como controlalo.

4.2.1.1. Vinculación BSP predeterminada
Durante a configuración de BSP, as ferramentas realizan os seguintes pasos automaticamente:
1. Asignar nomes de rexións de memoria: asignar un nome a cada dispositivo de memoria do sistema e engadir cada nome ao linker file como unha rexión de memoria.
2. Atopar a memoria máis grande: identificar a rexión de memoria de lectura e escritura máis grande no linker file.
3. Asignar seccións do linker: colocar as seccións predeterminadas do linker (.text, .rodata, .rwdata, .bss, .heap e .stack) na rexión de memoria identificada no paso anterior.
4. Escribe files: Escribe o linker.x e o linker.h files.
Normalmente, o esquema de asignación da sección do linker funciona durante o proceso de desenvolvemento de software porque se garante que a aplicación funcione se a memoria é o suficientemente grande.
As regras para o comportamento de vinculación predeterminado están contidas nos scripts Tcl xerados por Altera bsp-set-defaults.tcl e bsp-linker-utils.tcl que se atopan en Directorio /niosv/scripts/bsp-defaults. O comando niosv-bsp invoca estes scripts. Non modifiques estes scripts directamente.

Manual de deseño de procesadores integrados Nios® V 48

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

4.2.1.2. Vinculación BSP configurable
Podes xestionar o comportamento de vinculación predeterminado na lapela Script do vinculador do editor BSP. Manipula o script do vinculador usando os seguintes métodos: · Engadir unha rexión de memoria: Asigna o nome dunha rexión de memoria a un dispositivo de memoria física. · Engadir unha asignación de sección: Asigna o nome dunha sección a unha rexión de memoria. O BSP
O editor permítelle view o mapa de memoria antes e despois de facer cambios.

4.3. Métodos de arranque do procesador Nios V

Hai algúns métodos para arrincar o procesador Nios V en dispositivos Altera FPGA. Os métodos para arrincar o procesador Nios V varían segundo a selección de memoria flash e as familias de dispositivos.

Táboa 30. Memorias flash compatibles coas súas respectivas opcións de arranque

Memorias de arranque compatibles

Dispositivo

Memoria flash integrada no chip (para configuración interna)

Máximo 10 dispositivos (con IP Flash en chip)

Memoria flash QSPI de propósito xeral (só para datos de usuario)

Todos os dispositivos FPGA compatibles (con interface flash serie xenérica FPGA IP)

Configuración QSPI Flash (para configuración de serie activa)

Baseado en bloques de control
dispositivos (con xenéricos
Interface de memoria flash en serie Intel FPGA IP)(2)

Métodos de arranque do procesador Nios V

Localización do tempo de execución da aplicación

Copiadora de arranque

A aplicación do procesador Nios V execútase no lugar desde a memoria flash integrada no chip

Memoria flash integrada no chip (XIP) + OCRAM/RAM externa (para seccións de datos escribibles)

función alt_load()

Aplicación do procesador Nios V copiada da memoria flash integrada na memoria RAM mediante unha copiadora de arranque

OCRAM/RAM externa

Reutilización do cargador de arranque a través de GSFI

A aplicación do procesador Nios V execútase no lugar desde unha memoria flash QSPI de propósito xeral

Memoria flash QSPI de propósito xeral (XIP) + OCRAM/RAM externa (para seccións de datos escribibles)

función alt_load()

Aplicación do procesador Nios V copiada da memoria flash QSPI de propósito xeral á RAM mediante a copiadora de arranque

OCRAM/RAM externa

Cargador de arranque a través de GSFI

A aplicación do procesador Nios V execútase no lugar desde a configuración da memoria flash QSPI

Configuración de memoria flash QSPI (XIP) + OCRAM/RAM externa (para seccións de datos escribibles)

función alt_load()

Aplicación do procesador Nios V copiada da memoria flash QSPI de configuración á RAM mediante a copiadora de arranque

Cargador de arranque OCRAM/RAM externa a través de GSFI (continuación)…

(2) Consulte a lista de dispositivos en AN 980: Soporte de software para o procesador Nios V Quartus Prime.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 49

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Memorias de arranque compatibles
Memoria no chip (OCRAM) Memoria fortemente acoplada (TCM)

Dispositivo
Dispositivos baseados en SDM (con cliente de caixa de correo Intel FPGA IP). (2)
Todos os dispositivos Altera FPGA compatibles (2)
Todos os dispositivos Altera FPGA compatibles (2)

Métodos de arranque do procesador Nios V
Aplicación do procesador Nios V copiada da memoria flash QSPI de configuración á RAM mediante a copiadora de arranque
A aplicación do procesador Nios V execútase no lugar desde OCRAM
Aplicación do procesador Nios V que se executa no lugar desde TCM

Localización do tempo de execución da aplicación

Copiadora de arranque

Cargador de arranque OCRAM/RAM externa a través de SDM

OCRAM

función alt_load()

TCM de instrucións (XIP) Ningunha + TCM de datos (para seccións de datos escribibles)

Figura 28. Fluxo de arranque do procesador Nios V

Restablecer

O procesador salta para reiniciar o vector (inicio do código de arranque)

O código da aplicación pode copiarse noutra localización de memoria (dependendo das opcións de arranque)
O código de arranque inicializa o procesador

Dependendo das opcións de arranque, o código de arranque pode copiar os valores iniciais dos datos/código a outro espazo de memoria (alt_load)
O código de arranque inicializa o código da aplicación e o espazo de memoria de datos
O código de arranque inicializa todos os periféricos do sistema con controladores HAL (alt_main)
Entrada á principal
Información relacionada · Guía do usuario da interface flash serie xenérica de Altera FPGA IP
Manual de deseño de procesadores integrados Nios® V 50

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
· Guía do usuario do cliente de caixa de correo Altera FPGA IP · AN 980: Procesador Nios V Soporte de software Quartus Prime
4.4. Introdución aos métodos de arranque do procesador Nios V
Os sistemas con procesador Nios V requiren que as imaxes de software estean configuradas na memoria do sistema antes de que o procesador poida comezar a executar o programa da aplicación. Consulte as seccións do linker para ver as seccións predeterminadas do linker.
O editor BSP xera un script de vinculación que realiza as seguintes funcións: · Garante que o software do procesador estea vinculado de acordo coa configuración do vinculador
do editor BSP e determina onde reside o software na memoria. · Posiciona a rexión de código do procesador no compoñente de memoria segundo o
compoñentes de memoria asignados.
A seguinte sección describe brevemente os métodos de arranque do procesador Nios V dispoñibles.
4.4.1. Execución in situ da aplicación do procesador Nios V desde a memoria flash de arranque
Altera deseñou os controladores flash de tal xeito que o espazo de enderezos da memoria flash de arranque sexa inmediatamente accesible para o procesador Nios V ao reiniciar o sistema, sen necesidade de inicializar o controlador de memoria nin os dispositivos de memoria. Isto permite que o procesador Nios V execute código de aplicación almacenado nos dispositivos de arranque directamente sen usar unha copiadora de arranque para copiar o código a outro tipo de memoria. Os controladores flash son: · Memoria flash integrada no chip con IP de memoria flash integrada no chip (só no dispositivo MAX® 10) · Memoria flash QSPI de propósito xeral con IP de interface de memoria flash serie xenérica · Memoria flash QSPI de configuración con IP de interface de memoria flash serie xenérica (excepto MAX 10
dispositivos)
Cando a aplicación do procesador Nios V se executa no lugar desde a memoria flash de arranque, o editor BSP realiza as seguintes funcións: · Define as seccións do linker .text na rexión da memoria flash de arranque. · Define as seccións do linker .bss, .rodata, .rwdata, .stack e .heap na RAM
rexión de memoria. Debe activar a función alt_load() na configuración do BSP para copiar as seccións de datos (.rodata, .rwdata, .exceptions) á RAM tras o reinicio do sistema. A sección de código (.text) permanece na rexión da memoria flash de arranque.
Información relacionada · Guía do usuario da interface flash serie xenérica de Altera FPGA IP · Guía do usuario da memoria flash de Altera MAX 10
4.4.1.1. alt_load()
Podes activar a función alt_load() no código HAL usando o editor BSP.
Cando se usa no fluxo de arranque de execución no lugar, a función alt_load() realiza as seguintes tarefas:

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 51

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

· Funciona como unha mini copiadora de arranque que copia as seccións de memoria á RAM segundo a configuración do BSP.
· Copia as seccións de datos (.rodata, .rwdata, .exceptions) á RAM, pero non as seccións de código (.text). A sección de código (.text) é unha sección de só lectura e permanece na rexión de memoria flash de arranque. Esta partición axuda a minimizar o uso da RAM, pero pode limitar o rendemento da execución do código porque os accesos á memoria flash son máis lentos que os accesos á RAM integrada no chip.

A seguinte táboa enumera a configuración e as funcións do editor BSP:

Táboa 31. Configuración do editor BSP
Configuración do editor BSP hal.linker.enable_alt_load hal.linker.enable_alt_load_copy_rodata hal.linker.enable_alt_load_copy_rwdata hal.linker.enable_alt_load_copy_exceptions

Función Activa a función alt_load(). alt_load() copia a sección .rodata á RAM. alt_load() copia a sección .rwdata á RAM. alt_load() copia a sección .exceptions á RAM.

4.4.2. Aplicación do procesador Nios V copiada da memoria flash de arranque á RAM mediante a copiadora de arranque
O procesador Nios V e o HAL inclúen unha copiadora de arranque que proporciona funcionalidade suficiente para a maioría das aplicacións do procesador Nios V e é cómoda de implementar co fluxo de desenvolvemento de software de Nios V.
Cando a aplicación usa unha copiadora de arranque, define todas as seccións do linker (.text, .heap, .rwdata, .rodata, .bss, .stack) nunha RAM interna ou externa. Empregar a copiadora de arranque para copiar unha aplicación do procesador Nios V desde a memoria flash de arranque á RAM interna ou externa para a súa execución axuda a mellorar o rendemento da execución.
Para esta opción de arranque, o procesador Nios V comeza a executar o software de copia de arranque ao reiniciar o sistema. O software copia a aplicación da memoria flash de arranque á RAM interna ou externa. Unha vez finalizado o proceso, o procesador Nios V transfire o control do programa á aplicación.

Nota:

Se a copiadora de arranque está en flash, non é necesario chamar a función alt_load() porque ambas serven para o mesmo propósito.

4.4.2.1. Cargador de arranque do procesador Nios V a través da interface flash serie xenérica
O Bootloader vía GSFI é o copiador de arranque do procesador Nios V que admite memoria flash QSPI en dispositivos baseados en bloques de control. O Bootloader vía GSFI inclúe as seguintes características:
· Localiza a aplicación de software na memoria non volátil.
· Desempaqueta e copia a imaxe da aplicación de software na RAM.
· Cambia automaticamente a execución do procesador ao código da aplicación na RAM despois de que se complete a copia.

Manual de deseño de procesadores integrados Nios® V 52

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

A imaxe de arranque está situada xusto despois da copiadora de arranque. Debes asegurarte de que o desprazamento de reinicio do procesador Nios V apunte ao inicio da copiadora de arranque. A Figura: Mapa de memoria para flash QSPI con cargador de arranque a través de GSFI. O mapa de memoria para flash QSPI con cargador de arranque a través de GSFI mostra o mapa de memoria flash para flash QSPI cando se usa unha copiadora de arranque. Este mapa de memoria asume que a memoria flash almacena a imaxe FPGA e o software da aplicación.

Táboa 32. Cargador de arranque a través de GSFI para o núcleo do procesador Nios V

Núcleo do procesador Nios V
Procesador Nios V/m

Cargador de arranque a través de GSFI File Localización
/niosv/compoñentes/cargador de arranque/ niosv_m_cargador de arranque.srec

Procesador Nios V/g

/niosv/compoñentes/cargador de arranque/ niosv_g_cargador de arranque.srec

Figura 29. Mapa de memoria para QSPI Flash con Bootloader a través de GSFI

Datos do cliente (*.hex)

Código de aplicación

Nota:

Restablecer desprazamento vectorial

Copiadora de arranque

0x01E00000

Imaxe FPGA (*.sof)

0x00000000

1. Ao comezo do mapa de memoria está a imaxe da FPGA seguida dos teus datos, que consisten na copiadora de arranque e no código da aplicación.
2. Debes definir o desprazamento de reinicio do procesador Nios V no Deseñador de plataformas e apuntalo ao inicio da copiadora de arranque.
3. Descoñécese o tamaño da imaxe da FPGA. Só se pode coñecer o tamaño exacto despois da compilación do proxecto Quartus Prime. Debe determinar un límite superior para o tamaño da imaxe da FPGA de Altera. Por exemploampÉ dicir, se se estima que o tamaño da imaxe da FPGA é inferior a 0x01E00000, define o Desprazamento de reinicio en 0x01E00000 no Deseñador de plataformas, que tamén é o inicio da copiadora de arranque.
4. Unha boa práctica de deseño consiste en establecer o desprazamento do vector de reinicio no límite dun sector flash para garantir que non se produza un borrado parcial da imaxe da FPGA no caso de que se actualice a aplicación de software.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 53

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

4.4.2.2. Cargador de arranque do procesador Nios V a través do Xestor de dispositivos seguros
O cargador de arranque a través do Xestor de dispositivos seguros (SDM) é un código de aplicación HAL que utiliza o controlador HAL IP de Mailbox Client Altera FPGA para o arranque do procesador. Altera recomenda esta aplicación de cargador de arranque ao usar a memoria flash QSPI de configuración en dispositivos baseados en SDM para arrincar o procesador Nios V.
Ao reiniciar o sistema, o procesador Nios V primeiro inicia o cargador de arranque a través de SDM desde unha pequena memoria integrada no chip e executa o cargador de arranque a través de SDM para comunicarse coa memoria flash QSPI de configuración usando o enderezo IP do cliente da caixa de correo.
O cargador de arranque a través de SDM realiza as seguintes tarefas: · Localiza o software Nios V na memoria flash QSPI de configuración. · Copia o software Nios V na RAM integrada no chip ou na RAM externa. · Cambia a execución do procesador ao software Nios V dentro da RAM integrada no chip ou
memoria RAM externa.
Unha vez finalizado o proceso, o cargador de arranque, a través de SDM, transfire o control do programa á aplicación do usuario. Altera recomenda a organización da memoria tal e como se describe en Organización da memoria para o cargador de arranque a través de SDM.
Figura 30. Cargador de arranque a través do fluxo do proceso de SDM

Configuración

Flash

2

Software Nios V

SDM

Dispositivo FPGA baseado en SDM

IP do cliente da caixa de correo

Lóxica FPGA Nios V

4 RAM externa
Software Nios V

No chip 4

EMIF

RAM

Memoria no chip

IP

Nios V

1

Software

Cargador de arranque a través de SDM

3

3

1. O procesador Nios V executa o cargador de arranque mediante SDM desde a memoria integrada no chip.
2. O cargador de arranque comunícase coa memoria flash de configuración e localiza o software Nios V a través de SDM.
3. O cargador de arranque a través de SDM copia o software Nios V da memoria flash de configuración á RAM do chip ou á RAM externa.
4. O cargador de arranque a través de SDM cambia a execución do procesador Nios V ao software Nios V na RAM do chip/RAM externa.

4.4.3. Aplicación do procesador Nios V executada no lugar desde OCRAM
Neste método, o enderezo de reinicio do procesador Nios V establécese no enderezo base da memoria no chip (OCRAM). O binario da aplicación (.hex) file cárgase na OCRAM cando se configura a FPGA, despois de que o deseño do hardware se compile no software Quartus Prime. Unha vez que o procesador Nios V se reinicia, a aplicación comeza a executarse e ramifícase ata o punto de entrada.

Manual de deseño de procesadores integrados Nios® V 54

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Nota:

· A execución no lugar desde OCRAM non require unha copiadora de arranque porque a aplicación do procesador Nios V xa está instalada no momento do reinicio do sistema.
· Altera recomenda activar alt_load() para este método de arranque para que o software integrado se comporte de xeito idéntico ao reiniciar sen reconfigurar a imaxe do dispositivo FPGA.
· Debes activar a función alt_load() na configuración do BSP para copiar a sección .rwdata ao reiniciar o sistema. Neste método, os valores iniciais das variables inicializadas almacénanse por separado das variables correspondentes para evitar que se sobrescriban na execución do programa.

4.4.4. Aplicación do procesador Nios V executada no lugar desde TCM
O método de execución no lugar define o enderezo de reinicio do procesador Nios V no enderezo base da memoria fortemente acoplada (TCM). O binario da aplicación (.hex) file cárgase no TCM cando se configura a FPGA despois de compilar o deseño do hardware no software Quartus Prime. Unha vez que o procesador Nios V se reinicia, a aplicación comeza a executarse e ramifícase ata o punto de entrada.

Nota:

A execución no lugar desde TCM non require unha copiadora de arranque porque a aplicación do procesador Nios V xa está instalada no reinicio do sistema.

4.5. Arranque do procesador Nios V desde a memoria flash integrada no chip (UFM)

O arranque e a execución de software do procesador Nios V desde a memoria flash integrada no chip (UFM) están dispoñibles nos dispositivos FPGA MAX 10. O procesador Nios V admite as dúas seguintes opcións de arranque usando a memoria flash integrada no chip no modo de configuración interna:
· A aplicación do procesador Nios V execútase in situ desde a memoria flash integrada no chip.
· A aplicación do procesador Nios V cópiase da memoria flash integrada no chip á RAM mediante unha copiadora de arranque.

Táboa 33. Memorias flash compatibles coas súas respectivas opcións de arranque

Memorias de arranque compatibles

Métodos de arranque de Nios V

Localización do tempo de execución da aplicación

Copiadora de arranque

Só 10 dispositivos MÁX (con IP Flash OnChip)

A aplicación do procesador Nios V execútase no lugar desde a memoria flash integrada no chip
Aplicación do procesador Nios V copiada da memoria flash integrada na memoria RAM mediante unha copiadora de arranque

Memoria flash integrada no chip (XIP) + OCRAM/RAM externa (para seccións de datos escribibles)

función alt_load()

OCRAM/ RAM externa

Reutilización do cargador de arranque a través de GSFI

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 55

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Figura 31.

Deseño, configuración e fluxo de arranque
Deseño · Crea o teu proxecto baseado no procesador Nios V usando Platform Designer. · Asegúrate de que haxa RAM externa ou RAM no chip no deseño do sistema.

Configuración e compilación de FPGA
· Define o mesmo modo de configuración interna en On-chip Flash IP en Platform Designer e no software Quartus Prime. · Define o axente de reinicio do procesador Nios V en On-chip Flash. · Escolle o teu método de inicialización UFM preferido. · Xera o teu deseño en Platform Designer. · Compila o teu proxecto no software Quartus Prime.

Proxecto BSP de aplicación de usuario · Crear un BSP HAL para o procesador Nios V baseado en .sopcinfo file creado por Platform Designer. · Editar a configuración BSP do procesador Nios V e o script do linker no editor BSP. · Xerar un proxecto BSP.
Proxecto APP de aplicación de usuario · Desenvolver código de aplicación do procesador Nios V. · Compilar a aplicación do procesador Nios V e xerar a aplicación do procesador Nios V (.hex) file. · Recompila o teu proxecto no software Quartus Prime se marcas a opción Inicializar contido da memoria en Intel FPGA On-Chip Flash IP.

Programación FileConversión, descarga e execución · Xerar o ficheiro flash .pof integrado no chip file usando a programación Convert Filefunción do software Quartus Prime.
· Programar o ficheiro .pof file no teu dispositivo MAX 10. · Reinicia o hardware.
4.5.1. Descrición da memoria flash integrada nun chip MAX 10 FPGA
Os dispositivos MAX 10 FPGA conteñen memoria flash integrada no chip que está segmentada en dúas partes: · Memoria flash de configuración (CFM): almacena os datos de configuración do hardware para
MÁX. 10 FPGA. · Memoria flash de usuario (UFM): almacena os datos do usuario ou as aplicacións de software.
A arquitectura UFM do dispositivo MAX 10 é unha combinación de IP brandas e duras. Só se pode acceder á UFM usando o núcleo IP Flash no chip do software Quartus Prime.
O núcleo IP Flash integrado admite as seguintes características: · Accesos de lectura ou escritura aos sectores UFM e CFM (se están activados en Platform Designer)
usando a interface escrava de control e datos de Avalon MM. · Admite o borrado de páxinas, o borrado de sectores e a escritura de sectores. · Modelo de simulación para accesos de lectura/escritura UFM usando varias ferramentas de simulación EDA.

Manual de deseño de procesadores integrados Nios® V 56

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Táboa 34. Rexións flash integradas en chip en dispositivos FPGA MAX 10

Rexións flash

Funcionalidade

Configuración da memoria flash (sectores CFM0-2)

Configuración FPGA file almacenamento

Memoria flash de usuario (sectores UFM0-1)

Aplicación do procesador Nios V e datos do usuario

Os dispositivos FPGA MAX 10 admiten varios modos de configuración e algúns destes modos permiten que CFM1 e CFM2 se utilicen como unha rexión UFM adicional. A seguinte táboa mostra a localización de almacenamento das imaxes de configuración de FPGA baseadas nos modos de configuración de FPGA MAX 10.

Táboa 35. Localización de almacenamento das imaxes de configuración de FPGA

Modo de configuración Imaxes comprimidas duplas

Imaxe comprimida CFM2 2

CFM1

Imaxe comprimida CFM0 1

Imaxe única sen comprimir

UFM virtual

Imaxe sen comprimir

Imaxe única sen comprimir con inicialización da memoria

Imaxe sen comprimir (con contido de memoria no chip preinicializado)

Imaxe comprimida única con inicialización da memoria Imaxe comprimida (con contido de memoria no chip preinicializado)

Imaxe comprimida única

UFM virtual

Imaxe comprimida

Debes usar o núcleo IP flash no chip para acceder á memoria flash en FPGAs MAX 10. Podes crear unha instancia e conectar o IP flash no chip ao software Quartus Prime. O procesador de núcleo flexible Nios V usa as interconexións de Platform Designer para comunicarse co IP flash no chip.
Figura 32. Conexión entre o IP Flash integrado e o procesador Nios V

Nota:

Asegúrate de que o porto CSR da memoria Flash integrada no chip estea conectado ao xestor de datos do procesador Nios V para permitir que o procesador controle as operacións de escritura e borrado.
O núcleo IP da memoria flash integrada no chip pode proporcionar acceso a cinco sectores da memoria flash: UFM0, UFM1, CFM0, CFM1 e CFM2.
Información importante sobre os sectores UFM e CFM: · Os sectores CFM están destinados ao almacenamento de datos de configuración (fluxo de bits) (*.pof).
· Os datos do usuario pódense almacenar nos sectores UFM e poden ocultarse se se seleccionan os axustes correctos na ferramenta Deseñador de plataformas.
· Algúns dispositivos non teñen un sector UFM1. Podes consultar a táboa: Tamaño do sector UFM e CFM para ver os sectores dispoñibles en cada dispositivo MAX 10 FPGA individual.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 57

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

· Podes configurar CFM2 como un UFM virtual seleccionando o modo de configuración Imaxe única sen comprimir.
· Podes configurar CFM2 e CFM1 como un UFM virtual seleccionando o modo de configuración Imaxe única sen comprimir.
· O tamaño de cada sector varía segundo os dispositivos MAX 10 FPGA seleccionados.

Táboa 36.

Tamaño dos sectores UFM e CFM
Esta táboa enumera as dimensións das matrices UFM e CFM.

Dispositivo

Páxinas por sector

UFM1 UFM0 CFM2 CFM1 CFM0

Tamaño da páxina (Kbit)

Máximo Usuario
Tamaño da memoria flash (Kbit) (3)

Tamaño total da memoria de configuración (Kbit)

10M02 3

3

0

0

34 16

96

544

10M04 0

8

41 29 70 16

1248

2240

10M08 8

8

41 29 70 16

1376

2240

10M16 4

4

38 28 66 32

2368

4224

10M25 4

4

52 40 92 32

3200

5888

10M40 4

4

48 36 84 64

5888

10752

10M50 4

4

48 36 84 64

5888

10752

Tamaño da OCRAM (Kbit)
108 189 378 549 675 1260 1638

Información relacionada · Guía do usuario de configuración de FPGA MAX 10 · Guía do usuario de memoria flash de Altera MAX 10

4.5.2. Aplicación do procesador Nios V executada no lugar desde UFM

A solución Execute-In-Place desde UFM é axeitada para aplicacións de procesador Nios V que requiren un uso limitado de memoria no chip. A función alt_load() funciona como unha mini copiadora de arranque que copia as seccións de datos (.rodata, .rwdata ou .exceptions) da memoria de arranque á RAM segundo a configuración BSP. A sección de código (.text),
que é unha sección de só lectura, permanece na rexión de memoria flash integrada no chip MAX 10. Esta configuración minimiza o uso da RAM, pero pode limitar o rendemento da execución de código, xa que o acceso á memoria flash é máis lento que á RAM integrada no chip.

A aplicación do procesador Nios V está programada no sector UFM. O vector de reinicio do procesador Nios V apunta ao enderezo base UFM para executar código desde o UFM despois de que o sistema se reinicie.

Se estás a usar o depurador de nivel de código fonte para depurar a túa aplicación, debes usar un punto de interrupción de hardware. Isto débese a que o UFM non admite o acceso aleatorio á memoria, que é necesario para a depuración de puntos de interrupción suaves.

Nota:

Non podes borrar nin escribir UFM mentres realizas a execución no lugar no MAX 10. Cambia ao método de copiadora de arranque se necesitas borrar ou escribir o UFM.

(3) O valor máximo posible, que depende do modo de configuración que selecciones.

Manual de deseño de procesadores integrados Nios® V 58

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Figura 33. Aplicación XIP do procesador Nios V de UFM

Máximo 10 dispositivos

.POF
Nios V Hardware .SOF
Software Nios V .HEX

Programador de Quartus

Flash no chip

CFM

Nios V Hardware

UFM

Software Nios V

Configuración interna

IP flash no chip

Lóxica FPGA
Procesador Nios V

RAM no chip

Externo

RAM

EMIF

IP

4.5.2.1. Fluxo de deseño de hardware
A seguinte sección describe un método paso a paso para construír un sistema de arranque para unha aplicación de procesador Nios V desde Flash no chip. O exemploampO seguinte está construído usando o dispositivo MAX 10.
Configuración do compoñente IP
1. Crea o teu proxecto de procesador Nios V usando Quartus Prime e Platform Designer. 2. Asegúrate de que teñas RAM externa ou memoria integrada no chip (OCRAM) engadida á túa plataforma.
Sistema de deseño.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 59

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Figura 34. ExampConexións IP en Platform Designer para o arranque de Nios V desde OnChip Flash (UFM)

3. No editor de parámetros IP da memoria flash integrada no chip, defina o Modo de configuración nun dos seguintes, segundo as súas preferencias de deseño: · Imaxe única sen comprimir · Imaxe única comprimida · Imaxe única sen comprimir con inicialización da memoria · Imaxe única comprimida con inicialización da memoria
Para obter máis información sobre as imaxes con compresión dual, consulte a Guía do usuario de configuración de MAX 10 FPGA: actualización remota do sistema.

Nota:

Debe asignar acceso oculto a todas as rexións CFM na dirección IP flash integrada no chip.

Figura 35. Selección do modo de configuración no editor de parámetros de flash integrado no chip

Configuración de IP da memoria flash integrada no chip: inicialización de UFM Podes escoller un dos seguintes métodos segundo as túas preferencias:

Manual de deseño de procesadores integrados Nios® V 60

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Nota:

Os pasos dos seguintes subcapítulos (Fluxo de deseño de software e programación) dependen da selección que fagas aquí.

· Método 1: Inicializar os datos UFM no SOF durante a compilación
Quartus Prime inclúe os datos de inicialización da UFM no SOF durante a compilación. É necesaria a recompilación da SOF se hai cambios nos datos da UFM.
1. Marcar Inicializar contido flash e Activar inicialización non predeterminada file.

Figura 36. Inicialización do contido de Flash e activación da inicialización non predeterminada File

2. Especifique a ruta do ficheiro .hex xerado file (do comando elf2hex) no hexadecimal ou mif creado polo usuario file.
Figura 37. Engadindo o .hex File Camiño

· Método 2: Combinar datos UFM cun SOF compilado durante a xeración de POF
Os datos da UFM combínanse co SOF compilado ao converter a programación files. Non precisa recompilar o SOF, mesmo se os datos da UFM cambian. Durante o desenvolvemento, non ten que recompilar o SOF. files para cambios na aplicación. Alterarecommenda este método para desenvolvedores de aplicacións.
1. Desmarque Inicializar contido flash..
Figura 38. Inicialización de contido Flash cunha inicialización non predeterminada File

Restablecer a configuración do axente para o método de execución no lugar do procesador Nios V
1. No editor de parámetros do procesador Nios V, configure o Axente de reinicio en Flash no chip.
Figura 39. Configuración do editor de parámetros do procesador Nios V co axente de reinicio configurado en Flash no chip

2. Fai clic en Xerar HDL cando apareza a caixa de diálogo Xeración. 3. Especifica a saída file opcións de xeración e faga clic en Xerar.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 61

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Quartus Prime Software Settings 1. In the Quartus Prime software, click Assignments Device Device and Pin
Options Configuration. Set the Configuration mode according to the setting in On-Chip Flash IP. Figure 40. Configuration Mode Selection in Quartus Prime Software

2. Fai clic en Aceptar para saír da xanela Opcións de dispositivos e PIN.
3. Fai clic en Aceptar para saír da xanela Dispositivo.
4. Click Processing Start Compilation to compile your project and generate the .sof file.

Nota:

Se o axuste do modo de configuración no software Quartus Prime e no editor de parámetros de Platform Designer é diferente, o proxecto de Quartus Prime falla e mostra a seguinte mensaxe de erro.

Figura 41.

Mensaxe de erro para a configuración diferente Erro de configuración do modo (14740): O modo de configuración no átomo "q_sys:q_sys_inst| altera_onchip_flash:onchip_flash_1|altera_onchip_flash_block: altera_onchip_flash_block|ufm_block" non coincide coa configuración do proxecto. Actualice e rexenere o sistema Qsys para que coincida coa configuración do proxecto.

Información relacionada Guía do usuario de configuración de FPGA MAX 10

4.5.2.2. Fluxo de deseño de software
Esta sección proporciona o fluxo de deseño para xerar e compilar o proxecto de software do procesador Nios V. Para garantir un fluxo de compilación optimizado, recoméndase que crees unha árbore de directorios similar no teu proxecto de deseño. O seguinte fluxo de deseño de software baséase nesta árbore de directorios.
Para crear a árbore de directorios do proxecto de software, siga estes pasos: 1. No cartafol do seu proxecto de deseño, cree un cartafol chamado software. 2. No cartafol de software, cree dous cartafoles chamados hal_app e hal_bsp.
Figura 42. Árbore de directorios de proxectos de software

Manual de deseño de procesadores integrados Nios® V 62

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Creación do proxecto BSP da aplicación
Para iniciar o editor BSP, siga estes pasos: 1. Introduza o shell de comandos de Nios V. 2. Invoque o editor BSP co comando niosv-bsp-editor. 3. No editor BSP, faga clic en File Novo BSP para iniciar o teu proxecto BSP. 4. Configura os seguintes axustes:
· Información do SOPC File nome: Proporcione o SOPCINFO file (.sopcinfo). · Nome da CPU: Seleccione o procesador Nios V. · Sistema operativo: Seleccione o sistema operativo do procesador Nios V. · Versión: Déixeo por defecto. · Directorio de destino BSP: Seleccione a ruta do directorio do proxecto BSP. Pode
predefinilo en /software/hal_bsp activando Usar localizacións predeterminadas. · Configuración de BSP File nome: Escriba o nome da configuración de BSP File. · Additional Tcl scripts: Provide a BSP Tcl script by enabling Enable Additional Tcl script. 5. Click OK.
Figure 43. Configure New BSP

Configuring the BSP Editor and Generating the BSP Project
You can define the processor’s exception vector either in On-Chip Memory (OCRAM) or On-Chip Flash based on your design preference. Setting the exception vector memory to OCRAM/External RAM is recommended to make the interrupt processing faster. 1. Go to Main Settings Advanced hal.linker. 2. If you select On-Chip Flash as exception vector,
a. Enable the following settings:

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 63

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
· allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata Figure 44. Advanced.hal.linker Settings

b. Click on the Linker Script tab in the BSP Editor. c. Set the .exceptions and .text regions in the Linker Section Name to
On-Chip Flash. d. Set the rest of the regions in the Linker Section Name list to the On-Chip
Memory (OCRAM) or external RAM.
Figure 45. Linker Region Settings (Exception Vector Memory: On-Chip Flash)

3. If you select OCRAM/External RAM as exception vector, a. Enable the following settings: · allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata · enable_alt_load_copy_exception
Figure 46. Linker Region Settings (Exception Vector Memory: OCRAM/External RAM)

b. Click on the Linker Script tab in the BSP Editor.
c. Set the.text regions in the Linker Section Name to On-Chip Flash.
d. Set the rest of the regions in the Linker Section Name list to the On-Chip Memory (OCRAM) or external RAM.

Manual de deseño de procesadores integrados Nios® V 64

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
Figure 47. Linker Region Settings (Exception Vector Memory: OCRAM)
4. Click Generate to generate the BSP project. Generating the User Application Project File 1. Navigate to the software/hal_app folder and create your application source
code. 2. Launch the Nios V Command Shell. 3. Execute the command below to generate the application CMakeLists.txt.
niosv-app –app-dir=software/hal_app –bsp-dir=software/hal_bsp –srcs=software/hal_app/<user application>
Building the User Application Project You can choose to build the user application project using Ashling RiscFree IDE for Altera FPGAs or through the command line interface (CLI). If you prefer using CLI, you can build the user application using the following command: cmake -G “Unix Makefiles” -B software/hal_app/build -S software/hal_app make -C software/hal_app/build
The application (.elf) file is created in software/hal_app/build folder. Generating the HEX File You must generate a .hex file from your application .elf file, so you can create a .pof file suitable for programming the devices. 1. Launch the Nios V Command Shell. 2. For Nios V processor application boot from On-Chip Flash, use the following
command line to convert the ELF to HEX for your application. This command creates the user application (onchip_flash.hex) file. elf2hex software/hal_app/build/<user_application>.elf -o onchip_flash.hex
-b <base address of On-Chip Flash UFM region> -w 8 -e <end address of On-Chip Flash UFM region> 3. Recompile the hardware design if you check Initialize memory content option in On-Chip Flash IP (Method 1). This is to include the software data (.HEX) in the SOF file.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 65

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
4.5.2.3. Programming 1. In Quartus Prime, click File Convertir programación Files. 2. Under Output programming file, choose Programmer Object File (.pof) as Programming file type. 3. Set Mode to Internal Configuration.
Figure 48. Convert Programming File Configuración
4. Click Options/Boot info…, the MAX 10 Device Options window appears. 5. Based on the Initialize flash content settings in the On-chip Flash IP, perform
one of the following steps: · If Initialize flash content is checked (Method 1), the UFM initialization data
was included in the SOF duringQuartus Prime compilation. — Select Page_0 for UFM source: option. Click OK and proceed to the
next. Figure 49. Setting Page_0 for UFM Source if Initialize Flash Content is Checked

Manual de deseño de procesadores integrados Nios® V 66

Enviar comentarios

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX
· If Initialize flash content is not checked (Method 2), choose Load memory file for the UFM source option. Browse to the generated On-chip Flash HEX file (onchip_flash.hex) in the File path: and click OK. This step adds UFM data separately to the SOF file during the programming file conversión.
Figure 50. Setting Load Memory File for UFM Source if Initialize Flash Content is Not Checked

6. In the Convert Programming File dialog box, at the Input files to convert section, click Add File… and point to the generated Quartus Prime .sof file.
Figure 51. Input Files to Convert in Convert Programming Files for Single Image Mode

7. Click Generate to create the .pof file. 8. Program the .pof file into your MAX 10 device. 9. Power cycle your hardware.

4.5.3. Nios V Processor Application Copied from UFM to RAM using Boot Copier

Altera recommends this solution for MAX 10 FPGA Nios V processor system designs where multiple iterations of application software development and high system performance are required. The boot copier is located within the UFM at an offset that is the same address as the reset vector. The Nios V application is located next to the boot copier.

For this boot option, the Nios V processor starts executing the boot copier upon system reset to copy the application from the UFM sector to the OCRAM or external RAM. Once copying is complete, the Nios V processor transfers the program control over to the application.

Nota:

The applied boot copier is the same as the Bootloader via GSFI.

Enviar comentarios

Manual de deseño de procesadores integrados Nios® V 67

4. Solucións de configuración e arranque do procesador Nios V 726952 | 2025.07.16/XNUMX/XNUMX

Figure 52. Nios V Application Copied from UFM to RAM using Boot Copier

Máximo 10 dispositivos

.POF
Nios V Hardware .SOF
Software Nios V .HEX
Bootloader .SREC

Programador de Quartus

RAM externa
Software Nios V

Flash no chip

CFM

Nios V Hardwa

Documentos/Recursos

altera Nios V Embedded Processor [pdfGuía do usuario
Nios V, Nios V-m, Nios V-g, Nios V-c, Nios V Embedded Processor, Nios V, Embedded Processor, Processor

Referencias

Deixa un comentario

O teu enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados *