Logo intelAN 987: Statická aktualizace částečná
Kurz rekonfigurace

Výukový program pro částečnou rekonfiguraci statické aktualizace pro vývojovou desku Intel® ™ Agilex F-Series FPGA

Tato aplikační poznámka demonstruje částečnou rekonfiguraci statické aktualizace (SUPR) na vývojové desce Intel ® F-Series FPGA Development Board. Částečná rekonfigurace (PR) vám umožňuje dynamicky překonfigurovat část Intel FPGA, zatímco zbývající FPGA pokračuje v provozu. PR implementuje do vašeho návrhu více osob v určité oblasti, aniž by to ovlivnilo provoz v oblastech mimo tuto oblast. Tato metodika poskytuje následující výhodytagv systémech, ve kterých více funkcí časově sdílí stejné zdroje FPGA:

  • Umožňuje změnu konfigurace za běhu
  • Zvyšuje škálovatelnost návrhu
  • Snižuje prostoje systému
  • Podporuje dynamické funkce time-multiplexingu v návrhu
  • Snižuje náklady a spotřebu energie efektivním využitím místa na desce

Co je částečná rekonfigurace statické aktualizace?

V tradičním PR vyžaduje jakákoli změna statické oblasti rekompilaci každé osoby. Pomocí SUPR však můžete definovat specializovanou oblast, která umožňuje změnu, aniž byste vyžadovali rekompilaci person. Tato technika je užitečná pro část návrhu, kterou možná budete chtít změnit kvůli zmírnění rizik, ale která nikdy nevyžaduje změnu konfigurace za běhu.

1.1. Požadavky na výukový program
Tento tutoriál vyžaduje následující:

  • Základní znalost implementačního toku a projektu Intel Quartus® Prime Pro Edition FPGA files.
  •  Instalace Intel Quartus Prime Pro Edition verze 22.3 s podporou zařízení Intel Agilex.
  • Pro implementaci FPGA, JTAG propojení s vývojovou deskou Intel Agilex F-Series FPGA na pracovním stole.
  • Stáhněte si referenční design Files. Související informace
  • Částečná rekonfigurace Uživatelská příručka
  • Výukové programy částečné rekonfigurace
  • Online školení částečné rekonfigurace

Intel Corporation. Všechna práva vyhrazena. Intel, logo Intel a další značky Intel jsou ochranné známky společnosti Intel Corporation nebo jejích dceřiných společností. Společnost Intel zaručuje výkon svých FPGA a polovodičových produktů podle aktuálních specifikací v souladu se standardní zárukou společnosti Intel, ale vyhrazuje si právo provádět změny jakýchkoli produktů a služeb kdykoli bez upozornění. Společnost Intel nepřebírá žádnou odpovědnost nebo závazky vyplývající z aplikace nebo použití jakýchkoli informací, produktů nebo služeb popsaných v tomto dokumentu, pokud to není výslovně písemně odsouhlaseno společností Intel. Zákazníkům společnosti Intel se doporučuje získat nejnovější verzi specifikací zařízení dříve, než se budou spoléhat na jakékoli zveřejněné informace a než zadají objednávky na produkty nebo služby. *Jiná jména a značky mohou být nárokovány jako vlastnictví jiných.
ISO 9001: 2015 Registrováno
1.2. Referenční design skončilview
Tento referenční návrh se skládá z jednoho 32bitového čítače. Na úrovni desky návrh připojí hodiny ke zdroji 50 MHz a výstup pak připojí ke čtyřem LED na desce. Výběr výstupu z bitů čítače v určitém pořadí způsobí, že LED diody budou blikat při určité frekvenci. Modul top_counter je oblast SUPR.
Obrázek 1. Plochý referenční návrh

Logo intel1.3. Statická aktualizace regionu přesview
Následující obrázek ukazuje blokové schéma pro návrh PR, který zahrnuje oblast SUPR. Blok A je horní statická oblast. Blok B je oblast SUPR. Blok C je oddíl PR.
Obrázek 2. Návrh PR s regionem SUPR

