altera Nios V Embedded Processor

Specificazioni

  • Nome di u produttu: Processore Nios V
  • Software Compatibility: Quartus Prime Software and Platform Designer
  • Tipu di processore: Altera FPGA
  • Sistema di memoria: memoria volatile è non volatile
  • Interfaccia di cumunicazione: Agente 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. Integrate u sistema in u prugettu Quartus Prime.
  3. Design memory system including volatile and non-volatile memory.
  4. Implementà l'orologi è resetta e migliori pratiche.
  5. Assignà agenti predefiniti è UART per un funziunamentu efficiente.

Nios V Processor Software System Design

Per cuncepisce u sistema software per u processore Nios V:

  1. Segui u flussu di sviluppu di software per u processore Nios V.
  2. Create Board Support Package Project and Application Project.

Nios V Processor Configuration and Booting Solutions

Per cunfigurà è avvià u processore Nios V:

  1. Understand the introduction to configuration and booting solutions.
  2. Collegate l'applicazioni per un funziunamentu senza intoppi.

About the Nios® V Embedded Processor
1.1. Altera® FPGA è Processori Embedded Più diview
I dispusitivi Altera FPGA ponu implementà una logica chì funziona cum'è un microprocessore cumpletu mentre furnisce parechje opzioni.
Una differenza impurtante trà i microprocessori discreti è Altera FPGA hè chì u tessutu Altera FPGA ùn cuntene micca logica quandu si accende. U processore Nios® V hè un processore di pruprietà intellettuale dolce (IP) basatu annantu à a specificazione RISC-V. Prima di eseguisce u software annantu à un sistema basatu annantu à u processore Nios V, duvete cunfigurà u dispusitivu Altera FPGA cù un cuncepimentu hardware chì cuntene un processore Nios V. Pudete piazzà u processore Nios V in ogni locu annantu à l'Altera FPGA, secondu i requisiti di u cuncepimentu.


