altera Nios V Embedded Processor

Specifikationer

  • Produktnavn: Nios V-processor
  • Software Compatibility: Quartus Prime Software and Platform Designer
  • Processortype: Altera FPGA
  • Hukommelsessystem: Flygtig og ikke-flygtig hukommelse
  • Kommunikationsgrænseflade: UART-agent

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. Integrer systemet i Quartus Prime-projektet.
  3. Design memory system including volatile and non-volatile memory.
  4. Implementer ure og nulstil bedste praksis.
  5. Tildel standard- og UART-agenter for effektiv drift.

Nios V Processor Software System Design

Sådan designer du softwaresystemet til Nios V-processoren:

  1. Følg softwareudviklingsflowet for Nios V-processoren.
  2. Create Board Support Package Project and Application Project.

Nios V Processor Configuration and Booting Solutions

Til konfiguration og opstart af Nios V-processoren:

  1. Understand the introduction to configuration and booting solutions.
  2. Forbind applikationer for problemfri drift.

About the Nios® V Embedded Processor
1.1. Altera® FPGA og indlejrede processorerview
Altera FPGA-enheder kan implementere logik, der fungerer som en komplet mikroprocessor, samtidig med at de tilbyder mange muligheder.
En vigtig forskel mellem diskrete mikroprocessorer og Altera FPGA er, at Altera FPGA-strukturen ikke indeholder logik, når den starter. Nios® V-processoren er en soft intellectual property (IP)-processor baseret på RISC-V-specifikationen. Før du kører software på et Nios V-processorbaseret system, skal du konfigurere Altera FPGA-enheden med et hardwaredesign, der indeholder en Nios V-processor. Du kan placere Nios V-processoren hvor som helst på Altera FPGA'en, afhængigt af designets krav.


For at dit Altera® FPGA IP-baserede indlejrede system kan fungere som et diskret mikroprocessorbaseret system, skal dit system indeholde følgende: · AJTAG grænseflade til at understøtte Altera FPGA-konfiguration, hardware og software
debugging · En opstarts-Altera FPGA-konfigurationsmekanisme
Hvis dit system har disse funktioner, kan du begynde at forfine dit design ud fra et prætestet hardwaredesign, der er indlæst i Altera FPGA'en. Brug af en Altera FPGA giver dig også mulighed for hurtigt at ændre dit design for at løse problemer eller tilføje ny funktionalitet. Du kan nemt teste disse nye hardwaredesigns ved at omkonfigurere Altera FPGA'en ved hjælp af dit systems J.TAG interface.
Den J.TAG Grænsefladen understøtter hardware- og softwareudvikling. Du kan udføre følgende opgaver ved hjælp af JTAG grænseflade: · Konfigurer Altera FPGA · Download og fejlfind software · Kommuniker med Altera FPGA via en UART-lignende grænseflade (JTAG UART
terminal) · Fejlfinding af hardware (med den indlejrede Signal Tap-logikanalysator) · Programmering af flashhukommelse
Når du har konfigureret Altera FPGA'en med et Nios V-processorbaseret design, svarer softwareudviklingsflowet til flowet for diskrete mikrocontroller-designs.


Relateret information · AN 985: Nios V-processorvejledning
En hurtigstartguide til oprettelse af et simpelt Nios V-processorsystem og kørsel af Hello World-applikationen.
© Altera Corporation. Altera, Altera-logoet, `a'-logoet og andre Altera-mærker er varemærker tilhørende Altera Corporation. Altera forbeholder sig retten til at foretage ændringer i produkter og tjenester når som helst uden varsel. Altera påtager sig intet ansvar som følge af anvendelsen af ​​oplysninger, produkter eller tjenester beskrevet heri, medmindre det udtrykkeligt er skriftligt aftalt med Altera. Alteras kunder rådes til at indhente den seneste version af enhedsspecifikationerne, før de stoler på offentliggjorte oplysninger og før de afgiver ordrer på produkter eller tjenester. *Andre navne og mærker kan gøres gældende som andres ejendom.

1. Om Nios® V Embedded Processor 726952 | 2025.07.16
· Nios V-processorreferencemanual Indeholder oplysninger om Nios V-processorens ydeevnebenchmarks, processorarkitektur, programmeringsmodellen og kerneimplementeringen.
· Brugervejledning til IP-integrerede periferiudstyr · Håndbog til softwareudviklere til Nios V-processor


Beskriver Nios V-processorens softwareudviklingsmiljø, de tilgængelige værktøjer og processen til at bygge software til at køre på Nios V-processor. · Ashling* RiscFree* Integrated Development Environment (IDE) til Altera FPGA'er Brugervejledning Beskriver det RiscFree* integrerede udviklingsmiljø (IDE) til Altera FPGA'er Arm*-baseret HPS og Nios V-kerneprocessor. · Nios V-processor Altera FPGA IP-udgivelsesnoter
1.2. Quartus® Prime Software Support
Nios V-processorens byggeproces er forskellig for Quartus® Prime Pro Edition-software og Quartus Prime Standard Edition-software. Se AN 980: Nios V-processor Quartus Prime-softwaresupport for at få flere oplysninger om forskellene.
Relateret information AN 980: Nios V-processor Quartus Prime Softwaresupport
1.3. Nios V-databehandlerlicensering
Hver Nios V-processorvariant har sin egen licensnøgle. Når du har erhvervet licensnøglen, kan du bruge den samme licensnøgle til alle Nios V-processorprojekter indtil udløbsdatoen. Du kan erhverve Nios V-processor Altera FPGA IP-licenser uden omkostninger.
Listen over licensnøgler til Nios V-processorer er tilgængelig i Altera FPGA Self-Service Licensing Center. Klik på fanen Tilmeld dig evaluering eller Gratis licens, og vælg de tilsvarende muligheder for at foretage anmodningen.
Figur 1. Altera FPGA Selvbetjeningslicenscenter

Med licensnøglerne kan du:
Send feedback

Nios® V Håndbog til design af indlejrede processorer 7

1. Om Nios® V Embedded Processor 726952 | 2025.07.16
· Implementer en Nios V-processor i dit system. · Simuler adfærden af ​​et Nios V-processorsystem. · Verificer designets funktionalitet, såsom størrelse og hastighed. · Generer enhedsprogrammering. files. · Programmer en enhed og verificer designet i hardwaren.
Du behøver ikke en licens til at udvikle software i Ashling* RiscFree* IDE til Altera FPGA'er.
Relateret information · Altera FPGA Selvbetjeningslicenscenter
For mere information om at få fat i Nios V-processor Altera FPGA IP-licensnøgler. · Altera FPGA-softwareinstallation og -licensering For mere information om licensering af Altera FPGA-softwaren og opsætning af en fast licens og netværkslicensserver.
1.4. Design af indlejrede systemer
Den følgende figur illustrerer et forenklet Nios V-processorbaseret systemdesignflow, inklusive både hardware- og softwareudvikling.

Nios® V Håndbog til design af indlejrede processorer 8

Send feedback

1. Om Nios® V Embedded Processor 726952 | 2025.07.16

Figur 2.

Nios V-processorsystemdesignflow
Systemkoncept

Analyser systemkrav

Nios® V
Processorkerner og standardkomponenter

Definer og generer system i
Platform designer

Hardwareflow: Integrer og kompiler Intel Quartus Prime-projekt

Softwareflow: Udvikl og byg Nios V-forslagssoftware

Hardwareflow: Download FPGA-design
til Target Board

Softwareflow: Test og fejlfinding af Nios V-processorsoftware

Opfylder softwaren specifikationerne?
Ja
Hardware Nej Opfylder specifikationerne? Ja
System komplet

Send feedback

Nios® V Håndbog til design af indlejrede processorer 9

726952 | 2025.07.16 Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner

Figur 3.

Følgende diagram illustrerer et typisk Nios V-processorhardwaredesign. Nios V-processorsystemhardwaredesignflow

Starte

Nios V-kerner og standardkomponenter

Brug Platform Designer til at designe et Nios V-baseret system
Generer platformdesignerdesign

Integrer Platform Designer System med Intel Quartus Prime Project
Tildel markørplaceringer, tidskrav og andre designbegrænsninger
Kompilér hardware til målenhed i Intel Quartus Prime

Klar til download
2.1. Oprettelse af Nios V-processorsystemdesign med Platform Designer
Quartus Prime-softwaren inkluderer systemintegrationsværktøjet Platform Designer, der forenkler opgaven med at definere og integrere Nios V-processorens IP-kerne og andre IP'er i et Altera FPGA-systemdesign. Platform Designer opretter automatisk sammenkoblingslogik ud fra den specificerede højniveau-forbindelse. Sammenkoblingsautomatiseringen eliminerer den tidskrævende opgave med at specificere HDL-forbindelser på systemniveau.
© Altera Corporation. Altera, Altera-logoet, `a'-logoet og andre Altera-mærker er varemærker tilhørende Altera Corporation. Altera forbeholder sig retten til at foretage ændringer i produkter og tjenester når som helst uden varsel. Altera påtager sig intet ansvar som følge af anvendelsen af ​​oplysninger, produkter eller tjenester beskrevet heri, medmindre det udtrykkeligt er skriftligt aftalt med Altera. Alteras kunder rådes til at indhente den seneste version af enhedsspecifikationerne, før de stoler på offentliggjorte oplysninger og før de afgiver ordrer på produkter eller tjenester. *Andre navne og mærker kan gøres gældende som andres ejendom.

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Efter at have analyseret systemets hardwarekrav, bruger du Quartus Prime til at specificere Nios V-processorkernen, hukommelsen og andre komponenter, som dit system kræver. Platform Designer genererer automatisk sammenkoblingslogikken for at integrere komponenterne i hardwaresystemet.

2.1.1. Instantiering af Nios V-processor Altera FPGA IP

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

IP-kernen i hver processor understøtter forskellige konfigurationsmuligheder baseret på dens unikke arkitektur. Du kan definere disse konfigurationer, så de bedre passer til dine designbehov.

Tabel 1.

Konfigurationsmuligheder på tværs af kernevarianter

Konfigurationsmuligheder

Nios V/c-processor

Nios V/m-processor

Anmodning om nulstilling af brug af fejlfinding

Fælder, undtagelser og afbrydelser

CPU arkitektur

ECC

Cacher, perifere regioner og TCM'er

Brugerdefinerede instruktioner

Låsetrin

Nios V/g-processor

2.1.1.1. Instantiering af Nios V/c kompakt mikrokontroller Altera FPGA IP Figur 4. Nios V/c kompakt mikrokontroller Altera FPGA IP

Send feedback

Nios® V Håndbog til design af indlejrede processorer 11

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

2.1.1.1.1. Fanen CPU-arkitektur

Tabel 2.

Fanen CPU-arkitektur

Feature

Beskrivelse

Aktiver Avalon®-grænseflade Aktiverer Avalon-grænsefladen til instruktionsstyring og datastyring. Hvis den er deaktiveret, bruger systemet AXI4-Lite-grænsefladen.

mhartid CSR-værdi

· Ugyldig IP-indstilling. · Brug ikke mhartid CSR-værdien i Nios V/c-processoren.

2.1.1.1.2. Brug fanen Nulstillingsanmodning

Tabel 3.

Brug parameteren for fanen Nulstil anmodning

Brug fanen Nulstillingsanmodning

Beskrivelse

Tilføj nulstillingsanmodningsgrænseflade

· Aktiver denne indstilling for at eksponere lokale nulstillingsporte, hvor en lokal master kan bruge den til at udløse en nulstilling af Nios V-processoren uden at påvirke andre komponenter i et Nios V-processorsystem.
· Nulstillingsgrænsefladen består af et input resetreq-signal og et output ack-signal.
· Du kan anmode om en nulstilling af Nios V-processorkernen ved at aktivere resestreq-signalet.
· Resestreq-signalet skal forblive aktivt, indtil processoren afgiver et bekræftelsessignal. Hvis signalet ikke forbliver aktivt, kan det medføre, at processoren befinder sig i en ikke-deterministisk tilstand.
· Nios V-processoren svarer, at nulstillingen er vellykket, ved at aktivere bekræftelsessignalet.
· Efter processoren er nulstillet, kan bekræftelsessignalet udsendes flere gange med jævne mellemrum, indtil nulstillingssignalet ophører.

2.1.1.1.3. Fanen Fælder, Undtagelser og Afbrydelser

Tabel 4.

Parametre for fanen Fælder, Undtagelser og Afbrydelser

Fælder, undtagelser og afbrydelser

Beskrivelse

Nulstil agent

· Hukommelsen, der er vært for nulstillingsvektoren (Nios V-processorens nulstillingsadresse), hvor nulstillingskoden findes.
· Du kan vælge et hvilket som helst hukommelsesmodul, der er tilsluttet Nios V-processorens instruktionsmaster og understøttes af et Nios V-processorens opstartsflow, som nulstillingsagent.

Nulstil offset

· Angiver forskydningen af ​​nulstillingsvektoren i forhold til den valgte nulstillingsagents basisadresse. · Platform Designer angiver automatisk en standardværdi for nulstillingsforskydningen.

Note:

Platform Designer tilbyder en absolut indstilling, der giver dig mulighed for at angive en absolut adresse i Reset Offset. Brug denne indstilling, når den hukommelse, der lagrer nulstillingsvektoren, er placeret uden for processorsystemet og undersystemerne.

Nios® V Håndbog til design af indlejrede processorer 12

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

2.1.1.1.4. ECC-fanen

Tabel 5.

ECC-fanen

ECC

Aktivér fejlregistrering og statusrapportering

Beskrivelse
· Aktiver denne indstilling for at anvende ECC-funktionen til Nios V-processorens interne RAM-blokke. · ECC-funktioner registrerer fejl på op til 2 bit og reagerer baseret på følgende adfærd:
— Hvis det er en korrigerbar fejl på 1 bit, fortsætter processoren med at fungere efter at have korrigeret fejlen i processorens pipeline. Korrektionen afspejles dog ikke i kildehukommelserne.
— Hvis fejlen ikke kan rettes, fortsætter processoren med at fungere uden at rette den i processorens pipeline og kildehukommelser, hvilket kan medføre, at processoren går i en ikke-deterministisk tilstand.

2.1.1.2. Instantiering af Nios V/m mikrokontroller Altera FPGA IP Figur 5. Nios V/m mikrokontroller Altera FPGA IP

Send feedback

Nios® V Håndbog til design af indlejrede processorer 13

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

2.1.1.2.1. Fanen Fejlfinding

Tabel 6.

Parametre for fanen Fejlfinding

Fejlfindingsfanen

Beskrivelse

Aktivér fejlfinding
Aktivér nulstilling fra fejlfindingsmodul