Intel Agilex F-Series FPGA Development Board - Region

  • Horní statická oblast – obsahuje logiku návrhu, která se nemění. Změna této oblasti vyžaduje rekompilaci všech přidružených osob. Statická oblast zahrnuje část návrhu, která se pro žádnou osobu nemění. Tato oblast může zahrnovat prostředky periferie a jádra zařízení. Musíte zaregistrovat veškerou komunikaci mezi oddíly SUPR a PR ve statické oblasti. Tento požadavek pomáhá zajistit načasování uzavření pro všechny osoby s ohledem na statickou oblast.
  • Oblast B SUPR – obsahuje logiku pouze pro jádro, která se může změnit za účelem zmírnění rizik, ale nikdy nevyžaduje změnu konfigurace za běhu. Oblast SUPR má stejné požadavky a omezení jako oblast PR. Oddíl SUPR může obsahovat pouze prostředky jádra. Oddíl SUPR proto musí být podřízeným oddílem kořenového oddílu nejvyšší úrovně, který obsahuje periferii návrhu a hodiny. Změna oblasti SUPR vytvoří objekt SRAM File (.sof), který je kompatibilní se všemi existujícími zkompilovanými nezpracovanými binárními soubory File (.rbf) files pro PR oddíl C.
  • C PR Partition – obsahuje libovolnou logiku, kterou můžete za běhu přeprogramovat pomocí jakékoli logiky návrhu, která se hodí a dosáhne uzavření načasování během kompilace.

1.4. Stáhněte si referenční design Files
Výukový program částečné rekonfigurace je k dispozici v následujícím umístění: https://github.com/intel/fpga-partial-reconfig
Chcete-li stáhnout tutoriál:

  1. Klikněte na Klonovat nebo stáhnout.
  2. Klikněte na Stáhnout ZIP. Rozbalte soubor fpga-partial-reconfig-master.zip file.
  3. Přejděte do podsložky tutorials/agilex_pcie_devkit_blinking_led_supr a získejte přístup k referenčnímu návrhu.
    Plochá složka se skládá z následujícího files:
    Tabulka 1. Referenční design Files
File Jméno Popis
horní. sv na nejvyšší úrovni file obsahující plošnou realizaci návrhu. Tento modul vytváří instanci pododdílu blinking_led a modulu top_counter.
t op_counter . sv 32bitový čítač nejvyšší úrovně, který přímo ovládá LED [1]. Registrovaný výstup čítače ovládá LED [0] a také napájí LED [2] a LED [3] prostřednictvím modulu blikající LED.
blikající_led. sdc Definuje časová omezení pro projekt.
blikající_led. sv V tomto kurzu převedete tento modul na nadřazený oddíl PR. Modul přijímá registrovaný výstup modulu top_counter, který ovládá LED [2] a LED [3].
blikající_led.qpf Projekt Intel Quartus Prime file obsahující seznam všech revizí v projektu.
blikající_led . qs f Nastavení Intel Quartus Prime file obsahující přiřazení a nastavení pro projekt.

Poznámka: Složka supr obsahuje kompletní sadu files pomocí této aplikace vytvoříte poznámka. Odkaz na tyto files kdykoli během průchodu.
1.5. Návod k referenčnímu designu
Následující kroky popisují implementaci SUPR s plochým designem:

  • Krok 1: Začínáme
  • Krok 2: Vytvořte návrhové oddíly
  • Krok 3: Přidělte oblasti umístění a směrování
  • Krok 4: Definujte Personas
  • Krok 5: Vytvořte revize
  • Krok 6: Zkompilujte základní revizi
  • Krok 7: Nastavení revizí implementace PR
  • Krok 8: Změňte logiku SUPR
  • Krok 9: Naprogramujte desku

Obrázek 3. Průběh kompilace SUPR

Vývojová deska intel Agilex F-Series FPGA - Flow

1.5.1. Krok 1: Začínáme
Chcete-li zkopírovat referenční návrh files vaším pracovním prostředím a zkompilujte si plochý design s blikajícím osvětlením:

  1. Než začnete, stáhněte si referenční návrh Files na straně 5.
  2. Ve svém pracovním prostředí vytvořte adresář agilex_pcie_devkit_blinking_led_supr.
  3. Zkopírujte staženou podsložku tutorials/agilex_pcie_devkit_blinking_led/flat do adresáře agilex_pcie_devkit_blinking_led_supr.
  4. V softwaru Intel Quartus Prime Pro Edition klepněte na File ➤ Otevřete Project a otevřete /flat/blinking_led.qpf.
  5. Chcete-li zkompilovat základní návrh, klepněte na Zpracování ➤ Spustit kompilaci. Zprávy Timing Analyzer se otevřou automaticky po dokončení kompilace. Časový analyzátor můžete prozatím zavřít.

