intel AN 805 Rikonfigurazzjoni Parzjali Ġerarkika ta' Disinn fuq Bord ta' Żvilupp SoC Arria 10
Tutorial ta' Rikonfigurazzjoni Parzjali Ġerarkika għall-Bord tal-Iżvilupp tas-SoC Intel® Arria® 10
Din in-nota tal-applikazzjoni turi t-trasformazzjoni ta’ disinn sempliċi f’disinn ġerarkiku parzjalment konfigurabbli mill-ġdid, u l-implimentazzjoni tad-disinn fuq il-bord tal-iżvilupp tas-SoC Intel® Arria® 10. Rikonfigurazzjoni parzjali ġerarkika (HPR) hija tip speċjali ta' rikonfigurazzjoni parzjali (PR), fejn inti jkun fiha reġjun PR f'reġjun PR ieħor. Tista 'toħloq persuni multipli kemm għall-ħitan tat-tfal kif ukoll għall-ġenituri. Inti bejta l-ħitan tat-tfal fil-ħitan ġenitur tagħhom. Il-konfigurazzjoni mill-ġdid ta' partizzjoni tifel ma tħallix impatt fuq l-operat fir-reġjuni ġenitur jew statiċi. Il-konfigurazzjoni mill-ġdid ta 'partizzjoni ġenitur ma tħallix impatt fuq l-operazzjoni fir-reġjun statiku, iżda tissostitwixxi l-ħitan tfal tar-reġjun ġenitur b'persona ta' partizzjoni tfal default. Din il-metodoloġija hija effettiva f'sistemi fejn funzjonijiet multipli jaqsmu l-ħin tal-istess riżorsi tal-apparat FPGA.
Rikonfigurazzjoni parzjali tipprovdi l-avvanzi li ġejjin għal disinn ċatt:
- Jippermetti l-konfigurazzjoni mill-ġdid tad-disinn tal-run-time
- Iżżid l-iskalabbiltà tad-disinn
- Tnaqqas il-perijodi ta' waqfien tas-sistema
- Jappoġġja funzjonijiet dinamiċi time-multiplexing fid-disinn
- Tbaxxi l-ispiża u l-konsum tal-enerġija permezz ta 'użu effiċjenti tal-ispazju tal-bord
- Nota:
- L-implimentazzjoni ta’ dan id-disinn ta’ referenza teħtieġ familjarità bażika mal-fluss ta’ implimentazzjoni tal-Intel Quartus® Prime FPGA u għarfien tal-proġett primarju Intel Quartus Prime files.
Informazzjoni Relatata
- Gwida għall-Utent tal-Kit għall-Iżvilupp tas-SoC Intel Arria 10
- Kunċetti ta' Rikonfigurazzjoni Parzjali
- Fluss ta' Disinn ta' Rikonfigurazzjoni Parzjali
- Rakkomandazzjonijiet ta' Disinn ta' Rikonfigurazzjoni Parzjali
- Konsiderazzjonijiet ta' Disinn ta' Rikonfigurazzjoni Parzjali
Rekwiżiti tad-Disinn ta' Referenza
Dan id-disinn ta’ referenza jeħtieġ dan li ġej:
- Verżjoni tas-softwer Intel Quartus Prime Pro Edition 17.1 għall-implimentazzjoni tad-disinn.
- Kit ta 'żvilupp Intel Arria 10 SoC għall-implimentazzjoni tal-FPGA.
Korporazzjoni Intel. Id-drittijiet kollha riżervati. Intel, il-logo Intel, u marki oħra Intel huma trademarks ta' Intel Corporation jew is-sussidjarji tagħha. Intel tiggarantixxi l-prestazzjoni tal-prodotti FPGA u semikondutturi tagħha skont l-ispeċifikazzjonijiet attwali skont il-garanzija standard ta 'Intel, iżda tirriżerva d-dritt li tagħmel bidliet fi kwalunkwe prodott u servizz fi kwalunkwe ħin mingħajr avviż. Intel ma tassumi l-ebda responsabbiltà jew responsabbiltà li tirriżulta mill-applikazzjoni jew l-użu ta' kwalunkwe informazzjoni, prodott jew servizz deskritt hawnhekk ħlief kif miftiehem espressament bil-miktub minn Intel. Il-klijenti Intel huma avżati biex jiksbu l-aħħar verżjoni tal-ispeċifikazzjonijiet tal-apparat qabel ma jiddependu fuq kwalunkwe informazzjoni ppubblikata u qabel ma jagħmlu ordnijiet għal prodotti jew servizzi.
- Ismijiet u marki oħra jistgħu jiġu mitluba bħala l-proprjetà ta 'oħrajn.
Disinn ta' Referenza Overview
- Dan id-disinn ta 'referenza jikkonsisti minn counter wieħed ta' 32-bit. Fil-livell tal-bord, id-disinn jgħaqqad l-arloġġ ma 'sors ta' 50MHz u jgħaqqad l-output ma 'erba' LEDs fuq l-FPGA. L-għażla tal-output mill-counter bits f'sekwenza speċifika tikkawża li l-LEDs teptip bi frekwenza speċifika.
Figura 1. Disinn ta 'Referenza Flat mingħajr Partitioning PR
Disinn ta' Referenza Files
It-tutorja tar-rikonfigurazzjoni parzjali hija disponibbli fil-post li ġej: https://github.com/intel/fpga-partial-reconfig
Biex tniżżel it-tutorja:
- Ikklikkja Klonja jew tniżżel.
- Ikklikkja Niżżel ZIP. Unzip l-FPGA-partial-config-master.zip file.
- Innaviga fis-subfolder tat-tutorials/a10_soc_devkit_blinking_led_hpr biex taċċessa d-disinn ta’ referenza.
Il-folder ċatt jikkonsisti f'dan li ġej files:
Tabella 1. Disinn ta' Referenza Files
File Isem | Deskrizzjoni |
fuq. SV | L-ogħla livell file fih l-implimentazzjoni fissa tad-disinn. Dan il-modulu jagħti l-istanzija tas-sub-partition blinking_led u l-modulu top_counter. |
top_counter.sv | L-ogħla livell 32-bit counter li jikkontrolla l-LED[1] direttament. L-output reġistrat tal-counter jikkontrolla l-LED[0], u wkoll iħaddem LED[2] u LED[3] permezz tal-modulu blinking_led. |
blinking_led.sdc | Jiddefinixxi r-restrizzjonijiet taż-żmien għall-proġett. |
kompla... |
File Isem | Deskrizzjoni |
blinking_led.SV | F'dan it-tutorja, inti tikkonverti dan il-modulu f'partizzjoni PR ġenitur. Il-modulu jirċievi l-output reġistrat tal-modulu top_counter, li jikkontrolla l-LED[2] u l-LED[3]. |
blinking_led.qpf | Proġett Intel Quartus Prime file li jkun fih il-lista tar-reviżjonijiet kollha fil-proġett. |
blinking_led.qsf | Is-settings tal-Intel Quartus Prime file li jkun fih l-inkarigi u s-settings għall-proġett. |
Nota: Il-fowlder hpr fih is-sett komplut ta' files inti toħloq billi tuża din in-nota tal-applikazzjoni. Referenza għal dawn files fi kwalunkwe punt matul il-walkthrough.
Figura 2. Disinn ta' Referenza Files
Walkthrough tad-Disinn ta' Referenza
Il-passi li ġejjin jiddeskrivu l-applikazzjoni ta 'konfigurazzjoni mill-ġdid parzjali għal disinn ċatt. It-tutorja juża s-softwer Intel Quartus Prime Pro Edition għall-bord tal-iżvilupp Intel Arria 10 SoC:
- Pass 1: Nibdew f’paġna 6
- Pass 2: Oħloq Submodulu tal-Livell tat-Tfal f’paġna 6
- Pass 3: Ħolqien tal-Ħitan tad-Disinn f’paġna 7
- Pass 4: Allokazzjoni tar-Reġjun tal-Pjazzament u tar-Rotot għal Partizzjonijiet PR f'paġna 9
- Pass 5: Żieda tal-Intel Arria 10 Partial Reconfiguration Controller IP Core f'paġna 10
- Pass 6: Id-Definizzjoni ta’ Personas f’paġna 13
- Pass 7: Ħolqien ta’ Reviżjonijiet f’paġna 15
- Pass 8: Ġenerazzjoni tal-Iskript tal-Fluss ta’ Rikonfigurazzjoni Parzjali Ġerarkika f’paġna 20
- Pass 9: It-tħaddim tal-Iskript tal-Fluss ta' Rikonfigurazzjoni Parzjali Ġerarkika f'paġna 21
- Pass 10: L-ipprogrammar tal-Bord f’paġna 22
Pass 1: Nibdew
Biex tikkopja d-disinn ta’ referenza files għall-ambjent tax-xogħol tiegħek u ikkumpila d-disinn ċatt blinking_led:
- Oħloq direttorju fl-ambjent tax-xogħol tiegħek, a10_soc_devkit_blinking_led_hpr.
- Ikkopja t-tutorials imniżżla/a10_soc_devkit_blinking_led_hpr/flat subfolder fid-direttorju, a10_soc_devkit_blinking_led_hpr.
- Fis-softwer Intel Quartus Prime Pro Edition, ikklikkja File ➤ Iftaħ Proġett u agħżel blinking_led.qpf.
- Biex tiġbor id-disinn ċatt, ikklikkja Ipproċessar ➤ Ibda l-Kompilazzjoni.
Pass 2: Ħolqien ta' Sottomodulu tal-Livell tat-Tfal
Biex tikkonverti dan id-disinn ċatt f'disinn PR ġerarkiku, trid toħloq sub-modulu tifel (blinking_led_child. SV) li jkun ibbed fi ħdan is-sub-modulu ġenitur (blinking_led.sv).
- Oħloq disinn ġdid file, blinking_led_child.sv, u żid il-linji ta' kodiċi li ġejjin ma' dan file: skala ta' żmien 1 ps / 1 ps `default_nettype ebda modulu blinking_led_child ( // arloġġ tal-wajer tad-dħul tal-arloġġ, wajer tad-dħul [31:0] counter, // Sinjali ta' kontroll għall-LEDs
- Immodifika l-blinking_led.sv file biex tgħaqqad il-led_two_on mal-bit 23 tal-counter mir-reġjun statiku, u tistanija l-modulu blinking_led_child. Wara modifiki, tiegħek blinking_led.sv file irid jidher kif ġej:
- Meta timmodifika d-disinn kollu files, ikkompila mill-ġdid il-proġett billi tikklikkja Ipproċessar ➤ Ibda l-Kompilazzjoni
Pass 3: Ħolqien tal-Ħitan tad-Disinn
Int trid toħloq diviżorji tad-disinn għal kull reġjun PR li trid terġa 'tikkonfigura parzjalment. Tista 'toħloq kwalunkwe numru ta' diviżorji indipendenti jew reġjuni PR fid-disinn tiegħek. Dan it-tutorja joħloq żewġ diviżorji tad-disinn għall-istanzi u_blinking_led_child u u_blinking_led.
Biex toħloq diviżorji tad-disinn għal konfigurazzjoni mill-ġdid parzjali ġerarkika:
- Ikklikkja bil-lemin fuq l-istanza u_blinking_led_child fin-Navigatur tal-Proġett u kklikkja Disinn Partition ➤ Issettja bħala Disinn Partition. Ikona diviżorja tad-disinn tidher ħdejn kull istanza li hija ssettjata bħala partizzjoni.
Figura 3. Ħolqien tal-Ħitan tad-Disinn minn Project Navigator
- Biex tiddefinixxi t-Tip tal-partizzjoni, ikklikkja bil-lemin fuq l-istanza u_blinking_led_child fit-tab Ġerarkija, ikklikkja Disinn Partizzjoni ➤ Konfigurabbli mill-ġdid. Tista 'tiddefinixxi biss it-Tip ta' partizzjoni wara li ssettja l-istanza bħala partizzjoni. Il-partizzjoni tad-disinn tidher fuq l-Assenjamenti View tab tat-Tieqa tal-Ħitan tad-Disinn.
Figura 4. Tieqa tal-Ħitan tad-Disinn
- Editja l-isem tal-partizzjoni fit-Tieqa tal-Ħitan tad-Disinn billi tikklikkja darbtejn fuq l-isem. Għal dan id-disinn ta' referenza, semmi mill-ġdid l-isem tal-partizzjoni għal pr_partition.
Nota: Meta toħloq partizzjoni, is-softwer Intel Quartus Prime awtomatikament jiġġenera isem tal-partizzjoni, ibbażat fuq l-isem tal-istanza u t-triq tal-ġerarkija. Dan l-isem tal-partizzjoni default jista’ jvarja ma’ kull istanza. - Irrepeti l-passi 1 u 2 biex tassenja diviżorji tad-disinn konfigurabbli mill-ġdid lill-istanza u_blinking_led. Semmi mill-ġdid din il-partizzjoni għal pr_parent_partition.
Ivverifika li l-blinking_led.qsf fih l-assenjazzjonijiet li ġejjin, li jikkorrispondu mal-ħitan tad-disinn rikonfigurabbli tiegħek:
Oħloq diviżorji tad-Disinn għal Rikonfigurazzjoni Parzjali
Pass 4: Allokazzjoni ta' Pjazzament u Reġjun tar-Rotot għal Partizzjonijiet PR
Meta toħloq ir-reviżjoni bażi, il-fluss tad-disinn PR juża l-allokazzjoni tar-reġjun tal-partizzjoni PR tiegħek biex ipoġġi l-qalba tal-persona korrispondenti fir-reġjun riżervat. Biex issib u tassenja r-reġjun PR fil-pjan tal-art tal-apparat għar-reviżjoni bażi tiegħek:
- Ikklikkja bil-lemin fuq l-istanza u_blinking_led_child fin-Navigatur tal-Proġett u kklikkja Logic Lock Region ➤ Create New Logic Lock Region. Ir-reġjun jidher fuq it-Tieqa tar-Reġjuni tal-Lock tal-Loġika.
- Ir-reġjun tat-tqegħid tiegħek għandu jinkludi l-loġika blinking_led_child. Agħżel ir-reġjun tat-tqegħid billi ssib in-nodu f'Chip Planner. Ikklikkja bil-lemin fuq l-isem tar-reġjun u_blinking_led_child fin-Navigatur tal-Proġett u kklikkja Sib Node ➤ Sib fi Chip Planner.
Figura 5. Post tan-Node tal-Planner taċ-Ċippa għal blinking_led - Fit-tieqa Logic Lock Regions, speċifika l-koordinati tar-reġjun tat-tqegħid fil-kolonna Oriġini. L-oriġini tikkorrispondi mar-rokna t'isfel tax-xellug tar-reġjun. Per example, biex tissettja reġjun ta 'tqegħid b'koordinati (X1 Y1) bħala (69 10), speċifika l-Oriġini bħala X69_Y10. Is-softwer Intel Quartus Prime jikkalkula awtomatikament il-koordinati (X2 Y2) (fuq il-lemin) għar-reġjun tat-tqegħid, ibbażat fuq l-għoli u l-wisa 'li tispeċifika.
Nota: Dan it-tutorja juża l-koordinati (X1 Y1) - (69 10), u għoli u wisa 'ta' 20 għar-reġjun tat-tqegħid. Iddefinixxi kwalunkwe valur għar-reġjun tat-tqegħid, sakemm ir-reġjun ikopri l-loġika blinking_led_child. - Ippermetti l-għażliet Riżervati u Core-Only.
- Ikklikkja darbtejn l-għażla tar-Reġjun tar-Rotot. Tidher il-kaxxa ta' dialog tas-Settings tar-Reġjun tar-Rotot tal-Lock Loġiku.
- Agħżel Fiss b'espansjoni għat-tip ta' Rotot. L-għażla ta 'din l-għażla awtomatikament tassenja tul ta' espansjoni ta '1.
Nota: Ir-reġjun tar-rotot għandu jkun akbar mir-reġjun tat-tqegħid, biex jipprovdi flessibilità żejda għall-Fitter meta l-magna tgħaddi minn persona differenti. - Irrepeti l-passi 1 -6 għall-istanza u_blinking_led. It-tqegħid fil-livell tal-ġenitur Irrepeti l-passi 1 -6 għall-istanza u_blinking_led. Ir-reġjun tat-tqegħid fil-livell tal-ġenitur għandu jagħlaq bis-sħiħ ir-reġjuni korrispondenti tat-tqegħid fil-livell tat-tfal u tar-rotot filwaqt li jippermetti spazju biżżejjed għat-tqegħid tal-loġika fil-livell tal-ġenituri. Dan it-tutorja juża l-koordinati (X1 Y1) - (66 7), għoli ta '47, u wisa' ta '26 għar-reġjun ta' tqegħid tal-istanza u_blinking_led.
Figura 6.Tieqa tar-Reġjuni tal-Lock Loġiku
Ivverifika li l-blinking_led.qsf fih l-inkarigi li ġejjin, li jikkorrispondu għall-ippjanar tal-art tiegħek:
- Floorplan id-Disinn tar-Rikonfigurazzjoni Parzjali
- Timplimenta b'mod inkrementali Rikonfigurazzjoni Parzjali
Pass 5: Żieda tal-Intel Arria 10 Parzjali Reconfiguration Controller IP Core
- Uża l-qalba tal-IP tal-Kontrollur tar-Rikonfigurazzjoni Parzjali Intel Arria 10 biex tikkonfigura mill-ġdid il-partizzjoni PR. Dan il-qalba tal-IP juża JTAG biex tikkonfigura mill-ġdid il-partizzjoni PR. Biex iżżid il-qalba tal-IP tal-Kontrollur tar-Rikonfigurazzjoni Parzjali Intel Arria 10 mal-proġett Intel Quartus Prime tiegħek:
- Ittajpja Rikonfigurazzjoni Parzjali fil-katalgu tal-IP.
- Biex tniedi t-tieqa IP Parameter Editor Pro, agħżel il-qalba tal-IP tal-Kontrollur tar-Rikonfigurazzjoni Parzjali Intel Arria 10 mil-librerija tal-IP, u kklikkja Żid.
- Fil-kaxxa ta' dialog Varjant IP Ġdid, ittajpja pr_ip bħala l- file isem u kklikkja Oħloq. Uża l-parametrizzazzjoni default għal pr_ip. Żgura li l-Enable JTAG Il-mod debug u l-għażliet tal-interface tal-iffriżar Attiva huma mixgħula, u l-għażla tal-interface tal-iskjavi Enable Avalon-MM hija mitfija.
Figura 7. Parametri tal-qalba tal-IP tal-Kontrollur tar-Rikonfigurazzjoni Parzjali Intel Arria 10
- Ikklikkja Finish, u toħroġ mill-editur tal-parametri mingħajr ma tiġġenera s-sistema. Is-softwer Intel Quartus Prime joħloq il-varjazzjoni IP pr_ip.ip file, u żżid il- file għall-proġett blinking_led.
Nota:
- Jekk qed tikkopja l-pr_ip.ip file mill-fowlder hpr, editja manwalment il-blinking_led.qsf file biex tinkludi l-linja li ġejja: set_global_assignment -name IP_FILE pr_ip.ip
- Poġġi l-IP_FILE assenjazzjoni wara l-SDC_FILE inkarigi (jtag.sdc u blinking_led.sdc) fil-blinking_led.qsf tiegħek file. Dan l-ordni jiżgura restrizzjonijiet xierqa tal-qalba tal-IP tar-Rikonfigurazzjoni Parzjali.
Nota: Biex tiskopri l-arloġġi, l-SDC file għall-PR IP għandu jsegwi kwalunkwe SDC li joħloq l-arloġġi li juża l-qalba tal-IP. Inti tiffaċilita din l-ordni billi tiżgura li l-.ip file għall-qalba tal-PR IP tiġi wara kwalunkwe .ip files jew SDC files użati biex joħolqu dawn l-arloġġi fil-QSF file għar-reviżjoni tal-proġett Intel Quartus Prime tiegħek. Għal aktar informazzjoni, irreferi għat-taqsima tar-Restrizzjonijiet tal-Ħin fil-Gwida tal-Utent tal-IP Core tal-Konfigurazzjoni mill-ġdid parzjali.
Informazzjoni Relatata
- Gwida għall-Utent tas-Soluzzjonijiet tal-IP ta' Rikonfigurazzjoni Parzjali
- Għal informazzjoni dwar il-qalba tal-IP tal-Kontrollur tar-Reġjun tar-Rikonfigurazzjoni Parzjali.
- Gwida għall-Utent tal-IP Core Rikonfigurazzjoni Parzjali
- Għal informazzjoni dwar ir-restrizzjonijiet taż-żmien.
Aġġornament tad-Disinn tal-Ogħla Livell
Biex taġġorna l-quċċata.SV file bl-istanza PR_IP:
- Biex iżżid l-istanza PR_IP mad-disinn tal-ogħla livell, neħħi l-kumment tal-blokk tal-kodiċi li ġej fil-quċċata.SV file:
- Biex iġġiegħel il-portijiet tal-ħruġ għal-loġika 1 waqt ir-rikonfigurazzjoni, uża l-output tas-sinjal tal-kontroll tal-iffriżar minn PR_IP. Madankollu, biex tosserva l-LED tkompli teptip mill-partizzjoni PR ġenitur waqt li l-PR ipprogramma l-partizzjoni tat-tfal, is-sinjal tal-kontroll tal-iffriżar ma jitfi l-led_two_on. Żgura li l-pr_led_two_on huwa direttament
- Biex tassenja istanza tal-persona ġenitur default (blinking_led), aġġorna l-top.SV file bil-blokk ta' kodiċi li ġej:
Figura 8. Rikonfigurazzjoni Parzjali IP Core Integration
Pass 6: Id-definizzjoni ta' Personas
Dan id-disinn ta 'referenza jiddefinixxi ħames persona separati għall-ħitan PR parent u wild. Biex tiddefinixxi u tinkludi l-personaġġi fil-proġett tiegħek:
- Oħloq erba' SystemVerilog files, blinking_led_child.sv, blinking_led_child_slow.sv, blinking_led_child_empty.sv, u blinking_led_slow.sv fid-direttorju tax-xogħol tiegħek għall-ħames personas.
Nota: Jekk toħloq is-SystemVerilog files mill-Intel Quartus Prime Test Editor, iddiżattiva l-Żid file għall-għażla tal-proġett attwali, meta tissejvja l- files.
Tabella 2. Personas tad-Disinn ta' Referenza
File Isem | Deskrizzjoni | Kodiċi |
blinking_led_child.sv | Persona default għad-disinn fil-livell tat-tfal |
`skala taż-żmien 1 ps / 1 ps `default_nettype l-ebda modulu blinking_led_child ( // arloġġ arloġġ tal-wajer tad-dħul, wajer tad-dħul [31:0] counter,
// Sinjali ta 'kontroll għall-wajer tal-ħruġ tal-LEDs led_three_on
); localparam COUNTER_TAP = 23; reg led_three_on_r;
jassenja led_three_on = led_three_on_r; always_ff @(arloġġ posge) jibda led_three_on_r <= counter[COUNTER_TAP]; tmiem
modulu tat-tmiem |
kompla... |
File Isem | Deskrizzjoni | Kodiċi |
blinking_led_child_slow.sv | Il-
LED_THREE teptip aktar bil-mod |
`skala taż-żmien 1 ps / 1 ps `default_nettype xejn
modulu blinking_led_child_slow (
// arloġġ arloġġ tal-wajer tad-dħul, wajer tad-dħul [31:0] counter,
// Sinjali ta 'kontroll għall-wajer tal-ħruġ tal-LEDs led_three_on );
localparam COUNTER_TAP = 27; reg led_three_on_r;
jassenja led_three_on = led_three_on_r; always_ff @(arloġġ posge) jibda led_three_on_r <= counter[COUNTER_TAP]; tmiem
modulu tat-tmiem |
blinking_led_child_empty.sv | Il-
LED_THREE jibqa' ON |
`skala taż-żmien 1 ps / 1 ps `default_nettype xejn
modulu blinking_led_child_empty (
// arloġġ arloġġ tal-wajer tad-dħul, wajer tad-dħul [31:0] counter,
// Sinjali ta 'kontroll għall-wajer tal-ħruġ tal-LEDs led_three_on
);
// LED huwa attiv baxx jassenja led_three_on = 1'b0;
modulu tat-tmiem |
blinking_led_slow.sv | L-LED_TWO
teptip aktar bil-mod. |
`skala taż-żmien 1 ps / 1 ps `default_nettype ebda modulu blinking_led_slow ( // arloġġ arloġġ tal-wajer tad-dħul, wajer tad-dħul [31:0] counter,
// Sinjali ta 'kontroll għall-wajer tal-ħruġ tal-LEDs led_two_on, wajer tal-ħruġ led_three_on
);
localparam COUNTER_TAP = 27; reg led_two_on_r; jassenja led_two_on = led_two_on_r;
// Il-counter: always_ff @(arloġġ posge) jibda led_two_on_r <= counter[COUNTER_TAP]; tmiem
blinking_led_child u_linking_led_child( .led_three_on (led_three_on), .counter (counter), .clock (arloġġ) |
File Isem | Deskrizzjoni | Kodiċi |
);ndmodule |
Pass 3: Ħolqien tal-Ħitan tad-Disinn f'paġna 7
Pass 7: Ħolqien ta’ Reviżjonijiet
Il-fluss tad-disinn PR juża l-karatteristika ta 'reviżjonijiet tal-proġett fis-softwer Intel Quartus Prime. Id-disinn inizjali tiegħek huwa r-reviżjoni bażi, fejn tiddefinixxi l-konfini tar-reġjun statiku u r-reġjuni konfigurabbli mill-ġdid fuq l-FPGA. Mir-reviżjoni bażi, inti toħloq reviżjonijiet multipli. Dawn ir-reviżjonijiet fihom l-implimentazzjonijiet differenti għar-reġjuni PR. Madankollu, ir-reviżjonijiet kollha tal-implimentazzjoni tal-PR jużaw l-istess riżultati ta’ tqegħid fl-ogħla livell u r-rotot mir-reviżjoni bażi. Biex tiġbor disinn tal-PR, trid toħloq reviżjoni tal-implimentazzjoni tal-PR u reviżjoni tas-sinteżi għal kull persona. F'dan id-disinn ta' referenza, minbarra r-reviżjoni bażi (blinking_led), it-tliet persona fil-livell tat-tfal u ż-żewġ persona fil-livell tal-ġenituri fihom ħames reviżjonijiet ta' sinteżi separati u ħames reviżjonijiet ta' implimentazzjoni separati:
Tabella 3. Reviżjonijiet għall-Personas b’żewġ Ġenituri u l-Persuna bi Tliet Itfal
Reviżjoni tas-Sinteżi | Reviżjoni ta' Implimentazzjoni |
blinking_led_parent, blinking_led_default | blinking_led_pr_alpha |
blinking_led_parent, blinking_led_child_slow | blinking_led_pr_bravo |
blinking_led_parent, blinking_led_child_empty | blinking_led_pr_charlie |
blinking_led_parent_slow, blinking_led_child_slow | blinking_led_pr_delta |
blinking_led_parent_slow, blinking_led_child_empty | blinking_led_pr_emma |
Ħolqien ta' Reviżjonijiet ta' Implimentazzjoni
Biex toħloq ir-reviżjonijiet tal-implimentazzjoni tal-PR:
- Biex tiftaħ il-kaxxa ta' dialog Reviżjonijiet, ikklikkja Proġett ➤ Reviżjonijiet.
- Biex toħloq reviżjoni ġdida, ikklikkja darbtejn < >.
- Speċifika l-isem tar-Reviżjoni bħala blinking_led_pr_alpha u agħżel blinking_led għal Ibbażat fuq ir-Reviżjoni.
- Itfi l-għażla Issettja bħala reviżjoni kurrenti u kklikkja OK.
- Bl-istess mod, oħloq reviżjonijiet blinking_led_pr_bravo, blinking_led_pr_charlie, blinking_led_pr_delta, u blinking_led_pr_emma, ibbażati fuq ir-reviżjoni blinking_led.
Nota: Issettjax ir-reviżjonijiet ta' hawn fuq bħala reviżjoni attwali.
Figura 9. Ħolqien ta' Reviżjonijiet
Ħolqien ta' Reviżjonijiet ta' Sinteżi Biss
Biex toħloq reviżjonijiet ta' sinteżi biss għall-persona, trid tassenja l-entità tal-ogħla livell u SystemVerilog korrispondenti file għal kull persuna:
- Fis-softwer Intel Quartus Prime, ikklikkja Proġett ➤ Reviżjonijiet.
- Oħloq reviżjoni blinking_led_default ibbażata fuq reviżjoni blinking_led. Issettjax din ir-reviżjoni bħala reviżjoni attwali.
- Immodifika l-blinking_led_default.qsf file biex tinkludi l-inkarigi li ġejjin:
set_global_assignment -name TOP_LEVEL_ENTITY blinking_led_child
set_global_assignment -name SYSTEMVERILOG_FILE - Bl-istess mod, oħloq reviżjonijiet blinking_led_child_slow, blinking_led_child_empty, blinking_led_parent, u blinking_led_parent_slow ibbażati fuq reviżjoni blinking_led. Issettjax dawn ir-reviżjonijiet bħala reviżjonijiet kurrenti.
- Aġġorna l-blinking_led_child_slow.qsf, blinking_led_child_empty.qsf, blinking_led_parent.qsf, u blinking_led_parent_slow.qsf files bil-korrispondenti tagħhom
TOP_LEVEL_ENTITY u SYSTEMVERILOG_FILE inkarigi: - Biex tevita żbalji ta ' sinteżi, żgura li r-reviżjoni tas-sinteżi files għall-ħitan tat-tfal ma fihom l-ebda partizzjoni tad-disinn, assenjazzjonijiet tal-brilli, jew Lock Logic
assenjazzjonijiet tar-reġjun. Ukoll, ir-reviżjoni tas-sinteżi files għall-ħitan diviżorji ġenitur għandu jkun fihom biss inkarigi diviżorji tad-disinn għall-ħitan diviżorji korrispondenti. Neħħi dawn l-inkarigi, jekk ikun hemm, fil-blinking_led_default.qsf, blinking_led_child_slow.qsf, blinking_led_child_empty.qsf, blinking_led_parent.qsf, u blinking_led_parent_slow.pdf files - Inkludi l-inkarigi li ġejjin fi blinking_led_parent.qsf u blinking_led_parent_slow.qsf files:
- Ivverifika li l-blinking_led.qpf file fih ir-reviżjonijiet li ġejjin, fl-ebda ordni partikolari:
- Nota: Jekk qed tikkopja r-reviżjoni files mill-fowlder hpr, aġġorna manwalment il-blinking_led.qpf file bil-linji ta 'kodiċi ta' hawn fuq.
Speċifikazzjoni tat-Tip ta' Reviżjoni
Int trid tassenja tip ta' reviżjoni għal kull waħda mir-reviżjonijiet tiegħek. Hemm tliet tipi ta’ reviżjoni:
- Rikonfigurazzjoni Parzjali – Bażi
- Rikonfigurazzjoni Parzjali - Sintesi tal-Persona
- Rikonfigurazzjoni Parzjali - Implimentazzjoni tal-Persona
- It-tabella li ġejja telenka l-assenjazzjonijiet tat-tip ta’ reviżjoni għal kull waħda mir-reviżjonijiet:
Tabella 4. Tipi ta' Reviżjoni
Isem tar-Reviżjoni | Tip ta' Reviżjoni |
blinking_led.qsf | Rikonfigurazzjoni Parzjali – Bażi |
blinking_led_default.qsf | Rikonfigurazzjoni Parzjali - Sintesi tal-Persona |
blinking_led_child_empty.qsf | Rikonfigurazzjoni Parzjali - Sintesi tal-Persona |
blinking_led_child_slow.qsf | Rikonfigurazzjoni Parzjali - Sintesi tal-Persona |
blinking_led_parent.qsf | Rikonfigurazzjoni Parzjali - Sintesi tal-Persona |
blinking_led_parent_slow.qsf | Rikonfigurazzjoni Parzjali - Sintesi tal-Persona |
blinking_led_pr_alpha.qsf | Rikonfigurazzjoni Parzjali - Implimentazzjoni tal-Persona |
blinking_led_pr_bravo.qsf | Rikonfigurazzjoni Parzjali - Implimentazzjoni tal-Persona |
blinking_led_pr_charlie.qsf | Rikonfigurazzjoni Parzjali - Implimentazzjoni tal-Persona |
blinking_led_pr_delta.qsf | Rikonfigurazzjoni Parzjali - Implimentazzjoni tal-Persona |
blinking_led_pr_emma.qsf | Rikonfigurazzjoni Parzjali - Implimentazzjoni tal-Persona |
- Ikklikkja Proġett ➤ Reviżjonijiet. Tidher il-kaxxa ta' dialog Reviżjonijiet.
- Agħżel blinking_led fil-kolonna Isem tar-Reviżjoni, u kklikkja Issettja Kurrenti.
- Ikklikkja Applika. Ir-reviżjoni blinking_led tiftaħ.
- Biex tissettja t-tip ta' reviżjoni għal blinking_led, ikklikkja Assenji ➤ Settings ➤ Ġenerali.
- Agħżel it-Tip ta' Reviżjoni bħala Rikonfigurazzjoni Parzjali – Bażi.
- Bl-istess mod, issettja t-tipi ta 'reviżjoni għall-għaxar reviżjonijiet l-oħra, kif elenkat fit-tabella ta' hawn fuq.
- Nota: Trid issettja kull reviżjoni bħala r-reviżjoni attwali qabel tassenja t-tip ta' reviżjoni. Ivverifika li kull .qsf file fih l-inkarigu li ġej:
- Nota: Żid kwalunkwe settings speċifiċi għall-Fitter li trid tuża fil-kumpilazzjoni tal-implimentazzjoni tal-PR mar-reviżjonijiet tal-implimentazzjoni tal-persona. Is-settings speċifiċi għall-Fitter jaffettwaw it-twaħħil tal-persona, iżda ma jaffettwawx ir-reġjun statiku importat. Tista 'wkoll iżżid kwalunkwe settings speċifiċi għas-sinteżi għal reviżjonijiet individwali tas-sinteżi tal-persona.
Oħloq Reviżjonijiet għal Personas
Pass 8: Ġenerazzjoni tal-Iskript tal-Fluss ta' Rikonfigurazzjoni Parzjali Ġerarkika
Biex tiġġenera l-iskript tal-fluss tar-rikonfigurazzjoni parzjali ġerarkika:
- Mill-qoxra tal-kmand Intel Quartus Prime, oħloq mudell tal-fluss billi tħaddem il-kmand li ġej:
- Intel Quartus Prime jiġġenera l-a10_hier_partial_reconfig/flow.tcl file.
- Semmi mill-ġdid il-ġenerat a10_hier_partial_reconfig/setup.tcl.example għal a10_hier_partial_reconfig/setup.tcl, u mmodifika l-iskript biex tispeċifika d-dettalji tal-proġett ta' rikonfigurazzjoni parzjali tiegħek:
a. Biex tiddefinixxi l-isem tal-proġett, aġġorna l-linja li ġejja:b. Biex tiddefinixxi r-reviżjoni bażi, aġġorna l-linja li ġejja:
- Biex tiddefinixxi kull waħda mir-reviżjonijiet tal-implimentazzjoni tar-rikonfigurazzjoni parzjali, flimkien mal-ismijiet tal-partizzjonijiet PR u r-reviżjoni tas-sors li timplimenta r-reviżjonijiet, aġġorna l-linji li ġejjin:
Nota: Il-proġetti ta' reviżjoni kollha għandhom ikunu fl-istess direttorju bħal blinking_led.qpf. Inkella, aġġorna l-iskrittura tal-fluss kif xieraq.
Pass 9: Tmexxi l-Iskript tal-Fluss ta' Rikonfigurazzjoni Parzjali Ġerarkika
Biex tħaddem l-iskript tal-fluss tar-rikonfigurazzjoni parzjali ġerarkika:
- Ikklikkja Għodda ➤ Tcl Scripts. Tidher il-kaxxa ta' dialog Tcl Scripts.
- Ikklikkja Żid mal-Proġett, ibbrawżja u agħżel il-a10_hier_partial_reconfig/flow.tcl.
- Agħżel l-a10_hier_partial_reconfig/flow.tcl fil-panew tal-Libreriji, u kklikkja Mexxi.
Din l-iskrittura tmexxi s-sinteżi għat-tliet personas. Intel Quartus Prime jiġġenera Oġġett SRAM File (.sof), Oġġett SRAM Parzjali-Masked File (.pmsf), u Binarju mhux maħdum File (.rbf) għal kull waħda mill-persona.
Nota: Biex tħaddem l-iskript mill-qoxra tal-kmand Intel Quartus Prime, ikteb il-kmand li ġej:
- Iġbor id-Disinn tar-Rikonfigurazzjoni Parzjali
- Bl-użu tal-Iskript tal-Fluss ta' Rikonfigurazzjoni Parzjali
- Konfigurazzjoni tal-Iskript tal-Fluss ta' Rikonfigurazzjoni Parzjali
- Iġġenera Programmazzjoni Files
Pass 10: Programmazzjoni tal-Bord
Qabel ma tibda:
- Qabbad il-provvista tal-enerġija mal-bord tal-iżvilupp Intel Arria 10 SoC.
- Qabbad il-kejbil USB Blaster bejn il-port USB tal-PC tiegħek u l-port USB Blaster fuq il-bord tal-iżvilupp.
Biex tmexxi d-disinn fuq il-bord tal-iżvilupp tas-SoC Intel Arria 10:
- Iftaħ is-softwer Intel Quartus Prime u kklikkja Għodda ➤ Programmatur.
- Fil-Programmer, ikklikkja Hardware Setup u agħżel USB-Blaster.
- Ikklikkja Auto Detect u agħżel l-apparat, 10AS066N3.
- Ikklikkja OK. Is-softwer Intel Quartus Prime jiskopri u jaġġorna l-Programmatur bit-tliet ċipep FPGA fuq il-bord.
- Agħżel l-apparat 10AS066N3, ikklikkja Ibdel File u tagħbija l-blinking_led_pr_alpha.sof file.
- Ippermetti l-Programm/Ikkonfigura għal blinking_led_pr_alpha.sof file.
- Ikklikkja Start u stenna li l-istrixxa tal-progress tilħaq il-100%.
- Osserva l-LEDs fuq il-bord teptip bl-istess frekwenza bħad-disinn ċatt oriġinali.
- Biex tipprogramma r-reġjun PR tat-tfal biss, ikklikkja fuq il-linking_led_pr_alpha.sof bil-lemin file fil-Programmatur u kklikkja Żid Programmazzjoni PR File.
- Agħżel il-blinking_led_pr_bravo.pr_parent_partition.pr_partition.rbf file.
- Itfi Programm/Konfigurat għal blinking_led_pr_alpha.sof file.
- Ippermetti l-Programm/Konfigura għal blinking_led_pr_bravo.pr_parent_partition.pr_partition.rbf file u kklikkja Ibda. Fuq il-bord, osserva LED[0] u LED[1] ikomplu jteptep. Meta l-istrixxa tal-progress tilħaq 100%, LED[2] teptip bl-istess rata, u LED[3] teptip aktar bil-mod.
- Biex tipprogramma kemm ir-reġjun tal-PR ġenitur kif ukoll tat-tfal, ikklikkja bil-lemin fuq il-.rbf file fil-Programmatur u kklikkja Ibdel l-Ipprogrammar tal-PR File.
- Agħżel il-blinking_led_pr_delta.pr_parent_partition.rbf file.
- Ikklikkja Ibda. Fuq il-bord, osserva li l-LED[0] u l-LED[1] qed ikomplu jteptep. Meta l-istrixxa tal-progress tilħaq 100%, kemm l-LED[2] kif ukoll l-LED[3] teptip aktar bil-mod.
- Irrepeti l-passi ta' hawn fuq biex terġa' tipprogramma b'mod dinamiku biss ir-reġjun PR tat-tfal, jew iż-żewġ reġjuni PR parent u tat-tfal simultanjament.
Figura 10. Ipprogrammar tal-Bord tal-Iżvilupp tas-SoC Intel Arria 10
Il-modifika ta' Persona Eżistenti
- Tista' tibdel persuna eżistenti, anke wara li tikkumpila bis-sħiħ ir-reviżjoni bażi.
- Per example, biex tikkawża li l-persona blinking_led_child_slow teptip saħansitra aktar bil-mod:
- Fil-blinking_led_child_slow.sv file, immodifika l-parametru COUNTER_TAP minn 27 għal 28.
- Biex terġa' tisintetizza u timplimenta mill-ġdid din il-persona, trid tikkompila mill-ġdid ir-reviżjonijiet kollha ta' sinteżi biss u r-reviżjonijiet ta' implimentazzjoni affettwati mill-bidla. Immodifika l-iskrittura setup.tcl biex tinkludi l-linji li ġejjin:
Nota: Meta tiddefinixxi l-pr_parent_parition għar-reviżjoni blinking_led_pr_delta, timporta l-istampa finali ta' dik il-persona għall-implimentazzjoni. Bħala riżultat, l-implimentazzjoni tal-loġika tal-partizzjoni prinċipali tibqa' l-istess, filwaqt li timmodifika u timplimenta l-partizzjoni tifel korrispondenti.
Dan il-kmand jerġa' jissintetizza r-reviżjoni tas-sinteżi blinking_led_child_slow, u mbagħad imexxi l-kompilazzjoni tal-implimentazzjoni tal-PR billi tuża blinking_led_pr_bravo.
- Biex twettaq il-kumpilazzjoni tar-reviżjonijiet tas-sinteżi biss, mexxi l-kmand li ġej: Dan il-kmand ma jikkompilax mill-ġdid ir-reviżjoni bażi.
- Biex twettaq il-kumpilazzjoni tar-reviżjonijiet tal-implimentazzjoni, mexxi l-kmand li ġej:
- Dan il-kmand ma jerġax jikkompila r-reviżjoni bażi.
- Segwi l-passi fil-Pass 10: Programmazzjoni tal-Bord f’paġna 22 biex tipprogramma l-RBF li tirriżulta file fl-FPGA.
Nota: Biex tevita li tħaddem il-fluss kollu għal kull reviżjoni, iddefinixxi r-reviżjonijiet ta' sinteżi biss u r-reviżjonijiet ta' implimentazzjoni fl-iskript setup.tcl, u mexxi l-iskript.
Żieda ta' Persona Ġdida mad-Disinn
Wara li tikkumpila bis-sħiħ ir-reviżjonijiet tal-bażi tiegħek, xorta tista 'żżid personas ġodda u tiġbor individwalment dawn il-personaġġi.
Per example, biex tiddefinixxi persuna ġdida tat-tfal għal blinking_led_parent_slow, li titfi led_three:
- Ikkopja blinking_led_child_empty.sv għal blinking_led_chdild_off.sv.
- Fil-blinking_led_child_off.sv file, immodifika l-inkarigu, jassenja led_three_on = 1'b0; biex tassenja led_three_on = 1'b1;. Kun żgur li tibdel l-isem tal-modulu minn blinking_led_child_empty għal blinking_led_child_off.
- Oħloq reviżjoni ta' sinteżi ġdida, blinking_led_child_off, billi ssegwi l-passi f'Ħolqien ta' Reviżjonijiet ta' Sintesi Biss f'paġna 16.
Nota: Ir-reviżjoni blinking_led_child_off trid tuża l-blinking_led_child_off.sv file. - Oħloq reviżjoni ta' implimentazzjoni ġdida, blinking_led_pr_foxtrot, billi ssegwi l-passi f'Ħolqien ta' Reviżjonijiet ta' Implimentazzjoni f'paġna 15.
- Aġġorna l-a10_hier_partial_reconfig/setup.tcl file biex tiddefinixxi l-implimentazzjoni ġdida tal-PR:
- Ikkompila biss din is-sinteżi ġdida u r-reviżjoni tal-implimentazzjoni billi tħaddem il-kmand li ġej:
Għal informazzjoni kompleta dwar rikonfigurazzjoni parzjali ġerarkika għal apparati Intel Arria 10, irreferi għal Ħolqien ta’ Disinn ta’ Rikonfigurazzjoni Parzjali fil-Volum 1 tal-Manwal tal-Edizzjoni Intel Quartus Prime Pro.
Informazzjoni Relatata
- Ħolqien ta 'Disinn ta' Rikonfigurazzjoni Parzjali
- Taħriġ Online ta' Rikonfigurazzjoni Parzjali
Storja tar-Reviżjoni tad-Dokument
Tabella 5. Storja tar-Reviżjoni tad-Dokument
Verżjoni tad-Dokument | softwer Verżjoni | Bidliet |
2017.11.06 | 17.1.0 | • Aġġornata l- Rekwiżiti tad-Disinn ta' Referenza sezzjoni bil-verżjoni tas-software
• Aġġornata l- Disinn ta 'Referenza Flat mingħajr Partitioning PR figura b'bidliet fil-blokki tad-disinn • Aġġornata l- Disinn ta' Referenza Files tabella b'informazzjoni dwar il- Modulu Top_counter.sv • Aġġornata l- Rikonfigurazzjoni parzjali IP Core Integration figura b'bidliet fil-blokki tad-disinn • Aġġorna ċ-ċifri – Tieqa tal-Ħitan tad-Disinn u Loġika Lock Reġjuni Tieqa biex tirrifletti l-GUI l-ġdida • File bidliet fl-isem • Editjar tat-test |
2017.05.08 | 17.0.0 | Ir-rilaxx inizjali tad-dokument |
Dokumenti / Riżorsi
![]() |
intel AN 805 Rikonfigurazzjoni Parzjali Ġerarkika ta' Disinn fuq Bord ta' Żvilupp SoC Arria 10 [pdfGwida għall-Utent AN 805 Rikonfigurazzjoni Parzjali Ġerarkika ta' Disinn fuq Bord ta' Żvilupp SoC Arria 10, AN 805, Rikonfigurazzjoni Parzjali Ġerarkika ta' Disinn fuq Bord ta' Żvilupp SoC Arria 10, Rikonfigurazzjoni ta' Disinn fuq Bord ta' Żvilupp SoC Arria 10, Bord ta' Żvilupp SoC Arria 10, 10 SoC Bord għall-Iżvilupp |