· Aktiver denne indstilling for at tilføje JTAG målforbindelsesmodul til Nios V-processoren. · JTAG Target-forbindelsesmodulet tillader tilslutning til Nios V-processoren via
JTAG FPGA'ens interfaceben. · Forbindelsen giver følgende grundlæggende funktioner:
— Start og stop Nios V-processoren — Undersøg og rediger registre og hukommelse. — Download Nios V-applikationen .elf file til processorhukommelsen under kørsel via
niosv-download. — Fejlfind applikationen, der kører på Nios V-processoren · Tilslut dm_agent-porten til processorens instruktions- og databusser. Sørg for, at basisadressen mellem begge busser er den samme.
· Aktiver denne indstilling for at eksponere portene dbg_reset_out og ndm_reset_in. · JTAG debugger eller niosv-download -r-kommandoen udløser dbg_reset_out, hvilket
tillader Nios V-processoren at nulstille systemudstyr, der opretter forbindelse til denne port. · Du skal forbinde dbg_reset_out-grænsefladen til ndm_reset_in i stedet for reset
grænseflade til at udløse nulstilling til processorkerne og timermodul. Du må ikke forbinde dbg_reset_out-grænsefladen til nulstillingsgrænsefladen for at forhindre ubestemt adfærd.

2.1.1.2.2. Brug fanen Nulstillingsanmodning

Tabel 7.

Brug parameteren for fanen Nulstil anmodning

Brug fanen Nulstillingsanmodning

Beskrivelse

Tilføj nulstillingsanmodningsgrænseflade

· Aktiver denne indstilling for at eksponere lokale nulstillingsporte, hvor en lokal master kan bruge den til at udløse en nulstilling af Nios V-processoren uden at påvirke andre komponenter i et Nios V-processorsystem.
· Nulstillingsgrænsefladen består af et input resetreq-signal og et output ack-signal.
· Du kan anmode om en nulstilling af Nios V-processorkernen ved at aktivere resestreq-signalet.
· Resestreq-signalet skal forblive aktivt, indtil processoren afgiver et bekræftelsessignal. Hvis signalet ikke forbliver aktivt, kan det medføre, at processoren befinder sig i en ikke-deterministisk tilstand.
· Aktivering af resestreq-signalet i debug-tilstand har ingen effekt på processorens tilstand.
· Nios V-processoren svarer, at nulstillingen er vellykket, ved at aktivere bekræftelsessignalet.
· Efter processoren er nulstillet, kan bekræftelsessignalet udsendes flere gange med jævne mellemrum, indtil nulstillingssignalet ophører.

2.1.1.2.3. Fanen Fælder, Undtagelser og Afbrydelser

Tabel 8.

Fanen Fælder, Undtagelser og Afbrydelser

Fanen Fælder, Undtagelser og Afbrydelser

Beskrivelse

Nulstil agent

· Hukommelsen, der er vært for nulstillingsvektoren (Nios V-processorens nulstillingsadresse), hvor nulstillingskoden findes.
· Du kan vælge et hvilket som helst hukommelsesmodul, der er tilsluttet Nios V-processorens instruktionsmaster og understøttes af et Nios V-processorens opstartsflow, som nulstillingsagent.

Nulstil offset-afbrydelsestilstand

· Angiver forskydningen af ​​nulstillingsvektoren i forhold til den valgte nulstillingsagents basisadresse. · Platform Designer angiver automatisk en standardværdi for nulstillingsforskydningen.
Angiv typen af ​​afbrydelsescontroller, enten direkte eller vektorbaseret. Bemærk: Nios V/m ikke-pipeline-processoren understøtter ikke vektorbaserede afbrydelser.
Undgå derfor at bruge Vectored-afbrydelsestilstanden, når processoren er i Nonpipelined-tilstand.

Nios® V Håndbog til design af indlejrede processorer 14

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Note:

Platform Designer tilbyder en absolut indstilling, der giver dig mulighed for at angive en absolut adresse i Reset Offset. Brug denne indstilling, når den hukommelse, der lagrer nulstillingsvektoren, er placeret uden for processorsystemet og undersystemerne.

2.1.1.2.4. CPU-arkitektur

Tabel 9.

Parametre for fanen CPU-arkitektur

CPU arkitektur

Beskrivelse

Aktivér pipelining i CPU'en

· Aktiver denne indstilling for at instantiere en pipelinebaseret Nios V/m-processor. — IPC er højere på bekostning af et højere logisk område og en lavere Fmax-frekvens.
· Deaktiver denne indstilling for at instantiere ikke-pipelinet Nios V/m-processor. — Har lignende kerneydelse som Nios V/c-processoren. — Understøtter debugging og afbrydelsesfunktion — Lavere logisk område og højere Fmax-frekvens på bekostning af lavere IPC.

Aktivér Avalon-grænsefladen

Aktiverer Avalon-grænsefladen til instruktionsstyring og datastyring. Hvis den er deaktiveret, bruger systemet AXI4-Lite-grænsefladen.

mhartid CSR-værdi

· Hart ID-registerets (mhartid) værdi er som standard 0. · Tildel en værdi mellem 0 og 4094. · Kompatibel med Altera FPGA Avalon Mutex Core HAL API.

Relaterede oplysninger Brugervejledning til integreret perifer IP – Intel FPGA Avalon® Mutex Core

2.1.1.2.5. ECC-fanen
Tabel 10. ECC-fanen
ECC Aktiver fejldetektion og statusrapportering

Beskrivelse
· Aktiver denne indstilling for at anvende ECC-funktionen til Nios V-processorens interne RAM-blokke. · ECC-funktioner registrerer fejl på op til 2 bit og reagerer baseret på følgende adfærd:
— Hvis det er en korrigerbar fejl på 1 bit, fortsætter processoren med at fungere efter at have korrigeret fejlen i processorens pipeline. Korrektionen afspejles dog ikke i kildehukommelserne.
— Hvis fejlen ikke kan rettes, fortsætter processoren med at fungere uden at rette den i processorens pipeline og kildehukommelser, hvilket kan medføre, at processoren går i en ikke-deterministisk tilstand.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 15

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16
2.1.1.3. Instantiering af Nios V/g General Purpose Processor Altera FPGA IP
Figur 6. Nios V/g generel processor Altera FPGA IP – Del 1

Figur 7.

Nios V/g Generel Processor Altera FPGA IP – Del 2 (Sluk og aktivér Core Level Interrupt Controller)

Nios® V Håndbog til design af indlejrede processorer 16

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Figur 8.

Nios V/g Generel Processor Altera FPGA IP – Del 2 (Tænd for aktivering af Core Level Interrupt Controller)

Figur 9. Nios V/g generel processor Altera FPGA IP – Del 3

Send feedback

Nios® V Håndbog til design af indlejrede processorer 17

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16
Figur 10. Nios V/g generel processor Altera FPGA IP – Del 4

2.1.1.3.1. CPU-arkitektur

Tabel 11. CPU-arkitekturparametre

Fanen CPU-arkitektur Aktiver flydende komma-enhed

Beskrivelse Aktiver denne indstilling for at tilføje flydende komma-enheden ("F"-udvidelsen) i processorkernen.

Aktivér forgreningsforudsigelse

Aktiver statisk forgreningsforudsigelse (Baglæns taget og Fremad ikke taget) for forgreningsinstruktioner.

mhartid CSR-værdi

· Hart ID-registerets (mhartid) værdi er som standard 0. · Tildel en værdi mellem 0 og 4094. · Kompatibel med Altera FPGA Avalon Mutex Core HAL API.

Deaktiver FSQRT- og FDIV-instruktioner for FPU

· Fjern operationer med flydende kommakvadratrod (FSQRT) og flydende kommadivision (FDIV) i FPU.
· Anvend softwareemulering på begge instruktioner under kørsel.

Relaterede oplysninger Brugervejledning til integreret perifer IP – Intel FPGA Avalon® Mutex Core

Nios® V Håndbog til design af indlejrede processorer 18

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

2.1.1.3.2. Fanen Fejlfinding

Tabel 12. Parametre for fanen Fejlfinding

Fejlfindingsfanen

Beskrivelse

Aktivér fejlfinding
Aktivér nulstilling fra fejlfindingsmodul

· Aktiver denne indstilling for at tilføje JTAG målforbindelsesmodul til Nios V-processoren. · JTAG Target-forbindelsesmodulet tillader tilslutning til Nios V-processoren via
JTAG FPGA'ens interfaceben. · Forbindelsen giver følgende grundlæggende funktioner:
— Start og stop Nios V-processoren — Undersøg og rediger registre og hukommelse. — Download Nios V-applikationen .elf file til processorhukommelsen under kørsel via
niosv-download. — Fejlfind applikationen, der kører på Nios V-processoren · Tilslut dm_agent-porten til processorens instruktions- og databusser. Sørg for, at basisadressen mellem begge busser er den samme.
· Aktiver denne indstilling for at eksponere portene dbg_reset_out og ndm_reset_in. · JTAG debugger eller niosv-download -r-kommandoen udløser dbg_reset_out, hvilket
tillader Nios V-processoren at nulstille systemudstyr, der opretter forbindelse til denne port. · Du skal forbinde dbg_reset_out-grænsefladen til ndm_reset_in i stedet for reset
grænseflade til at udløse nulstilling til processorkerne og timermodul. Du må ikke forbinde dbg_reset_out-grænsefladen til nulstillingsgrænsefladen for at forhindre ubestemt adfærd.

2.1.1.3.3. Låsetrin-fane Tabel 13. Låsetrin-fane
Parametre Aktiver låsetrin Standard timeout-periode Aktiver udvidet nulstillingsgrænseflade

Beskrivelse · Aktiver dual-core Lockstep-systemet. · Standardværdi for programmerbar timeout ved nulstillingsafslutning (mellem 0 og 255). · Aktiver den valgfrie udvidede nulstillingsgrænseflade til udvidet nulstillingskontrol. · Når den er deaktiveret, implementerer fRSmartComp grundlæggende nulstillingskontrol.

2.1.1.3.4. Brug fanen Nulstillingsanmodning

Tabel 14. Brug af parameteren for fanen Nulstil anmodning

Brug fanen Nulstillingsanmodning

Beskrivelse

Tilføj nulstillingsanmodningsgrænseflade

· Aktiver denne indstilling for at eksponere lokale nulstillingsporte, hvor en lokal master kan bruge den til at udløse en nulstilling af Nios V-processoren uden at påvirke andre komponenter i et Nios V-processorsystem.
· Nulstillingsgrænsefladen består af et input resetreq-signal og et output ack-signal.
· Du kan anmode om en nulstilling af Nios V-processorkernen ved at aktivere resestreq-signalet.
· Resestreq-signalet skal forblive aktivt, indtil processoren afgiver et bekræftelsessignal. Hvis signalet ikke forbliver aktivt, kan det medføre, at processoren befinder sig i en ikke-deterministisk tilstand.
· Aktivering af resestreq-signalet i debug-tilstand har ingen effekt på processorens tilstand.
· Nios V-processoren svarer, at nulstillingen er vellykket, ved at aktivere bekræftelsessignalet.
· Efter processoren er nulstillet, kan bekræftelsessignalet udsendes flere gange med jævne mellemrum, indtil nulstillingssignalet ophører.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 19

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

2.1.1.3.5. Fanen Fælder, Undtagelser og Afbrydelser

Tabel 15.

Fanen Fælder, Undtagelser og Afbrydelser, når Aktiver Core Level Interrupt Controller er slået fra

Fanen Fælder, Undtagelser og Afbrydelser
Nulstil agent

Beskrivelse
· Hukommelsen, der er vært for nulstillingsvektoren (Nios V-processorens nulstillingsadresse), hvor nulstillingskoden findes.
· Du kan vælge et hvilket som helst hukommelsesmodul, der er tilsluttet Nios V-processorens instruktionsmaster og understøttes af et Nios V-processorens opstartsflow, som nulstillingsagent.

Nulstil offset

· Angiver forskydningen af ​​nulstillingsvektoren i forhold til den valgte nulstillingsagents basisadresse. · Platform Designer angiver automatisk en standardværdi for nulstillingsforskydningen.

Aktiver Core Level Interrupt Controller (CLIC)

· Aktiver CLIC til at understøtte forebyggende afbrydelser og konfigurerbare afbrydelsesudløserbetingelser.
· Når den er aktiveret, kan du konfigurere antallet af platformafbrydelser, indstille triggerbetingelser og udpege nogle af afbrydelserne som forebyggende.

Afbrydelsestilstand Skyggeregister Files

Angiv afbrydelsestyperne som Direkte eller Vektorbaseret. Aktiver skyggeregister for at reducere kontekstskift ved afbrydelse.

Tabel 16.

Fælder, undtagelser og afbrydelser, når Aktiver Core Level Interrupt Controller er aktiveret

Fælder, undtagelser og afbrydelser

Beskrivelser

Nulstil agent
Nulstil offset
Aktiver Core Level Interrupt Controller (CLIC)

· Hukommelsen, der er vært for nulstillingsvektoren (Nios V-processorens nulstillingsadresse), hvor nulstillingskoden findes.
· Du kan vælge et hvilket som helst hukommelsesmodul, der er tilsluttet Nios V-processorens instruktionsmaster og understøttes af et Nios V-processorens opstartsflow, som nulstillingsagent.
· Angiver forskydningen af ​​nulstillingsvektoren i forhold til den valgte nulstillingsagents basisadresse. · Platform Designer angiver automatisk en standardværdi for nulstillingsforskydningen.
· Aktiver CLIC for at understøtte forebyggende afbrydelser og konfigurerbare afbrydelsesudløserbetingelser. · Når aktiveret, kan du konfigurere antallet af platformafbrydelser, indstille udløserbetingelser,
og udpege nogle af afbrydelserne som præemptive.

Afbrydelsestilstand

· Angiv afbrydelsestyperne som Direkte, Vektorbaseret eller CLIC.

Skyggeregister Files

· Aktiver skyggeregister for at reducere kontekstskift ved afbrydelse.
· Tilbyder to tilgange:
— Antal CLIC-afbrydelsesniveauer
— Antal CLIC-afbrydelsesniveauer – 1: Denne indstilling er nyttig, når du ønsker antallet af registre file kopier, så de passer ind i et præcist antal M20K- eller M9K-blokke.
· Aktiver Nios V-processoren til at bruge skyggeregister files, som reducerer overhead for kontekstskift ved afbrydelse.
For mere information om skyggeregister fileSe Nios V-processorreferencemanualen.

Antal platformafbrydelseskilder

· Angiver antallet af platformafbrydelser mellem 16 og 2048.
Bemærk: CLIC understøtter op til 2064 interrupt-indgange, og de første 16 interrupt-indgange er også forbundet til den grundlæggende interrupt-controller.

CLIC Vektor Tabeljustering

· Bestemmes automatisk baseret på antallet af platformafbrydelseskilder. · Hvis du bruger en justering, der er under den anbefalede værdi, øger CLIC logikken
kompleksitet ved at tilføje en ekstra additionsenhed til at udføre vektorberegninger. · Hvis du bruger en justering, der er under den anbefalede værdi, resulterer dette i øget
Logisk kompleksitet i CLIC.
fortsatte…

Nios® V Håndbog til design af indlejrede processorer 20

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Fælder, undtagelser og afbrydelser
Antal afbrydelsesniveauer
Antal afbrydelsesprioriteter pr. niveau
Konfigurerbar afbrydelsespolaritet Understøtter kantudløste afbrydelser