1.5.2. Krok 2: Vytvořte návrhové oddíly
Vytvořte návrhové oddíly pro každou oblast, kterou chcete částečně překonfigurovat. Ve svém projektu můžete vytvořit libovolný počet nezávislých oddílů nebo PR regionů. Chcete-li vytvořit návrhové oddíly pro instanci u_blinking_led jako oddíl PR a instanci u_top_counter jako oblast SUPR, postupujte takto:

  1. Klikněte pravým tlačítkem na instanci u_blinking_led v Navigátoru projektu a klikněte na Navrhnout oddíl
    ➤ Překonfigurovatelné. Vedle každé instance, která je nastavena jako oddíl, se zobrazí ikona návrhového oddílu.
    Obrázek 4. Vytváření návrhových oddílůVývojová deska intel Agilex F-Series FPGA – oddíly
  2. Opakováním kroku 1 vytvořte oddíl pro instanci u_top_counter.
  3. Klepněte na Přiřazení ➤ Okno Návrh oddílů. V okně se zobrazí všechny návrhové oddíly v projektu.
    Obrázek 5. Okno Návrh oddílů
    Vývojová deska FPGA intel Agilex F-Series – okno
  4. Poklepáním na buňku Název oddílu blinking_led ji přejmenujte na pr_partition. Podobně přejmenujte oddíl top_counter na supr_partition.
    Případně přidáním následujících řádků do blinking_led.qsf vytvoříte tyto oddíly:
    set_instance_assignment -name PARTITION pr_partition \ -to u_blinking_led -entity top
    set_instance_assignment -name 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 -name PARTIAL_RECONFIGURATION_PARTITION ON \ -to u_top_counter -entity top

1.5.3. Krok 3: Přidělte oblasti umístění a směrování
Pro každou základní revizi, kterou vytvoříte, kompilátor použije alokaci oblasti PR oddílu k umístění odpovídajícího persona jádra do vyhrazené oblasti. Chcete-li najít a přiřadit oblast PR v půdorysu zařízení pro vaši základní revizi, postupujte takto:

  1. Na kartě Hierarchie Navigátoru projektu klikněte pravým tlačítkem na instanci u_blinking_led a poté klikněte na Oblast logického zámku ➤ Vytvořit novou oblast logického zámku. Oblast se zobrazí v okně Logic Lock Regions.
  2. Zadejte šířku oblasti 5 a výšku 5.
  3. Ve sloupci Origin zadejte souřadnice oblasti umístění pro u_blinking_led. Počátek odpovídá levému dolnímu rohu oblasti. Zadejte Počátek jako X166_Y199. Kompilátor vypočítá (X170 Y203) jako souřadnici vpravo nahoře.
  4. Povolte pro region možnosti Reserved a Core-Only.
  5. Poklepejte na možnost Oblast směrování. Zobrazí se dialogové okno Logic Lock Routing Region Settings.
  6. Pro Typ směrování vyberte Pevné s rozšířením. Tato možnost automaticky přiřadí délku rozšíření jedna.
  7. Opakujte předchozí kroky a přidělte následující prostředky pro oddíl u_top_counter:
    • Výška – 5
    • Šířka—5
    • Původ—X173_Y199
    • Oblast směrování – Opraveno s rozšířením s délkou rozšíření jedna.
    • Rezervováno – Zapnuto
    • Pouze jádro – zapnuto
    Obrázek 6. Okno Logic Lock Regions
    Intel Agilex F-Series FPGA Development Board - Okno regionů
    Poznámka: Oblast směrování musí být větší než oblast umístění, aby byla zajištěna větší flexibilita pro směrování kompilátoru.tage, když kompilátor směruje různé osoby.
  8. Oblast umístění musí zahrnovat logiku blikající_led. Chcete-li vybrat oblast umístění umístěním uzlu v Plánovači čipů, klepněte pravým tlačítkem myši na název oblasti u_blinking_led v okně Logic Lock Regions a poté klepněte na položku Locate Node ➤ Locate in Chip Planner.
  9.  V části Sestavy oddílů poklepejte na Oddíly návrhu sestavy. Chip Planner zvýrazní a barevně označí region.

