altera Nios V Embedded Processor
Spesifikasi
- Nama Produk: Prosesor Nios V
- Software Compatibility: Quartus Prime Software and Platform Designer
- Tipe Prosesor: Altera FPGA
- Sistem Memori: Memori Volatil dan Non-Volatil
- Antarmuka Komunikasi: Agen 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.
- Integrasikan sistem ke dalam proyek Quartus Prime.
- Design memory system including volatile and non-volatile memory.
- Terapkan praktik terbaik jam dan pengaturan ulang.
- Tetapkan agen default dan UART untuk operasi yang efisien.
Nios V Processor Software System Design
Untuk merancang sistem perangkat lunak untuk Prosesor Nios V:
- Ikuti alur pengembangan perangkat lunak untuk Prosesor Nios V.
- Create Board Support Package Project and Application Project.
Nios V Processor Configuration and Booting Solutions
Untuk mengonfigurasi dan mem-boot Prosesor Nios V:
- Understand the introduction to configuration and booting solutions.
- Hubungkan aplikasi untuk pengoperasian yang lancar.
About the Nios® V Embedded Processor
1.1. Altera® FPGA dan Prosesor Tertanamview
Perangkat FPGA Altera dapat mengimplementasikan logika yang berfungsi sebagai mikroprosesor lengkap sekaligus menyediakan banyak opsi.
Perbedaan penting antara mikroprosesor diskrit dan FPGA Altera adalah bahwa struktur FPGA Altera tidak mengandung logika saat dinyalakan. Prosesor Nios® V adalah prosesor kekayaan intelektual (IP) lunak yang berbasis pada spesifikasi RISC-V. Sebelum menjalankan perangkat lunak pada sistem berbasis prosesor Nios V, Anda harus mengonfigurasi perangkat FPGA Altera dengan desain perangkat keras yang berisi prosesor Nios V. Anda dapat menempatkan prosesor Nios V di mana saja pada FPGA Altera, tergantung pada persyaratan desain.
Untuk mengaktifkan sistem tertanam berbasis IP Altera® FPGA Anda agar berfungsi sebagai sistem berbasis mikroprosesor diskrit, sistem Anda harus menyertakan hal berikut: · AJTAG antarmuka untuk mendukung konfigurasi FPGA Altera, perangkat keras dan perangkat lunak
debugging · Mekanisme konfigurasi FPGA Altera power-up
Jika sistem Anda memiliki kemampuan ini, Anda dapat mulai menyempurnakan desain dari desain perangkat keras yang telah diuji coba sebelumnya yang dimuat dalam FPGA Altera. Menggunakan FPGA Altera juga memungkinkan Anda memodifikasi desain dengan cepat untuk mengatasi masalah atau menambahkan fungsionalitas baru. Anda dapat menguji desain perangkat keras baru ini dengan mudah dengan mengonfigurasi ulang FPGA Altera menggunakan J sistem Anda.TAG antarmuka.
JTAG Antarmuka mendukung pengembangan perangkat keras dan perangkat lunak. Anda dapat melakukan tugas-tugas berikut menggunakan JTAG antarmuka: · Konfigurasikan FPGA Altera · Unduh dan debug perangkat lunak · Berkomunikasi dengan FPGA Altera melalui antarmuka seperti UART (JTAG Bahasa Indonesia: UART
terminal) · Debug perangkat keras (dengan penganalisis logika tertanam Signal Tap) · Program memori flash
Setelah Anda mengonfigurasi Altera FPGA dengan desain berbasis prosesor Nios V, alur pengembangan perangkat lunak serupa dengan alur untuk desain mikrokontroler diskrit.
Informasi Terkait · AN 985: Tutorial Prosesor Nios V
Panduan cepat tentang pembuatan sistem prosesor Nios V sederhana dan menjalankan aplikasi Hello World.
© Altera Corporation. Altera, logo Altera, logo `a', dan merek Altera lainnya adalah merek dagang Altera Corporation. Altera berhak mengubah produk dan layanan kapan pun tanpa pemberitahuan. Altera tidak bertanggung jawab atau berkewajiban atas penerapan atau penggunaan informasi, produk, atau layanan apa pun yang dijelaskan di sini, kecuali sebagaimana disetujui secara tertulis oleh Altera. Pelanggan Altera disarankan untuk mendapatkan spesifikasi perangkat versi terbaru sebelum mengandalkan informasi yang dipublikasikan dan sebelum memesan produk atau layanan. *Nama dan merek lain dapat diklaim sebagai hak milik orang lain.
1. Tentang Prosesor Tertanam Nios® V 726952 | 2025.07.16 Juli XNUMX
· Manual Referensi Prosesor Nios V Menyediakan informasi tentang tolok ukur kinerja prosesor Nios V, arsitektur prosesor, model pemrograman, dan implementasi inti.
· Panduan Pengguna IP Periferal Tertanam · Buku Pegangan Pengembang Perangkat Lunak Prosesor Nios V
Menjelaskan lingkungan pengembangan perangkat lunak prosesor Nios V, perangkat yang tersedia, dan proses pembuatan perangkat lunak yang berjalan pada prosesor Nios V. · Panduan Pengguna Ashling* RiscFree* Integrated Development Environment (IDE) untuk Altera FPGA. Menjelaskan lingkungan pengembangan terintegrasi (IDE) RiscFree* untuk HPS berbasis Arm* pada Altera FPGA dan prosesor inti Nios V. · Catatan Rilis IP FPGA Altera untuk Prosesor Nios V.
1.2. Dukungan Perangkat Lunak Quartus® Prime
Alur pembuatan prosesor Nios V berbeda untuk perangkat lunak Quartus® Prime Pro Edition dan perangkat lunak Quartus Prime Standard Edition. Lihat AN 980: Dukungan Perangkat Lunak Prosesor Nios V Quartus Prime untuk informasi lebih lanjut tentang perbedaannya.
Informasi Terkait AN 980: Dukungan Perangkat Lunak Prosesor Nios V Quartus Prime
1.3. Lisensi Prosesor Nios V
Setiap varian prosesor Nios V memiliki kunci lisensinya masing-masing. Setelah mendapatkan kunci lisensi, Anda dapat menggunakan kunci lisensi yang sama untuk semua proyek prosesor Nios V hingga tanggal kedaluwarsa. Anda dapat memperoleh lisensi IP FPGA Altera untuk Prosesor Nios V tanpa biaya.
Daftar kunci lisensi prosesor Nios V tersedia di Pusat Lisensi Mandiri Altera FPGA. Klik tab "Daftar untuk Evaluasi" atau "Lisensi Gratis", lalu pilih opsi yang sesuai untuk mengajukan permintaan.
Gambar 1. Pusat Lisensi Swalayan Altera FPGA
Dengan kunci lisensi, Anda dapat:
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 7
1. Tentang Prosesor Tertanam Nios® V 726952 | 2025.07.16 Juli XNUMX
· Implementasikan prosesor Nios V di dalam sistem Anda. · Simulasikan perilaku sistem prosesor Nios V. · Verifikasi fungsionalitas desain, seperti ukuran dan kecepatan. · Hasilkan pemrograman perangkat. files. · Memprogram suatu perangkat dan memverifikasi desain dalam perangkat keras.
Anda tidak memerlukan lisensi untuk mengembangkan perangkat lunak di Ashling* RiscFree* IDE untuk Altera FPGA.
Informasi Terkait · Pusat Lisensi Swalayan Altera FPGA
Untuk informasi selengkapnya tentang cara mendapatkan kunci lisensi IP Altera FPGA Prosesor Nios V. · Instalasi dan Lisensi Perangkat Lunak Altera FPGA Untuk informasi selengkapnya tentang pemberian lisensi perangkat lunak Altera FPGA dan menyiapkan lisensi tetap serta server lisensi jaringan.
1.4. Desain Sistem Tertanam
Gambar berikut mengilustrasikan aliran desain sistem berbasis prosesor Nios V yang disederhanakan, termasuk pengembangan perangkat keras dan perangkat lunak.
Buku Pegangan Desain Prosesor Tertanam Nios® V 8
Kirim Masukan
1. Tentang Prosesor Tertanam Nios® V 726952 | 2025.07.16 Juli XNUMX
Gambar 2.
Alur Desain Sistem Prosesor Nios V
Konsep Sistem
Menganalisis Persyaratan Sistem
Nios® V
Inti Prosesor dan Komponen Standar
Definisikan dan Hasilkan Sistem di
Desainer Platform
Alur Perangkat Keras: Mengintegrasikan dan Mengompilasi Proyek Intel Quartus Prime
Alur Perangkat Lunak: Mengembangkan dan Membangun Perangkat Lunak Proposal Nios V
Alur Perangkat Keras: Unduh Desain FPGA
ke Papan Target
Alur Perangkat Lunak: Uji dan Debug Perangkat Lunak Prosesor Nios V
Perangkat Lunak Tidak Memenuhi Spesifikasi?
Ya
Perangkat Keras Tidak Memenuhi Spesifikasi? Ya
Sistem Lengkap
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 9
726952 | 2025.07.16 Kirim Umpan Balik
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
Gambar 3.
Diagram berikut mengilustrasikan desain perangkat keras prosesor Nios V yang umum. Alur Desain Perangkat Keras Sistem Prosesor Nios V
Awal
Inti Nios V dan Komponen Standar
Gunakan Platform Designer untuk Mendesain Sistem Berbasis Nios V
Hasilkan Desain Desainer Platform
Integrasikan Sistem Desainer Platform dengan Proyek Intel Quartus Prime
Tetapkan Lokasi Pin, Persyaratan Waktu, dan Kendala Desain Lainnya
Mengkompilasi Perangkat Keras untuk Perangkat Target di Intel Quartus Prime
Siap untuk Diunduh
2.1. Membuat Desain Sistem Prosesor Nios V dengan Platform Designer
Perangkat lunak Quartus Prime mencakup alat integrasi sistem Platform Designer yang menyederhanakan tugas mendefinisikan dan mengintegrasikan inti IP prosesor Nios V dan IP lainnya ke dalam desain sistem FPGA Altera. Platform Designer secara otomatis membuat logika interkoneksi dari konektivitas tingkat tinggi yang ditentukan. Otomatisasi interkoneksi menghilangkan tugas yang memakan waktu dalam menentukan koneksi HDL tingkat sistem.
© Altera Corporation. Altera, logo Altera, logo `a', dan merek Altera lainnya adalah merek dagang Altera Corporation. Altera berhak mengubah produk dan layanan kapan pun tanpa pemberitahuan. Altera tidak bertanggung jawab atau berkewajiban atas penerapan atau penggunaan informasi, produk, atau layanan apa pun yang dijelaskan di sini, kecuali sebagaimana disetujui secara tertulis oleh Altera. Pelanggan Altera disarankan untuk mendapatkan spesifikasi perangkat versi terbaru sebelum mengandalkan informasi yang dipublikasikan dan sebelum memesan produk atau layanan. *Nama dan merek lain dapat diklaim sebagai hak milik orang lain.
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Setelah menganalisis persyaratan perangkat keras sistem, Anda menggunakan Quartus Prime untuk menentukan inti prosesor Nios V, memori, dan komponen lain yang dibutuhkan sistem Anda. Platform Designer secara otomatis menghasilkan logika interkoneksi untuk mengintegrasikan komponen-komponen tersebut ke dalam sistem perangkat keras.
2.1.1. Membuat Instansi IP FPGA Altera untuk Prosesor Nios V
You can instantiate any of the processor IP cores in Platform Designer IP Catalog Processors and Peripherals Embedded Processors.
Inti IP setiap prosesor mendukung berbagai opsi konfigurasi berdasarkan arsitekturnya yang unik. Anda dapat menentukan konfigurasi ini agar lebih sesuai dengan kebutuhan desain Anda.
Tabel 1.
Opsi Konfigurasi di Seluruh Varian Inti
Opsi Konfigurasi
Prosesor Nios V/c
Prosesor Nios V/m
Permintaan Reset Penggunaan Debug
—
Perangkap, Pengecualian, dan Interupsi
Arsitektur CPU
ECC
Cache, Wilayah Perifer, dan TCM
—
—
Instruksi Khusus
—
—
Langkah kunci
—
—
Prosesor Nios V/g
2.1.1.1. Membuat Instansi IP FPGA Altera Mikrokontroler Kompak Nios V/c Gambar 4. IP FPGA Altera Mikrokontroler Kompak Nios V/c
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 11
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
2.1.1.1.1. Tab Arsitektur CPU
Tabel 2.
Tab Arsitektur CPU
Fitur
Keterangan
Aktifkan Antarmuka Avalon® Mengaktifkan Antarmuka Avalon untuk pengelola instruksi dan pengelola data. Jika dinonaktifkan, sistem akan menggunakan antarmuka AXI4-Lite.
nilai CSR mhartid
· Opsi IP tidak valid. · Jangan gunakan nilai CSR mhartid dalam prosesor Nios V/c.
2.1.1.1.2. Gunakan Tab Permintaan Reset
Tabel 3.
Gunakan Parameter Tab Permintaan Reset
Gunakan Tab Permintaan Reset
Keterangan
Tambahkan Antarmuka Permintaan Reset
· Aktifkan opsi ini untuk mengekspos port reset lokal tempat master lokal dapat menggunakannya untuk memicu prosesor Nios V untuk melakukan reset tanpa memengaruhi komponen lain dalam sistem prosesor Nios V.
· Antarmuka reset terdiri dari sinyal resetreq masukan dan sinyal ack keluaran.
· Anda dapat meminta pengaturan ulang pada inti prosesor Nios V dengan menggunakan sinyal resetreq.
· Sinyal resetreq harus tetap aktif hingga prosesor memberikan sinyal ack. Kegagalan sinyal untuk tetap aktif dapat menyebabkan prosesor berada dalam status non-deterministik.
· Prosesor Nios V merespons bahwa pengaturan ulang berhasil dengan menegaskan sinyal ack.
· Setelah prosesor berhasil direset, penegasan sinyal ack dapat terjadi beberapa kali secara berkala hingga pencabutan sinyal resetreq.
2.1.1.1.3. Tab Perangkap, Pengecualian, dan Interupsi
Tabel 4.
Parameter Tab Perangkap, Pengecualian, dan Interupsi
Perangkap, Pengecualian, dan Interupsi
Keterangan
Agen Reset
· Memori yang menampung vektor reset (alamat reset prosesor Nios V) tempat kode reset berada.
· Anda dapat memilih modul memori mana pun yang terhubung ke master instruksi prosesor Nios V dan didukung oleh aliran boot prosesor Nios V sebagai agen pengaturan ulang.
Setel Ulang Offset
· Menentukan offset vektor reset relatif terhadap alamat dasar agen reset yang dipilih. · Platform Designer secara otomatis menyediakan nilai default untuk offset reset.
Catatan:
Platform Designer menyediakan opsi Absolut, yang memungkinkan Anda menentukan alamat absolut di Reset Offset. Gunakan opsi ini ketika memori yang menyimpan vektor reset berada di luar sistem dan subsistem prosesor.
Buku Pegangan Desain Prosesor Tertanam Nios® V 12
Kirim Masukan
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
2.1.1.1.4. Tab ECC
Tabel 5.
Tab ECC
ECC
Aktifkan Deteksi Kesalahan dan Pelaporan Status
Keterangan
· Aktifkan opsi ini untuk menerapkan fitur ECC pada blok RAM internal prosesor Nios V. · Fitur ECC mendeteksi kesalahan hingga 2-bit dan bereaksi berdasarkan perilaku berikut:
— Jika kesalahan 1-bit tersebut dapat diperbaiki, prosesor akan terus beroperasi setelah kesalahan tersebut diperbaiki di jalur prosesor. Namun, koreksi tersebut tidak tercermin dalam memori sumber.
— Jika kesalahan tidak dapat diperbaiki, prosesor terus beroperasi tanpa memperbaikinya dalam jalur prosesor dan memori sumber, yang dapat menyebabkan prosesor memasuki status nondeterministik.
2.1.1.2. Instansiasi IP FPGA Mikrokontroler Nios V/m Altera Gambar 5. IP FPGA Mikrokontroler Nios V/m Altera
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 13
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
2.1.1.2.1. Tab Debug
Tabel 6.
Parameter Tab Debug
Tab Debug
Keterangan
Aktifkan Debug
Aktifkan Reset dari Modul Debug
· Aktifkan opsi ini untuk menambahkan JTAG modul koneksi target ke prosesor Nios V. · JTAG modul koneksi target memungkinkan koneksi ke prosesor Nios V melalui
JTAG pin antarmuka FPGA. Koneksi ini menyediakan kemampuan dasar berikut:
— Memulai dan menghentikan prosesor Nios V — Memeriksa dan mengedit register dan memori. — Mengunduh aplikasi Nios V .elf file ke memori prosesor saat runtime melalui
niosv-download. — Debug aplikasi yang berjalan pada prosesor Nios V · Hubungkan port dm_agent ke instruksi prosesor dan bus data. Pastikan alamat dasar antara kedua bus sama.
· Aktifkan opsi ini untuk mengekspos port dbg_reset_out dan ndm_reset_in. · JTAG debugger atau perintah niosv-download -r memicu dbg_reset_out, yang
memungkinkan prosesor Nios V untuk mengatur ulang periferal sistem yang terhubung ke port ini. · Anda harus menghubungkan antarmuka dbg_reset_out ke ndm_reset_in alih-alih reset
Antarmuka untuk memicu pengaturan ulang ke inti prosesor dan modul pengatur waktu. Anda tidak boleh menghubungkan antarmuka dbg_reset_out ke antarmuka pengaturan ulang untuk mencegah perilaku yang tidak pasti.
2.1.1.2.2. Gunakan Tab Permintaan Reset
Tabel 7.
Gunakan Parameter Tab Permintaan Reset
Gunakan Tab Permintaan Reset
Keterangan
Tambahkan Antarmuka Permintaan Reset
· Aktifkan opsi ini untuk mengekspos port reset lokal tempat master lokal dapat menggunakannya untuk memicu prosesor Nios V untuk melakukan reset tanpa memengaruhi komponen lain dalam sistem prosesor Nios V.
· Antarmuka reset terdiri dari sinyal resetreq masukan dan sinyal ack keluaran.
· Anda dapat meminta pengaturan ulang pada inti prosesor Nios V dengan menggunakan sinyal resetreq.
· Sinyal resetreq harus tetap aktif hingga prosesor memberikan sinyal ack. Kegagalan sinyal untuk tetap aktif dapat menyebabkan prosesor berada dalam status non-deterministik.
· Penegasan sinyal resetreq dalam mode debug tidak berpengaruh pada status prosesor.
· Prosesor Nios V merespons bahwa pengaturan ulang berhasil dengan menegaskan sinyal ack.
· Setelah prosesor berhasil direset, penegasan sinyal ack dapat terjadi beberapa kali secara berkala hingga pencabutan sinyal resetreq.
2.1.1.2.3. Tab Perangkap, Pengecualian, dan Interupsi
Tabel 8.
Tab Perangkap, Pengecualian, dan Interupsi
Tab Perangkap, Pengecualian, dan Interupsi
Keterangan
Agen Reset
· Memori yang menampung vektor reset (alamat reset prosesor Nios V) tempat kode reset berada.
· Anda dapat memilih modul memori mana pun yang terhubung ke master instruksi prosesor Nios V dan didukung oleh aliran boot prosesor Nios V sebagai agen pengaturan ulang.
Atur Ulang Mode Interupsi Offset
· Menentukan offset vektor reset relatif terhadap alamat dasar agen reset yang dipilih. · Platform Designer secara otomatis menyediakan nilai default untuk offset reset.
Tentukan jenis pengontrol interupsi, baik Langsung maupun Tervektor. Catatan: Prosesor Nios V/m non-pipelined tidak mendukung interupsi Tervektor.
Oleh karena itu, hindari penggunaan mode interupsi Vektor saat prosesor berada dalam mode Nonpipelined.
Buku Pegangan Desain Prosesor Tertanam Nios® V 14
Kirim Masukan
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Catatan:
Platform Designer menyediakan opsi Absolut, yang memungkinkan Anda menentukan alamat absolut di Reset Offset. Gunakan opsi ini ketika memori yang menyimpan vektor reset berada di luar sistem dan subsistem prosesor.
2.1.1.2.4. Arsitektur CPU
Tabel 9.
Parameter Tab Arsitektur CPU
Arsitektur CPU
Keterangan
Aktifkan Pipelining di CPU
· Aktifkan opsi ini untuk membuat instance prosesor Nios V/m yang menggunakan pipeline. — IPC lebih tinggi dengan biaya area logika yang lebih tinggi dan frekuensi Fmax yang lebih rendah.
· Nonaktifkan opsi ini untuk membuat instansiasi prosesor Nios V/m non-pipelin. — Memiliki kinerja inti yang serupa dengan prosesor Nios V/c. — Mendukung kemampuan debugging dan interupsi — Area logika yang lebih rendah dan frekuensi Fmax yang lebih tinggi dengan mengorbankan IPC yang lebih rendah.
Aktifkan Antarmuka Avalon
Mengaktifkan Antarmuka Avalon untuk manajer instruksi dan manajer data. Jika dinonaktifkan, sistem akan menggunakan antarmuka AXI4-Lite.
nilai CSR mhartid
· Nilai register ID Hart (mhartid) adalah 0 secara default. · Tetapkan nilai antara 0 dan 4094. · Kompatibel dengan Altera FPGA Avalon Mutex Core HAL API.
Panduan Pengguna IP Periferal Tertanam – Intel FPGA Avalon® Mutex Core
2.1.1.2.5. Tab ECC
Tabel 10. Tab ECC
ECC Mengaktifkan Deteksi Kesalahan dan Pelaporan Status
Keterangan
· Aktifkan opsi ini untuk menerapkan fitur ECC pada blok RAM internal prosesor Nios V. · Fitur ECC mendeteksi kesalahan hingga 2-bit dan bereaksi berdasarkan perilaku berikut:
— Jika kesalahan 1-bit tersebut dapat diperbaiki, prosesor akan terus beroperasi setelah kesalahan tersebut diperbaiki di jalur prosesor. Namun, koreksi tersebut tidak tercermin dalam memori sumber.
— Jika kesalahan tidak dapat diperbaiki, prosesor terus beroperasi tanpa memperbaikinya dalam jalur prosesor dan memori sumber, yang dapat menyebabkan prosesor memasuki status nondeterministik.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 15
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
2.1.1.3. Membuat Instansi Prosesor Tujuan Umum Nios V/g Altera FPGA IP
Gambar 6. Prosesor Tujuan Umum Nios V/g Altera FPGA IP – Bagian 1
Gambar 7.
Prosesor Tujuan Umum Nios V/g Altera FPGA IP – Bagian 2 (Nonaktifkan dan Aktifkan Pengontrol Interupsi Tingkat Inti)
Buku Pegangan Desain Prosesor Tertanam Nios® V 16
Kirim Masukan
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Gambar 8.
Prosesor Tujuan Umum Nios V/g Altera FPGA IP – Bagian 2 (Aktifkan, Aktifkan, Pengontrol Interupsi Tingkat Inti)
Gambar 9. Prosesor Tujuan Umum Nios V/g Altera FPGA IP – Bagian 3
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 17
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Gambar 10. Prosesor Tujuan Umum Nios V/g Altera FPGA IP – Bagian 4
2.1.1.3.1. Arsitektur CPU
Tabel 11. Parameter Arsitektur CPU
Tab Arsitektur CPU Aktifkan Unit Titik Mengambang
Deskripsi Aktifkan opsi ini untuk menambahkan unit floating-point (ekstensi “F”) di inti prosesor.
Aktifkan Prediksi Cabang
Aktifkan prediksi cabang statis (Diambil Mundur dan Tidak Diambil Maju) untuk instruksi cabang.
nilai CSR mhartid
· Nilai register ID Hart (mhartid) adalah 0 secara default. · Tetapkan nilai antara 0 dan 4094. · Kompatibel dengan Altera FPGA Avalon Mutex Core HAL API.
Nonaktifkan instruksi FSQRT & FDIV untuk FPU
· Hapus operasi akar kuadrat titik mengambang (FSQRT) dan pembagian titik mengambang (FDIV) di FPU.
· Terapkan emulasi perangkat lunak pada kedua instruksi selama runtime.
Panduan Pengguna IP Periferal Tertanam – Intel FPGA Avalon® Mutex Core
Buku Pegangan Desain Prosesor Tertanam Nios® V 18
Kirim Masukan
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
2.1.1.3.2. Tab Debug
Tabel 12. Parameter Tab Debug
Tab Debug
Keterangan
Aktifkan Debug
Aktifkan Reset dari Modul Debug
· Aktifkan opsi ini untuk menambahkan JTAG modul koneksi target ke prosesor Nios V. · JTAG modul koneksi target memungkinkan koneksi ke prosesor Nios V melalui
JTAG pin antarmuka FPGA. Koneksi ini menyediakan kemampuan dasar berikut:
— Memulai dan menghentikan prosesor Nios V — Memeriksa dan mengedit register dan memori. — Mengunduh aplikasi Nios V .elf file ke memori prosesor saat runtime melalui
niosv-download. — Debug aplikasi yang berjalan pada prosesor Nios V · Hubungkan port dm_agent ke instruksi prosesor dan bus data. Pastikan alamat dasar antara kedua bus sama.
· Aktifkan opsi ini untuk mengekspos port dbg_reset_out dan ndm_reset_in. · JTAG debugger atau perintah niosv-download -r memicu dbg_reset_out, yang
memungkinkan prosesor Nios V untuk mengatur ulang periferal sistem yang terhubung ke port ini. · Anda harus menghubungkan antarmuka dbg_reset_out ke ndm_reset_in alih-alih reset
Antarmuka untuk memicu pengaturan ulang ke inti prosesor dan modul pengatur waktu. Anda tidak boleh menghubungkan antarmuka dbg_reset_out ke antarmuka pengaturan ulang untuk mencegah perilaku yang tidak pasti.
2.1.1.3.3. Tabel Tab Lockstep 13. Tab Lockstep
Parameter Aktifkan Periode Waktu Habis Default Lockstep Aktifkan Antarmuka Reset yang Diperpanjang
Deskripsi · Mengaktifkan sistem Lockstep inti ganda. · Nilai default batas waktu terprogram saat keluar dari pengaturan ulang (antara 0 dan 255). · Mengaktifkan Antarmuka Pengaturan Ulang Lanjutan opsional untuk Kontrol Pengaturan Ulang Lanjutan. · Saat dinonaktifkan, fRSmartComp mengimplementasikan Kontrol Pengaturan Ulang Dasar.
2.1.1.3.4. Gunakan Tab Permintaan Reset
Tabel 14. Gunakan Parameter Tab Permintaan Reset
Gunakan Tab Permintaan Reset
Keterangan
Tambahkan Antarmuka Permintaan Reset
· Aktifkan opsi ini untuk mengekspos port reset lokal tempat master lokal dapat menggunakannya untuk memicu prosesor Nios V untuk melakukan reset tanpa memengaruhi komponen lain dalam sistem prosesor Nios V.
· Antarmuka reset terdiri dari sinyal resetreq masukan dan sinyal ack keluaran.
· Anda dapat meminta pengaturan ulang pada inti prosesor Nios V dengan menggunakan sinyal resetreq.
· Sinyal resetreq harus tetap aktif hingga prosesor memberikan sinyal ack. Kegagalan sinyal untuk tetap aktif dapat menyebabkan prosesor berada dalam status non-deterministik.
· Penegasan sinyal resetreq dalam mode debug tidak berpengaruh pada status prosesor.
· Prosesor Nios V merespons bahwa pengaturan ulang berhasil dengan menegaskan sinyal ack.
· Setelah prosesor berhasil direset, penegasan sinyal ack dapat terjadi beberapa kali secara berkala hingga pencabutan sinyal resetreq.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 19
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
2.1.1.3.5. Tab Perangkap, Pengecualian, dan Interupsi
Tabel 15.
Tab Perangkap, Pengecualian, dan Interupsi saat Pengendali Interupsi Tingkat Inti Dinonaktifkan
Tab Perangkap, Pengecualian, dan Interupsi
Agen Reset
Keterangan
· Memori yang menampung vektor reset (alamat reset prosesor Nios V) tempat kode reset berada.
· Anda dapat memilih modul memori mana pun yang terhubung ke master instruksi prosesor Nios V dan didukung oleh aliran boot prosesor Nios V sebagai agen pengaturan ulang.
Setel Ulang Offset
· Menentukan offset vektor reset relatif terhadap alamat dasar agen reset yang dipilih. · Platform Designer secara otomatis menyediakan nilai default untuk offset reset.
Aktifkan Pengontrol Interupsi Tingkat Inti (CLIC)
· Mengaktifkan CLIC untuk mendukung interupsi pre-emptif dan kondisi pemicu interupsi yang dapat dikonfigurasi.
· Bila diaktifkan, Anda dapat mengonfigurasi jumlah interupsi platform, menetapkan kondisi pemicu, dan menetapkan beberapa interupsi sebagai pre-emptif.
Register Bayangan Mode Interupsi Files
Tentukan jenis interupsi sebagai Langsung, atau Vektor Aktifkan register bayangan untuk mengurangi peralihan konteks saat interupsi.
Tabel 16.
Perangkap, Pengecualian dan Interupsi saat Pengontrol Interupsi Tingkat Inti Diaktifkan
Perangkap, Pengecualian, dan Interupsi
Deskripsi
Agen Reset
Setel Ulang Offset
Aktifkan Pengontrol Interupsi Tingkat Inti (CLIC)
· Memori yang menampung vektor reset (alamat reset prosesor Nios V) tempat kode reset berada.
· Anda dapat memilih modul memori mana pun yang terhubung ke master instruksi prosesor Nios V dan didukung oleh aliran boot prosesor Nios V sebagai agen pengaturan ulang.
· Menentukan offset vektor reset relatif terhadap alamat dasar agen reset yang dipilih. · Platform Designer secara otomatis menyediakan nilai default untuk offset reset.
· Aktifkan CLIC untuk mendukung interupsi pre-emptive dan kondisi pemicu interupsi yang dapat dikonfigurasi. · Saat diaktifkan, Anda dapat mengonfigurasi jumlah interupsi platform, mengatur kondisi pemicu,
dan menetapkan beberapa interupsi sebagai pre-emptive.
Mode Interupsi
· Tentukan jenis interupsi sebagai Langsung, Vektor, atau CLIC.
Daftar Bayangan Files
· Aktifkan register bayangan untuk mengurangi peralihan konteks saat interupsi.
· Menawarkan dua pendekatan:
— Jumlah level interupsi CLIC
— Jumlah level interupsi CLIC – 1: Opsi ini berguna ketika Anda menginginkan jumlah register file salinan agar sesuai dengan jumlah blok M20K atau M9K yang tepat.
· Aktifkan prosesor Nios V untuk menggunakan register bayangan fileyang mengurangi overhead peralihan konteks saat interupsi.
Untuk informasi lebih lanjut tentang shadow register files, rujuk pada Manual Referensi Prosesor Nios V.
Jumlah sumber interupsi platform
· Menentukan jumlah interupsi platform antara 16 hingga 2048.
Catatan: CLIC mendukung hingga 2064 masukan interupsi, dan 16 masukan interupsi pertama juga dihubungkan ke pengontrol interupsi dasar.
Penyelarasan Tabel Vektor CLIC
· Ditentukan secara otomatis berdasarkan jumlah sumber interupsi platform. · Jika Anda menggunakan penyelarasan yang di bawah nilai yang disarankan, CLIC meningkatkan logika
kompleksitas dengan menambahkan penambah ekstra untuk melakukan perhitungan vektor. · Jika Anda menggunakan penyelarasan yang di bawah nilai yang disarankan, ini menghasilkan peningkatan
kompleksitas logika dalam CLIC.
lanjutan…
Buku Pegangan Desain Prosesor Tertanam Nios® V 20
Kirim Masukan
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Perangkap, Pengecualian, dan Interupsi
Jumlah Tingkat Interupsi
Jumlah Prioritas Interupsi per level
Polaritas interupsi yang dapat dikonfigurasi Mendukung interupsi yang dipicu tepi
Deskripsi
· Menentukan jumlah level interupsi dengan tambahan level 0 untuk kode aplikasi. Interupsi level yang lebih tinggi dapat menginterupsi (mendahului) handler yang sedang berjalan untuk interupsi level yang lebih rendah.
· Dengan level interupsi selain nol sebagai satu-satunya pilihan untuk interupsi, kode aplikasi selalu berada pada level terendah 0. Catatan: Konfigurasi level dan prioritas interupsi saat run-time dilakukan dalam satu register 8-bit. Jika jumlah level interupsi adalah 256, prioritas interupsi tidak dapat dikonfigurasi saat run-time. Jika tidak, jumlah maksimum prioritas yang dapat dikonfigurasi adalah 256 / (jumlah level interupsi – 1).
· Menentukan jumlah prioritas interupsi, yang digunakan CLIC untuk menentukan urutan pemanggilan penangan interupsi non-pre-empting. Catatan: Penggabungan nilai biner dari level interupsi yang dipilih dan prioritas interupsi yang dipilih harus kurang dari 8 bit.
· Memungkinkan Anda mengonfigurasi polaritas interupsi selama runtime. · Polaritas default adalah polaritas positif.
· Memungkinkan Anda mengonfigurasi kondisi pemicu interupsi selama runtime, yaitu pemicu tingkat tinggi atau pemicu tepi positif (ketika polaritas interupsi positif dalam polaritas interupsi yang dapat dikonfigurasi).
· Kondisi pemicu default adalah interupsi yang dipicu level.
Catatan:
Platform Designer menyediakan opsi Absolut, yang memungkinkan Anda menentukan alamat absolut di Reset Offset. Gunakan opsi ini ketika memori yang menyimpan vektor reset berada di luar sistem dan subsistem prosesor.
Informasi Terkait Manual Referensi Prosesor Nios® V
2.1.1.3.6. Tab Konfigurasi Memori
Tabel 17. Parameter Tab Konfigurasi Memori
Kategori
Tab Konfigurasi Memori
Keterangan
Cache
Ukuran Cache Data
· Menentukan ukuran cache data. · Ukuran yang valid adalah dari 0 kilobyte (KB) hingga 16 KB. · Matikan cache data saat ukurannya 0 KB.
Ukuran Cache Instruksi
· Menentukan ukuran cache instruksi. · Ukuran yang valid adalah dari 0 KB hingga 16 KB. · Matikan cache instruksi saat ukurannya 0 KB.
Wilayah Perifer A dan B
Ukuran
· Menentukan ukuran wilayah periferal.
· Ukuran yang valid adalah dari 64 KB hingga 2 gigabita (GB), atau Tidak Ada. Memilih Tidak Ada akan menonaktifkan wilayah periferal.
Alamat Dasar
· Menentukan alamat dasar wilayah periferal setelah Anda memilih ukuran.
· Semua alamat di wilayah periferal menghasilkan akses data yang tidak dapat di-cache.
· Alamat dasar wilayah periferal harus disesuaikan dengan ukuran wilayah periferal.
Kenangan yang Erat
Ukuran
· Menentukan ukuran memori yang terhubung erat. — Ukuran yang valid adalah dari 0 MB hingga 512 MB.
Inisialisasi Alamat Dasar File
· Menentukan alamat dasar memori yang terhubung erat. · Menentukan inisialisasi file untuk memori yang terhubung erat.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 21
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Catatan:
Pada sistem prosesor Nios V dengan cache diaktifkan, Anda harus menempatkan periferal sistem di dalam suatu wilayah periferal. Anda dapat menggunakan wilayah periferal untuk menentukan transaksi yang tidak dapat di-cache untuk periferal seperti UART, PIO, DMA, dan lainnya.
2.1.1.3.7. Tab ECC
Tabel 18. Tab ECC
ECC Mengaktifkan Deteksi Kesalahan dan Pelaporan Status
Aktifkan Koreksi Bit Tunggal
Keterangan
· Aktifkan opsi ini untuk menerapkan fitur ECC pada blok RAM internal prosesor Nios V. · Fitur ECC mendeteksi kesalahan hingga 2-bit dan bereaksi berdasarkan perilaku berikut:
— Jika kesalahan tersebut merupakan kesalahan bit tunggal yang dapat diperbaiki dan fitur Aktifkan Koreksi Bit Tunggal dinonaktifkan, prosesor akan tetap beroperasi setelah kesalahan tersebut diperbaiki di jalur prosesor. Namun, koreksi tersebut tidak tercermin dalam memori sumber.
— Jika itu adalah kesalahan bit tunggal yang dapat diperbaiki dan Aktifkan Koreksi Bit Tunggal diaktifkan, prosesor akan terus beroperasi setelah mengoreksi kesalahan dalam jalur prosesor dan memori sumber.
— Jika itu adalah kesalahan yang tidak dapat diperbaiki, prosesor menghentikan operasinya.
Aktifkan koreksi bit tunggal pada blok memori yang tertanam dalam inti.
2.1.1.3.8. Tab Instruksi Kustom
Catatan:
Tab ini hanya tersedia untuk inti prosesor Nios V/g.
Tabel Antarmuka Perangkat Keras Instruksi Kustom Nios V
Tabel Makro Perangkat Lunak Instruksi Kustom Nios V
Keterangan
· Prosesor Nios V menggunakan tabel ini untuk menentukan antarmuka manajer instruksi kustomnya.
· Antarmuka manajer instruksi kustom yang ditentukan dikodekan secara unik oleh Opcode (CUSTOM0-3) dan 3 bit funct7[6:4].
· Anda dapat menentukan hingga total 32 antarmuka manajer instruksi kustom individual.
· Prosesor Nios V menggunakan tabel ini untuk menentukan penyandian perangkat lunak instruksi kustom untuk antarmuka manajer instruksi kustom yang ditentukan.
· Untuk setiap pengkodean perangkat lunak instruksi kustom yang ditentukan, Opcode (CUSTOM0-3) dan 3 bit pengkodean funct7[6:4] harus berkorelasi dengan pengkodean antarmuka manajer instruksi kustom yang ditentukan dalam Tabel Antarmuka Perangkat Keras Instruksi Kustom.
· Anda dapat menggunakan funct7[6:4], funct7[3:0], dan funct3[2:0] untuk menentukan pengodean tambahan untuk instruksi khusus tertentu, atau ditetapkan sebagai X untuk diteruskan sebagai argumen instruksi tambahan.
· Prosesor Nios V menyediakan penyandian perangkat lunak instruksi khusus yang ditentukan sebagai makro C yang dihasilkan dalam system.h, dan mengikuti format instruksi RISC-V tipe-R.
· Mnemonik dapat digunakan untuk menentukan nama khusus untuk: — C-Macro yang dihasilkan di system.h.
— Mnemonik debug GDB yang dihasilkan dalam custom_instruction_debug.xml.
Informasi Terkait
AN 977: Instruksi Kustom Prosesor Nios V Untuk informasi lebih lanjut tentang instruksi kustom yang memungkinkan Anda menyesuaikan prosesor Nios® V untuk memenuhi kebutuhan aplikasi tertentu.
Buku Pegangan Desain Prosesor Tertanam Nios® V 22
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
2.1.2. Mendefinisikan Desain Komponen Sistem
Gunakan Platform Designer untuk menentukan karakteristik perangkat keras sistem prosesor Nios V dan menambahkan komponen yang diinginkan. Diagram berikut menunjukkan desain dasar sistem prosesor Nios V dengan komponen-komponen berikut: · Inti prosesor Nios V · Memori On-Chip · JTAG UART · Pengatur Waktu Interval (opsional)(1)
Saat Memori On-Chip baru ditambahkan ke sistem Platform Designer, jalankan Sinkronisasi Info Sistem untuk mencerminkan komponen memori yang ditambahkan dalam pengaturan ulang. Atau, Anda dapat mengaktifkan Sinkronisasi Otomatis di Platform Designer untuk secara otomatis mencerminkan perubahan komponen terbaru.
Gambar 11. Contohampkoneksi prosesor Nios V dengan periferal lain di Platform Designer
(1) Anda memiliki opsi untuk menggunakan fitur Nios V Internal Timer untuk mengganti Interval Timer eksternal di Platform Designer.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 23
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Anda juga harus menentukan pin operasi untuk diekspor sebagai saluran di sistem Platform Designer Anda. Misalnyaample, daftar pin operasi sistem FPGA yang tepat didefinisikan seperti di bawah ini tetapi tidak terbatas pada:
· Jam
· Atur ulang
· Sinyal I/O
2.1.3. Menentukan Alamat Dasar dan Prioritas Permintaan Interupsi
Untuk menentukan bagaimana komponen yang ditambahkan dalam desain berinteraksi untuk membentuk suatu sistem, Anda perlu menetapkan alamat dasar untuk setiap komponen agen dan menetapkan prioritas permintaan interupsi (IRQ) untuk JTAG UART dan pengatur waktu interval. Platform Designer menyediakan perintah – Tetapkan Alamat Basis – yang secara otomatis menetapkan alamat basis yang tepat untuk semua komponen dalam sistem. Namun, Anda dapat menyesuaikan alamat basis berdasarkan kebutuhan Anda.
Berikut ini adalah beberapa panduan untuk menetapkan alamat dasar:
· Inti prosesor Nios V memiliki rentang alamat 32-bit. Untuk mengakses komponen agen, alamat dasarnya harus berkisar antara 0x00000000 dan 0xFFFFFFFF.
· Program Nios V menggunakan konstanta simbolik untuk merujuk ke alamat. Anda tidak perlu memilih nilai alamat yang mudah diingat.
Nilai alamat yang membedakan komponen hanya dengan selisih satu bit menghasilkan perangkat keras yang lebih efisien. Anda tidak perlu memadatkan semua alamat dasar ke dalam rentang alamat sekecil mungkin karena pemadatan dapat menghasilkan perangkat keras yang kurang efisien.
· Platform Designer tidak berupaya menyelaraskan komponen memori yang terpisah dalam rentang memori yang bersebelahan. Misalnyaampmisalnya, jika Anda ingin beberapa komponen Memori Pada Chip dapat dialamatkan sebagai satu rentang memori yang berdekatan, Anda harus menetapkan alamat dasar secara eksplisit.
Platform Designer juga menyediakan perintah otomatisasi – Tetapkan Nomor Interupsi yang menghubungkan sinyal IRQ untuk menghasilkan hasil perangkat keras yang valid. Namun, penetapan IRQ yang efektif membutuhkan pemahaman tentang perilaku respons sistem secara keseluruhan. Platform Designer tidak dapat membuat tebakan yang tepat tentang penetapan IRQ terbaik.
Nilai IRQ terendah memiliki prioritas tertinggi. Dalam sistem yang ideal, Altera merekomendasikan komponen timer untuk memiliki IRQ prioritas tertinggi, yaitu nilai terendah, untuk menjaga akurasi detak jam sistem.
Dalam beberapa kasus, Anda mungkin menetapkan prioritas lebih tinggi pada periferal waktu nyata (seperti pengontrol video), yang menuntut tingkat interupsi lebih tinggi daripada komponen pengatur waktu.
Informasi Terkait
Panduan Pengguna Quartus Prime Pro Edition: Informasi selengkapnya tentang pembuatan Sistem dengan Platform Designer.
Buku Pegangan Desain Prosesor Tertanam Nios® V 24
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
2.2. Mengintegrasikan Sistem Platform Designer ke dalam Proyek Quartus Prime
Bahasa Indonesia: Setelah membuat desain sistem Nios V di Platform Designer, lakukan tugas-tugas berikut untuk mengintegrasikan modul sistem Nios V ke dalam proyek desain FPGA Quartus Prime. · Membuat instance modul sistem Nios V di proyek Quartus Prime · Menghubungkan sinyal dari modul sistem Nios V ke sinyal lain dalam logika FPGA · Menetapkan lokasi pin fisik · Membatasi desain FPGA
2.2.1. Membuat Instansi Modul Sistem Prosesor Nios V di Proyek Quartus Prime
Platform Designer menghasilkan entitas desain modul sistem yang dapat Anda instansiasi di Quartus Prime. Cara Anda menginstansiasi modul sistem bergantung pada metode entri desain untuk keseluruhan proyek Quartus Prime. Misalnya,ampMisalnya, jika Anda menggunakan Verilog HDL untuk entri desain, buatlah instans modul sistem berbasis Verilog. Jika Anda lebih suka menggunakan metode diagram blok untuk entri desain, buatlah instans simbol modul sistem .bdf file.
2.2.2. Menghubungkan Sinyal dan Menetapkan Lokasi Pin Fisik
Untuk menghubungkan desain FPGA Altera Anda ke desain tingkat papan, lakukan tugas berikut: · Identifikasi tingkat atas file untuk desain dan sinyal Anda untuk terhubung ke Altera eksternal
Pin perangkat FPGA. · Pahami pin mana yang akan dihubungkan melalui panduan pengguna desain tingkat papan atau
skema. · Tetapkan sinyal dalam desain tingkat atas ke port pada perangkat FPGA Altera Anda dengan pin
alat tugas.
Sistem Platform Designer Anda bisa menjadi desain tingkat atas. Namun, FPGA Altera juga dapat menyertakan logika tambahan berdasarkan kebutuhan Anda dan dengan demikian memperkenalkan desain tingkat atas yang khusus. fileTingkat atas file menghubungkan sinyal modul sistem prosesor Nios V ke logika desain FPGA Altera lainnya.
Informasi Terkait Panduan Pengguna Quartus Prime Pro Edition: Batasan Desain
2.2.3. Membatasi Desain FPGA Altera
Desain sistem FPGA Altera yang tepat mencakup batasan desain untuk memastikan desain memenuhi persyaratan penutupan waktu dan batasan logika lainnya. Anda harus membatasi desain FPGA Altera Anda agar memenuhi persyaratan ini secara eksplisit menggunakan alat yang disediakan dalam perangkat lunak Quartus Prime atau penyedia EDA pihak ketiga. Perangkat lunak Quartus Prime menggunakan batasan yang disediakan selama fase kompilasi untuk mendapatkan hasil penempatan yang optimal.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 25
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Informasi Terkait · Panduan Pengguna Quartus Prime Pro Edition: Kendala Desain · Mitra EDA Pihak Ketiga · Panduan Pengguna Quartus Prime Pro Edition: Penganalisis Waktu
2.3. Merancang Sistem Memori Prosesor Nios V
Bagian ini menjelaskan praktik terbaik untuk memilih perangkat memori dalam sistem tertanam Platform Designer dengan prosesor Nios V dan mencapai kinerja optimal. Perangkat memori memainkan peran penting dalam meningkatkan kinerja keseluruhan sistem tertanam. Memori sistem tertanam menyimpan instruksi dan data program.
2.3.1. Memori Volatil
Perbedaan utama dalam jenis memori adalah volatilitasnya. Memori volatil hanya menyimpan isinya saat Anda memberikan daya ke perangkat memori. Segera setelah daya diputus, memori akan kehilangan isinya.
ExampJenis memori volatil adalah RAM, cache, dan register. Ini adalah jenis memori cepat yang meningkatkan kinerja. Altera menyarankan Anda memuat dan mengeksekusi instruksi prosesor Nios V dalam RAM dan memasangkan inti IP Nios V dengan IP Memori On-Chip atau IP Antarmuka Memori Eksternal untuk kinerja optimal.
Untuk meningkatkan kinerja, Anda dapat menghilangkan komponen adaptasi Platform Designer tambahan dengan mencocokkan jenis atau lebar antarmuka pengelola data prosesor Nios V dengan RAM boot. Misalnya,ample, Anda dapat mengonfigurasi On-Chip Memory II dengan antarmuka AXI-32 4-bit, yang cocok dengan antarmuka pengelola data Nios V.
Informasi Terkait · Pusat Dukungan IP Antarmuka Memori Eksternal · IP FPGA Altera untuk Memori On-Chip (RAM atau ROM) · IP FPGA Altera untuk Memori On-Chip II (RAM atau ROM) · Aplikasi Prosesor Nios V Execute-In-Place dari OCRAM pada halaman 54
2.3.1.1. Konfigurasi Memori On-Chip RAM atau ROM
Anda dapat mengonfigurasi IP Memori On-Chip Altera FPGA sebagai RAM atau ROM. · RAM menyediakan kemampuan baca dan tulis dan bersifat volatil. Jika Anda
Saat mem-boot prosesor Nios V dari RAM On-Chip, Anda harus memastikan konten boot tetap terjaga dan tidak rusak jika terjadi pengaturan ulang selama runtime. · Jika prosesor Nios V di-boot dari ROM, bug perangkat lunak apa pun pada prosesor Nios V tidak dapat menimpa konten Memori On-Chip secara keliru. Dengan demikian, risiko kerusakan perangkat lunak boot berkurang.
Informasi Terkait · Memori On-Chip (RAM atau ROM) Altera FPGA IP · Memori On-Chip II (RAM atau ROM) Altera FPGA IP · Prosesor Nios V Application Execute-In-Place dari OCRAM pada halaman 54
Buku Pegangan Desain Prosesor Tertanam Nios® V 26
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
2.3.1.2. Cache
Memori on-chip umumnya digunakan untuk mengimplementasikan fungsi cache karena latensinya yang rendah. Prosesor Nios V menggunakan memori on-chip untuk cache instruksi dan datanya. Kapasitas memori on-chip yang terbatas biasanya tidak menjadi masalah bagi cache karena ukurannya yang kecil.
Cache umumnya digunakan dalam kondisi berikut:
· Memori reguler terletak di luar chip dan memiliki waktu akses lebih lama daripada memori di dalam chip.
· Bagian kode perangkat lunak yang penting bagi kinerja dapat ditampung dalam cache instruksi, sehingga meningkatkan kinerja sistem.
· Bagian data yang paling sering digunakan dan sangat penting bagi kinerja dapat dimasukkan ke dalam cache data, sehingga meningkatkan kinerja sistem.
Mengaktifkan cache pada prosesor Nios V menciptakan hierarki memori, yang meminimalkan waktu akses memori.
2.3.1.2.1. Wilayah perifer
IP periferal tertanam apa pun, seperti UART, I2C, dan SPI, tidak boleh di-cache. Cache sangat disarankan untuk memori eksternal yang terpengaruh oleh waktu akses yang lama, sementara memori internal pada chip mungkin dikecualikan karena waktu aksesnya yang singkat. Anda tidak boleh men-cache IP periferal tertanam apa pun, seperti UART, I2C, dan SPI, kecuali untuk memori. Hal ini penting karena peristiwa dari perangkat eksternal, seperti perangkat agen yang memperbarui IP lunak, tidak ditangkap oleh cache prosesor, yang pada gilirannya tidak diterima oleh prosesor. Akibatnya, peristiwa ini dapat luput dari perhatian hingga Anda membersihkan cache, yang dapat menyebabkan perilaku yang tidak diinginkan pada sistem Anda. Singkatnya, wilayah IP periferal tertanam yang dipetakan memori tidak dapat di-cache dan harus berada di dalam wilayah periferal prosesor.
Untuk menetapkan wilayah periferal, ikuti langkah-langkah berikut:
1. Buka Peta Alamat sistem di Platform Designer.
2. Navigasi ke peta alamat Manajer Instruksi dan Manajer Data prosesor.
3. Identifikasi periferal dan memori dalam sistem Anda.
Gambar 12. Contohample dari Peta Alamat
Catatan: Panah biru menunjuk ke memori. 4. Kelompokkan periferal:
a. Memori sebagai yang dapat di-cache b. Periferal sebagai yang tidak dapat di-cache
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 27
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Tabel 19. Wilayah yang Dapat Di-cache dan Tidak Dapat Di-cache
Bawahan
Peta Alamat
Status
Wilayah Perifer
Ukuran
Alamat Dasar
user_application_mem.s1
0x0 ~ 0x3ffff
Dapat disimpan dalam cache
Tidak tersedia
Tidak tersedia
cpu.dm_agent bootcopier_rom.s1
0x40000 ~ 0x4ffff 0x50000 ~ 0x517ff
Tidak dapat di-cache Dapat di-cache
65536 byte N/A
0x40000 T/A
bootcopier_ram.s1 cpu.timer_sw_agent kotak surat.avmm
0x52000 ~ 0x537ff 0x54000 ~ 0x5403f 0x54040 ~ 0x5407f
Dapat di-cache Tidak dapat di-cache Tidak dapat di-cache
144 byte (ukuran minimum 65536 byte)
ukuran 0x54000
sysid_qsys_0.kontrol_budak
0x54080 ~ 0x54087
Tidak dapat di-cache
uart.avalon_jtag_budak
0x54088 ~ 0x5408f
Tidak dapat di-cache
5. Sejajarkan wilayah perifer dengan ukuran spesifiknya:
· Untuk mantanampMisalnya, jika ukurannya 65536 byte, nilainya adalah 0x10000 byte. Oleh karena itu, alamat dasar yang diizinkan harus kelipatan 0x10000.
· CPU.dm_agent menggunakan alamat dasar 0x40000, yang merupakan kelipatan 0x10000. Oleh karena itu, Wilayah Perifer A, dengan ukuran 65536 byte dan alamat dasar 0x40000, memenuhi persyaratan.
· Alamat dasar kumpulan wilayah yang tidak dapat di-cache pada 0x54000 bukan kelipatan 0x10000. Anda harus menetapkannya kembali ke 0x60000 atau kelipatan 0x10000 lainnya. Dengan demikian, Wilayah Perifer B, yang berukuran 65536 byte dan alamat dasar 0x60000, memenuhi kriteria tersebut.
Tabel 20. Wilayah yang Dapat Di-cache dan Tidak Dapat Di-cache dengan Penugasan Ulang
Bawahan
Peta Alamat
Status
Wilayah Perifer
Ukuran
Alamat Dasar
user_application_mem.s1
0x0 ~ 0x3ffff
Dapat disimpan dalam cache
Tidak tersedia
Tidak tersedia
cpu.dm_agent
0x40000 ~ 0x4ffff
Tidak dapat di-cache 65536 byte
ukuran 0x40000
bootcopier_rom.s1
0x50000 ~ 0x517ff
Dapat disimpan dalam cache
Tidak tersedia
Tidak tersedia
bootcopier_ram.s1 cpu.timer_sw_agent kotak surat.avmm sysid_qsys_0.kontrol_budak
0x52000 ~ 0x537ff 0x60000 ~ 0x6003f 0x60040 ~ 0x6007f 0x60080 ~ 0x60087
Dapat di-cache Tidak dapat di-cache Tidak dapat di-cache Tidak dapat di-cache
144 byte (ukuran minimum 65536 byte)
ukuran 0x60000
uart.avalon_jtag_budak
0x60088 ~ 0x6008f
Tidak dapat di-cache
2.3.1.3. Memori yang Tergandeng Erat
Memori yang terhubung erat (Tightly Coupled Memory/TCM) diimplementasikan menggunakan memori on-chip karena latensinya yang rendah membuatnya sangat cocok untuk tugas tersebut. TCM adalah memori yang dipetakan dalam ruang alamat umum tetapi memiliki antarmuka khusus ke mikroprosesor dan memiliki karakteristik memori cache yang berkinerja tinggi dan berlatensi rendah. TCM juga menyediakan antarmuka subordinat untuk host eksternal. Prosesor dan host eksternal memiliki tingkat izin yang sama untuk menangani TCM.
Buku Pegangan Desain Prosesor Tertanam Nios® V 28
Kirim Masukan
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Catatan:
Ketika port subordinat TCM terhubung ke host eksternal, port tersebut mungkin ditampilkan dengan alamat dasar yang berbeda dari alamat dasar yang ditetapkan di inti prosesor. Altera menyarankan untuk menyelaraskan kedua alamat ke nilai yang sama.
2.3.1.4. Antarmuka Memori Eksternal (EMIF)
EMIF (External Memory Interface) berfungsi serupa dengan SRAM (Static Random Access Memory), tetapi bersifat dinamis dan memerlukan penyegaran berkala untuk mempertahankan isinya. Sel memori dinamis dalam EMIF jauh lebih kecil daripada sel memori statis dalam SRAM, sehingga menghasilkan perangkat memori berkapasitas lebih tinggi dan berbiaya lebih rendah.
Selain persyaratan penyegaran, EMIF memiliki persyaratan antarmuka khusus yang seringkali memerlukan perangkat keras pengontrol khusus. Tidak seperti SRAM yang memiliki rangkaian baris alamat tetap, EMIF mengatur ruang memorinya menjadi bank, baris, dan kolom. Perpindahan antar bank dan baris menimbulkan beberapa overhead, sehingga Anda harus mengurutkan akses memori dengan cermat agar dapat menggunakan EMIF secara efisien. EMIF juga melakukan multipleks alamat baris dan kolom pada baris alamat yang sama, sehingga mengurangi jumlah pin yang diperlukan untuk ukuran EMIF tertentu.
Versi EMIF yang berkecepatan lebih tinggi, seperti DDR, DDR2, DDR3, DDR4, dan DDR5, menerapkan persyaratan integritas sinyal yang ketat yang harus dipertimbangkan oleh perancang PCB.
Perangkat EMIF termasuk di antara jenis RAM yang paling hemat biaya dan berkapasitas tinggi, menjadikannya pilihan yang populer. Komponen utama antarmuka EMIF adalah IP EMIF, yang mengelola tugas-tugas terkait multiplexing alamat, penyegaran, dan peralihan antar baris dan bank. Desain ini memungkinkan seluruh sistem untuk mengakses EMIF tanpa perlu memahami arsitektur internalnya.
Informasi Terkait Antarmuka Memori Eksternal Pusat Dukungan IP
2.3.1.4.1. Ekstensi Rentang Alamat IP
Address Span Extender Altera FPGA IP memungkinkan antarmuka host yang dipetakan memori untuk mengakses peta alamat yang lebih besar atau lebih kecil daripada lebar sinyal alamatnya. Address Span Extender IP membagi ruang yang dapat dialamatkan menjadi beberapa jendela terpisah sehingga host dapat mengakses bagian memori yang sesuai melalui jendela tersebut.
Address Span Extender tidak membatasi lebar host dan agen ke konfigurasi 32-bit dan 64-bit. Anda dapat menggunakan Address Span Extender dengan jendela alamat 1-64-bit.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 29
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Gambar 13. Address Span Extender Altera FPGA IP
Alamat Kata Agen
Ekstensi Rentang Alamat
A
Tabel Pemetaan
Port Kontrol A
…
Register Kontrol 0 Register Kontrol Z-1
Alamat Host yang Diperluas H
Informasi Terkait
Panduan Pengguna Quartus® Prime Pro Edition: Perancang Platform Lihat topik Address Span Extender Intel® FPGA IP untuk informasi lebih lanjut.
2.3.1.4.2. Menggunakan Address Span Extender IP dengan Prosesor Nios V
Prosesor Nios V 32-bit dapat mengalamati rentang alamat hingga 4 GB. Jika EMIF berisi memori lebih dari 4 GB, rentang alamat tersebut akan melebihi batas maksimum yang didukung, sehingga sistem Platform Designer akan salah. IP Address Span Extender diperlukan untuk mengatasi masalah ini dengan membagi satu ruang alamat EMIF menjadi beberapa jendela yang lebih kecil.
Altera menyarankan Anda mempertimbangkan parameter berikut.
Tabel 21. Parameter Ekstensi Rentang Alamat
Parameter
Setelan yang direkomendasikan
Lebar Jalur Data
Lebar Alamat Byte Master yang Diperluas
Pilih 32-bit, yang sesuai dengan prosesor 32-bit. Tergantung pada ukuran memori EMIF.
Lebar Alamat Kata Slave Lebar Burstcount
Pilih 2 GB atau kurang. Sisa rentang alamat prosesor Nios V dicadangkan untuk IP lunak tertanam lainnya.
Mulailah dengan 1 dan secara bertahap tingkatkan nilai ini untuk meningkatkan kinerja.
Jumlah sub-jendela
Pilih 1 sub-jendela jika Anda menghubungkan EMIF ke prosesor Nios V sebagai memori instruksi dan data, atau keduanya. Beralih di antara beberapa sub-jendela saat prosesor Nios V sedang dieksekusi dari EMIF berbahaya.
Aktifkan Port Kontrol Slave
Nonaktifkan port kontrol slave jika Anda menghubungkan EMIF ke prosesor Nios V sebagai memori instruksi dan/atau data. Permasalahan yang sama berlaku untuk Jumlah sub-jendela.
Pembacaan Tertunda Maksimum
Mulailah dengan 1 dan secara bertahap tingkatkan nilai ini untuk meningkatkan kinerja.
Buku Pegangan Desain Prosesor Tertanam Nios® V 30
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
Gambar 14. Menghubungkan Instruction dan Data Manager ke Address Span Extender
Gambar 15. Pemetaan Alamat
Perhatikan bahwa Address Span Extender dapat mengakses seluruh ruang memori 8GB EMIF. Namun, melalui Address Span Extender, prosesor Nios V hanya dapat mengakses ruang memori 1GB pertama EMIF.
Gambar 16. Diagram Blok Sederhana
Sistem Perancang Platform
Sisa 3 GB
Alamat prosesor Nios V
span untuk tertanam
NNioios sVV PProrocecsesosor r
M
IP lunak dalam sistem yang sama.
Jendela 1 GB
Rentang Alamat
S
Ekstender
M
Hanya 1 GB pertama
memori EMIF terhubung ke Nios V
EMIF
prosesor.
8 GB
S
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 31
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
2.3.1.4.3. Menentukan Perangkat Memori Penghubung Address Span Extender 1. Tentukan Address Span Extender (EMIF) sebagai vektor reset. Sebagai alternatif, Anda dapat menetapkan vektor reset prosesor Nios V ke memori lain, seperti OCRAM atau perangkat flash.
Gambar 17. Beberapa Pilihan sebagai Vektor Reset
Namun, Editor Paket Dukungan Papan (BSP) tidak dapat secara otomatis mendaftarkan Address Span Extender (EMIF) sebagai memori yang valid. Tergantung pada pilihan yang Anda buat, Anda akan melihat dua situasi berbeda seperti yang ditunjukkan pada gambar berikut. Gambar 18. Kesalahan BSP saat Menentukan Address Span Extender (EMIF) sebagai Vektor Reset
Buku Pegangan Desain Prosesor Tertanam Nios® V 32
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
Gambar 19. EMIF Hilang saat Menentukan Memori Lain sebagai Vektor Reset
2. Anda harus menambahkan Address Span Extender (EMIF) secara manual menggunakan Add Memory Device, Add Linker Memory Region, dan Add Linker Section Mappings di tab BSP Linker Script.
3. Ikuti langkah-langkah berikut:
a. Tentukan rentang alamat Address Span Extender menggunakan Memory Map (Contoh:ample pada gambar berikut menggunakan rentang Address Span Extender dari 0x0 hingga 0x3fff_ffff).
Gambar 20. Peta Memori
b. Klik Tambahkan Perangkat Memori, lalu isi sesuai informasi di Peta Memori desain Anda: i. Nama Perangkat: emif_ddr4. Catatan: Pastikan Anda menyalin nama yang sama dari Peta Memori. ii. Alamat Dasar: 0x0 iii. Ukuran: 0x40000000
c. Klik Tambah untuk menambahkan wilayah memori penghubung baru:
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 33
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Tabel 22. Menambahkan Wilayah Memori Linker
Tangga
Atur Ulang Vektor
emif_ddr4
Kenangan lainnya
1
Tambahkan Wilayah Memori Linker baru yang disebut reset. Tambahkan Wilayah Memori Linker baru untuk
· Nama Wilayah: reset
emif_ddr4.
· Ukuran Wilayah: 0x20
· Nama Wilayah: emif_ddr4
· Perangkat Memori: emif_ddr4
· Ukuran Wilayah: 0x40000000
· Offset Memori: 0x0
· Perangkat Memori: emif_ddr4
· Offset Memori: 0x0
2
Tambahkan Wilayah Memori Linker baru untuk
emif_ddr4 yang tersisa.
· Nama Wilayah: emif_ddr4
· Ukuran Wilayah: 0x3fffffe0
· Perangkat Memori: emif_ddr4
· Offset Memori: 0x20
Gambar 21. Wilayah Linker saat Menentukan Address Span Extender (EMIF) sebagai Vektor Reset
Gambar 22. Wilayah Linker saat Menentukan Memori Lain sebagai Vektor Reset
d. Setelah emif_ddr4 ditambahkan ke BSP, Anda dapat memilihnya untuk Bagian Linker mana pun.
Gambar 23. Address Span Extender (EMIF) Berhasil Ditambahkan
e. Abaikan peringatan tentang Perangkat memori emif_ddr4 tidak terlihat dalam desain SOPC.
f. Lanjutkan ke Generate BSP.
Informasi Terkait Pengantar Metode Booting Prosesor Nios V di halaman 51
Buku Pegangan Desain Prosesor Tertanam Nios® V 34
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
2.3.2. Memori Non-Volatil
Memori non-volatil tetap mempertahankan isinya saat daya dimatikan, menjadikannya pilihan yang baik untuk menyimpan informasi yang harus diambil sistem setelah siklus daya sistem. Memori non-volatil umumnya menyimpan kode boot prosesor, pengaturan aplikasi persisten, dan data konfigurasi FPGA Altera. Meskipun memori non-volatil memiliki keunggulantagKarena kemampuannya menyimpan data saat daya dicabut, memori ini jauh lebih lambat dibandingkan memori volatil, dan seringkali memiliki prosedur penulisan dan penghapusan yang lebih rumit. Memori non-volatil juga biasanya hanya dijamin dapat dihapus beberapa kali, setelah itu mungkin akan rusak.
ExampMemori non-volatil mencakup semua jenis flash, EPROM, dan EEPROM. Altera menyarankan Anda untuk menyimpan bitstream FPGA Altera dan citra program Nios V dalam memori non-volatil, dan menggunakan flash serial sebagai perangkat boot untuk prosesor Nios V.
Informasi Terkait
Panduan Pengguna IP Altera FPGA Antarmuka Flash Serial Generik
· Panduan Pengguna IP Altera FPGA Mailbox Client · Panduan Pengguna Memori Flash MAX® 10 Pengguna: Inti IP Altera FPGA Flash On-Chip
2.4. Praktik Terbaik Jam dan Reset
Memahami bagaimana domain clock dan reset prosesor Nios V berinteraksi dengan setiap periferal yang terhubung dengannya sangatlah penting. Sistem prosesor Nios V yang sederhana dimulai dengan satu domain clock, dan dapat menjadi rumit dengan sistem domain multi-clock ketika domain clock yang cepat bertabrakan dengan domain clock yang lambat. Anda perlu memperhatikan dan memahami bagaimana domain-domain yang berbeda ini berurutan setelah reset dan memastikan tidak ada masalah yang berarti.
Untuk praktik terbaik, Altera merekomendasikan penempatan prosesor Nios V dan memori boot dalam domain clock yang sama. Jangan lepaskan prosesor Nios V dari pengaturan ulang di domain clock yang cepat ketika proses booting dilakukan dari memori yang berada di domain clock yang sangat lambat, karena dapat menyebabkan kesalahan pengambilan instruksi. Anda mungkin memerlukan beberapa pengurutan manual di luar yang disediakan Platform Designer secara default, dan rencanakan topologi pelepasan pengaturan ulang sesuai dengan kasus penggunaan Anda. Jika Anda ingin mengatur ulang sistem setelah sistem menyala dan berjalan beberapa saat, terapkan pertimbangan yang sama untuk pengurutan pengaturan ulang sistem dan persyaratan inisialisasi pasca-pengaturan ulang.
2.4.1. Sistem JTAG Jam
Menentukan batasan clock di setiap sistem prosesor Nios V merupakan pertimbangan penting dalam desain sistem dan diperlukan untuk ketepatan dan perilaku deterministik. Quartus Prime Timing Analyzer melakukan analisis pewaktuan statis untuk memvalidasi kinerja pewaktuan semua logika dalam desain Anda menggunakan metodologi batasan, analisis, dan pelaporan standar industri.
Example 1. Jam Dasar 100 MHz dengan Siklus Kerja 50/50 dan 16 MHz JTAG Jam
#************************************************************** # Buat Jam 100MHz #***************************************************************** buat_jam -nama {clk} -periode 10 [dapatkan_port {clk}] #************************ Buat Jam 16MHzTAG Jam #************************
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 35
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Bahasa Indonesia: buat_jam -nama {altera_reserved_tck} -periode 62.500 [dapatkan_port {altera_reserved_tck}] atur_grup_jam -asinkron -grup [dapatkan_jam {altera_reserved_tck}] Informasi Terkait Buku Resep Penganalisis Waktu Quartus Prime
2.4.2. Atur Ulang Antarmuka Permintaan
Prosesor Nios V dilengkapi fasilitas permintaan reset opsional. Fasilitas permintaan reset terdiri dari sinyal reset_req dan reset_req_ack.
Untuk mengaktifkan permintaan reset di Platform Designer: 1. Luncurkan Editor Parameter IP Prosesor Nios V. 2. Pada pengaturan Gunakan Permintaan Reset, aktifkan Tambahkan Antarmuka Permintaan Reset
pilihan.
Gambar 24. Aktifkan Permintaan Reset Prosesor Nios V
Sinyal reset_req bertindak seperti interupsi. Ketika Anda mengaktifkan reset_req, Anda meminta untuk mereset ke inti. Inti menunggu setiap transaksi bus yang belum diselesaikan untuk menyelesaikan operasinya. Misalnya,ampMisalnya, jika terdapat transaksi akses memori yang tertunda, inti akan menunggu respons lengkap. Demikian pula, inti akan menerima respons instruksi yang tertunda tetapi tidak mengeluarkan permintaan instruksi setelah menerima sinyal reset_req.
Operasi reset terdiri dari alur berikut: 1. Selesaikan semua operasi yang tertunda 2. Bersihkan jalur internal 3. Atur Penghitung Program ke vektor reset 4. Reset inti. Seluruh operasi reset membutuhkan beberapa siklus clock. Reset_req harus tetap aktif hingga reset_req_ack aktif, yang menunjukkan bahwa operasi reset inti telah berhasil diselesaikan. Kegagalan untuk melakukannya mengakibatkan status inti menjadi non-deterministik.
Buku Pegangan Desain Prosesor Tertanam Nios® V 36
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
2.4.2.1. Kasus Penggunaan Umum
· Anda dapat mengaktifkan sinyal reset_req dari saat daya hidup untuk mencegah inti prosesor Nios V memulai eksekusi program dari vektor reset-nya hingga host FPGA lain dalam sistem menginisialisasi memori boot prosesor Nios V. Dalam hal ini, seluruh subsistem dapat mengalami reset perangkat keras yang bersih. Prosesor Nios V akan terus berada dalam status permintaan reset tanpa batas waktu hingga host FPGA lain menginisialisasi memori boot prosesor.
· Dalam sistem yang mengharuskan Anda menyetel ulang inti prosesor Nios V tanpa mengganggu sistem lainnya, Anda dapat menggunakan sinyal reset_req untuk menghentikan operasi inti saat ini dan menyalakan ulang prosesor dari vektor penyetelan ulang setelah sistem melepaskan sinyal reset_req_ack.
· Host eksternal dapat menggunakan antarmuka permintaan reset untuk memudahkan implementasi tugas-tugas berikut:
— Hentikan program prosesor Nios V saat ini.
— Muat program baru ke dalam memori boot prosesor Nios V.
— Biarkan prosesor mulai menjalankan program baru.
Altera menyarankan Anda untuk menerapkan mekanisme batas waktu guna memantau status sinyal reset_req_ack. Jika inti prosesor Nios V berada dalam kondisi tunggu tak terbatas dan macet karena alasan yang tidak diketahui, reset_req_ack tidak dapat dijalankan tanpa batas waktu. Mekanisme batas waktu memungkinkan Anda untuk:
· Tentukan periode waktu pemulihan dan lakukan pemulihan sistem dengan pengaturan ulang tingkat sistem.
· Lakukan pengaturan ulang tingkat perangkat keras.
2.4.3. Atur Ulang IP Rilis
Perangkat berbasis SDM Altera menggunakan arsitektur paralel berbasis sektor yang mendistribusikan logika core fabric ke beberapa sektor. Altera menyarankan Anda untuk menggunakan IP FPGA Altera Reset Release sebagai salah satu input awal ke sirkuit reset. Perangkat berbasis SDM Intel® mencakup perangkat Stratix® 10 dan AgilexTM. Perangkat berbasis blok kontrol tidak terpengaruh oleh persyaratan ini.
Informasi Terkait
AN 891: Menggunakan Reset Release Altera FPGA IP
2.5. Menetapkan Agen Default
Platform Designer memungkinkan Anda menentukan agen default yang bertindak sebagai agen default respons kesalahan. Agen default yang Anda tetapkan menyediakan layanan respons kesalahan untuk host yang mencoba akses non-dekode ke dalam peta alamat.
Skenario berikut memicu kejadian yang tidak didekodekan:
· Pelanggaran status keamanan transaksi bus
· Akses transaksi ke wilayah memori yang tidak ditentukan
· Peristiwa pengecualian dan lain-lain.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 37
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Agen default harus ditetapkan untuk menangani kejadian tersebut, di mana transaksi yang tidak terdefinisi dialihkan ke agen default dan selanjutnya merespons prosesor Nios V dengan respons kesalahan.
Informasi Terkait
· Panduan Pengguna Quartus Prime Pro Edition: Perancang Platform. Menetapkan Agen Default
· Panduan Pengguna Quartus Prime Pro Edition: Perancang Platform. IP FPGA Altera Slave Respons Kesalahan
· Github – Komponen Reset Tambahan untuk Qsys
2.6. Menetapkan Agen UART untuk Pencetakan
Pencetakan berguna untuk men-debug aplikasi perangkat lunak, serta untuk memantau status sistem Anda. Altera merekomendasikan pencetakan informasi dasar seperti pesan startup, pesan kesalahan, dan progres eksekusi aplikasi perangkat lunak.
Hindari penggunaan fungsi pustaka printf() dalam situasi berikut: · Pustaka printf() menyebabkan aplikasi terhenti jika tidak ada host yang membaca output.
Hal ini berlaku untuk JTAG Hanya UART. · Pustaka printf() menghabiskan banyak memori program.
2.6.1. Mencegah Stall oleh JTAG Bahasa Indonesia: UART
Tabel 23. Perbedaan antara UART Tradisional dan JTAG Bahasa Indonesia: UART
Tipe UART UART Tradisional
Keterangan
Mengirimkan data serial terlepas dari apakah host eksternal sedang mendengarkan. Jika tidak ada host yang membaca data serial, data tersebut akan hilang.
JTAG Bahasa Indonesia: UART
Menuliskan data yang dikirimkan ke buffer keluaran dan mengandalkan host eksternal untuk membaca dari buffer guna mengosongkannya.
JTAG Driver UART menunggu ketika buffer keluaran penuh. JTAG Driver UART menunggu host eksternal membaca dari buffer keluaran sebelum menulis lebih banyak data transmisi. Proses ini mencegah hilangnya data transmisi.
Namun, ketika debugging sistem tidak diperlukan, seperti selama produksi, sistem tertanam diterapkan tanpa PC host yang terhubung ke JTAG UART. Jika sistem memilih JTAG UART sebagai agen UART, dapat menyebabkan sistem macet karena tidak ada host eksternal yang terhubung.
Untuk mencegah kemacetan oleh JTAG UART, terapkan salah satu opsi berikut:
Buku Pegangan Desain Prosesor Tertanam Nios® V 38
Kirim Masukan
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Tabel 24. Pencegahan pada Penghentian oleh JTAG Bahasa Indonesia: UART
Pilihan
Tidak ada antarmuka UART dan driver yang tersedia
Gunakan antarmuka UART dan driver lainnya
Pertahankan JTAG Antarmuka UART (tanpa driver)
Selama Pengembangan Perangkat Keras (di Platform Designer)
Selama Pengembangan Perangkat Lunak (di Editor Paket Dukungan Papan)
Hapus JTAG UART dari sistem
Konfigurasikan hal.stdin, hal.stdout dan hal.stderr sebagai None.
Ganti JTAG UART dengan perangkat lunak lain Konfigurasikan hal.stdin, hal.stdout dan hal.stderr
UART IP
dengan IP UART lunak lainnya.
Pertahankan JTAG UART dalam sistem
· Konfigurasikan hal.stdin, hal.stdout dan hal.stderr sebagai None di Board Support Package Editor.
· Nonaktifkan JTAG Driver UART di tab Driver BSP.
2.7. JTAG Sinyal
Modul debug prosesor Nios V menggunakan JTAG antarmuka untuk pengunduhan ELF perangkat lunak dan debugging perangkat lunak. Saat Anda men-debug desain Anda dengan JTAG antarmuka, JTAG Sinyal TCK, TMS, TDI, dan TDO diimplementasikan sebagai bagian dari desain. Menentukan JTAG Batasan sinyal di setiap sistem prosesor Nios V merupakan pertimbangan desain sistem yang penting dan diperlukan untuk kebenaran dan perilaku deterministik.
Altera merekomendasikan agar frekuensi jam sistem desain apa pun setidaknya empat kali JTAG frekuensi jam untuk memastikan inti instrumentasi pada chip (OCI) berfungsi dengan baik.
Informasi Terkait · Buku Resep Quartus® Prime Timing Analyzer: JTAG Sinyal
Untuk informasi lebih lanjut tentang JTAG pedoman batasan waktu. · KDB: Mengapa niosv-download gagal dengan prosesor Nios® V/m non-pipelined di
JTAG frekuensi 24MHz atau 16Mhz?
2.8. Mengoptimalkan Kinerja Sistem Platform Designer
Platform Designer menyediakan alat untuk mengoptimalkan kinerja interkoneksi sistem untuk desain Altera FPGA.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 39
2. Desain Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform
726952 | 2025.07.16
Gambar 25. Contoh Optimasiampsedikit
Sang mantanampGambar yang ditunjukkan pada gambar tersebut menunjukkan langkah-langkah berikut:
1. Menambahkan Pipeline Bridge untuk mengurangi jalur kritis dengan menempatkannya: a. Antara Instruction Manager dan agennya b. Antara Data Manager dan agennya
2. Terapkan True Dual port On-Chip RAM, dengan masing-masing port didedikasikan untuk Instruction Manager dan Data Manager.
Buku Pegangan Desain Prosesor Tertanam Nios® V 40
Kirim Masukan
2. Perancangan Sistem Perangkat Keras Prosesor Nios V dengan Perangkat Lunak Quartus Prime dan Perancang Platform 726952 | 2025.07.16 Juli XNUMX
Lihat tautan terkait berikut di bawah, yang menyajikan teknik untuk memanfaatkan alat yang tersedia dan pertimbangan masing-masing implementasi.
Informasi Terkait · Panduan Pengguna Quartus® Prime Pro Edition: Perancang Platform
Lihat topik Mengoptimalkan Performa Sistem Platform Designer untuk informasi selengkapnya. · Panduan Pengguna Quartus® Prime Standard Edition: Platform Designer Lihat topik Mengoptimalkan Performa Sistem Platform Designer untuk informasi selengkapnya.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 41
726952 | 2025.07.16 Kirim Umpan Balik
3. Desain Sistem Perangkat Lunak Prosesor Nios V
Bab ini menjelaskan alur pengembangan perangkat lunak prosesor Nios V dan perangkat lunak yang dapat Anda gunakan dalam mengembangkan sistem desain tertanam Anda. Konten ini berfungsi sebagai panduan umum.view sebelum mengembangkan sistem perangkat lunak prosesor Nios V.
Gambar 26. Alur Desain Perangkat Lunak
Awal
Hasilkan BSP di Platform Designer Menggunakan Editor BSP
Hasilkan BSP Menggunakan Nios V Command Shell
Hasilkan Aplikasi CMake Build File Menggunakan Nios V Command Shell
Catatan:
Impor BSP dan Aplikasi CMake Build File
Membangun Aplikasi Prosesor Nios V menggunakan
RiscFree IDE untuk Intel FPGA
Membangun aplikasi Prosesor Nios V menggunakan
editor kode sumber baris perintah, CMake, dan Make
perintah
Akhir
Altera merekomendasikan penggunaan kit pengembangan FPGA Altera atau papan prototipe khusus untuk pengembangan dan penelusuran kesalahan perangkat lunak. Banyak periferal dan fitur tingkat sistem hanya tersedia jika perangkat lunak Anda berjalan di papan yang sebenarnya.
© Altera Corporation. Altera, logo Altera, logo `a', dan merek Altera lainnya adalah merek dagang Altera Corporation. Altera berhak mengubah produk dan layanan kapan pun tanpa pemberitahuan. Altera tidak bertanggung jawab atau berkewajiban atas penerapan atau penggunaan informasi, produk, atau layanan apa pun yang dijelaskan di sini, kecuali sebagaimana disetujui secara tertulis oleh Altera. Pelanggan Altera disarankan untuk mendapatkan spesifikasi perangkat versi terbaru sebelum mengandalkan informasi yang dipublikasikan dan sebelum memesan produk atau layanan. *Nama dan merek lain dapat diklaim sebagai hak milik orang lain.
3. Desain Sistem Perangkat Lunak Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
3.1. Alur Pengembangan Perangkat Lunak Prosesor Nios V
3.1.1. Proyek Paket Dukungan Dewan
Proyek Nios V Board Support Package (BSP) adalah pustaka khusus yang berisi kode dukungan khusus sistem. BSP menyediakan lingkungan runtime perangkat lunak yang dikustomisasi untuk satu prosesor dalam sistem perangkat keras prosesor Nios V.
Perangkat lunak Quartus Prime menyediakan Nios V Board Support Package Editor dan alat utilitas niosv-bsp untuk mengubah pengaturan yang mengontrol perilaku BSP.
BSP berisi elemen-elemen berikut: · Lapisan abstraksi perangkat keras · Driver perangkat · Paket perangkat lunak opsional · Sistem operasi waktu nyata opsional
3.1.2. Proyek Aplikasi
Proyek aplikasi Nios VC/C++ memiliki fitur berikut: · Terdiri dari kumpulan kode sumber dan CMakeLists.txt.
— CMakeLists.txt mengkompilasi kode sumber dan menghubungkannya dengan BSP dan satu atau lebih pustaka opsional, untuk membuat satu .elf file
· Salah satu sumber files berisi fungsi main(). · Termasuk kode yang memanggil fungsi dalam pustaka dan BSP.
Altera menyediakan alat utilitas niosv-app dalam alat utilitas perangkat lunak Quartus Prime untuk membuat Aplikasi CMakeLists.txt, dan RiscFree IDE untuk FPGA Altera untuk memodifikasi kode sumber dalam lingkungan berbasis Eclipse.
3.2. Alat Pengembangan Tertanam Altera FPGA
Prosesor Nios V mendukung alat-alat berikut untuk pengembangan perangkat lunak: · Antarmuka Pengguna Grafis (GUI) – Alat pengembangan grafis yang tersedia dalam
Sistem Operasi (OS) Windows* dan Linux*. — Editor Paket Dukungan Papan Nios V (Editor BSP Nios V) — IDE Ashling RiscFree untuk FPGA Altera · Alat Baris Perintah (CLI) – Alat pengembangan yang dimulai dari Nios V Command Shell. Setiap alat menyediakan dokumentasinya sendiri dalam bentuk bantuan yang dapat diakses dari baris perintah. Buka Nios V Command Shell dan ketik perintah berikut: –membantu untuk view menu Bantuan. — Alat Utilitas Nios V — File Alat Konversi Format — Alat Utilitas Lainnya
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 43
3. Desain Sistem Perangkat Lunak Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Tabel 25. Ringkasan Tugas Alat GUI dan Alat Baris Perintah
Tugas
Alat GUI
Alat Baris Perintah
Membuat BSP
Editor Nios V BSP
· Dalam perangkat lunak Quartus Prime Pro Edition: niosv-bsp -c -s=<.qsys file> -t= [PILIHAN] pengaturan.bsp
· Dalam perangkat lunak Quartus Prime Standard Edition: niosv-bsp -c -s=<.sopcinfo file> -t= [PILIHAN] pengaturan.bsp
Membuat BSP menggunakan .bsp yang ada file
Memperbarui BSP
Editor Nios V BSP Editor Nios V BSP
niosv-bsp -g [PILIHAN] pengaturan.bsp niosv-bsp -u [PILIHAN] pengaturan.bsp
Memeriksa BSP
Editor Nios V BSP
niosv-bsp -q -E= [PILIHAN] pengaturan.bsp
Membuat aplikasi
–
niosv-aplikasi -a= -b= -s= filedirektori s> [PILIHAN]
Membuat perpustakaan pengguna
–
niosv-aplikasi -l= -s= filedirektori s> -p= [PILIHAN]
Memodifikasi aplikasi Memodifikasi pustaka pengguna Membangun aplikasi
RiscFree IDE untuk FPGA Altera
RiscFree IDE untuk FPGA Altera
RiscFree IDE untuk FPGA Altera
Editor sumber baris perintah apa pun
Editor sumber baris perintah apa pun
· membuat · membuat
Membangun perpustakaan pengguna
RiscFree IDE untuk FPGA Altera
· membuat · membuat
Mengunduh aplikasi ELF
Mengonversi .elf file
RiscFree IDE untuk FPGA Altera
–
niosv-unduh
· elf2flash · elf2hex
Informasi Terkait
Panduan Pengguna Lingkungan Pengembangan Terpadu (IDE) Ashling RiscFree untuk FPGA Altera
3.2.1. Editor Paket Dukungan Papan Prosesor Nios V
Anda dapat menggunakan Editor BSP prosesor Nios V untuk melakukan tugas-tugas berikut: · Membuat atau memodifikasi proyek BSP prosesor Nios V · Mengedit pengaturan, wilayah penghubung, dan pemetaan bagian · Memilih paket perangkat lunak dan driver perangkat.
Kemampuan Editor BSP mencakup kemampuan utilitas niosv-bsp. Setiap proyek yang dibuat di Editor BSP juga dapat dibuat menggunakan utilitas baris perintah.
Buku Pegangan Desain Prosesor Tertanam Nios® V 44
Kirim Masukan
3. Desain Sistem Perangkat Lunak Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Catatan:
Untuk perangkat lunak Quartus Prime Standard Edition, rujuk AN 980: Dukungan Perangkat Lunak Prosesor Nios V Quartus Prime untuk langkah-langkah menjalankan GUI Editor BSP.
Untuk meluncurkan BSP Editor, ikuti langkah-langkah berikut: 1. Buka Platform Designer, dan navigasikan ke File menu.
a. Untuk membuka pengaturan BSP yang ada file, klik Buka… b. Untuk membuat BSP baru, klik BSP Baru… 2. Pilih tab Editor BSP dan berikan detail yang sesuai.
Gambar 27. Luncurkan Editor BSP
Informasi Terkait AN 980: Dukungan Perangkat Lunak Prosesor Nios V Quartus Prime
3.2.2. RiscFree IDE untuk FPGA Altera
RiscFree IDE untuk Altera FPGA adalah IDE berbasis Eclipse untuk prosesor Nios V. Altera menyarankan Anda untuk mengembangkan perangkat lunak prosesor Nios V dalam IDE ini karena alasan berikut: · Fitur-fiturnya dikembangkan dan diverifikasi agar kompatibel dengan Nios V
alur pembuatan prosesor. · Dilengkapi dengan semua toolchain dan alat pendukung yang diperlukan yang memungkinkan Anda
untuk memulai pengembangan prosesor Nios V dengan mudah.
Informasi Terkait Panduan Pengguna Ashling RiscFree Integrated Development Environment (IDE) untuk Altera FPGA
3.2.3. Alat Utilitas Nios V
Anda dapat membuat, memodifikasi, dan membangun program Nios V dengan perintah yang diketik di baris perintah atau disematkan dalam skrip. Alat baris perintah Nios V yang dijelaskan di bagian ini ada di direktori /niosv/bin.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 45
3. Desain Sistem Perangkat Lunak Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Tabel 26. Alat Utilitas Nios V
Alat Baris Perintah
Ringkasan
niosv-app niosv-bsp niosv-download niosv-shell niosv-stack-report
Untuk membuat dan mengonfigurasi proyek aplikasi.
Untuk membuat atau memperbarui pengaturan BSP file dan membuat BSP files. Untuk mengunduh ELF file ke prosesor Nios® V.
Untuk membuka Nios V Command Shell. Untuk memberi tahu Anda sisa ruang memori yang tersedia untuk aplikasi .elf Anda untuk penggunaan stack atau heap.
3.2.4. File Alat Konversi Format
File Konversi format terkadang diperlukan saat meneruskan data dari satu utilitas ke utilitas lainnya. file alat konversi format ada di
direktori instalasi perangkat lunak>/niosv/bin.
Tabel 27. File Alat Konversi Format
Alat Baris Perintah elf2flash elf2hex
Ringkasan Untuk menerjemahkan .elf file ke format .srec untuk pemrograman memori flash. Untuk menerjemahkan .elf file ke format .hex untuk inisialisasi memori.
3.2.5. Alat Utilitas Lainnya
Anda mungkin memerlukan alat baris perintah berikut saat membangun sistem berbasis prosesor Nios V. Alat baris perintah ini disediakan oleh Intel di /quartus/bin atau diperoleh dari
alat sumber terbuka.
Tabel 28. Alat Baris Perintah Lainnya
Alat Baris Perintah
Jenis
Ringkasan
juart-terminal
Disediakan oleh Intel
Untuk memantau stdout dan stderr, dan memberikan masukan ke prosesor Nios® V
subsistem melalui stdin. Alat ini hanya berlaku untuk JTAG UART IP saat terhubung ke prosesor Nios® V.
openocd
Disediakan Intel Untuk menjalankan OpenOCD.
openocd-cfg-gen
Disediakan Intel · Untuk menghasilkan konfigurasi OpenOCD file. · Untuk menampilkan JTAG indeks perangkat rantai.
Buku Pegangan Desain Prosesor Tertanam Nios® V 46
Kirim Masukan
726952 | 2025.07.16 Kirim Umpan Balik
4. Konfigurasi Prosesor Nios V dan Solusi Booting
Anda dapat mengonfigurasi prosesor Nios V untuk mem-boot dan menjalankan perangkat lunak dari berbagai lokasi memori. Memori boot dapat berupa flash Quad Serial Peripheral Interface (QSPI), On-Chip Memory (OCRAM), atau Tightly Coupled Memory (TCM).
Informasi Terkait · Kondisi Pemicu Power-Up di halaman 193 · Pemicu Power-Up
Untuk informasi lebih lanjut tentang pemicu daya.
4.1. Pendahuluan
Prosesor Nios V mendukung dua jenis proses boot: · Execute-in-Place (XIP) menggunakan fungsi alt_load() · Program disalin ke RAM menggunakan boot copier. Pengembangan program tertanam Nios V didasarkan pada lapisan abstraksi perangkat keras (HAL). HAL menyediakan program boot loader kecil (juga dikenal sebagai boot copier) yang menyalin bagian linker yang relevan dari memori boot ke lokasi runtime-nya pada saat boot. Anda dapat menentukan lokasi runtime memori program dan data dengan memanipulasi pengaturan Editor Board Support Package (BSP). Bagian ini menjelaskan: · Boot copier prosesor Nios V yang mem-boot sistem prosesor Nios V Anda sesuai dengan
pemilihan memori boot · Opsi boot prosesor Nios V dan aliran umum · Solusi pemrograman Nios V untuk memori boot yang dipilih
4.2. Menghubungkan Aplikasi
Saat Anda membuat proyek prosesor Nios V, Editor BSP membuat dua tautan terkait files: · linker.x: Perintah linker file bahwa aplikasi yang dihasilkan membuatfile penggunaan
untuk membuat biner .elf file· linker.h: Berisi informasi tentang tata letak memori linker. Semua modifikasi pengaturan linker yang Anda buat pada proyek BSP akan memengaruhi konten kedua file linker ini. files. Setiap aplikasi prosesor Nios V berisi bagian penghubung berikut:
© Altera Corporation. Altera, logo Altera, logo `a', dan merek Altera lainnya adalah merek dagang Altera Corporation. Altera berhak mengubah produk dan layanan kapan pun tanpa pemberitahuan. Altera tidak bertanggung jawab atau berkewajiban atas penerapan atau penggunaan informasi, produk, atau layanan apa pun yang dijelaskan di sini, kecuali sebagaimana disetujui secara tertulis oleh Altera. Pelanggan Altera disarankan untuk mendapatkan spesifikasi perangkat versi terbaru sebelum mengandalkan informasi yang dipublikasikan dan sebelum memesan produk atau layanan. *Nama dan merek lain dapat diklaim sebagai hak milik orang lain.
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Tabel 29. Bagian Penghubung
.teks
Bagian Penghubung
.rodata
.rwdata
.bss
.tumpukan
.tumpukan
Deskripsi Kode yang dapat dieksekusi. Semua data baca-saja yang digunakan dalam eksekusi program. Menyimpan data baca-tulis yang digunakan dalam eksekusi program. Berisi data statis yang belum diinisialisasi. Berisi memori yang dialokasikan secara dinamis. Menyimpan parameter pemanggilan fungsi dan data sementara lainnya.
Anda dapat menambahkan bagian tautan tambahan ke .elf file untuk menyimpan kode dan data khusus. Bagian-bagian penghubung ini ditempatkan di wilayah memori bernama, yang didefinisikan sesuai dengan perangkat dan alamat memori fisik. Secara default, BSP Editor secara otomatis menghasilkan bagian-bagian penghubung ini. Namun, Anda dapat mengontrol bagian-bagian penghubung untuk aplikasi tertentu.
4.2.1. Perilaku Menghubungkan
Bagian ini menjelaskan perilaku penautan default Editor BSP dan cara mengontrol perilaku penautan.
4.2.1.1. Tautan BSP Default
Selama konfigurasi BSP, alat melakukan langkah-langkah berikut secara otomatis:
1. Tetapkan nama wilayah memori: Tetapkan nama untuk setiap perangkat memori sistem dan tambahkan setiap nama ke penghubung file sebagai wilayah memori.
2. Temukan memori terbesar: Identifikasi wilayah memori baca-tulis terbesar di linker file.
3. Tetapkan bagian penghubung: Tempatkan bagian penghubung default (.text, .rodata, .rwdata, .bss, .heap, dan .stack) di wilayah memori yang diidentifikasi pada langkah sebelumnya.
4. Menulis files: Tulis linker.x dan linker.h files.
Biasanya, skema alokasi bagian penghubung berfungsi selama proses pengembangan perangkat lunak karena aplikasi terjamin berfungsi jika memorinya cukup besar.
Aturan untuk perilaku tautan default terdapat dalam skrip Tcl yang dihasilkan Altera bsp-set-defaults.tcl dan bsp-linker-utils.tcl yang ditemukan di Direktori /niosv/scripts/bsp-defaults. Perintah niosv-bsp akan memanggil skrip-skrip ini. Jangan ubah skrip-skrip ini secara langsung.
Buku Pegangan Desain Prosesor Tertanam Nios® V 48
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
4.2.1.2. Tautan BSP yang Dapat Dikonfigurasi
Anda dapat mengelola perilaku penautan default di tab Skrip Penaut pada Editor BSP. Manipulasi skrip penaut menggunakan metode berikut: · Tambahkan wilayah memori: Memetakan nama wilayah memori ke perangkat memori fisik. · Tambahkan pemetaan bagian: Memetakan nama bagian ke wilayah memori. BSP
Editor memungkinkan Anda untuk view peta memori sebelum dan sesudah membuat perubahan.
4.3. Metode Booting Prosesor Nios V
Ada beberapa metode untuk mem-boot prosesor Nios V di perangkat FPGA Altera. Metode untuk mem-boot prosesor Nios V bervariasi, tergantung pada pilihan memori flash dan keluarga perangkat.
Tabel 30. Memori Flash yang Didukung dengan Opsi Booting Masing-masing
Memori Booting yang Didukung
Perangkat
Flash Pada Chip (untuk konfigurasi internal)
Maksimal 10 perangkat saja (dengan IP Flash On-Chip)
Flash QSPI Tujuan Umum (hanya untuk data pengguna)
Semua perangkat FPGA yang didukung (dengan IP FPGA Antarmuka Flash Serial Generik)
Konfigurasi QSPI Flash (untuk konfigurasi Serial Aktif)
Blok kontrol berbasis
perangkat (dengan Generik
Antarmuka Flash Serial Intel FPGA IP)(2)
Metode Booting Prosesor Nios V
Lokasi Runtime Aplikasi
Mesin Fotokopi Boot
Aplikasi prosesor Nios V dieksekusi di tempat dari On-Chip Flash
On-Chip Flash (XIP) + OCRAM/ RAM Eksternal (untuk bagian data yang dapat ditulis)
fungsi alt_load()
Aplikasi prosesor Nios V disalin dari On-Chip Flash ke RAM menggunakan boot copier
OCRAM/RAM Eksternal
Menggunakan Kembali Bootloader melalui GSFI
Aplikasi prosesor Nios V dijalankan di tempat dari flash QSPI tujuan umum
Flash QSPI tujuan umum (XIP) + OCRAM/RAM Eksternal (untuk bagian data yang dapat ditulis)
fungsi alt_load()
Aplikasi prosesor Nios V disalin dari flash QSPI tujuan umum ke RAM menggunakan boot copier
OCRAM/RAM Eksternal
Bootloader melalui GSFI
Aplikasi prosesor Nios V dijalankan di tempat dari konfigurasi flash QSPI
Konfigurasi QSPI flash (XIP) + OCRAM/RAM Eksternal (untuk bagian data yang dapat ditulis)
fungsi alt_load()
Aplikasi prosesor Nios V disalin dari flash QSPI konfigurasi ke RAM menggunakan boot copier
OCRAM/ Bootloader RAM Eksternal melalui GSFI dilanjutkan…
(2) Lihat AN 980: Dukungan Perangkat Lunak Prosesor Nios V Quartus Prime untuk daftar perangkat.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 49
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Memori Booting yang Didukung
Memori pada Chip (OCRAM) Memori yang Tergandeng Erat (TCM)
Perangkat
Perangkat berbasis SDM (dengan Mailbox Client Intel FPGA IP). (2)
Semua perangkat FPGA Altera yang didukung (2)
Semua perangkat FPGA Altera yang didukung (2)
Metode Booting Prosesor Nios V
Aplikasi prosesor Nios V disalin dari flash QSPI konfigurasi ke RAM menggunakan boot copier
Aplikasi prosesor Nios V dieksekusi di tempat dari OCRAM
Aplikasi prosesor Nios V dieksekusi di tempat dari TCM
Lokasi Runtime Aplikasi
Mesin Fotokopi Boot
OCRAM/Bootloader RAM Eksternal melalui SDM
Bahasa Indonesia: OCRAM
fungsi alt_load()
Instruksi TCM (XIP) Tidak Ada + Data TCM (untuk bagian data yang dapat ditulis)
Gambar 28. Alur Booting Prosesor Nios V
Mengatur ulang
Prosesor melompat untuk mengatur ulang vektor (awal kode boot)
Kode aplikasi dapat disalin ke lokasi memori lain (tergantung pada opsi boot)
Kode boot menginisialisasi prosesor
Tergantung pada opsi boot, kode boot dapat menyalin nilai awal untuk data/kode ke ruang memori lain (alt_load)
Kode boot menginisialisasi kode aplikasi dan ruang memori data
Kode boot menginisialisasi semua periferal sistem dengan driver HAL (alt_main)
Pintu masuk utama
Informasi Terkait · Panduan Pengguna IP Altera FPGA Antarmuka Flash Serial Generik
Buku Pegangan Desain Prosesor Tertanam Nios® V 50
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
· Panduan Pengguna IP FPGA Altera Mailbox Client · AN 980: Dukungan Perangkat Lunak Prosesor Nios V Quartus Prime
4.4. Pengantar Metode Booting Prosesor Nios V
Sistem prosesor Nios V mengharuskan citra perangkat lunak dikonfigurasi dalam memori sistem sebelum prosesor dapat mulai menjalankan program aplikasi. Lihat Bagian Linker untuk bagian linker default.
Editor BSP menghasilkan skrip penghubung yang melakukan fungsi-fungsi berikut: · Memastikan bahwa perangkat lunak prosesor ditautkan sesuai dengan pengaturan penghubung
dari editor BSP dan menentukan di mana perangkat lunak berada dalam memori. · Memposisikan wilayah kode prosesor dalam komponen memori sesuai dengan
komponen memori yang ditugaskan.
Bagian berikut ini menjelaskan secara singkat metode booting prosesor Nios V yang tersedia.
4.4.1. Eksekusi Aplikasi Prosesor Nios V di Tempat dari Boot Flash
Altera merancang pengontrol flash sedemikian rupa sehingga ruang alamat flash boot dapat langsung diakses oleh prosesor Nios V setelah sistem direset, tanpa perlu menginisialisasi pengontrol memori atau perangkat memori. Hal ini memungkinkan prosesor Nios V untuk mengeksekusi kode aplikasi yang tersimpan di perangkat boot secara langsung tanpa menggunakan mesin fotokopi boot untuk menyalin kode tersebut ke jenis memori lain. Pengontrol flash tersebut adalah: · Flash On-Chip dengan IP Flash On-Chip (hanya pada perangkat MAX® 10) · Flash QSPI tujuan umum dengan IP Antarmuka Flash Serial Generik · Flash QSPI konfigurasi dengan IP Antarmuka Flash Serial Generik (kecuali MAX 10)
perangkat)
Ketika aplikasi prosesor Nios V dijalankan di tempat dari flash boot, Editor BSP melakukan fungsi-fungsi berikut: · Mengatur bagian penghubung .text ke wilayah memori flash boot. · Mengatur bagian penghubung .bss, .rodata, .rwdata, .stack dan .heap ke RAM.
Wilayah memori. Anda harus mengaktifkan fungsi alt_load() di Pengaturan BSP untuk menyalin bagian data (.rodata, .rwdata, .exceptions) ke RAM setelah sistem direset. Bagian kode (.text) tetap berada di wilayah memori flash boot.
Informasi Terkait · Panduan Pengguna IP Altera FPGA Antarmuka Flash Serial Generik · Panduan Pengguna Memori Flash Altera MAX 10
4.4.1.1. alt_muat()
Anda dapat mengaktifkan fungsi alt_load() dalam kode HAL menggunakan Editor BSP.
Saat digunakan dalam aliran boot eksekusi-di-tempat, fungsi alt_load() melakukan tugas-tugas berikut:
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 51
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
· Beroperasi sebagai penyalin boot mini yang menyalin bagian memori ke RAM berdasarkan pengaturan BSP.
· Menyalin bagian data (.rodata, .rwdata, .exceptions) ke RAM, tetapi tidak ke bagian kode (.text). Bagian kode (.text) merupakan bagian baca-saja dan tetap berada di wilayah memori flash booting. Pemartisian ini membantu meminimalkan penggunaan RAM, tetapi dapat membatasi kinerja eksekusi kode karena akses ke memori flash lebih lambat daripada akses ke RAM on-chip.
Tabel berikut mencantumkan pengaturan dan fungsi Editor BSP:
Tabel 31. Pengaturan Editor BSP
Pengaturan Editor BSP hal.linker.enable_alt_load hal.linker.enable_alt_load_copy_rodata hal.linker.enable_alt_load_copy_rwdata hal.linker.enable_alt_load_copy_exceptions
Fungsi Mengaktifkan fungsi alt_load(). alt_load() menyalin bagian .rodata ke RAM. alt_load() menyalin bagian .rwdata ke RAM. alt_load() menyalin bagian .exceptions ke RAM.
4.4.2. Aplikasi Prosesor Nios V Disalin dari Boot Flash ke RAM Menggunakan Boot Copier
Prosesor Nios V dan HAL menyertakan penyalin boot yang menyediakan fungsionalitas yang memadai untuk sebagian besar aplikasi prosesor Nios V dan mudah diimplementasikan dengan alur pengembangan perangkat lunak Nios V.
Ketika aplikasi menggunakan boot copier, semua bagian linker (.text, .heap, .rwdata, .rodata, .bss, .stack) akan diatur ke RAM internal atau eksternal. Penggunaan boot copier untuk menyalin aplikasi prosesor Nios V dari flash boot ke RAM internal atau eksternal untuk dieksekusi akan membantu meningkatkan kinerja eksekusi.
Untuk opsi boot ini, prosesor Nios V mulai menjalankan perangkat lunak penyalin boot setelah sistem direset. Perangkat lunak menyalin aplikasi dari flash boot ke RAM internal atau eksternal. Setelah proses selesai, prosesor Nios V mentransfer kendali program ke aplikasi.
Catatan:
Jika penyalin boot dalam keadaan flash, maka fungsi alt_load() tidak perlu dipanggil karena keduanya memiliki tujuan yang sama.
4.4.2.1. Bootloader Prosesor Nios V melalui Antarmuka Flash Serial Generik
Bootloader via GSFI adalah mesin penyalin boot prosesor Nios V yang mendukung memori flash QSPI pada perangkat berbasis blok kontrol. Bootloader via GSFI mencakup fitur-fitur berikut:
· Menemukan aplikasi perangkat lunak dalam memori nonvolatil.
· Membongkar dan menyalin citra aplikasi perangkat lunak ke RAM.
· Secara otomatis mengalihkan eksekusi prosesor ke kode aplikasi dalam RAM setelah penyalinan selesai.
Buku Pegangan Desain Prosesor Tertanam Nios® V 52
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Citra boot terletak tepat setelah mesin fotokopi boot. Anda perlu memastikan offset reset prosesor Nios V mengarah ke awal mesin fotokopi boot. Gambar: Peta Memori untuk QSPI Flash dengan Bootloader melalui GSFI menunjukkan peta memori flash untuk QSPI flash saat menggunakan mesin fotokopi boot. Peta memori ini mengasumsikan memori flash menyimpan citra FPGA dan perangkat lunak aplikasi.
Tabel 32. Bootloader melalui GSFI untuk Inti Prosesor Nios V
Inti Prosesor Nios V
Prosesor Nios V/m
Bootloader melalui GSFI File Lokasi
/niosv/komponen/bootloader/ niosv_m_bootloader.srec
Prosesor Nios V/g
/niosv/komponen/bootloader/ niosv_g_bootloader.srec
Gambar 29. Peta Memori untuk QSPI Flash dengan Bootloader melalui GSFI
Data Pelanggan (*.hex)
Kode Aplikasi
Catatan:
Setel Ulang Offset Vektor
Mesin Fotokopi Boot
0x01E00000
Gambar FPGA (*.sof)
ukuran 0x00000000
1. Di awal peta memori terdapat citra FPGA diikuti oleh data Anda, yang terdiri dari penyalin boot dan kode aplikasi.
2. Anda harus mengatur offset pengaturan ulang prosesor Nios V di Platform Designer dan mengarahkannya ke awal mesin fotokopi boot.
3. Ukuran citra FPGA tidak diketahui. Anda hanya dapat mengetahui ukuran pastinya setelah kompilasi proyek Quartus Prime. Anda harus menentukan batas atas ukuran citra FPGA Altera. Misalnyaampmisalnya, jika ukuran citra FPGA diperkirakan kurang dari 0x01E00000, atur Reset Offset ke 0x01E00000 di Platform Designer, yang juga merupakan awal dari penyalin boot.
4. Praktik desain yang baik terdiri dari pengaturan offset vektor reset pada batas sektor flash untuk memastikan tidak ada penghapusan sebagian citra FPGA jika aplikasi perangkat lunak diperbarui.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 53
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
4.4.2.2. Bootloader Prosesor Nios V melalui Pengelola Perangkat Aman
Bootloader via Secure Device Manager (SDM) adalah kode aplikasi HAL yang memanfaatkan driver Mailbox Client Altera FPGA IP HAL untuk booting prosesor. Altera merekomendasikan aplikasi bootloader ini saat menggunakan konfigurasi flash QSPI pada perangkat berbasis SDM untuk mem-boot prosesor Nios V.
Setelah sistem direset, prosesor Nios V pertama-tama mem-boot Bootloader melalui SDM dari memori kecil pada chip dan mengeksekusi Bootloader melalui SDM untuk berkomunikasi dengan flash QSPI konfigurasi menggunakan IP Klien Kotak Surat.
Bootloader melalui SDM melakukan tugas-tugas berikut: · Menemukan perangkat lunak Nios V di flash QSPI konfigurasi. · Menyalin perangkat lunak Nios V ke dalam RAM on-chip atau RAM eksternal. · Mengalihkan eksekusi prosesor ke perangkat lunak Nios V di dalam RAM on-chip atau RAM eksternal.
RAM eksternal.
Setelah proses selesai, Bootloader melalui SDM akan mentransfer kendali program ke aplikasi pengguna. Altera merekomendasikan organisasi memori sebagaimana diuraikan dalam Organisasi Memori untuk Bootloader melalui SDM.
Gambar 30. Alur Proses Bootloader melalui SDM
Konfigurasi
Kilatan
2
Perangkat Lunak Nios V
SDM
Perangkat FPGA Berbasis SDM
IP Klien Kotak Surat
Logika FPGA Nios V
4 RAM Eksternal
Perangkat Lunak Nios V
Pada Chip 4
EMIF
RAM
Memori On-Chip
IP
Nios V
1
Perangkat lunak
Bootloader melalui SDM
3
3
1. Prosesor Nios V menjalankan Bootloader melalui SDM dari memori pada chip.
2. Bootloader melalui SDM berkomunikasi dengan flash konfigurasi dan menemukan perangkat lunak Nios V.
3. Bootloader melalui SDM menyalin perangkat lunak Nios V dari Configuration Flash ke dalam RAM pada chip/RAM eksternal.
4. Bootloader melalui SDM mengalihkan eksekusi prosesor Nios V ke perangkat lunak Nios V dalam RAM pada chip/RAM eksternal.
4.4.3. Eksekusi Aplikasi Prosesor Nios V di Tempat dari OCRAM
Dalam metode ini, alamat reset prosesor Nios V diatur ke alamat dasar memori on-chip (OCRAM). Biner aplikasi (.hex) file dimuat ke dalam OCRAM ketika FPGA dikonfigurasi, setelah desain perangkat keras dikompilasi dalam perangkat lunak Quartus Prime. Setelah prosesor Nios V direset, aplikasi mulai dieksekusi dan bercabang ke titik masuk.
Buku Pegangan Desain Prosesor Tertanam Nios® V 54
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Catatan:
· Execute-In-Place dari OCRAM tidak memerlukan boot copier karena aplikasi prosesor Nios V sudah ada pada saat pengaturan ulang sistem.
· Altera menyarankan untuk mengaktifkan alt_load() untuk metode booting ini sehingga perangkat lunak yang tertanam berperilaku identik saat diatur ulang tanpa mengkonfigurasi ulang citra perangkat FPGA.
· Anda harus mengaktifkan fungsi alt_load() di Pengaturan BSP untuk menyalin bagian .rwdata setelah sistem direset. Dengan metode ini, nilai awal untuk variabel yang diinisialisasi disimpan secara terpisah dari variabel terkait untuk menghindari penimpaan saat program dijalankan.
4.4.4. Eksekusi Aplikasi Prosesor Nios V di Tempat dari TCM
Metode eksekusi di tempat menetapkan alamat reset prosesor Nios V ke alamat dasar memori yang terhubung erat (TCM). Biner aplikasi (.hex) file dimuat ke dalam TCM ketika Anda mengonfigurasi FPGA setelah mengompilasi desain perangkat keras dalam perangkat lunak Quartus Prime. Setelah prosesor Nios V direset, aplikasi mulai dieksekusi dan bercabang ke titik masuk.
Catatan:
Execute-In-Place dari TCM tidak memerlukan boot copier karena aplikasi prosesor Nios V sudah ada pada saat pengaturan ulang sistem.
4.5. Booting Prosesor Nios V dari Flash On-Chip (UFM)
Proses booting dan eksekusi perangkat lunak prosesor Nios V dari flash on-chip (UFM) tersedia di perangkat FPGA MAX 10. Prosesor Nios V mendukung dua opsi booting berikut menggunakan Flash On-Chip dalam mode Konfigurasi Internal:
· Aplikasi prosesor Nios V dieksekusi di tempat dari On-Chip Flash.
· Aplikasi prosesor Nios V disalin dari On-Chip Flash ke RAM menggunakan boot copier.
Tabel 33. Memori Flash yang Didukung dengan Opsi Booting Masing-masing
Memori Booting yang Didukung
Metode Booting Nios V
Lokasi Runtime Aplikasi
Mesin Fotokopi Boot
MAKS 10 perangkat saja (dengan IP Flash OnChip)
Aplikasi prosesor Nios V dieksekusi di tempat dari On-Chip Flash
Aplikasi prosesor Nios V disalin dari On-Chip Flash ke RAM menggunakan boot copier
On-Chip Flash (XIP) + OCRAM/ RAM Eksternal (untuk bagian data yang dapat ditulis)
fungsi alt_load()
OCRAM/RAM Eksternal
Menggunakan Kembali Bootloader melalui GSFI
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 55
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Gambar 31.
Desain, Konfigurasi, dan Alur Booting
Desain · Buat proyek berbasis Prosesor Nios V Anda menggunakan Platform Designer. · Pastikan ada RAM eksternal atau RAM pada chip dalam desain sistem.
Konfigurasi dan Kompilasi FPGA
· Atur mode konfigurasi internal yang sama pada IP Flash On-chip di perangkat lunak Platform Designer dan Quartus Prime. · Atur agen reset prosesor Nios V ke Flash On-chip. · Pilih metode inisialisasi UFM yang Anda inginkan. · Buat desain Anda di Platform Designer. · Kompilasi proyek Anda di perangkat lunak Quartus Prime.
Proyek BSP Aplikasi Pengguna · Buat prosesor Nios V HAL BSP berdasarkan .sopcinfo file dibuat oleh Platform Designer. · Edit pengaturan BSP prosesor Nios V dan Skrip Linker di Editor BSP. · Hasilkan proyek BSP.
Proyek Aplikasi Pengguna APP · Mengembangkan kode aplikasi prosesor Nios V. · Mengompilasi aplikasi prosesor Nios V dan menghasilkan aplikasi prosesor Nios V (.hex) file· Kompilasi ulang proyek Anda dalam perangkat lunak Quartus Prime jika Anda mencentang opsi Inisialisasi konten memori di Intel FPGA On-Chip Flash IP.
Pemrograman FileKonversi, Unduh dan Jalankan · Hasilkan Flash On-Chip .pof file menggunakan Pemrograman Konversi Filefitur dalam perangkat lunak Quartus Prime.
· Programkan .pof file ke perangkat MAX 10 Anda. · Matikan perangkat keras Anda.
4.5.1. Deskripsi Flash On-Chip FPGA MAX 10
Perangkat FPGA MAX 10 berisi flash on-chip yang dibagi menjadi dua bagian: · Memori Flash Konfigurasi (CFM) — menyimpan data konfigurasi perangkat keras untuk
MAX 10 FPGA. · Memori Flash Pengguna (UFM) — menyimpan data pengguna atau aplikasi perangkat lunak.
Arsitektur UFM perangkat MAX 10 merupakan kombinasi IP lunak dan keras. Anda hanya dapat mengakses UFM menggunakan On-Chip Flash IP Core dalam perangkat lunak Quartus Prime.
Inti IP Flash On-chip mendukung fitur-fitur berikut: · Akses baca atau tulis ke sektor UFM dan CFM (jika diaktifkan di Platform Designer)
Menggunakan antarmuka data dan kontrol slave Avalon MM. · Mendukung penghapusan halaman, penghapusan sektor, dan penulisan sektor. · Model simulasi untuk akses baca/tulis UFM menggunakan berbagai alat simulasi EDA.
Buku Pegangan Desain Prosesor Tertanam Nios® V 56
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Tabel 34. Wilayah Flash pada Chip di Perangkat FPGA MAX 10
Wilayah Flash
Fungsionalitas
Konfigurasi Memori Flash (sektor CFM0-2)
konfigurasi FPGA file penyimpanan
Memori Flash Pengguna (sektor UFM0-1)
Aplikasi prosesor Nios V dan data pengguna
Perangkat FPGA MAX 10 mendukung beberapa mode konfigurasi, dan beberapa mode ini memungkinkan penggunaan CFM1 dan CFM2 sebagai wilayah UFM tambahan. Tabel berikut menunjukkan lokasi penyimpanan gambar konfigurasi FPGA berdasarkan mode konfigurasi FPGA MAX 10.
Tabel 35. Lokasi Penyimpanan Gambar Konfigurasi FPGA
Mode Konfigurasi Gambar terkompresi ganda
Gambar Terkompresi CFM2 2
CFM1
Gambar Terkompresi CFM0 1
Gambar tunggal yang tidak terkompresi
UFM virtual
Gambar yang tidak terkompresi
Gambar tunggal yang tidak terkompresi dengan Inisialisasi Memori
Gambar yang tidak terkompresi (dengan konten memori pada chip yang telah diinisialisasi sebelumnya)
Citra terkompresi tunggal dengan Inisialisasi Memori Citra terkompresi (dengan konten memori pada chip yang telah diinisialisasi sebelumnya)
Gambar terkompresi tunggal
UFM virtual
Gambar Terkompresi
Anda harus menggunakan inti IP Flash On-chip untuk mengakses memori flash di MAX 10 FPGA. Anda dapat membuat dan menghubungkan IP Flash On-chip ke perangkat lunak Quartus Prime. Prosesor inti lunak Nios V menggunakan interkoneksi Platform Designer untuk berkomunikasi dengan IP Flash On-chip.
Gambar 32. Koneksi antara On-chip Flash IP dan Prosesor Nios V
Catatan:
Pastikan port csr On-chip Flash terhubung ke data_manager prosesor Nios V untuk memungkinkan prosesor mengendalikan operasi tulis dan hapus.
Inti IP Flash pada chip dapat menyediakan akses ke lima sektor flash – UFM0, UFM1, CFM0, CFM1, dan CFM2.
Informasi penting tentang sektor UFM dan CFM: · Sektor CFM ditujukan untuk penyimpanan data konfigurasi (bitstream) (*.pof).
· Data pengguna dapat disimpan di sektor UFM dan dapat disembunyikan, jika pengaturan yang benar dipilih dalam alat Platform Designer.
· Perangkat tertentu tidak memiliki sektor UFM1. Anda dapat merujuk ke tabel: Ukuran Sektor UFM dan CFM untuk sektor yang tersedia di setiap perangkat FPGA MAX 10.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 57
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
· Anda dapat mengonfigurasi CFM2 sebagai UFM virtual dengan memilih mode konfigurasi Gambar Tunggal yang Tidak Terkompresi.
· Anda dapat mengonfigurasi CFM2 dan CFM1 sebagai UFM virtual dengan memilih mode konfigurasi Gambar Tunggal yang Tidak Terkompresi.
· Ukuran setiap sektor bervariasi dengan perangkat MAX 10 FPGA yang dipilih.
Tabel 36.
Ukuran Sektor UFM dan CFM
Tabel ini mencantumkan dimensi susunan UFM dan CFM.
Perangkat
Halaman per Sektor
UFM1 UFM0 CFM2 CFM1 CFM0
Ukuran Halaman (Kbit)
Pengguna Maksimum
Ukuran Memori Flash (Kbit) (3)
Ukuran Memori Konfigurasi Total (Kbit)
10M02 3
3
0
0
34 16
96
544
10M04 0
8
Telepon: 41 29 70 16
1248
2240
10M08 8
8
Telepon: 41 29 70 16
1376
2240
10M16 4
4
Telepon: 38 28 66 32
2368
4224
10M25 4
4
Telepon: 52 40 92 32
3200
5888
10M40 4
4
Telepon: 48 36 84 64
5888
10752
10M50 4
4
Telepon: 48 36 84 64
5888
10752
Ukuran OCRAM (Kbit)
108 189 378 549 675 1260 1638
Informasi Terkait · Panduan Pengguna Konfigurasi FPGA MAX 10 · Panduan Pengguna Memori Flash Altera MAX 10
4.5.2. Eksekusi Aplikasi Prosesor Nios V di Tempat dari UFM
Solusi Execute-In-Place dari UFM cocok untuk aplikasi prosesor Nios V yang membutuhkan penggunaan memori on-chip terbatas. Fungsi alt_load() beroperasi sebagai mesin fotokopi boot mini yang menyalin bagian data (.rodata, .rwdata, atau .exceptions) dari memori boot ke RAM berdasarkan pengaturan BSP. Bagian kode (.text),
yang merupakan bagian baca-saja, tetap berada di wilayah memori Flash On-chip MAX 10. Pengaturan ini meminimalkan penggunaan RAM tetapi dapat membatasi kinerja eksekusi kode karena akses ke memori flash lebih lambat daripada RAM on-chip.
Aplikasi prosesor Nios V diprogram ke dalam sektor UFM. Vektor reset prosesor Nios V menunjuk ke alamat dasar UFM untuk mengeksekusi kode dari UFM setelah sistem direset.
Jika Anda menggunakan debugger tingkat sumber untuk men-debug aplikasi, Anda harus menggunakan breakpoint perangkat keras. Hal ini karena UFM tidak mendukung akses memori acak, yang diperlukan untuk debugging breakpoint lunak.
Catatan:
Anda tidak dapat menghapus atau menulis UFM saat melakukan eksekusi di tempat dalam MAX 10. Beralihlah ke pendekatan penyalin boot jika Anda perlu menghapus atau menulis UFM.
(3) Nilai maksimum yang mungkin, yang bergantung pada mode konfigurasi yang Anda pilih.
Buku Pegangan Desain Prosesor Tertanam Nios® V 58
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Gambar 33. Aplikasi Prosesor Nios V XIP dari UFM
Maksimal 10 Perangkat
.POF
Perangkat Keras Nios V .SOF
Perangkat Lunak Nios V .HEX
Pemrogram Quartus
Flash pada Chip
CFM
Perangkat Keras Nios V
Universitas Islam Negeri (UMN)
Perangkat Lunak Nios V
Konfigurasi Internal
IP Flash pada Chip
Logika FPGA
Prosesor Nios V
RAM pada Chip
Luar
RAM
EMIF
IP
4.5.2.1. Alur Desain Perangkat Keras
Bagian berikut menjelaskan metode langkah demi langkah untuk membangun sistem yang dapat di-boot untuk aplikasi prosesor Nios V dari On-Chip Flash.ampfile di bawah ini dibangun menggunakan perangkat MAX 10.
Pengaturan Komponen IP
1. Buat proyek prosesor Nios V Anda menggunakan Quartus Prime dan Platform Designer. 2. Pastikan RAM eksternal atau Memori On-Chip (OCRAM) ditambahkan ke Platform Anda.
Sistem desainer.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 59
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Gambar 34. ContohampKoneksi IP di Platform Designer untuk Booting Nios V dari OnChip Flash (UFM)
3. Pada editor parameter On-Chip Flash IP, atur Mode Konfigurasi ke salah satu berikut, sesuai dengan preferensi desain Anda: · Citra Tunggal yang Tidak Terkompresi · Citra Tunggal yang Terkompresi · Citra Tunggal yang Tidak Terkompresi dengan Inisialisasi Memori · Citra Tunggal yang Terkompresi dengan Inisialisasi Memori
Untuk informasi lebih lanjut tentang Dual Compressed Images, rujuk pada Panduan Pengguna Konfigurasi FPGA MAX 10 – Pemutakhiran Sistem Jarak Jauh.
Catatan:
Anda harus menetapkan Akses Tersembunyi ke setiap wilayah CFM di IP Flash On-Chip.
Gambar 35. Pemilihan Mode Konfigurasi di Editor Parameter Flash On-Chip
Pengaturan IP Flash On-Chip – Inisialisasi UFM Anda dapat memilih salah satu metode berikut sesuai dengan preferensi Anda:
Buku Pegangan Desain Prosesor Tertanam Nios® V 60
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Catatan:
Langkah-langkah dalam subbab berikutnya (Alur Desain Perangkat Lunak dan Pemrograman) bergantung pada pilihan yang Anda buat di sini.
· Metode 1: Inisialisasi data UFM di SOF selama kompilasi
Quartus Prime memasukkan data inisialisasi UFM ke dalam SOF selama kompilasi. Kompilasi ulang SOF diperlukan jika terjadi perubahan pada data UFM.
1. Centang Inisialisasi konten flash dan Aktifkan inisialisasi non-default file.
Gambar 36. Inisialisasi Konten Flash dan Aktifkan Inisialisasi Non-default File
2. Tentukan jalur .hex yang dihasilkan file (dari perintah elf2hex) di hex atau mif yang dibuat Pengguna file.
Gambar 37. Menambahkan .hex File Jalur
· Metode 2: Gabungkan data UFM dengan SOF yang dikompilasi selama pembuatan POF
Data UFM digabungkan dengan SOF yang dikompilasi saat mengonversi pemrograman files. Anda tidak perlu mengkompilasi ulang SOF, meskipun data UFM berubah. Selama pengembangan, Anda tidak perlu mengkompilasi ulang SOF. fileuntuk perubahan dalam aplikasi. Alter merekomendasikan metode ini untuk pengembang aplikasi.
1. Hapus tanda centang Inisialisasi konten flash..
Gambar 38. Inisialisasi Konten Flash dengan Inisialisasi Non-default File
Atur Ulang Pengaturan Agen untuk Metode Eksekusi di Tempat Prosesor Nios V
1. Pada editor parameter prosesor Nios V, atur Reset Agent ke On-Chip Flash.
Gambar 39. Pengaturan Editor Parameter Prosesor Nios V dengan Agen Reset Diatur ke Flash On-Chip
2. Klik Hasilkan HDL ketika kotak dialog Generasi muncul. 3. Tentukan output file opsi pembuatan dan klik Hasilkan.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 61
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Quartus Prime Software Settings 1. In the Quartus Prime software, click Assignments Device Device and Pin
Options Configuration. Set the Configuration mode according to the setting in On-Chip Flash IP. Figure 40. Configuration Mode Selection in Quartus Prime Software
2. Klik OK untuk keluar dari jendela Opsi Perangkat dan Pin,
3. Klik OK untuk keluar dari jendela Perangkat.
4. Click Processing Start Compilation to compile your project and generate the .sof file.
Catatan:
Jika pengaturan mode konfigurasi dalam perangkat lunak Quartus Prime dan editor parameter Platform Designer berbeda, proyek Quartus Prime gagal dengan pesan kesalahan berikut.
Gambar 41.
Pesan Kesalahan untuk Pengaturan Mode Konfigurasi yang Berbeda (14740): Mode konfigurasi pada atom “q_sys:q_sys_inst| altera_onchip_flash:onchip_flash_1|altera_onchip_flash_block: altera_onchip_flash_block|ufm_block” tidak sesuai dengan pengaturan proyek. Perbarui dan buat ulang sistem Qsys agar sesuai dengan pengaturan proyek.
Informasi Terkait Panduan Pengguna Konfigurasi FPGA MAX 10
4.5.2.2. Alur Desain Perangkat Lunak
Bagian ini menyediakan alur desain untuk menghasilkan dan membangun proyek perangkat lunak prosesor Nios V. Untuk memastikan alur pembangunan yang efisien, Anda disarankan untuk membuat pohon direktori serupa dalam proyek desain Anda. Alur desain perangkat lunak berikut didasarkan pada pohon direktori ini.
Untuk membuat pohon direktori proyek perangkat lunak, ikuti langkah-langkah berikut: 1. Di folder proyek desain Anda, buat folder bernama perangkat lunak. 2. Di folder perangkat lunak, buat dua folder bernama hal_app dan hal_bsp.
Gambar 42. Pohon Direktori Proyek Perangkat Lunak
Buku Pegangan Desain Prosesor Tertanam Nios® V 62
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Membuat Proyek Aplikasi BSP
Untuk meluncurkan BSP Editor, ikuti langkah-langkah berikut: 1. Masukkan Nios V Command Shell. 2. Panggil BSP Editor dengan perintah niosv-bsp-editor. 3. Di BSP Editor, klik File BSP baru untuk memulai proyek BSP Anda. 4. Konfigurasikan pengaturan berikut:
· Informasi SOPC File nama: Berikan SOPCINFO file (.sopcinfo). · Nama CPU: Pilih prosesor Nios V. · Sistem operasi: Pilih sistem operasi prosesor Nios V. · Versi: Biarkan sebagai default. · Direktori target BSP: Pilih jalur direktori proyek BSP. Anda dapat
atur sebelumnya di /software/hal_bsp dengan mengaktifkan Gunakan lokasi default. · Pengaturan BSP File nama: Ketik nama Pengaturan BSP File· Skrip Tcl Tambahan: Berikan skrip Tcl BSP dengan mengaktifkan Aktifkan skrip Tcl Tambahan. 5. Klik OK.
Gambar 43. Konfigurasi BSP Baru
Mengonfigurasi Editor BSP dan Membuat Proyek 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. Enable the following settings:
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 63
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
· allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata Figure 44. Advanced.hal.linker Settings
b. Click on the Linker Script tab in the BSP Editor. c. Set the .exceptions and .text regions in the Linker Section Name to
On-Chip Flash. d. Set the rest of the regions in the Linker Section Name list to the On-Chip
Memory (OCRAM) or external RAM.
Figure 45. Linker Region Settings (Exception Vector Memory: On-Chip Flash)
3. If you select OCRAM/External RAM as exception vector, a. Enable the following settings: · allow_code_at_reset · enable_alt_load · enable_alt_load_copy_rodata · enable_alt_load_copy_rwdata · enable_alt_load_copy_exception
Figure 46. Linker Region Settings (Exception Vector Memory: OCRAM/External RAM)
b. Click on the Linker Script tab in the BSP Editor.
c. Set the.text regions in the Linker Section Name to On-Chip Flash.
d. Set the rest of the regions in the Linker Section Name list to the On-Chip Memory (OCRAM) or external RAM.
Buku Pegangan Desain Prosesor Tertanam Nios® V 64
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Figure 47. Linker Region Settings (Exception Vector Memory: OCRAM)
4. Click Generate to generate the BSP project. Generating the User Application Project File 1. Navigate to the software/hal_app folder and create your application source
code. 2. Launch the Nios V Command Shell. 3. Execute the command below to generate the application CMakeLists.txt.
niosv-app –app-dir=software/hal_app –bsp-dir=software/hal_bsp –srcs=software/hal_app/<user application>
Building the User Application Project You can choose to build the user application project using Ashling RiscFree IDE for Altera FPGAs or through the command line interface (CLI). If you prefer using CLI, you can build the user application using the following command: cmake -G “Unix Makefiles” -B software/hal_app/build -S software/hal_app make -C software/hal_app/build
The application (.elf) file is created in software/hal_app/build folder. Generating the HEX File You must generate a .hex file from your application .elf file, so you can create a .pof file suitable for programming the devices. 1. Launch the Nios V Command Shell. 2. For Nios V processor application boot from On-Chip Flash, use the following
command line to convert the ELF to HEX for your application. This command creates the user application (onchip_flash.hex) file. elf2hex software/hal_app/build/<user_application>.elf -o onchip_flash.hex
-b <base address of On-Chip Flash UFM region> -w 8 -e <end address of On-Chip Flash UFM region> 3. Recompile the hardware design if you check Initialize memory content option in On-Chip Flash IP (Method 1). This is to include the software data (.HEX) in the SOF file.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 65
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
4.5.2.3. Programming 1. In Quartus Prime, click File Konversi Pemrograman Files. 2. Under Output programming file, choose Programmer Object File (.pof) as Programming file type. 3. Set Mode to Internal Configuration.
Figure 48. Convert Programming File Pengaturan
4. Click Options/Boot info…, the MAX 10 Device Options window appears. 5. Based on the Initialize flash content settings in the On-chip Flash IP, perform
one of the following steps: · If Initialize flash content is checked (Method 1), the UFM initialization data
was included in the SOF duringQuartus Prime compilation. — Select Page_0 for UFM source: option. Click OK and proceed to the
next. Figure 49. Setting Page_0 for UFM Source if Initialize Flash Content is Checked
Buku Pegangan Desain Prosesor Tertanam Nios® V 66
Kirim Masukan
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
· If Initialize flash content is not checked (Method 2), choose Load memory file for the UFM source option. Browse to the generated On-chip Flash HEX file (onchip_flash.hex) in the File path: and click OK. This step adds UFM data separately to the SOF file during the programming file konversi.
Figure 50. Setting Load Memory File for UFM Source if Initialize Flash Content is Not Checked
6. In the Convert Programming File dialog box, at the Input files to convert section, click Add File… and point to the generated Quartus Prime .sof file.
Figure 51. Input Files to Convert in Convert Programming Files for Single Image Mode
7. Click Generate to create the .pof file. 8. Program the .pof file into your MAX 10 device. 9. Power cycle your hardware.
4.5.3. Nios V Processor Application Copied from UFM to RAM using Boot Copier
Altera recommends this solution for MAX 10 FPGA Nios V processor system designs where multiple iterations of application software development and high system performance are required. The boot copier is located within the UFM at an offset that is the same address as the reset vector. The Nios V application is located next to the boot copier.
For this boot option, the Nios V processor starts executing the boot copier upon system reset to copy the application from the UFM sector to the OCRAM or external RAM. Once copying is complete, the Nios V processor transfers the program control over to the application.
Catatan:
The applied boot copier is the same as the Bootloader via GSFI.
Kirim Masukan
Buku Pegangan Desain Prosesor Tertanam Nios® V 67
4. Solusi Konfigurasi dan Booting Prosesor Nios V 726952 | 2025.07.16 Juli XNUMX
Figure 52. Nios V Application Copied from UFM to RAM using Boot Copier
Maksimal 10 Perangkat
.POF
Perangkat Keras Nios V .SOF
Perangkat Lunak Nios V .HEX
Bootloader .SREC
Pemrogram Quartus
RAM eksternal
Perangkat Lunak Nios V
Flash pada Chip
CFM
Nios V Hardwa
Dokumen / Sumber Daya
![]() |
altera Nios V Embedded Processor [Bahasa Indonesia:] Panduan Pengguna Nios V, Nios V-m, Nios V-g, Nios V-c, Nios V Embedded Processor, Nios V, Embedded Processor, Processor |