Beskrivelser
· Angiver antallet af afbrydelsesniveauer med et ekstra niveau 0 for applikationskode. Afbrydelser på et højere niveau kan afbryde (foregribe) en kørende handler for en afbrydelse på et lavere niveau.
· Med afbrydelsesniveauer, der ikke er nul, som de eneste muligheder for afbrydelser, er applikationskoden altid på det laveste niveau 0. Bemærk: Runtime-konfiguration af et afbrydelses niveau og prioritet udføres i et enkelt 8-bit register. Hvis antallet af afbrydelsesniveauer er 256, er det ikke muligt at konfigurere afbrydelsesprioriteten under kørsel. Ellers er det maksimale antal konfigurerbare prioriteter 256 / (antal afbrydelsesniveauer – 1).
· Angiver antallet af afbrydelsesprioriteter, som CLIC bruger til at bestemme rækkefølgen, hvori ikke-foregribende afbrydelseshandlere kaldes. Bemærk: Sammenkædning af binære værdier for det valgte afbrydelsesniveau og den valgte afbrydelsesprioritet skal være mindre end 8 bit.
· Giver dig mulighed for at konfigurere afbrydelsespolaritet under kørsel. · Standardpolaritet er positiv polaritet.
· Giver dig mulighed for at konfigurere afbrydelsesudløsertilstand under kørsel, dvs. udløst på højt niveau eller udløst på positiv kant (når afbrydelsespolariteten er positiv i Konfigurerbar afbrydelsespolaritet).
· Standard triggerbetingelse er niveauudløst afbrydelse.

Note:

Platform Designer tilbyder en absolut indstilling, der giver dig mulighed for at angive en absolut adresse i Reset Offset. Brug denne indstilling, når den hukommelse, der lagrer nulstillingsvektoren, er placeret uden for processorsystemet og undersystemerne.

Relateret information Nios® V-processorreferencemanual

2.1.1.3.6. Fanen Hukommelseskonfigurationer

Tabel 17. Parametre for fanen Hukommelseskonfiguration

Kategori

Fanen Hukommelseskonfiguration

Beskrivelse

Cacher

Datacachestørrelse

· Angiver størrelsen på datacachen. · Gyldige størrelser er fra 0 kilobyte (KB) til 16 KB. · Slå datacachen fra, når størrelsen er 0 KB.

Størrelse på instruktionscache

· Angiver størrelsen på instruktionscachen. · Gyldige størrelser er fra 0 KB til 16 KB. · Slå instruktionscachen fra, når størrelsen er 0 KB.

Perifere regioner A og B

Størrelse

· Angiver størrelsen af ​​det perifere område.
· Gyldige størrelser er fra 64 KB til 2 gigabyte (GB) eller Ingen. Hvis du vælger Ingen, deaktiveres det perifere område.

Basisadresse

· Angiver basisadressen for det perifere område, efter du har valgt størrelsen.
· Alle adresser i periferiregionen producerer dataadgange, der ikke kan caches.
· Basisadressen for den perifere region skal justeres til den perifere regions størrelse.

Tæt forbundne minder

Størrelse

· Angiver størrelsen på den tæt koblede hukommelse. — Gyldige størrelser er fra 0 MB til 512 MB.

Initialisering af basisadresse File

· Angiver basisadressen for tightly-coupled memory. · Angiver initialiseringen file for tæt koblet hukommelse.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 21

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Note:

I et Nios V-processorsystem med aktiveret cache skal du placere systemperiferiudstyr i et perifert område. Du kan bruge perifere områder til at definere en ikke-cachebar transaktion for periferiudstyr såsom UART, PIO, DMA og andre.

2.1.1.3.7. ECC-fanen

Tabel 18. ECC-fanen
ECC Aktiver fejldetektion og statusrapportering
Aktivér enkeltbitkorrektion

Beskrivelse
· Aktiver denne indstilling for at anvende ECC-funktionen til Nios V-processorens interne RAM-blokke. · ECC-funktioner registrerer fejl på op til 2 bit og reagerer baseret på følgende adfærd:
— Hvis det er en korrigerbar enkeltbitfejl, og Aktiver enkeltbitkorrektion er slået fra, fortsætter processoren med at fungere efter at have korrigeret fejlen i processorens pipeline. Korrektionen afspejles dog ikke i kildehukommelserne.
— Hvis det er en korrigerbar enkeltbitfejl, og Aktiver enkeltbitkorrektion er aktiveret, fortsætter processoren med at fungere efter at have korrigeret fejlen i processorpipelinen og kildehukommelserne.
— Hvis det er en ukorrigerbar fejl, stopper processoren sin drift.
Aktiver enkeltbitkorrektion på indlejrede hukommelsesblokke i kernen.

2.1.1.3.8. Fanen Brugerdefineret instruktion

Note:

Denne fane er kun tilgængelig for Nios V/g-processorkernen.

Brugerdefineret instruktion Nios V Brugerdefineret instruktion Hardwaregrænsefladetabel
Nios V brugerdefineret instruktionssoftware makrotabel

Beskrivelse
· Nios V-processoren bruger denne tabel til at definere sine brugerdefinerede instruktionshåndteringsgrænseflader.
· Definerede brugerdefinerede instruktionshåndteringsgrænseflader er unikt kodet af en Opcode (CUSTOM0-3) og 3 bits af funct7[6:4].
· Du kan definere op til i alt 32 individuelle brugerdefinerede instruktionshåndteringsgrænseflader.
· Nios V-processoren bruger denne tabel til at definere brugerdefinerede instruktionssoftwarekodninger til definerede brugerdefinerede instruktionsstyringsgrænseflader.
· For hver defineret brugerdefineret instruktionssoftwarekodning skal Opcode (CUSTOM0-3) og 3 bits af funct7[6:4]-kodningen korrelere med en defineret brugerdefineret instruktionshåndteringsgrænsefladekodning i den brugerdefinerede instruktionshardwaregrænsefladetabell.
· Du kan bruge funct7[6:4], funct7[3:0] og funct3[2:0] til at definere yderligere kodning for en given brugerdefineret instruktion, eller angive som X'er, der skal sendes ind som yderligere instruktionsargumenter.
Nios V-processoren leverer definerede, brugerdefinerede instruktionssoftwarekodninger som genererede C-makroer i system.h og følger R-typen RISC-V instruktionsformat.
· Huskeregler kan bruges til at definere brugerdefinerede navne for: — De genererede C-makroer i system.h.
— De genererede GDB-fejlfindingsmnemoniker i custom_instruction_debug.xml.

Relateret information
AN 977: Brugerdefineret instruktion til Nios V-processor For mere information om brugerdefinerede instruktioner, der giver dig mulighed for at tilpasse Nios® V-processoren til at opfylde behovene i en bestemt applikation.

Nios® V Håndbog til design af indlejrede processorer 22

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
2.1.2. Definition af systemkomponentdesign
Brug Platform Designer til at definere hardwareegenskaberne for Nios V-processorsystemet og tilføje de ønskede komponenter. Følgende diagram viser et grundlæggende Nios V-processorsystemdesign med følgende komponenter: · Nios V-processorkerne · On-Chip-hukommelse · JTAG UART · Intervaltimer (valgfri)(1)
Når en ny On-Chip-hukommelse tilføjes til et Platform Designer-system, skal du udføre Synkroniser systemoplysninger for at afspejle de tilføjede hukommelseskomponenter i nulstillingen. Alternativt kan du aktivere Automatisk synkronisering i Platform Designer for automatisk at afspejle de seneste komponentændringer.
Figur 11. EksampTilslutning af Nios V-processor med andre eksterne enheder i Platform Designer

(1) Du har mulighed for at bruge Nios V's interne timerfunktioner til at erstatte den eksterne intervaltimer i Platform Designer.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 23

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16
Du skal også definere operationspins, der skal eksporteres som conduit i dit Platform Designer-system. For eksempelampEn korrekt FPGA-systemoperationsliste er defineret som nedenfor, men er ikke begrænset til:
· Ur
· Nulstil
· I/O-signaler
2.1.3. Angivelse af basisadresser og prioriteter for afbrydelsesanmodninger
For at specificere, hvordan de komponenter, der er tilføjet i designet, interagerer for at danne et system, skal du tildele basisadresser til hver agentkomponent og tildele IRQ-prioriteter (interrupt requests) til J.TAG UART og intervaltimeren. Platformdesigneren leverer en kommando – Tildel basisadresser – som automatisk tildeler korrekte basisadresser til alle komponenter i et system. Du kan dog justere basisadresserne baseret på dine behov.
Følgende er nogle retningslinjer for tildeling af basisadresser:
· Nios V-processorkernen har et 32-bit adressespænd. For at få adgang til agentkomponenter skal deres basisadresse ligge mellem 0x00000000 og 0xFFFFFFFF.
· Nios V-programmer bruger symbolske konstanter til at referere til adresser. Du behøver ikke at vælge adresseværdier, der er lette at huske.
· Adresseværdier, der differentierer komponenter med kun én bits adresseforskel, producerer mere effektiv hardware. Du behøver ikke at komprimere alle basisadresser til det mindst mulige adresseområde, fordi komprimering kan skabe mindre effektiv hardware.
· Platform Designer forsøger ikke at justere separate hukommelseskomponenter i et sammenhængende hukommelsesområde. For eksempelampHvis du ønsker, at flere On-Chip-hukommelseskomponenter skal kunne adresseres som ét sammenhængende hukommelsesområde, skal du eksplicit tildele basisadresser.
Platform Designer tilbyder også en automatiseringskommando – Tildel afbrydelsesnumre – som forbinder IRQ-signaler for at producere gyldige hardwareresultater. Effektiv tildeling af IRQ'er kræver dog en forståelse af systemets overordnede reaktionsadfærd. Platform Designer kan ikke komme med kvalificerede gæt om den bedste IRQ-tildeling.
Den laveste IRQ-værdi har den højeste prioritet. I et ideelt system anbefaler Altera, at timerkomponenten har den højeste prioritet for IRQ, dvs. den laveste værdi, for at opretholde nøjagtigheden af ​​systemets ur-tick.
I nogle tilfælde kan du tildele en højere prioritet til periferiudstyr i realtid (f.eks. videocontrollere), hvilket kræver en højere afbrydelseshastighed end timerkomponenter.
Relateret information
Brugervejledning til Quartus Prime Pro Edition: Mere information om oprettelse af et system med Platform Designer.

Nios® V Håndbog til design af indlejrede processorer 24

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
2.2. Integration af Platform Designer System i Quartus Prime-projektet
Efter at have genereret Nios V-systemdesignet i Platform Designer, skal du udføre følgende opgaver for at integrere Nios V-systemmodulet i Quartus Prime FPGA-designprojektet. · Instantier Nios V-systemmodulet i Quartus Prime-projektet · Forbind signaler fra Nios V-systemmodulet til andre signaler i FPGA-logikken · Tildel placering af fysiske pins · Begræns FPGA-designet
2.2.1. Instantiering af Nios V-processorsystemmodulet i Quartus Prime-projektet
Platform Designer genererer en systemmoduldesignenhed, som du kan instantiere i Quartus Prime. Hvordan du instantierer systemmodulet afhænger af designindtastningsmetoden for det overordnede Quartus Prime-projekt. For eksempelampHvis du brugte Verilog HDL til designindtastning, skal du instansiere det Verilog-baserede systemmodul. Hvis du foretrækker at bruge blokdiagrammetoden til designindtastning, skal du instansiere et systemmodulsymbol .bdf. file.
2.2.2. Tilslutning af signaler og tildeling af fysiske pinplaceringer
For at forbinde dit Altera FPGA-design til dit printkortdesign skal du udføre følgende opgaver: · Identificer det øverste niveau file til dit design og signaler, der skal forbindes til eksterne Altera
FPGA-enhedsben. · Forstå hvilke ben der skal tilsluttes gennem din brugervejledning til printkortniveau eller
skemaer. · Tildel signaler i topniveaudesignet til porte på din Altera FPGA-enhed med pin
opgaveværktøjer.
Dit Platform Designer-system kan være topniveaudesignet. Altera FPGA'en kan dog også inkludere yderligere logik baseret på dine behov og introducerer dermed en brugerdefineret topniveau-løsning. file. Det øverste niveau file forbinder Nios V-processorens systemmodulsignaler til anden Altera FPGA-designlogik.
Relateret information Brugervejledning til Quartus Prime Pro Edition: Designbegrænsninger
2.2.3. Begrænsning af Altera FPGA-designet
Et korrekt Altera FPGA-systemdesign inkluderer designbegrænsninger for at sikre, at designet opfylder krav til timing closure og andre logiske begrænsninger. Du skal begrænse dit Altera FPGA-design til eksplicit at opfylde disse krav ved hjælp af værktøjer, der leveres i Quartus Prime-softwaren eller tredjeparts EDA-udbydere. Quartus Prime-softwaren bruger de angivne begrænsninger under kompileringsfasen for at opnå de optimale placeringsresultater.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 25

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16
Relaterede oplysninger · Brugervejledning til Quartus Prime Pro Edition: Designbegrænsninger · EDA-partnere fra tredjepart · Brugervejledning til Quartus Prime Pro Edition: Timing Analyzer
2.3. Design af et Nios V-processorhukommelsessystem
Dette afsnit beskriver de bedste fremgangsmåder for valg af hukommelsesenheder i et Platform Designer-indlejret system med en Nios V-processor og opnåelse af optimal ydeevne. Hukommelsesenheder spiller en afgørende rolle i at forbedre den samlede ydeevne af et indlejret system. Indlejret systemhukommelse lagrer programinstruktioner og data.
2.3.1. Flygtig hukommelse
En primær forskel i en hukommelsestype er volatilitet. Volatil hukommelse gemmer kun sit indhold, mens du forsyner hukommelsesenheden med strøm. Så snart du afbryder strømmen, mister hukommelsen sit indhold.
ExampMindre flygtig hukommelse er RAM, cache og registre. Disse er hurtige hukommelsestyper, der øger driftsydelsen. Altera anbefaler, at du indlæser og udfører Nios V-processorinstruktioner i RAM og parrer Nios V IP-kernen med On-Chip Memory IP eller External Memory Interface IP for optimal ydeevne.
For at forbedre ydeevnen kan du fjerne yderligere Platform Designer-tilpasningskomponenter ved at matche Nios V-processorens datahåndteringsgrænsefladetype eller -bredde med boot-RAM. For eksempelampDu kan konfigurere On-Chip Memory II med en 32-bit AXI-4-grænseflade, der matcher Nios V-datahåndteringsgrænsefladen.
Relateret information · Eksterne hukommelsesgrænseflader IP-supportcenter · On-Chip-hukommelse (RAM eller ROM) Altera FPGA IP · On-Chip-hukommelse II (RAM eller ROM) Altera FPGA IP · Nios V-processorapplikation Execute-In-Place fra OCRAM på side 54
2.3.1.1. Konfiguration af on-chip-hukommelse (RAM eller ROM)
Du kan konfigurere Altera FPGA On-Chip Memory IP'er som RAM eller ROM. · RAM giver læse- og skrivefunktion og er ustabil. Hvis du er
Når du starter Nios V-processoren fra en On-Chip RAM, skal du sørge for, at opstartsindholdet bevares og ikke beskadiges i tilfælde af en nulstilling under kørsel. · Hvis en Nios V-processor starter fra ROM, kan enhver softwarefejl på Nios V-processoren ikke fejlagtigt overskrive indholdet af On-Chip-hukommelsen. Dermed reduceres risikoen for beskadigelse af opstartssoftwaren.
Relaterede oplysninger · On-chip-hukommelse (RAM eller ROM) Altera FPGA IP · On-chip-hukommelse II (RAM eller ROM) Altera FPGA IP · Nios V-processorapplikation Execute-In-Place fra OCRAM på side 54