Obrázek 7. Umístění uzlu plánovače čipů pro blinking_led
Vývojová deska intel Agilex F-Series FPGA -blikající_ledPřípadně přidáním následujících řádků do blinking_led.qsf vytvoříte tyto oblasti:
set_instance_assignment -name PARTITION pr_partition -to \ u_blinking_led -entity top
set_instance_assignment -name 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 -name PARTIAL_RECONFIGURATION_PARTITION ON -to \ u_top_counter -entity top
set_instance_assignment -name PLACE_REGION “X166 Y199 X170 Y203” -to \ u_blinking_led
set_instance_assignment -name RESERVE_PLACE_REGION ON -to u_blinking_led
set_instance_assignment -name CORE_ONLY_PLACE_REGION ON -to u_blinking_led
set_instance_assignment -name REGION_NAME pr_partition -to u_blinking_led
set_instance_assignment -name ROUTE_REGION “X165 Y198 X171 Y204” -to \ u_blinking_led
set_instance_assignment -name RESERVE_ROUTE_REGION OFF -to u_blinking_led
set_instance_assignment -name PLACE_REGION “X173 Y199 X177 Y203” -to \ u_top_counter
set_instance_assignment -name RESERVE_PLACE_REGION ON -to u_top_counter
set_instance_assignment -name CORE_ONLY_PLACE_REGION ON -to u_top_counter
set_instance_assignment -name REGION_NAME supr_partition -to u_top_counter
set_instance_assignment -name ROUTE_REGION “X172 Y198 X178 Y204” -to \ u_top_counter
set_instance_assignment -name RESERVE_ROUTE_REGION OFF -to u_top_counter
1.5.4. Krok 4: Definujte Personas

Tento referenční návrh definuje tři samostatné osoby pro jeden oddíl PR a jednu osobu SUPR pro oblast SUPR. Chcete-li definovat a zahrnout tyto osoby do svého projektu, postupujte podle těchto kroků. Pokud používáte textový editor Intel Quartus Prime, vypněte možnost Přidat file
k aktuálnímu projektu při ukládání files.

  1. Vytvořte nový soubor blinking_led_slow.sv, blinking_led_empty.sv a top_counter_fast.sv SystemVerilog files ve vašem pracovním adresáři. Potvrďte, že soubor blinking_led.sv je již v pracovním adresáři přítomen.
  2.  Zadejte následující obsah pro SystemVerilog files:
    Tabulka 2. Reference Design Personas SystemVerilog
    File Jméno Popis Kód
    blinking_led_slow. sv LED diody blikají pomaleji timescale 1 ps / 1 ps 'default_nettype none
    modul blinking_led_slow // hodiny
    hodiny vstupního vodiče, reset vstupního vodiče, vstupní vodič [počítadlo 31:01,
    // Řídicí signály pro výstupní vodič LED led_two_on,
    výstupní vodič led_three_on localparam COUNTER_TAP = 27;
    reg led_dva_on_r; noha led_tri_na_r; přiřadit led_two_on = led_dwo_on_r; přiřadit led_three_on = led_three_on_r; always_ff @(posedge clock) begin led_two_on_r <= counter[COUNTER_TAP]; led_three_on_r <= čítač[COUNTER_TAP]; koncový koncový modul
    blinking_led_empty. sv LED zůstanou svítit timescale 1 ps / 1 ps 'default_nettype none module blinking_led_empty( // hodiny vstupního vodiče, reset vstupního vodiče, vstupní vodič [31:01 čítač, // řídicí signály pro LEC- výstupní vodič led_two_on, výstupní vodič led_three_on
    pokračování…
    File Jméno Popis Kód
    // LED je aktivní low assign led_two_on = l'IDO; přiřadit led_three_on = 11b0; koncový modul
    top_counter_fast.sv Druhý SUPR 'časová osa 1 ps / 1 ps
    persona Thdefault_nettype žádný modul top_counter_fast
    // Řídící signály pro výstupní vodič LED diod led_one_on, počet výstupních vodičů [31:0], // hodiny vstupního vodiče hodin
    ); localparam COUNTER TAP = 23; reg [31:0] pocet_d; přiřadit počet = počet_d; přiřadit led_one_on = unt_d[COUNTER_TAP]; always_ff @(posedge clock) begin count_d <= count_d + 2; konec
    .:modul
  3.  Klikněte File ➤ Uložit jako a uložit soubor .sv files v aktuálním adresáři projektu.

