AN 987: Nganyari Statis Parsial
Tutorial konfigurasi maneh
Tutorial Konfigurasi Sebagean Update Statis kanggo Papan Pangembangan FPGA Intel® ™ Agilex F-Series
Cathetan aplikasi iki nduduhake konfigurasi ulang sebagian (SUPR) nganyari statis ing Papan Pangembangan FPGA Intel ® F-Series. Konfigurasi ulang sebagean (PR) ngidini sampeyan ngatur ulang bagean saka FPGA Intel kanthi dinamis, nalika FPGA isih bisa digunakake. PR ngetrapake pirang-pirang personas ing wilayah tartamtu ing desain sampeyan, tanpa mengaruhi operasi ing wilayah njaba wilayah iki. Metodologi iki nyedhiyakake advan ing ngisor ikitaging sistem sing macem-macem fungsi nuduhake sumber daya FPGA sing padha:
- Ngidini konfigurasi ulang wektu mbukak
- Nambah skalabilitas desain
- Ngurangi wektu mudhun sistem
- Ndhukung fungsi multiplexing wektu dinamis ing desain
- Ngurangi biaya lan konsumsi daya kanthi nggunakake papan papan kanthi efisien
Apa sing diarani Static Update Partial Reconfiguration?
Ing PR tradisional, owah-owahan ing wilayah statis mbutuhake kompilasi ulang saben persona. Nanging, kanthi SUPR sampeyan bisa nemtokake wilayah khusus sing ngidini owah-owahan, tanpa mbutuhake kompilasi ulang personas. Teknik iki migunani kanggo bagean saka desain sing sampeyan bisa uga pengin ngganti kanggo nyuda resiko, nanging ora mbutuhake konfigurasi ulang runtime.
1.1. Syarat Tutorial
Tutorial iki mbutuhake ing ngisor iki:
- Dhasar kekarepan panggolékan lan kagunaan kang umum saka Intel Quartus® Prime Pro Edition FPGA alur lan proyek files.
- Instalasi Intel Quartus Prime Pro Edition versi 22.3, kanthi dhukungan piranti Intel Agilex.
- Kanggo implementasine FPGA, JTAG sambungan karo Papan pangembangan FPGA Intel Agilex F-Series ing bench.
- Download Desain Referensi Files. Informasi sing gegandhengan
- Pandhuan Pangguna Konfigurasi Sebagean
- Tutorial Reconfiguration sebagean
- Pelatihan Online Konfigurasi Ulang Parsial
Intel Corporation. Kabeh hak dilindhungi undhang-undhang. Intel, logo Intel, lan merek Intel liyane minangka merek dagang saka Intel Corporation utawa anak perusahaan. Intel njamin kinerja produk FPGA lan semikonduktor kanggo specifications saiki miturut babar pisan standar Intel, nanging nduweni hak kanggo owah-owahan ing sembarang produk lan layanan ing sembarang wektu tanpa kabar. Intel ora tanggung jawab utawa tanggung jawab sing muncul saka aplikasi utawa panggunaan informasi, produk, utawa layanan sing diterangake ing kene kajaba sing disepakati kanthi tinulis dening Intel. Pelanggan Intel disaranake njupuk versi paling anyar saka spesifikasi piranti sadurunge ngandelake informasi sing diterbitake lan sadurunge nggawe pesenan kanggo produk utawa layanan. * Jeneng lan merek liyane bisa uga diklaim minangka properti wong liya.
ISO 9001:2015 Registered
1.2. Desain referensi liwatview
Desain referensi iki kasusun saka siji, 32-bit counter. Ing tingkat Papan, desain nyambungake jam menyang sumber 50MHz, lan banjur nyambungake output kanggo papat LED ing Papan. Milih output saka counter bit, ing urutan tartamtu, nyebabake LED kedhip ing frekuensi tartamtu. Modul top_counter yaiku wilayah SUPR.
Gambar 1. Desain Referensi Datar
1.3. Wilayah Update statis liwatview
Gambar ing ngisor iki nuduhake diagram blok kanggo desain PR sing kalebu wilayah SUPR. Blok A minangka wilayah statis Top. Blok B iku wilayah SUPR. Blok C minangka partisi PR.
Gambar 2. Desain PR karo Wilayah SUPR
- A Top Statis Region-ngemot logika desain sing ora owah. Ngganti wilayah iki mbutuhake kompilasi ulang kabeh personas sing ana gandhengane. Wilayah statis kalebu bagean saka desain sing ora owah kanggo persona apa wae. Wilayah iki bisa kalebu sumber daya piranti periphery lan inti. Sampeyan kudu ndhaptar kabeh komunikasi antarane partisi SUPR lan PR ing wilayah statis. Keperluan iki mbantu njamin penutupan wektu kanggo personas apa wae, babagan wilayah statis.
- B SUPR Region-ngandhut inti-mung logika sing bisa ngganti kanggo mitigasi resiko, nanging ora mbutuhake runtime reconfiguration. Wilayah SUPR nduweni syarat lan watesan sing padha karo partisi PR. Partisi SUPR mung bisa ngemot sumber daya inti. Mulane, partisi SUPR kudu partisi anak saka partisi ROOT tingkat ndhuwur sing ngemot periphery desain lan jam. Ngganti wilayah SUPR ngasilake Obyek SRAM File (.sof) sing kompatibel karo kabeh binar Raw sing wis ana File (.rbf) files kanggo partisi PR C.
- C PR Partition-ngandhut logika sewenang-wenang sing bisa diprogram maneh nalika runtime karo logika desain apa wae sing cocog lan entuk penutupan wektu sajrone kompilasi.
1.4. Download Desain Referensi Files
Tutorial konfigurasi ulang parsial kasedhiya ing lokasi ing ngisor iki: https://github.com/intel/fpga-partial-reconfig
Kanggo ngundhuh tutorial:
- Klik Klone utawa download.
- Klik Unduh ZIP. Unzip fpga-partial-reconfig-master.zip file.
- Navigasi menyang tutorial / agilex_pcie_devkit_blinking_led_supr subfolder kanggo ngakses desain referensi.
Folder warata kasusun saka ing ngisor iki files:
Tabel 1. Desain Referensi Files
File jeneng | Katrangan |
ndhuwur. sv | Tingkat paling dhuwur file ngemot implementasi flat desain. Modul iki instantiates sub-partisi blinking_led lan modul top_counter. |
t op_counter . sv | Counter 32-bit tingkat ndhuwur sing ngontrol LED [1] langsung. Output kadhaptar saka counter kontrol LED [0], lan uga daya LED [2] lan LED [3] liwat modul blinking_led. |
blinking_led. sdc | Nemtokake watesan wektu kanggo proyek kasebut. |
blinking_led. sv | Ing tutorial iki, sampeyan ngowahi modul iki dadi partisi PR induk. Modul nampa output kadhaptar saka modul top_counter, sing ngontrol LED [2] lan LED [3]. |
blinking_led.qpf | Proyek Intel Quartus Prime file ngemot dhaptar kabeh revisi ing proyek kasebut. |
blinking_led . qs f | Setelan Intel Quartus Prime file ngemot tugas lan setelan kanggo proyek kasebut. |
Cathetan: Folder supr ngemot set lengkap files sampeyan nggawe nggunakake aplikasi iki cathetan. Referensi iki files ing sembarang titik sak nglewati.
1.5. Referensi Desain Walkthrough
Langkah-langkah ing ngisor iki nggambarake implementasi SUPR kanthi desain datar:
- Langkah 1: Miwiti
- Langkah 2: Nggawe Partisi Desain
- Langkah 3: Alokasi Wilayah Penempatan lan Rute
- Langkah 4: Nemtokake Personas
- Langkah 5: Nggawe Revisi
- Langkah 6: Kompilasi Revisi Dasar
- Langkah 7: Setup Revisi Implementasi PR
- Langkah 8: Ganti Logika SUPR
- Langkah 9: Program Papan
Gambar 3. Alur Kompilasi SUPR
1.5.1. Langkah 1: Miwiti
Kanggo nyalin desain referensi filemenyang lingkungan kerja sampeyan lan ngumpulake desain flat blinking_led:
- Sadurunge miwiti, Download Desain Referensi Files ing kaca 5.
- Gawe direktori agilex_pcie_devkit_blinking_led_supr ing lingkungan kerja sampeyan.
- Nyalin sub-folder tutorial sing diundhuh / agilex_pcie_devkit_blinking_led / flat menyang direktori agilex_pcie_devkit_blinking_led_supr.
- Ing piranti lunak Intel Quartus Prime Pro Edition, klik File ➤ Bukak Proyek lan bukak /flat/blinking_led.qpf.
- Kanggo ngumpulake desain dhasar, klik Processing ➤ Mulai Kompilasi. Laporan Timing Analyzer mbukak kanthi otomatis nalika kompilasi wis rampung. Sampeyan bisa nutup Timing Analyzer saiki.
1.5.2. Langkah 2: Nggawe Partisi Desain
Gawe partisi desain kanggo saben wilayah sing pengin dikonfigurasi ulang sebagian. Sampeyan bisa nggawe sawetara partisi independen utawa wilayah PR ing proyek sampeyan. Tindakake langkah iki kanggo nggawe partisi desain kanggo conto u_blinking_led minangka partisi PR, lan conto u_top_counter minangka wilayah SUPR:
- Klik-tengen conto u_blinking_led ing Project Navigator lan klik Design Partition
➤ Bisa dikonfigurasi maneh. Lambang partisi desain katon ing jejere saben conto sing disetel minangka partisi.
Gambar 4. Nggawe Partisi Desain - Baleni langkah 1 kanggo nggawe partisi kanggo conto u_top_counter.
- Klik Assignments ➤ Design Partitions Window. Jendhela nampilake kabeh partisi desain ing proyek kasebut.
Gambar 5. Desain Partisi Jendela
- Klik kaping pindho sel Jeneng Partisi sing dipimpin blinking_led kanggo ngganti jeneng dadi pr_partition. Kajaba iku, ganti jeneng partisi top_counter dadi supr_partition.
Utawa, nambahake garis ing ngisor iki menyang blinking_led.qsf nggawe partisi iki:
set_instance_assignment -name PARTITION pr_partition \ -to u_blinking_led -entity top
set_instance_assignment -jeneng PARTIAL_RECONFIGURATION_PARTITION ON \ -to u_blinking_led -entity top
set_instance_assignment -name PARTITION supr_partition \ -to u_top_counter -entity top
set_instance_assignment -jeneng PARTIAL_RECONFIGURATION_PARTITION ON \ -to u_top_counter -entity top
1.5.3. Langkah 3: Alokasi Wilayah Penempatan lan Rute
Kanggo saben revisi dhasar sing digawe, Compiler nggunakake alokasi wilayah partisi PR kanggo nyelehake inti persona sing cocog ing wilayah sing dilindhungi. Tindakake langkah iki kanggo nemokake lan nemtokake wilayah PR ing rencana lantai piranti kanggo revisi dhasar:
- Ing tab Project Navigator Hierarchy, klik-tengen instance u_blinking_led, banjur klik Logic Lock Region ➤ Create New Logic Lock Region. Wilayah kasebut katon ing jendhela Logic Lock Regions.
- Nemtokake wilayah Jembar 5 lan Dhuwur 5.
- Nemtokake koordinat wilayah panggonan kanggo u_blinking_led ing kolom Asal. Asal cocog karo pojok kiwa ngisor wilayah kasebut. Nemtokake Origin minangka X166_Y199. Compiler ngitung (X170 Y203) minangka koordinat ndhuwur-tengen.
- Aktifake pilihan Reserved lan Core-Mung kanggo wilayah kasebut.
- Klik kaping pindho opsi Routing Region. Kothak dialog Logic Lock Routing Region Settings katon.
- Kanggo Tipe Routing, pilih Fixed with expansion. Opsi iki kanthi otomatis nemtokake dawa Expansion siji.
- Baleni langkah sadurunge kanggo nyedhiyakake sumber daya ing ngisor iki kanggo partisi u_top_counter:
• Dhuwur-5
• Jembar—5
• Asal—X173_Y199
• Routing Region- Telpon karo expansion karo Expansion dawa siji.
• Reserved—Aktifake
• Mung Inti—Aktif
Gambar 6. Jendela Logic Lock Regions
Cathetan: Wilayah routing kudu luwih gedhe tinimbang wilayah penempatan, kanggo nyedhiyakake keluwesan ekstra kanggo routing Compiler.tage, nalika Compiler rute personas beda.
- Wilayah panggonan sampeyan kudu nyakup logika blinking_led. Kanggo milih wilayah panggonan kanthi nemokake simpul ing Chip Planner, klik-tengen jeneng wilayah u_blinking_led ing jendhela Logic Lock Regions, banjur klik Goleki Node ➤ Goleki ing Chip Planner.
- Ing Partition Reports, klik kaping pindho Report Design Partitions. Chip Planner nyorot lan kode warna wilayah kasebut.
Figure 7. Lokasi Chip Planner Node kanggo blinking_led
Utawa, nambahake garis ing ngisor iki menyang blinking_led.qsf nggawe wilayah kasebut:
set_instance_assignment -name PARTITION pr_partition -to \ u_blinking_led -entity top
set_instance_assignment -jeneng PARTIAL_RECONFIGURATION_PARTITION ON \ -to u_blinking_led -entity top
set_instance_assignment -jeneng PARTITION supr_partition -to u_top_counter \ -entity top
set_instance_assignment -jeneng PARTIAL_RECONFIGURATION_PARTITION ON -to \ u_top_counter -entity top
set_instance_assignment -jeneng PLACE_REGION "X166 Y199 X170 Y203" -kanggo \ u_blinking_led
set_instance_assignment -name RESERVE_PLACE_REGION ON -to u_blinking_led
set_instance_assignment -jeneng CORE_ONLY_PLACE_REGION ON -to u_blinking_led
set_instance_assignment -jeneng REGION_NAME pr_partition -to u_blinking_led
set_instance_assignment -jeneng ROUTE_REGION "X165 Y198 X171 Y204" -kanggo \ u_blinking_led
set_instance_assignment -jeneng RESERVE_ROUTE_REGION OFF -kanggo u_blinking_led
set_instance_assignment -jeneng PLACE_REGION "X173 Y199 X177 Y203" -kanggo \ u_top_counter
set_instance_assignment -jeneng RESERVE_PLACE_REGION ON -to u_top_counter
set_instance_assignment -jeneng CORE_ONLY_PLACE_REGION ON -to u_top_counter
set_instance_assignment -jeneng REGION_NAME supr_partition -to u_top_counter
set_instance_assignment -jeneng ROUTE_REGION "X172 Y198 X178 Y204" -kanggo \ u_top_counter
set_instance_assignment -jeneng RESERVE_ROUTE_REGION OFF -menyang u_top_counter
1.5.4. Langkah 4: Nemtokake Personas
Desain referensi iki nemtokake telung persona sing kapisah kanggo partisi PR tunggal, lan siji persona SUPR kanggo wilayah SUPR. Tindakake langkah-langkah iki kanggo nemtokake lan nyakup persona kasebut ing proyek sampeyan. Yen nggunakake Intel Quartus Prime Text Editor, mateni Tambah file
kanggo proyek saiki nalika nyimpen files.
- Nggawe blinking_led_slow.sv anyar, blinking_led_empty.sv, lan top_counter_fast.sv SystemVerilog files ing direktori kerja sampeyan. Konfirmasi yen blinking_led.sv wis ana ing direktori kerja.
- Ketik isi ing ngisor iki kanggo SystemVerilog files:
Tabel 2. Referensi Desain Personas SystemVerilog
File jeneng Katrangan Kode blinking_led_slow. sv LED kedhip luwih alon timescale 1 ps / 1 ps 'default_nettype none
modul blinking_led_slow // jam
jam kabel input, reset kabel input, kabel input [31:01 counter,
// Sinyal kontrol kanggo kabel output LED led_two_on,
kabel output led_three_on localparam COUNTER_TAP = 27;
reg led_two_on_r; leg led_three_on_r; assign led_two_on = led_two_on_r; nemtokake led_three_on = led_three_on_r; always_ff @(jam posedge) wiwiti led_two_on_r <= counter[COUNTER_TAP]; led_three_on_r <= counter[COUNTER_TAP]; endmodule pungkasanblinking_led_empty. sv LED tetep ON skala waktu 1 ps / 1 ps 'default_nettype none module blinking_led_empty( // clock input wire clock, input wire reset, input wire [31:01 counter, // Control signal for LEC- output wire led_two_on, output wire led_three_on terus… File jeneng Katrangan Kode // LED aktif kurang nemtokake led_two_on = l'IDO; nemtokake led_three_on = 11b0; endmodul top_counter_fast.sv Kapindho SUPR 'skala wektu 1 ps / 1 ps pribadine Thdefault_nettype ora ana modul top_counter_fast // Sinyal kontrol kanggo kabel output LED led_one_on, jumlah kabel output [31:0], // jam kawat input jam ); localparam COUNTER TAP = 23; reg [31:0] count_d; assign count = count_d; nemtokake led_one_on = ount_d[COUNTER_TAP]; always_ff @(jam posedge) wiwiti count_d <= count_d + 2; pungkasan .: modul - Klik File ➤ Simpen Minangka lan simpen file .sv files ing direktori proyek saiki.
1.5.5. Langkah 5: Nggawe Revisi
Aliran desain PR nggunakake fitur revisi proyek ing piranti lunak Intel Quartus Prime. Desain awal sampeyan minangka revisi dhasar, ing ngendi sampeyan nemtokake wates wilayah statis lan wilayah sing bisa dikonfigurasi maneh ing FPGA. Saka revisi dhasar, sampeyan nggawe revisi tambahan. Revisi kasebut ngemot macem-macem implementasi kanggo wilayah PR. Nanging, kabeh revisi implementasi PR nggunakake panggonan paling dhuwur sing padha lan asil rute saka revisi dhasar. Kanggo nyusun desain PR, sampeyan nggawe revisi implementasi PR kanggo saben persona. Kajaba iku, sampeyan kudu nemtokake jinis revisi Parsial Reconfiguration - Base utawa Parsial Reconfiguration - Persona Implementation kanggo saben revisi. Tabel ing ngisor iki nampilake jeneng revisi lan jinis revisi kanggo saben revisi. Revisi impl_blinking_led_supr_new.qsf minangka implementasi persona SUPR.
Tabel 3. Jeneng lan Jinis Revisi
Jeneng Revisi | Jinis Revisi |
blinking_led | Konfigurasi ulang parsial - Base |
blinking_led_default | Konfigurasi ulang parsial - Implementasi Persona |
blinking_led_slow | Konfigurasi ulang parsial - Implementasi Persona |
blinking_led_empty | Konfigurasi ulang parsial - Implementasi Persona |
impl_blinking_led_supr_new | Konfigurasi ulang parsial - Implementasi Persona |
1.5.5.1. Nyetel Revisi Base
Tindakake langkah iki kanggo nyetel blinking_led minangka revisi dhasar:
- Klik Project ➤ Revisions.
- Kanggo Tipe Revisi, pilih Konfigurasi Sebagean - Basis.
Langkah iki nambahake ing ngisor iki menyang blinking_led.qsf:
##blinking_led.qsf set_global_assignment -name REVISION_TYPE PR_BASE
1.5.5.2. Nggawe Revisi Implementasi
Tindakake langkah-langkah iki kanggo nggawe revisi implementasine:
- Ing kothak dialog Revisi, klik kaping pindho < >.
- Ing jeneng Revisi, nemtokake blinking_led_default banjur pilih blinking_led kanggo Adhedhasar revisi.
- Kanggo jinis Revisi, pilih Konfigurasi Sebagean - Implementasi Persona.
- Pateni pilihan Setel minangka revisi saiki.
- Baleni langkah 2 nganti 5 kanggo nyetel jinis Revisi kanggo revisi implementasi liyane:
Jeneng Revisi | Jinis Revisi | Adhedhasar Revision |
blinking_led_slow | Konfigurasi ulang parsial - Implementasi Persona | blinking_led |
blinking_led_empty | Konfigurasi ulang parsial - Implementasi Persona | blinking_led |
impl_blinking_led_supr_new | Konfigurasi ulang parsial - Implementasi Persona | blinking_led |
Gambar 8. Nggawe Revisi Implementasi
Saben .qsf file saiki ngemot tugas ing ngisor iki:
set_global_assignment -jeneng REVISION_TYPE PR_IMPL
set_instance_assignment -name ENTITY_REBINDING place_holder -to u_top_counter
set_instance_assignment -name ENTITY_REBINDING place_holder -to u_blinking_led
1.5.6. Langkah 6: Kompilasi Revisi Dasar
Tindakake langkah-langkah iki kanggo nyusun revisi dhasar lan ngekspor wilayah statis lan SUPR kanggo digunakake ing revisi implementasine kanggo persona PR anyar:
- Setel blinking_led minangka Revisi Saiki yen durung disetel.
- Ing Design Partitions Window, klik (...) jejere kolom paling tengen lan aktifake Post Final Export File kolom. Sampeyan uga bisa mateni utawa ngganti urutan kolom.
- Kanggo kanthi otomatis ngekspor gambar pungkasan saka partisi desain implementasi PR sawise saben kompilasi, nemtokake ing ngisor iki kanggo Ekspor Akhir Post File opsi kanggo partisi ROOT lan SUPR. Ing .qdb files ekspor menyang direktori project minangka standar.
• root_partition—blinking_led_static.qdb
• supr_partition—blinking_led_supr_partition_final.qdb
Gambar 9. Ekspor Otomatis ing Jendela Partisi DesainUtawa, tugas .qsf ing ngisor iki ngekspor partisi kanthi otomatis sawise saben kompilasi:
set_instance_assignment -jeneng EXPORT_PARTITION_SNAPSHOT_FINAL \ blinking_led_static.qdb -to | - entitas ndhuwur
set_instance_assignment -jeneng EXPORT_PARTITION_SNAPSHOT_FINAL \ blinking_led_supr_partition_final.qdb -to u_top_counter \ -entity top - Kanggo nyusun revisi basis blinking_led, klik Processing ➤ Start
Kompilasi. Utawa, sampeyan bisa nggunakake printah ing ngisor iki kanggo ngumpulake revisi iki:
quartus_sh –flow compile blinking_led -c blinking_led Sawise kompilasi sukses, ing ngisor iki files katon ing direktori proyek:
• blinking_led.sof
• blinking_led.pr_partition.rbf
• blinking_led.supr_partition.rbf
• blinking_led_static.qdb
• blinking_led_supr_partition_final.qdb
1.5.7. Langkah 7: Nggawe Revisi Implementasi PR
Sampeyan kudu nyiapake revisi implementasi PR sadurunge bisa ngasilake bitstream PR kanggo pemrograman piranti. Persiyapan iki kalebu nambah wilayah statis .qdb file minangka sumber file kanggo saben revisi implementasine. Kajaba iku, sampeyan kudu nemtokake
entitas sing cocog saka wilayah PR. Tindakake langkah-langkah iki kanggo nyetel revisi implementasi PR:
- Kanggo nyetel revisi saiki, klik Project ➤ Revisi, pilih blinking_led_default minangka jeneng Revisi, banjur klik Setel Saiki. Utawa, sampeyan bisa milih revisi saiki ing toolbar Intel Quartus Prime utama.
- Kanggo verifikasi sumber sing bener kanggo revisi implementasine iki, klik Project ➤ Tambah/Busak Files ing Proyek. Konfirmasi yen blinking_led.sv file katon ing file dhaptar.
- Kanggo verifikasi sumber sing bener file kanggo revisi implementasine, klik Project ➤ Add/Remove files ing Project, lan nambah sumber ing ngisor iki files kanggo revisi implementasine. Yen ana, mbusak blinking_led.sv saka dhaptar proyek files.
Iimplementasine Jeneng Revisi Sumber File blinking_led_empty blinking_led_empty.sv blinking_led_slow blinking_led_slow.sv - Setel blinking_led_default minangka Revisi Saiki.
- Kanggo nemtokake .qdb file minangka sumber root_partition, klik Assignments ➤ Design Partitions Window. Klik kaping pindho ing Partition Database File sel lan nemtokake blinking_led_static.qdb file.
- Kajaba iku, nemtokake blinking_led_supr_partition_final.qdb minangka Database Partisi File kanggo supr_partition.
Gambar 10.
Utawa, gunakake tugas .qsf ing ngisor iki kanggo nemtokake .qdb:
set_instance_assignment -jeneng QDB_FILE_PARTITION \ blinking_led_static.qdb -kanggo |
set_instance_assignment -jeneng QDB_FILE_PARTITION \ blinking_led_supr_partition_final.qdb -to u_top_counter - Ing Jendela Partisi Desain, klik (...) ing sisih tengen kolom paling adoh lan aktifake kolom Entity Re-binding.
-
Ing sel Entity Re-binding, nemtokake jeneng entitas anyar kanggo partisi PR sing sampeyan ganti ing revisi implementasine saiki. Kanggo revisi implementasi blinking_led_default, jeneng entitas kasebut blinking_led. Ing kasus iki, sampeyan nimpa conto u_blinking_led saka kompilasi revisi dhasar karo blinking_led entitas anyar. Kanggo revisi implementasi liyane, deleng tabel ing ngisor iki:
Revisi Nilai Re-binding Entitas blinking_led_slow blinking_led_slow blinking_led_empty blinking_led_empty Gambar 11. Rebinding Entitas
Utawa, sampeyan bisa nggunakake garis ing ngisor iki ing saben .qsf revisi kanggo nyetel tugas:
##blinking_led_default.qsf
set_instance_assignment -name ENTITY_REBINDING blinking_led \ -to u_blinking_led
##blinking_led_slow.qsf
set_instance_assignment -name ENTITY_REBINDING blinking_led_slow \ -to u_blinking_led
##blinking_led_empty.qsf
set_instance_assignment -name ENTITY_REBINDING blinking_led_empty \ -to u_blinking_led - Busak teks place_holder saka sel Entity Re-binding kanggo supr_partition.
- Kanggo ngumpulake desain, klik Processing ➤ Mulai Kompilasi. Utawa, gunakake printah ing ngisor iki kanggo ngumpulake proyek iki: quartus_sh –flow compile blinking_led –c blinking_led_default
- Baleni langkah 4 nganti 11 kanggo nyiapake lan ngumpulake revisi implementasi blinking_led_slow lan blinking_led_empty.
1.5.8. Langkah 8: Ganti Logika SUPR
Kanggo ngganti fungsi logika ing partisi SUPR, sampeyan kudu ngganti sumber partisi SUPR. Rampungake langkah-langkah ing ngisor iki kanggo ngganti conto u_top_counter ing partisi SUPR karo entitas top_counter_fast.
- Kanggo nyetel revisi implementasi SUPR minangka saiki, klik Project ➤ Revisi banjur setel impl_blinking_led_supr_new minangka revisi saiki, utawa pilih
revisi ing toolbar utama Intel Quartus Prime. - Kanggo verifikasi sumber sing bener file kanggo revisi implementasine, klik Project ➤
Tambah / Copot files ing Project, lan verifikasi yen top_counter_fast.sv minangka sumber kanggo revisi implementasi impl_blinking_led_supr_new. Yen saiki, mbusak top_counter.sv saka dhaptar proyek files. - Kanggo nemtokake .qdb file digandhengake karo partisi root, klik Assignments ➤ Design Partitions Window, banjur klik kaping pindho ing Partition Database File sel kanggo nemtokake blinking_led_static.qdb.
Utawa, gunakake printah ing ngisor iki kanggo nemtokake iki file: set_instance_assignment -jeneng QDB_FILE_PARTITION \ blinking_led_static.qdb -kanggo | - Ing sel Entity Re-binding kanggo pr_partition, nemtokake jeneng entitas sing cocog. Kanggo mantan ikiample, nemtokake entitas blinking_led_empty. Ing kasus iki, sampeyan nimpa conto u_blinking_led saka kompilasi revisi dhasar karo entitas anyar linking_led_empty. Baris ing ngisor iki saiki ana ing .qsf:
##impl_blinking_led_supr_new.qsf set_instance_assignment -name ENTITY_REBINDING blinking_led_empty \ -to u_blinking_led - Ing sel Entity Re-binding kanggo supr_partition, nemtokake entitas top_counter_fast. top_counter_fast iku jeneng entitas statis sing ngganti u_top_counter nalika sampeyan ngrampungake SUPR.
##impl_blinking_led_supr_new.qsf set_instance_assignment -name ENTITY_REBINDING top_counter_fast \ -to u_top_counter
- Kanggo ngumpulake desain, klik Processing ➤ Mulai Kompilasi. Utawa, gunakake printah ing ngisor iki kanggo nyusun revisi proyek iki: quartus_sh –flow compile blinking_led –c \ impl_blinking_led_supr_new
1.5.9. Langkah 9: Program Papan
Tindakake langkah iki kanggo nyambungake lan program papan pangembangan FPGA Intel Agilex F-Series.
- Sambungake sumber daya menyang papan pangembangan FPGA Intel Agilex F-Series.
- Sambungake kabel USB ing antarane port USB PC lan hardware pemrograman USB ing papan pangembangan.
- Bukak piranti lunak Intel Quartus Prime, banjur klik Tools ➤ Programmer. Rujuk Programming a Development Board.
- Ing Programmer, klik Hardware Setup, banjur pilih USB-Blaster.
- Klik Deteksi Otomatis, banjur pilih piranti AGFB014R24B.
- Klik OK. Piranti lunak Intel Quartus Prime ndeteksi lan nganyari Programmer kanthi telung piranti FPGA ing papan kasebut.
- Pilih piranti AGFB014R24B, klik Ganti File, lan mbukak blinking_led_default.sof file.
- Aktifake Program / Konfigurasi kanggo blinking_led_default.sof file.
- Klik Mulai lan ngenteni bar kemajuan tekan 100%.
- Mirsani LED ing Papan kedhip.
- Kanggo program mung wilayah PR, klik-tengen ing blinking_led_default.sof file di Programmer dan klik Add PR Programming File. Pilih blinking_led_slow.pr_partition.rbf file.
- Pateni Program / Konfigurasi kanggo blinking_led_default.sof file.
- Aktifake Program / Konfigurasi kanggo blinking_led_slow.pr_partition.rbf file, banjur klik Mulai. Ing papan, deleng LED[0] lan LED[1] terus kedhip. Nalika garis kemajuan tekan 100%, LED[2] lan LED[3] kedhip luwih alon.
- Kanggo program maneh wilayah PR, klik-tengen ing .rbf file ing Programmer, banjur klik Change PR Programing File.
- Pilih .rbf files kanggo loro personas liyane kanggo mirsani prilaku ing Papan. Loading blinking_led_default.pr_partition.rbf file nyebabake LED kedhip ing frekuensi asli, lan loading blinking_led_empty.pr_partition.rbf file nyebabake LED tetep ON. 17. Kanggo ngganti logika SUPR, baleni langkah 7 ndhuwur kanggo pilih impl_blinking_led_supr_new.sof. Sawise ngganti iki file, dipimpin [0:1] saiki kedhip luwih cepet tinimbang sadurunge. PR liyane .rbf files uga kompatibel karo .sof anyar.
Cathetan: Assembler ngasilake .rbf file kanggo wilayah SUPR. Nanging, sampeyan ora kudu nggunakake iki file kanggo reprogram FPGA ing runtime amarga partisi SUPR ora instantiate jembatan beku, PR wilayah controller, lan logika liyane ing sistem sakabèhé. Nalika sampeyan nggawe owah-owahan ing logika pemisahan SUPR, sampeyan kudu reprogram .sof lengkap file saka kompilasi revisi implementasi SUPR.
Gambar 12. Pemrograman Papan Pengembangan
1.5.9.1. Ngatasi Masalah Kesalahan Pemrograman PR
Njamin persiyapan sing tepat saka Intel Quartus Prime Programmer lan hardware sing disambungake mbantu supaya ora ana kesalahan sajrone program PR.
Yen sampeyan ngadhepi kesalahan program PR, deleng "Ngatasi Masalah Pemrograman PR" ing Pandhuan Pangguna Intel Quartus Prime Pro Edition: Konfigurasi ulang parsial kanggo tips ngatasi masalah langkah-langkah.
Informasi sing gegandhengan
Ngatasi Masalah Kesalahan Pemrograman PR
1.5.10. Ngowahi Partisi SUPR
Sampeyan bisa ngowahi partisi SUPR sing wis ana. Sawise ngowahi partisi SUPR, sampeyan kudu ngumpulake, ngasilake .sof file, lan program papan, tanpa ngumpulake personas liyane. Kanggo example, tindakake langkah iki kanggo ngganti top_counter_fast.sv modul kanggo count luwih cepet:
- Setel impl_blinking_led_supr_new minangka revisi saiki.
- Ing top_counter_fast.sv file, ganti statement count_d + 2 karo count_d + 4.
- Jalanake printah ing ngisor iki kanggo nyintesis maneh blok SUPR lan ngasilake .sof anyar file: quartus_sh –flow compile blinking_led \ -c impl_blinking_led_supr_new
.sof sing diasilake saiki ngemot wilayah SUPR anyar, lan nggunakake blinking_led kanggo persona standar (power-on).
1.6. Riwayat Revisi Dokumen AN 987: Riwayat Revisi Tutorial Konfigurasi Ulang Statis
Versi Dokumen | Versi Intel Quartus Prime | Owah-owahan |
2022.10.24 | 22. | Rilis awal saka dokumen. |
Dianyari kanggo Intel® Quartus®Prime Design Suite: 22.3
Jawaban kanggo FAQs Top:
Kirimi Umpan Balik
Q Apa nganyari statis reconfiguration parsial
Konfigurasi Parsial Update Statis ing kaca 3
Q Apa sing dibutuhake kanggo tutorial iki?
A Persyaratan Tutorial ing kaca 3
Q Where aku bisa njaluk desain referensi?
A Download Desain Referensi Files ing kaca 5
Q Kepiye carane nggawe desain SUPR?
A Referensi Desain Walkthrough ing kaca 6
Q Apa iku persona PR?
Nemtokake Personas ing kaca 10
Q Kepiye carane ngganti logika SUPR? A Ngganti Logika SUPR ing kaca 16
A Ngganti Logika SUPR ing kaca 16
Q Carane aku program Papan?
A Program Papan ing kaca 18
Q Apa masalah lan watesan PR sing dikenal?
Forum Dhukungan Intel FPGA: PR
Versi Online
Kirimi Umpan Balik
Nomer Kode : 749443
AN-987
Versi: 2022.10.24
Dokumen / Sumber Daya
![]() |
Papan Pangembangan FPGA Intel Agilex F-Series [pdf] Pandhuan pangguna Agilex F-Series, Agilex F-Series FPGA Development Board, FPGA Development Board, Development Board, Board |