Nios® V Håndbog til design af indlejrede processorer 26

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
2.3.1.2. Cacher
On-chip-hukommelser bruges almindeligvis til at implementere cache-funktionaliteten på grund af deres lave latenstid. Nios V-processoren bruger on-chip-hukommelse til sine instruktions- og datacacher. Den begrænsede kapacitet af on-chip-hukommelse er normalt ikke et problem for cacher, fordi de typisk er små.
Caches bruges almindeligvis under følgende betingelser:
· Almindelig hukommelse er placeret off-chip og har en længere adgangstid end on-chip hukommelse.
· De ydeevnekritiske dele af softwarekoden kan passe ind i instruktionscachen, hvilket forbedrer systemets ydeevne.
· Den ydeevnekritiske, hyppigst anvendte del af dataene kan passe i datacachen, hvilket forbedrer systemets ydeevne.
Aktivering af cacher i Nios V-processoren opretter et hukommelseshierarki, som minimerer adgangstiden til hukommelsen.
2.3.1.2.1. Perifert område
IP-adresser for indlejrede perifere enheder, såsom UART, I2C og SPI, må ikke caches. Cache anbefales kraftigt til eksterne hukommelser, der påvirkes af lang adgangstid, mens interne on-chip-hukommelser kan udelukkes på grund af deres korte adgangstid. Du må ikke cache IP-adresser for indlejrede perifere enheder, såsom UART, I2C og SPI, undtagen hukommelser. Dette er vigtigt, fordi hændelser fra eksterne enheder, såsom agentenheder, der opdaterer de bløde IP-adresser, ikke opfanges af processorens cache og dermed ikke modtages af processoren. Som følge heraf kan disse hændelser gå ubemærket hen, før du tømmer cachen, hvilket kan føre til utilsigtet adfærd i dit system. Kort sagt kan det hukommelseskortlagte område for indlejrede perifere IP-adresser ikke caches og skal befinde sig inden for processorens perifere områder.
Følg disse trin for at indstille et perifert område:
1. Åbn systemets adressekort i Platform Designer.
2. Naviger til adressekortet for processorens Instruction Manager og Data Manager.
3. Identificér de eksterne enheder og hukommelser i dit system.
Figur 12. Eksample af adressekort

Bemærk: De blå pile peger på hukommelser. 4. Gruppér periferiudstyret:
a. Hukommelse som cachebar b. Periferiudstyr som ikke-cachebar

Send feedback

Nios® V Håndbog til design af indlejrede processorer 27

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Tabel 19. Cachebar og ikke-cachebar region

Underordnet

Adressekort

Status

Perifer region

Størrelse

Basisadresse

bruger_applikation_mem.s1

0x0 ~ 0x3ffff

Cachebar

N/A

N/A

cpu.dm_agent bootcopier_rom.s1

0x40000 ~ 0x4ffff 0x50000 ~ 0x517ff

Kan ikke caches Cachebar

65536 bytes Ikke tilgængelig

0x40000 N/A

bootcopier_ram.s1 cpu.timer_sw_agent mailbox.avmm

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

Kan caches Kan ikke caches Kan ikke caches

144 bytes (minimumsstørrelse er 65536 bytes)

0x54000

sysid_qsys_0.control_slave

0x54080 ~ 0x54087

Kan ikke caches

uart.avalon_jtag_slave

0x54088 ~ 0x5408f

Kan ikke caches

5. Juster de perifere områder med deres specifikke størrelser:
· F.eksampHvis størrelsen er 65536 bytes, svarer den til 0x10000 bytes. Derfor skal den tilladte basisadresse være et multiplum af 0x10000.
· CPU.dm_agent bruger en basisadresse på 0x40000, som er et multiplum af 0x10000. Som følge heraf opfylder Peripheral Region A, med en størrelse på 65536 bytes og en basisadresse på 0x40000, kravene.
· Basisadressen for samlingen af ​​regioner, der ikke kan caches, ved 0x54000 er ikke et multiplum af 0x10000. Du skal tildele dem til 0x60000 eller et andet multiplum af 0x10000. Dermed opfylder Perifert Region B, som har en størrelse på 65536 bytes og en basisadresse på 0x60000, kriterierne.

Tabel 20. Cachelagbart og ikke-cachelagbart område med omtildeling

Underordnet

Adressekort

Status

Perifer region

Størrelse

Basisadresse

bruger_applikation_mem.s1

0x0 ~ 0x3ffff

Cachebar

N/A

N/A

cpu.dm_agent

0x40000 ~ 0x4ffff

Kan ikke caches 65536 bytes

0x40000

bootcopier_rom.s1

0x50000 ~ 0x517ff

Cachebar

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

Kan caches Kan ikke caches Kan ikke caches

144 bytes (minimumsstørrelse er 65536 bytes)

0x60000

uart.avalon_jtag_slave

0x60088 ~ 0x6008f

Kan ikke caches

2.3.1.3. Tæt koblet hukommelse
Tæt koblede hukommelser (TCM'er) implementeres ved hjælp af on-chip-hukommelse, da deres lave latenstid gør dem velegnede til opgaven. TCM'er er hukommelser, der er kortlagt i det typiske adresserum, men har en dedikeret grænseflade til mikroprocessoren og besidder cachehukommelsens højtydende egenskaber med lav latenstid. TCM'en leverer også en underordnet grænseflade til den eksterne vært. Processoren og den eksterne vært har samme tilladelsesniveau til at håndtere TCM'en.

Nios® V Håndbog til design af indlejrede processorer 28

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Note:

Når den underordnede TCM-port er tilsluttet en ekstern vært, kan den blive vist med en anden basisadresse end den basisadresse, der er tildelt i processorkernen. Altera anbefaler at justere begge adresser til den samme værdi.

2.3.1.4. Ekstern hukommelsesgrænseflade (EMIF)
EMIF (External Memory Interface) fungerer på samme måde som SRAM (Static Random Access Memory), men den er dynamisk og kræver periodisk opdatering for at bevare dens indhold. De dynamiske hukommelsesceller i EMIF er meget mindre end de statiske hukommelsesceller i SRAM, hvilket resulterer i hukommelsesenheder med højere kapacitet og lavere omkostninger.
Ud over opdateringskravet har EMIF specifikke grænsefladekrav, der ofte nødvendiggør specialiseret controllerhardware. I modsætning til SRAM, som har et fast sæt adresselinjer, organiserer EMIF sin hukommelsesplads i banker, rækker og kolonner. Skift mellem banker og rækker introducerer en vis overhead, så du skal omhyggeligt ordne hukommelsesadgange for at bruge EMIF effektivt. EMIF multiplekser også række- og kolonneadresser over de samme adresselinjer, hvilket reducerer antallet af pins, der kræves for en given EMIF-størrelse.
Højhastighedsversioner af EMIF, såsom DDR, DDR2, DDR3, DDR4 og DDR5, stiller strenge krav til signalintegritet, som printkortdesignere skal overveje.
EMIF-enheder er blandt de mest omkostningseffektive og højkapacitets RAM-typer, der findes, hvilket gør dem til en populær mulighed. En nøglekomponent i en EMIF-grænseflade er EMIF IP, som administrerer opgaver relateret til adressemultipleksering, opdatering og skift mellem rækker og banker. Dette design giver resten af ​​systemet adgang til EMIF uden at skulle forstå dets interne arkitektur.

Relateret information Eksterne hukommelsesgrænseflader IP-supportcenter

2.3.1.4.1. Adresse Span Extender IP
Address Span Extender Altera FPGA IP giver hukommelseskortlagte værtsgrænseflader adgang til et større eller mindre adressekort end bredden af ​​deres adressesignaler tillader. Address Span Extender IP opdeler det adresserbare rum i flere separate vinduer, så værten kan få adgang til den relevante del af hukommelsen gennem vinduet.
Address Span Extender begrænser ikke værts- og agentbredder til en 32-bit og 64-bit konfiguration. Du kan bruge Address Span Extender med adressevinduer på 1-64 bit.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 29

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Figur 13. Adressespændforlænger Altera FPGA IP
Agentens ordadresse

Adressespændforlænger

A

Kortlægningstabel
Kontrolport A

Kontrolregister 0 Kontrolregister Z-1

Udvidet værtsadresse H

Relateret information
Brugervejledning til Quartus® Prime Pro Edition: Platformdesigner. Se emnet Adressespændforlænger Intel® FPGA IP for at få flere oplysninger.

2.3.1.4.2. Brug af Address Span Extender IP med Nios V-processor
32-bit Nios V-processoren kan adressere op til 4 GB af et adresseområde. Hvis EMIF'en indeholder mere end 4 GB hukommelse, overskrider den det maksimalt understøttede adresseområde, hvilket gør Platform Designer-systemet fejlagtigt. En Address Span Extender IP er nødvendig for at løse dette problem ved at opdele et enkelt EMIF-adresseområde i flere mindre vinduer.
Altera anbefaler, at du overvejer følgende parametre.

Tabel 21. Parametre for adressespændforlænger

Parameter

Anbefalede indstillinger

Datastibredde
Udvidet masterbyteadressebredde

Vælg 32-bit, som er korreleret med 32-bit processoren. Afhænger af EMIF-hukommelsens størrelse.

Bredde for slaveordadresse Burstcount-bredde

Vælg 2 GB eller mindre. Det resterende adresseområde for Nios V-processoren er reserveret til andre integrerede bløde IP-adresser.
Start med 1 og øg gradvist denne værdi for at forbedre ydeevnen.

Antal undervinduer

Vælg 1 undervindue, hvis du forbinder EMIF til Nios V-processoren som instruktions- og datahukommelse, eller begge dele. Det er farligt at skifte mellem flere undervinduer, mens Nios V-processoren udfører fra EMIF.

Aktiver slavekontrolport

Deaktiver slavekontrolporten, hvis du tilslutter EMIF til Nios V-processoren som instruktion og/eller datahukommelse. Samme problemstillinger som for antal undervinduer.

Maksimalt antal ventende læsninger

Start med 1 og øg gradvist denne værdi for at forbedre ydeevnen.

Nios® V Håndbog til design af indlejrede processorer 30

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
Figur 14. Tilslutning af instruktion og datahåndtering til adressespændviddeforlænger

Figur 15. Adressekortlægning

Bemærk, at Address Span Extender kan tilgå hele EMIF'ens 8 GB hukommelsesplads. Via Address Span Extender kan Nios V-processoren dog kun tilgå den første 1 GB hukommelsesplads i EMIF'en.

Figur 16. Forenklet blokdiagram

Platform Designer System

Resterende 3 GB

Nios V-processoradresse

span er for indlejret

NNioios sVV PProrocecsesososor r
M

bløde IP-adresser i det samme system.
1 GB vindue

Adressespændvidde

S

Forlænger

M

Kun de første 1 GB

af EMIF-hukommelsen er forbundet til Nios V

EMIF

processor.

8 GB
S

Send feedback

Nios® V Håndbog til design af indlejrede processorer 31

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16
2.3.1.4.3. Definition af Address Span Extender Linker-hukommelsesenhed 1. Definer Address Span Extender (EMIF) som nulstillingsvektor. Alternativt kan du tildele Nios V-processorens nulstillingsvektor til andre hukommelser, såsom OCRAM eller flash-enheder.
Figur 17. Flere muligheder som nulstillingsvektor
Board Support Package (BSP) Editoren kan dog ikke automatisk registrere Address Span Extender (EMIF) som en gyldig hukommelse. Afhængigt af det valg, du har foretaget, ser du to forskellige situationer, som vist i følgende figurer. Figur 18. BSP-fejl ved definition af Address Span Extender (EMIF) som nulstillingsvektor

Nios® V Håndbog til design af indlejrede processorer 32

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
Figur 19. Manglende EMIF, når andre hukommelser defineres som nulstillingsvektor

2. Du skal manuelt tilføje Address Span Extender (EMIF) ved hjælp af Tilføj hukommelsesenhed, Tilføj linkerhukommelsesområde og Tilføj linkersektionstilknytninger i fanen BSP Linker Script.
3. Følg disse trin:
a. Bestem adressespændet for adressespændforlængeren ved hjælp af hukommelseskortet (eks.ampi den følgende figur bruger Address Span Extender-intervallet fra 0x0 til 0x3fff_ffff).
Figur 20. Hukommelseskort

b. Klik på Tilføj hukommelsesenhed, og udfyld baseret på oplysningerne i dit designs hukommelseskort: i. Enhedsnavn: emif_ddr4. Bemærk: Sørg for at kopiere det samme navn fra hukommelseskortet. ii. Basisadresse: 0x0 iii. Størrelse: 0x40000000
c. Klik på Tilføj for at tilføje et nyt linkerhukommelsesområde:

Send feedback

Nios® V Håndbog til design af indlejrede processorer 33

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Tabel 22. Tilføjelse af linkerhukommelsesområde

Trin

Nulstil vektor

emif_ddr4

Andre minder

1

Tilføj en ny Linker-hukommelsesregion kaldet nulstilling. Tilføj en ny Linker-hukommelsesregion for

· Regionsnavn: nulstil

emif_ddr4.

· Regionstørrelse: 0x20

· Regionsnavn: emif_ddr4

· Hukommelsesenhed: emif_ddr4

· Regionstørrelse: 0x40000000

· Hukommelsesforskydning: 0x0

· Hukommelsesenhed: emif_ddr4

· Hukommelsesforskydning: 0x0

2

Tilføj en ny linkerhukommelsesregion for

resterende emif_ddr4.

· Regionsnavn: emif_ddr4

· Regionstørrelse: 0x3fffffe0

· Hukommelsesenhed: emif_ddr4

· Hukommelsesforskydning: 0x20

Figur 21. Linkerområde ved definition af Address Span Extender (EMIF) som nulstillingsvektor

Figur 22. Linkerområde ved definition af andre hukommelser som nulstillingsvektor
d. Når emif_ddr4 er tilføjet til BSP'en, kan du vælge den til enhver linkersektion.
Figur 23. Tilføjelse af adressespændforlænger (EMIF)

e. Ignorer advarslen om, at hukommelsesenheden emif_ddr4 ikke er synlig i SOPC-designet.
f. Fortsæt med at generere BSP.
Relaterede oplysninger Introduktion til Nios V-processorens opstartsmetoder på side 51

Nios® V Håndbog til design af indlejrede processorer 34

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
2.3.2. Ikke-flygtig hukommelse
Ikke-flygtig hukommelse bevarer sit indhold, når strømmen slukkes, hvilket gør den til et godt valg til lagring af information, som systemet skal hente efter en systemstrømcyklus. Ikke-flygtig hukommelse lagrer normalt processorens bootkode, persistente applikationsindstillinger og Altera FPGA-konfigurationsdata. Selvom ikke-flygtig hukommelse har fordelen ...tagFor at bevare dataene, når du slukker for strømmen, er den meget langsommere sammenlignet med flygtig hukommelse og har ofte mere komplekse skrive- og sletningsprocedurer. Ikke-flygtig hukommelse er normalt også kun garanteret at kunne slettes et givet antal gange, hvorefter den kan svigte.
ExampIkke-flygtig hukommelse omfatter alle typer flash, EPROM og EEPROM. Altera anbefaler, at du gemmer Altera FPGA bitstreams og Nios V-programbilleder i en ikke-flygtig hukommelse og bruger seriel flash som boot-enhed til Nios V-processorer.
Relateret information
· Generisk seriel flash-grænseflade Altera FPGA IP brugervejledning
· Brugervejledning til postkasseklient Altera FPGA IP · Brugervejledning til MAX® 10-brugerflashhukommelse: On-Chip Flash Altera FPGA IP Core
2.4. Bedste praksis for ure og nulstillinger
Det er vigtigt at forstå, hvordan Nios V-processorens ur- og nulstillingsdomæne interagerer med alle eksterne enheder, den opretter forbindelse til. Et simpelt Nios V-processorsystem starter med et enkelt urdomæne, og det kan blive kompliceret med et system med flere urdomæner, når et hurtigt urdomæne kolliderer med et langsomt urdomæne. Du skal være opmærksom på og forstå, hvordan disse forskellige domæner sekvenseres ud af nulstillingen, og sørge for, at der ikke er nogen subtile problemer.
For bedste praksis anbefaler Altera at placere Nios V-processoren og boothukommelsen i samme urdomæne. Frigiv ikke Nios V-processoren fra nulstilling i et hurtigt urdomæne, når den starter fra en hukommelse, der befinder sig i et meget langsomt urdomæne, da dette kan forårsage en instruktionshentningsfejl. Du kan have brug for manuel sekventering ud over, hvad Platform Designer leverer som standard, og planlæg nulstillingsfrigivelsestopologien i overensstemmelse hermed baseret på din use case. Hvis du vil nulstille dit system, efter det har startet og kørt i et stykke tid, skal du anvende de samme overvejelser til systemnulstillingssekventering og krav til initialisering efter nulstilling.
2.4.1. System JTAG Ur
Specifikation af urbegrænsninger i hvert Nios V-processorsystem er en vigtig overvejelse i systemdesignet og er påkrævet for korrekthed og deterministisk adfærd. Quartus Prime Timing Analyzer udfører statisk timinganalyse for at validere timingydelsen af ​​al logik i dit design ved hjælp af branchestandardiserede begrænsnings-, analyse- og rapporteringsmetoder.
ExampLektion 1. Grundlæggende 100 MHz ur med 50/50 arbejdscyklus og 16 MHz JTAG Ur
#**************************************************************** # Opret 100MHz ur #**************************************************************** create_clock -name {clk} -period 10 [get_ports {clk}] #************************ Opret 16MHz JTAG Ur #************************

Send feedback

Nios® V Håndbog til design af indlejrede processorer 35

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
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}] Relateret information Quartus Prime Timing Analyzer-kogebogen
2.4.2. Grænseflade til anmodning om nulstilling
Nios V-processoren inkluderer en valgfri nulstillingsanmodningsfunktion. Nulstillingsanmodningsfunktionen består af reset_req- og reset_req_ack-signalerne.
Sådan aktiverer du nulstillingsanmodningen i Platform Designer: 1. Start Nios V Processor IP Parameter Editor. 2. Aktiver Tilføj nulstillingsanmodningsgrænseflade i indstillingen Brug nulstillingsanmodning.
valgmulighed.
Figur 24. Aktiver anmodning om nulstilling af Nios V-processor
reset_req-signalet fungerer som en afbrydelse. Når du aktiverer reset_req, anmoder du om at nulstille kernen. Kernen venter på, at enhver udestående bustransaktion fuldfører sin operation. For eksempelampHvis der er en ventende hukommelsesadgangstransaktion, venter kernen på et komplet svar. På samme måde accepterer kernen ethvert ventende instruktionssvar, men udsteder ikke en instruktionsanmodning efter at have modtaget reset_req-signalet.
Nulstillingsoperationen består af følgende flow: 1. Færdiggør alle ventende operationer 2. Gennemskyl den interne pipeline 3. Indstil programtælleren til nulstillingsvektoren 4. Nulstil kernen Hele nulstillingsoperationen tager et par clock-cyklusser. reset_req skal forblive aktiveret, indtil reset_req_ack aktiveres, hvilket indikerer, at kernens nulstillingsoperation er fuldført. Hvis dette ikke gøres, bliver kernens tilstand ikke-deterministisk.