1.5.5. Krok 5: Vytvořte revize
Průběh návrhu PR využívá funkci revizí projektu v softwaru Intel Quartus Prime. Váš počáteční návrh je základní revize, kde definujete hranice statického regionu a rekonfigurovatelné regiony na FPGA. Ze základní revize vytvoříte další revize. Tyto revize obsahují různé implementace pro PR regiony. Všechny revize implementace PR však používají stejné výsledky umístění a směrování na nejvyšší úrovni ze základní revize. Chcete-li sestavit návrh PR, vytvoříte pro každou osobu revizi implementace PR. Kromě toho musíte pro každou z revizí přiřadit buď typ revize Částečná rekonfigurace – Základní nebo Částečná rekonfigurace – Implementace osoby. Následující tabulka uvádí název revize a typ revize pro každou z revizí. Revize impl_blinking_led_supr_new.qsf je implementací SUPR persona.
Tabulka 3. Názvy a typy revizí

Název revize Typ revize
blikající_led Částečná rekonfigurace – základ
blikající_led_default Částečná rekonfigurace – Implementace persony
blinking_led_slow Částečná rekonfigurace – Implementace persony
blinking_led_empty Částečná rekonfigurace – Implementace persony
impl_blinking_led_supr_new Částečná rekonfigurace – Implementace persony

1.5.5.1. Nastavení základní revize
Chcete-li nastavit blinking_led jako základní revizi, postupujte takto:

  1. Klepněte na Projekt ➤ Revize.
  2. Pro Typ revize vyberte Částečná rekonfigurace – Základní.

Vývojová deska FPGA intel Agilex F-Series – revizeTento krok přidá do souboru blinking_led.qsf následující:
##blinking_led.qsf set_global_assignment -name REVISION_TYPE PR_BASE
1.5.5.2. Vytváření revizí implementace
Chcete-li vytvořit revize implementace, postupujte takto:

  1. V dialogovém okně Revize poklepejte na < >.
  2. V Název revize zadejte blinking_led_default a vyberte blinking_led pro Založeno na revizi.
  3. Pro Typ revize vyberte Částečná rekonfigurace – Implementace persony.
  4. Vypněte možnost Nastavit jako aktuální revizi.
  5. Opakováním kroků 2 až 5 nastavte typ revize pro ostatní revize implementace:
Název revize Typ revize Na základě Revision
blinking_led_slow Částečná rekonfigurace – Implementace persony blikající_led
blinking_led_empty Částečná rekonfigurace – Implementace persony blikající_led
impl_blinking_led_supr_new Částečná rekonfigurace – Implementace persony blikající_led

Obrázek 8. Vytváření revizí implementace

Intel Agilex F-Series FPGA Development Board - Revize implementaceKaždý .qsf file nyní obsahuje následující zadání:
set_global_assignment -name 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. Krok 6: Zkompilujte základní revizi
Chcete-li zkompilovat základní revizi a exportovat statické a SUPR oblasti pro pozdější použití v implementačních revizích pro nové PR persony, postupujte podle těchto kroků:

  1. Nastavte blinking_led jako aktuální revizi, pokud již není nastavena.
  2. V okně Design Partitions klikněte na (…) vedle nejvzdálenějšího pravého sloupce a povolte Post Final Export File sloupec. Můžete také zakázat nebo změnit pořadí sloupců.
  3. Chcete-li po každé kompilaci automaticky exportovat konečný snímek oddílů návrhu implementace PR, zadejte pro export po konečném File možnosti pro oddíly root a SUPR. Soubor .qdb files ve výchozím nastavení exportovat do adresáře projektu.
    • root_partition—blinking_led_static.qdb
    • supr_partition—blinking_led_supr_partition_final.qdb
    Obrázek 9. Auto Export v okně Design Partitions WindowVývojová deska FPGA intel Agilex F-Series – okno s oddílyAlternativně následující přiřazení .qsf exportují oddíly automaticky po každé kompilaci:
    set_instance_assignment -name EXPORT_PARTITION_SNAPSHOT_FINAL \ blinking_led_static.qdb -to | -entitní vrchol
    set_instance_assignment -name EXPORT_PARTITION_SNAPSHOT_FINAL \ blinking_led_supr_partition_final.qdb -to u_top_counter \ -entity top
  4. Chcete-li zkompilovat základní revizi blinking_led, klepněte na Zpracování ➤ Spustit
    Sestavení. Alternativně můžete ke kompilaci této revize použít následující příkaz:
    quartus_sh –flow kompilace blinking_led -c blinking_led Po úspěšné kompilaci následuje následující files se objeví v adresáři projektu:
    • blikající_led.sof
    • blikající_led.pr_partition.rbf
    • blikající_led.supr_partition.rbf
    • blikající_led_static.qdb
    • blikající_led_supr_partition_final.qdb

