Altera Nios V Embedded Processor
Specyfikacje
- Nazwa produktu: Procesor Nios V
- Software Compatibility: Quartus Prime Software and Platform Designer
- Typ procesora: Altera FPGA
- System pamięci: pamięć ulotna i nieulotna
- Interfejs komunikacyjny: Agent UART
Nios V Processor Hardware System Design
To design the Nios V Processor hardware system, follow these steps:
- Create Nios V Processor system design using Platform Designer.
- Zintegruj system z projektem Quartus Prime.
- Design memory system including volatile and non-volatile memory.
- Wdrażaj najlepsze praktyki dotyczące zegarów i resetowania.
- Przypisz agentów domyślnych i UART w celu zapewnienia wydajnej pracy.
Nios V Processor Software System Design
Aby zaprojektować system oprogramowania dla procesora Nios V:
- Postępuj zgodnie z przepływem rozwoju oprogramowania dla procesora Nios V.
- Create Board Support Package Project and Application Project.
Nios V Processor Configuration and Booting Solutions
Aby skonfigurować i uruchomić procesor Nios V:
- Understand the introduction to configuration and booting solutions.
- Połącz aplikacje w celu zapewnienia bezproblemowej pracy.
About the Nios® V Embedded Processor
1.1. Altera® FPGA i procesory wbudowaneview
Urządzenia FPGA firmy Altera mogą implementować logikę działającą jak kompletny mikroprocesor, zapewniając jednocześnie wiele opcji.
Istotną różnicą między dyskretnymi mikroprocesorami a układami FPGA Altera jest to, że struktura FPGA Altera nie zawiera żadnej logiki po włączeniu zasilania. Procesor Nios® V to procesor z miękką własnością intelektualną (IP) oparty na specyfikacji RISC-V. Przed uruchomieniem oprogramowania w systemie opartym na procesorze Nios V należy skonfigurować układ FPGA Altera z projektem sprzętowym zawierającym procesor Nios V. Procesor Nios V można umieścić w dowolnym miejscu układu FPGA Altera, w zależności od wymagań projektu.
Aby Twój system wbudowany Altera® FPGA oparty na protokole IP mógł zachowywać się jak system oparty na dyskretnym mikroprocesorze, Twój system powinien zawierać następujące elementy: · AJTAG interfejs do obsługi konfiguracji, sprzętu i oprogramowania Altera FPGA
debugowanie · Mechanizm konfiguracji FPGA Altera po włączeniu zasilania
Jeśli Twój system posiada takie możliwości, możesz rozpocząć udoskonalanie projektu, korzystając z wstępnie przetestowanego projektu sprzętowego załadowanego do układu FPGA Altera. Korzystanie z układu FPGA Altera pozwala również na szybką modyfikację projektu w celu rozwiązania problemów lub dodania nowych funkcjonalności. Możesz łatwo przetestować te nowe projekty sprzętowe, rekonfigurując układ FPGA Altera za pomocą interfejsu J w systemie.TAG interfejs.
JTAG Interfejs obsługuje rozwój sprzętu i oprogramowania. Za pomocą interfejsu J można wykonywać następujące zadania.TAG interfejs: · Konfiguracja układu FPGA Altera · Pobieranie i debugowanie oprogramowania · Komunikacja z układem FPGA Altera za pomocą interfejsu podobnego do UART (JTAG UART
terminal) · Debugowanie sprzętu (za pomocą wbudowanego analizatora logicznego Signal Tap) · Programowanie pamięci flash
Po skonfigurowaniu układu FPGA Altera z projektem opartym na procesorze Nios V, przepływ tworzenia oprogramowania jest podobny do przepływu w przypadku projektów dyskretnych mikrokontrolerów.
Powiązane informacje · AN 985: Samouczek dotyczący procesora Nios V
Krótki przewodnik po tworzeniu prostego systemu z procesorem Nios V i uruchamianiu aplikacji Hello World.
© Altera Corporation. Altera, logo Altera, logo `a' i inne znaki Altera są znakami towarowymi Altera Corporation. Altera zastrzega sobie prawo do wprowadzania zmian w produktach i usługach w dowolnym momencie i bez powiadomienia. Altera nie ponosi żadnej odpowiedzialności wynikającej z zastosowania lub wykorzystania jakichkolwiek informacji, produktów lub usług opisanych w niniejszym dokumencie, z wyjątkiem przypadków wyraźnie uzgodnionych na piśmie z Altera. Klientom Altera zaleca się zapoznanie się z najnowszą wersją specyfikacji urządzenia przed wykorzystaniem jakichkolwiek opublikowanych informacji oraz przed złożeniem zamówienia na produkty lub usługi. *Inne nazwy i marki mogą być własnością osób trzecich.
1. Informacje o procesorze Nios® V Embedded 726952 | 2025.07.16
· Podręcznik referencyjny procesora Nios V Zawiera informacje na temat testów wydajności procesora Nios V, architektury procesora, modelu programowania i implementacji rdzenia.
· Podręcznik użytkownika urządzeń peryferyjnych IP · Podręcznik programisty oprogramowania procesora Nios V
Opisuje środowisko programistyczne procesora Nios V, dostępne narzędzia i proces tworzenia oprogramowania do działania na procesorze Nios V. · Ashling* RiscFree* Integrated Development Environment (IDE) dla Altera FPGA User Guide Opisuje zintegrowane środowisko programistyczne (IDE) RiscFree* dla Altera FPGA HPS opartych na architekturze Arm* oraz procesora Nios V z rdzeniem. · Nios V Processor Altera FPGA IP Release Notes
1.2. Wsparcie oprogramowania Quartus® Prime
Proces kompilacji procesora Nios V różni się w przypadku oprogramowania Quartus® Prime Pro Edition i Quartus Prime Standard Edition. Więcej informacji na temat różnic można znaleźć w dokumencie AN 980: Wsparcie techniczne oprogramowania Quartus Prime dla procesora Nios V.
Informacje powiązane AN 980: Procesor Nios V Wsparcie oprogramowania Quartus Prime
1.3. Licencjonowanie procesora Nios V
Każdy wariant procesora Nios V ma swój własny klucz licencyjny. Po jego uzyskaniu możesz używać tego samego klucza licencyjnego dla wszystkich projektów procesora Nios V do daty wygaśnięcia. Licencje IP Altera FPGA dla procesora Nios V można nabyć bezpłatnie.
Lista kluczy licencyjnych procesora Nios V jest dostępna w Centrum Samoobsługowego Licencjonowania FPGA Altera. Kliknij kartę „Zapisz się na wersję ewaluacyjną” lub „Bezpłatna licencja” i wybierz odpowiednie opcje, aby złożyć wniosek.
Rysunek 1. Centrum samoobsługowej licencji FPGA Altera
Za pomocą kluczy licencyjnych możesz:
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 7
1. Informacje o procesorze Nios® V Embedded 726952 | 2025.07.16
· Zaimplementuj procesor Nios V w swoim systemie. · Symuluj zachowanie systemu z procesorem Nios V. · Zweryfikuj funkcjonalność projektu, np. rozmiar i szybkość. · Generuj programy urządzeń files. · Zaprogramuj urządzenie i zweryfikuj projekt sprzętowo.
Do tworzenia oprogramowania w środowisku programistycznym Ashling* RiscFree* dla układów FPGA firmy Altera nie jest wymagana licencja.
Informacje powiązane · Centrum samoobsługowego licencjonowania układów FPGA firmy Altera
Aby uzyskać więcej informacji na temat uzyskania kluczy licencyjnych Altera FPGA IP dla procesora Nios V. · Instalacja i licencjonowanie oprogramowania Altera FPGA Aby uzyskać więcej informacji na temat licencjonowania oprogramowania Altera FPGA oraz konfiguracji stałego serwera licencji i licencji sieciowych.
1.4 Projektowanie systemów wbudowanych
Poniższy rysunek ilustruje uproszczony schemat projektowania systemu opartego na procesorze Nios V, obejmujący zarówno rozwój sprzętu, jak i oprogramowania.
Podręcznik projektowania procesorów wbudowanych Nios® V 8
Wyślij opinię
1. Informacje o procesorze Nios® V Embedded 726952 | 2025.07.16
Rysunek 2.
Przepływ projektowania systemu procesora Nios V
Koncepcja systemu
Analiza wymagań systemowych
Nios® V
Rdzenie procesora i standardowe komponenty
Zdefiniuj i wygeneruj system w
Projektant platformy
Przepływ sprzętu: integracja i kompilacja projektu Intel Quartus Prime
Przepływ oprogramowania: Opracowanie i zbudowanie oprogramowania do propozycji Nios V
Przepływ sprzętowy: Pobierz projekt FPGA
do tablicy docelowej
Przepływ oprogramowania: testowanie i debugowanie oprogramowania procesora Nios V
Oprogramowanie nie spełnia specyfikacji?
Tak
Sprzęt nie spełnia specyfikacji? Tak
System zakończony
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 9
726952 | 2025.07.16 Prześlij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
Rysunek 3.
Poniższy diagram ilustruje typowy projekt sprzętowy procesora Nios V. Schemat projektowania sprzętu w systemie procesora Nios V
Start
Rdzenie Nios V i standardowe komponenty
Użyj Platform Designer do zaprojektowania systemu opartego na Nios V
Generuj projekt projektanta platformy
Zintegruj system Platform Designer z projektem Intel Quartus Prime
Przypisz lokalizacje pinów, wymagania czasowe i inne ograniczenia projektowe
Kompilacja sprzętu dla urządzenia docelowego w Intel Quartus Prime
Gotowe do pobrania
2.1. Tworzenie projektu systemu procesora Nios V za pomocą Platform Designer
Oprogramowanie Quartus Prime zawiera narzędzie do integracji systemów Platform Designer, które upraszcza definiowanie i integrację rdzenia IP procesora Nios V oraz innych IP w projekcie systemu FPGA Altera. Platform Designer automatycznie tworzy logikę połączeń na podstawie określonej łączności wysokiego poziomu. Automatyzacja połączeń eliminuje czasochłonne zadanie określania połączeń HDL na poziomie systemu.
© Altera Corporation. Altera, logo Altera, logo `a' i inne znaki Altera są znakami towarowymi Altera Corporation. Altera zastrzega sobie prawo do wprowadzania zmian w produktach i usługach w dowolnym momencie i bez powiadomienia. Altera nie ponosi żadnej odpowiedzialności wynikającej z zastosowania lub wykorzystania jakichkolwiek informacji, produktów lub usług opisanych w niniejszym dokumencie, z wyjątkiem przypadków wyraźnie uzgodnionych na piśmie z Altera. Klientom Altera zaleca się zapoznanie się z najnowszą wersją specyfikacji urządzenia przed wykorzystaniem jakichkolwiek opublikowanych informacji oraz przed złożeniem zamówienia na produkty lub usługi. *Inne nazwy i marki mogą być własnością osób trzecich.
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Po przeanalizowaniu wymagań sprzętowych systemu, za pomocą Quartus Prime określasz rdzeń procesora Nios V, pamięć i inne komponenty wymagane przez system. Projektant platformy automatycznie generuje logikę połączeń, aby zintegrować komponenty w systemie sprzętowym.
2.1.1. Utworzenie instancji procesora Nios V w układzie FPGA Altera IP
You can instantiate any of the processor IP cores in Platform Designer IP Catalog Processors and Peripherals Embedded Processors.
Rdzeń IP każdego procesora obsługuje różne opcje konfiguracji w oparciu o jego unikalną architekturę. Możesz zdefiniować te konfiguracje, aby lepiej dopasować je do swoich potrzeb projektowych.
Tabela 1.
Opcje konfiguracji w różnych wariantach rdzeniowych
Opcje konfiguracji
Procesor Nios V/c
Procesor Nios V/m
Debugowanie Użyj żądania resetowania
—
Pułapki, wyjątki i przerwania
Architektura procesora
ECC
Pamięci podręczne, regiony peryferyjne i TCM-y
—
—
Instrukcje niestandardowe
—
—
Krok w krok
—
—
Procesor Nios V/g
2.1.1.1. Instancjonowanie kompaktowego mikrokontrolera Nios V/c Altera FPGA IP Rysunek 4. Kompaktowy mikrokontroler Nios V/c Altera FPGA IP
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 11
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
2.1.1.1.1. Karta Architektura procesora
Tabela 2.
Karta Architektura procesora
Funkcja
Opis
Włącz interfejs Avalon® Włącza interfejs Avalon dla menedżera instrukcji i menedżera danych. Po wyłączeniu tej opcji system korzysta z interfejsu AXI4-Lite.
wartość CSR mhartid
· Nieprawidłowa opcja IP. · Nie używaj wartości mhartid CSR w procesorze Nios V/c.
2.1.1.1.2. Użyj zakładki Żądanie resetowania
Tabela 3.
Użyj parametru zakładki „Żądanie resetowania”
Użyj zakładki „Żądanie resetowania”
Opis
Dodaj interfejs żądania resetowania
· Włącz tę opcję, aby udostępnić lokalne porty resetowania, za pomocą których lokalny kontroler główny może wywołać reset procesora Nios V bez wpływu na inne komponenty w systemie procesora Nios V.
Interfejs resetowania składa się z sygnału wejściowego resetreq i sygnału wyjściowego ACK.
· Możesz zażądać resetu rdzenia procesora Nios V, wysyłając sygnał resetreq.
· Sygnał resetreq musi pozostać aktywny, dopóki procesor nie wyśle sygnału potwierdzenia. Brak sygnału może spowodować, że procesor znajdzie się w stanie niedeterministycznym.
Procesor Nios V odpowiada, że reset zakończył się powodzeniem, wysyłając sygnał potwierdzenia.
· Po pomyślnym zresetowaniu procesora potwierdzenie sygnału potwierdzenia może następować wielokrotnie, aż do momentu cofnięcia potwierdzenia sygnału resetreq.
2.1.1.1.3. Karta Pułapki, wyjątki i przerwania
Tabela 4.
Parametry karty Pułapki, wyjątki i przerwania
Pułapki, wyjątki i przerwania
Opis
Zresetuj agenta
· Pamięć zawierająca wektor resetu (adres resetu procesora Nios V), w której znajduje się kod resetu.
· Jako agenta resetowania można wybrać dowolny moduł pamięci podłączony do głównego modułu instrukcji procesora Nios V i obsługiwany przez przepływ rozruchu procesora Nios V.
Resetuj przesunięcie
· Określa przesunięcie wektora resetowania względem adresu bazowego wybranego agenta resetowania. · Platform Designer automatycznie zapewnia domyślną wartość przesunięcia resetowania.
Notatka:
Projektant Platformy udostępnia opcję Absolute, która pozwala określić adres absolutny w polu Reset Offset. Użyj tej opcji, gdy pamięć przechowująca wektor resetu znajduje się poza systemem procesora i podsystemami.
Podręcznik projektowania procesorów wbudowanych Nios® V 12
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
2.1.1.1.4. Karta ECC
Tabela 5.
Karta ECC
ECC
Włącz wykrywanie błędów i raportowanie stanu
Opis
· Włącz tę opcję, aby zastosować funkcję ECC dla wewnętrznych bloków pamięci RAM procesora Nios V. · Funkcje ECC wykrywają błędy do 2 bitów i reagują na podstawie następującego zachowania:
— Jeśli jest to błąd 1-bitowy, który można naprawić, procesor kontynuuje działanie po skorygowaniu błędu w potoku procesora. Jednakże korekta nie jest uwzględniana w pamięciach źródłowych.
— Jeśli błąd jest niemożliwy do naprawienia, procesor kontynuuje działanie bez jego skorygowania w potoku procesora i pamięciach źródłowych, co może spowodować przejście procesora w stan niedeterministyczny.
2.1.1.2. Instancjonowanie mikrokontrolera Nios V/m Altera FPGA IP Rysunek 5. Mikrokontroler Nios V/m Altera FPGA IP
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 13
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
2.1.1.2.1. Karta debugowania
Tabela 6.
Parametry zakładki Debugowanie
Karta debugowania
Opis
Włącz debugowanie
Włącz resetowanie z modułu debugowania
· Włącz tę opcję, aby dodać JTAG moduł połączenia docelowego z procesorem Nios V. · Moduł JTAG moduł połączenia docelowego umożliwia połączenie z procesorem Nios V poprzez
JTAG piny interfejsu FPGA. · Połączenie zapewnia następujące podstawowe możliwości:
— Uruchom i zatrzymaj procesor Nios V — Sprawdź i edytuj rejestry i pamięć. — Pobierz aplikację Nios V .elf file do pamięci procesora w czasie wykonywania za pośrednictwem
niosv-download. — Debugowanie aplikacji działającej na procesorze Nios V · Podłącz port dm_agent do magistrali instrukcji i danych procesora. Upewnij się, że adres bazowy obu magistral jest taki sam.
· Włącz tę opcję, aby udostępnić porty dbg_reset_out i ndm_reset_in. · JTAG polecenie debuggera lub niosv-download -r powoduje uruchomienie dbg_reset_out, które
Umożliwia procesorowi Nios V resetowanie urządzeń peryferyjnych systemu podłączonych do tego portu. · Należy połączyć interfejs dbg_reset_out z ndm_reset_in zamiast reset
Interfejs do resetowania rdzenia procesora i modułu timera. Nie wolno łączyć interfejsu dbg_reset_out z interfejsem resetowania, aby zapobiec nieokreślonemu zachowaniu.
2.1.1.2.2. Użyj zakładki Żądanie resetowania
Tabela 7.
Użyj parametru zakładki „Żądanie resetowania”
Użyj zakładki „Żądanie resetowania”
Opis
Dodaj interfejs żądania resetowania
· Włącz tę opcję, aby udostępnić lokalne porty resetowania, za pomocą których lokalny kontroler główny może wywołać reset procesora Nios V bez wpływu na inne komponenty w systemie procesora Nios V.
Interfejs resetowania składa się z sygnału wejściowego resetreq i sygnału wyjściowego ACK.
· Możesz zażądać resetu rdzenia procesora Nios V, wysyłając sygnał resetreq.
· Sygnał resetreq musi pozostać aktywny, dopóki procesor nie wyśle sygnału potwierdzenia. Brak sygnału może spowodować, że procesor znajdzie się w stanie niedeterministycznym.
· Potwierdzenie sygnału resetreq w trybie debugowania nie ma wpływu na stan procesora.
Procesor Nios V odpowiada, że reset zakończył się powodzeniem, wysyłając sygnał potwierdzenia.
· Po pomyślnym zresetowaniu procesora potwierdzenie sygnału potwierdzenia może następować wielokrotnie, aż do momentu cofnięcia potwierdzenia sygnału resetreq.
2.1.1.2.3. Karta Pułapki, wyjątki i przerwania
Tabela 8.
Karta Pułapki, wyjątki i przerwania
Karta Pułapki, wyjątki i przerwania
Opis
Zresetuj agenta
· Pamięć zawierająca wektor resetu (adres resetu procesora Nios V), w której znajduje się kod resetu.
· Jako agenta resetowania można wybrać dowolny moduł pamięci podłączony do głównego modułu instrukcji procesora Nios V i obsługiwany przez przepływ rozruchu procesora Nios V.
Resetowanie trybu przerwania przesunięcia
· Określa przesunięcie wektora resetowania względem adresu bazowego wybranego agenta resetowania. · Platform Designer automatycznie zapewnia domyślną wartość przesunięcia resetowania.
Określ typ kontrolera przerwań: bezpośredni lub wektorowy. Uwaga: Procesor Nios V/m bez potoku nie obsługuje przerwań wektorowych.
Dlatego należy unikać korzystania z trybu przerwania wektorowego, gdy procesor działa w trybie niepotokowym.
Podręcznik projektowania procesorów wbudowanych Nios® V 14
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Notatka:
Projektant Platformy udostępnia opcję Absolute, która pozwala określić adres absolutny w polu Reset Offset. Użyj tej opcji, gdy pamięć przechowująca wektor resetu znajduje się poza systemem procesora i podsystemami.
2.1.1.2.4. Architektura procesora
Tabela 9.
Parametry zakładki Architektura procesora
Architektura procesora
Opis
Włącz przetwarzanie potokowe w procesorze
· Włącz tę opcję, aby utworzyć instancję procesora Nios V/m działającego w trybie potokowym. — IPC jest wyższe kosztem większego obszaru logicznego i niższej częstotliwości Fmax.
· Wyłącz tę opcję, aby utworzyć instancję procesora Nios V/m bez potoku. — Ma podobną wydajność rdzenia jak procesor Nios V/c. — Obsługuje debugowanie i obsługę przerwań — Mniejszy obszar logiczny i wyższa częstotliwość Fmax kosztem niższego IPC.
Włącz interfejs Avalon
Włącza interfejs Avalon dla menedżera instrukcji i menedżera danych. Po wyłączeniu system korzysta z interfejsu AXI4-Lite.
wartość CSR mhartid
· Wartość rejestru HART ID (mhartid) domyślnie wynosi 0. · Przypisz wartość z zakresu od 0 do 4094. · Zgodność z interfejsem API HAL układu Altera FPGA Avalon Mutex Core.
Powiązane informacje Podręcznik użytkownika urządzeń peryferyjnych IP wbudowanych – rdzeń Intel FPGA Avalon® Mutex
2.1.1.2.5. Karta ECC
Tabela 10. Karta ECC
ECC Włącz wykrywanie błędów i raportowanie stanu
Opis
· Włącz tę opcję, aby zastosować funkcję ECC dla wewnętrznych bloków pamięci RAM procesora Nios V. · Funkcje ECC wykrywają błędy do 2 bitów i reagują na podstawie następującego zachowania:
— Jeśli jest to błąd 1-bitowy, który można naprawić, procesor kontynuuje działanie po skorygowaniu błędu w potoku procesora. Jednakże korekta nie jest uwzględniana w pamięciach źródłowych.
— Jeśli błąd jest niemożliwy do naprawienia, procesor kontynuuje działanie bez jego skorygowania w potoku procesora i pamięciach źródłowych, co może spowodować przejście procesora w stan niedeterministyczny.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 15
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
2.1.1.3. Instancjonowanie procesora ogólnego przeznaczenia Nios V/g Altera FPGA IP
Rysunek 6. Procesor ogólnego przeznaczenia Nios V/g Altera FPGA IP – część 1
Rysunek 7.
Procesor ogólnego przeznaczenia Nios V/g Altera FPGA IP – część 2 (wyłączanie i włączanie kontrolera przerwań na poziomie rdzenia)
Podręcznik projektowania procesorów wbudowanych Nios® V 16
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Rysunek 8.
Procesor ogólnego przeznaczenia Nios V/g Altera FPGA IP – część 2 (włącz kontroler przerwań na poziomie rdzenia)
Rysunek 9. Procesor ogólnego przeznaczenia Nios V/g Altera FPGA IP – część 3
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 17
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Rysunek 10. Procesor ogólnego przeznaczenia Nios V/g Altera FPGA IP – część 4
2.1.1.3.1. Architektura procesora
Tabela 11. Parametry architektury procesora
Karta Architektura procesora Włącz jednostkę zmiennoprzecinkową
Opis Włącz tę opcję, aby dodać jednostkę zmiennoprzecinkową (rozszerzenie „F”) w rdzeniu procesora.
Włącz przewidywanie gałęzi
Włącz statyczną predykcję rozgałęzień (Backward Taken i Forward Not Taken) dla instrukcji rozgałęzień.
wartość CSR mhartid
· Wartość rejestru HART ID (mhartid) domyślnie wynosi 0. · Przypisz wartość z zakresu od 0 do 4094. · Zgodność z interfejsem API HAL układu Altera FPGA Avalon Mutex Core.
Wyłącz instrukcje FSQRT i FDIV dla FPU
· Usuń operacje pierwiastka kwadratowego zmiennoprzecinkowego (FSQRT) i dzielenia zmiennoprzecinkowego (FDIV) w FPU.
· Zastosuj emulację programową do obu instrukcji w czasie wykonywania.
Powiązane informacje Podręcznik użytkownika urządzeń peryferyjnych IP wbudowanych – rdzeń Intel FPGA Avalon® Mutex
Podręcznik projektowania procesorów wbudowanych Nios® V 18
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
2.1.1.3.2. Karta debugowania
Tabela 12. Parametry zakładki Debugowanie
Karta debugowania
Opis
Włącz debugowanie
Włącz resetowanie z modułu debugowania
· Włącz tę opcję, aby dodać JTAG moduł połączenia docelowego z procesorem Nios V. · Moduł JTAG moduł połączenia docelowego umożliwia połączenie z procesorem Nios V poprzez
JTAG piny interfejsu FPGA. · Połączenie zapewnia następujące podstawowe możliwości:
— Uruchom i zatrzymaj procesor Nios V — Sprawdź i edytuj rejestry i pamięć. — Pobierz aplikację Nios V .elf file do pamięci procesora w czasie wykonywania za pośrednictwem
niosv-download. — Debugowanie aplikacji działającej na procesorze Nios V · Podłącz port dm_agent do magistrali instrukcji i danych procesora. Upewnij się, że adres bazowy obu magistral jest taki sam.
· Włącz tę opcję, aby udostępnić porty dbg_reset_out i ndm_reset_in. · JTAG polecenie debuggera lub niosv-download -r powoduje uruchomienie dbg_reset_out, które
Umożliwia procesorowi Nios V resetowanie urządzeń peryferyjnych systemu podłączonych do tego portu. · Należy połączyć interfejs dbg_reset_out z ndm_reset_in zamiast reset
Interfejs do resetowania rdzenia procesora i modułu timera. Nie wolno łączyć interfejsu dbg_reset_out z interfejsem resetowania, aby zapobiec nieokreślonemu zachowaniu.
2.1.1.3.3. Karta Lockstep Tabela 13. Karta Lockstep
Parametry Włącz domyślny okres limitu czasu blokady Włącz rozszerzony interfejs resetowania
Opis · Włącza dwurdzeniowy system Lockstep. · Domyślna wartość programowalnego limitu czasu przy wyjściu z resetu (od 0 do 255). · Włącza opcjonalny rozszerzony interfejs resetu w celu rozszerzonej kontroli resetu. · Po wyłączeniu fRSmartComp implementuje podstawową kontrolę resetu.
2.1.1.3.4. Użyj zakładki Żądanie resetowania
Tabela 14. Użyj parametru zakładki Żądanie resetowania
Użyj zakładki „Żądanie resetowania”
Opis
Dodaj interfejs żądania resetowania
· Włącz tę opcję, aby udostępnić lokalne porty resetowania, za pomocą których lokalny kontroler główny może wywołać reset procesora Nios V bez wpływu na inne komponenty w systemie procesora Nios V.
Interfejs resetowania składa się z sygnału wejściowego resetreq i sygnału wyjściowego ACK.
· Możesz zażądać resetu rdzenia procesora Nios V, wysyłając sygnał resetreq.
· Sygnał resetreq musi pozostać aktywny, dopóki procesor nie wyśle sygnału potwierdzenia. Brak sygnału może spowodować, że procesor znajdzie się w stanie niedeterministycznym.
· Potwierdzenie sygnału resetreq w trybie debugowania nie ma wpływu na stan procesora.
Procesor Nios V odpowiada, że reset zakończył się powodzeniem, wysyłając sygnał potwierdzenia.
· Po pomyślnym zresetowaniu procesora potwierdzenie sygnału potwierdzenia może następować wielokrotnie, aż do momentu cofnięcia potwierdzenia sygnału resetreq.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 19
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
2.1.1.3.5. Karta Pułapki, wyjątki i przerwania
Tabela 15.
Karta Pułapki, wyjątki i przerwania, gdy opcja Włącz kontroler przerwań na poziomie rdzenia jest wyłączona
Karta Pułapki, wyjątki i przerwania
Zresetuj agenta
Opis
· Pamięć zawierająca wektor resetu (adres resetu procesora Nios V), w której znajduje się kod resetu.
· Jako agenta resetowania można wybrać dowolny moduł pamięci podłączony do głównego modułu instrukcji procesora Nios V i obsługiwany przez przepływ rozruchu procesora Nios V.
Resetuj przesunięcie
· Określa przesunięcie wektora resetowania względem adresu bazowego wybranego agenta resetowania. · Platform Designer automatycznie zapewnia domyślną wartość przesunięcia resetowania.
Włącz kontroler przerwań na poziomie rdzenia (CLIC)
· Włącz CLIC, aby obsługiwać przerwania wyprzedzające i konfigurowalne warunki wyzwalania przerwań.
· Po włączeniu tej opcji możesz skonfigurować liczbę przerwań platformy, ustawić warunki wyzwalania i oznaczyć niektóre przerwania jako wyprzedzające.
Rejestr cienia trybu przerwania Files
Określ typy przerwań jako bezpośrednie lub wektorowe. Włącz rejestr cienia, aby ograniczyć przełączanie kontekstu w przypadku przerwania.
Tabela 16.
Pułapki, wyjątki i przerwania po włączeniu kontrolera przerwań na poziomie rdzenia
Pułapki, wyjątki i przerwania
Opisy
Zresetuj agenta
Resetuj przesunięcie
Włącz kontroler przerwań na poziomie rdzenia (CLIC)
· Pamięć zawierająca wektor resetu (adres resetu procesora Nios V), w której znajduje się kod resetu.
· Jako agenta resetowania można wybrać dowolny moduł pamięci podłączony do głównego modułu instrukcji procesora Nios V i obsługiwany przez przepływ rozruchu procesora Nios V.
· Określa przesunięcie wektora resetowania względem adresu bazowego wybranego agenta resetowania. · Platform Designer automatycznie zapewnia domyślną wartość przesunięcia resetowania.
· Włącz CLIC, aby obsługiwać przerwania wyprzedzające i konfigurowalne warunki wyzwalania przerwań. · Po włączeniu tej opcji możesz skonfigurować liczbę przerwań platformy, ustawić warunki wyzwalania,
i wyznaczyć niektóre przerwania jako wyprzedzające.
Tryb przerwania
· Określ typy przerwań jako bezpośrednie, wektorowe lub CLIC.
Rejestr cieni Files
· Włącz rejestr cienia, aby ograniczyć przełączanie kontekstu w przypadku przerwania.
· Oferuje dwa podejścia:
— Liczba poziomów przerwań CLIC
— Liczba poziomów przerwań CLIC – 1: Ta opcja jest przydatna, gdy chcesz określić liczbę rejestrów file kopii pasujących do dokładnej liczby bloków M20K lub M9K.
· Włącz procesor Nios V, aby mógł korzystać z rejestru cieni filektóre redukują obciążenie związane z przełączaniem kontekstu w przypadku przerwania.
Aby uzyskać więcej informacji na temat rejestru cieni fileWięcej informacji można znaleźć w Podręczniku referencyjnym procesora Nios V.
Liczba źródeł przerwań platformy
· Określa liczbę przerwań platformy od 16 do 2048.
Uwaga: CLIC obsługuje do 2064 wejść przerwań, a pierwszych 16 wejść przerwań jest także podłączonych do podstawowego kontrolera przerwań.
Wyrównanie tabeli wektorów CLIC
· Automatycznie określane na podstawie liczby źródeł przerwań platformy. · Jeśli używasz wyrównania poniżej zalecanej wartości, CLIC zwiększa logikę
złożoność poprzez dodanie dodatkowego sumatora do wykonywania obliczeń wektorowych. · Jeśli użyjesz wyrównania poniżej zalecanej wartości, spowoduje to zwiększenie
złożoność logiczna w CLIC.
dalszy…
Podręcznik projektowania procesorów wbudowanych Nios® V 20
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Pułapki, wyjątki i przerwania
Liczba poziomów przerwań
Liczba priorytetów przerwań na poziom
Konfigurowalna polaryzacja przerwań Obsługa przerwań wyzwalanych zboczem
Opisy
· Określa liczbę poziomów przerwań z dodatkowym poziomem 0 dla kodu aplikacji. Przerwania wyższego poziomu mogą przerwać (wyprzedzić) działający program obsługi przerwań niższego poziomu.
· Przy niezerowych poziomach przerwań jako jedynych opcjach dla przerwań, kod aplikacji zawsze znajduje się na najniższym poziomie 0. Uwaga: Konfiguracja poziomu i priorytetu przerwania w czasie wykonywania odbywa się w jednym 8-bitowym rejestrze. Jeśli liczba poziomów przerwań wynosi 256, nie można skonfigurować priorytetu przerwania w czasie wykonywania. W przeciwnym razie maksymalna liczba konfigurowalnych priorytetów wynosi 256 / (liczba poziomów przerwań – 1).
· Określa liczbę priorytetów przerwań, na podstawie których CLIC ustala kolejność wywoływania procedur obsługi przerwań bez wywłaszczania. Uwaga: Konkatenacja wartości binarnych wybranego poziomu przerwania i wybranego priorytetu przerwania musi być mniejsza niż 8 bitów.
· Umożliwia skonfigurowanie polaryzacji przerwań w czasie wykonywania. · Domyślna polaryzacja jest dodatnia.
· Umożliwia skonfigurowanie warunków wyzwalania przerwania w czasie pracy, np. wyzwolenie wysokim poziomem lub wyzwolenie zboczem narastającym (gdy polaryzacja przerwania jest dodatnia w konfigurowalnej polaryzacji przerwania).
· Domyślnym warunkiem wyzwolenia jest przerwanie wyzwalane poziomem.
Notatka:
Projektant Platformy udostępnia opcję Absolute, która pozwala określić adres absolutny w polu Reset Offset. Użyj tej opcji, gdy pamięć przechowująca wektor resetu znajduje się poza systemem procesora i podsystemami.
Informacje powiązane Podręcznik referencyjny procesora Nios® V
2.1.1.3.6. Karta Konfiguracje pamięci
Tabela 17. Parametry zakładki Konfiguracja pamięci
Kategoria
Karta konfiguracji pamięci
Opis
Skrytki
Rozmiar pamięci podręcznej danych
· Określa rozmiar pamięci podręcznej danych. · Prawidłowe rozmiary mieszczą się w przedziale od 0 kilobajtów (KB) do 16 KB. · Wyłącz pamięć podręczną danych, gdy rozmiar wynosi 0 KB.
Rozmiar pamięci podręcznej instrukcji
· Określa rozmiar pamięci podręcznej instrukcji. · Prawidłowe rozmiary mieszczą się w przedziale od 0 KB do 16 KB. · Wyłącz pamięć podręczną instrukcji, gdy rozmiar wynosi 0 KB.
Obszar peryferyjny A i B
Rozmiar
· Określa rozmiar regionu peryferyjnego.
· Prawidłowe rozmiary to od 64 KB do 2 gigabajtów (GB) lub „Brak”. Wybranie opcji „Brak” wyłącza region peryferyjny.
Adres bazowy
· Określa adres bazowy regionu peryferyjnego po wybraniu rozmiaru.
· Wszystkie adresy w obszarze peryferyjnym powodują niemożliwy do buforowania dostęp do danych.
· Adres bazowy regionu peryferyjnego musi być dopasowany do rozmiaru regionu peryferyjnego.
Ściśle powiązane wspomnienia
Rozmiar
· Określa rozmiar ściśle powiązanej pamięci. — Prawidłowe rozmiary mieszczą się w przedziale od 0 MB do 512 MB.
Inicjalizacja adresu bazowego File
· Określa adres bazowy ściśle powiązanej pamięci. · Określa inicjalizację file dla ściśle sprzężonej pamięci.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 21
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Notatka:
W systemie z procesorem Nios V z włączoną pamięcią podręczną, urządzenia peryferyjne należy umieścić w regionie peryferyjnym. Regiony peryferyjne umożliwiają zdefiniowanie transakcji niebuforowanych dla urządzeń peryferyjnych, takich jak UART, PIO, DMA i innych.
2.1.1.3.7. Karta ECC
Tabela 18. Karta ECC
ECC Włącz wykrywanie błędów i raportowanie stanu
Włącz korekcję pojedynczego bitu
Opis
· Włącz tę opcję, aby zastosować funkcję ECC dla wewnętrznych bloków pamięci RAM procesora Nios V. · Funkcje ECC wykrywają błędy do 2 bitów i reagują na podstawie następującego zachowania:
— Jeśli błąd pojedynczego bitu jest korygowalny, a opcja „Enable Single Bit Correction” jest wyłączona, procesor kontynuuje działanie po skorygowaniu błędu w potoku procesora. Jednakże korekta nie jest uwzględniana w pamięciach źródłowych.
— Jeżeli jest to błąd pojedynczego bitu, który można naprawić, a opcja Włącz korekcję pojedynczego bitu jest włączona, procesor kontynuuje działanie po naprawieniu błędu w potoku procesora i pamięciach źródłowych.
— Jeżeli jest to błąd niemożliwy do naprawienia, procesor zatrzymuje działanie.
Włącza korekcję pojedynczych bitów w blokach pamięci osadzonych w rdzeniu.
2.1.1.3.8. Karta Instrukcji niestandardowych
Notatka:
Ta zakładka jest dostępna tylko dla rdzenia procesora Nios V/g.
Instrukcja niestandardowa Nios V Tabela interfejsu sprzętowego instrukcji niestandardowych
Tabela makr oprogramowania do instrukcji niestandardowych Nios V
Opis
Procesor Nios V używa tej tabeli do definiowania niestandardowych interfejsów menedżera instrukcji.
· Zdefiniowane niestandardowe interfejsy menedżera instrukcji są jednoznacznie kodowane za pomocą kodu operacji (CUSTOM0-3) i 3 bitów funkcji funct7[6:4].
· Można zdefiniować łącznie maksymalnie 32 indywidualne, niestandardowe interfejsy menedżera instrukcji.
Procesor Nios V używa tej tabeli do definiowania niestandardowych kodowań oprogramowania instrukcji dla zdefiniowanych niestandardowych interfejsów menedżera instrukcji.
· Dla każdego zdefiniowanego niestandardowego kodowania oprogramowania instrukcji, kod operacji (CUSTOM0-3) i 3 bity kodowania funct7[6:4] muszą odpowiadać zdefiniowanemu niestandardowemu kodowaniu interfejsu menedżera instrukcji w tabeli niestandardowego interfejsu sprzętowego instrukcji.
· Za pomocą funct7[6:4], funct7[3:0] i funct3[2:0] można zdefiniować dodatkowe kodowanie dla danej instrukcji niestandardowej lub określić je jako argumenty X, które mają zostać przekazane jako dodatkowe argumenty instrukcji.
Procesor Nios V dostarcza zdefiniowane, niestandardowe kodowania oprogramowania instrukcji w postaci makr języka C generowanych w pliku system.h i stosuje format instrukcji RISC-V typu R.
· Mnemoniki można stosować w celu definiowania niestandardowych nazw dla: — wygenerowanych makr C w systemie.h.
— Wygenerowane mnemoniki debugowania GDB w pliku custom_instruction_debug.xml.
Informacje powiązane
AN 977: Instrukcje niestandardowe procesora Nios V Więcej informacji na temat instrukcji niestandardowych, które umożliwiają dostosowanie procesora Nios® V do potrzeb konkretnego zastosowania.
Podręcznik projektowania procesorów wbudowanych Nios® V 22
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
2.1.2. Definiowanie projektu komponentów systemu
Użyj Projektanta Platformy, aby zdefiniować parametry sprzętowe systemu procesorowego Nios V i dodać wymagane komponenty. Poniższy diagram przedstawia podstawowy projekt systemu procesorowego Nios V z następującymi komponentami: · Rdzeń procesora Nios V · Pamięć wbudowana w układ · JTAG UART · Timer interwałowy (opcjonalnie)(1)
Po dodaniu nowej pamięci On-Chip do systemu Platform Designer, należy wykonać synchronizację informacji systemowych, aby odzwierciedlić dodane komponenty pamięci po zresetowaniu. Alternatywnie, można włączyć automatyczną synchronizację w Platform Designer, aby automatycznie odzwierciedlić najnowsze zmiany w komponentach.
Rysunek 11. Examppołączenie procesora Nios V z innymi urządzeniami peryferyjnymi w Platform Designer
(1) Masz możliwość wykorzystania funkcji wewnętrznego timera Nios V w celu zastąpienia zewnętrznego timera interwałowego w Projektancie Platformy.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 23
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Musisz również zdefiniować piny operacji do wyeksportowania jako conduit w systemie Platform Designer. Na przykładampnp. prawidłowa lista pinów operacyjnych układu FPGA jest zdefiniowana w sposób następujący, ale nie ograniczający się do:
· Zegar
· Resetowanie
· Sygnały wejścia/wyjścia
2.1.3. Określanie adresów bazowych i priorytetów żądań przerwań
Aby określić, w jaki sposób komponenty dodane w projekcie oddziałują na siebie, tworząc system, należy przypisać adresy bazowe każdemu komponentowi agenta i przypisać priorytety żądań przerwania (IRQ) dla komponentu JTAG UART i timer interwałowy. Projektant platformy udostępnia polecenie „Przypisz adresy bazowe”, które automatycznie przypisuje odpowiednie adresy bazowe wszystkim komponentom w systemie. Można jednak dostosować adresy bazowe do własnych potrzeb.
Poniżej przedstawiono kilka wskazówek dotyczących przydzielania adresów bazowych:
· Rdzeń procesora Nios V ma 32-bitowy zakres adresów. Aby uzyskać dostęp do komponentów agenta, ich adres bazowy musi mieścić się w zakresie od 0x00000000 do 0xFFFFFFFF.
· Programy Nios V używają stałych symbolicznych do odwoływania się do adresów. Nie musisz wybierać łatwych do zapamiętania wartości adresów.
· Wartości adresów, które różnicują komponenty tylko jednym bitem, generują bardziej wydajny sprzęt. Nie trzeba kompresować wszystkich adresów bazowych do najmniejszego możliwego zakresu adresów, ponieważ kompresja może prowadzić do zmniejszenia wydajności sprzętu.
· Projektant platformy nie próbuje wyrównywać oddzielnych komponentów pamięci w ciągłym zakresie pamięci. Na przykładamptzn. jeśli chcesz, aby wiele komponentów pamięci On-Chip było adresowalnych jako jeden ciągły zakres pamięci, musisz jawnie przypisać adresy bazowe.
Platform Designer udostępnia również polecenie automatyzacji – Assign Interrupt Numbers, które łączy sygnały IRQ, aby uzyskać prawidłowe wyniki sprzętowe. Jednak efektywne przypisywanie IRQ wymaga zrozumienia ogólnego zachowania systemu. Platform Designer nie jest w stanie trafnie określić najlepszego przydziału IRQ.
Najniższa wartość IRQ ma najwyższy priorytet. W idealnym systemie Altera zaleca, aby komponent timera miał najwyższy priorytet IRQ, tj. najniższą wartość, aby zachować dokładność taktu zegara systemowego.
W niektórych przypadkach można nadać wyższy priorytet urządzeniom peryferyjnym czasu rzeczywistego (np. kontrolerom wideo), które wymagają większej częstotliwości przerwań niż komponenty timera.
Informacje powiązane
Podręcznik użytkownika Quartus Prime Pro Edition: Więcej informacji o tworzeniu systemu za pomocą Platform Designer.
Podręcznik projektowania procesorów wbudowanych Nios® V 24
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
2.2. Integracja systemu Platform Designer z projektem Quartus Prime
Po wygenerowaniu projektu systemu Nios V w Projektancie Platformy wykonaj następujące zadania, aby zintegrować moduł systemu Nios V z projektem układu FPGA Quartus Prime. · Utwórz instancję modułu systemu Nios V w projekcie Quartus Prime · Połącz sygnały z modułu systemu Nios V z innymi sygnałami w logice FPGA · Przypisz lokalizację pinów fizycznych · Ogranicz projekt FPGA
2.2.1. Utworzenie modułu systemu procesora Nios V w projekcie Quartus Prime
Platform Designer generuje encję projektu modułu systemu, którą można utworzyć w Quartus Prime. Sposób utworzenia instancji modułu systemu zależy od metody wprowadzania projektu dla całego projektu Quartus Prime. Na przykładampJeśli korzystałeś z Verilog HDL do wprowadzania projektu, utwórz instancję modułu systemowego opartego na Verilogu. Jeśli wolisz korzystać z metody diagramu blokowego do wprowadzania projektu, utwórz instancję symbolu modułu systemowego .bdf. file.
2.2.2. Podłączanie sygnałów i przypisywanie fizycznych lokalizacji pinów
Aby połączyć projekt FPGA firmy Altera z projektem na poziomie płytki, należy wykonać następujące zadania: · Zidentyfikuj interfejs najwyższego poziomu file do Twojego projektu i sygnałów do podłączenia do zewnętrznej Altery
Piny urządzenia FPGA. · Dowiedz się, które piny należy podłączyć, korzystając z podręcznika użytkownika projektu płytki lub
schematy. · Przypisz sygnały w projekcie najwyższego poziomu do portów na urządzeniu FPGA Altera za pomocą pinów
narzędzia do przydzielania zadań.
Twój system Platform Designer może być projektem najwyższego poziomu. Jednak układ FPGA Altera może również zawierać dodatkową logikę, dostosowaną do Twoich potrzeb, wprowadzając w ten sposób niestandardowy system najwyższego poziomu. file. Najwyższy poziom file łączy sygnały modułu systemu procesora Nios V z pozostałą logiką układu FPGA firmy Altera.
Informacje powiązane Podręcznik użytkownika Quartus Prime Pro Edition: Ograniczenia projektowe
2.2.3. Ograniczanie projektu FPGA Altera
Prawidłowy projekt systemu FPGA Altera obejmuje ograniczenia projektowe, które zapewniają spełnienie wymagań dotyczących domknięcia czasowego i innych ograniczeń logicznych. Należy wyraźnie ograniczyć projekt FPGA Altera, aby spełnić te wymagania, korzystając z narzędzi dostępnych w oprogramowaniu Quartus Prime lub zewnętrznych dostawców EDA. Oprogramowanie Quartus Prime wykorzystuje wprowadzone ograniczenia podczas kompilacji, aby uzyskać optymalne rezultaty rozmieszczenia.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 25
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Powiązane informacje · Podręcznik użytkownika Quartus Prime Pro Edition: Ograniczenia projektowe · Partnerzy EDA zewnętrzni · Podręcznik użytkownika Quartus Prime Pro Edition: Analizator czasu
2.3. Projektowanie systemu pamięci procesora Nios V
W tej sekcji opisano najlepsze praktyki doboru urządzeń pamięci w systemie wbudowanym Platform Designer z procesorem Nios V oraz osiągania optymalnej wydajności. Urządzenia pamięci odgrywają kluczową rolę w poprawie ogólnej wydajności systemu wbudowanego. Pamięć systemu wbudowanego przechowuje instrukcje programu i dane.
2.3.1. Pamięć ulotna
Podstawową różnicą między typami pamięci jest jej ulotność. Pamięć ulotna przechowuje swoją zawartość tylko wtedy, gdy urządzenie pamięci jest zasilane. Po odłączeniu zasilania pamięć traci swoją zawartość.
ExampPamięć ulotna to pamięć RAM, pamięć podręczna i rejestry. Są to szybkie typy pamięci, które zwiększają wydajność. Altera zaleca ładowanie i wykonywanie instrukcji procesora Nios V w pamięci RAM oraz połączenie rdzenia IP Nios V z pamięcią IP na chipie lub interfejsem IP pamięci zewnętrznej w celu uzyskania optymalnej wydajności.
Aby poprawić wydajność, można wyeliminować dodatkowe komponenty adaptacyjne Platform Designer, dopasowując typ lub szerokość interfejsu menedżera danych procesora Nios V do pamięci RAM rozruchowej. Na przykładampnp. możesz skonfigurować pamięć On-Chip Memory II z 32-bitowym interfejsem AXI-4, który jest zgodny z interfejsem menedżera danych Nios V.
Powiązane informacje · Centrum pomocy technicznej IP dla interfejsów pamięci zewnętrznej · Pamięć na chipie (RAM lub ROM) Altera FPGA IP · Pamięć na chipie II (RAM lub ROM) Altera FPGA IP · Aplikacja procesora Nios V Wykonywanie na miejscu z pamięci OCRAM na stronie 54
2.3.1.1. Konfiguracja pamięci na chipie RAM lub ROM
Możesz skonfigurować pamięci Altera FPGA On-Chip IP jako pamięć RAM lub ROM. · Pamięć RAM umożliwia odczyt i zapis oraz ma charakter ulotny. Jeśli…
Uruchamiając procesor Nios V z pamięci RAM na chipie, należy upewnić się, że zawartość bootowania zostanie zachowana i nie ulegnie uszkodzeniu w przypadku resetu w trakcie działania systemu. · Jeśli procesor Nios V uruchamia się z pamięci ROM, żaden błąd oprogramowania w procesorze Nios V nie może omyłkowo nadpisać zawartości pamięci na chipie. Zmniejsza to ryzyko uszkodzenia oprogramowania bootującego.
Informacje powiązane · Pamięć na chipie (RAM lub ROM) Altera FPGA IP · Pamięć na chipie II (RAM lub ROM) Altera FPGA IP · Aplikacja procesora Nios V Wykonywanie na miejscu z OCRAM na stronie 54
Podręcznik projektowania procesorów wbudowanych Nios® V 26
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
2.3.1.2. Pamięci podręczne
Pamięci na chipie są powszechnie stosowane do implementacji funkcjonalności pamięci podręcznej ze względu na ich niskie opóźnienie. Procesor Nios V wykorzystuje pamięć na chipie do przechowywania instrukcji i danych. Ograniczona pojemność pamięci na chipie zazwyczaj nie stanowi problemu w przypadku pamięci podręcznych, ponieważ są one zazwyczaj niewielkie.
Pamięci podręczne są powszechnie używane w następujących warunkach:
· Standardowa pamięć znajduje się poza układem scalonym i ma dłuższy czas dostępu niż pamięć na układzie scalonym.
· Sekcje kodu oprogramowania mające krytyczne znaczenie dla wydajności mogą zmieścić się w pamięci podręcznej instrukcji, co poprawia wydajność systemu.
· Krytyczna dla wydajności, najczęściej używana sekcja danych może zmieścić się w pamięci podręcznej danych, co poprawia wydajność systemu.
Włączenie pamięci podręcznej w procesorze Nios V powoduje utworzenie hierarchii pamięci, która minimalizuje czas dostępu do pamięci.
2.3.1.2.1. Obszar peryferyjny
Żadnego wbudowanego adresu IP urządzeń peryferyjnych, takiego jak UART, I2C i SPI, nie wolno buforować. Pamięć podręczna jest wysoce zalecana w przypadku pamięci zewnętrznych, na które ma wpływ długi czas dostępu, podczas gdy wewnętrzne pamięci na chipie mogą być wykluczone ze względu na ich krótki czas dostępu. Nie wolno buforować żadnych wbudowanych adresów IP urządzeń peryferyjnych, takich jak UART, I2C i SPI, z wyjątkiem pamięci. Jest to ważne, ponieważ zdarzenia z urządzeń zewnętrznych, takich jak urządzenia agentów aktualizujące programowe adresy IP, nie są przechwytywane przez pamięć podręczną procesora, a tym samym nie są odbierane przez procesor. W rezultacie zdarzenia te mogą pozostać niezauważone do momentu opróżnienia pamięci podręcznej, co może prowadzić do niezamierzonego zachowania systemu. Podsumowując, obszar mapowany w pamięci wbudowanych adresów IP urządzeń peryferyjnych nie nadaje się do buforowania i musi znajdować się w obszarach peryferyjnych procesora.
Aby ustawić region peryferyjny, wykonaj następujące kroki:
1. Otwórz mapę adresów systemu w Projektancie platformy.
2. Przejdź do mapy adresów Menedżera instrukcji i Menedżera danych procesora.
3. Zidentyfikuj urządzenia peryferyjne i pamięci w swoim systemie.
Rysunek 12. Exampmapa adresów
Uwaga: Niebieskie strzałki wskazują na pamięci. 4. Pogrupuj urządzenia peryferyjne:
a. Pamięć jako pamięć podręczna b. Urządzenia peryferyjne jako niepodlegające pamięci podręcznej
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 27
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Tabela 19. Regiony buforowalne i niebuforowalne
Podrzędny
Mapa adresów
Status
Region peryferyjny
Rozmiar
Adres bazowy
aplikacja_użytkownika_mem.s1
0x0 ~ 0x3ffff
Możliwość buforowania
Brak
Brak
cpu.dm_agent bootcopier_rom.s1
0x40000 ~ 0x4ffff 0x50000 ~ 0x517ff
Niemożliwy do buforowania
65536 bajtów N/A
0x40000 Nie dotyczy
bootcopier_ram.s1 cpu.timer_sw_agent mailbox.avmm
0x52000 ~ 0x537ff 0x54000 ~ 0x5403f 0x54040 ~ 0x5407f
Można buforować Nie można buforować Nie można buforować
144 bajty (minimalny rozmiar to 65536 bajtów)
0x54000
sysid_qsys_0.control_slave
0x54080 ~ 0x54087
Niemożliwy do buforowania
uart.avalon_jtag_niewolnik
0x54088 ~ 0x5408f
Niemożliwy do buforowania
5. Dopasuj obszary peryferyjne do ich konkretnych rozmiarów:
· Dla exampNp. jeśli rozmiar wynosi 65536 bajtów, odpowiada to 0x10000 bajtów. Zatem dozwolony adres bazowy musi być wielokrotnością 0x10000.
· CPU.dm_agent używa adresu bazowego 0x40000, który jest wielokrotnością 0x10000. W rezultacie Region Peryferyjny A o rozmiarze 65536 bajtów i adresie bazowym 0x40000 spełnia wymagania.
· Adres bazowy zbioru niebuforowanych regionów pod adresem 0x54000 nie jest wielokrotnością 0x10000. Należy je ponownie przypisać do adresu 0x60000 lub innej wielokrotności 0x10000. Zatem region peryferyjny B o rozmiarze 65536 bajtów i adresie bazowym 0x60000 spełnia kryteria.
Tabela 20. Regiony buforowalne i niebuforowalne z ponownym przypisaniem
Podrzędny
Mapa adresów
Status
Region peryferyjny
Rozmiar
Adres bazowy
aplikacja_użytkownika_mem.s1
0x0 ~ 0x3ffff
Możliwość buforowania
Brak
Brak
procesor.dm_agent
0x40000 ~ 0x4ffff
Niemożliwe do buforowania 65536 bajtów
0x40000
bootcopier_rom.s1
0x50000 ~ 0x517ff
Możliwość buforowania
Brak
Brak
bootcopier_ram.s1 cpu.timer_sw_agent mailbox.avmm sysid_qsys_0.control_slave
0x52000 ~ 0x537ff 0x60000 ~ 0x6003f 0x60040 ~ 0x6007f 0x60080 ~ 0x60087
Można buforować Niemożliwe do buforowania Niemożliwe do buforowania Niemożliwe do buforowania
144 bajty (minimalny rozmiar to 65536 bajtów)
0x60000
uart.avalon_jtag_niewolnik
0x60088 ~ 0x6008f
Niemożliwy do buforowania
2.3.1.3. Pamięć ściśle sprzężona
Pamięci ściśle sprzężone (TCM) są implementowane z wykorzystaniem pamięci wbudowanej (on-chip), ponieważ ich niskie opóźnienie sprawia, że doskonale nadają się do tego zadania. Pamięci TCM to pamięci mapowane w typowej przestrzeni adresowej, ale posiadające dedykowany interfejs do mikroprocesora i charakteryzujące się wysoką wydajnością i niskim opóźnieniem pamięci podręcznej. Pamięci TCM zapewniają również interfejs podrzędny dla hosta zewnętrznego. Procesor i host zewnętrzny mają ten sam poziom uprawnień do obsługi pamięci TCM.
Podręcznik projektowania procesorów wbudowanych Nios® V 28
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Notatka:
Gdy port podrzędny TCM jest podłączony do hosta zewnętrznego, może być wyświetlany z innym adresem bazowym niż adres bazowy przypisany w rdzeniu procesora. Altera zaleca wyrównanie obu adresów do tej samej wartości.
2.3.1.4. Interfejs pamięci zewnętrznej (EMIF)
EMIF (External Memory Interface) działa podobnie do SRAM (Static Random Access Memory), ale jest dynamiczny i wymaga okresowego odświeżania w celu utrzymania zawartości. Dynamiczne komórki pamięci w EMIF są znacznie mniejsze niż statyczne komórki pamięci w SRAM, co przekłada się na większą pojemność i niższy koszt urządzeń pamięciowych.
Oprócz wymogu odświeżania, EMIF ma specyficzne wymagania dotyczące interfejsu, które często wymagają specjalistycznego sprzętu kontrolera. W przeciwieństwie do pamięci SRAM, która ma stały zestaw linii adresowych, EMIF organizuje swoją przestrzeń pamięci w banki, wiersze i kolumny. Przełączanie między bankami i wierszami wiąże się z pewnym narzutem, dlatego należy starannie uporządkować dostęp do pamięci, aby efektywnie korzystać z EMIF. EMIF multipleksuje również adresy wierszy i kolumn na tych samych liniach adresowych, zmniejszając liczbę pinów wymaganych dla danego rozmiaru EMIF.
Szybsze wersje pamięci EMIF, takie jak DDR, DDR2, DDR3, DDR4 i DDR5, narzucają rygorystyczne wymagania dotyczące integralności sygnału, które projektanci PCB muszą brać pod uwagę.
Urządzenia EMIF należą do najtańszych i najpojemniejszych typów pamięci RAM dostępnych na rynku, co czyni je popularnym wyborem. Kluczowym komponentem interfejsu EMIF jest protokół IP EMIF, który zarządza zadaniami związanymi z multipleksowaniem adresów, odświeżaniem i przełączaniem między wierszami i bankami. Taka konstrukcja umożliwia pozostałym elementom systemu dostęp do EMIF bez konieczności zrozumienia jego wewnętrznej architektury.
Informacje powiązane Interfejsy pamięci zewnętrznej Centrum pomocy technicznej IP
2.3.1.4.1. Rozszerzenie zakresu adresów IP
Rozszerzenie zakresu adresów (Address Span Extender) w układzie FPGA Altera IP umożliwia interfejsom hosta mapowanym w pamięci dostęp do większej lub mniejszej mapy adresów niż pozwala na to szerokość ich sygnałów adresowych. Rozszerzenie zakresu adresów (Address Span Extender IP) dzieli przestrzeń adresowalną na wiele oddzielnych okien, umożliwiając hostowi dostęp do odpowiedniej części pamięci za pośrednictwem okna.
Rozszerzenie zakresu adresów nie ogranicza szerokości hosta i agenta do konfiguracji 32-bitowej i 64-bitowej. Rozszerzenie zakresu adresów można stosować z oknami adresowymi o szerokości od 1 do 64 bitów.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 29
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Rysunek 13. Rozszerzenie zakresu adresów Altera FPGA IP
Adres słowa agenta
Rozszerzenie zakresu adresów
A
Tabela mapowania
Port sterujący A
…
Rejestr kontrolny 0 Rejestr kontrolny Z-1
Rozszerzony adres hosta H
Informacje powiązane
Podręcznik użytkownika Quartus® Prime Pro Edition: Projektant platformy Więcej informacji można znaleźć w temacie Address Span Extender Intel® FPGA IP.
2.3.1.4.2. Korzystanie z rozszerzenia zakresu adresów IP z procesorem Nios V
32-bitowy procesor Nios V może zaadresować do 4 GB zakresu adresów. Jeśli EMIF zawiera więcej niż 4 GB pamięci, przekracza on maksymalny obsługiwany zakres adresów, co powoduje błąd w systemie Platform Designer. Aby rozwiązać ten problem, wymagany jest protokół IP Address Span Extender, który dzieli pojedynczą przestrzeń adresową EMIF na wiele mniejszych okien.
Altera zaleca uwzględnienie następujących parametrów.
Tabela 21. Parametry rozszerzenia zakresu adresów
Parametr
Zalecane ustawienia
Szerokość ścieżki danych
Rozszerzona szerokość adresu bajtu głównego
Wybierz 32 bity, co odpowiada procesorowi 32-bitowemu. Zależy to od rozmiaru pamięci EMIF.
Szerokość adresu słowa podrzędnego Szerokość liczby serii
Wybierz 2 GB lub mniej. Pozostały zakres adresów procesora Nios V jest zarezerwowany dla innych wbudowanych, programowych adresów IP.
Zacznij od wartości 1 i stopniowo ją zwiększaj, aby poprawić wydajność.
Liczba okien podrzędnych
Wybierz jedno podokno, jeśli podłączasz EMIF do procesora Nios V jako pamięć instrukcji i danych, lub oba. Przełączanie między wieloma podoknami, gdy procesor Nios V wykonuje polecenia z EMIF, jest niebezpieczne.
Włącz port sterowania podrzędnego
Wyłącz port sterowania podrzędnego, jeśli podłączasz EMIF do procesora Nios V jako pamięć instrukcji i/lub danych. Dotyczy to również liczby okien podrzędnych.
Maksymalna liczba oczekujących odczytów
Zacznij od wartości 1 i stopniowo ją zwiększaj, aby poprawić wydajność.
Podręcznik projektowania procesorów wbudowanych Nios® V 30
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
Rysunek 14. Podłączanie menedżera instrukcji i danych do rozszerzenia zakresu adresów
Rysunek 15. Mapowanie adresów
Należy zauważyć, że Address Span Extender ma dostęp do całej 8 GB przestrzeni pamięci EMIF. Jednak za pośrednictwem Address Span Extender procesor Nios V może uzyskać dostęp tylko do pierwszego 1 GB przestrzeni pamięci EMIF.
Rysunek 16. Uproszczony schemat blokowy
System projektanta platformy
Pozostałe 3 GB
Adres procesora Nios V
rozpiętość jest przeznaczona do osadzania
NNioios sVV PProrocecsesosor r
M
miękkie adresy IP w tym samym systemie.
Okno 1 GB
Zakres adresów
S
Wypełniacz
M
Tylko pierwsze 1 GB
pamięci EMIF jest podłączona do Nios V
EMIF
edytor.
8 GB
S
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 31
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
2.3.1.4.3. Definiowanie urządzenia pamięci łącznika Address Span Extender 1. Zdefiniuj Address Span Extender (EMIF) jako wektor resetu. Alternatywnie, możesz przypisać wektor resetu procesora Nios V do innych pamięci, takich jak OCRAM lub pamięci flash.
Rysunek 17. Wiele opcji jako wektor resetowania
Jednak edytor pakietu obsługi płyt (BSP) nie może automatycznie zarejestrować rozszerzenia zakresu adresów (EMIF) jako prawidłowej pamięci. W zależności od dokonanego wyboru, pojawiają się dwie różne sytuacje, jak pokazano na poniższych rysunkach. Rysunek 18. Błąd BSP podczas definiowania rozszerzenia zakresu adresów (EMIF) jako wektora resetu
Podręcznik projektowania procesorów wbudowanych Nios® V 32
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
Rysunek 19. Brak EMIF podczas definiowania innych pamięci jako wektora resetu
2. Należy ręcznie dodać rozszerzenie zakresu adresów (EMIF) za pomocą opcji Dodaj urządzenie pamięci, Dodaj region pamięci linkera i Dodaj mapowania sekcji linkera na karcie Skrypt linkera BSP.
3. Wykonaj następujące kroki:
a. Określ zakres adresów rozszerzenia zakresu adresów za pomocą mapy pamięci (np.ampW poniższym rysunku wykorzystano zakres Address Span Extender od 0x0 do 0x3fff_ffff).
Rysunek 20. Mapa pamięci
b. Kliknij „Dodaj urządzenie pamięci” i wypełnij pola zgodnie z informacjami z mapy pamięci projektu: i. Nazwa urządzenia: emif_ddr4. Uwaga: Upewnij się, że kopiujesz tę samą nazwę z mapy pamięci. ii. Adres bazowy: 0x0 iii. Rozmiar: 0x40000000
c. Kliknij Dodaj, aby dodać nowy obszar pamięci łączącej:
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 33
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Tabela 22. Dodawanie obszaru pamięci łącznika
Kroki
Zresetuj wektor
emif_ddr4
Inne wspomnienia
1
Dodaj nowy region pamięci linkera o nazwie „reset”. Dodaj nowy region pamięci linkera dla
· Nazwa regionu: zresetuj
emif_ddr4.
· Rozmiar regionu: 0x20
· Nazwa regionu: emif_ddr4
· Urządzenie pamięci: emif_ddr4
· Rozmiar regionu: 0x40000000
· Przesunięcie pamięci: 0x0
· Urządzenie pamięci: emif_ddr4
· Przesunięcie pamięci: 0x0
2
Dodaj nowy region pamięci łącza dla
pozostałe emif_ddr4.
· Nazwa regionu: emif_ddr4
· Rozmiar regionu: 0x3fffffe0
· Urządzenie pamięci: emif_ddr4
· Przesunięcie pamięci: 0x20
Rysunek 21. Region łącznika podczas definiowania rozszerzenia zakresu adresów (EMIF) jako wektora resetu
Rysunek 22. Region łącznika podczas definiowania innych pamięci jako wektora resetowania
d. Po dodaniu modułu emif_ddr4 do BSP można go wybrać dla dowolnej sekcji łącza.
Rysunek 23. Pomyślnie dodano rozszerzenie zakresu adresów (EMIF)
e. Zignoruj ostrzeżenie dotyczące urządzenia pamięci emif_ddr4, które nie jest widoczne w projekcie SOPC.
f. Przejdź do generowania BSP.
Informacje pokrewne Wprowadzenie do metod rozruchu procesora Nios V na stronie 51
Podręcznik projektowania procesorów wbudowanych Nios® V 34
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
2.3.2. Pamięć nieulotna
Pamięć nieulotna zachowuje swoją zawartość po wyłączeniu zasilania, co czyni ją dobrym wyborem do przechowywania informacji, które system musi odzyskać po wyłączeniu i ponownym włączeniu zasilania. Pamięć nieulotna zazwyczaj przechowuje kod rozruchowy procesora, trwałe ustawienia aplikacji oraz dane konfiguracyjne układu FPGA Altera. Chociaż pamięć nieulotna ma przewagętagPamięć nieulotna, z uwagi na możliwość zachowania danych po odłączeniu zasilania, działa znacznie wolniej w porównaniu z pamięcią ulotną i często wymaga bardziej złożonych procedur zapisu i kasowania. Ponadto, pamięć nieulotna zazwyczaj gwarantuje możliwość kasowania danych tylko określoną liczbę razy, po czym może ulec awarii.
ExampDo pamięci nieulotnej zaliczają się wszystkie typy pamięci flash, EPROM i EEPROM. Altera zaleca przechowywanie strumieni bitów FPGA Altera i obrazów programów Nios V w pamięci nieulotnej oraz używanie szeregowej pamięci flash jako urządzenia rozruchowego dla procesorów Nios V.
Informacje powiązane
· Podręcznik użytkownika ogólnego interfejsu Flash szeregowego Altera FPGA IP
· Instrukcja użytkownika klienta skrzynki pocztowej Altera FPGA IP · Instrukcja użytkownika pamięci flash użytkownika MAX® 10: pamięć Flash na chipie Altera FPGA IP Core
2.4. Najlepsze praktyki dotyczące zegarów i resetowania
Zrozumienie, jak zegar procesora Nios V i domena resetu współdziałają z każdym urządzeniem peryferyjnym, z którym są połączone, jest istotne. Prosty system procesora Nios V zaczyna od pojedynczej domeny zegara, a w systemie z wieloma domenami zegara sytuacja może się skomplikować, gdy domena szybkiego zegara koliduje z domeną wolnego zegara. Należy zwrócić uwagę i zrozumieć, jak te różne domeny są sekwencjonowane po resecie, i upewnić się, że nie występują żadne subtelne problemy.
Zgodnie z najlepszymi praktykami, Altera zaleca umieszczenie procesora Nios V i pamięci rozruchowej w tej samej domenie zegara. Nie zwalniaj procesora Nios V z resetu w domenie szybkiego zegara, gdy uruchamia się on z pamięci znajdującej się w domenie bardzo wolnego zegara, co może spowodować błąd pobierania instrukcji. Może być konieczne ręczne ustalenie kolejności wykraczającej poza domyślną funkcję Platform Designer, a następnie zaplanuj topologię zwalniania resetu odpowiednio do przypadku użycia. Jeśli chcesz zresetować system po jego uruchomieniu i pewnym okresie działania, zastosuj te same zasady dotyczące kolejności resetowania systemu i wymagań dotyczących inicjalizacji po resecie.
2.4.1. System JTAG Zegar
Określenie ograniczeń zegara w każdym systemie procesorowym Nios V jest istotnym elementem projektowania systemu i jest niezbędne dla jego poprawności i deterministycznego działania. Analizator czasowy Quartus Prime przeprowadza statyczną analizę czasową, aby zweryfikować wydajność czasową całej logiki w projekcie, wykorzystując standardową w branży metodologię ograniczeń, analizy i raportowania.
Example 1. Podstawowy zegar 100 MHz z cyklem pracy 50/50 i częstotliwością taktowania 16 MHzTAG Zegar
#**************************************************************** # Utwórz zegar 100 MHz #************************************************************ create_clock -name {clk} -period 10 [get_ports {clk}] #************************ Utwórz zegar 16 MHz JTAG Zegar #************************
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 35
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
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}] Informacje powiązane Podręcznik analizatora czasu Quartus Prime
2.4.2. Interfejs żądania resetowania
Procesor Nios V zawiera opcjonalną funkcję żądania resetu. Funkcja żądania resetu składa się z sygnałów reset_req i reset_req_ack.
Aby włączyć żądanie resetu w Projektancie platformy: 1. Uruchom Edytor parametrów IP procesora Nios V. 2. W ustawieniu Użyj żądania resetu włącz interfejs Dodaj żądanie resetu.
opcja.
Rysunek 24. Włącz żądanie resetu procesora Nios V
Sygnał reset_req działa jak przerwanie. Po aktywacji sygnału reset_req żądasz zresetowania rdzenia. Rdzeń czeka na zakończenie operacji przez każdą oczekującą transakcję na magistrali. Na przykładampNa przykład, jeśli istnieje oczekująca transakcja dostępu do pamięci, rdzeń czeka na pełną odpowiedź. Podobnie, rdzeń akceptuje każdą oczekującą odpowiedź instrukcji, ale nie wysyła żądania instrukcji po otrzymaniu sygnału reset_req.
Operacja resetowania składa się z następującego przepływu: 1. Zakończenie wszystkich oczekujących operacji. 2. Opróżnienie wewnętrznego potoku. 3. Ustawienie licznika programu na wektor resetowania. 4. Zresetowanie rdzenia. Cała operacja resetowania zajmuje kilka cykli zegara. Reset_req musi pozostać aktywny do momentu potwierdzenia reset_req_ack, co oznacza pomyślne zakończenie operacji resetowania rdzenia. Niezastosowanie się do tego warunku powoduje, że stan rdzenia staje się niedeterministyczny.
Podręcznik projektowania procesorów wbudowanych Nios® V 36
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
2.4.2.1. Typowe przypadki użycia
· Można potwierdzić sygnał reset_req po włączeniu zasilania, aby uniemożliwić rdzeniowi procesora Nios V rozpoczęcie wykonywania programu z wektora resetu, dopóki inne hosty FPGA w systemie nie zainicjują pamięci rozruchowej procesora Nios V. W takim przypadku cały podsystem może zostać zresetowany sprzętowo. Procesor Nios V pozostaje w stanie żądania resetu przez czas nieokreślony, dopóki inne hosty FPGA nie zainicjują pamięci rozruchowej procesora.
· W systemie, w którym konieczne jest zresetowanie rdzenia procesora Nios V bez zakłócania pracy reszty systemu, można wysłać sygnał reset_req, aby czysto zatrzymać bieżącą pracę rdzenia i ponownie uruchomić procesor z wektora resetowania, gdy system zwolni sygnał reset_req_ack.
· Zewnętrzny host może użyć interfejsu żądania resetu, aby ułatwić realizację następujących zadań:
— Zatrzymaj bieżący program procesora Nios V.
— Załaduj nowy program do pamięci rozruchowej procesora Nios V.
— Pozwól procesorowi rozpocząć wykonywanie nowego programu.
Altera zaleca wdrożenie mechanizmu limitu czasu do monitorowania stanu sygnału reset_req_ack. Jeśli rdzeń procesora Nios V znajdzie się w stanie nieskończonego oczekiwania i zatrzyma się z nieznanego powodu, reset_req_ack nie będzie mógł być generowany w nieskończoność. Mechanizm limitu czasu umożliwia:
· Zdefiniuj okres limitu czasu odzyskiwania i wykonaj odzyskiwanie systemu za pomocą resetu na poziomie systemu.
· Wykonaj reset na poziomie sprzętowym.
2.4.3. Resetowanie zwolnienia IP
Urządzenia oparte na architekturze SDM firmy Altera wykorzystują równoległą architekturę sektorową, która dystrybuuje logikę rdzenia struktury na wiele sektorów. Firma Altera zaleca użycie protokołu Reset Release Altera FPGA IP jako jednego z początkowych wejść do układu resetowania. Urządzenia oparte na architekturze SDM firmy Intel® obejmują urządzenia Stratix® 10 i AgilexTM. Urządzenia oparte na blokach sterowania nie są objęte tym wymogiem.
Informacje powiązane
AN 891: Korzystanie z funkcji resetowania protokołu IP Altera FPGA
2.5. Przypisywanie domyślnego agenta
Projektant Platformy umożliwia określenie domyślnego agenta, który działa jako domyślny agent odpowiedzi na błędy. Wyznaczony agent domyślny zapewnia usługę odpowiedzi na błędy dla hostów, które próbują uzyskać dostęp do mapy adresów bez dekodowania.
Poniższe scenariusze wyzwalają zdarzenie, którego nie można zdekodować:
· Naruszenie stanu bezpieczeństwa transakcji magistrali
· Dostęp transakcyjny do niezdefiniowanego obszaru pamięci
· Wyjątek itp.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 37
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Do obsługi takich zdarzeń należy wyznaczyć domyślnego agenta, który będzie przekierowywał niezdefiniowaną transakcję do domyślnego agenta i następnie odpowiadał procesorowi Nios V informacją o błędzie.
Informacje powiązane
· Podręcznik użytkownika Quartus Prime Pro Edition: Projektant platformy. Wyznaczanie domyślnego agenta
· Podręcznik użytkownika Quartus Prime Pro Edition: Projektant platformy. Odpowiedź na błąd, podrzędny układ Altera FPGA IP
· Github – Dodatkowe komponenty resetowania dla Qsys
2.6. Przypisywanie agenta UART do drukowania
Drukowanie jest przydatne do debugowania aplikacji, a także do monitorowania stanu systemu. Altera zaleca drukowanie podstawowych informacji, takich jak komunikat startowy, komunikat o błędzie i postęp działania aplikacji.
Unikaj używania funkcji bibliotecznej printf() w następujących okolicznościach: · Biblioteka printf() powoduje zatrzymanie działania aplikacji, jeśli żaden host nie odczytuje danych wyjściowych.
Dotyczy to JTAG Tylko UART. · Biblioteka printf() zużywa dużą ilość pamięci programu.
2.6.1. Zapobieganie przeciągnięciom przez JTAG UART
Tabela 23. Różnice między tradycyjnym UART a JTAG UART
Typ UART Tradycyjny UART
Opis
Przesyła dane szeregowe niezależnie od tego, czy nasłuchuje host zewnętrzny. Jeśli żaden host nie odczyta danych szeregowych, zostaną one utracone.
JTAG UART
Zapisuje przesłane dane do bufora wyjściowego i polega na hoście zewnętrznym, który odczytuje dane z bufora i go opróżnia.
JTAG Sterownik UART czeka, aż bufor wyjściowy się zapełni. JTAG Sterownik UART czeka, aż zewnętrzny host odczyta dane z bufora wyjściowego, zanim zapisze więcej danych transmisyjnych. Ten proces zapobiega utracie danych transmisyjnych.
Jednakże, gdy debugowanie systemu nie jest wymagane, np. podczas produkcji, systemy wbudowane są wdrażane bez komputera hosta podłączonego do JTAG UART. Jeśli system wybrał JTAG UART jako agent UART może powodować zatrzymanie systemu, ponieważ nie jest podłączony żaden host zewnętrzny.
Aby zapobiec zatrzymaniu przez JTAG UART, zastosuj jedną z następujących opcji:
Podręcznik projektowania procesorów wbudowanych Nios® V 38
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Tabela 24. Zapobieganie zatrzymywaniu się silnika przez JTAG UART
Opcje
Brak interfejsu UART i sterownika
Użyj innego interfejsu UART i sterownika
Zachowaj JTAG Interfejs UART (bez sterownika)
Podczas rozwoju sprzętu (w Projektancie Platformy)
Podczas rozwoju oprogramowania (w edytorze pakietów wsparcia płyty)
Usuń JTAG UART z systemu
Skonfiguruj hal.stdin, hal.stdout i hal.stderr jako None.
Zastąp JTAG UART z innym oprogramowaniem Konfiguracja hal.stdin, hal.stdout i hal.stderr
UART IP
z innym miękkim UART IP.
Zachowaj JTAG UART w systemie
· Skonfiguruj hal.stdin, hal.stdout i hal.stderr jako None w edytorze pakietów wsparcia płyty.
· Wyłącz JTAG Sterownik UART w zakładce Sterownik BSP.
2.7.Ż.TAG Sygnały
Moduł debugowania procesora Nios V wykorzystuje JTAG Interfejs do pobierania oprogramowania ELF i debugowania oprogramowania. Podczas debugowania projektu za pomocą JTAG interfejs, JTAG Sygnały TCK, TMS, TDI i TDO są implementowane jako część projektu. Określenie JTAG ograniczenia sygnału w każdym systemie procesora Nios V stanowią istotny element projektu systemu i są niezbędne do uzyskania poprawności i deterministycznego zachowania.
Firma Altera zaleca, aby częstotliwość zegara systemowego każdego projektu była co najmniej czterokrotnie wyższa niż częstotliwość JTAG częstotliwość zegara, aby zapewnić prawidłowe funkcjonowanie rdzenia układu scalonego (OCI).
Powiązane informacje · Książka kucharska analizatora czasu Quartus® Prime: JTAG Sygnały
Więcej informacji na temat JTAG wytyczne dotyczące ograniczeń czasowych. · KDB: Dlaczego pobieranie niosv kończy się niepowodzeniem w przypadku procesora Nios® V/m bez potoku?
JTAG częstotliwość 24MHz czy 16MHz?
2.8 Optymalizacja wydajności systemu Platform Designer
Platform Designer udostępnia narzędzia umożliwiające optymalizację wydajności połączeń systemowych w projektach FPGA firmy Altera.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 39
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i projektanta platformy
726952 | 2025.07.16
Rysunek 25. Przykład optymalizacjiamples
ByłyampRysunek pokazany na rysunku ilustruje następujące kroki:
1. Dodaje mostek rurociągowy, aby złagodzić ścieżki krytyczne, umieszczając go: a. Pomiędzy menedżerem instrukcji a jego agentami b. Pomiędzy menedżerem danych a jego agentami
2. Zastosuj prawdziwą pamięć RAM dwuportową On-Chip, przy czym każdy port jest dedykowany odpowiednio Menedżerowi instrukcji i Menedżerowi danych
Podręcznik projektowania procesorów wbudowanych Nios® V 40
Wyślij opinię
2. Projektowanie systemu sprzętowego procesora Nios V z wykorzystaniem oprogramowania Quartus Prime i platformy Designer 726952 | 2025.07.16
Poniżej znajdziesz powiązane linki, które przedstawiają techniki wykorzystania dostępnych narzędzi i kompromisy związane z każdym sposobem wdrożenia.
Powiązane informacje · Podręcznik użytkownika Quartus® Prime Pro Edition: Projektant platformy
Więcej informacji można znaleźć w temacie Optymalizacja wydajności systemu Platform Designer. · Podręcznik użytkownika Quartus® Prime Standard Edition: Platform Designer Więcej informacji można znaleźć w temacie Optymalizacja wydajności systemu Platform Designer.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 41
726952 | 2025.07.16 Prześlij opinię
3. Projekt systemu oprogramowania procesora Nios V
W tym rozdziale opisano proces tworzenia oprogramowania procesora Nios V oraz narzędzia programowe, z których można korzystać podczas tworzenia systemu projektowania wbudowanego. Treść służy jako uzupełnienieview przed opracowaniem oprogramowania procesora Nios V.
Rysunek 26. Przepływ projektowania oprogramowania
Start
Generowanie BSP w Projektancie Platformy za pomocą Edytora BSP
Wygeneruj BSP za pomocą powłoki poleceń Nios V
Wygeneruj kompilację aplikacji CMake File Korzystanie z powłoki poleceń Nios V
Notatka:
Importuj BSP i kompilację aplikacji CMake File
Zbuduj aplikację procesora Nios V przy użyciu
Środowisko IDE RiscFree dla Intel FPGA
Zbuduj aplikację procesora Nios V przy użyciu dowolnego
edytor kodu źródłowego wiersza poleceń, CMake i Make
polecenia
Koniec
Firma Altera zaleca korzystanie z zestawu deweloperskiego FPGA firmy Altera lub dedykowanej płytki prototypowej do tworzenia oprogramowania i debugowania. Wiele urządzeń peryferyjnych i funkcji systemowych jest dostępnych tylko wtedy, gdy oprogramowanie działa na rzeczywistej płytce.
© Altera Corporation. Altera, logo Altera, logo `a' i inne znaki Altera są znakami towarowymi Altera Corporation. Altera zastrzega sobie prawo do wprowadzania zmian w produktach i usługach w dowolnym momencie i bez powiadomienia. Altera nie ponosi żadnej odpowiedzialności wynikającej z zastosowania lub wykorzystania jakichkolwiek informacji, produktów lub usług opisanych w niniejszym dokumencie, z wyjątkiem przypadków wyraźnie uzgodnionych na piśmie z Altera. Klientom Altera zaleca się zapoznanie się z najnowszą wersją specyfikacji urządzenia przed wykorzystaniem jakichkolwiek opublikowanych informacji oraz przed złożeniem zamówienia na produkty lub usługi. *Inne nazwy i marki mogą być własnością osób trzecich.
3. Projekt systemu oprogramowania procesora Nios V 726952 | 2025.07.16
3.1. Przepływ rozwoju oprogramowania procesora Nios V
3.1.1. Projekt pakietu wsparcia zarządu
Projekt pakietu wsparcia płyty Nios V (BSP) to specjalistyczna biblioteka zawierająca kod wsparcia specyficzny dla danego systemu. BSP zapewnia środowisko uruchomieniowe oprogramowania dostosowane do jednego procesora w systemie sprzętowym procesora Nios V.
Oprogramowanie Quartus Prime udostępnia edytor pakietów wsparcia płyty Nios V oraz narzędzia niosv-bsp umożliwiające modyfikację ustawień kontrolujących zachowanie BSP.
BSP zawiera następujące elementy: · Warstwa abstrakcji sprzętowej · Sterowniki urządzeń · Opcjonalne pakiety oprogramowania · Opcjonalny system operacyjny czasu rzeczywistego
3.1.2 Projekt aplikacji
Projekt aplikacji Nios VC/C++ ma następujące cechy: · Składa się ze zbioru kodu źródłowego i pliku CMakeLists.txt.
— Plik CMakeLists.txt kompiluje kod źródłowy i łączy go z BSP oraz jedną lub większą liczbą opcjonalnych bibliotek, aby utworzyć jeden plik .elf file
· Jedno ze źródeł files zawiera funkcję main(). · Zawiera kod wywołujący funkcje w bibliotekach i BSP.
Firma Altera udostępnia narzędzie niosv-app w ramach narzędzi oprogramowania Quartus Prime służące do tworzenia pliku CMakeLists.txt aplikacji oraz środowisko IDE RiscFree dla układów FPGA firmy Altera, umożliwiające modyfikację kodu źródłowego w środowisku opartym na platformie Eclipse.
3.2. Narzędzia programistyczne Altera FPGA Embedded
Procesor Nios V obsługuje następujące narzędzia do tworzenia oprogramowania: · Graficzny interfejs użytkownika (GUI) – graficzne narzędzia programistyczne dostępne w
Systemy operacyjne Windows* i Linux*. — Edytor pakietów wsparcia płyt Nios V (edytor BSP Nios V) — Ashling RiscFree IDE dla układów FPGA Altera · Narzędzia wiersza poleceń (CLI) – narzędzia programistyczne uruchamiane z poziomu powłoki poleceń Nios V. Każde narzędzie zawiera własną dokumentację w formie pomocy dostępnej z poziomu wiersza poleceń. Otwórz powłokę poleceń Nios V i wpisz następujące polecenie: –pomoc view menu Pomoc. — Narzędzia Nios V Utilities — File Narzędzia do konwersji formatów — inne narzędzia
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 43
3. Projekt systemu oprogramowania procesora Nios V 726952 | 2025.07.16
Tabela 25. Podsumowanie zadań narzędzi GUI i narzędzi wiersza poleceń
Zadanie
Narzędzie GUI
Narzędzie wiersza poleceń
Tworzenie BSP
Edytor Nios V BSP
· W oprogramowaniu Quartus Prime Pro Edition: niosv-bsp -c -s=<.qsys file> -t= [OPCJE] ustawienia.bsp
· W oprogramowaniu Quartus Prime Standard Edition: niosv-bsp -c -s=<.sopcinfo file> -t= [OPCJE] ustawienia.bsp
Generowanie BSP przy użyciu istniejącego pliku .bsp file
Aktualizacja BSP
Nios V BSP Editor Nios V BSP Editor
niosv-bsp -g [OPCJE] ustawienia.bsp niosv-bsp -u [OPCJE] ustawienia.bsp
Badanie BSP
Edytor Nios V BSP
niosv-bsp -q -E= [OPCJE] ustawienia.bsp
Tworzenie aplikacji
–
niosv-app -a= -b= -s= filekatalog s> [OPCJE]
Tworzenie biblioteki użytkownika
–
niosv-app -l= -s= filekatalog s> -p= [OPCJE]
Modyfikowanie aplikacji Modyfikowanie biblioteki użytkownika Budowanie aplikacji
RiscFree IDE dla układów FPGA Altera
RiscFree IDE dla układów FPGA Altera
RiscFree IDE dla układów FPGA Altera
Dowolny edytor kodu źródłowego wiersza poleceń
Dowolny edytor kodu źródłowego wiersza poleceń
· zrobić · cmake
Budowanie biblioteki użytkownika
RiscFree IDE dla układów FPGA Altera
· zrobić · cmake
Pobieranie aplikacji ELF
Konwersja .elf file
RiscFree IDE dla układów FPGA Altera
–
niosv-pobierz
· elf2flash · elf2hex
Informacje powiązane
Podręcznik użytkownika zintegrowanego środowiska programistycznego (IDE) Ashling RiscFree dla układów FPGA firmy Altera
3.2.1. Edytor pakietów wsparcia płyty procesora Nios V
Za pomocą edytora BSP procesora Nios V można wykonywać następujące zadania: · Tworzenie lub modyfikowanie projektu BSP procesora Nios V · Edytowanie ustawień, regionów linkera i mapowań sekcji · Wybieranie pakietów oprogramowania i sterowników urządzeń.
Możliwości edytora BSP obejmują funkcje narzędzi niosv-bsp. Każdy projekt utworzony w edytorze BSP można również utworzyć za pomocą narzędzi wiersza poleceń.
Podręcznik projektowania procesorów wbudowanych Nios® V 44
Wyślij opinię
3. Projekt systemu oprogramowania procesora Nios V 726952 | 2025.07.16
Notatka:
W przypadku oprogramowania Quartus Prime Standard Edition zapoznaj się z dokumentem AN 980: Wsparcie techniczne oprogramowania Nios V Processor Quartus Prime, w którym opisano procedurę wywołania interfejsu graficznego edytora BSP.
Aby uruchomić edytor BSP, wykonaj następujące kroki: 1. Otwórz projektanta platformy i przejdź do File menu.
a. Aby otworzyć istniejące ustawienie BSP file, kliknij Otwórz… b. Aby utworzyć nowy BSP, kliknij Nowy BSP… 2. Wybierz kartę Edytor BSP i podaj odpowiednie dane.
Rysunek 27. Uruchom edytor BSP
Informacje powiązane AN 980: Procesor Nios V Wsparcie oprogramowania Quartus Prime
3.2.2. Środowisko IDE RiscFree dla układów FPGA firmy Altera
Środowisko programistyczne RiscFree dla układów FPGA firmy Altera to środowisko programistyczne oparte na platformie Eclipse, przeznaczone dla procesora Nios V. Firma Altera zaleca tworzenie oprogramowania procesora Nios V w tym środowisku programistycznym z następujących powodów: · Funkcje zostały opracowane i zweryfikowane pod kątem zgodności z procesorem Nios V.
przepływ kompilacji procesora. · Wyposażony we wszystkie niezbędne łańcuchy narzędzi i narzędzia pomocnicze, które umożliwiają
aby łatwo rozpocząć rozwój procesora Nios V.
Powiązane informacje Ashling RiscFree Integrated Development Environment (IDE) dla Altera FPGAs Podręcznik użytkownika
3.2.3. Narzędzia Nios V Utilities
Możesz tworzyć, modyfikować i budować programy Nios V za pomocą poleceń wpisywanych w wierszu poleceń lub osadzonych w skrypcie. Narzędzia wiersza poleceń Nios V opisane w tej sekcji znajdują się w Katalog /niosv/bin.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 45
3. Projekt systemu oprogramowania procesora Nios V 726952 | 2025.07.16
Tabela 26. Narzędzia Nios V Utilities
Narzędzia wiersza poleceń
Streszczenie
niosv-app niosv-bsp niosv-download niosv-shell niosv-stack-report
Aby wygenerować i skonfigurować projekt aplikacji.
Aby utworzyć lub zaktualizować ustawienia BSP file i utwórz BSP files. Aby pobrać ELF file do procesora Nios® V.
Aby otworzyć powłokę poleceń Nios V. Aby poinformować Cię o pozostałej przestrzeni pamięci dostępnej dla Twojej aplikacji .elf do wykorzystania na stosie lub stercie.
3.2.4. File Narzędzia do konwersji formatów
File Konwersja formatu jest czasami konieczna podczas przesyłania danych z jednego narzędzia do drugiego. file narzędzia do konwersji formatu znajdują się w
katalog instalacyjny oprogramowania>katalog/niosv/bin.
Tabela 27. File Narzędzia do konwersji formatów
Narzędzia wiersza poleceń elf2flash elf2hex
Podsumowanie Aby przetłumaczyć .elf file do formatu .srec do programowania pamięci flash. Aby przetłumaczyć plik .elf file do formatu .hex w celu inicjalizacji pamięci.
3.2.5. Inne narzędzia narzędziowe
Podczas tworzenia systemu opartego na procesorze Nios V mogą być potrzebne następujące narzędzia wiersza poleceń. Narzędzia te są dostarczane przez firmę Intel w /quartus/bin lub pozyskany z
narzędzia open-source.
Tabela 28. Inne narzędzia wiersza poleceń
Narzędzia wiersza poleceń
Typ
Streszczenie
terminal juart
Dostarczone przez firmę Intel
Do monitorowania wyjścia standardowego i wyjścia standardowego oraz dostarczania danych wejściowych do procesora Nios® V
podsystemu przez wejście standardowe. To narzędzie działa tylko w systemie JTAG UART IP po podłączeniu do procesora Nios® V.
openocd
Dostarczone przez firmę Intel w celu uruchomienia OpenOCD.
openocd-cfg-gen
Dostarczone przez firmę Intel · Aby wygenerować konfigurację OpenOCD file. · Aby wyświetlić JTAG indeks urządzenia łańcuchowego.
Podręcznik projektowania procesorów wbudowanych Nios® V 46
Wyślij opinię
726952 | 2025.07.16 Prześlij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe
Procesor Nios V można skonfigurować tak, aby uruchamiał i wykonywał oprogramowanie z różnych lokalizacji pamięci. Pamięcią rozruchową jest pamięć flash QSPI (Quad Serial Peripheral Interface), pamięć OCRAM (On-Chip Memory) lub pamięć TCM (Tightly Coupled Memory).
Informacje powiązane · Warunki wyzwalania zasilania na stronie 193 · Wyzwalacze zasilania
Więcej informacji na temat wyzwalaczy zasilania.
4.1. Wprowadzenie
Procesor Nios V obsługuje dwa typy procesów rozruchowych: · Wykonywanie w miejscu (XIP) za pomocą funkcji alt_load() · Program kopiowany do pamięci RAM za pomocą kopiarki rozruchowej. Rozwój programów wbudowanych w procesor Nios V opiera się na warstwie abstrakcji sprzętowej (HAL). HAL udostępnia niewielki program ładujący (znany również jako kopiarka rozruchowa), który kopiuje odpowiednie sekcje linkera z pamięci rozruchowej do ich lokalizacji w czasie rozruchu. Lokalizacje pamięci programu i danych w czasie rozruchu można określić, manipulując ustawieniami edytora pakietu wsparcia płyty (BSP). W tej sekcji opisano: · Kopiarka rozruchowa procesora Nios V, która uruchamia system Nios V zgodnie z
Wybór pamięci rozruchowej · Opcje rozruchu procesora Nios V i ogólny przepływ · Rozwiązania programistyczne Nios V dla wybranej pamięci rozruchowej
4.2. Łączenie aplikacji
Podczas generowania projektu procesora Nios V edytor BSP generuje dwa powiązane ze sobą elementy łączące files: · linker.x: Polecenie linkera file że wygenerowana aplikacja tworzyfile używa
aby utworzyć plik binarny .elf file. · linker.h: Zawiera informacje o układzie pamięci linkera. Wszystkie modyfikacje ustawień linkera wprowadzone w projekcie BSP wpływają na zawartość tych dwóch plików. files. Każda aplikacja procesora Nios V zawiera następujące sekcje łączące:
© Altera Corporation. Altera, logo Altera, logo `a' i inne znaki Altera są znakami towarowymi Altera Corporation. Altera zastrzega sobie prawo do wprowadzania zmian w produktach i usługach w dowolnym momencie i bez powiadomienia. Altera nie ponosi żadnej odpowiedzialności wynikającej z zastosowania lub wykorzystania jakichkolwiek informacji, produktów lub usług opisanych w niniejszym dokumencie, z wyjątkiem przypadków wyraźnie uzgodnionych na piśmie z Altera. Klientom Altera zaleca się zapoznanie się z najnowszą wersją specyfikacji urządzenia przed wykorzystaniem jakichkolwiek opublikowanych informacji oraz przed złożeniem zamówienia na produkty lub usługi. *Inne nazwy i marki mogą być własnością osób trzecich.
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Tabela 29. Sekcje łącznikowe
.tekst
Sekcje łącznikowe
.rodata
.rwdane
.bss
.sterta
.stos
Opisy Kod wykonywalny. Wszelkie dane tylko do odczytu używane podczas wykonywania programu. Przechowuje dane do odczytu i zapisu używane podczas wykonywania programu. Zawiera niezainicjowane dane statyczne. Zawiera dynamicznie przydzieloną pamięć. Przechowuje parametry wywołania funkcji i inne dane tymczasowe.
Możesz dodać dodatkowe sekcje linkera do pliku .elf file do przechowywania niestandardowego kodu i danych. Te sekcje linkera są umieszczane w nazwanych obszarach pamięci, zdefiniowanych tak, aby odpowiadały fizycznym urządzeniom pamięci i adresom. Domyślnie Edytor BSP automatycznie generuje te sekcje linkera. Można jednak kontrolować sekcje linkera dla konkretnej aplikacji.
4.2.1. Zachowanie łączące
W tej sekcji opisano domyślne zachowanie linkowania edytora BSP i sposób kontrolowania tego zachowania.
4.2.1.1. Domyślne łączenie BSP
Podczas konfiguracji BSP narzędzia automatycznie wykonują następujące kroki:
1. Przypisz nazwy regionom pamięci: Przypisz nazwę każdemu urządzeniu pamięci systemowej i dodaj każdą nazwę do łącznika file jako obszar pamięci.
2. Znajdź największą pamięć: Zidentyfikuj największy obszar pamięci do odczytu i zapisu w łączniku file.
3. Przypisz sekcje linkera: Umieść domyślne sekcje linkera (.text, .rodata, .rwdata, .bss, .heap i .stack) w regionie pamięci zidentyfikowanym w poprzednim kroku.
4. Napisz files: Napisz linker.x i linker.h files.
Zazwyczaj schemat przydzielania sekcji linkera sprawdza się w procesie tworzenia oprogramowania, ponieważ aplikacja będzie działać prawidłowo, jeśli pamięć będzie wystarczająco duża.
Zasady domyślnego zachowania łączenia są zawarte w skryptach Tcl bsp-set-defaults.tcl i bsp-linker-utils.tcl generowanych przez Altera, które można znaleźć w Katalog /niosv/scripts/bsp-defaults. Polecenie niosv-bsp wywołuje te skrypty. Nie modyfikuj ich bezpośrednio.
Podręcznik projektowania procesorów wbudowanych Nios® V 48
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
4.2.1.2. Konfigurowalne łączenie BSP
Domyślnym zachowaniem łączenia można zarządzać na karcie Skrypt linkera w Edytorze BSP. Skrypt linkera można modyfikować, korzystając z następujących metod: · Dodaj obszar pamięci: Mapuje nazwę obszaru pamięci na fizyczne urządzenie pamięci. · Dodaj mapowanie sekcji: Mapuje nazwę sekcji na obszar pamięci. BSP
Edytor pozwala na: view mapa pamięci przed i po wprowadzeniu zmian.
4.3. Metody rozruchu procesora Nios V
Istnieje kilka metod uruchamiania procesora Nios V w urządzeniach FPGA Altera. Metody uruchamiania procesora Nios V różnią się w zależności od wybranej pamięci flash i rodziny urządzeń.
Tabela 30. Obsługiwane pamięci flash z odpowiednimi opcjami rozruchu
Obsługiwane pamięci rozruchowe
Urządzenie
Pamięć Flash na chipie (do konfiguracji wewnętrznej)
Maksymalnie 10 urządzeń (z On-Chip Flash IP)
Pamięć flash QSPI ogólnego przeznaczenia (tylko do danych użytkownika)
Wszystkie obsługiwane urządzenia FPGA (z ogólnym interfejsem szeregowym Flash FPGA IP)
Konfiguracja QSPI Flash (do konfiguracji Active Serial)
Sterowanie oparte na bloku
urządzenia (z Generic
Interfejs szeregowy Flash Intel FPGA IP)(2)
Metody rozruchu procesora Nios V
Lokalizacja środowiska wykonawczego aplikacji
Kopiarka rozruchowa
Aplikacja procesora Nios V wykonywana na miejscu z pamięci Flash na chipie
Pamięć Flash na chipie (XIP) + OCRAM/ pamięć zewnętrzna RAM (dla zapisywalnych sekcji danych)
funkcja alt_load()
Skopiowanie aplikacji procesora Nios V z pamięci Flash na chipie do pamięci RAM za pomocą kopiarki rozruchowej
OCRAM/Pamięć RAM zewnętrzna
Ponowne użycie Bootloadera za pomocą GSFI
Aplikacja procesora Nios V wykonywana w miejscu z pamięci flash QSPI ogólnego przeznaczenia
Pamięć flash QSPI ogólnego przeznaczenia (XIP) + OCRAM/ pamięć zewnętrzna RAM (do zapisywalnych sekcji danych)
funkcja alt_load()
Skopiowanie aplikacji procesora Nios V z pamięci flash QSPI ogólnego przeznaczenia do pamięci RAM za pomocą kopiarki rozruchowej
OCRAM/Pamięć RAM zewnętrzna
Bootloader przez GSFI
Aplikacja procesora Nios V wykonywana w miejscu z konfiguracji flash QSPI
Konfiguracja pamięci flash QSPI (XIP) + OCRAM/ RAM zewnętrzny (dla sekcji danych zapisywalnych)
funkcja alt_load()
Skopiowanie aplikacji procesora Nios V z pamięci flash QSPI do pamięci RAM za pomocą kopiarki rozruchowej
OCRAM/zewnętrzny bootloader RAM przez GSFI ciąg dalszy…
(2) Aby zapoznać się z listą urządzeń, zapoznaj się z dokumentem AN 980: Nios V Processor Quartus Prime Software Support.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 49
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Obsługiwane pamięci rozruchowe
Pamięć na chipie (OCRAM) Pamięć ściśle sprzężona (TCM)
Urządzenie
Urządzenia oparte na SDM (z klientem Mailbox Client Intel FPGA IP). (2)
Wszystkie obsługiwane urządzenia FPGA Altera (2)
Wszystkie obsługiwane urządzenia FPGA Altera (2)
Metody rozruchu procesora Nios V
Skopiowanie aplikacji procesora Nios V z pamięci flash QSPI do pamięci RAM za pomocą kopiarki rozruchowej
Aplikacja procesora Nios V wykonywana w miejscu z OCRAM
Aplikacja procesora Nios V wykonywana w miejscu z TCM
Lokalizacja środowiska wykonawczego aplikacji
Kopiarka rozruchowa
OCRAM/ Zewnętrzny bootloader RAM przez SDM
OCRAM
funkcja alt_load()
Instrukcja TCM (XIP) Brak + Dane TCM (dla sekcji danych zapisywalnych)
Rysunek 28. Przebieg rozruchu procesora Nios V
Nastawić
Procesor przechodzi do wektora resetu (start kodu rozruchowego)
Kod aplikacji można skopiować do innej lokalizacji pamięci (w zależności od opcji rozruchu)
Kod rozruchowy inicjuje procesor
W zależności od opcji rozruchu kod rozruchowy może skopiować wartości początkowe danych/kodu do innej przestrzeni pamięci (alt_load)
Kod rozruchowy inicjuje kod aplikacji i przestrzeń pamięci danych
Kod rozruchowy inicjuje wszystkie urządzenia peryferyjne systemu za pomocą sterowników HAL (alt_main)
Wejście do głównego
Informacje powiązane · Podręcznik użytkownika ogólnego interfejsu Flash szeregowego Altera FPGA IP
Podręcznik projektowania procesorów wbudowanych Nios® V 50
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
· Instrukcja obsługi klienta skrzynki pocztowej Altera FPGA IP · AN 980: Wsparcie oprogramowania Quartus Prime dla procesora Nios V
4.4. Wprowadzenie do metod rozruchu procesora Nios V
Systemy procesorów Nios V wymagają skonfigurowania obrazów oprogramowania w pamięci systemowej, zanim procesor będzie mógł rozpocząć wykonywanie programu aplikacyjnego. Informacje na temat domyślnych sekcji linkera znajdują się w sekcjach dotyczących linkerów.
Edytor BSP generuje skrypt linkera, który wykonuje następujące funkcje: · Zapewnia, że oprogramowanie procesora jest połączone zgodnie z ustawieniami linkera
edytora BSP i określa, gdzie oprogramowanie znajduje się w pamięci. · Umieszcza obszar kodu procesora w komponencie pamięci zgodnie z
przypisane komponenty pamięci.
Poniższa sekcja krótko opisuje dostępne metody rozruchu procesora Nios V.
4.4.1. Aplikacja procesora Nios V wykonywana na miejscu z pamięci flash rozruchowej
Firma Altera zaprojektowała kontrolery pamięci flash w taki sposób, aby przestrzeń adresowa pamięci flash rozruchowej była natychmiast dostępna dla procesora Nios V po zresetowaniu systemu, bez konieczności inicjalizacji kontrolera pamięci ani urządzeń pamięci. Dzięki temu procesor Nios V może wykonywać kod aplikacji zapisany na urządzeniach rozruchowych bezpośrednio, bez użycia kopiarki rozruchowej do kopiowania kodu do innego typu pamięci. Kontrolery pamięci flash to: · Pamięć flash na chipie z protokołem IP (tylko w urządzeniu MAX® 10) · Pamięć flash QSPI ogólnego przeznaczenia z protokołem IP (Generic Serial Flash Interface IP) · Pamięć flash QSPI konfiguracyjna z protokołem IP (Generic Serial Flash Interface IP) (z wyjątkiem MAX 10)
urządzenia)
Gdy aplikacja procesora Nios V jest wykonywana w miejscu z pamięci flash rozruchowej, edytor BSP wykonuje następujące funkcje: · Ustawia sekcje łącznika .text na obszar pamięci flash rozruchowej. · Ustawia sekcje łącznika .bss, .rodata, .rwdata, .stack i .heap na obszar pamięci RAM.
Obszar pamięci. Należy włączyć funkcję alt_load() w ustawieniach BSP, aby skopiować sekcje danych (.rodata, .rwdata, .exceptions) do pamięci RAM po zresetowaniu systemu. Sekcja kodu (.text) pozostaje w obszarze pamięci flash rozruchowej.
Informacje powiązane · Podręcznik użytkownika interfejsu Flash szeregowego Altera FPGA IP · Podręcznik użytkownika pamięci Flash użytkownika Altera MAX 10
4.4.1.1. alt_load()
Funkcję alt_load() można włączyć w kodzie HAL za pomocą edytora BSP.
Funkcja alt_load() używana w przepływie rozruchu z wykonywaniem na miejscu wykonuje następujące zadania:
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 51
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
· Działa jako miniaturowy program do kopiowania rozruchu, który kopiuje sekcje pamięci do pamięci RAM na podstawie ustawień BSP.
· Kopiuje sekcje danych (.rodata, .rwdata, .exceptions) do pamięci RAM, ale nie kopiuje sekcji kodu (.text). Sekcja kodu (.text) jest sekcją tylko do odczytu i pozostaje w obszarze pamięci flash podczas rozruchu. Takie partycjonowanie pomaga zminimalizować wykorzystanie pamięci RAM, ale może ograniczyć wydajność wykonywania kodu, ponieważ dostęp do pamięci flash jest wolniejszy niż dostęp do pamięci RAM w układzie scalonym.
Poniższa tabela zawiera listę ustawień i funkcji edytora BSP:
Tabela 31. Ustawienia edytora BSP
Ustawienie edytora BSP hal.linker.enable_alt_load hal.linker.enable_alt_load_copy_rodata hal.linker.enable_alt_load_copy_rwdata hal.linker.enable_alt_load_copy_exceptions
Funkcja Włącza funkcję alt_load(). alt_load() kopiuje sekcję .rodata do pamięci RAM. alt_load() kopiuje sekcję .rwdata do pamięci RAM. alt_load() kopiuje sekcję .exceptions do pamięci RAM.
4.4.2. Skopiowanie aplikacji procesora Nios V z pamięci flash rozruchowej do pamięci RAM za pomocą programu Boot Copier
Procesor Nios V i HAL zawierają program do kopiowania rozruchu, który zapewnia funkcjonalność wystarczającą dla większości aplikacji procesora Nios V i jest łatwy do wdrożenia w ramach procesu tworzenia oprogramowania Nios V.
Gdy aplikacja korzysta z kopiarki rozruchowej, ustawia wszystkie sekcje linkera (.text, .heap, .rwdata, .rodata, .bss, .stack) w wewnętrznej lub zewnętrznej pamięci RAM. Użycie kopiarki rozruchowej do skopiowania aplikacji procesora Nios V z pamięci flash rozruchowej do wewnętrznej lub zewnętrznej pamięci RAM w celu wykonania poprawia wydajność wykonywania.
W przypadku tej opcji rozruchu, procesor Nios V rozpoczyna uruchamianie oprogramowania kopiującego rozruch po zresetowaniu systemu. Oprogramowanie kopiuje aplikację z pamięci flash rozruchowej do wewnętrznej lub zewnętrznej pamięci RAM. Po zakończeniu procesu procesor Nios V przekazuje kontrolę nad programem aplikacji.
Notatka:
Jeśli kopiarka rozruchowa znajduje się w pamięci flash, nie ma potrzeby wywoływania funkcji alt_load(), ponieważ obie pełnią tę samą funkcję.
4.4.2.1. Bootloader procesora Nios V przez ogólny interfejs szeregowy Flash
Bootloader przez GSFI to kopiarka rozruchowa procesora Nios V, która obsługuje pamięć flash QSPI w urządzeniach opartych na blokach sterowania. Bootloader przez GSFI zawiera następujące funkcje:
· Lokalizuje aplikację programową w pamięci nieulotnej.
· Rozpakowuje i kopiuje obraz aplikacji programowej do pamięci RAM.
· Automatycznie przełącza wykonywanie procesora na kod aplikacji w pamięci RAM po zakończeniu kopiowania.
Podręcznik projektowania procesorów wbudowanych Nios® V 52
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Obraz rozruchowy znajduje się tuż za kopiarką rozruchową. Należy upewnić się, że przesunięcie resetu procesora Nios V wskazuje początek kopiarki rozruchowej. Rysunek: Mapa pamięci dla pamięci flash QSPI z bootloaderem przez GSFI. Mapa pamięci dla pamięci flash QSPI z bootloaderem przez GSFI przedstawia mapę pamięci flash dla pamięci flash QSPI podczas korzystania z kopiarki rozruchowej. Mapa pamięci zakłada, że pamięć flash przechowuje obraz FPGA i oprogramowanie aplikacji.
Tabela 32. Bootloader przez GSFI dla rdzenia procesora Nios V
Rdzeń procesora Nios V
Procesor Nios V/m
Bootloader przez GSFI File Lokalizacja
/niosv/components/bootloader/ niosv_m_bootloader.srec
Procesor Nios V/g
/niosv/components/bootloader/ niosv_g_bootloader.srec
Rysunek 29. Mapa pamięci flash QSPI z bootloaderem przez GSFI
Dane klienta (*.hex)
Kod aplikacji
Notatka:
Resetuj przesunięcie wektora
Kopiarka rozruchowa
0x01E00000
Obraz FPGA (*.sof)
0x00000000
1. Na początku mapy pamięci znajduje się obraz FPGA, po którym następują dane składające się z kodu programu kopiującego i kodu aplikacji.
2. Musisz ustawić przesunięcie resetu procesora Nios V w Platform Designer i wskazać początek kopiarki rozruchowej.
3. Rozmiar obrazu FPGA jest nieznany. Dokładny rozmiar można poznać dopiero po kompilacji projektu Quartus Prime. Należy określić górną granicę rozmiaru obrazu FPGA Altera. Na przykładampnp. jeśli rozmiar obrazu FPGA szacuje się na mniejszy niż 0x01E00000, należy ustawić Reset Offset na 0x01E00000 w Platform Designer. Jest to również początek kopiarki rozruchowej.
4. Dobrą praktyką projektową jest ustawienie przesunięcia wektora resetowania na granicy sektora pamięci flash, aby mieć pewność, że w przypadku aktualizacji aplikacji programowej nie nastąpi częściowe usunięcie obrazu FPGA.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 53
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
4.4.2.2. Bootloader procesora Nios V za pośrednictwem Menedżera urządzeń zabezpieczonych
Bootloader za pośrednictwem Secure Device Manager (SDM) to kod aplikacji HAL wykorzystujący sterownik HAL FPGA IP Altera Mailbox Client do rozruchu procesora. Firma Altera zaleca tę aplikację bootloadera podczas korzystania z pamięci flash konfiguracyjnej QSPI w urządzeniach opartych na SDM do rozruchu procesora Nios V.
Po zresetowaniu systemu procesor Nios V najpierw uruchamia Bootloader za pomocą SDM z niewielkiej pamięci wbudowanej w układ, a następnie wykonuje Bootloader za pomocą SDM, aby nawiązać komunikację z pamięcią flash QSPI konfiguracji przy użyciu adresu IP klienta skrzynki pocztowej.
Bootloader za pośrednictwem SDM wykonuje następujące zadania: · Lokalizuje oprogramowanie Nios V w pamięci flash konfiguracyjnej QSPI. · Kopiuje oprogramowanie Nios V do pamięci RAM na chipie lub zewnętrznej pamięci RAM. · Przełącza wykonywanie procesora na oprogramowanie Nios V w pamięci RAM na chipie lub zewnętrznej pamięci RAM.
pamięć RAM zewnętrzna.
Po zakończeniu procesu, Bootloader poprzez SDM przekazuje kontrolę nad programem aplikacji użytkownika. Altera zaleca organizację pamięci zgodnie z opisem w dokumencie Organizacja pamięci dla Bootloadera poprzez SDM.
Rysunek 30. Bootloader za pośrednictwem przepływu procesu SDM
Konfiguracja
Błysk
2
Oprogramowanie Nios V
SDM
Urządzenie FPGA oparte na SDM
Adres IP klienta skrzynki pocztowej
Logika FPGA Nios V
4 Zewnętrzna pamięć RAM
Oprogramowanie Nios V
Na chipie 4
EMIF
BARAN
Pamięć na chipie
IP
Nios V
1
Oprogramowanie
Bootloader przez SDM
3
3
1. Procesor Nios V uruchamia Bootloader za pośrednictwem SDM z pamięci wbudowanej w układ.
2. Bootloader poprzez SDM komunikuje się z pamięcią flash konfiguracyjną i lokalizuje oprogramowanie Nios V.
3. Bootloader za pomocą SDM kopiuje oprogramowanie Nios V z pamięci Flash konfiguracyjnej do pamięci RAM w układzie scalonym / pamięci RAM zewnętrznej.
4. Bootloader za pośrednictwem SDM przełącza wykonywanie operacji procesora Nios V na oprogramowanie Nios V w pamięci RAM na chipie/pamięci zewnętrznej.
4.4.3. Aplikacja procesora Nios V wykonywana na miejscu z pamięci OCRAM
W tej metodzie adres resetu procesora Nios V jest ustawiany na adres bazowy pamięci wbudowanej (OCRAM). Plik binarny aplikacji (.hex) file jest ładowany do pamięci OCRAM podczas konfiguracji układu FPGA, po skompilowaniu projektu sprzętowego w oprogramowaniu Quartus Prime. Po zresetowaniu procesora Nios V aplikacja rozpoczyna działanie i przechodzi do punktu wejścia.
Podręcznik projektowania procesorów wbudowanych Nios® V 54
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Notatka:
· Funkcja Execute-In-Place z OCRAM nie wymaga kopiarki rozruchowej, ponieważ aplikacja procesora Nios V jest już uruchomiona podczas resetowania systemu.
· Firma Altera zaleca włączenie opcji alt_load() dla tej metody rozruchu, dzięki czemu oprogramowanie wbudowane będzie zachowywać się identycznie po zresetowaniu, bez konieczności ponownej konfiguracji obrazu urządzenia FPGA.
· Aby skopiować sekcję .rwdata po zresetowaniu systemu, należy włączyć funkcję alt_load() w ustawieniach BSP. W tej metodzie wartości początkowe zmiennych inicjowanych są przechowywane oddzielnie od odpowiadających im zmiennych, aby uniknąć nadpisania podczas wykonywania programu.
4.4.4. Aplikacja procesora Nios V wykonywana na miejscu z TCM
Metoda „execute-in-place” ustawia adres resetowania procesora Nios V na adres bazowy ściśle sprzężonej pamięci (TCM). Plik binarny aplikacji (.hex) file jest ładowany do TCM podczas konfiguracji układu FPGA po skompilowaniu projektu sprzętowego w oprogramowaniu Quartus Prime. Po zresetowaniu procesora Nios V aplikacja rozpoczyna działanie i przechodzi do punktu wejścia.
Notatka:
Funkcja Execute-In-Place z poziomu TCM nie wymaga programu kopiującego rozruch, ponieważ aplikacja procesora Nios V jest już uruchomiona podczas resetowania systemu.
4.5. Uruchamianie procesora Nios V z pamięci flash na chipie (UFM)
Procesor Nios V umożliwia rozruch i uruchamianie oprogramowania z pamięci flash na chipie (UFM) w urządzeniach FPGA MAX 10. Procesor Nios V obsługuje dwie następujące opcje rozruchu z pamięci flash na chipie w trybie konfiguracji wewnętrznej:
· Aplikacja procesora Nios V jest wykonywana na miejscu z pamięci Flash na chipie.
· Aplikacja procesora Nios V jest kopiowana z pamięci Flash na chipie do pamięci RAM za pomocą kopiarki rozruchowej.
Tabela 33. Obsługiwane pamięci flash z odpowiednimi opcjami rozruchu
Obsługiwane pamięci rozruchowe
Metody rozruchu Nios V
Lokalizacja środowiska wykonawczego aplikacji
Kopiarka rozruchowa
Tylko MAX 10 urządzeń (z OnChip Flash IP)
Aplikacja procesora Nios V wykonywana na miejscu z pamięci Flash na chipie
Skopiowanie aplikacji procesora Nios V z pamięci Flash na chipie do pamięci RAM za pomocą kopiarki rozruchowej
Pamięć Flash na chipie (XIP) + OCRAM/ pamięć zewnętrzna RAM (dla zapisywalnych sekcji danych)
funkcja alt_load()
OCRAM/zewnętrzna pamięć RAM
Ponowne użycie Bootloadera za pomocą GSFI
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 55
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Rysunek 31.
Projekt, konfiguracja i przepływ rozruchu
Projekt · Utwórz projekt oparty na procesorze Nios V za pomocą Platform Designer. · Upewnij się, że w projekcie systemu uwzględniono pamięć RAM zewnętrzną lub wbudowaną.
Konfiguracja i kompilacja FPGA
· Ustaw ten sam tryb konfiguracji wewnętrznej w On-chip Flash IP w Platform Designer i oprogramowaniu Quartus Prime. · Ustaw agenta resetowania procesora Nios V na On-chip Flash. · Wybierz preferowaną metodę inicjalizacji UFM. · Wygeneruj swój projekt w Platform Designer. · Skompiluj swój projekt w oprogramowaniu Quartus Prime.
Projekt BSP aplikacji użytkownika · Utwórz HAL BSP procesora Nios V w oparciu o .sopcinfo file Utworzone przez Platform Designer. · Edytuj ustawienia BSP procesora Nios V i skrypt linkera w edytorze BSP. · Wygeneruj projekt BSP.
Projekt aplikacji użytkownika · Opracowanie kodu aplikacji procesora Nios V. · Kompilacja aplikacji procesora Nios V i wygenerowanie aplikacji procesora Nios V (.hex) file. · Skompiluj ponownie swój projekt w oprogramowaniu Quartus Prime, jeśli zaznaczona jest opcja Inicjuj zawartość pamięci w Intel FPGA On-Chip Flash IP.
Programowanie FileKonwersja, pobieranie i uruchamianie · Wygeneruj plik Flash On-Chip .pof file korzystanie z programowania konwertującego FileFunkcja s w oprogramowaniu Quartus Prime.
· Zaprogramuj plik .pof file do urządzenia MAX 10. · Wyłącz i włącz sprzęt.
4.5.1. Opis pamięci Flash na chipie FPGA MAX 10
Urządzenia FPGA MAX 10 zawierają pamięć flash na chipie podzieloną na dwie części: · Pamięć flash konfiguracyjna (CFM) — przechowuje dane konfiguracji sprzętowej
Maksymalnie 10 układów FPGA. · Pamięć flash użytkownika (UFM) — przechowuje dane użytkownika lub aplikacje programowe.
Architektura UFM urządzenia MAX 10 to połączenie programowych i twardych adresów IP. Dostęp do UFM jest możliwy wyłącznie za pomocą rdzenia IP On-Chip Flash w oprogramowaniu Quartus Prime.
Rdzeń IP pamięci Flash On-chip obsługuje następujące funkcje: · Odczyt i zapis dostępu do sektorów UFM i CFM (jeśli włączono w Projektancie Platformy)
wykorzystując interfejs podrzędny danych i sterowania Avalon MM. · Obsługuje usuwanie stron, usuwanie sektorów i zapis sektorów. · Model symulacyjny dostępu do odczytu/zapisu UFM przy użyciu różnych narzędzi symulacyjnych EDA.
Podręcznik projektowania procesorów wbudowanych Nios® V 56
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Tabela 34. Obszary pamięci Flash na chipie w urządzeniach FPGA MAX 10
Regiony Flash
Funkcjonalność
Konfiguracja pamięci flash (sektory CFM0-2)
Konfiguracja FPGA file składowanie
Pamięć flash użytkownika (sektory UFM0-1)
Aplikacja procesora Nios V i dane użytkownika
Urządzenia FPGA MAX 10 obsługują kilka trybów konfiguracji, a niektóre z nich pozwalają na użycie CFM1 i CFM2 jako dodatkowego obszaru UFM. Poniższa tabela przedstawia lokalizację przechowywania obrazów konfiguracji FPGA w oparciu o tryby konfiguracji układu FPGA MAX 10.
Tabela 35. Lokalizacja przechowywania obrazów konfiguracji FPGA
Tryb konfiguracji Podwójnie skompresowane obrazy
Skompresowany obraz CFM2 2
1 CFM
Skompresowany obraz CFM0 1
Pojedynczy nieskompresowany obraz
Wirtualny UFM
Nieskompresowany obraz
Pojedynczy nieskompresowany obraz z inicjalizacją pamięci
Obraz nieskompresowany (z wstępnie zainicjowaną zawartością pamięci na chipie)
Pojedynczy skompresowany obraz z inicjalizacją pamięci Skompresowany obraz (z wstępnie zainicjowaną zawartością pamięci na chipie)
Pojedynczy skompresowany obraz
Wirtualny UFM
Skompresowany obraz
Aby uzyskać dostęp do pamięci flash w układach FPGA MAX 10, należy użyć rdzenia IP Flash On-chip. Można utworzyć instancję i połączyć IP Flash On-chip z oprogramowaniem Quartus Prime. Procesor Nios V Soft Core wykorzystuje połączenia Platform Designer do komunikacji z IP Flash On-chip.
Rysunek 32. Połączenie między pamięcią Flash na chipie a procesorem Nios V
Notatka:
Upewnij się, że port CSR pamięci Flash na chipie jest podłączony do menedżera danych procesora Nios V, aby umożliwić procesorowi kontrolowanie operacji zapisu i kasowania.
Rdzeń IP pamięci Flash na chipie umożliwia dostęp do pięciu sektorów pamięci flash – UFM0, UFM1, CFM0, CFM1 i CFM2.
Ważne informacje o sektorach UFM i CFM: · Sektory CFM przeznaczone są do przechowywania danych konfiguracyjnych (strumienia bitów) (*.pof).
· Dane użytkownika mogą być przechowywane w sektorach UFM i mogą być ukryte, jeśli w narzędziu Platform Designer zostaną wybrane prawidłowe ustawienia.
· Niektóre urządzenia nie mają sektora UFM1. Informacje na temat dostępnych sektorów w poszczególnych urządzeniach FPGA MAX 10 można znaleźć w tabeli: Rozmiar sektora UFM i CFM.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 57
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
· Można skonfigurować CFM2 jako wirtualny UFM, wybierając tryb konfiguracji Pojedynczy nieskompresowany obraz.
· Można skonfigurować CFM2 i CFM1 jako wirtualny UFM, wybierając tryb konfiguracji Pojedynczy nieskompresowany obraz.
· Rozmiar każdego sektora zmienia się w zależności od wybranych urządzeń FPGA MAX 10.
Tabela 36.
Wielkość sektora UFM i CFM
W tej tabeli wymieniono wymiary tablic UFM i CFM.
Urządzenie
Strony na sektor
UFM1 UFM0 CFM2 CFM1 CFM0
Rozmiar strony (kbit)
Maksymalna liczba użytkowników
Rozmiar pamięci flash (kbit) (3)
Całkowity rozmiar pamięci konfiguracyjnej (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
Rozmiar OCRAM (kbit)
108 189 378 549 675 1260 1638
Powiązane informacje · Instrukcja użytkownika konfiguracji FPGA MAX 10 · Instrukcja użytkownika pamięci flash użytkownika Altera MAX 10
4.5.2. Aplikacja procesora Nios V wykonywana na miejscu z UFM
Rozwiązanie Execute-In-Place firmy UFM jest odpowiednie dla aplikacji z procesorem Nios V, które wymagają ograniczonego wykorzystania pamięci wbudowanej. Funkcja alt_load() działa jak minikopiarka rozruchowa, kopiując sekcje danych (.rodata, .rwdata lub .exceptions) z pamięci rozruchowej do pamięci RAM w oparciu o ustawienia BSP. Sekcja kodu (.text)
Sekcja tylko do odczytu, która pozostaje w obszarze pamięci flash MAX 10 On-chip. Taka konfiguracja minimalizuje wykorzystanie pamięci RAM, ale może ograniczyć wydajność wykonywania kodu, ponieważ dostęp do pamięci flash jest wolniejszy niż do pamięci RAM na chipie.
Aplikacja procesora Nios V jest zaprogramowana w sektorze UFM. Wektor resetu procesora Nios V wskazuje na adres bazowy UFM, aby wykonać kod z UFM po zresetowaniu systemu.
Jeśli używasz debugera na poziomie źródła do debugowania aplikacji, musisz użyć sprzętowego punktu przerwania. Wynika to z faktu, że UFM nie obsługuje losowego dostępu do pamięci, który jest niezbędny do debugowania z użyciem miękkiego punktu przerwania.
Notatka:
Nie można wymazać ani zapisać UFM podczas wykonywania operacji w miejscu w systemie MAX 10. Jeśli musisz wymazać lub zapisać UFM, przełącz się na tryb kopiowania rozruchowego.
(3) Maksymalna możliwa wartość, która zależy od wybranego trybu konfiguracji.
Podręcznik projektowania procesorów wbudowanych Nios® V 58
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Rysunek 33. Aplikacja XIP procesora Nios V z UFM
Maksymalnie 10 urządzeń
.POF
Sprzęt Nios V .SOF
Oprogramowanie Nios V .HEX
Programista Quartus
Pamięć Flash na chipie
CFM
Sprzęt Nios V
UFM
Oprogramowanie Nios V
Konfiguracja wewnętrzna
Pamięć Flash na chipie IP
Logika FPGA
Procesor Nios V
Pamięć RAM na chipie
Zewnętrzny
BARAN
EMIF
IP
4.5.2.1. Przepływ projektowania sprzętu
W poniższej sekcji opisano krok po kroku metodę budowy systemu rozruchowego dla aplikacji procesora Nios V z pamięci Flash na chipie.ampPoniższy rysunek został stworzony przy użyciu urządzenia MAX 10.
Ustawienia komponentu IP
1. Utwórz projekt procesora Nios V za pomocą Quartus Prime i Platform Designer. 2. Upewnij się, że do platformy dodano pamięć zewnętrzną RAM lub pamięć wbudowaną (OCRAM).
System projektanta.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 59
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Rysunek 34. ExampPołączenia IP w programie Platform Designer do uruchamiania systemu Nios V z pamięci flash OnChip (UFM)
3. W edytorze parametrów IP pamięci Flash na chipie ustaw tryb konfiguracji na jeden z następujących, zgodnie z preferencjami projektu: · Pojedynczy nieskompresowany obraz · Pojedynczy skompresowany obraz · Pojedynczy nieskompresowany obraz z inicjalizacją pamięci · Pojedynczy skompresowany obraz z inicjalizacją pamięci
Więcej informacji na temat obrazów z podwójną kompresją można znaleźć w Podręczniku użytkownika konfiguracji FPGA MAX 10 – Zdalna aktualizacja systemu.
Notatka:
Musisz przypisać Ukryty Dostęp do każdego regionu CFM w adresie IP pamięci Flash na chipie.
Rysunek 35. Wybór trybu konfiguracji w edytorze parametrów pamięci flash na chipie
Ustawienia IP pamięci Flash na chipie – inicjalizacja UFM Możesz wybrać jedną z następujących metod, zależnie od swoich preferencji:
Podręcznik projektowania procesorów wbudowanych Nios® V 60
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Notatka:
Kroki opisane w kolejnych podrozdziałach (Proces projektowania oprogramowania i programowanie) zależą od dokonanego tutaj wyboru.
· Metoda 1: Zainicjuj dane UFM w SOF podczas kompilacji
Quartus Prime uwzględnia dane inicjalizacyjne UFM w pliku SOF podczas kompilacji. Ponowna kompilacja pliku SOF jest konieczna w przypadku zmian w danych UFM.
1. Zaznacz opcję Zainicjuj zawartość Flash i Włącz inicjalizację inną niż domyślna file.
Rysunek 36. Inicjalizacja zawartości pamięci Flash i włączenie inicjalizacji innej niż domyślna File
2. Określ ścieżkę wygenerowanego pliku .hex file (z polecenia elf2hex) w utworzonym przez użytkownika pliku hex lub mif file.
Rysunek 37. Dodawanie pliku .hex File Ścieżka
· Metoda 2: Łączenie danych UFM z skompilowanym obrazem SOF podczas generowania obrazu POF
Dane UFM są łączone z kompilowanym SOF podczas konwersji programowania files. Nie musisz rekompilować pliku SOF, nawet jeśli dane UFM ulegną zmianie. Podczas tworzenia nie musisz rekompilować pliku SOF. files do wprowadzania zmian w aplikacji. Altera zaleca tę metodę programistom aplikacji.
1. Odznacz opcję Zainicjuj zawartość Flash.
Rysunek 38. Inicjalizacja zawartości Flash z inicjalizacją inną niż domyślna File
Resetowanie ustawień agenta dla procesora Nios V Metoda wykonywania na miejscu
1. W edytorze parametrów procesora Nios V ustaw opcję Reset Agent na On-Chip Flash.
Rysunek 39. Ustawienia edytora parametrów procesora Nios V z agentem resetowania ustawionym na pamięć flash na chipie
2. Kliknij przycisk Generuj HDL, gdy pojawi się okno dialogowe Generowanie. 3. Określ dane wyjściowe file opcje generacji i kliknij Generuj.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 61
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 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. Kliknij przycisk OK, aby zamknąć okno Opcje urządzenia i kodu PIN.
3. Kliknij OK, aby zamknąć okno Urządzenie.
4. Click Processing Start Compilation to compile your project and generate the .sof file.
Notatka:
Jeśli ustawienia trybu konfiguracji w oprogramowaniu Quartus Prime i edytorze parametrów Platform Designer są różne, projekt Quartus Prime kończy się niepowodzeniem i pojawia się poniższy komunikat o błędzie.
Rysunek 41.
Komunikat o błędzie dla innego ustawienia trybu konfiguracji (14740): Tryb konfiguracji w atomie „q_sys:q_sys_inst| altera_onchip_flash:onchip_flash_1|altera_onchip_flash_block: altera_onchip_flash_block|ufm_block” nie jest zgodny z ustawieniami projektu. Zaktualizuj i zregeneruj system Qsys, aby dopasować go do ustawień projektu.
Informacje powiązane Instrukcja konfiguracji FPGA MAX 10
4.5.2.2. Przepływ projektowania oprogramowania
W tej sekcji przedstawiono schemat procesu projektowania, który ma na celu wygenerowanie i zbudowanie projektu oprogramowania procesora Nios V. Aby zapewnić usprawniony proces, zachęcamy do utworzenia podobnego drzewa katalogów w projekcie. Poniższy schemat procesu projektowania oprogramowania jest oparty na tym drzewie katalogów.
Aby utworzyć drzewo katalogów projektu oprogramowania, wykonaj następujące kroki: 1. W folderze projektu utwórz folder o nazwie software. 2. W folderze software utwórz dwa foldery o nazwach hal_app i hal_bsp.
Rysunek 42. Drzewo katalogów projektów oprogramowania
Podręcznik projektowania procesorów wbudowanych Nios® V 62
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Tworzenie projektu aplikacji BSP
Aby uruchomić edytor BSP, wykonaj następujące kroki: 1. Otwórz powłokę poleceń Nios V. 2. Uruchom edytor BSP za pomocą polecenia niosv-bsp-editor. 3. W edytorze BSP kliknij File Nowy BSP, aby rozpocząć projekt BSP. 4. Skonfiguruj następujące ustawienia:
· Informacje SOPC File nazwa: Podaj SOPCINFO file (.sopcinfo). · Nazwa procesora: Wybierz procesor Nios V. · System operacyjny: Wybierz system operacyjny procesora Nios V. · Wersja: Pozostaw domyślną. · Katalog docelowy BSP: Wybierz ścieżkę do katalogu projektu BSP. Możesz
ustaw to wstępnie na /software/hal_bsp, włączając opcję Użyj domyślnych lokalizacji. · Ustawienia BSP File nazwa: Wpisz nazwę ustawień BSP File. · Dodatkowe skrypty Tcl: Udostępnij skrypt BSP Tcl, włączając opcję Włącz dodatkowy skrypt Tcl. 5. Kliknij przycisk OK.
Rysunek 43. Konfigurowanie nowego BSP
Konfigurowanie edytora BSP i generowanie projektu BSP
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. Włącz następujące ustawienia:
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 63
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
· allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata Rysunek 44. Ustawienia Advanced.hal.linker
b. Kliknij kartę Skrypt linkera w edytorze BSP. c. Ustaw regiony .exceptions i .text w polu Nazwa sekcji linkera na
Pamięć Flash na chipie. d. Ustaw pozostałe regiony na liście nazw sekcji linkera na pamięć Flash na chipie.
Pamięć (OCRAM) lub pamięć zewnętrzna RAM.
Rysunek 45. Ustawienia regionu łącza (pamięć wektora wyjątku: pamięć Flash na chipie)
3. Jeśli wybierzesz OCRAM/zewnętrzną pamięć RAM jako wektor wyjątku, a. Włącz następujące ustawienia: · allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata · enable_alt_load_copy_exception
Rysunek 46. Ustawienia regionu linkera (pamięć wektora wyjątku: OCRAM/zewnętrzna pamięć RAM)
b. Kliknij kartę Skrypt linkera w edytorze BSP.
c. Ustaw regiony .text w sekcji Linker na On-Chip Flash.
d. Ustaw pozostałe regiony na liście nazw sekcji linkera na pamięć On-Chip (OCRAM) lub pamięć zewnętrzną RAM.
Podręcznik projektowania procesorów wbudowanych Nios® V 64
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Rysunek 47. Ustawienia regionu linkera (pamięć wektora wyjątku: OCRAM)
4. Kliknij „Generuj”, aby wygenerować projekt BSP. Generowanie projektu aplikacji użytkownika File 1. Przejdź do folderu software/hal_app i utwórz kod źródłowy aplikacji
kod. 2. Uruchom powłokę poleceń Nios V. 3. Wykonaj poniższe polecenie, aby wygenerować aplikację CMakeLists.txt.
niosv-app –app-dir=software/hal_app –bsp-dir=software/hal_bsp –srcs=software/hal_app/<user application>
Budowanie projektu aplikacji użytkownika Możesz zbudować projekt aplikacji użytkownika za pomocą środowiska programistycznego Ashling RiscFree IDE dla układów FPGA Altera lub za pomocą interfejsu wiersza poleceń (CLI). Jeśli wolisz korzystać z CLI, możesz zbudować aplikację użytkownika za pomocą następującego polecenia: cmake -G „Unix Make”files” -B oprogramowanie/hal_app/build -S oprogramowanie/hal_app make -C oprogramowanie/hal_app/build
Aplikacja (.elf) file jest tworzony w folderze software/hal_app/build. Generowanie pliku HEX File Musisz wygenerować plik .hex file z Twojej aplikacji .elf file, więc możesz utworzyć plik .pof file odpowiednie do programowania urządzeń. 1. Uruchom powłokę poleceń Nios V. 2. Aby uruchomić aplikację procesora Nios V z pamięci flash na chipie, użyj następującego polecenia:
wiersz poleceń, aby przekonwertować ELF na HEX dla Twojej aplikacji. To polecenie tworzy aplikację użytkownika (onchip_flash.hex). file. oprogramowanie elf2hex/hal_app/build/ .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.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 65
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
4.5.2.3. Programowanie 1. W Quartus Prime kliknij File Konwertuj programowanie Files. 2. W ramach programowania wyjściowego file, wybierz Obiekt programisty File (.pof) jako programowanie file typ. 3. Ustaw Tryb na Konfiguracja wewnętrzna.
Rysunek 48. Programowanie konwersji File Ustawienia
4. Kliknij Opcje/Informacje o rozruchu…, pojawi się okno Opcje urządzenia MAX 10. 5. Na podstawie ustawień Inicjuj zawartość flash w adresie IP pamięci flash na chipie wykonaj
jeden z następujących kroków: · Jeżeli zaznaczona jest opcja Zainicjuj zawartość pamięci flash (Metoda 1), dane inicjalizacji UFM
został uwzględniony w SOF podczas kompilacji Quartus Prime. — Wybierz opcję Strona_0 dla źródła UFM. Kliknij OK i przejdź do
dalej. Rysunek 49. Ustawianie strony Page_0 dla źródła UFM, jeśli zaznaczona jest opcja Inicjuj zawartość Flash
Podręcznik projektowania procesorów wbudowanych Nios® V 66
Wyślij opinię
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
· Jeżeli opcja Zainicjuj zawartość flash nie jest zaznaczona (Metoda 2), wybierz opcję Załaduj pamięć file dla opcji źródła UFM. Przejdź do wygenerowanego pliku HEX pamięci Flash na chipie. file (onchip_flash.hex) w File ścieżka: i kliknij OK. Ten krok dodaje dane UFM oddzielnie do SOF. file podczas programowania file konwersja.
Rysunek 50. Ustawianie pamięci obciążenia File dla źródła UFM, jeśli opcja Zainicjuj zawartość Flash nie jest zaznaczona
6. W programie Convert File okno dialogowe, w polu wprowadzania fileAby przekonwertować sekcję, kliknij Dodaj File… i wskaż wygenerowany plik Quartus Prime .sof file.
Rysunek 51. Dane wejściowe Files do konwersji w programowaniu konwersji Files dla trybu pojedynczego obrazu
7. Kliknij Generuj, aby utworzyć plik .pof file8. Zaprogramuj plik .pof file do urządzenia MAX 10. 9. Wyłącz i włącz sprzęt.
4.5.3. Skopiowanie aplikacji procesora Nios V z UFM do pamięci RAM za pomocą Boot Copier
Altera zaleca to rozwiązanie w projektach systemów procesorowych MAX 10 FPGA Nios V, w których wymagane są wielokrotne iteracje tworzenia oprogramowania aplikacyjnego i wysoka wydajność systemu. Moduł kopiujący rozruch znajduje się w module UFM pod adresem o tym samym adresie co wektor resetu. Aplikacja Nios V znajduje się obok modułu kopiującego rozruch.
W przypadku tej opcji rozruchu procesor Nios V uruchamia kopiarkę rozruchu po zresetowaniu systemu, aby skopiować aplikację z sektora UFM do pamięci OCRAM lub zewnętrznej pamięci RAM. Po zakończeniu kopiowania procesor Nios V przekazuje kontrolę nad programem aplikacji.
Notatka:
Zastosowany program kopiujący boot jest taki sam jak program ładujący bootloader za pośrednictwem GSFI.
Wyślij opinię
Podręcznik projektowania procesorów wbudowanych Nios® V 67
4. Konfiguracja procesora Nios V i rozwiązania rozruchowe 726952 | 2025.07.16
Rysunek 52. Aplikacja Nios V skopiowana z UFM do pamięci RAM za pomocą Boot Copier
Maksymalnie 10 urządzeń
.POF
Sprzęt Nios V .SOF
Oprogramowanie Nios V .HEX
Bootloader .SREC
Programista Quartus
Zewnętrzna pamięć RAM
Oprogramowanie Nios V
Pamięć Flash na chipie
CFM
Nios V Hardwa
Dokumenty / Zasoby
![]() |
Altera Nios V Embedded Processor [plik PDF] Instrukcja użytkownika Nios V, Nios Vm, Nios Vg, Nios Vc, Procesor wbudowany Nios V, Nios V, Procesor wbudowany, Procesor |