Nios® V Håndbog til design af indlejrede processorer 36

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
2.4.2.1. Typiske anvendelsestilfælde
· Du kan aktivere reset_req-signalet fra opstart for at forhindre Nios V-processorkernen i at starte programudførelse fra dens nulstillingsvektor, indtil andre FPGA-værter i systemet initialiserer Nios V-processorens opstartshukommelse. I dette tilfælde kan hele delsystemet opleve en ren hardwarenulstilling. Nios V-processoren holdes på ubestemt tid i en nulstillingsanmodningstilstand, indtil de andre FPGA-værter initialiserer processorens opstartshukommelse.
· I et system, hvor du skal nulstille Nios V-processorkernen uden at forstyrre resten af ​​systemet, kan du bruge reset_req-signalet til at stoppe kernens aktuelle drift fuldstændigt og genstarte processoren fra nulstillingsvektoren, når systemet frigiver reset_req_ack-signalet.
· En ekstern vært kan bruge nulstillingsanmodningsgrænsefladen til at lette implementeringen af ​​følgende opgaver:
— Stands det nuværende Nios V-processorprogram.
— Indlæs et nyt program i Nios V-processorens opstartshukommelse.
— Lad processoren begynde at udføre det nye program.
Altera anbefaler, at du implementerer en timeout-mekanisme til at overvåge tilstanden af ​​reset_req_ack-signalet. Hvis Nios V-processorkernen falder i en uendelig ventetilstand og går i stå af en ukendt årsag, kan reset_req_ack ikke aktiveres på ubestemt tid. Timeout-mekanismen gør det muligt at:
· Definer en timeout-periode for gendannelse, og udfør systemgendannelse med nulstilling på systemniveau.
· Udfør en hardware-nulstilling.
2.4.3. Nulstil udgivelses-IP
Altera SDM-baserede enheder bruger en parallel, sektorbaseret arkitektur, der distribuerer kernestrukturlogikken på tværs af flere sektorer. Altera anbefaler, at du bruger Reset Release Altera FPGA IP som et af de indledende input til nulstillingskredsløbet. Intel® SDM-baserede enheder omfatter Stratix® 10 og Agilex™-enheder. Kontrolblokbaserede enheder er ikke påvirket af dette krav.
Relateret information
AN 891: Brug af Reset Release Altera FPGA IP
2.5. Tildeling af en standardagent
Platform Designer giver dig mulighed for at angive en standardagent, der fungerer som standardagent for fejlrespons. Den standardagent, du angiver, leverer en fejlresponstjeneste til værter, der forsøger ikke-dekodet adgang til adressekortet.
Følgende scenarier udløser en ikke-afkodet hændelse:
· Overtrædelse af sikkerhedstilstanden for bustransaktioner
· Transaktionsadgang til udefineret hukommelsesområde
· Undtagelseshændelse og lignende.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 37

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

En standardagent bør tildeles til at håndtere sådanne hændelser, hvor en udefineret transaktion omdirigeres til standardagenten og efterfølgende reagerer på Nios V-processoren med et fejlsvar.
Relateret information
· Brugervejledning til Quartus Prime Pro Edition: Platformdesigner. Udpegning af en standardagent
· Quartus Prime Pro Edition brugervejledning: Platformdesigner. Fejlrespons Slave Altera FPGA IP
· Github – Supplerende nulstillingskomponenter til Qsys

2.6. Tildeling af en UART-agent til udskrivning
Udskrivning er nyttigt til fejlfinding af softwareapplikationen samt til at overvåge systemets status. Altera anbefaler at udskrive grundlæggende oplysninger såsom en opstartsmeddelelse, fejlmeddelelse og softwareapplikationens udførelsesstatus.
Undgå at bruge printf()-biblioteksfunktionen under følgende omstændigheder: · Printf()-biblioteket får applikationen til at gå i stå, hvis ingen vært læser output.
Dette gælder for JTAG Kun UART. · printf()-biblioteket bruger store mængder programhukommelse.

2.6.1. Forebyggelse af stalls af JTAG UART

Tabel 23. Forskelle mellem traditionel UART og JTAG UART

UART-type Traditionel UART

Beskrivelse
Sender serielle data uanset om en ekstern vært lytter. Hvis ingen vært læser de serielle data, går dataene tabt.

JTAG UART

Skriver de overførte data til en outputbuffer og er afhængig af en ekstern vært til at læse fra bufferen for at tømme den.

Den J.TAG UART-driveren venter, når outputbufferen er fuld. JTAG UART-driveren venter på, at en ekstern vært læser fra outputbufferen, før der skrives flere transmissionsdata. Denne proces forhindrer tab af transmissionsdata.
Men når systemfejlfinding ikke er påkrævet, f.eks. under produktion, implementeres indlejrede systemer uden en værts-pc tilsluttet J.TAG UART. Hvis systemet valgte JTAG UART som UART-agent, kan det forårsage systemstop, fordi der ikke er tilsluttet nogen ekstern vært.
For at forhindre stop fra JTAG UART, anvend en af ​​følgende muligheder:

Nios® V Håndbog til design af indlejrede processorer 38

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16

Tabel 24. Forebyggelse af stalling ved JTAG UART

Valgmuligheder
Ingen UART-grænseflade og driver til stede
Brug en anden UART-grænseflade og driver
Bevar JTAG UART-grænseflade (uden driver)

Under hardwareudvikling (i Platform Designer)

Under softwareudvikling (i Board Support Package Editor)

Fjern JTAG UART fra systemet

Konfigurer hal.stdin, hal.stdout og hal.stderr som Ingen.

Erstat JTAG UART med andre soft configure hal.stdin, hal.stdout og hal.stderr

UART IP

med anden blød UART IP.

Bevar JTAG UART i systemet

· Konfigurer hal.stdin, hal.stdout og hal.stderr som Ingen i editoren til forumsupportpakker.
· Deaktiver JTAG UART-driver i fanen BSP-driver.

2.7. JTAG Signaler
Nios V-processorens debugmodul bruger JTAG grænseflade til download af ELF-software og softwarefejlfinding. Når du fejlfinder dit design med JTAG grænsefladen, JTAG Signalerne TCK, TMS, TDI og TDO er implementeret som en del af designet. Specifikation af JTAG Signalbegrænsninger i ethvert Nios V-processorsystem er en vigtig systemdesignovervejelse og er påkrævet for korrekthed og deterministisk adfærd.
Altera anbefaler, at ethvert designs systemurfrekvens er mindst fire gange JTAG clockfrekvens for at sikre, at OCI-kernen (on-chip instrumentation) fungerer korrekt.
Relateret information · Quartus® Prime Timing Analyzer kogebogen: JTAG Signaler
For mere information om JTAG Retningslinjer for tidsbegrænsninger. · KDB: Hvorfor mislykkes niosv-download med en ikke-pipelinet Nios® V/m-processor ved
JTAG Frekvens 24 MHz eller 16 MHz?
2.8. Optimering af Platform Designer-systemets ydeevne
Platform Designer leverer værktøjer til optimering af systemforbindelsens ydeevne i Altera FPGA-designs.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 39

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner
726952 | 2025.07.16
Figur 25. Optimeringseksempelamples

EksampDet, der er vist på figuren, viser følgende trin:
1. Tilføjer Pipeline Bridge for at afhjælpe kritiske stier ved at placere den: a. Mellem Instruction Manager og dens agenter b. Mellem Data Manager og dens agenter
2. Anvend ægte dobbeltports On-Chip RAM, hvor hver port er dedikeret til henholdsvis Instruction Manager og Data Manager.

Nios® V Håndbog til design af indlejrede processorer 40

Send feedback

2. Nios V-processorhardwaresystemdesign med Quartus Prime-software og platformdesigner 726952 | 2025.07.16
Se de følgende relaterede links nedenfor, som præsenterer teknikker til at udnytte de tilgængelige værktøjer og afvejningerne ved hver implementering.
Relateret information · Quartus® Prime Pro Edition brugervejledning: Platformdesigner
Se emnet Optimering af Platform Designer-systemets ydeevne for at få flere oplysninger. · Quartus® Prime Standard Edition brugervejledning: Platform Designer Se emnet Optimering af Platform Designer-systemets ydeevne for at få flere oplysninger.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 41

726952 | 2025.07.16 Send feedback

3. Nios V-processorsoftwaresystemdesign
Dette kapitel beskriver softwareudviklingsprocessen for Nios V-processoren og de softwareværktøjer, du kan bruge til at udvikle dit indlejrede designsystem. Indholdet fungerer som en oversigt.view før udvikling af et Nios V-processorsoftwaresystem.
Figur 26. Softwaredesignflow
Starte

Generer BSP'en i Platform Designer ved hjælp af BSP Editoren

Generer BSP'en ved hjælp af Nios V-kommandoskallen
Generer applikationens CMake-build File Brug af Nios V-kommandoskallen

Note:

Importer BSP og applikations CMake-buildet File
Byg Nios V-processorapplikationen ved hjælp af
RiscFree IDE til Intel FPGA

Byg Nios V-processorapplikationen ved hjælp af en hvilken som helst
kommandolinjekildekodeeditor, CMake og Make
kommandoer
Ende

Altera anbefaler, at du bruger et Altera FPGA-udviklingskit eller et brugerdefineret prototypekort til softwareudvikling og fejlfinding. Mange eksterne enheder og funktioner på systemniveau er kun tilgængelige, når din software kører på et faktisk kort.