1.5.7. Krok 7: Nastavení revizí implementace PR
Než budete moci vygenerovat bitový tok PR pro programování zařízení, musíte připravit revize implementace PR. Toto nastavení zahrnuje přidání statické oblasti .qdb file jako zdroj file pro každou revizi implementace. Kromě toho musíte specifikovat
odpovídající subjekt PR regionu. Chcete-li nastavit revize implementace PR, postupujte takto:

  1.  Chcete-li nastavit aktuální revizi, klepněte na Projekt ➤ Revize, jako název revize vyberte blinking_led_default a poté klepněte na Nastavit aktuální. Případně můžete vybrat aktuální revizi na hlavním panelu nástrojů Intel Quartus Prime.
  2. Chcete-li ověřit správný zdroj pro tuto revizi implementace, klepněte na Projekt ➤ Přidat/Odebrat Files v projektu. Potvrďte, že soubor blinking_led.sv file se objeví v file seznam.Vývojová deska FPGA intel Agilex F-Series – Okno oddílů 1
  3. Pro ověření správného zdroje file pro revize implementace klepněte na Projekt ➤ Přidat/Odebrat files v projektu a přidejte následující zdroj files pro revize implementace. Pokud existuje, odstraňte blinking_led.sv ze seznamu projektů files.
    Iimplementace Název revize Zdroj File
    blinking_led_empty blinking_led_empty.sv
    blinking_led_slow blikající_led_slow.sv
  4. Nastavte blinking_led_default jako aktuální revizi.
  5. Chcete-li zadat .qdb file jako zdroj pro root_partition klepněte na Přiřazení ➤ Okno Návrh oddílů. Poklepejte na databázi oddílů File a zadejte blikající_led_static.qdb file.
  6. Podobně zadejte blinking_led_supr_partition_final.qdb jako databázi oddílů File pro supr_partition.

    Obrázek 10.Vývojová deska intel Agilex F-Series FPGA – specifikujteAlternativně použijte k zadání .qdb následující přiřazení .qsf:
    set_instance_assignment -name QDB_FILE_PARTITION \ blikající_led_static.qdb -to |
    set_instance_assignment -name QDB_FILE_PARTITION \ blinking_led_supr_partition_final.qdb -to u_top_counter

  7. V okně Design Partitions klikněte na (…) vedle nejvzdálenějšího pravého sloupce a povolte sloupec Entity Re-binding.
  8.  V buňce Entity Re-binding zadejte nový název entity pro PR oddíl, který měníte v aktuální revizi implementace. Pro revizi implementace blinking_led_default je název entity blinking_led. V tomto případě přepisujete instanci u_blinking_led ze základní kompilace revize novou entitou blinking_led. Další revize implementace naleznete v následující tabulce:

    Revize Hodnota opětovného vázání entity
    blinking_led_slow blinking_led_slow
    blinking_led_empty blinking_led_empty

    Obrázek 11. Opětovné svázání entityIntel Agilex F-Series vývojová deska FPGA – převázáníAlternativně můžete k nastavení přiřazení použít následující řádky v souboru .qsf každé revize:
    ##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

  9. Odstraňte text place_holder z buňky Re-binding entity pro supr_partition.
  10. Chcete-li návrh zkompilovat, klepněte na Zpracování ➤ Spustit kompilaci. Alternativně použijte ke kompilaci tohoto projektu následující příkaz: quartus_sh –flow kompilovat blinking_led –c blinking_led_default
  11. Opakováním kroků 4 až 11 připravte a zkompilujte revize implementace blinking_led_slow a blinking_led_empty.