Per permette à u vostru sistema integratu basatu annantu à IP Altera® FPGA di cumportassi cum'è un sistema basatu annantu à un microprocessore discretu, u vostru sistema deve include i seguenti elementi: · AJTAG interfaccia per supportà a cunfigurazione, l'hardware è u software di Altera FPGA
debugging · Un mecanismu di cunfigurazione di Altera FPGA à l'accensione
Sè u vostru sistema hà queste capacità, pudete cumincià à raffinà u vostru cuncepimentu da un cuncepimentu hardware pre-testatu caricatu in l'Altera FPGA. L'usu di un Altera FPGA vi permette ancu di mudificà u vostru cuncepimentu rapidamente per risolve i prublemi o per aghjunghje nuove funzionalità. Pudete pruvà facilmente questi novi disinni hardware riconfigurà l'Altera FPGA aduprendu a J di u vostru sistema.TAG interfaccia.
U JTAG L'interfaccia supporta u sviluppu di hardware è software. Pudete eseguisce i seguenti compiti cù JTAG interfaccia: · Cunfigurà l'Altera FPGA · Scaricà è debugà u software · Cumunicà cù l'Altera FPGA per mezu di una interfaccia di tipu UART (JTAG UART
terminal) · Hardware di debugging (cù l'analizzatore logicu integratu Signal Tap) · Memoria flash di u prugramma
Dopu avè cunfiguratu l'Altera FPGA cù un disignu basatu annantu à un processore Nios V, u flussu di sviluppu di u software hè simile à u flussu per i disinni di microcontrollori discreti.


Infurmazioni cunnesse · AN 985: Tutoriale di u processore Nios V
Una guida rapida per a creazione di un sistema di processore Nios V simplice è l'esecuzione di l'applicazione Hello World.
© Altera Corporation. Altera, u logu Altera, u logu "a" è altre marche Altera sò marchi cummerciali di Altera Corporation. Altera si riserva u dirittu di fà cambiamenti à qualsiasi pruduttu è serviziu in ogni mumentu senza preavvisu. Altera ùn assume alcuna responsabilità derivante da l'applicazione o l'usu di qualsiasi infurmazione, pruduttu o serviziu descrittu quì, salvu chì sia espressamente accunsentutu per iscrittu da Altera. Si cunsiglia à i clienti di Altera d'ottene l'ultima versione di e specifiche di u dispusitivu prima di fidà si di qualsiasi infurmazione publicata è prima di fà ordini per prudutti o servizii. *Altri nomi è marche ponu esse rivendicati cum'è pruprietà di altri.

1. À propositu di u processore integratu Nios® V 726952 | 2025.07.16
· Manuale di riferimentu di u processore Nios V Fornisce informazioni nantu à i benchmark di prestazioni di u processore Nios V, l'architettura di u processore, u mudellu di prugrammazione è l'implementazione di u core.
· Guida di l'utente IP di e periferiche integrate · Manuale di u sviluppatore di software di u processore Nios V


Descrive l'ambiente di sviluppu di software di u processore Nios V, l'arnesi dispunibili è u prucessu per custruisce software per esse eseguitu nantu à u processore Nios V. · Guida di l'utente di Ashling* RiscFree* Integrated Development Environment (IDE) per Altera FPGA Descrive l'ambiente di sviluppu integratu (IDE) RiscFree* per Altera FPGA HPS basatu annantu à Arm* è u processore core Nios V. · Note di versione di Nios V Processor Altera FPGA IP
1.2. Assistenza software Quartus® Prime
U flussu di custruzzione di u processore Nios V hè differente per u software Quartus® Prime Pro Edition è u software Quartus Prime Standard Edition. Riferitevi à AN 980: Supportu di u software Quartus Prime per u processore Nios V per più infurmazioni nantu à e differenze.
Infurmazioni cunnesse AN 980: Processore Nios V Supportu di u software Quartus Prime
1.3. Licenza di u processore Nios V
Ogni variante di processore Nios V hà a so chjave di licenza. Una volta acquistata a chjave di licenza, pudete aduprà a listessa chjave di licenza per tutti i prughjetti di processore Nios V finu à a data di scadenza. Pudete acquistà e licenze Nios V Processor Altera FPGA IP à costu zero.
A lista di e chjave di licenza di u processore Nios V hè dispunibule in u Centru di Licenze Self-Service Altera FPGA. Cliccate nantu à a tabulazione Iscriviti per a Valutazione o Licenza Gratuita, è selezziunate l'opzioni currispondenti per fà a dumanda.
Figura 1. Centru di licenze self-service Altera FPGA

Cù e chjave di licenza, pudete:
Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 7

1. À propositu di u processore integratu Nios® V 726952 | 2025.07.16
· Implementà un processore Nios V in u vostru sistema. · Simulà u cumpurtamentu di un sistema di processore Nios V. · Verificate a funziunalità di u disignu, cum'è a dimensione è a velocità. · Generà a prugrammazione di u dispusitivu files. · Prugrammà un dispusitivu è verificà u disignu in hardware.
Ùn avete bisognu di una licenza per sviluppà software in l'Ashling* RiscFree* IDE per Altera FPGA.
Infurmazioni cunnesse · Centru di licenze self-service Altera FPGA
Per più infurmazioni nantu à l'ottenimentu di e chjave di licenza IP Altera FPGA di u processore Nios V. · Installazione è licenze di u software Altera FPGA Per più infurmazioni nantu à a licenza di u software Altera FPGA è a cunfigurazione di una licenza fissa è di un servitore di licenze di rete.
1.4. Cuncepimentu di sistemi integrati
A figura seguente illustra un flussu di cuncepimentu di sistema simplificatu basatu annantu à un processore Nios V, chì include u sviluppu di hardware è software.

Manuale di cuncepimentu di processori integrati Nios® V 8

Mandate Feedback

1. À propositu di u processore integratu Nios® V 726952 | 2025.07.16

Figura 2.

Flussu di cuncepimentu di u sistema di processore Nios V
Cuncepimentu di u sistema

Analizà i requisiti di u sistema

Nios® V
Core di processore è cumpunenti standard

Definisce è generà u sistema in
Designer di piattaforma

Flussu di l'hardware: Integrazione è compilazione di u prughjettu Intel Quartus Prime

Flussu di Software: Sviluppà è Custruisce u Software di Pruposta Nios V

Flussu di l'hardware: Scaricate u disignu FPGA
à u Tavulu di Mira

Flussu di u Software: Test è Debug di u Software di u Processore Nios V

U software ùn risponde micca à e specifiche?

Hardware Innò Cunforme à e specifiche? Iè
Sistema cumpletu

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 9

726952 | 2025.07.16 Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma

Figura 3.

U diagrama seguente illustra un cuncepimentu tipicu di hardware di un processore Nios V. Flussu di cuncepimentu di l'hardware di u sistema di processore Nios V

Principià

Nuclei Nios V è cumpunenti standard

Aduprà Platform Designer per cuncepisce un sistema basatu annantu à Nios V
Generà u disignu di u Designer di Piattaforma

Integrazione di u Sistema di Design di Piattaforme cù u Prughjettu Intel Quartus Prime
Assignà e pusizioni di i pin, i requisiti di timing è altri vincoli di cuncepimentu
Compilà l'hardware per u dispusitivu di destinazione in Intel Quartus Prime

Prontu à scaricà
2.1. Creazione di un cuncepimentu di sistema di processore Nios V cù Platform Designer
U software Quartus Prime include u strumentu d'integrazione di sistema Platform Designer chì simplifica u compitu di definisce è integrà u core IP di u processore Nios V è altri IP in un cuncepimentu di sistema Altera FPGA. Platform Designer crea automaticamente a logica d'interconnessione da a cunnessione d'altu livellu specificata. L'automatizazione di l'interconnessione elimina u compitu chì richiede tempu di specificà e cunnessione HDL à livellu di sistema.
© Altera Corporation. Altera, u logu Altera, u logu "a" è altre marche Altera sò marchi cummerciali di Altera Corporation. Altera si riserva u dirittu di fà cambiamenti à qualsiasi pruduttu è serviziu in ogni mumentu senza preavvisu. Altera ùn assume alcuna responsabilità derivante da l'applicazione o l'usu di qualsiasi infurmazione, pruduttu o serviziu descrittu quì, salvu chì sia espressamente accunsentutu per iscrittu da Altera. Si cunsiglia à i clienti di Altera d'ottene l'ultima versione di e specifiche di u dispusitivu prima di fidà si di qualsiasi infurmazione publicata è prima di fà ordini per prudutti o servizii. *Altri nomi è marche ponu esse rivendicati cum'è pruprietà di altri.

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Dopu avè analizatu i requisiti hardware di u sistema, aduprate Quartus Prime per specificà u core di u processore Nios V, a memoria è altri cumpunenti chì u vostru sistema richiede. U Platform Designer genera automaticamente a logica d'interconnessione per integrà i cumpunenti in u sistema hardware.

2.1.1. Instanziazione di u processore Nios V Altera FPGA IP

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

U core IP di ogni processore supporta diverse opzioni di cunfigurazione basate nantu à a so architettura unica. Pudete definisce queste cunfigurazioni per adattassi megliu à i vostri bisogni di cuncepimentu.

Tabella 1.

Opzioni di cunfigurazione trà e varianti principali

Opzioni di cunfigurazione

Processore Nios V/c

Processore Nios V/m

Debug Usu Richiesta di Reset

Trappule, Eccezioni è Interruzioni

Architettura CPU

ECC

Cache, Regioni Periferiche è TCM

Istruzzioni persunalizate

Passu di serratura

Processore Nios V/g

2.1.1.1. Instanziazione di u microcontrollore compactu Nios V/c Altera FPGA IP Figura 4. Microcontrollore compactu Nios V/c Altera FPGA IP

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 11

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

2.1.1.1.1. Scheda Architettura CPU

Tabella 2.

Scheda Architettura CPU

Feature

Descrizzione

Attivà l'interfaccia Avalon® Attiva l'interfaccia Avalon per u gestore d'istruzzioni è u gestore di dati. Sè disattivatu, u sistema usa l'interfaccia AXI4-Lite.

Valore di a RSE di mhartid

· Opzione IP invalida. · Ùn aduprate micca u valore CSR mhartid in u processore Nios V/c.

2.1.1.1.2. Aduprà a scheda di dumanda di reset

Tabella 3.

Aduprà u parametru di a tabulazione di dumanda di reset

Aduprà a scheda di dumanda di reset

Descrizzione

Aghjunghje l'interfaccia di dumanda di reset

· Attivate sta opzione per espone i porti di reset lucali induve un maestru lucale pò aduprà per attivà u reset di u processore Nios V senza affettà altri cumpunenti in un sistema di processore Nios V.
· L'interfaccia di reset hè cumposta da un signale di resetreq d'entrata è un signale di ack di uscita.
· Pudete dumandà un reset di u core di u processore Nios V asserendu u signale resetreq.
· U signale resetreq deve esse affissatu finchè u processore ùn affissa u signale ack. Se u signale ùn hè micca affissatu, u processore pò esse in un statu non deterministicu.
· U processore Nios V risponde chì u reset hè statu riesciutu asserendu u signale ack.
· Dopu chì u processore hè statu resettatu cù successu, l'asserzione di u signale ack pò accade parechje volte periodicamente finu à a disattivazione di u signale resetreq.

2.1.1.1.3. Scheda Trappule, Eccezioni è Interruzioni

Tabella 4.

Parametri di a scheda Trappule, Eccezioni è Interruzioni

Trappule, Eccezioni è Interruzioni

Descrizzione

Resettate l'agente

· A memoria chì ospita u vettore di reset (l'indirizzu di reset di u processore Nios V) induve reside u codice di reset.
· Pudete selezziunà qualsiasi modulu di memoria cunnessu à u maestru d'istruzzioni di u processore Nios V è supportatu da un flussu d'avvio di u processore Nios V cum'è agente di reset.

Resetta l'offset

· Specifica l'offset di u vettore di reset in relazione à l'indirizzu di basa di l'agente di reset sceltu. · Platform Designer furnisce automaticamente un valore predefinitu per l'offset di reset.

Nota:

Platform Designer furnisce una opzione Assoluta, chì vi permette di specificà un indirizzu assolutu in Reset Offset. Aduprate sta opzione quandu a memoria chì cuntene u vettore di reset si trova fora di u sistema di u processore è di i sottosistemi.

Manuale di cuncepimentu di processori integrati Nios® V 12

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

2.1.1.1.4. Tabulazione ECC

Tabella 5.

Tabulazione ECC

ECC

Attivà a rilevazione di l'errori è i rapporti di statu

Descrizzione
· Attivate sta opzione per applicà a funzione ECC per i blocchi RAM interni di u processore Nios V. · E funzioni ECC rilevenu errori finu à 2 bit è reagiscenu secondu u cumpurtamentu seguente:
— S'ellu hè un errore curregibile di 1 bit, u processore cuntinueghja à funziunà dopu avè currettu l'errore in a pipeline di u processore. Tuttavia, a currezzione ùn hè micca riflessa in e memorie surghjente.
— S'ellu ùn si pò curregge l'errore, u processore cuntinueghja à funziunà senza curreggelu in a pipeline di u processore è in e memorie surghjente, ciò chì puderia fà chì u processore entre in un statu non deterministicu.

2.1.1.2. Instanziazione di u microcontrollore Nios V/m Altera FPGA IP Figura 5. Microcontrollore Nios V/m Altera FPGA IP

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 13

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

2.1.1.2.1. Scheda Debug

Tabella 6.

Parametri di a scheda Debug

Scheda Debug

Descrizzione

Attivà u debugging
Attivà u reset da u modulu di debug

· Attivate sta opzione per aghjunghje a JTAG Modulu di cunnessione di destinazione à u processore Nios V. · U JTAG U modulu di cunnessione di destinazione permette di cunnette si à u processore Nios V attraversu u
JTAG pin d'interfaccia di a FPGA. · A cunnessione furnisce e seguenti capacità basiche:
— Avvia è ferma u processore Nios V — Esamina è mudifica i registri è a memoria. — Scarica l'applicazione Nios V .elf file à a memoria di u processore in tempu reale via
niosv-download. — Debugà l'applicazione chì funziona nantu à u processore Nios V · Cunnette u portu dm_agent à l'istruzzioni di u processore è à u bus di dati. Assicuratevi chì l'indirizzu di basa trà i dui bus sia u listessu.
· Attivate sta opzione per espone i porti dbg_reset_out è ndm_reset_in. · JTAG debugger o cumanda niosv-download -r attivanu u dbg_reset_out, chì
permette à u processore Nios V di resettà i periferichi di u sistema chì si cunnettanu à questu portu. · Duvete cunnette l'interfaccia dbg_reset_out à ndm_reset_in invece di resettà
interfaccia per attivà u reset di u core di u processore è di u modulu timer. Ùn duvete micca cunnette l'interfaccia dbg_reset_out à l'interfaccia di reset per impedisce un cumpurtamentu indeterminatu.

2.1.1.2.2. Aduprà a scheda di dumanda di reset

Tabella 7.

Aduprà u parametru di a tabulazione di dumanda di reset

Aduprà a scheda di dumanda di reset

Descrizzione

Aghjunghje l'interfaccia di dumanda di reset

· Attivate sta opzione per espone i porti di reset lucali induve un maestru lucale pò aduprà per attivà u reset di u processore Nios V senza affettà altri cumpunenti in un sistema di processore Nios V.
· L'interfaccia di reset hè cumposta da un signale di resetreq d'entrata è un signale di ack di uscita.
· Pudete dumandà un reset di u core di u processore Nios V asserendu u signale resetreq.
· U signale resetreq deve esse affissatu finchè u processore ùn affissa u signale ack. Se u signale ùn hè micca affissatu, u processore pò esse in un statu non deterministicu.
· L'asserzione di u signale resetreq in modu debug ùn hà micun effettu nant'à u statu di u processore.
· U processore Nios V risponde chì u reset hè statu riesciutu asserendu u signale ack.
· Dopu chì u processore hè statu resettatu cù successu, l'asserzione di u signale ack pò accade parechje volte periodicamente finu à a disattivazione di u signale resetreq.

2.1.1.2.3. Scheda Trappule, Eccezioni è Interruzioni

Tabella 8.

Scheda Trappule, Eccezioni è Interruzioni

Scheda Trappule, Eccezioni è Interruzioni

Descrizzione

Resettate l'agente

· A memoria chì ospita u vettore di reset (l'indirizzu di reset di u processore Nios V) induve reside u codice di reset.
· Pudete selezziunà qualsiasi modulu di memoria cunnessu à u maestru d'istruzzioni di u processore Nios V è supportatu da un flussu d'avvio di u processore Nios V cum'è agente di reset.

Reset di a Modalità d'Interruzione di Offset

· Specifica l'offset di u vettore di reset in relazione à l'indirizzu di basa di l'agente di reset sceltu. · Platform Designer furnisce automaticamente un valore predefinitu per l'offset di reset.
Specificate u tipu di controller d'interruzzione, sia Diretta sia Vettoriale. Nota: U processore Nios V/m senza pipeline ùn supporta micca l'interruzzioni vettoriali.
Dunque, evitate di utilizà a modalità d'interruzzione Vectored quandu u processore hè in modalità Nonpipelined.

Manuale di cuncepimentu di processori integrati Nios® V 14

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Nota:

Platform Designer furnisce una opzione Assoluta, chì vi permette di specificà un indirizzu assolutu in Reset Offset. Aduprate sta opzione quandu a memoria chì cuntene u vettore di reset si trova fora di u sistema di u processore è di i sottosistemi.

2.1.1.2.4. Architettura di a CPU

Tabella 9.

Parametri di a scheda Architettura di a CPU

Architettura CPU

Descrizzione

Attivà u Pipelining in a CPU

· Attivate sta opzione per creà un'istanza di u processore Nios V/m pipeline. — L'IPC hè più altu à u costu di una zona logica più alta è di una frequenza Fmax più bassa.
· Disattivate sta opzione per creà un'istanza di un processore Nios V/m senza pipeline. — Hà prestazioni di core simili à u processore Nios V/c. — Supporta a capacità di debugging è d'interruzzione — Area logica più bassa è frequenza Fmax più alta à u costu di un IPC più bassu.

Attivà l'interfaccia Avalon

Attiva l'interfaccia Avalon per u gestore d'istruzzioni è u gestore di dati. S'ellu hè disattivatu, u sistema usa l'interfaccia AXI4-Lite.

Valore di a RSE di mhartid

· U valore di u registru Hart ID (mhartid) hè 0 per difettu. · Assignà un valore trà 0 è 4094. · Compatibile cù l'API Altera FPGA Avalon Mutex Core HAL.

Informazioni correlate Guida di l'utente di IP perifericu integratu - Intel FPGA Avalon® Mutex Core

2.1.1.2.5. Tabulazione ECC
Tavula 10. Tabulazione ECC
ECC Attiva a Rilevazione di l'Errori è i Rapporti di Statu

Descrizzione
· Attivate sta opzione per applicà a funzione ECC per i blocchi RAM interni di u processore Nios V. · E funzioni ECC rilevenu errori finu à 2 bit è reagiscenu secondu u cumpurtamentu seguente:
— S'ellu hè un errore curregibile di 1 bit, u processore cuntinueghja à funziunà dopu avè currettu l'errore in a pipeline di u processore. Tuttavia, a currezzione ùn hè micca riflessa in e memorie surghjente.
— S'ellu ùn si pò curregge l'errore, u processore cuntinueghja à funziunà senza curreggelu in a pipeline di u processore è in e memorie surghjente, ciò chì puderia fà chì u processore entre in un statu non deterministicu.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 15

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16
2.1.1.3. Instanziazione di u processore di scopu generale Nios V/g Altera FPGA IP
Figura 6. Processore di scopu generale Nios V/g Altera FPGA IP - Parte 1

Figura 7.

Processore di scopu generale Nios V/g Altera FPGA IP - Parte 2 (Disattiva u controller di interruzione di livellu core)

Manuale di cuncepimentu di processori integrati Nios® V 16

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Figura 8.

Processore di scopu generale Nios V/g Altera FPGA IP - Parte 2 (Attivazione di u controller di interruzione di livellu core)

Figura 9. Processore di scopu generale Nios V/g Altera FPGA IP - Parte 3

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 17

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16
Figura 10. Processore di scopu generale Nios V/g Altera FPGA IP - Parte 4

2.1.1.3.1. Architettura di a CPU

Tavula 11. Parametri di l'architettura di a CPU

Scheda Architettura CPU Attiva Unità à virgola mobile

Descrizzione Attivate sta opzione per aghjunghje l'unità à virgola mobile (estensione "F") in u core di u processore.

Attivà a Previsione di Rami

Attivà a predizione statica di ramificazione (Ripresa Indietro è Non Ripresa Avanti) per l'istruzzioni di ramificazione.

Valore di a RSE di mhartid

· U valore di u registru Hart ID (mhartid) hè 0 per difettu. · Assignà un valore trà 0 è 4094. · Compatibile cù l'API Altera FPGA Avalon Mutex Core HAL.

Disattivà l'istruzzioni FSQRT è FDIV per FPU

· Eliminate l'operazioni di radice quadrata in virgola mobile (FSQRT) è di divisione in virgola mobile (FDIV) in FPU.
· Applicà l'emulazione di u software à e duie istruzioni durante l'esecuzione.

Informazioni correlate Guida di l'utente di IP perifericu integratu - Intel FPGA Avalon® Mutex Core

Manuale di cuncepimentu di processori integrati Nios® V 18

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

2.1.1.3.2. Scheda Debug

Tavula 12. Parametri di a scheda Debug

Scheda Debug

Descrizzione

Attivà u debugging
Attivà u reset da u modulu di debug

· Attivate sta opzione per aghjunghje a JTAG Modulu di cunnessione di destinazione à u processore Nios V. · U JTAG U modulu di cunnessione di destinazione permette di cunnette si à u processore Nios V attraversu u
JTAG pin d'interfaccia di a FPGA. · A cunnessione furnisce e seguenti capacità basiche:
— Avvia è ferma u processore Nios V — Esamina è mudifica i registri è a memoria. — Scarica l'applicazione Nios V .elf file à a memoria di u processore in tempu reale via
niosv-download. — Debugà l'applicazione chì funziona nantu à u processore Nios V · Cunnette u portu dm_agent à l'istruzzioni di u processore è à u bus di dati. Assicuratevi chì l'indirizzu di basa trà i dui bus sia u listessu.
· Attivate sta opzione per espone i porti dbg_reset_out è ndm_reset_in. · JTAG debugger o cumanda niosv-download -r attivanu u dbg_reset_out, chì
permette à u processore Nios V di resettà i periferichi di u sistema chì si cunnettanu à questu portu. · Duvete cunnette l'interfaccia dbg_reset_out à ndm_reset_in invece di resettà
interfaccia per attivà u reset di u core di u processore è di u modulu timer. Ùn duvete micca cunnette l'interfaccia dbg_reset_out à l'interfaccia di reset per impedisce un cumpurtamentu indeterminatu.

2.1.1.3.3. Linguetta Lockstep Tavula 13. Linguetta Lockstep
Parametri Attivazione di u periodu di timeout predefinitu di Lockstep Attivazione di l'interfaccia di reset estesa

Descrizzione · Attiva u sistema Lockstep à dui core. · Valore predefinitu di u timeout programmabile à l'uscita da u reset (trà 0 è 255). · Attiva l'interfaccia di reset estesa opzionale per u cuntrollu di reset estesu. · Quandu hè disattivata, fRSmartComp implementa u cuntrollu di reset di basa.

2.1.1.3.4. Aduprà a scheda di dumanda di reset

Tavula 14. Aduprà u parametru di a tabulazione di dumanda di reset

Aduprà a scheda di dumanda di reset

Descrizzione

Aghjunghje l'interfaccia di dumanda di reset

· Attivate sta opzione per espone i porti di reset lucali induve un maestru lucale pò aduprà per attivà u reset di u processore Nios V senza affettà altri cumpunenti in un sistema di processore Nios V.
· L'interfaccia di reset hè cumposta da un signale di resetreq d'entrata è un signale di ack di uscita.
· Pudete dumandà un reset di u core di u processore Nios V asserendu u signale resetreq.
· U signale resetreq deve esse affissatu finchè u processore ùn affissa u signale ack. Se u signale ùn hè micca affissatu, u processore pò esse in un statu non deterministicu.
· L'asserzione di u signale resetreq in modu debug ùn hà micun effettu nant'à u statu di u processore.
· U processore Nios V risponde chì u reset hè statu riesciutu asserendu u signale ack.
· Dopu chì u processore hè statu resettatu cù successu, l'asserzione di u signale ack pò accade parechje volte periodicamente finu à a disattivazione di u signale resetreq.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 19

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

2.1.1.3.5. Scheda Trappule, Eccezioni è Interruzioni

Tabella 15.

Tabulazione Trappule, Eccezioni è Interruzioni quandu l'attivazione di u controller di interruzione di livellu core hè disattivata

Scheda Trappule, Eccezioni è Interruzioni
Resettate l'agente

Descrizzione
· A memoria chì ospita u vettore di reset (l'indirizzu di reset di u processore Nios V) induve reside u codice di reset.
· Pudete selezziunà qualsiasi modulu di memoria cunnessu à u maestru d'istruzzioni di u processore Nios V è supportatu da un flussu d'avvio di u processore Nios V cum'è agente di reset.

Resetta l'offset

· Specifica l'offset di u vettore di reset in relazione à l'indirizzu di basa di l'agente di reset sceltu. · Platform Designer furnisce automaticamente un valore predefinitu per l'offset di reset.

Attivà u Controller d'Interruzione di Livello Core (CLIC)

· Abilita CLIC per supportà l'interruzioni preventive è a cundizione di trigger d'interruzione configurabile.
· Quandu hè attivatu, pudete cunfigurà u numeru d'interruzioni di a piattaforma, stabilisce e cundizioni di trigger è designà alcune di l'interruzioni cum'è preventive.

Registru Ombra di Modu Interrupt Files

Specificà i tipi d'interruzzione cum'è Diretta, o Vettoriale. Attivà u registru ombra per riduce u cambiamentu di cuntestu in casu d'interruzzione.

Tabella 16.

Trappule, Eccezioni è Interruzioni quandu l'Attivazione di u Controller di Interruzione di Livello Core hè Attivata

Trappule, Eccezioni è Interruzioni

Descrizzioni

Resettate l'agente
Resetta l'offset
Attivà u Controller d'Interruzione di Livello Core (CLIC)

· A memoria chì ospita u vettore di reset (l'indirizzu di reset di u processore Nios V) induve reside u codice di reset.
· Pudete selezziunà qualsiasi modulu di memoria cunnessu à u maestru d'istruzzioni di u processore Nios V è supportatu da un flussu d'avvio di u processore Nios V cum'è agente di reset.
· Specifica l'offset di u vettore di reset in relazione à l'indirizzu di basa di l'agente di reset sceltu. · Platform Designer furnisce automaticamente un valore predefinitu per l'offset di reset.
· Attivà CLIC per supportà l'interruzioni preventive è a cundizione di trigger d'interruzione cunfigurabile. · Quandu hè attivatu, pudete cunfigurà u numeru d'interruzioni di a piattaforma, stabilisce e cundizioni di trigger,
è designà alcune di l'interruzioni cum'è preemptive.

Modu d'interruzzione

· Specificà i tipi d'interruzzione cum'è Diretta, Vettoriale, o CLIC.

Registru di l'ombra Files

· Attivà u registru ombra per riduce u cambiamentu di cuntestu in casu d'interruzzione.
· Offre dui approcci:
— Numeru di livelli d'interruzzione CLIC
— Numeru di livelli d'interruzzione CLIC – 1: Questa opzione hè utile quandu vulete u numeru di registri file copie per adattassi à un numeru esattu di blocchi M20K o M9K.
· Attivà u processore Nios V per aduprà u registru ombra files chì riducenu u sovraccaricu di cambiamentu di cuntestu dopu l'interruzzione.
Per più infurmazione nantu à u registru ombra files, riferitevi à u Manuale di Riferimentu di u Processore Nios V.

Numeru di fonti d'interruzzione di a piattaforma

· Specifica u numeru d'interruzioni di piattaforma trà 16 è 2048.
Nota: CLIC supporta finu à 2064 entrate d'interruzione, è e prime 16 entrate d'interruzione sò ancu cunnesse à u controller d'interruzione basicu.

Allineamentu di a Tavula Vettoriale CLIC

· Determinatu automaticamente in basa à u numeru di fonti d'interruzzione di a piattaforma. · Sè utilizate un allineamentu chì hè sottu à u valore cunsigliatu, u CLIC aumenta a logica
cumplessità aghjunghjendu un sommatore supplementu per fà calculi di vettorizazione. · Sè aduprate un allineamentu chì hè sottu à u valore cunsigliatu, questu si traduce in un aumentu
cumplessità logica in u CLIC.
cuntinuò…

Manuale di cuncepimentu di processori integrati Nios® V 20

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Trappule, Eccezioni è Interruzioni
Numeru di livelli d'interruzzione
Numeru di priorità d'interruzzione per livellu
Polarità d'interruzzione configurabile Supporta l'interruzzioni attivate da u bordu

Descrizzioni
· Specifica u numeru di livelli d'interruzzione cù un livellu supplementu 0 per u codice di l'applicazione. L'interruzzioni di un livellu più altu ponu interrompe (preemptà) un gestore in esecuzione per una interruzzione di livellu inferiore.
· Cù livelli d'interruzzione diversi da zero cum'è l'uniche opzioni per l'interruzzioni, u codice di l'applicazione hè sempre à u livellu u più bassu 0. Nota: A cunfigurazione in tempu d'esecuzione di u livellu è di a priorità di un'interruzzione hè fatta in un unicu registru di 8 bit. Se u numeru di livelli d'interruzzione hè 256, ùn hè micca pussibule di cunfigurà a priorità d'interruzzione in tempu d'esecuzione. Altrimenti, u numeru massimu di priorità configurabili hè 256 / (numeru di livelli d'interruzzione - 1).
· Specifica u numeru di priorità d'interruzzione, chì u CLIC usa per determinà l'ordine in u quale i gestori d'interruzzione senza prelazione sò chjamati. Nota: A concatenazione di valori binari di u livellu d'interruzzione sceltu è di a priorità d'interruzzione scelta deve esse inferiore à 8 bit.
· Permette di cunfigurà a polarità di l'interruzzione durante l'esecuzione. · A polarità predefinita hè a polarità pusitiva.
· Vi permette di cunfigurà a cundizione di trigger di l'interruzzione durante l'esecuzione, vale à dì trigger di altu livellu o trigger di fronte pusitivu (quandu a polarità di l'interruzzione hè pusitiva in a polarità di l'interruzzione configurabile).
· A cundizione di trigger predefinita hè l'interruzzione triggerata da u livellu.

Nota:

Platform Designer furnisce una opzione Assoluta, chì vi permette di specificà un indirizzu assolutu in Reset Offset. Aduprate sta opzione quandu a memoria chì cuntene u vettore di reset si trova fora di u sistema di u processore è di i sottosistemi.

Informazioni correlate Manuale di riferimentu di u processore Nios® V

2.1.1.3.6. Scheda Configurazioni di Memoria

Tavula 17. Parametri di a scheda di cunfigurazione di a memoria

categuria

Scheda di Configurazione di a Memoria

Descrizzione

Cache

Dimensione di a cache di dati

· Specifica a dimensione di a cache di dati. · E dimensioni valide sò da 0 kilobyte (KB) à 16 KB. · Disattiva a cache di dati quandu a dimensione hè 0 KB.

Dimensione di a cache di l'istruzzioni

· Specifica a dimensione di a cache d'istruzzioni. · E dimensioni valide sò da 0 KB à 16 KB. · Disattiva a cache d'istruzzioni quandu a dimensione hè 0 KB.

Regione periferica A è B

Taglia

· Specifica a dimensione di a regione periferica.
· E dimensioni valide sò da 64 KB à 2 gigabyte (GB), o Nisuna. Scegliendu Nisuna, a regione periferica hè disattivata.

Indirizzu di basa

· Specifica l'indirizzu di basa di a regione periferica dopu avè sceltu a dimensione.
· Tutti l'indirizzi in a regione periferica producenu accessi à dati chì ùn ponu esse memorizzati in cache.
· L'indirizzu di basa di a regione periferica deve esse allinatu cù a dimensione di a regione periferica.

Ricordi strettamente accoppiati

Taglia

· Specifica a dimensione di a memoria strettamente accoppiata. — E dimensioni valide sò da 0 MB à 512 MB.

Inizializazione di l'indirizzu di basa File

· Specifica l'indirizzu di basa di a memoria strettamente accoppiata. · Specifica l'inizializazione file per una memoria strettamente accoppiata.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 21

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Nota:

In un sistema di processore Nios V cù a cache attivata, duvete piazzà i periferichi di u sistema in una regione periferica. Pudete aduprà e regioni periferiche per definisce una transazzione micca memorizzabile in cache per i periferichi cum'è UART, PIO, DMA è altri.

2.1.1.3.7. Tabulazione ECC

Tavula 18. Tabulazione ECC
ECC Attiva a Rilevazione di l'Errori è i Rapporti di Statu
Attivà a currezzione di un solu bit

Descrizzione
· Attivate sta opzione per applicà a funzione ECC per i blocchi RAM interni di u processore Nios V. · E funzioni ECC rilevenu errori finu à 2 bit è reagiscenu secondu u cumpurtamentu seguente:
— S'ellu si tratta di un errore di bit unicu curregibile è l'opzione Attivà a currezzione di bit unicu hè disattivata, u processore cuntinueghja à funziunà dopu avè currettu l'errore in a pipeline di u processore. Tuttavia, a currezzione ùn hè micca riflessa in e memorie surghjente.
— S'ellu si tratta di un errore di bit unicu curregibile è l'opzione Attivà a currezzione di bit unicu hè attivata, u processore cuntinueghja à funziunà dopu avè currettu l'errore in a pipeline di u processore è in e memorie surghjente.
— S'ellu si tratta di un errore micca curreggibile, u processore interrompe u so funziunamentu.
Attivà a currezzione di un solu bit nantu à i blocchi di memoria integrati in u core.

2.1.1.3.8. Scheda d'istruzzioni persunalizate

Nota:

Questa tabulazione hè dispunibile solu per u core di u processore Nios V/g.

Istruzzioni persunalizate Nios V Tavula d'interfaccia hardware d'istruzzioni persunalizate
Tavula di macro di u software d'istruzzioni persunalizate Nios V

Descrizzione
· U processore Nios V usa sta tavula per definisce e so interfacce di gestione d'istruzzioni persunalizate.
· L'interfacce di gestione d'istruzzioni persunalizate definite sò codificate in modu unicu da un Opcode (CUSTOM0-3) è 3 bit di funct7[6:4].
· Pudete definisce finu à un totale di 32 interfacce di gestione d'istruzzioni persunalizate individuali.
· U processore Nios V usa sta tavula per definisce codifiche di software d'istruzzioni persunalizate per interfacce di gestione d'istruzzioni persunalizate definite.
· Per ogni codifica di software d'istruzzioni persunalizate definita, l'Opcode (CUSTOM0-3) è 3 bit di a codifica funct7[6:4] devenu esse correlati à una codifica d'interfaccia di gestore d'istruzzioni persunalizate definita in a Tabella d'Interfaccia Hardware d'Istruzzioni Persunalizate.
· Pudete aduprà func7[6:4], func7[3:0], è func3[2:0] per definisce una codifica supplementaria per una data istruzione persunalizata, o specificata cum'è X da passà cum'è argumenti d'istruzione supplementari.
· U processore Nios V furnisce codifiche di software d'istruzzioni persunalizate definite cum'è macro C generate in system.h, è seguita u furmatu d'istruzzioni RISC-V di tipu R.
· I mnemonichi ponu esse aduprati per definisce nomi persunalizati per: — I C-Macro generati in system.h.
— I mnemonichi di debug GDB generati in custom_instruction_debug.xml.

Information Related
AN 977: Istruzzioni persunalizate di u processore Nios V Per più infurmazioni nantu à l'istruzzioni persunalizate chì vi permettenu di persunalizà u processore Nios® V per risponde à i bisogni di una applicazione particulare.

Manuale di cuncepimentu di processori integrati Nios® V 22

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
2.1.2. Definizione di a Cuncepzione di i Cumponenti di u Sistema
Aduprate u Designer di Piattaforma per definisce e caratteristiche hardware di u sistema di processore Nios V è aghjunghje i cumpunenti desiderati. U diagrama seguente mostra un cuncepimentu di sistema di processore Nios V di basa cù i seguenti cumpunenti: · Core di processore Nios V · Memoria On-Chip · JTAG UART · Timer d'intervallu (opzionale)(1)
Quandu una nova memoria on-chip hè aghjunta à un sistema Platform Designer, eseguite Sync System Infos per riflette i cumpunenti di memoria aghjunti in u reset. In alternativa, pudete attivà Auto Sync in Platform Designer per riflette automaticamente l'ultime modifiche di i cumpunenti.
Figura 11. Esampa cunnessione di u processore Nios V cù altre periferiche in Platform Designer

(1) Avete l'opzione di utilizà e funzioni di u Timer Internu di Nios V per rimpiazzà u Timer d'Intervallu esternu in Platform Designer.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 23

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16
Duvete ancu definisce i pin di funziunamentu da esportà cum'è cunduttu in u vostru sistema Platform Designer. Per esempiuampvale à dì, una lista di pin di funziunamentu di u sistema FPGA adatta hè definita cum'è quì sottu, ma senza limitazione à:
· Orologio
· Resettate
· Signali I/O
2.1.3. Specificà l'indirizzi di basa è e priorità di e richieste d'interruzzione
Per specificà cumu i cumpunenti aghjunti in u disignu interagiscenu per furmà un sistema, avete bisognu di assignà indirizzi di basa per ogni cumpunente di l'agente è assignà priorità di richiesta d'interruzione (IRQ) per u J.TAG UART è u timer d'intervallu. U Designer di Piattaforma furnisce un cumandamentu - Assign Base Addresses - chì assigna automaticamente l'indirizzi di basa adatti à tutti i cumpunenti di un sistema. Tuttavia, pudete aghjustà l'indirizzi di basa secondu i vostri bisogni.
Eccu alcune linee guida per l'assignazione di indirizzi di basa:
· U core di u processore Nios V hà un indirizzu di 32 bit. Per accede à i cumpunenti di l'agente, u so indirizzu di basa deve esse trà 0x00000000 è 0xFFFFFFFF.
· I prugrammi Nios V utilizanu custanti simboliche per riferisce si à l'indirizzi. Ùn avete micca bisognu di sceglie valori d'indirizzu chì sò faciuli da ricurdà.
· I valori d'indirizzu chì differenzianu i cumpunenti cù una differenza d'indirizzu di solu un bit producenu hardware più efficiente. Ùn avete micca bisognu di cumpattà tutti l'indirizzi di basa in u più chjucu intervallu d'indirizzi pussibule perchè a cumpattazione pò creà hardware menu efficiente.
· Platform Designer ùn prova micca à allineà i cumpunenti di memoria separati in un intervallu di memoria contiguu. Per esempiuampVale à dì, sè vulete chì parechji cumpunenti di memoria on-chip sianu indirizzabili cum'è un intervallu di memoria contiguu, duvete assignà esplicitamente indirizzi di basa.
Platform Designer furnisce ancu un cumandamentu d'automatizazione - Assign Interrupt Numbers chì cunnetta i signali IRQ per pruduce risultati hardware validi. Tuttavia, l'assignazione efficace di IRQ richiede una comprensione di u cumpurtamentu generale di a risposta di u sistema. Platform Designer ùn pò micca fà supposizioni educate nantu à a megliu assignazione IRQ.
U valore IRQ u più bassu hà a priorità più alta. In un sistema ideale, Altera ricumanda chì u cumpunente di u timer abbia l'IRQ di priorità più alta, vale à dì, u valore u più bassu, per mantene a precisione di u tic di l'orologio di u sistema.
In certi casi, pudete assignà una priorità più alta à i periferichi in tempu reale (cum'è i cuntrolli video), ciò chì richiede una frequenza d'interruzzione più alta chè i cumpunenti di u timer.
Information Related
Guida di l'utente di Quartus Prime Pro Edition: Più infurmazioni nantu à a creazione di un sistema cù Platform Designer.

Manuale di cuncepimentu di processori integrati Nios® V 24

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
2.2. Integrazione di u Sistema di Design di Piattaforme in u Prughjettu Quartus Prime
Dopu avè generatu u cuncepimentu di u sistema Nios V in Platform Designer, eseguite i seguenti compiti per integrà u modulu di sistema Nios V in u prughjettu di cuncepimentu FPGA Quartus Prime. · Instanziate u modulu di sistema Nios V in u prughjettu Quartus Prime · Cunnette i signali da u modulu di sistema Nios V à altri signali in a logica FPGA · Assignà a pusizione di i pin fisichi · Vinculate u cuncepimentu FPGA
2.2.1. Instanziazione di u Modulu di Sistema di Processore Nios V in u Prughjettu Quartus Prime
Platform Designer genera una entità di cuncepimentu di modulu di sistema chì pudete istanziare in Quartus Prime. U modu di istanziazione di u modulu di sistema dipende da u metudu di inserimentu di cuncepimentu per u prughjettu generale di Quartus Prime. Per esempiuampPer esempiu, sè vo aduprate Verilog HDL per l'entrata di cuncepimentu, create un'istanza di u modulu di sistema basatu annantu à Verilog. Sè vo preferite aduprà u metudu di u diagramma à blocchi per l'entrata di cuncepimentu, create un'istanza di un simbulu di modulu di sistema .bdf. file.
2.2.2. Cunnessione di i signali è attribuzione di e pusizioni di i pin fisichi
Per cunnette u vostru cuncepimentu Altera FPGA à u vostru cuncepimentu à livellu di scheda, eseguite i seguenti compiti: · Identificate u livellu superiore file per u vostru cuncepimentu è i signali per cunnette si à Altera esterni
Pin di u dispusitivu FPGA. · Capite quali pin cunnette per mezu di a vostra guida di cuncepimentu à livellu di scheda o
schemi. · Assignà signali in u disignu di livellu superiore à i porti di u vostru dispositivu Altera FPGA cù pin
strumenti di assignazione.
U vostru sistema Platform Designer pò esse u cuncepimentu di livellu superiore. Tuttavia, l'Altera FPGA pò ancu include una logica supplementaria basata nantu à i vostri bisogni è cusì introduce un cuncepimentu di livellu superiore persunalizatu. fileU livellu superiore file cunnetta i signali di u modulu di u sistema di processore Nios V à altra logica di cuncepimentu Altera FPGA.
Informazioni correlate Guida di l'utente di Quartus Prime Pro Edition: Vincoli di cuncepimentu
2.2.3. Limitazione di u Cuncepimentu Altera FPGA
Una cuncepzione adatta di un sistema Altera FPGA include vincoli di cuncepzione per assicurà chì a cuncepzione rispetti i requisiti di chjusura di timing è altri requisiti di vincoli logichi. Duvete vinculà a vostra cuncepzione Altera FPGA per risponde à questi requisiti esplicitamente aduprendu strumenti furniti in u software Quartus Prime o fornitori EDA di terze parti. U software Quartus Prime usa i vincoli furniti durante a fase di compilazione per ottene i risultati di piazzamentu ottimali.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 25

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16
Infurmazioni cunnesse · Guida di l'utente di Quartus Prime Pro Edition: Vincoli di cuncepimentu · Partner EDA di terze parti · Guida di l'utente di Quartus Prime Pro Edition: Analizatore di timing
2.3. Cuncepimentu di un sistema di memoria di processore Nios V
Questa sezione descrive e migliori pratiche per a selezzione di dispositivi di memoria in un sistema integratu Platform Designer cù un processore Nios V è per ottene prestazioni ottimali. I dispositivi di memoria ghjocanu un rolu cruciale in u miglioramentu di e prestazioni generali di un sistema integratu. A memoria di u sistema integratu conserva l'istruzzioni è i dati di u prugramma.
2.3.1. Memoria Volatile
Una distinzione primaria in un tipu di memoria hè a volatilità. A memoria volatile mantene u so cuntenutu solu mentre furnite alimentazione à u dispositivu di memoria. Appena cacciate l'alimentazione, a memoria perde u so cuntenutu.
ExampI le di memoria volatile sò RAM, cache è registri. Quessi sò tipi di memoria veloci chì aumentanu e prestazioni in esecuzione. Altera vi cunsiglia di caricà è eseguisce l'istruzzioni di u processore Nios V in RAM è di accoppià u core IP Nios V cù l'IP di memoria On-Chip o l'IP di l'interfaccia di memoria esterna per prestazioni ottimali.
Per migliurà e prestazioni, pudete eliminà i cumpunenti d'adattazione supplementari di Platform Designer abbinendu u tipu d'interfaccia o a larghezza di u gestore di dati di u processore Nios V cù a RAM d'avvio. Per esempiuampCusì, pudete cunfigurà a memoria On-Chip II cù una interfaccia AXI-32 à 4 bit, chì currisponde à l'interfaccia di u gestore di dati Nios V.
Infurmazioni cunnesse · Interfacce di memoria esterna Centru di supportu IP · Memoria on-chip (RAM o ROM) Altera FPGA IP · Memoria on-chip II (RAM o ROM) Altera FPGA IP · Applicazione di u processore Nios V Eseguita in situ da OCRAM à a pagina 54
2.3.1.1. Cunfigurazione di a memoria in chip RAM o ROM
Pudete cunfigurà l'IP di memoria Altera FPGA On-Chip cum'è RAM o ROM. · A RAM furnisce capacità di lettura è scrittura è hà una natura volatile. Sè vo site
Quandu si avvia u processore Nios V da una RAM on-chip, ci vole à assicurà si chì u cuntenutu di l'avviu sia cunservatu è micca curruttu in casu di reset durante l'esecuzione. · Sè un processore Nios V si avvia da a ROM, qualsiasi bug di software nantu à u processore Nios V ùn pò micca sovrascrive erroneamente u cuntenutu di a memoria on-chip. Cusì, si riduce u risicu di curruzzione di u software di l'avviu.
Infurmazioni cunnesse · Memoria on-chip (RAM o ROM) Altera FPGA IP · Memoria on-chip II (RAM o ROM) Altera FPGA IP · Applicazione di u processore Nios V Eseguita in situ da OCRAM à a pagina 54

Manuale di cuncepimentu di processori integrati Nios® V 26

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
2.3.1.2. Cache
E memorie on-chip sò cumunemente aduprate per implementà a funzionalità di cache per via di a so bassa latenza. U processore Nios V usa a memoria on-chip per e so cache d'istruzzioni è di dati. A capacità limitata di a memoria on-chip ùn hè di solitu un prublema per e cache perchè sò tipicamente chjuche.
I cache sò cumunimenti usati in e seguenti cundizioni:
· A memoria regulare hè situata fora di u chip è hà un tempu d'accessu più longu chè a memoria in chip.
· E sezzioni critiche per e prestazioni di u codice di u software ponu esse inserite in a cache di l'istruzzioni, migliurendu e prestazioni di u sistema.
· A sezzione di dati più critica per e prestazioni, a più aduprata, pò esse inserita in a cache di dati, migliurendu e prestazioni di u sistema.
L'attivazione di e cache in u processore Nios V crea una ghjerarchia di memoria, chì minimizza u tempu d'accessu à a memoria.
2.3.1.2.1. Regione periferica
Ogni IP di periferia integrata, cum'è UART, I2C è SPI, ùn deve esse memorizatu in cache. A cache hè altamente raccomandata per e memorie esterne chì sò affettate da un tempu d'accessu longu, mentre chì e memorie interne on-chip ponu esse escluse per via di u so tempu d'accessu cortu. Ùn duvete micca memorizà in cache alcun IP perifericu integratu, cum'è UART, I2C è SPI, eccettu per e memorie. Questu hè impurtante perchè l'eventi da dispositivi esterni, cum'è i dispositivi agente chì aghjurnanu l'IP software, ùn sò micca catturati da a cache di u processore, è à u so tornu ùn sò micca ricevuti da u processore. Di cunsiguenza, questi eventi ponu passà inosservati finu à chì ùn svuotate a cache, ciò chì pò purtà à un cumpurtamentu indesideratu in u vostru sistema. In riassuntu, a regione mappata in memoria di l'IP periferichi integrati ùn hè micca memorizzabile in cache è deve reside in e regioni periferiche di u processore.
Per definisce una regione periferica, seguitate sti passi:
1. Aprite a Mappa di l'Indirizzi di u sistema in u Designer di Piattaforme.
2. Navigate à a mappa di l'indirizzi di u Manager d'Istruzioni è di u Manager di Dati di u processore.
3. Identificate i periferichi è e memorie in u vostru sistema.
Figura 12. EsampCarta di l'indirizzi

Nota: E frecce turchine indicanu i ricordi. 4. Raggruppate i periferichi:
a. Memoria cum'è cacheable b. Periferiche cum'è micca cacheable

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 27

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Tavula 19. Regione memorizzabile in cache è micca memorizzabile in cache

Subordinatu

Mappa d’indirizzi

Status

Regione Periferica

Taglia

Indirizzu di basa

user_application_mem.s1

0x0 ~ 0x3ffff

Cacheable

N/A

N/A

cpu.dm_agent bootcopier_rom.s1

0x40000 ~ 0x4ffff 0x50000 ~ 0x517ff

Ùn hè micca cacheable Cacheable

65536 byte N/D

0x40000 N/A

bootcopier_ram.s1 cpu.timer_sw_agent cassetta postale.avmm

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

Cacheable Uncacheable Uncacheable

144 byte (a dimensione minima hè 65536 byte)

0x54000

sysid_qsys_0.control_slave

0x54080 ~ 0x54087

Ùn hè micca messa in cache

uart.avalon_jtag_schiavu

0x54088 ~ 0x5408f

Ùn hè micca messa in cache

5. Allineate e regioni periferiche cù e so dimensioni specifiche:
· Per esempiuampvale à dì, se a dimensione hè 65536 byte, currisponde à 0x10000 byte. Dunque, l'indirizzu di basa permessu deve esse un multiplu di 0x10000.
· U CPU.dm_agent usa un indirizzu di basa di 0x40000, chì hè un multiplu di 0x10000. Di cunsiguenza, a Regione Periferica A, cù una dimensione di 65536 byte è un indirizzu di basa di 0x40000, risponde à i requisiti.
· L'indirizzu di basa di a cullezzione di regioni micca memorizabili in cache à 0x54000 ùn hè micca un multiplu di 0x10000. Duvete riassignalli à 0x60000 o un altru multiplu di 0x10000. Cusì, a Regione Periferica B, chì hà una dimensione di 65536 byte è un indirizzu di basa di 0x60000, suddisfa i criteri.

Tavula 20. Regione memorizzabile in cache è micca memorizzabile in cache cù riassegnazione

Subordinatu

Mappa d’indirizzi

Status

Regione Periferica

Taglia

Indirizzu di basa

user_application_mem.s1

0x0 ~ 0x3ffff

Cacheable

N/A

N/A

cpu.dm_agent

0x40000 ~ 0x4ffff

65536 byte micca memorizabili in cache

0x40000

bootcopier_rom.s1

0x50000 ~ 0x517ff

Cacheable

N/A

N/A

bootcopier_ram.s1 cpu.timer_sw_agent mailbox.avmm sysid_qsys_0.control_slave

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

Cacheable Uncacheable Uncacheable Uncacheable

144 byte (a dimensione minima hè 65536 byte)

0x60000

uart.avalon_jtag_schiavu

0x60088 ~ 0x6008f

Ùn hè micca messa in cache

2.3.1.3. Memoria strettamente accoppiata
E memorie strettamente accoppiate (TCM) sò implementate aduprendu a memoria on-chip postu chì a so bassa latenza li rende adatti à u compitu. I TCM sò memorie mappate in u spaziu d'indirizzu tipicu, ma anu una interfaccia dedicata à u microprocessore è pussedenu e proprietà di alte prestazioni è bassa latenza di a memoria cache. TCM furnisce ancu una interfaccia subordinata per l'host esternu. U processore è l'host esternu anu u listessu livellu di permessu per gestisce u TCM.

Manuale di cuncepimentu di processori integrati Nios® V 28

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Nota:

Quandu u portu subordinatu TCM hè cunnessu à un host esternu, pò esse visualizatu cù un indirizzu di basa differente da l'indirizzu di basa assignatu in u core di u processore. Altera ricumanda d'allineà i dui indirizzi à u listessu valore.

2.3.1.4. Interfaccia di Memoria Esterna (EMIF)
EMIF (External Memory Interface) funziona in modu simile à SRAM (Static Random Access Memory), ma hè dinamica è richiede un aghjurnamentu periodicu per mantene u so cuntenutu. E cellule di memoria dinamica in EMIF sò assai più chjuche cà e cellule di memoria statica in SRAM, ciò chì si traduce in dispositivi di memoria di capacità più elevata è di costu più bassu.
In più di l'esigenza di rinfrescante, EMIF hà esigenze d'interfaccia specifiche chì spessu necessitanu hardware di controller specializatu. À u cuntrariu di SRAM, chì hà un inseme fissu di linee d'indirizzu, EMIF urganizeghja u so spaziu di memoria in banche, righe è colonne. U cambiamentu trà banche è righe introduce un pocu di sovraccaricu, dunque duvete urdinà cù cura l'accessi à a memoria per aduprà EMIF in modu efficiente. EMIF multiplexa ancu l'indirizzi di righe è colonne nantu à e stesse linee d'indirizzu, riducendu u numeru di pin richiesti per una data dimensione EMIF.
E versioni di EMIF à più alta velocità, cum'è DDR, DDR2, DDR3, DDR4 è DDR5, impunenu requisiti stretti di integrità di u signale chì i cuncettori di PCB devenu cunsiderà.
I dispusitivi EMIF sò trà i tipi di RAM i più economici è di alta capacità dispunibili, ciò chì li rende una opzione pupulare. Un cumpunente chjave di una interfaccia EMIF hè l'IP EMIF, chì gestisce i compiti relativi à u multiplexaggio di l'indirizzi, l'aghjurnamentu è u cambiamentu trà righe è banche. Stu cuncepimentu permette à u restu di u sistema di accede à EMIF senza avè bisognu di capisce a so architettura interna.

Informazioni correlate Interfacce di memoria esterna Centru di supportu IP

2.3.1.4.1. Estensore di Span d'Indirizzu IP
L'Address Span Extender Altera FPGA IP permette à l'interfacce host mappate in memoria di accede à una mappa d'indirizzi più grande o più chjuca di quella chì permette a larghezza di i so signali d'indirizzu. L'Address Span Extender IP divide u spaziu indirizzabile in parechje finestre separate in modu chì l'host possa accede à a parte adatta di a memoria attraversu a finestra.
L'Address Span Extender ùn limita micca a larghezza di l'ospite è di l'agente à una cunfigurazione di 32 bit è 64 bit. Pudete aduprà l'Address Span Extender cù finestre d'indirizzu da 1 à 64 bit.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 29

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Figura 13. Estensore di span d'indirizzu Altera FPGA IP
Indirizzu di l'agente

Estensore di Span di l'indirizzu

A

Tavola di mappatura
Portu di cuntrollu A

Registru di cuntrollu 0 Registru di cuntrollu Z-1

Indirizzu di l'ospite allargatu H

Information Related
Guida di l'utente di Quartus® Prime Pro Edition: Platform Designer Vede l'argomento Address Span Extender Intel® FPGA IP per più infurmazioni.

2.3.1.4.2. Usendu Address Span Extender IP cù u processore Nios V
U processore Nios V à 32 bit pò indirizzà finu à 4 GB di un'estensione d'indirizzu. Sè l'EMIF cuntene più di 4 GB di memoria, supera l'estensione d'indirizzu massima supportata, rendendu u sistema Platform Designer erroneu. Un IP Address Span Extender hè necessariu per risolve stu prublema dividendu un unicu spaziu d'indirizzu EMIF in parechje finestre più chjuche.
Altera vi cunsiglia di cunsiderà i seguenti parametri.

Tavula 21. Parametri di l'Estensore di Span di l'Indirizzu

Parametru

Impostazioni Raccomandate

Larghezza di u percorsu di dati
Larghezza di l'indirizzu Master Byte allargata

Selezziunate 32-bit, chì hè correlatu cù u processore 32-bit. Dipende da a dimensione di a memoria EMIF.

Larghezza di l'indirizzu di a parola schiavu Larghezza di u conteggio di raffica

Selezziunate 2 GB o menu. L'intervallu d'indirizzu restante di u processore Nios V hè riservatu per altri IP software integrati.
Cuminciate cù 1 è aumentate gradualmente stu valore per migliurà e prestazioni.

Numeru di sottufinestre

Selezziunate 1 sottufinestra s'è vo cunnette EMIF à u processore Nios V cum'è memoria d'istruzzioni è di dati, o tramindui. Cambià trà parechje sottufinestre mentre u processore Nios V hè in esecuzione da EMIF hè periculosu.

Attivà u portu di cuntrollu slave

Disattivate u portu di cuntrollu slave sè cunnette EMIF à u processore Nios V cum'è memoria d'istruzzioni è/o di dati. Stessi prublemi cum'è u numeru di sottufinestre.

Letture massime in attesa

Cuminciate cù 1 è aumentate gradualmente stu valore per migliurà e prestazioni.

Manuale di cuncepimentu di processori integrati Nios® V 30

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
Figura 14. Cunnessione di l'istruzzioni è di u gestore di dati à l'estensione di span di l'indirizzu

Figura 15. Mappatura di l'indirizzi

Nutate chì l'Address Span Extender pò accede à tuttu u spaziu di memoria di 8 GB di l'EMIF. Tuttavia, via l'Address Span Extender, u processore Nios V pò accede solu à u primu spaziu di memoria di 1 GB di l'EMIF.

Figura 16. Diagramma à blocchi simplificatu

Sistema di cuncepimentu di piattaforma

3 GB rimanenti

Indirizzu di u processore Nios V

span hè per incrustatu

NNioios sVV PProrocecsesosor r
M

IP morbidi in u listessu sistema.
Finestra di 1 GB

Spaziu di l'indirizzu

S

Extender

M

Solu u primu 1 GB

di memoria EMIF hè cunnessa à Nios V

EMIF

processore.

8 GB
S

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 31

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16
2.3.1.4.3. Definizione di u dispositivu di memoria Linker di l'Address Span Extender 1. Definite l'Address Span Extender (EMIF) cum'è u vettore di reset. In alternativa, pudete assignà u vettore di reset di u processore Nios V à altre memorie, cum'è OCRAM o dispositivi flash.
Figura 17. Opzioni multiple cum'è vettore di reset
Tuttavia, l'editore di u Board Support Package (BSP) ùn pò micca registrà automaticamente l'Address Span Extender (EMIF) cum'è una memoria valida. Sicondu a scelta fatta, si vedenu duie situazioni diverse cum'è mostratu in e figure seguenti. Figura 18. Errore BSP quandu si definisce l'Address Span Extender (EMIF) cum'è Reset Vector

Manuale di cuncepimentu di processori integrati Nios® V 32

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
Figura 19. Mancanza di EMIF quandu si definiscenu altre memorie cum'è vettore di reset

2. Duvete aghjunghje manualmente l'Address Span Extender (EMIF) aduprendu Add Memory Device, Add Linker Memory Region è Add Linker Section Mappings in a tabulazione BSP Linker Script.
3. Segui questi passi:
a. Determinate l'estensione di l'indirizzu di l'Estensore di Span di l'Indirizzu aduprendu a Mappa di Memoria (L'example in a figura seguente usa l'intervallu Address Span Extender da 0x0 à 0x3fff_ffff).
Figura 20. Mappa di a memoria

b. Cliccate nant'à Aggiungi Dispositivu di Memoria, è cumpletate secondu l'infurmazioni in a Mappa di Memoria di u vostru disignu: i. Nome di u Dispositivu: emif_ddr4. Nota: Assicuratevi di copià u listessu nome da a Mappa di Memoria. ii. Indirizzu di Base: 0x0 iii. Dimensione: 0x40000000
c. Cliccate Aggiungi per aghjunghje una nova regione di memoria di u linker:

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 33

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Tavula 22. Aggiunta di a Regione di Memoria di u Linker

Passi

Resettà u vettore

emif_ddr4

Altri ricordi

1

Aghjunghje una nova Regione di Memoria Linker chjamata reset. Aghjunghje una nova Regione di Memoria Linker per u

· Nome di a regione: reset

emif_ddr4.

· Dimensione di a regione: 0x20

· Nome di a regione: emif_ddr4

· Dispositivu di memoria: emif_ddr4

· Dimensione di a regione: 0x40000000

· Spostamentu di memoria: 0x0

· Dispositivu di memoria: emif_ddr4

· Spostamentu di memoria: 0x0

2

Aghjunghje una nova Regione di Memoria Linker per u

emif_ddr4 restante.

· Nome di a regione: emif_ddr4

· Dimensione di a regione: 0x3fffffe0

· Dispositivu di memoria: emif_ddr4

· Spostamentu di memoria: 0x20

Figura 21. Regione di u Linker quandu si definisce l'Address Span Extender (EMIF) cum'è Vettore di Reset

Figura 22. Regione Linker quandu si definiscenu altre memorie cum'è vettore di reset
d. Una volta chì emif_ddr4 hè aghjuntu à u BSP, pudete selezziunallu per qualsiasi Sezione Linker.
Figura 23. Aggiuntu cù successu di Address Span Extender (EMIF)

e. Ignorate l'avvertimentu nantu à u dispusitivu di memoria emif_ddr4 chì ùn hè micca visibile in u disignu SOPC.
f. Prucede à generà BSP.
Informazioni correlate Introduzione à i metudi d'avvio di u processore Nios V à a pagina 51

Manuale di cuncepimentu di processori integrati Nios® V 34

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
2.3.2. Memoria Non Volatile
A memoria non volatile conserva u so cuntenutu quandu l'alimentazione si spegne, ciò chì ne face una bona scelta per almacenà l'infurmazioni chì u sistema deve recuperà dopu un ciclu di accensione è spegnimentu di u sistema. A memoria non volatile conserva cumunemente u codice d'avvio di u processore, i paràmetri di l'applicazione persistente è i dati di cunfigurazione di Altera FPGA. Ancu s'è a memoria non volatile hà u vantaghju...tagdi cunservà i so dati quandu si toglie l'alimentazione, hè assai più lenta paragunata à a memoria volatile, è spessu hà procedure di scrittura è cancellazione più cumplesse. A memoria non volatile hè ancu generalmente garantita solu per esse cancellabile un certu numeru di volte, dopu à quale pò fallu.
ExampI schedari di memoria non volatile includenu tutti i tipi di flash, EPROM è EEPROM. Altera vi cunsiglia di almacenà i flussi di bit Altera FPGA è l'imaghjini di u prugramma Nios V in una memoria non volatile, è di utilizà a memoria flash seriale cum'è u dispusitivu di avvio per i processori Nios V.
Information Related
· Guida di l'utente di l'interfaccia flash seriale generica Altera FPGA IP
· Guida di l'utente di u cliente Mailbox Altera FPGA IP · Guida di l'utente di a memoria flash MAX® 10: Core IP Altera FPGA IP Flash on-chip
2.4. Migliori pratiche per l'orologi è i reset
Capisce cumu u clock di u processore Nios V è u duminiu di reset interagiscenu cù ogni periferica à a quale si cunnetta hè impurtante. Un sistema simplice di processore Nios V principia cù un unicu duminiu di clock, è pò diventà cumplicatu cù un sistema di duminiu multi-clock quandu un duminiu di clock veloce si scontra cù un duminiu di clock lentu. Avete bisognu di piglià nota è capisce cumu sti diversi duminii si sequenzanu fora di u reset è assicurassi chì ùn ci sianu micca prublemi suttili.
Per e migliori pratiche, Altera ricumanda di piazzà u processore Nios V è a memoria d'avvio in u listessu duminiu di clock. Ùn liberate micca u processore Nios V da u reset in un duminiu di clock veloce quandu si avvia da una memoria chì reside in un duminiu di clock assai lentu, chì pò causà un errore di fetch d'istruzzioni. Pudete avè bisognu di qualchì sequenziamentu manuale al di là di ciò chì Platform Designer furnisce per difettu, è pianificà a topologia di rilascio di reset in cunsequenza secondu u vostru casu d'usu. Se vulete resettà u vostru sistema dopu chì si accende è funziona per un pezzu, applicate e stesse cunsiderazioni à a sequenziamentu di reset di u sistema è à u requisitu d'inizializazione dopu u reset.
2.4.1. Sistema JTAG Clock
Specificà i vincoli di clock in ogni sistema di processore Nios V hè una cunsiderazione impurtante di cuncepimentu di u sistema è hè necessaria per a currettezza è u cumpurtamentu deterministicu. L'analizatore di timing Quartus Prime esegue analisi di timing staticu per validà e prestazioni di timing di tutta a logica in u vostru cuncepimentu utilizendu una metodologia di vincoli, analisi è reporting standard di l'industria.
Examp1. Orologio basicu di 100 MHz cù un ciclu di travagliu 50/50 è una frequenza di 16 MHzTAG Clock
#***************************************************************** # Creà un clock 100MHz #************************************************************* create_clock -name {clk} -period 10 [get_ports {clk}] #************************** Creà un J 16MHzTAG Orologiu #*************************

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 35

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
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}] Informazioni correlate Libru di cucina di l'analizatore di timing Quartus Prime
2.4.2. Interfaccia di dumanda di reset
U processore Nios V include una funzione di richiesta di reset opzionale. A funzione di richiesta di reset hè cumposta da i signali reset_req è reset_req_ack.
Per attivà a dumanda di reset in Platform Designer: 1. Lanciate l'Editore di Parametri IP di u Processore Nios V. 2. In l'impostazione Aduprà a Dumanda di Reset, attivate l'Interfaccia Aggiungi Dumanda di Reset.
opzione.
Figura 24. Attivazione di a dumanda di reset di u processore Nios V
U signale reset_req agisce cum'è una interruzzione. Quandu si afferma u reset_req, si dumanda di resettà u core. U core aspetta ogni transazzione di bus in corsu per compie a so operazione. Per esempiuampVale à dì, s'ellu ci hè una transazzione d'accessu à a memoria pendente, u core aspetta una risposta cumpleta. In listessu modu, u core accetta qualsiasi risposta d'istruzione pendente ma ùn emette micca una dumanda d'istruzione dopu avè ricevutu u signale reset_req.
L'operazione di reset si compone di u flussu seguente: 1. Cumplettà tutte l'operazioni pendenti 2. Svuotà u pipeline internu 3. Impostare u Contatore di Programma à u vettore di reset 4. Resettà u core L'intera operazione di reset richiede uni pochi di cicli di clock. U reset_req deve rimanere asseritu finu à chì reset_req_ack sia asseritu chì indica chì l'operazione di reset di u core hè stata cumpletata cù successu. Se ùn si face micca cusì, u statu di u core hè micca deterministicu.

Manuale di cuncepimentu di processori integrati Nios® V 36

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
2.4.2.1. Casi d'usu tipicu
· Pudete affirmà u signale reset_req da l'accensione per impedisce à u core di u processore Nios V di inizià l'esecuzione di u prugramma da u so vettore di reset finu à chì altri host FPGA in u sistema inizializanu a memoria di avvio di u processore Nios V. In questu casu, tuttu u sottosistema pò sperimentà un reset hardware pulitu. U processore Nios V hè mantinutu indefinitamente in un statu di richiesta di reset finu à chì l'altri host FPGA inizializanu a memoria di avvio di u processore.
· In un sistema induve duvete resettà u core di u processore Nios V senza interrompe u restu di u sistema, pudete affirmà u signale reset_req per fermà pulitamente l'operazione attuale di u core è riavvià u processore da u vettore di reset una volta chì u sistema libera u signale reset_req_ack.
· Un host esternu pò aduprà l'interfaccia di dumanda di reset per facilità l'implementazione di e seguenti attività:
— Fermate u prugramma attuale di u processore Nios V.
— Caricate un novu prugramma in a memoria d'avvio di u processore Nios V.
— Permette à u processore di cumincià à eseguisce u novu prugramma.
Altera vi cunsiglia d'implementà un mecanismu di timeout per monitorà u statu di u signale reset_req_ack. Sè u core di u processore Nios V cade in una cundizione di statu d'attesa infinita è si blocca per una ragione scunnisciuta, reset_req_ack ùn pò micca esse affirmata indefinitamente. U mecanismu di timeout vi permette di:
· Definisce un periodu di timeout di ricuperazione è eseguisce a ricuperazione di u sistema cù un reset di u livellu di u sistema.
· Eseguite un reset di livellu hardware.
2.4.3. Resettà l'IP di liberazione
I dispusitivi basati annantu à Altera SDM utilizanu un'architettura parallela, basata annantu à settori, chì distribuisce a logica di u core fabric in parechji settori. Altera vi cunsiglia d'utilizà u Reset Release Altera FPGA IP cum'è unu di l'input iniziali à u circuitu di reset. I dispusitivi basati annantu à Intel® SDM includenu i dispusitivi Stratix® 10 è AgilexTM. I dispusitivi basati annantu à u bloccu di cuntrollu ùn sò micca affettati da questu requisitu.
Information Related
AN 891: Utilizendu u Reset Release Altera FPGA IP
2.5. Assignà un agente predefinitu
Platform Designer vi permette di specificà un agente predefinitu chì agisce cum'è l'agente predefinitu di risposta à l'errore. L'agente predefinitu chì designate furnisce un serviziu di risposta à l'errore per l'ospiti chì tentanu accessi micca decodificati in a mappa di l'indirizzi.
I seguenti scenarii scatenanu un avvenimentu micca decodificatu:
· Violazione di u statu di sicurezza di e transazzioni di u bus
· Accessu à transazzione à una regione di memoria indefinita
· Eventu eccezziunale è ecc.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 37

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Un agente predefinitu deve esse assignatu per gestisce tali eventi, induve a transazzione indefinita hè reindirizzata à l'agente predefinitu è ​​​​successivamente risponde à u processore Nios V cù una risposta d'errore.
Information Related
· Guida di l'utente di Quartus Prime Pro Edition: Designer di piattaforma. Designazione di un agente predefinitu
· Guida di l'utente di Quartus Prime Pro Edition: Designer di piattaforma. Risposta à l'errore Slave Altera FPGA IP
· Github – Cumponenti di reset supplementari per Qsys

2.6. Assignazione di un agente UART per a stampa
A stampa hè utile per debugging l'applicazione software, è ancu per monitorà u statu di u vostru sistema. Altera ricumanda di stampà l'infurmazioni basiche cum'è un missaghju d'avviu, un missaghju d'errore è u prugressu di l'esecuzione di l'applicazione software.
Evitate d'utilizà a funzione di a libreria printf() in e seguenti circustanze: · A libreria printf() face chì l'applicazione si blocchi se nisun host ùn legge l'output.
Questu hè applicabile à J.TAG Solu UART. · A libreria printf() cunsuma grandi quantità di memoria di prugramma.

2.6.1. Prevenzione di stalli da parte di a JTAG UART

Tavula 23. Differenze trà UART tradiziunale è JTAG UART

Tipu UART UART tradiziunale

Descrizzione
Trasmette dati seriali indipendentemente da se un host esternu hè in ascoltu. Se nisun host ùn legge i dati seriali, i dati sò persi.

JTAG UART

Scrive i dati trasmessi in un buffer di output è si basa nantu à un host esternu per leghje da u buffer per svuotallu.

U JTAG U driver UART aspetta quandu u buffer di output hè pienu. U JTAG U driver UART aspetta chì un host esternu legga da u buffer di output prima di scrive più dati di trasmissione. Stu prucessu impedisce a perdita di dati di trasmissione.
Tuttavia, quandu u debugging di u sistema ùn hè micca necessariu, cum'è durante a pruduzzione, i sistemi integrati sò implementati senza un PC host cunnessu à J.TAG UART. Sè u sistema hà sceltu a JTAG UART cum'è agente UART, puderia causà un stallo di u sistema perchè nisun host esternu hè cunnessu.
Per impedisce u stallo da JTAG UART, applicà una di e seguenti opzioni:

Manuale di cuncepimentu di processori integrati Nios® V 38

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16

Tavula 24. Prevenzione di u stallo da JTAG UART

Opzioni
Nisuna interfaccia UART è driver presenti
Aduprà un'altra interfaccia UART è un driver
Preserve JTAG Interfaccia UART (senza driver)

Durante u Sviluppu di l'Hardware (in Platform Designer)

Durante u Sviluppu di Software (in l'Editore di Pacchetti di Supportu di a Scheda)

Eliminà JTAG UART da u sistema

Cunfigurà hal.stdin, hal.stdout è hal.stderr cum'è Nisunu.

Rimpiazzà JTAG UART cù altri soft Cunfigurà hal.stdin, hal.stdout è hal.stderr

IP UART

cù altri IP UART morbidi.

Preserve JTAG UART in u sistema

· Cunfigurà hal.stdin, hal.stdout è hal.stderr cum'è None in l'Editore di Pacchetti di Supportu di a Scheda.
· Disattivà JTAG Driver UART in a tabulazione Driver BSP.

2.7. JTAG Segnali
U modulu di debug di u processore Nios V usa u JTAG interfaccia per u scaricamentu di u software ELF è u debugging di u software. Quandu debugate u vostru disignu cù JTAG interfaccia, a JTAG I signali TCK, TMS, TDI è TDO sò implementati cum'è parte di u disignu. Specificà u JTAG I vincoli di signale in ogni sistema di processore Nios V sò una cunsiderazione impurtante di cuncepimentu di u sistema è sò necessarii per a currettezza è u cumpurtamentu deterministicu.
Altera ricumanda chì a frequenza di clock di u sistema di qualsiasi cuncepimentu sia almenu quattru volte u J.TAG frequenza di clock per assicurà chì u core di strumentazione on-chip (OCI) funziona currettamente.
Infurmazioni cunnesse · Libru di cucina di l'analizatore di timing Quartus® Prime: JTAG Segnali
Per più infurmazione nantu à JTAG Linee guida per i vincoli di timing. · KDB: Perchè u scaricamentu di niosv falla cù un processore Nios® V/m senza pipeline à
JTAG Frequenza 24 MHz o 16 MHz ?
2.8. Ottimizazione di e prestazioni di u sistema Platform Designer
Platform Designer furnisce strumenti per ottimizà e prestazioni di l'interconnessione di u sistema per i disinni Altera FPGA.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 39

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepitore di piattaforma
726952 | 2025.07.16
Figura 25. Esempiu d'ottimizazioneamples

L'exampA figura mostrata mostra i seguenti passi:
1. Aghjusta Pipeline Bridge per alleviare i percorsi critichi piazzendulu: a. Trà l'Instruction Manager è i so agenti b. Trà u Data Manager è i so agenti
2. Applicà a vera RAM On-Chip à doppia porta, cù ogni porta dedicata rispettivamente à u Manager d'Istruzioni è à u Manager di Dati.

Manuale di cuncepimentu di processori integrati Nios® V 40

Mandate Feedback

2. Cuncepimentu di u sistema hardware di u processore Nios V cù u software Quartus Prime è u cuncepimentu di piattaforma 726952 | 2025.07.16
Fate riferimentu à i ligami cunnessi quì sottu, chì prisentanu tecniche per sfruttà l'arnesi dispunibili è i compromessi di ogni implementazione.
Infurmazioni cunnesse · Guida di l'utente di Quartus® Prime Pro Edition: Designer di piattaforma
Per più infurmazioni, riferitevi à u tema Ottimizazione di e prestazioni di u sistema di Platform Designer. · Guida di l'utente di Quartus® Prime Standard Edition: Platform Designer.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 41

726952 | 2025.07.16 Mandate Feedback

3. Cuncepimentu di u sistema di software di u processore Nios V
Stu capitulu descrive u flussu di sviluppu di u software di u processore Nios V è l'arnesi software chì pudete aduprà per sviluppà u vostru sistema di cuncepimentu integratu. U cuntenutu serve cum'è una panoramica.view prima di sviluppà un sistema software di processore Nios V.
Figura 26. Flussu di cuncepimentu di software
Principià

Generà u BSP in u Designer di Piattaforma Utilizendu l'Editore BSP

Generate u BSP cù u shell di cumanda Nios V
Genera l'applicazione CMake Build File Utilizendu u Shell di Cumanda Nios V

Nota:

Impurtà u BSP è l'applicazione CMake Build File
Custruisce l'applicazione di u processore Nios V aduprendu u
IDE RiscFree per Intel FPGA

Custruite l'applicazione Nios V Processor aduprendu qualsiasi
editore di codice surghjente di linea di cummanda, CMake, è Make
cumandamenti
Fine

Altera vi cunsiglia di utilizà un kit di sviluppu Altera FPGA o una scheda prototipu persunalizata per u sviluppu è u debugging di u software. Parechje periferiche è funzioni à livellu di sistema sò dispunibili solu quandu u vostru software funziona nantu à una scheda vera.

© Altera Corporation. Altera, u logu Altera, u logu "a" è altre marche Altera sò marchi cummerciali di Altera Corporation. Altera si riserva u dirittu di fà cambiamenti à qualsiasi pruduttu è serviziu in ogni mumentu senza preavvisu. Altera ùn assume alcuna responsabilità derivante da l'applicazione o l'usu di qualsiasi infurmazione, pruduttu o serviziu descrittu quì, salvu chì sia espressamente accunsentutu per iscrittu da Altera. Si cunsiglia à i clienti di Altera d'ottene l'ultima versione di e specifiche di u dispusitivu prima di fidà si di qualsiasi infurmazione publicata è prima di fà ordini per prudutti o servizii. *Altri nomi è marche ponu esse rivendicati cum'è pruprietà di altri.

3. Cuncepimentu di u sistema di software di u processore Nios V 726952 | 2025.07.16
3.1. Flussu di sviluppu di u software di u processore Nios V
3.1.1. Prughjettu di u Pacchettu di Supportu di u Cunsigliu d'Amministrazione
Un prughjettu Nios V Board Support Package (BSP) hè una biblioteca specializata chì cuntene codice di supportu specificu di u sistema. Un BSP furnisce un ambiente di runtime di software persunalizatu per un processore in un sistema hardware di processore Nios V.
U software Quartus Prime furnisce l'editore di pacchetti di supportu di a scheda Nios V è l'arnesi di utilità niosv-bsp per mudificà i paràmetri chì cuntrolanu u cumpurtamentu di u BSP.
Un BSP cuntene i seguenti elementi: · Stratu d'astrazione hardware · Driver di dispositivi · Pacchetti software opzionali · Sistema operativu in tempu reale opzionale
3.1.2. Prughjettu di l'applicazione
Un prughjettu d'applicazione Nios VC/C++ hà e seguenti caratteristiche: · Si compone di una cullezzione di codice surghjente è di un CMakeLists.txt.
— U CMakeLists.txt compila u codice surghjente è u cullega cù un BSP è una o più biblioteche opzionali, per creà un .elf file
· Una di e fonti files cuntene a funzione main(). · Include codice chì chjama funzioni in biblioteche è BSP.
Altera furnisce u strumentu di utilità niosv-app in l'arnesi di utilità di u software Quartus Prime per creà l'applicazione CMakeLists.txt, è RiscFree IDE per Altera FPGA per mudificà u codice surghjente in un ambiente basatu annantu à Eclipse.
3.2. Strumenti di Sviluppu Embedded Altera FPGA
U processore Nios V supporta i seguenti strumenti per u sviluppu di software: · Interfaccia grafica d'utilizatore (GUI) - Strumenti di sviluppu graficu dispunibili in
Sistemi operativi (OS) Windows* è Linux*. — Editore di pacchetti di supportu di a scheda Nios V (editore Nios V BSP) — Ashling RiscFree IDE per Altera FPGA · Strumenti da linea di cummandu (CLI) – Strumenti di sviluppu chì sò iniziati da Nios V Command Shell. Ogni strumentu furnisce a so propria documentazione in forma d'aiutu accessibile da a linea di cummandu. Aprite Nios V Command Shell è scrivite u cumandamentu seguente: –aiutu à view u menu Aiutu. — Strumenti Nios V Utilities — File Strumenti di cunversione di furmatu — Altri strumenti di utilità

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 43

3. Cuncepimentu di u sistema di software di u processore Nios V 726952 | 2025.07.16

Tavula 25. Strumenti GUI è Strumenti di Linea di Cummandu Riepilogu di l'attività

Task

Strumentu GUI

Strumentu di linea di cummanda

Creà un BSP

Editore Nios V BSP

· In u software Quartus Prime Pro Edition: niosv-bsp -c -s=<.qsys file> -t= [OPZIONI] impostazioni.bsp
· In u software Quartus Prime Standard Edition: niosv-bsp -c -s=<.sopcinfo file> -t= [OPZIONI] impostazioni.bsp

Generazione di un BSP aduprendu un .bsp esistente file
Aghjurnamentu di un BSP

Editore Nios V BSP Editore Nios V BSP

niosv-bsp -g [OPZIONI] settings.bsp niosv-bsp -u [OPZIONI] settings.bsp

Esaminendu un BSP

Editore Nios V BSP

niosv-bsp -q -E= [OPZIONI] impostazioni.bsp

Creazione di una applicazione

niosv-app -a= -b= -s= filecartulare s> [OPZIONI]

Creazione di una biblioteca d'utilizatori

niosv-app -l= -s= files cartulare> -p= [OPZIONI]

Mudificà una applicazione Mudificà una biblioteca d'utilizatori Custruisce una applicazione

IDE RiscFree per Altera FPGA
IDE RiscFree per Altera FPGA
IDE RiscFree per Altera FPGA

Qualsiasi editore di codice sorgente di linea di cummanda
Qualsiasi editore di codice sorgente di linea di cummanda
· fà · cmacà

Custruisce una biblioteca d'utilizatori

IDE RiscFree per Altera FPGA

· fà · cmacà

Scaricamentu di una applicazione ELF
Cunvertisce u .elf file

IDE RiscFree per Altera FPGA

scaricamentu di niosv
· elf2flash · elf2hex

Information Related
Guida di l'utente di Ashling RiscFree Integrated Development Environment (IDE) per Altera FPGA

3.2.1. Editore di pacchetti di supportu per a scheda di processore Nios V
Pudete aduprà l'editore BSP di u processore Nios V per eseguisce e seguenti attività: · Creà o mudificà un prughjettu BSP di u processore Nios V · Mudificà i paràmetri, e regioni di u linker è e mappature di sezioni · Selezziunà i pacchetti software è i driver di dispositivi.
E capacità di l'Editore BSP includenu e capacità di l'utilità niosv-bsp. Ogni prughjettu creatu in l'Editore BSP pò ancu esse creatu aduprendu l'utilità di linea di cummanda.

Manuale di cuncepimentu di processori integrati Nios® V 44

Mandate Feedback

3. Cuncepimentu di u sistema di software di u processore Nios V 726952 | 2025.07.16

Nota:

Per u software Quartus Prime Standard Edition, riferitevi à AN 980: Nios V Processor Quartus Prime Software Support per i passi per invucà l'interfaccia grafica di l'editore BSP.

Per lancià l'editore BSP, seguitate sti passi: 1. Aprite Platform Designer è navigate à u File menu.
a. Per apre un paràmetru BSP esistente file, cliccate nant'à Apri… b. Per creà un novu BSP, cliccate nant'à Novu BSP… 2. Selezziunate a tabulazione Editore BSP è furnite i dettagli apprupriati.

Figura 27. Lanciate l'editore BSP

Infurmazioni cunnesse AN 980: Processore Nios V Supportu di u software Quartus Prime
3.2.2. IDE RiscFree per Altera FPGA
L'IDE RiscFree per Altera FPGA hè un IDE basatu annantu à Eclipse per u processore Nios V. Altera vi cunsiglia di sviluppà u software di u processore Nios V in questu IDE per e seguenti ragioni: · E funzioni sò sviluppate è verificate per esse cumpatibili cù Nios V.
flussu di custruzzione di u processore. · Equipatu cù tutte e catene di strumenti necessarie è strumenti di supportu chì vi permettenu
per inizià facilmente u sviluppu di u processore Nios V.
Informazioni correlate Guida di l'utente di Ashling RiscFree Integrated Development Environment (IDE) per Altera FPGA
3.2.3. Strumenti di utilità Nios V
Pudete creà, mudificà è custruisce prugrammi Nios V cù cumandamenti scritti in una linea di cumanda o integrati in un script. L'arnesi di linea di cumanda Nios V descritti in questa sezione sò in u Repertoriu /niosv/bin.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 45

3. Cuncepimentu di u sistema di software di u processore Nios V 726952 | 2025.07.16

Tavula 26. Strumenti di Nios V Utilities

Strumenti di Linea di Cummandu

Riassuntu

niosv-app niosv-bsp niosv-download niosv-shell niosv-stack-report

Per generà è cunfigurà un prughjettu d'applicazione.
Per creà o aghjurnà i paràmetri BSP file è creà u BSP files. Per scaricà l'ELF file à un processore Nios® V.
Per apre u Nios V Command Shell. Per informà vi di u spaziu di memoria restante dispunibule per a vostra applicazione .elf per l'usu di stack o heap.

3.2.4. File Strumenti di cunversione di furmatu

File A cunversione di furmatu hè qualchì volta necessaria quandu si passanu dati da un'utilità à l'altra. U file strumenti di cunversione di furmatu sò in u
cartulare d'installazione di u software> cartulare /niosv/bin.

Tabella 27. File Strumenti di cunversione di furmatu

Strumenti di linea di cummanda elf2flash elf2hex

Riassuntu Per traduce u .elf file in furmatu .srec per a prugrammazione di memoria flash. Per traduce u .elf file in furmatu .hex per l'inizializazione di a memoria.

3.2.5. Altri Strumenti di Utilità

Pudete avè bisognu di i seguenti strumenti di linea di cummanda quandu custruite un sistema basatu annantu à un processore Nios V. Quessi strumenti di linea di cummanda sò furniti da Intel in /quartus/bin o acquistatu da
strumenti open-source.

Tavula 28. Altri strumenti di linea di cummanda

Strumenti di Linea di Cummandu

Tipu

Riassuntu

terminale juart

Furnitu da Intel

Per monitorà stdout è stderr, è per furnisce input à un processore Nios® V
sottosistema per mezu di stdin. Stu strumentu s'applica solu à JTAG UART IP quandu hè cunnessu à u processore Nios® V.

openocd

Furnitu da Intel per eseguisce OpenOCD.

openocd-cfg-gen

Furnitu da Intel · Per generà a cunfigurazione OpenOCD file. · Per visualizà JTAG indice di u dispusitivu di a catena.

Manuale di cuncepimentu di processori integrati Nios® V 46

Mandate Feedback

726952 | 2025.07.16 Mandate Feedback
4. Soluzioni di cunfigurazione è avviu di u processore Nios V
Pudete cunfigurà u processore Nios V per avvià è eseguisce u software da diverse locu di memoria. A memoria d'avviu hè a memoria flash Quad Serial Peripheral Interface (QSPI), a memoria On-Chip (OCRAM), o a memoria Tightly Coupled Memory (TCM).
Infurmazioni cunnesse · Cundizioni di trigger di accensione à a pagina 193 · Trigger di accensione
Per più infurmazione nantu à i trigger di accensione.
4.1. Introduzione
U processore Nios V supporta dui tipi di prucessi d'avvio: · Execute-in-Place (XIP) cù a funzione alt_load() · Prugramma copiatu in RAM cù a copiatrice d'avvio. U sviluppu di i prugrammi integrati Nios V hè basatu annantu à u stratu d'astrazione hardware (HAL). L'HAL furnisce un picculu prugramma di caricatore d'avvio (cunnisciutu ancu cum'è copiatrice d'avvio) chì copia e sezzioni pertinenti di u linker da a memoria d'avvio à a so pusizione d'esecuzione à u mumentu di l'avvio. Pudete specificà e pusizioni d'esecuzione di a memoria di u prugramma è di i dati manipulendu i paràmetri di l'Editore di u Pacchettu di Supportu di a Carta (BSP). Questa sezione descrive: · Copiatrice d'avvio di u processore Nios V chì avvia u vostru sistema di processore Nios V secondu
a selezzione di a memoria d'avviu · Opzioni d'avviu di u processore Nios V è flussu generale · Soluzioni di prugrammazione Nios V per a memoria d'avviu selezziunata
4.2. Cunnessione di l'applicazioni
Quandu si genera u prughjettu di u processore Nios V, l'editore BSP genera dui linker ligati. files: · linker.x: U cumandamentu di u linker file chì l'applicazione generata facefile usa
per creà u binariu .elf file. · linker.h: Contene infurmazioni nantu à u layout di memoria di u linker. Tutte e mudificazioni di l'impostazioni di u linker chì fate à u prugettu BSP affettanu u cuntenutu di sti dui linker. fileOgni applicazione di processore Nios V cuntene e seguenti sezioni di linker:
© Altera Corporation. Altera, u logu Altera, u logu "a" è altre marche Altera sò marchi cummerciali di Altera Corporation. Altera si riserva u dirittu di fà cambiamenti à qualsiasi pruduttu è serviziu in ogni mumentu senza preavvisu. Altera ùn assume alcuna responsabilità derivante da l'applicazione o l'usu di qualsiasi infurmazione, pruduttu o serviziu descrittu quì, salvu chì sia espressamente accunsentutu per iscrittu da Altera. Si cunsiglia à i clienti di Altera d'ottene l'ultima versione di e specifiche di u dispusitivu prima di fidà si di qualsiasi infurmazione publicata è prima di fà ordini per prudutti o servizii. *Altri nomi è marche ponu esse rivendicati cum'è pruprietà di altri.

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

Tavula 29. Sezzioni di Linker

.testu

Sezzioni di ligame

.rodata

.rwdata

.bss

.mucchiu

.stack

Descrizzioni Codice eseguibile. Qualsiasi dati di sola lettura utilizati in l'esecuzione di u prugramma. Memorizza dati di lettura-scrittura utilizati in l'esecuzione di u prugramma. Contene dati statichi non inizializzati. Contene memoria allocata dinamicamente. Memorizza parametri di chjama di funzione è altri dati temporanei.

Pudete aghjunghje sezzioni di linker supplementari à u .elf. file per cuntene codice è dati persunalizati. Queste sezioni di linker sò piazzate in regioni di memoria nominate, definite per currisponde à i dispositivi di memoria fisica è l'indirizzi. Per difettu, BSP Editor genera automaticamente queste sezioni di linker. Tuttavia, pudete cuntrullà e sezioni di linker per una applicazione particulare.

4.2.1. Cumportamentu di ligame
Questa sezione descrive u cumpurtamentu di ligame predefinitu di l'editore BSP è cumu cuntrullà u cumpurtamentu di ligame.

4.2.1.1. Collegamentu BSP predefinitu
Durante a cunfigurazione di BSP, l'arnesi eseguiscenu automaticamente i seguenti passi:
1. Assignà nomi di regione di memoria: Assignà un nome à ogni dispositivu di memoria di u sistema è aghjunghje ogni nome à u linker file cum'è una regione di memoria.
2. Truvà a memoria più grande: Identificà a più grande regione di memoria di lettura è scrittura in u linker file.
3. Assignà sezzioni di linker: Pone e sezzioni di linker predefinite (.text, .rodata, .rwdata, .bss, .heap, è .stack) in a regione di memoria identificata in u passu precedente.
4. Scrivite files: Scrivite u linker.x è u linker.h files.
Tipicamente, u schema di allocazione di a sezione di u linker funziona durante u prucessu di sviluppu di u software perchè l'applicazione hè garantita per funziunà se a memoria hè abbastanza grande.
E regule per u cumpurtamentu di ligame predefinitu sò cuntenute in i scripts Tcl generati da Altera bsp-set-defaults.tcl è bsp-linker-utils.tcl chì si trovanu in Repertoriu /niosv/scripts/bsp-defaults. U cumandamentu niosv-bsp invoca questi script. Ùn mudificate micca direttamente questi script.

Manuale di cuncepimentu di processori integrati Nios® V 48

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

4.2.1.2. Collegamentu BSP cunfigurabile
Pudete gestisce u cumpurtamentu di ligame predefinitu in a tabulazione Linker Script di l'Editore BSP. Manipulate u script di u linker aduprendu i metudi seguenti: · Aghjunghje una regione di memoria: Mappa un nome di regione di memoria à un dispositivu di memoria fisicu. · Aghjunghje una mappatura di sezione: Mappa un nome di sezione à una regione di memoria. U BSP
L'editore vi permette di view a mappa di memoria prima è dopu avè fattu cambiamenti.

4.3. Metodi d'avviu di u processore Nios V

Ci sò uni pochi di metudi per avvià u processore Nios V in i dispositivi Altera FPGA. I metudi per avvià u processore Nios V varianu secondu a selezzione di memoria flash è e famiglie di dispositivi.

Tavula 30. Memorie Flash supportate cù e rispettive opzioni di avvio

Memorie d'avvio supportate

Dispositivu

Flash integratu in chip (per a cunfigurazione interna)

Massimu 10 dispusitivi solu (cù IP Flash On-Chip)

Flash QSPI di scopu generale (solu per i dati di l'utente)

Tutti i dispositivi FPGA supportati (cù l'interfaccia flash seriale generica FPGA IP)

Cunfigurazione QSPI Flash (per a cunfigurazione seriale attiva)

Basatu nantu à i blocchi di cuntrollu
dispusitivi (cù Generic
Interfaccia Flash Seriale Intel FPGA IP)(2)

Metodi d'avvio di u processore Nios V

Locu di l'esecuzione di l'applicazione

Boot Copier

L'applicazione di u processore Nios V hè eseguita in situ da a memoria flash on-chip.

Memoria Flash On-Chip (XIP) + OCRAM/ RAM esterna (per e sezioni di dati scrivibili)

funzione alt_load()

Applicazione di u processore Nios V copiata da a memoria flash on-chip à a RAM cù a copiatrice di avvio

OCRAM/RAM esterna

Riutilizà u Bootloader via GSFI

L'applicazione di u processore Nios V hè eseguita in situ da una memoria flash QSPI di usu generale.

Memoria flash QSPI di usu generale (XIP) + OCRAM/ RAM esterna (per sezioni di dati scrivibili)

funzione alt_load()

Applicazione di u processore Nios V copiata da a memoria flash QSPI di usu generale à a RAM cù a copiatrice di avvio

OCRAM/RAM esterna

Bootloader via GSFI

L'applicazione di u processore Nios V hè eseguita in situ da a cunfigurazione QSPI flash

Cunfigurazione QSPI flash (XIP) + OCRAM/ RAM esterna (per e sezioni di dati scrivibili)

funzione alt_load()

Applicazione di u processore Nios V copiata da a cunfigurazione QSPI flash à a RAM cù a copiatrice di avvio

OCRAM/ RAM esterna Bootloader via GSFI cuntinuatu…

(2) Vede l'AN 980: Nios V Processor Quartus Prime Software Support per a lista di i dispusitivi.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 49

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

Memorie d'avvio supportate
Memoria integrata in chip (OCRAM) Memoria strettamente accoppiata (TCM)

Dispositivu
Dispositivi basati annantu à SDM (cù Mailbox Client Intel FPGA IP). (2)
Tutti i dispositivi Altera FPGA supportati (2)
Tutti i dispositivi Altera FPGA supportati (2)

Metodi d'avvio di u processore Nios V
Applicazione di u processore Nios V copiata da a cunfigurazione QSPI flash à a RAM cù a copiatrice di avvio
L'applicazione di u processore Nios V hè eseguita in situ da OCRAM
L'applicazione di u processore Nios V hè eseguita in situ da TCM

Locu di l'esecuzione di l'applicazione

Boot Copier

OCRAM/RAM esterna Bootloader via SDM

OCRAM

funzione alt_load()

Istruzione TCM (XIP) Nisuna + Dati TCM (per e sezioni di dati scrivibili)

Figura 28. Flussu d'avvio di u processore Nios V

Resettate

U processore salta per resettà u vettore (iniziu di u codice di avvio)

U codice di l'applicazione pò esse copiatu in un'altra locu di memoria (secondu l'opzioni di avvio)
U codice d'avvio inizializza u processore

Sicondu l'opzioni d'avvio, u codice d'avvio pò copià i valori iniziali per i dati/codice in un altru spaziu di memoria (alt_load)
U codice d'avvio inizializza u codice di l'applicazione è u spaziu di memoria di dati
U codice d'avvio inizializza tutte e periferiche di u sistema cù i driver HAL (alt_main)
Entrata à u principale
Infurmazioni cunnesse · Guida di l'utente di l'interfaccia flash seriale generica Altera FPGA IP
Manuale di cuncepimentu di processori integrati Nios® V 50

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
· Guida di l'utente di u cliente Mailbox Altera FPGA IP · AN 980: Supportu di u software Quartus Prime per u processore Nios V
4.4. Introduzione à i metudi d'avviu di u processore Nios V
I sistemi di processore Nios V necessitanu chì l'imaghjini di u software sianu cunfigurate in a memoria di u sistema prima chì u processore possi cumincià à eseguisce u prugramma di l'applicazione. Vede e Sezzioni di u Linker per e sezzioni di u linker predefinite.
L'editore BSP genera un script di linker chì esegue e seguenti funzioni: · Assicura chì u software di u processore sia ligatu in cunfurmità cù i paràmetri di u linker
di l'editore BSP è determina induve u software reside in memoria. · Posiziona a regione di codice di u processore in u cumpunente di memoria secondu u
cumpunenti di memoria assignati.
A sezione seguente descrive brevemente i metudi d'avvio di u processore Nios V dispunibili.
4.4.1. Applicazione di u processore Nios V Esecuzione in situ da a memoria flash di avvio
Altera hà cuncipitu i cuntrolli flash in modu chì u spaziu d'indirizzu flash d'avvio sia immediatamente accessibile à u processore Nios V dopu u reset di u sistema, senza a necessità d'inizializà u cuntrolli di memoria o i dispositivi di memoria. Questu permette à u processore Nios V d'eseguisce u codice di l'applicazione almacenatu direttamente nantu à i dispositivi d'avvio senza aduprà una copiatrice d'avvio per copià u codice in un altru tipu di memoria. I cuntrolli flash sò: · Flash On-Chip cù IP Flash On-Chip (solu in u dispositivu MAX® 10) · Flash QSPI di scopu generale cù IP d'interfaccia flash seriale generica · Flash QSPI di cunfigurazione cù IP d'interfaccia flash seriale generica (eccettu MAX 10
dispusitivi)
Quandu l'applicazione di u processore Nios V s'esegue in situ da a memoria flash di avvio, l'editore BSP esegue e seguenti funzioni: · Imposta e sezioni di u linker .text in a regione di memoria flash di avvio. · Imposta e sezioni di u linker .bss, .rodata, .rwdata, .stack è .heap in a RAM
regione di memoria. Duvete attivà a funzione alt_load() in i paràmetri BSP per copià e sezioni di dati (.rodata, .rwdata,, .exceptions) in a RAM dopu u reset di u sistema. A sezione di codice (.text) ferma in a regione di memoria flash di avvio.
Infurmazioni cunnesse · Interfaccia Flash seriale generica Altera FPGA IP Guida di l'utente · Altera MAX 10 Guida di l'utente di memoria Flash
4.4.1.1. alt_load()
Pudete attivà a funzione alt_load() in u codice HAL aduprendu l'editore BSP.
Quandu hè aduprata in u flussu d'avvio execute-in-place, a funzione alt_load() esegue i seguenti compiti:

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 51

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

· Funziona cum'è una mini copiatrice d'avvio chì copia e sezioni di memoria in RAM secondu i paràmetri BSP.
· Copia e sezioni di dati (.rodata, .rwdata, .exceptions) in a RAM ma micca e sezioni di codice (.text). A sezione di codice (.text) hè una sezione di sola lettura è ferma in a regione di memoria flash di avvio. Questa partizione aiuta à minimizà l'usu di a RAM, ma pò limità e prestazioni di esecuzione di u codice perchè l'accessi à a memoria flash sò più lenti di l'accessi à a RAM integrata in u chip.

A seguente tavula elenca i paràmetri è e funzioni di l'editore BSP:

Tavula 31. Impostazioni di l'editore BSP
Impostazione di l'editore 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

Funzione Attiva a funzione alt_load(). alt_load() copia a sezione .rodata in RAM. alt_load() copia a sezione .rwdata in RAM. alt_load() copia a sezione .exceptions in RAM.

4.4.2. Applicazione di u processore Nios V copiata da a memoria flash di avvio à a RAM cù Boot Copier
U processore Nios V è HAL includenu una copiatrice d'avvio chì furnisce funzionalità sufficienti per a maiò parte di l'applicazioni di u processore Nios V è hè cunveniente da implementà cù u flussu di sviluppu di u software Nios V.
Quandu l'applicazione usa una copiatrice d'avvio, imposta tutte e sezzioni di u linker (.text, .heap, .rwdata, .rodata, .bss, .stack) in una RAM interna o esterna. L'usu di a copiatrice d'avvio per copià una applicazione di processore Nios V da a memoria flash d'avvio à a RAM interna o esterna per l'esecuzione aiuta à migliurà e prestazioni d'esecuzione.
Per sta opzione d'avvio, u processore Nios V principia à eseguisce u software di copia d'avvio dopu à u reset di u sistema. U software copia l'applicazione da a memoria flash d'avvio à a RAM interna o esterna. Una volta chì u prucessu hè cumpletu, u processore Nios V trasferisce u cuntrollu di u prugramma à l'applicazione.

Nota:

Sè a copiatrice d'avvio hè in flash, allora a funzione alt_load() ùn hà bisognu d'esse chjamata perchè tramindui servenu u listessu scopu.

4.4.2.1. Bootloader di u processore Nios V via l'interfaccia flash seriale generica
U Bootloader via GSFI hè u copiatore di avvio di u processore Nios V chì supporta a memoria flash QSPI in i dispositivi basati nantu à blocchi di cuntrollu. U Bootloader via GSFI include e seguenti funzionalità:
· Localizza l'applicazione software in a memoria non volatile.
· Decomprime è copia l'imagine di l'applicazione software in a RAM.
· Cambia automaticamente l'esecuzione di u processore à u codice di l'applicazione in a RAM dopu à a fine di a copia.

Manuale di cuncepimentu di processori integrati Nios® V 52

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

L'imagine d'avvio si trova ghjustu dopu à a copiatrice d'avvio. Avete bisognu di assicurà chì l'offset di reset di u processore Nios V punti à l'iniziu di a copiatrice d'avvio. A Figura: Mappa di Memoria per QSPI Flash cù Bootloader via GSFI mappa di memoria per QSPI Flash cù Bootloader via GSFI mostra a mappa di memoria flash per QSPI flash quandu si usa una copiatrice d'avvio. Questa mappa di memoria suppone chì a memoria flash immagazzina l'imagine FPGA è u software di l'applicazione.

Tavula 32. Bootloader via GSFI per u core di u processore Nios V

Core di u processore Nios V
Processore Nios V/m

Bootloader via GSFI File Locu
/niosv/components/bootloader/ niosv_m_bootloader.srec

Processore Nios V/g

/niosv/components/bootloader/ niosv_g_bootloader.srec

Figura 29. Mappa di memoria per QSPI Flash cù Bootloader via GSFI

Dati di u Cliente (*.hex)

Codice Applicazione

Nota:

Resettà l'offset vettoriale

Boot Copier

0x01E00000

Imagine FPGA (*.sof)

0x00000000

1. À l'iniziu di a mappa di memoria si trova l'immagine FPGA seguita da i vostri dati, chì consistenu in a copiatrice di avvio è u codice di l'applicazione.
2. Duvete definisce l'offset di reset di u processore Nios V in Platform Designer è puntallu à l'iniziu di a copiatrice di avvio.
3. A dimensione di l'imagine FPGA hè scunnisciuta. Pudete cunnosce a dimensione esatta solu dopu a compilazione di u prugettu Quartus Prime. Duvete determinà un limite superiore per a dimensione di l'imagine Altera FPGA. Per esempiuampPer esempiu, se a dimensione di l'imagine FPGA hè stimata à esse inferiore à 0x01E00000, impostate u Reset Offset à 0x01E00000 in Platform Designer, chì hè ancu l'iniziu di a copiatrice di avvio.
4. Una bona pratica di cuncepimentu consiste à stabilisce l'offset di u vettore di reset à u cunfine di un settore flash per assicurà chì ùn si verifichi alcuna cancellazione parziale di l'immagine FPGA in casu chì l'applicazione software sia aggiornata.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 53

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

4.4.2.2. Bootloader di u processore Nios V via Secure Device Manager
U Bootloader via Secure Device Manager (SDM) hè un codice d'applicazione HAL chì utilizza u driver Mailbox Client Altera FPGA IP HAL per l'avviu di u processore. Altera ricumanda sta applicazione bootloader quandu si usa a cunfigurazione QSPI flash in i dispositivi basati nantu à SDM per avvià u processore Nios V.
Dopu u reset di u sistema, u processore Nios V avvia prima u Bootloader via SDM da una piccula memoria integrata in u chip è esegue u Bootloader via SDM per cumunicà cù a memoria flash QSPI di cunfigurazione utilizendu l'IP di u client Mailbox.
U Bootloader via SDM esegue i seguenti compiti: · Localizza u software Nios V in a memoria flash QSPI di cunfigurazione. · Copia u software Nios V in a RAM integrata o in a RAM esterna. · Cambia l'esecuzione di u processore à u software Nios V in a RAM integrata o
RAM esterna.
Una volta chì u prucessu hè cumpletu, u Bootloader via SDM trasferisce u cuntrollu di u prugramma à l'applicazione di l'utente. Altera ricumanda l'urganizazione di a memoria cum'è descritta in Organizazione di a Memoria per Bootloader via SDM.
Figura 30. Bootloader via u flussu di prucessu SDM

Cunfigurazione

Flash

2

Software Nios V

SDM

Dispositivu FPGA basatu annantu à SDM

IP di u cliente di a casella postale

Logica FPGA Nios V

4 RAM esterna
Software Nios V

Nantu à u chip 4

EMIF

RAM

Memoria On-Chip

IP

Nios V

1

Software

Bootloader via SDM

3

3

1. U processore Nios V esegue u Bootloader via SDM da a memoria integrata in u chip.
2. U Bootloader via SDM cumunicheghja cù a memoria flash di cunfigurazione è localizza u software Nios V.
3. U Bootloader via SDM copia u software Nios V da a memoria flash di cunfigurazione in a RAM integrata / RAM esterna.
4. U Bootloader via SDM cambia l'esecuzione di u processore Nios V à u software Nios V in a RAM integrata / RAM esterna.

4.4.3. Applicazione di u processore Nios V eseguita in situ da OCRAM
In questu metudu, l'indirizzu di reset di u processore Nios V hè impostu à l'indirizzu di basa di a memoria integrata in u chip (OCRAM). U binariu di l'applicazione (.hex) file hè caricatu in l'OCRAM quandu a FPGA hè cunfigurata, dopu chì u disignu di l'hardware hè compilatu in u software Quartus Prime. Una volta chì u processore Nios V hè resettatu, l'applicazione principia à eseguisce è si ramifica finu à u puntu d'entrata.

Manuale di cuncepimentu di processori integrati Nios® V 54

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

Nota:

· L'esecuzione in situ da OCRAM ùn richiede micca una copiatrice d'avvio perchè l'applicazione di u processore Nios V hè digià in piazza à u reset di u sistema.
· Altera ricumanda di attivà alt_load() per questu metudu d'avviu in modu chì u software integratu si cumporta in modu identicu quandu hè resettatu senza ricunfigurà l'imagine di u dispusitivu FPGA.
· Duvete attivà a funzione alt_load() in i paràmetri BSP per copià a sezione .rwdata dopu à u reset di u sistema. In questu metudu, i valori iniziali per e variabili inizializate sò almacenati separatamente da e variabili currispondenti per evità a sovrascrittura durante l'esecuzione di u prugramma.

4.4.4. Applicazione di u processore Nios V eseguita in situ da TCM
U metudu execute-in-place imposta l'indirizzu di reset di u processore Nios V à l'indirizzu di basa di a memoria strettamente accoppiata (TCM). U binariu di l'applicazione (.hex) file hè caricatu in u TCM quandu si cunfigura u FPGA dopu avè compilatu u disignu hardware in u software Quartus Prime. Una volta chì u processore Nios V hè resettatu, l'applicazione principia à eseguisce è si ramifica finu à u puntu d'entrata.

Nota:

L'esecuzione in situ da TCM ùn richiede micca una copiatrice d'avvio perchè l'applicazione di u processore Nios V hè digià in piazza à u reset di u sistema.

4.5. Avvio di u processore Nios V da a memoria flash integrata in u chip (UFM)

L'avviu è l'esecuzione di u software di u processore Nios V da a memoria flash integrata (UFM) hè dispunibule in i dispositivi MAX 10 FPGA. U processore Nios V supporta e duie opzioni d'avviu seguenti utilizendu a memoria flash integrata in u modu di cunfigurazione interna:
· L'applicazione di u processore Nios V s'esegue in situ da a memoria Flash on-chip.
· L'applicazione di u processore Nios V hè copiata da a memoria flash on-chip à a RAM aduprendu una copiatrice d'avvio.

Tavula 33. Memorie Flash supportate cù e rispettive opzioni di avvio

Memorie d'avvio supportate

Metodi d'avvio di Nios V

Locu di l'esecuzione di l'applicazione

Boot Copier

Solu 10 dispusitivi MAX (cù OnChip Flash IP)

L'applicazione di u processore Nios V hè eseguita in situ da a memoria flash on-chip.
Applicazione di u processore Nios V copiata da a memoria flash on-chip à a RAM cù a copiatrice di avvio

Memoria Flash On-Chip (XIP) + OCRAM/ RAM esterna (per e sezioni di dati scrivibili)

funzione alt_load()

OCRAM / RAM esterna

Riutilizà u Bootloader via GSFI

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 55

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

Figura 31.

Cuncepimentu, Cunfigurazione è Flussu d'Avviu
Cuncepimentu · Crea u vostru prughjettu basatu annantu à u processore Nios V cù Platform Designer. · Assicuratevi chì ci sia RAM esterna o RAM on-chip in u disignu di u sistema.

Cunfigurazione è compilazione FPGA
· Impostate u listessu modu di cunfigurazione interna in On-chip Flash IP in Platform Designer è in u software Quartus Prime. · Impostate l'agente di reset di u processore Nios V in On-chip Flash. · Sceglite u vostru metudu d'inizializazione UFM preferitu. · Generate u vostru cuncepimentu in Platform Designer. · Compilate u vostru prughjettu in u software Quartus Prime.

Prughjettu BSP di l'applicazione di l'utilizatore · Crea un processore Nios V HAL BSP basatu annantu à .sopcinfo file creatu da Platform Designer. · Mudificà i paràmetri BSP di u processore Nios V è u script Linker in BSP Editor. · Generà un prughjettu BSP.
Prughjettu APP di l'applicazione di l'utilizatore · Sviluppà u codice di l'applicazione di u processore Nios V. · Compilà l'applicazione di u processore Nios V è generà l'applicazione di u processore Nios V (.hex) fileRicompilate u vostru prugettu in u software Quartus Prime sè avete verificatu l'opzione Inizialize u cuntenutu di memoria in Intel FPGA On-Chip Flash IP.

Prugrammazione FileCunversione, Scaricamentu è Eseguimentu · Generà u schedariu Flash .pof nant'à u chip file aduprendu a prugrammazione Cunvertita Filefunzione s in u software Quartus Prime.
· Prugrammate u .pof file in u vostru dispusitivu MAX 10. · Riaccende è accende u vostru hardware.
4.5.1. Descrizzione di a memoria flash integrata in chip FPGA MAX 10
I dispusitivi MAX 10 FPGA cuntenenu flash on-chip chì hè segmentatu in duie parti: · Memoria Flash di Cunfigurazione (CFM) - conserva i dati di cunfigurazione hardware per
MAX 10 FPGA. · Memoria Flash di l'Utente (UFM) — immagazzina i dati di l'utente o l'applicazioni software.
L'architettura UFM di u dispusitivu MAX 10 hè una cumbinazione di IP software è hard. Pudete accede à l'UFM solu aduprendu u On-Chip Flash IP Core in u software Quartus Prime.
U core IP Flash On-chip supporta e seguenti funzionalità: · Accessi in lettura o scrittura à i settori UFM è CFM (se abilitati in Platform Designer)
aduprendu l'interfaccia slave di cuntrollu è dati Avalon MM. · Supporta a cancellazione di pagina, a cancellazione di settore è a scrittura di settore. · Modellu di simulazione per accessi di lettura/scrittura UFM aduprendu diversi strumenti di simulazione EDA.

Manuale di cuncepimentu di processori integrati Nios® V 56

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

Tavula 34. Regioni Flash on-chip in dispositivi MAX 10 FPGA

Regioni Flash

Funziunalità

Memoria Flash di Cunfigurazione (settori CFM0-2)

cunfigurazione FPGA file almacenamiento

Memoria Flash di l'Utilizatore (settori UFM0-1)

Applicazione di u processore Nios V è dati di l'utente

I dispusitivi MAX 10 FPGA supportanu parechji modi di cunfigurazione è alcuni di questi modi permettenu di utilizà CFM1 è CFM2 cum'è una regione UFM supplementaria. A seguente tavula mostra a locu di almacenamentu di l'imagine di cunfigurazione FPGA basata annantu à i modi di cunfigurazione di MAX 10 FPGA.

Tavula 35. Locu di almacenamentu di l'imagine di cunfigurazione FPGA

Modu di cunfigurazione Imagine compresse duale

Imagine cumpressa CFM2 2

CFM 1

Imagine cumpressa CFM0 1

Imagine unica senza cumpressione

UFM Virtuale

Imagine micca cumpressata

Imagine unica senza cumpressione cù inizializazione di memoria

Imagine micca cumpressa (cù cuntenutu di memoria in chip preinizializatu)

Imagine cumpressa unica cù inizializazione di memoria Imagine cumpressa (cù cuntenutu di memoria in chip preinizializatu)

Imagine cumpressa unica

UFM Virtuale

Imagine cumpressa

Duvete aduprà u core IP Flash On-chip per accede à a memoria flash in MAX 10 FPGA. Pudete creà una istanza è cunnette l'IP Flash On-chip à u software Quartus Prime. U processore soft core Nios V usa l'interconnessioni Platform Designer per cumunicà cù l'IP Flash On-chip.
Figura 32. Cunnessione trà l'IP Flash integratu è u processore Nios V

Nota:

Assicuratevi chì u portu csr Flash on-chip sia cunnessu à u data_manager di u processore Nios V per permette à u processore di cuntrullà l'operazioni di scrittura è di cancellazione.
U core IP Flash on-chip pò furnisce accessu à cinque settori flash - UFM0, UFM1, CFM0, CFM1 è CFM2.
Infurmazioni impurtanti nantu à i settori UFM è CFM: · I settori CFM sò destinati à u almacenamentu di dati di cunfigurazione (bitstream) (*.pof).
· I dati di l'utilizatori ponu esse almacenati in i settori UFM è ponu esse piattati, se i paràmetri curretti sò selezziunati in u strumentu Platform Designer.
· Certi dispusitivi ùn anu micca un settore UFM1. Pudete cunsultà a tavula: Dimensione di u settore UFM è CFM per i settori dispunibili in ogni dispusitivu MAX 10 FPGA individuale.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 57

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

· Pudete cunfigurà CFM2 cum'è un UFM virtuale selezziunendu a modalità di cunfigurazione Single Uncompressed Image.
· Pudete cunfigurà CFM2 è CFM1 cum'è un UFM virtuale selezziunendu a modalità di cunfigurazione Single Uncompressed Image.
· A dimensione di ogni settore varieghja secondu i dispusitivi MAX 10 FPGA selezziunati.

Tabella 36.

Dimensione di u settore UFM è CFM
Questa tavula elenca e dimensioni di i pannelli UFM è CFM.

Dispositivu

Pagine per settore

UFM1 UFM0 CFM2 CFM1 CFM0

Dimensione di a pagina (Kbit)

User Massimu
Dimensione di a memoria flash (Kbit) (3)

Dimensione tutale di a memoria di cunfigurazione (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

Dimensione OCRAM (Kbit)
108 189 378 549 675 1260 1638

Infurmazioni cunnesse · Guida di l'utente di cunfigurazione FPGA MAX 10 · Guida di l'utente di memoria flash Altera MAX 10

4.5.2. Applicazione di u processore Nios V eseguita in situ da UFM

A suluzione Execute-In-Place da UFM hè adatta per l'applicazioni di processori Nios V chì necessitanu un usu limitatu di memoria on-chip. A funzione alt_load() funziona cum'è una mini copiatrice di avvio chì copia e sezioni di dati (.rodata, .rwdata, o .exceptions) da a memoria di avvio à a RAM secondu i paràmetri BSP. A sezione di codice (.text),
chì hè una sezione di sola lettura, ferma in a regione di memoria Flash integrata MAX 10. Questa cunfigurazione minimizza l'usu di a RAM, ma pò limità e prestazioni di esecuzione di u codice postu chì l'accessu à a memoria flash hè più lentu chè a RAM integrata.

L'applicazione di u processore Nios V hè prugrammata in u settore UFM. U vettore di reset di u processore Nios V punta à l'indirizzu di basa UFM per eseguisce u codice da l'UFM dopu chì u sistema si resetta.

Sè vo aduprate u debugger à livellu di surghjente per debugà a vostra applicazione, duvete aduprà un breakpoint hardware. Questu hè perchè l'UFM ùn supporta micca l'accessu à a memoria aleatoria, chì hè necessariu per u debugging di breakpoint soft.

Nota:

Ùn pudete micca sguassà o scrive UFM mentre eseguite l'esecuzione in locu in u MAX 10. Passate à l'approcciu di copiatrice d'avvio se avete bisognu di sguassà o scrive l'UFM.

(3) U valore massimu pussibule, chì dipende da u modu di cunfigurazione sceltu.

Manuale di cuncepimentu di processori integrati Nios® V 58

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

Figura 33. Applicazione XIP di u processore Nios V da UFM

Massimu 10 Dispositivi

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

Programmatore Quartus

Flash nant'à chip

CFM

Ferramenta Nios V

UFM

Software Nios V

Cunfigurazione interna

IP Flash nantu à chip

Logica FPGA
Processore Nios V

RAM nantu à chip

Esternu

RAM

EMIF

IP

4.5.2.1. Flussu di cuncepimentu di l'hardware
A sezione seguente descrive un metudu passu à passu per custruisce un sistema avviabile per una applicazione di processore Nios V da On-Chip Flash. L'exampQuì sottu hè custruitu cù u dispusitivu MAX 10.
Impostazioni di i cumpunenti IP
1. Crea u vostru prughjettu di processore Nios V cù Quartus Prime è Platform Designer. 2. Assicuratevi chì a RAM esterna o a memoria On-Chip (OCRAM) sia aghjunta à a vostra piattaforma.
Sistema di cuncepimentu.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 59

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
Figura 34. EsampCunnessione IP in Platform Designer per l'avviu di Nios V da OnChip Flash (UFM)

3. In l'editore di parametri IP Flash On-Chip, impostate a Modalità di Cunfigurazione à una di e seguenti, secondu a vostra preferenza di cuncepimentu: · Imagine Singola Non Compressa · Imagine Singola Compressa · Imagine Singola Non Compressa cù Inizializazione di a Memoria · Imagine Singola Compressa cù Inizializazione di a Memoria
Per più infurmazioni nantu à l'imagine cumpresse duale, riferitevi à a Guida di l'utente di cunfigurazione MAX 10 FPGA - Aghjurnamentu di u sistema à distanza.

Nota:

Duvete assignà l'accessu nascostu à ogni regione CFM in l'indirizzu IP Flash on-chip.

Figura 35. Selezzione di a modalità di cunfigurazione in l'editore di parametri Flash on-chip

Impostazioni IP Flash On-Chip - Inizializazione UFM Pudete sceglie unu di i seguenti metudi secondu a vostra preferenza:

Manuale di cuncepimentu di processori integrati Nios® V 60

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

Nota:

I passi in i seguenti sottucapituli (Flussu di Cuncepimentu di Software è Programmazione) dipendenu da a selezzione chì fate quì.

· Metudu 1: Inizializà i dati UFM in u SOF durante a compilazione
Quartus Prime include i dati d'inizializazione UFM in u SOF durante a compilazione. A ricompilazione SOF hè necessaria s'ellu ci sò cambiamenti in i dati UFM.
1. Verificate Inizializà u cuntenutu flash è Attivà l'inizializazione micca predefinita file.

Figura 36. Inizializà u cuntenutu Flash è attivà l'inizializazione micca predefinita File

2. Specificà u percorsu di u schedariu .hex generatu file (da u cumandamentu elf2hex) in l'hex o mif creatu da l'utente file.
Figura 37. Aggiunta di u .hex File Strada

· Metudu 2: Cumbinà i dati UFM cù un SOF compilatu durante a generazione di POF
I dati UFM sò cumminati cù u SOF compilatu quandu si cunverte a prugrammazione. files. Ùn avete micca bisognu di ricompilà u SOF, ancu s'è i dati UFM cambianu. Durante u sviluppu, ùn avete micca bisognu di ricompilà u SOF. files per i cambiamenti in l'applicazione. Alterarecommends stu metudu per i sviluppatori di applicazioni.
1. Deselezziunate Inizializà u cuntenutu flash..
Figura 38. Inizializazione di u cuntenutu Flash cù l'inizializazione micca predefinita File

Resettà i paràmetri di l'agente per u metudu d'esecuzione in situ di u processore Nios V
1. In l'editore di parametri di u processore Nios V, impostate l'Agente di Reset nantu à Flash On-Chip.
Figura 39. Impostazioni di l'editore di parametri di u processore Nios V cù l'agente di reset impostatu nantu à Flash on-chip

2. Cliccate nant'à Generate HDL quandu appare a finestra di dialogu Generation. 3. Specificate l'output file Opzioni di generazione è cliccate nant'à Genera.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 61

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
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. Cliccate OK per chjude a finestra Opzioni di Dispositivi è Pin,
3. Cliccate OK per chjude a finestra Dispositivu.
4. Click Processing Start Compilation to compile your project and generate the .sof file.

Nota:

Sè l'impostazione di u modu di cunfigurazione in u software Quartus Prime è l'editore di parametri di Platform Designer hè diversa, u prugettu Quartus Prime fiasca cù u seguente missaghju d'errore.

Figura 41.

Missaghju d'errore per una diversa impostazione di u modu di cunfigurazione Errore (14740): U modu di cunfigurazione nantu à l'atomu "q_sys:q_sys_inst| altera_onchip_flash:onchip_flash_1|altera_onchip_flash_block: altera_onchip_flash_block|ufm_block" ùn currisponde micca à l'impostazione di u prugettu. Aggiornate è rigenerate u sistema Qsys per currisponde à l'impostazione di u prugettu.

Informazioni correlate Guida di l'utente di cunfigurazione di MAX 10 FPGA

4.5.2.2. Flussu di cuncepimentu di u software
Questa sezione furnisce u flussu di cuncepimentu per generà è custruisce u prughjettu di software di processore Nios V. Per assicurà un flussu di custruzzione simplificatu, vi hè cunsigliatu di creà un arburu di repertori simile in u vostru prughjettu di cuncepimentu. U flussu di cuncepimentu di software seguente hè basatu annantu à questu arburu di repertori.
Per creà l'arburu di u cartulare di u prugettu di software, seguitate sti passi: 1. In u vostru cartulare di prugettu di cuncepimentu, create un cartulare chjamatu software. 2. In u cartulare software, create dui cartulari chjamati hal_app è hal_bsp.
Figura 42. Arburu di u cartulare di u prugettu di software

Manuale di cuncepimentu di processori integrati Nios® V 62

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
Creazione di u prughjettu BSP di l'applicazione
Per lancià l'editore BSP, seguitate sti passi: 1. Accede à u shell di cumanda Nios V. 2. Invucate l'editore BSP cù u cumandamentu niosv-bsp-editor. 3. In l'editore BSP, cliccate nant'à File Novu BSP per inizià u vostru prughjettu BSP. 4. Cunfigurà i seguenti paràmetri:
· Infurmazione SOPC File nome: Fornite u SOPCINFO file (.sopcinfo). · Nome di a CPU: Selezziunate u processore Nios V. · Sistema operativu: Selezziunate u sistema operativu di u processore Nios V. · Versione: Lasciate cum'è predefinitu. · Repertoriu di destinazione BSP: Selezziunate u percorsu di u repertoriu di u prugettu BSP. Pudete
preimpostatu à /software/hal_bsp attivendu Aduprà i lochi predefiniti. · Impostazioni BSP File nome: Scrivite u nome di i paràmetri 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:

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 63

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
· 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.

Manuale di cuncepimentu di processori integrati Nios® V 64

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
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.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 65

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
4.5.2.3. Programming 1. In Quartus Prime, click File Cunvertite Programmazione 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 Settings
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

Manuale di cuncepimentu di processori integrati Nios® V 66

Mandate Feedback

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16
· 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 cunversione.
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.

Mandate Feedback

Manuale di cuncepimentu di processori integrati Nios® V 67

4. Soluzioni di cunfigurazione è avviu di u processore Nios V 726952 | 2025.07.16

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

Massimu 10 Dispositivi

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

Programmatore Quartus

RAM esterna
Software Nios V

Flash nant'à chip

CFM

Nios V Hardwa

Documenti / Risorse

altera Nios V Embedded Processor [pdfGuida di l'utente
Nios V, Nios V-m, Nios V-g, Nios V-c, Nios V Embedded Processor, Nios V, Embedded Processor, Processor

Referenze

Lascia un cumentu

U vostru indirizzu email ùn serà micca publicatu. I campi obbligatori sò marcati *