© Altera Corporation. Altera, Altera-logoet, `a'-logoet og andre Altera-mærker er varemærker tilhørende Altera Corporation. Altera forbeholder sig retten til at foretage ændringer i produkter og tjenester når som helst uden varsel. Altera påtager sig intet ansvar som følge af anvendelsen af ​​oplysninger, produkter eller tjenester beskrevet heri, medmindre det udtrykkeligt er skriftligt aftalt med Altera. Alteras kunder rådes til at indhente den seneste version af enhedsspecifikationerne, før de stoler på offentliggjorte oplysninger og før de afgiver ordrer på produkter eller tjenester. *Andre navne og mærker kan gøres gældende som andres ejendom.

3. Nios V-processorsoftwaresystemdesign 726952 | 2025.07.16
3.1. Udviklingsproces for Nios V-processorsoftware
3.1.1. Projekt for bestyrelsesstøttepakke
Et Nios V Board Support Package (BSP)-projekt er et specialiseret bibliotek, der indeholder systemspecifik supportkode. Et BSP leverer et software-runtime-miljø, der er tilpasset til én processor i et Nios V-processorhardwaresystem.
Quartus Prime-softwaren leverer Nios V Board Support Package Editor og niosv-bsp-værktøjerne til at ændre indstillinger, der styrer BSP'ens funktionsmåde.
En BSP indeholder følgende elementer: · Hardwareabstraktionslag · Enhedsdrivere · Valgfrie softwarepakker · Valgfrit realtidsoperativsystem
3.1.2. Ansøgningsprojekt
Et Nios VC/C++ applikationsprojekt har følgende funktioner: · Består af en samling kildekode og en CMakeLists.txt.
— CMakeLists.txt kompilerer kildekoden og forbinder den med en BSP og et eller flere valgfrie biblioteker for at oprette en .elf file
· En af kilderne files indeholder funktionen main(). · Indeholder kode, der kalder funktioner i biblioteker og BSP'er.
Altera leverer værktøjet niosv-app i Quartus Prime-softwareværktøjerne til at oprette applikationen CMakeLists.txt og RiscFree IDE til Altera FPGA'er til at ændre kildekoden i et Eclipse-baseret miljø.
3.2. Altera FPGA indlejrede udviklingsværktøjer
Nios V-processoren understøtter følgende værktøjer til softwareudvikling: · Grafisk brugergrænseflade (GUI) – Grafiske udviklingsværktøjer, der er tilgængelige i
både Windows* og Linux* operativsystemer (OS). — Nios V Board Support Package Editor (Nios V BSP Editor) — Ashling RiscFree IDE til Altera FPGA'er · Kommandolinjeværktøjer (CLI) – Udviklingsværktøjer, der startes fra Nios V Command Shell. Hvert værktøj har sin egen dokumentation i form af hjælp, der er tilgængelig fra kommandolinjen. Åbn Nios V Command Shell, og skriv følgende kommando: –hjælp til view Hjælpemenuen. — Nios V Utilities Værktøjer — File Formatkonverteringsværktøjer — Andre hjælpeprogrammer

Send feedback

Nios® V Håndbog til design af indlejrede processorer 43

3. Nios V-processorsoftwaresystemdesign 726952 | 2025.07.16

Tabel 25. Oversigt over opgaver i GUI-værktøjer og kommandolinjeværktøjer

Opgave

GUI værktøj

Kommandolinjeværktøj

Oprettelse af en BSP

Nios V BSP-redaktør

· I Quartus Prime Pro Edition-softwaren: niosv-bsp -c -s=<.qsys file> -t= [VALGMULIGHEDER] indstillinger.bsp
· I Quartus Prime Standard Edition-softwaren: niosv-bsp -c -s=<.sopcinfo file> -t= [VALGMULIGHEDER] indstillinger.bsp

Generering af en BSP ved hjælp af eksisterende .bsp file
Opdatering af en BSP

Nios V BSP-editor Nios V BSP-editor

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

Undersøgelse af en BSP

Nios V BSP-redaktør

niosv-bsp -q -E= [VALGMULIGHEDER] indstillinger.bsp

Oprettelse af en applikation

niosv-app -a= -b= -s= files-mappe> [MULIGHEDER]

Oprettelse af et brugerbibliotek

niosv-app -l= -s= files-mappe> -p= [MULIGHEDER]

Ændring af et program Ændring af et brugerbibliotek Opbygning af et program

RiscFree IDE til Altera FPGA'er
RiscFree IDE til Altera FPGA'er
RiscFree IDE til Altera FPGA'er

Enhver kommandolinjekodeeditor
Enhver kommandolinjekodeeditor
· lave · lave

Opbygning af et brugerbibliotek

RiscFree IDE til Altera FPGA'er

· lave · lave

Download af en ELF-applikation
Konvertering af .elf file

RiscFree IDE til Altera FPGA'er

niosv-download
· elf2flash · elf2hex

Relateret information
Ashling RiscFree Integreret Udviklingsmiljø (IDE) til Altera FPGA'er Brugervejledning

3.2.1. Nios V-processorkort-supportpakkeeditor
Du kan bruge Nios V-processor BSP Editor til at udføre følgende opgaver: · Oprette eller ændre et Nios V-processor BSP-projekt · Redigere indstillinger, linkerregioner og sektionstilknytninger · Vælge softwarepakker og enhedsdrivere.
Funktionerne i BSP Editor inkluderer funktionerne i niosv-bsp-værktøjerne. Ethvert projekt, der oprettes i BSP Editor, kan også oprettes ved hjælp af kommandolinjeværktøjerne.

Nios® V Håndbog til design af indlejrede processorer 44

Send feedback

3. Nios V-processorsoftwaresystemdesign 726952 | 2025.07.16

Note:

For Quartus Prime Standard Edition-software henvises til AN 980: Nios V Processor Quartus Prime Software Support for trinene til at åbne BSP Editor GUI.

Sådan starter du BSP Editor: 1. Åbn Platform Designer, og naviger til File menu.
a. Sådan åbner du en eksisterende BSP-indstilling file, klik på Åbn… b. For at oprette en ny BSP skal du klikke på Ny BSP… 2. Vælg fanen BSP Editor, og angiv de relevante oplysninger.

Figur 27. Start BSP Editor

Relateret information AN 980: Nios V-processor Quartus Prime Softwaresupport
3.2.2. Risikofri IDE til Altera FPGA'er
RiscFree IDE til Altera FPGA'er er en Eclipse-baseret IDE til Nios V-processoren. Altera anbefaler, at du udvikler Nios V-processorsoftwaren i denne IDE af følgende årsager: · Funktionerne er udviklet og verificeret til at være kompatible med Nios V
processorens byggeproces. · Udstyret med alle nødvendige værktøjskæder og understøttende værktøjer, der gør det muligt for dig
for nemt at starte Nios V-processorudvikling.
Relateret information Ashling RiscFree Integrated Development Environment (IDE) til Altera FPGA'er brugervejledning
3.2.3. Nios V Utilities-værktøjer
Du kan oprette, ændre og bygge Nios V-programmer med kommandoer, der indtastes på en kommandolinje eller er integreret i et script. De Nios V-kommandolinjeværktøjer, der er beskrevet i dette afsnit, findes i /niosv/bin-mappen.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 45

3. Nios V-processorsoftwaresystemdesign 726952 | 2025.07.16

Tabel 26. Nios V Utilities-værktøjer

Kommandolinjeværktøjer

Oversigt

niosv-app niosv-bsp niosv-download niosv-shell niosv-stack-rapport

At generere og konfigurere et applikationsprojekt.
Sådan opretter eller opdaterer du BSP-indstillinger file og opret BSP'en files. For at downloade ELF file til en Nios® V-processor.
For at åbne Nios V-kommandoskallen. For at informere dig om den resterende hukommelsesplads, der er tilgængelig for din applikation .elf til stak- eller heap-brug.

3.2.4. File Formatkonverteringsværktøjer

File Formatkonvertering er nogle gange nødvendig, når data overføres fra et værktøj til et andet. file formatkonverteringsværktøjer findes i
softwareinstallationsmappe>/niosv/bin-mappen.

Tabel 27. File Formatkonverteringsværktøjer

Kommandolinjeværktøjer elf2flash elf2hex

Resumé For at oversætte .elf file til .srec-format til programmering af flashhukommelse. For at oversætte .elf file til .hex-format til hukommelsesinitialisering.

3.2.5. Andre hjælpeprogrammer

Du kan have brug for følgende kommandolinjeværktøjer, når du bygger et Nios V-processorbaseret system. Disse kommandolinjeværktøjer leveres enten af ​​Intel i /quartus/bin eller erhvervet fra
open source-værktøjer.

Tabel 28. Andre kommandolinjeværktøjer

Kommandolinjeværktøjer

Type

Oversigt

juart-terminal

Intel-leveret

At overvåge stdout og stderr og at give input til en Nios® V-processor
undersystem til stdin. Dette værktøj gælder kun for JTAG UART IP, når den er tilsluttet Nios® V-processoren.

openocd

Leveret af Intel til at udføre OpenOCD.

openocd-cfg-gen

Intel-leveret · For at generere OpenOCD-konfigurationen file· For at vise JTAG kædeenhedsindeks.

Nios® V Håndbog til design af indlejrede processorer 46

Send feedback

726952 | 2025.07.16 Send feedback
4. Nios V-processorkonfiguration og opstartsløsninger
Du kan konfigurere Nios V-processoren til at starte og udføre software fra forskellige hukommelsesplaceringer. Starthukommelsen er Quad Serial Peripheral Interface (QSPI) flash, On-Chip Memory (OCRAM) eller Tightly Coupled Memory (TCM).
Relaterede oplysninger · Betingelser for opstartstrigger på side 193 · Opstartstriggere
For mere information om opstartsudløsere.
4.1. Introduktion
Nios V-processoren understøtter to typer opstartsprocesser: · Execute-in-Place (XIP) ved hjælp af funktionen alt_load() · Program kopieret til RAM ved hjælp af boot copier. Udviklingen af ​​indlejrede Nios V-programmer er baseret på hardwareabstraktionslaget (HAL). HAL leverer et lille bootloader-program (også kendt som boot copier), der kopierer relevante linkersektioner fra opstartshukommelsen til deres runtime-placering ved opstart. Du kan angive program- og datahukommelsens runtime-placeringer ved at manipulere indstillingerne i Board Support Package (BSP) Editor. Dette afsnit beskriver: · Nios V-processor boot copier, der starter dit Nios V-processorsystem i henhold til
Valg af boothukommelse · Opstartsmuligheder og generel proces for Nios V-processor · Nios V-programmeringsløsninger til den valgte boothukommelse
4.2. Sammenkædning af applikationer
Når du genererer Nios V-processorprojektet, genererer BSP Editor to linkerrelaterede files: · linker.x: Linker-kommandoen file som den genererede applikation laverfile bruger
for at oprette .elf-binærfilen file. · linker.h: Indeholder oplysninger om linkerhukommelsens layout. Alle ændringer af linkerindstillinger, du foretager i BSP-projektet, påvirker indholdet af disse to linkere. files. Hver Nios V-processorapplikation indeholder følgende linkersektioner:
© Altera Corporation. Altera, Altera-logoet, `a'-logoet og andre Altera-mærker er varemærker tilhørende Altera Corporation. Altera forbeholder sig retten til at foretage ændringer i produkter og tjenester når som helst uden varsel. Altera påtager sig intet ansvar som følge af anvendelsen af ​​oplysninger, produkter eller tjenester beskrevet heri, medmindre det udtrykkeligt er skriftligt aftalt med Altera. Alteras kunder rådes til at indhente den seneste version af enhedsspecifikationerne, før de stoler på offentliggjorte oplysninger og før de afgiver ordrer på produkter eller tjenester. *Andre navne og mærker kan gøres gældende som andres ejendom.

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Tabel 29. Linker-sektioner

.tekst

Linker-sektioner

.rodata

.rwdata

.bss

.bunke

.stak

Beskrivelser Eksekverbar kode. Alle skrivebeskyttede data, der bruges i udførelsen af ​​programmet. Gemmer læse- og skrivedata, der bruges i udførelsen af ​​programmet. Indeholder ikke-initialiserede statiske data. Indeholder dynamisk allokeret hukommelse. Gemmer funktionskaldsparametre og andre midlertidige data.

Du kan tilføje yderligere linkersektioner til .elf file til at indeholde brugerdefineret kode og data. Disse linkersektioner er placeret i navngivne hukommelsesområder, der er defineret til at korrespondere med fysiske hukommelsesenheder og adresser. Som standard genererer BSP Editor automatisk disse linkersektioner. Du kan dog styre linkersektionerne for en bestemt applikation.

4.2.1. Linkningsadfærd
Dette afsnit beskriver standard linkadfærden i BSP Editor og hvordan du styrer linkadfærden.

4.2.1.1. Standard BSP-tilknytning
Under BSP-konfigurationen udfører værktøjerne følgende trin automatisk:
1. Tildel navne på hukommelsesregioner: Tildel et navn til hver systemhukommelsesenhed, og tilføj hvert navn til linkeren. file som et hukommelsesområde.
2. Find den største hukommelse: Identificer det største læse-og-skrive-hukommelsesområde i linkeren file.
3. Tildel linkersektioner: Placer standardlinkersektionerne (.text, .rodata, .rwdata, .bss, .heap og .stack) i det hukommelsesområde, der blev identificeret i det forrige trin.
4. Skrive files: Skriv linker.x og linker.h files.
Typisk fungerer linkersektionsallokeringsskemaet under softwareudviklingsprocessen, fordi applikationen garanteres at fungere, hvis hukommelsen er stor nok.
Reglerne for standard linkadfærd findes i de Altera-genererede Tcl-scripts bsp-set-defaults.tcl og bsp-linker-utils.tcl, der findes i Mappen /niosv/scripts/bsp-defaults. Kommandoen niosv-bsp kalder disse scripts. Du må ikke ændre disse scripts direkte.

Nios® V Håndbog til design af indlejrede processorer 48

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

4.2.1.2. Konfigurerbar BSP-tilknytning
Du kan administrere standard linkadfærden i fanen Linker Script i BSP Editor. Manipuler linker scriptet ved hjælp af følgende metoder: · Tilføj et hukommelsesområde: Knytter et hukommelsesområdenavn til en fysisk hukommelsesenhed. · Tilføj en sektionskortlægning: Knytter et sektionsnavn til et hukommelsesområde. BSP
Editoren giver dig mulighed for at view hukommelseskortet før og efter ændringer.

4.3. Opstartsmetoder for Nios V-processor

Der er et par metoder til at starte Nios V-processoren i Altera FPGA-enheder. Metoderne til at starte Nios V-processoren varierer afhængigt af valget af flashhukommelse og enhedsfamilier.

Tabel 30. Understøttede flashhukommelser med respektive opstartsmuligheder

Understøttede boothukommelser

Enhed

On-chip flash (til intern konfiguration)

Maks. 10 enheder (med On-Chip Flash IP)

QSPI Flash til generel brug (kun til brugerdata)

Alle understøttede FPGA-enheder (med generisk seriel flash-grænseflade FPGA IP)

Konfiguration QSPI Flash (til aktiv seriel konfiguration)

Kontrolblokbaseret
enheder (med generisk
Seriel flash-grænseflade Intel FPGA IP)(2)

Nios V-processorens opstartsmetoder

Placering af applikationskørsel

Boot kopimaskine

Nios V-processorapplikation udføres på stedet fra On-Chip Flash

On-Chip Flash (XIP) + OCRAM/ekstern RAM (til skrivbare dataafsnit)

alt_load()-funktionen

Nios V-processorapplikation kopieret fra On-Chip Flash til RAM ved hjælp af boot-kopimaskine

OCRAM/Ekstern RAM

Genbrug af bootloader via GSFI

Nios V-processorapplikation, der udføres på stedet fra generel QSPI-flash

Universal QSPI flash (XIP) + OCRAM/ekstern RAM (til skrivbare dataafsnit)

alt_load()-funktionen