1.5.8. Krok 8: Změňte logiku SUPR
Chcete-li změnit funkčnost logiky v oddílu SUPR, musíte změnit zdroj oddílu SUPR. Chcete-li nahradit instanci u_top_counter v oddílu SUPR entitou top_counter_fast, proveďte následující kroky.

  1. Chcete-li nastavit revizi implementace SUPR jako aktuální, klikněte na Projekt ➤ Revize a nastavte impl_blinking_led_supr_new jako aktuální revizi nebo vyberte
    revize na hlavním panelu nástrojů Intel Quartus Prime.
  2. Pro ověření správného zdroje file pro revizi implementace klepněte na Projekt ➤
    Přidat/Odebrat files v Projectu a ověřte, že top_counter_fast.sv je zdrojem revize implementace impl_blinking_led_supr_new. Pokud existuje, odeberte top_counter.sv ze seznamu projektů files.Vývojová deska intel Agilex F-Series FPGA – Zadání
  3. Chcete-li zadat .qdb file přidružený ke kořenovému oddílu, klepněte na Přiřazení ➤ Okno Návrh oddílů a poté poklepejte na Databáze oddílů File k určení blikající_led_static.qdb.
    Alternativně k tomu použijte následující příkaz file: set_instance_assignment -name QDB_FILE_PARTITION \ blikající_led_static.qdb -to |
  4. V buňce Entity Re-binding pro pr_partition zadejte příslušný název entity. Pro tento example, zadejte entitu blinking_led_empty. V tomto případě přepisujete instanci u_blinking_led z kompilace základní revize novou entitou linking_led_empty. V souboru .qsf nyní existuje následující řádek:
    ##impl_blinking_led_supr_new.qsf set_instance_assignment -name ENTITY_REBINDING blinking_led_empty \ -to u_blinking_led
  5. V buňce Entity Re-binding pro supr_partition zadejte entitu top_counter_fast. top_counter_fast je název statické entity, která nahradí u_top_counter, když dokončíte SUPR.Vývojová deska intel Agilex F-Series FPGA - SUPR##impl_blinking_led_supr_new.qsf set_instance_assignment -name ENTITY_REBINDING top_counter_fast \ -to u_top_counter
  6. Chcete-li návrh zkompilovat, klepněte na Zpracování ➤ Spustit kompilaci. Alternativně použijte ke kompilaci této revize projektu následující příkaz: quartus_sh –flow kompilovat blinking_led –c \ impl_blinking_led_supr_new

1.5.9. Krok 9: Naprogramujte desku
Chcete-li připojit a naprogramovat vývojovou desku FPGA Intel Agilex F-Series, postupujte podle těchto kroků.

  1. Připojte napájecí zdroj k vývojové desce Intel Agilex F-Series FPGA.
  2. Připojte USB kabel mezi USB port vašeho počítače a USB programovací hardware na vývojové desce.
  3. Otevřete software Intel Quartus Prime a potom klepněte na Nástroje ➤ Programátor. Viz Programování vývojové rady.
  4. V Programátoru klikněte na Nastavení hardwaru a poté vyberte USB-Blaster.
  5. Klikněte na Auto Detect a poté vyberte zařízení AGFB014R24B.
  6.  Klepněte na tlačítko OK. Software Intel Quartus Prime detekuje a aktualizuje programátor se třemi zařízeními FPGA na desce.
  7.  Vyberte zařízení AGFB014R24B a klikněte na Změnit Filea načtěte soubor blinking_led_default.sof file.
  8. Povolit Program/Konfigurovat pro blinking_led_default.sof file.
  9. Klikněte na Start a počkejte, až ukazatel průběhu dosáhne 100 %.
  10.  Sledujte blikající LED diody na desce.
  11. Chcete-li naprogramovat pouze oblast PR, klepněte pravým tlačítkem na soubor blinking_led_default.sof file v Programátoru a klikněte na Přidat programování PR File. Vyberte soubor blinking_led_slow.pr_partition.rbf file.
  12. Zakázat Program/Konfigurovat pro blinking_led_default.sof file.
  13.  Povolit Program/Konfigurovat pro blinking_led_slow.pr_partition.rbf filea potom klepněte na tlačítko Start. Na desce sledujte, jak LED[0] a LED[1] dále blikají. Když ukazatel průběhu dosáhne 100 %, LED[2] a LED[3] blikají pomaleji.
  14. Chcete-li přeprogramovat oblast PR, klepněte pravým tlačítkem na soubor .rbf file v Programátoru a potom klepněte na Změnit programování PR File.
  15.  Vyberte soubor .rbf filepro další dvě osoby, aby sledovaly chování na šachovnici. Nahrává se soubor blinking_led_default.pr_partition.rbf file způsobí, že LED diody blikají s původní frekvencí a načte se soubor blinking_led_empty.pr_partition.rbf file způsobí, že LED zůstanou svítit. 17. Chcete-li změnit logiku SUPR, opakujte krok 7 výše a vyberte impl_blinking_led_supr_new.sof. Po změně tohoto file, led [0:1] nyní bliká rychleji než dříve. Druhý PR .rbf files jsou také kompatibilní s novým .sof.
    Poznámka: Assembler vygeneruje soubor .rbf file pro region SUPR. Toto byste však neměli používat file přeprogramovat FPGA za běhu, protože oddíl SUPR nevytváří instanci zmrazeného můstku, řadiče PR regionu a další logiky v celém systému. Když provedete změny v logice oddílu SUPR, musíte přeprogramovat celý soubor .sof file z kompilace revize implementace SUPR.