Nios V-processorapplikation kopieret fra generel QSPI-flash til RAM ved hjælp af boot-kopimaskine

OCRAM/Ekstern RAM

Bootloader via GSFI

Nios V-processorapplikation udføres på stedet fra konfiguration QSPI-flash

Konfiguration QSPI flash (XIP) + OCRAM/ Ekstern RAM (til skrivbare dataafsnit)

alt_load()-funktionen

Nios V-processorapplikation kopieret fra konfigurations-QSPI-flash til RAM ved hjælp af boot-kopimaskine

OCRAM/ Ekstern RAM Bootloader via GSFI fortsat…

(2) Se AN 980: Nios V Processor Quartus Prime Software Support for en enhedsliste.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 49

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Understøttede boothukommelser
On-chip-hukommelse (OCRAM) Tæt koblet hukommelse (TCM)

Enhed
SDM-baserede enheder (med Mailbox Client Intel FPGA IP). (2)
Alle understøttede Altera FPGA-enheder (2)
Alle understøttede Altera FPGA-enheder (2)

Nios V-processorens opstartsmetoder
Nios V-processorapplikation kopieret fra konfigurations-QSPI-flash til RAM ved hjælp af boot-kopimaskine
Nios V-processorapplikation udføres på stedet fra OCRAM
Nios V-processorapplikation køres på stedet fra TCM

Placering af applikationskørsel

Boot kopimaskine

OCRAM/ Ekstern RAM-bootloader via SDM

OCRAM

alt_load()-funktionen

Instruktion TCM (XIP) Ingen + Data TCM (for skrivbare dataafsnit)

Figur 28. Nios V-processorens opstartsproces

Nulstil

Processoren hopper til nulstillingsvektor (start af bootkode)

Programkode kan kopieres til en anden hukommelsesplacering (afhængigt af opstartsindstillinger)
Bootkode initialiserer processoren

Afhængigt af opstartsindstillingerne kan opstartskoden kopiere startværdier for data/kode til et andet hukommelsesområde (alt_load)
Bootkode initialiserer applikationskoden og datahukommelsespladsen
Bootkode initialiserer alle systemets periferiudstyr med HAL-drivere (alt_main)
Adgang til hovedindgangen
Relateret information · Generisk seriel flash-grænseflade Altera FPGA IP brugervejledning
Nios® V Håndbog til design af indlejrede processorer 50

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16
· Brugervejledning til postkasseklient Altera FPGA IP · AN 980: Nios V-processor Quartus Prime-softwaresupport
4.4. Introduktion til Nios V-processorens opstartsmetoder
Nios V-processorsystemer kræver, at softwarebillederne konfigureres i systemhukommelsen, før processoren kan begynde at udføre applikationsprogrammet. Se Linker-afsnittene for standardlinker-afsnittene.
BSP Editor genererer et linkerscript, der udfører følgende funktioner: · Sikrer, at processorsoftwaren er linket i overensstemmelse med linkerindstillingerne
af BSP-editoren og bestemmer, hvor softwaren befinder sig i hukommelsen. · Placerer processorens kodeområde i hukommelseskomponenten i henhold til
tildelte hukommelseskomponenter.
Det følgende afsnit beskriver kort de tilgængelige opstartsmetoder for Nios V-processoren.
4.4.1. Nios V-processorapplikation, der køres på stedet fra boot flash
Altera designede flash-controllerne således, at boot flash-adresserummet er øjeblikkeligt tilgængeligt for Nios V-processoren ved systemnulstilling, uden behov for at initialisere hukommelsescontrolleren eller hukommelsesenhederne. Dette gør det muligt for Nios V-processoren at udføre applikationskode, der er gemt på boot-enhederne, direkte uden at bruge en boot-kopimaskine til at kopiere koden til en anden hukommelsestype. Flash-controllerne er: · On-Chip Flash med On-Chip Flash IP (kun i MAX® 10-enhed) · Universal QSPI flash med Generic Serial Flash Interface IP · Konfiguration QSPI flash med Generic Serial Flash Interface IP (undtagen MAX 10
enheder)
Når Nios V-processorapplikationen udføres på stedet fra boot flash, udfører BSP Editor følgende funktioner: · Indstiller .text-linkersektionerne til boot flash-hukommelsesregionen. · Indstiller .bss-, .rodata-, .rwdata-, .stack- og .heap-linkersektionerne til RAM'en.
hukommelsesområde. Du skal aktivere funktionen alt_load() i BSP-indstillingerne for at kopiere dataafsnittene (.rodata, .rwdata, .exceptions) til RAM'en efter systemnulstilling. Kodeafsnittet (.text) forbliver i boot flash-hukommelsesområdet.
Relateret information · Generisk seriel flash-grænseflade Altera FPGA IP brugervejledning · Altera MAX 10 brugervejledning til flashhukommelse
4.4.1.1. alt_load()
Du kan aktivere alt_load()-funktionen i HAL-koden ved hjælp af BSP-editoren.
Når alt_load()-funktionen bruges i execute-in-place-opstartsprocessen, udfører den følgende opgaver:

Send feedback

Nios® V Håndbog til design af indlejrede processorer 51

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

· Fungerer som en mini boot-kopimaskine, der kopierer hukommelsessektionerne til RAM baseret på BSP-indstillingerne.
· Kopierer dataafsnit (.rodata, .rwdata, .exceptions) til RAM, men ikke kodeafsnittene (.text). Kodeafsnittet (.text) er et skrivebeskyttet afsnit og forbliver i opstartsområdet for flashhukommelsen. Denne partitionering hjælper med at minimere RAM-forbruget, men kan begrænse kodeudførelsens ydeevne, fordi adgang til flashhukommelse er langsommere end adgang til den indbyggede RAM.

Følgende tabel viser BSP Editor-indstillinger og -funktioner:

Tabel 31. BSP-editorindstillinger
BSP Editor-indstilling 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

Funktion Aktiverer alt_load() funktionen. alt_load() kopierer .rodata sektionen til RAM. alt_load() kopierer .rwdata sektionen til RAM. alt_load() kopierer .exceptions sektionen til RAM.

4.4.2. Nios V-processorapplikation kopieret fra bootflash til RAM ved hjælp af bootcopier
Nios V-processoren og HAL inkluderer en boot-kopimaskine, der giver tilstrækkelig funktionalitet til de fleste Nios V-processorapplikationer og er nem at implementere med Nios V-softwareudviklingsflowet.
Når applikationen bruger en boot-kopimaskine, sætter den alle linkersektioner (.text, .heap, .rwdata, .rodata, .bss, .stack) til en intern eller ekstern RAM. Brug af boot-kopimaskinen til at kopiere en Nios V-processorapplikation fra boot-flashen til den interne eller eksterne RAM til udførelse hjælper med at forbedre udførelsesydelsen.
Med denne opstartsmulighed begynder Nios V-processoren at udføre opstartskopieringssoftwaren ved systemnulstilling. Softwaren kopierer applikationen fra opstartsflashen til den interne eller eksterne RAM. Når processen er fuldført, overfører Nios V-processoren programkontrollen til applikationen.

Note:

Hvis boot-kopiprogrammet er i flash, behøver alt_load()-funktionen ikke at blive kaldt, da de begge tjener samme formål.

4.4.2.1. Nios V-processor bootloader via generisk seriel flash-grænseflade
Bootloader via GSFI er Nios V-processorens boot-kopimaskine, der understøtter QSPI-flashhukommelse i kontrolblokbaserede enheder. Bootloader via GSFI inkluderer følgende funktioner:
· Finder softwareapplikationen i den ikke-flygtige hukommelse.
· Udpakker og kopierer softwareapplikationsbilledet til RAM.
· Skifter automatisk processorudførelse til applikationskode i RAM, når kopieringen er fuldført.

Nios® V Håndbog til design af indlejrede processorer 52

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Boot-aftrykket er placeret lige efter boot-kopimaskinen. Du skal sikre dig, at Nios V-processorens nulstillingsforskydning peger på starten af ​​boot-kopimaskinen. Figuren: Hukommelseskort til QSPI Flash med bootloader via GSFI hukommelseskort til QSPI Flash med bootloader via GSFI viser flashhukommelseskortet for QSPI flash, når der bruges en boot-kopimaskine. Dette hukommelseskort antager, at flashhukommelsen lagrer FPGA-aftrykket og applikationssoftwaren.

Tabel 32. Bootloader via GSFI til Nios V-processorkerne

Nios V-processorkerne
Nios V/m-processor

Bootloader via GSFI File Beliggenhed
/niosv/komponenter/bootloader/ niosv_m_bootloader.srec

Nios V/g-processor

/niosv/komponenter/bootloader/ niosv_g_bootloader.srec

Figur 29. Hukommelseskort til QSPI Flash med bootloader via GSFI

Kundedata (*.hex)

Ansøgningskode

Note:

Nulstil vektorforskydning

Boot kopimaskine

0x01E00000

FPGA-billede (*.sof)

0x00000000

1. I starten af ​​hukommelseskortet er FPGA-billedet efterfulgt af dine data, som består af boot-kopimaskine og applikationskode.
2. Du skal indstille Nios V-processorens nulstillingsforskydning i Platform Designer og pege den mod starten af ​​boot-kopimaskinen.
3. Størrelsen på FPGA-billedet er ukendt. Du kan først kende den nøjagtige størrelse efter Quartus Prime-projektets kompilering. Du skal bestemme en øvre grænse for størrelsen på Altera FPGA-billedet. For eksempelampHvis størrelsen af ​​FPGA-billedet anslås at være mindre end 0x01E00000, skal du indstille Nulstil-offset til 0x01E00000 i Platform Designer, hvilket også er starten på boot-kopimaskinen.
4. God designpraksis består i at indstille nulstillingsvektorforskydningen ved en flashsektorgrænse for at sikre, at der ikke sker delvis sletning af FPGA-billedet, hvis softwareapplikationen opdateres.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 53

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

4.4.2.2. Bootloader til Nios V-processor via Secure Device Manager
Bootloaderen via Secure Device Manager (SDM) er en HAL-applikationskode, der bruger Mailbox Client Altera FPGA IP HAL-driveren til processoropstart. Altera anbefaler denne bootloader-applikation, når konfigurations-QSPI-flashen bruges i SDM-baserede enheder til at starte Nios V-processoren.
Ved systemnulstilling starter Nios V-processoren først bootloaderen via SDM fra en lille indbygget hukommelse og udfører bootloaderen via SDM for at kommunikere med konfigurations-QSPI-flashen ved hjælp af postkasseklientens IP-adresse.
Bootloaderen via SDM udfører følgende opgaver: · Finder Nios V-softwaren i konfigurations-QSPI-flashen. · Kopierer Nios V-softwaren til on-chip RAM eller ekstern RAM. · Skifter processorens udførelse til Nios V-softwaren i on-chip RAM eller
ekstern RAM.
Når processen er færdig, overfører bootloaderen via SDM programkontrollen til brugerapplikationen. Altera anbefaler hukommelsesorganiseringen som beskrevet i Hukommelsesorganisering for bootloader via SDM.
Figur 30. Bootloader via SDM-procesflow

Konfiguration

Blitz

2

Nios V-software

SDM

SDM-baseret FPGA-enhed

Mailbox-klient-IP

FPGA Logic Nios V

4 Ekstern RAM
Nios V-software

On-Chip 4

EMIF

VÆDDER

On-Chip Hukommelse

IP

Nios V

1

Software

Bootloader via SDM

3

3

1. Nios V-processoren kører bootloaderen via SDM fra den indbyggede hukommelse.
2. Bootloader via SDM kommunikerer med konfigurationsflashen og finder Nios V-softwaren.
3. Bootloader via SDM kopierer Nios V-softwaren fra konfigurationsflashen til on-chip RAM / ekstern RAM.
4. Bootloader via SDM skifter Nios V-processorens udførelse til Nios V-softwaren i den indbyggede RAM / eksterne RAM.

4.4.3. Nios V-processorapplikation, der udføres på stedet fra OCRAM
I denne metode sættes Nios V-processorens nulstillingsadresse til basisadressen for den indbyggede hukommelse (OCRAM). Applikationens binære kode (.hex) file indlæses i OCRAM, når FPGA'en er konfigureret, efter at hardwaredesignet er kompileret i Quartus Prime-softwaren. Når Nios V-processoren nulstilles, begynder applikationen at køre og forgrener sig til indgangspunktet.

Nios® V Håndbog til design af indlejrede processorer 54

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Note:

· Execute-In-Place fra OCRAM kræver ikke boot-kopimaskine, fordi Nios V-processorapplikationen allerede er installeret ved systemnulstilling.
· Altera anbefaler at aktivere alt_load() for denne opstartsmetode, så den integrerede software opfører sig identisk ved nulstilling uden at omkonfigurere FPGA-enhedsbilledet.
· Du skal aktivere funktionen alt_load() i BSP-indstillingerne for at kopiere .rwdata-sektionen ved systemnulstilling. I denne metode gemmes startværdierne for initialiserede variabler separat fra de tilsvarende variabler for at undgå overskrivning ved programkørsel.

4.4.4. Nios V-processorapplikation, der udføres på stedet fra TCM
Metoden execute-in-place sætter Nios V-processorens nulstillingsadresse til basisadressen for den tæt koblede hukommelse (TCM). Applikationens binære fil (.hex) file indlæses i TCM'en, når du konfigurerer FPGA'en, efter du har kompileret hardwaredesignet i Quartus Prime-softwaren. Når Nios V-processoren nulstilles, begynder applikationen at køre og forgrener sig til indgangspunktet.

Note:

Execute-In-Place fra TCM kræver ikke boot-kopimaskine, fordi Nios V-processorapplikationen allerede er installeret ved systemnulstilling.

4.5. Opstart af Nios V-processor fra On-Chip Flash (UFM)

Nios V-processorens opstart og udførelse af software fra on-chip flash (UFM) er tilgængelig i MAX 10 FPGA-enheder. Nios V-processoren understøtter følgende to opstartsmuligheder ved hjælp af On-Chip Flash under intern konfigurationstilstand:
· Nios V-processorapplikationen udføres in-place fra On-Chip Flash.
· Nios V-processorapplikationen kopieres fra On-Chip Flash til RAM ved hjælp af boot-kopimaskinen.

Tabel 33. Understøttede flashhukommelser med respektive opstartsmuligheder

Understøttede boothukommelser

Nios V opstartsmetoder

Placering af applikationskørsel

Boot kopimaskine

Maks. 10 enheder (med OnChip Flash IP)

Nios V-processorapplikation udføres på stedet fra On-Chip Flash
Nios V-processorapplikation kopieret fra On-Chip Flash til RAM ved hjælp af boot-kopimaskine

On-Chip Flash (XIP) + OCRAM/ekstern RAM (til skrivbare dataafsnit)

alt_load()-funktionen

OCRAM/ Ekstern RAM

Genbrug af bootloader via GSFI

Send feedback

Nios® V Håndbog til design af indlejrede processorer 55

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Figur 31.

Design, konfiguration og opstartsproces
Design · Opret dit Nios V-processorbaserede projekt ved hjælp af Platform Designer. · Sørg for, at der er ekstern RAM eller on-chip RAM i systemdesignet.

FPGA-konfiguration og kompilering
· Indstil den samme interne konfigurationstilstand i On-chip Flash IP i Platform Designer og Quartus Prime-softwaren. · Indstil Nios V-processorens nulstillingsagent til On-chip Flash. · Vælg din foretrukne UFM-initialiseringsmetode. · Generer dit design i Platform Designer. · Kompiler dit projekt i Quartus Prime-softwaren.

Brugerapplikation BSP-projekt · Opret Nios V-processor HAL BSP baseret på .sopcinfo file Oprettet af Platform Designer. · Rediger Nios V-processor BSP-indstillinger og Linker Script i BSP Editor. · Generer BSP-projekt.
Brugerapplikations-APP-projekt · Udvikle Nios V-processorapplikationskode. · Kompilere Nios V-processorapplikation og generere Nios V-processorapplikation (.hex) file· Kompilér dit projekt igen i Quartus Prime-softwaren, hvis du markerer indstillingen Initialiser hukommelsesindhold i Intel FPGA On-Chip Flash IP.

Programmering Files Konvertering, download og kørsel · Generer On-Chip Flash .pof file ved hjælp af Convert-programmering Files-funktion i Quartus Prime-softwaren.
· Programmér .pof-filen file ind i din MAX 10-enhed. · Sluk og tænd for din hardware.
4.5.1. Beskrivelse af MAX 10 FPGA On-Chip Flash
MAX 10 FPGA-enheder indeholder on-chip flash, der er opdelt i to dele: · Konfigurationsflashhukommelse (CFM) — lagrer hardwarekonfigurationsdataene for
MAKS. 10 FPGA'er. · Brugerflashhukommelse (UFM) — gemmer brugerdata eller softwareapplikationer.
UFM-arkitekturen i MAX 10-enheden er en kombination af bløde og hårde IP-adresser. Du kan kun få adgang til UFM'en ved hjælp af On-Chip Flash IP Core i Quartus Prime-softwaren.
On-chip Flash IP-kernen understøtter følgende funktioner: · Læse- eller skriveadgang til UFM- og CFM-sektorer (hvis aktiveret i Platform Designer)
ved hjælp af Avalon MM data- og kontrolslavegrænsefladen. · Understøtter sidesletning, sektorsletning og sektorskrivning. · Simuleringsmodel til UFM læse-/skriveadgang ved hjælp af forskellige EDA-simuleringsværktøjer.

Nios® V Håndbog til design af indlejrede processorer 56

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Tabel 34. On-chip flash-regioner i MAX 10 FPGA-enheder

Flash-regioner

Funktionalitet

Konfiguration af flashhukommelse (sektorer CFM0-2)

FPGA-konfiguration file opbevaring

Brugerflashhukommelse (sektorer UFM0-1)

Nios V-processorapplikation og brugerdata

MAX 10 FPGA-enheder understøtter adskillige konfigurationstilstande, og nogle af disse tilstande tillader brug af CFM1 og CFM2 som et ekstra UFM-område. Følgende tabel viser lagringsplaceringen af ​​FPGA-konfigurationsbillederne baseret på MAX 10 FPGA'ens konfigurationstilstande.

Tabel 35. Lagringsplacering af FPGA-konfigurationsbilleder

Konfigurationstilstand Dobbeltkomprimerede billeder

CFM2 Komprimeret Billede 2

CFM1

CFM0 Komprimeret Billede 1

Enkelt ukomprimeret billede

Virtuel UFM

Ukomprimeret billede

Enkelt ukomprimeret billede med hukommelsesinitialisering

Ukomprimeret billede (med præinitialiseret indhold af on-chip-hukommelse)

Enkelt komprimeret billede med hukommelsesinitialisering Komprimeret billede (med præinitialiseret indhold af on-chip-hukommelsen)

Enkelt komprimeret billede

Virtuel UFM

Komprimeret billede

Du skal bruge On-chip Flash IP-kernen for at få adgang til flashhukommelsen i MAX 10 FPGA'er. Du kan instantiere og forbinde On-chip Flash IP'en til Quartus Prime-softwaren. Nios V soft core-processoren bruger Platform Designer-forbindelserne til at kommunikere med On-chip Flash IP'en.
Figur 32. Forbindelse mellem On-chip Flash IP og Nios V-processor

Note:

Sørg for, at den indbyggede Flash CSR-port er tilsluttet Nios V-processorens data_manager, så processoren kan styre skrive- og sletteoperationer.
Den indbyggede Flash IP-kerne kan give adgang til fem flash-sektorer – UFM0, UFM1, CFM0, CFM1 og CFM2.
Vigtig information om UFM- og CFM-sektorerne: · CFM-sektorer er beregnet til lagring af konfigurationsdata (bitstream) (*.pof).
· Brugerdata kan gemmes i UFM-sektorerne og kan skjules, hvis de korrekte indstillinger er valgt i Platform Designer-værktøjet.
· Visse enheder har ikke en UFM1-sektor. Du kan se tabellen: UFM- og CFM-sektorstørrelse for tilgængelige sektorer i hver enkelt MAX 10 FPGA-enhed.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 57

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

· Du kan konfigurere CFM2 som en virtuel UFM ved at vælge konfigurationstilstanden Enkelt ukomprimeret billede.
· Du kan konfigurere CFM2 og CFM1 som en virtuel UFM ved at vælge konfigurationstilstanden Enkelt ukomprimeret billede.
· Størrelsen på hver sektor varierer med de valgte MAX 10 FPGA-enheder.

Tabel 36.

UFM- og CFM-sektorstørrelse
Denne tabel viser dimensionerne af UFM- og CFM-arraysene.

Enhed

Sider pr. sektor

UFM1 UFM0 CFM2 CFM1 CFM0

Sidestørrelse (Kbit)

Maksimal bruger
Flashhukommelsesstørrelse (Kbit) (3)

Samlet konfigurationshukommelsesstørrelse (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

OCRAM-størrelse (Kbit)
108 189 378 549 675 1260 1638

Relateret information · Brugervejledning til MAX 10 FPGA-konfiguration · Brugervejledning til Altera MAX 10 brugerflashhukommelse

4.5.2. Nios V-processorapplikation, der udføres på stedet fra UFM

Løsningen "Execute-In-Place from UFM" er egnet til Nios V-processorapplikationer, der kræver begrænset brug af on-chip-hukommelse. Funktionen alt_load() fungerer som en mini-boot-kopimaskine, der kopierer dataafsnittene (.rodata, .rwdata eller .exceptions) fra boot-hukommelsen til RAM baseret på BSP-indstillingerne. Kodeafsnittet (.text),
som er en skrivebeskyttet sektion, forbliver i MAX 10 On-chip Flash-hukommelsesområdet. Denne opsætning minimerer RAM-forbruget, men kan begrænse kodeudførelsens ydeevne, da adgangen til flashhukommelsen er langsommere end on-chip RAM'en.

Nios V-processorapplikationen er programmeret ind i UFM-sektoren. Nios V-processorens nulstillingsvektor peger på UFM-basisadressen for at udføre kode fra UFM'en, efter systemet nulstilles.

Hvis du bruger kildeniveau-debuggeren til at debugge din applikation, skal du bruge et hardware-breakpoint. Dette skyldes, at UFM'en ikke understøtter tilfældig hukommelsesadgang, hvilket er nødvendigt for blød breakpoint-debugging.

Note:

Du kan ikke slette eller skrive UFM, mens du udfører execute-in-place i MAX 10. Skift til boot-kopimaskinemetoden, hvis du har brug for at slette eller skrive UFM'en.

(3) Den maksimalt mulige værdi, som afhænger af den valgte konfigurationstilstand.

Nios® V Håndbog til design af indlejrede processorer 58

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Figur 33. Nios V-processorapplikation XIP fra UFM

Maks. 10 enheder

.POF
Nios V Hardware .SOF
Nios V-software .HEX

Quartus-programmør

On-chip flash

CFM

Nios V Hardware

UFM

Nios V-software

Intern konfiguration

On-chip Flash IP

FPGA-logik
Nios V-processor

RAM på chippen

Ekstern

VÆDDER

EMIF

IP

4.5.2.1. Hardwaredesignflow
Det følgende afsnit beskriver en trinvis metode til at bygge et bootbart system til en Nios V-processorapplikation fra On-Chip Flash.ampBilledet nedenfor er bygget med en MAX 10-enhed.
IP-komponentindstillinger
1. Opret dit Nios V-processorprojekt ved hjælp af Quartus Prime og Platform Designer. 2. Sørg for, at ekstern RAM eller On-Chip-hukommelse (OCRAM) er tilføjet til din platform.
Designersystem.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 59

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16
Figur 34. EksampIP-forbindelser i Platform Designer til opstart af Nios V fra OnChip Flash (UFM)

3. I On-Chip Flash IP-parametereditoren skal du indstille konfigurationstilstanden til en af ​​følgende, i henhold til dine designpræferencer: · Enkelt ukomprimeret billede · Enkelt komprimeret billede · Enkelt ukomprimeret billede med hukommelsesinitialisering · Enkelt komprimeret billede med hukommelsesinitialisering
For yderligere oplysninger om dobbeltkomprimerede billeder henvises til brugervejledningen til MAX 10 FPGA-konfiguration – Fjernsystemopgradering.

Note:

Du skal tildele skjult adgang til alle CFM-regioner i On-Chip Flash IP'en.

Figur 35. Valg af konfigurationstilstand i On-Chip Flash Parameter Editor

Indstillinger for On-Chip Flash IP – UFM-initialisering Du kan vælge en af ​​følgende metoder efter behov:

Nios® V Håndbog til design af indlejrede processorer 60

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

Note:

Trinene i de efterfølgende underkapitler (Softwaredesignflow og programmering) afhænger af det valg, du foretager her.

· Metode 1: Initialiser UFM-dataene i SOF'en under kompilering
Quartus Prime inkluderer UFM-initialiseringsdataene i SOF'en under kompilering. SOF-rekompilering er nødvendig, hvis der er ændringer i UFM-dataene.
1. Markér Initialiser flash-indhold og Aktiver ikke-standard initialisering file.

Figur 36. Initialiser Flash-indhold og aktivér ikke-standard initialisering File

2. Angiv stien til den genererede .hex file (fra elf2hex-kommandoen) i den brugeroprettede hex- eller mif-fil file.
Figur 37. Tilføjelse af .hex File Sti

· Metode 2: Kombinér UFM-data med en kompileret SOF under POF-generering
UFM-data kombineres med den kompilerede SOF ved konvertering af programmering files. Du behøver ikke at rekompilere SOF'en, selvom UFM-dataene ændres. Under udvikling behøver du ikke at rekompilere SOF'en. files for ændringer i applikationen. Altere anbefaler denne metode til applikationsudviklere.
1. Fjern markeringen i Initialiser flash-indhold.
Figur 38. Initialiser Flash-indhold med ikke-standard initialisering File

Nulstil agentindstillinger for Nios V-processorens Execute-In-Place-metode
1. I Nios V-processorens parametereditor skal du indstille Reset Agent til On-Chip Flash.
Figur 39. Indstillinger for Nios V-processorparametereditor med nulstillingsagent indstillet til On-Chip Flash

2. Klik på Generer HDL, når dialogboksen Generering vises. 3. Angiv output file genereringsindstillinger, og klik på Generer.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 61

4. Nios V-processorkonfiguration og opstartsløsninger 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. Klik på OK for at lukke vinduet Enheds- og pinkodeindstillinger.
3. Klik på OK for at afslutte vinduet Enhed.
4. Click Processing Start Compilation to compile your project and generate the .sof file.

Note:

Hvis indstillingen for konfigurationstilstand i Quartus Prime-softwaren og parametereditoren i Platform Designer er forskellig, mislykkes Quartus Prime-projektet med følgende fejlmeddelelse.

Figur 41.

Fejlmeddelelse for indstilling af forskellig konfigurationstilstand (14740): Konfigurationstilstanden på atom “q_sys:q_sys_inst| altera_onchip_flash:onchip_flash_1|altera_onchip_flash_block: altera_onchip_flash_block|ufm_block” stemmer ikke overens med projektindstillingen. Opdater og regenerer Qsys-systemet, så det matcher projektindstillingen.

Relateret information Brugervejledning til MAX 10 FPGA-konfiguration

4.5.2.2. Softwaredesignflow
Dette afsnit beskriver designprocessen til at generere og bygge Nios V-processor-softwareprojektet. For at sikre et strømlinet byggeproces opfordres du til at oprette et lignende mappetræ i dit designprojekt. Følgende softwaredesignproces er baseret på dette mappetræ.
Sådan opretter du træet til softwareprojektmappen: 1. Opret en mappe kaldet software i din designprojektmappe. 2. Opret to mapper kaldet hal_app og hal_bsp i softwaremappen.
Figur 42. Træ til softwareprojektmappe

Nios® V Håndbog til design af indlejrede processorer 62

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16
Oprettelse af applikations-BSP-projektet
Sådan starter du BSP Editor: 1. Åbn Nios V Command Shell. 2. Start BSP Editor med kommandoen niosv-bsp-editor. 3. Klik på i BSP Editor. File Ny BSP for at starte dit BSP-projekt. 4. Konfigurer følgende indstillinger:
· SOPC-oplysninger File navn: Angiv SOPCINFO file (.sopcinfo). · CPU-navn: Vælg Nios V-processor. · Operativsystem: Vælg operativsystemet til Nios V-processoren. · Version: Lad være som standard. · BSP-målmappe: Vælg stien til BSP-projektet. Du kan
forudindstil den til /software/hal_bsp ved at aktivere Brug standardplaceringer. · BSP-indstillinger File navn: Indtast navnet på BSP-indstillingerne 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:

Send feedback

Nios® V Håndbog til design af indlejrede processorer 63

4. Nios V-processorkonfiguration og opstartsløsninger 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.

Nios® V Håndbog til design af indlejrede processorer 64

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 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.

Send feedback

Nios® V Håndbog til design af indlejrede processorer 65

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16
4.5.2.3. Programming 1. In Quartus Prime, click File Konverter programmering 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 Indstillinger
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

Nios® V Håndbog til design af indlejrede processorer 66

Send feedback

4. Nios V-processorkonfiguration og opstartsløsninger 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 omdannelse.
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.

Note:

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

Send feedback

Nios® V Håndbog til design af indlejrede processorer 67

4. Nios V-processorkonfiguration og opstartsløsninger 726952 | 2025.07.16

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

Maks. 10 enheder

.POF
Nios V Hardware .SOF
Nios V-software .HEX
Bootloader .SREC

Quartus-programmør

Ekstern RAM
Nios V-software

On-chip flash

CFM

Nios V Hardwa

Dokumenter/ressourcer

altera Nios V Embedded Processor [pdfBrugervejledning
Nios V, Nios V-m, Nios V-g, Nios V-c, Nios V Embedded Processor, Nios V, Embedded Processor, Processor

Referencer

Efterlad en kommentar

Din e-mailadresse vil ikke blive offentliggjort. Påkrævede felter er markeret *