Obrázek 12. Programování vývojové rady
Vývojová deska intel Agilex F-Series FPGA – deska1.5.9.1. Odstraňování chyb programování PR
Zajištění správného nastavení programátoru Intel Quartus Prime a připojeného hardwaru pomáhá vyhnout se chybám během programování PR.
Pokud narazíte na chyby programování PR, přečtěte si část „Odstraňování chyb programování PR“ v Uživatelské příručce Intel Quartus Prime Pro Edition: Částečná rekonfigurace, kde najdete podrobné tipy pro odstraňování problémů.
Související informace

Odstraňování chyb programování PR

1.5.10. Úprava oddílu SUPR
Můžete upravit existující oddíl SUPR. Po úpravě oddílu SUPR jej musíte zkompilovat, vygenerovat soubor .sof filea naprogramujte desku, aniž byste museli kompilovat ostatní persony. Napřample, postupujte podle následujících kroků a změňte modul top_counter_fast.sv tak, aby počítal rychleji:

  1. Nastavte impl_blinking_led_supr_new jako aktuální revizi.
  2.  V top_counter_fast.sv file, nahraďte příkaz count_d + 2 výrazem count_d + 4.
  3.  Spuštěním následujících příkazů znovu syntetizujte blok SUPR a vygenerujte nový .sof file: quartus_sh –flow kompilace blikající_led \ -c impl_blinking_led_supr_new
    Výsledný .sof nyní obsahuje novou oblast SUPR a používá blinking_led pro výchozí (zapnutou) personu.

1.6. Historie revizí dokumentu AN 987: Statická aktualizace Výukový program Částečná rekonfigurace Historie revizí

Verze dokumentu Verze Intel Quartus Prime Změny
2022.10.24 22. Prvotní vydání dokumentu.

Aktualizováno pro Intel® Quartus®Prime Design Suite: 22.3

Odpovědi na nejčastější dotazy:

Odeslat zpětnou vazbu

Q Co je částečná rekonfigurace statické aktualizace

Částečná rekonfigurace statické aktualizace na straně 3

Q Co potřebuji pro tento tutoriál?

Požadavky na tutoriál na straně 3

Q Kde mohu získat referenční návrh?

Referenční design ke stažení Files na straně 5

Otázka Jak vytvořím návrh SUPR?

Návod k referenčnímu návrhu na straně 6

Q Co je to PR persona?

Definice Personas na straně 10

Otázka Jak změním logiku SUPR? A Změňte logiku SUPR na straně 16

A Změňte logiku SUPR na straně 16

Q Jak naprogramuji desku?

A Program rady na straně 18

Otázka Jaké jsou známé problémy a omezení PR?

A Fóra podpory Intel FPGA: PR

Vývojová deska intel Agilex F-Series FPGA – ikona Online verze
Vývojová deska intel Agilex F-Series FPGA – Icon 154 Odeslat zpětnou vazbu

ID: 749443
AN-987
Verze: 2022.10.24

Dokumenty / zdroje

Vývojová deska intel Agilex F-Series FPGA [pdfUživatelská příručka
Agilex F-Series, Agilex F-Series FPGA Development Board, FPGA Development Board, Development Board, Board

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *