intel-LOGO

intel AN 903 Përshpejtimi i mbylljes së kohës

intel-AN-903-Accelerating-Timing-Closure-PRODUCT

AN 903: Përshpejtimi i mbylljes së kohës në Intel® Quartus® Prime Pro Edition

Dendësia dhe kompleksiteti i modeleve moderne FPGA, që kombinojnë sistemet e integruara, IP dhe ndërfaqet me shpejtësi të lartë, paraqesin sfida në rritje për mbylljen e kohës. Ndryshimet e vona arkitekturore dhe sfidat e verifikimit mund të çojnë në përsëritje të projektimit që kërkojnë kohë. Ky dokument përmbledh tre hapa për të përshpejtuar mbylljen e kohës duke përdorur një metodologji të verifikuar dhe të përsëritshme në softuerin Intel® Quartus® Prime Pro Edition. Kjo metodologji përfshin analizën dhe optimizimin fillestar të RTL, si dhe teknika të automatizuara për të minimizuar kohën e përpilimit dhe për të reduktuar kompleksitetin e projektimit dhe përsëritjet e nevojshme për mbylljen e kohës.

Hapat e përshpejtimit të mbylljes së kohës

intel-AN-903-Accelerating-Timing-Closure-FIG-1

Hapat e përshpejtimit të mbylljes së kohës

Hapi i mbylljes së kohës Aktiviteti i mbylljes së kohës Informacion i detajuar
Hapi 1: Analizoni dhe optimizoni RTL •    Shkeljet e sakta të Asistentit të Dizajnit në faqen 4

•    Ulja e niveleve logjike në faqen 7

•    Zvogëloni rrjetat me ventilim të lartë në faqen 9

•    Intel Quartus Prime Pro Udhëzuesi i përdorimit të botimit: Dizajni Optimizimi

•    Intel Quartus Prime Pro Udhëzuesi i përdorimit të botimit: Dizajni Rekomandime

Hapi 2: Aplikoni Optimizimin e Përpiluesit •    Aplikoni mënyrat e optimizimit të përpiluesit dhe Strategjitë në faqen 13

•    Ulja e mbingarkesës për përdorim të lartë në faqen 16

•    Intel Quartus Prime Pro Udhëzuesi i përdorimit të botimit: Dizajni Përpilimi

•    Intel Quartus Prime Pro Udhëzuesi i përdorimit të botimit: Dizajni Optimizimi

Hapi 3: Ruani rezultate të kënaqshme •    Mbyllni orët, RAM-et dhe DSP-të në faqen 20

•    Ruajtja e rezultateve të ndarjes së dizajnit në faqen 21

•    Intel Quartus Prime Pro Udhëzuesi i përdorimit të botimit: Blloku- Dizajn i bazuar

•    AN-899: Reduktimi i përpilimit Koha me ruajtje të shpejtë

Hapi 1: Analizoni dhe Optimizoni Dizajnin RTL

Optimizimi i kodit burimor të dizajnit tuaj është zakonisht teknika e parë dhe më efektive për të përmirësuar cilësinë e rezultateve tuaja. Intel Quartus Prime Design Assistant ju ndihmon të korrigjoni shpejt shkeljet e rregullave bazë të dizajnit dhe rekomandon ndryshime RTL që thjeshtojnë optimizimin e dizajnit dhe mbylljen e kohës.

Problemet e mbylljes së kohës

  • Nivelet e tepërta logjike ndikojnë në rendin, kohëzgjatjen dhe cilësinë e rezultateve të përpunimit të Përshtatshëm.
  • Rrjetat e larta të ventilimit shkaktojnë mbingarkesë të burimeve dhe shtojnë tension shtesë në shtigjet e të dhënave, duke rritur në mënyrë të panevojshme kritikitetin e rrugës dhe duke komplikuar mbylljen e kohës. Ky tension është forca tërheqëse që tërheq shtegun (dhe të gjitha shtigjet që ndajnë atë sinjal të lartë të ventilimit) drejt burimit të lartë të ventilimit.

Zgjidhjet e mbylljes së kohës

  • Korrigjo shkeljet e "Asistentit të Dizajnit" në faqen 4—për të identifikuar dhe korrigjuar shpejt shkeljet e rregullave bazë të dizajnit që lidhen me dizajnin tuaj.
  • Ulja e niveleve logjike në faqen 7—për të siguruar që të gjithë elementët e dizajnit të mund të marrin të njëjtat optimizime të Fitter-it dhe për të reduktuar kohën e përpilimit.
  • Reduktoni rrjetat me ventilim të lartë në faqen 9—për të reduktuar mbingarkesën e burimeve dhe për të thjeshtuar mbylljen e kohës.

Informacione të Përafërta

  • "Kontrollimi i rregullave të projektimit me Asistentin e Dizajnit", Udhëzuesi i Përdoruesit Intel Quartus Prime Pro Edition: Rekomandimet e dizajnit
  • "Optimize kodin burimor", Udhëzues përdoruesi i Intel Quartus Prime Pro Edition: Optimizimi i dizajnit
  • Udhëzues përdoruesi "Dublicate Registers for Fan-Out Control", Intel Quartus Prime Pro Edition: Optimization Design

Shkeljet e sakta të Asistentit të Dizajnit

Kryerja e analizave fillestare të projektimit për të eliminuar çështjet e njohura të mbylljes së kohës rrit ndjeshëm produktivitetin. Pasi të keni ekzekutuar një përmbledhje fillestare me cilësimet e paracaktuara, mund të riview Asistenti i Dizajnit raporton për analiza fillestare. Kur aktivizohet, "Asistenti i dizajnit" raporton automatikisht çdo shkelje ndaj një grupi standard të udhëzimeve të dizajnit të rekomanduara nga Intel FPGA. Ju mund të ekzekutoni "Asistentin e dizajnit" në modalitetin e rrjedhës së përpilimit, duke ju lejuar view shkeljet relevante për përpilimin stages ju vraponi. Përndryshe, "Asistenti i dizajnit" është i disponueshëm në modalitetin e analizës në "Analizuesin e kohës" dhe "Planifikuesin e çipave".

  • Modaliteti i rrjedhës së përpilimit- funksionon automatikisht gjatë një ose më shumë stages e përpilimit. Në këtë modalitet, "Asistenti i dizajnit" përdor të dhënat hyrëse (kalimtare) gjatë përpilimit.
  • Mënyra e analizës- ekzekutoni "Asistentin e dizajnit" nga "Time Analyzer" dhe "Chip Planner" për të analizuar shkeljet e dizajnit në një përmbledhje specifiketage, përpara se të ecni përpara në rrjedhën e përpilimit. Në modalitetin e analizës, "Asistenti i dizajnit" përdor të dhënat e fotografive statike të përpilimit.

Asistenti i dizajnit përcakton çdo shkelje të rregullit me një nga nivelet e mëposhtme të ashpërsisë. Mund të specifikoni se cilat rregulla dëshironi të kontrollojë "Asistenti i dizajnit" në dizajnin tuaj dhe të personalizoni nivelet e ashpërsisë, duke eliminuar kështu kontrollet e rregullave që nuk janë të rëndësishme për dizajnin tuaj.

Nivelet e ashpërsisë së rregullave të asistentit të projektimit

Kategoritë Përshkrimi Ngjyra e nivelit të ashpërsisë
Kritike Adresoni problemin për dorëzimin. E kuqe
Lartë Shkakton potencialisht dështim funksional. Mund të tregojë të dhëna të munguara ose të pasakta të projektimit. portokalli
E mesme Ndikon potencialisht në cilësinë e rezultateve për fMAX ose shfrytëzimin e burimeve. Kafe
E ulët Rregulli pasqyron praktikat më të mira për udhëzimet e kodimit RTL. Blu

Konfigurimi i Asistentit të Dizajnit
Ju mund ta personalizoni plotësisht Asistentin e Dizajnit për karakteristikat tuaja individuale të dizajnit dhe kërkesat e raportimit. Klikoni Detyrat ➤ Cilësimet ➤ Cilësimet e Rregullave të Asistentit të Dizajnimit për të specifikuar opsionet që kontrollojnë se cilat rregulla dhe parametra zbatohen për s të ndryshmetages e përpilimit të projektimit për kontrollin e rregullave të projektimit.

Cilësimet e rregullave të Asistentit të Dizajnitintel-AN-903-Accelerating-Timing-Closure-FIG-2

Asistent i dizajnit në drejtimin
Kur aktivizohet, "Asistenti i dizajnit" funksionon automatikisht gjatë përpilimit dhe raporton shkeljet e rregullave të projektimit të aktivizuara në Raportin e Përpilimit. Përndryshe, ju mund të ekzekutoni "Asistentin e Dizajnit" në "Modalitetin e Analizës" në një fotografi të veçantë përpilimi për të fokusuar analizën vetëm në atëtage. Për të aktivizuar kontrollin e automatizuar të Asistentit të Dizajnit gjatë përpilimit:

  • Aktivizo Aktivizo ekzekutimin e Asistentit të Dizajnit gjatë përpilimit në Cilësimet e Rregullave të Asistentit të Dizajnit. Për të ekzekutuar "Asistentin e dizajnit" në modalitetin e analizës për të vërtetuar një fotografi specifike kundrejt çdo rregulli të projektimit që zbatohet për fotografinë:
  • Kliko Raporto DRC në panelin "Time Analyzer" ose "Cip Planner Tasks".

Viewing dhe korrigjimi i rezultateve të asistentit të projektimit
Raportet e Asistentit të Dizajnit mundësoi shkelje të rregullave të projektimit në stages të Raportit përpilues.

Rezultatet e Asistentit të Dizajnimit në Sintezë, Planifikim, Vendim dhe Përfundim të Raporteveintel-AN-903-Accelerating-Timing-Closure-FIG-3

te view rezultatet për çdo rregull, klikoni rregullin në listën e Rregullave. Shfaqet një përshkrim i rregullit dhe rekomandimet e projektimit për korrigjim.

Rekomandim për shkelje të rregullave të Asistentit të Dizajnit

intel-AN-903-Accelerating-Timing-Closure-FIG-4

Ndryshoni RTL-në tuaj për të korrigjuar shkeljet e rregullave të projektimit.

Ulja e niveleve logjike

Nivelet e tepërta logjike mund të ndikojnë në cilësinë e rezultateve të montuesit, sepse rruga kritike e projektimit ndikon në rendin dhe kohëzgjatjen e përpunimit të montuesit. Fitter vendos dhe drejton dizajnin bazuar në ngadalësimin e kohës. Fitter vendos në fillim shtigje më të gjata me më pak vonesë. Përshtatësi në përgjithësi i jep përparësi shtigjeve të nivelit më të lartë logjik mbi shtigjet e nivelit logjik më të ulët. Në mënyrë tipike, pas montuesit stage është e plotë, shtigjet kritike të mbetura nuk janë shtigjet e nivelit më të lartë logjik. Fitter jep vendosjen e preferuar, drejtimin dhe ri-kohën në logjikën e nivelit më të lartë. Reduktimi i nivelit logjik ndihmon për të siguruar që të gjithë elementët e dizajnit të kenë të njëjtin prioritet Fitter. Ekzekutoni raportet ➤ Raportet e personalizuara ➤ Raportoni kohën në analizuesin e kohës për të gjeneruar raporte që tregojnë nivelet e logjikës në rrugë. Nëse shtegu dështon në kohën e duhur dhe numri i niveleve logjike është i lartë, merrni parasysh shtimin e tubacioneve në atë pjesë të dizajnit për të përmirësuar performancën.

Raporti i Thellësisë Logjike në Rrugën

intel-AN-903-Accelerating-Timing-Closure-FIG-5

Thellësia e nivelit logjik të raportimit
Pas Planit të Përpiluesit stage, mund të ekzekutoni report_logic_depth në tastierën Tcl të Analizës së Kohës view numri i niveleve logjike brenda një domeni të orës. report_logic_depth tregon shpërndarjen e thellësisë logjike midis shtigjeve kritike, duke ju lejuar të identifikoni fushat ku mund të reduktoni nivelet logjike në RTL tuaj.

raporti_logjika_thellësia -emri_panelit -nga [get_clocks ] \ -te [merr_clocks ]

report_logic_depth Outputintel-AN-903-Accelerating-Timing-Closure-FIG-6

Për të marrë të dhëna për optimizimin e RTL, ekzekutoni report_logic_depth pas Planit të Përpiluesittage, përpara se të ekzekutoni s-të e mbetura të montimittages. Përndryshe, raportet post-Fitter përfshijnë gjithashtu rezultate nga optimizimi fizik (rindërtimi dhe risinteza).

Raportimi i shtigjeve të fqinjëve
Pas ekzekutimit të Fitter (Finalize) stage, ju mund të ekzekutoni report_neighbor_paths për të ndihmuar në përcaktimin e shkakut rrënjësor të shtegut kritik (për shembullample, niveli i lartë logjik, kufizimi i ri-kohës, vendosja nën-optimale, kryqëzimi i kolonës I/O, fiksimi i mbajtjes ose të tjera): raporti_rrugët_neighbor -to_clock -nshtigje -emri_panelit

report_neighbor_paths raporton shtigjet më kritike për kohën në dizajn, duke përfshirë ngadalësimin e lidhur, informacionin shtesë përmbledhës të shtigjeve dhe kutitë e kufirit të shtigjeve.

raporti_shtegjet_fqinjët Outputintel-AN-903-Accelerating-Timing-Closure-FIG-7

Report_neighbor_paths tregon rrugën më kritike për kohën përpara dhe shtegun pas çdo shteg kritik. Ricaktimi i kohës ose balancimi logjik i shtegut mund të thjeshtojë mbylljen e kohës nëse ka vonesë negative në Shtegun, por ngadalësim pozitiv në Rrugën Para ose Shtegun pas.

Për të aktivizuar ri-kohën, sigurohuni që opsionet e mëposhtme janë të aktivizuara:

  • Për regjistrat—aktivizo Detyrat ➤ Cilësimet ➤ Cilësimet e përpiluesit ➤ Optimizimin e Regjistrimit ➤ Lejo Rikthimin e Regjistrimit
  • Për pikat përfundimtare të RAM-it—aktivizo Detyrat ➤ Cilësimet ➤ Cilësimet e përpiluesit ➤ Cilësimet e Fitter (të avancuara) ➤ Lejo rikthimin e RAM-it
  • Për pikat përfundimtare të DSP-aktivizo detyrat ➤ Cilësimet ➤ Cilësimet e përpiluesit ➤ Cilësimet e montimit (të avancuara) ➤ Lejo ri-kohën e DSP

SHËNIM

Nëse kërkohet balancim i mëtejshëm logjik, duhet të modifikoni manualisht RTL-në tuaj për të lëvizur logjikën nga Rruga kritike në Rrugën Para ose Pas.
Nëse dalja e një regjistri është e lidhur me hyrjen e tij, një ose të dyja shtigjet fqinje mund të jenë identike me shtegun aktual. Kur kërkoni për shtigjet fqinje me vonesën më të keqe, merren parasysh të gjitha kushtet e funksionimit, jo vetëm kushtet e funksionimit të vetë shtegut kryesor.

Vizualizimi i niveleve logjike në hartën e teknologjisë Viewer
Harta e Teknologjisë Viewer gjithashtu ofron paraqitje skematike, të hartësuar nga teknologjia, të listës së rrjetit të dizajnit dhe mund t'ju ndihmojë të shihni se cilat fusha në një dizajn mund të përfitojnë nga reduktimi i numrit të niveleve logjike. Ju gjithashtu mund të hulumtoni në detaje paraqitjen fizike të një shtegu në Chip Planner. Për të gjetur një shteg kohor në një nga viewers, kliko me të djathtën mbi një shteg në raportin e kohës, tregoni Locate Path dhe zgjidhni Locate in Technology Map Viewer.

Zvogëloni rrjetat me ventilim të lartë

Rrjetat e larta të ventilimit mund të shkaktojnë mbingarkesë të burimeve, duke e komplikuar kështu mbylljen e kohës. Në përgjithësi, përpiluesi menaxhon automatikisht rrjetat e larta të ventilimit që lidhen me orët. Përpiluesi promovon automatikisht rrjetet e njohura me ventilim të lartë në rrjetin global të orës. Përpiluesi bën një përpjekje më të lartë optimizimi gjatë Vendit dhe Rrugës stages, gjë që rezulton në dyfishim të regjistrit të dobishëm. Në rastet e mëposhtme të qosheve, mund të zvogëloni gjithashtu bllokimin duke bërë ndryshimet manuale të mëposhtme në RTL tuaj të dizajnit:

Këndi me rrjetë të lartë Fan-Out

Karakteristikë e dizajnit Optimizimi manual i RTL
Rrjeta të larta të ventilimit që arrijnë shumë hierarki ose destinacione të largëta fizikisht Specifikoni caktimin duplicate_hierarchy_depth në regjistrin e fundit në një tubacion për të dublikuar manualisht rrjetet e larta të ventilimit nëpër hierarki. Specifikoni caktimin duplicate_register për regjistrat dublikatë gjatë vendosjes.
Harton me sinjale kontrolli në blloqet e memories DSP ose M20K nga logjika e kombinuar Drejtoni sinjalin e kontrollit në memorien DSP ose M20K nga një regjistër.

Regjistro dyfishimin nëpër hierarki
Ju mund të specifikoni caktimin duplicate_hierarchy_depth në regjistrin e fundit në një tubacion për të udhëhequr krijimin e dyfishimit të regjistrave dhe fan-out. Shifrat e mëposhtme ilustrojnë ndikimin e detyrës së mëposhtme duplicate_hierarchy_depth:

set_instance_assignment -emri duplicate_hierarchy_depth -to \

Ku:

  • register_name—regjistri i fundit në një zinxhir që përhapet në hierarki të shumta.
  • niveli_numri-numri i regjistrave në zinxhir për t'u dublikuar.

Figura 9. Para Dyfishimit të Regjistrimit
Vendosni caktimin duplicate_hierarchy_depth për të zbatuar dyfishimin e regjistrave nëpër hierarki dhe krijoni një pemë regjistrash pas regjistrit të fundit në zinxhir. Ju specifikoni emrin e regjistrit dhe numrin e dublikatave të përfaqësuara nga M në shembullin e mëposhtëmample. Shigjetat e kuqe tregojnë vendndodhjet e mundshme të regjistrave të kopjuar.

  • set_instance_assignment –emri DUPLICATE_HIERARCHY_DEPTH –në regZ Mintel-AN-903-Accelerating-Timing-Closure-FIG-8

Regjistro dyfishim = 1
Përcaktimi i nivelit të vetëm vijues të dyfishimit të regjistrit (M=1) kopjon një regjistër (regZ) poshtë një niveli të hierarkisë së projektimit:

  • set_instance_assignment –emri DUPLICATE_HIERARCHY_DEPTH –në regZ 1intel-AN-903-Accelerating-Timing-Closure-FIG-9

Regjistro dyfishim = 3
Specifikimi i tre niveleve të dyfishimit të regjistrave (M=3) dublikon tre regjistra (regZ, regY, regX) poshtë tre, dy dhe një niveli të hierarkisë, përkatësisht:

  • set_instance_assignment –emri DUPLICATE_HIERARCHY_DEPTH –në regZ 3intel-AN-903-Accelerating-Timing-Closure-FIG-10

Duke dublikuar dhe shtyrë regjistrat poshtë në hierarki, dizajni ruan të njëjtin numër ciklesh për të gjitha destinacionet, duke përshpejtuar shumë performancën në këto shtigje.

Regjistro dyfishimin gjatë vendosjes
Figura 12 në faqen 11 tregon një regjistër me ventilim të lartë në një zonë të përhapur gjerësisht të çipit. Duke e dublikuar këtë regjistër 50 herë, ju mund të zvogëloni distancën midis regjistrit dhe destinacioneve që përfundimisht rezultojnë në performancë më të shpejtë të orës. Caktimi i regjistrit_duplicate lejon përpiluesin të shfrytëzojë afërsinë fizike për të udhëhequr vendosjen e regjistrave të rinj që ushqejnë një nëngrup fan-out.

Figura 12. Regjistro dyfishimin gjatë vendosjesintel-AN-903-Accelerating-Timing-Closure-FIG-11

Shënim: Për të transmetuar një sinjal në të gjithë çipin, përdorni një multistage tubacionit. Aplikoni caktimin duplicate_register për secilin prej regjistrave në tubacion. Kjo teknikë krijon një strukturë peme që transmeton sinjalin nëpër çip.

Viewing Rezultatet e dyfishimit
Pas sintezës së dizajnit, view dyfishimi rezulton në raportin e Përmbledhjes së Dyfishimit të Pemës Hierarkike në dosjen Sintezë të Raportit të Përpilimit. Raporti jep sa vijon:

  • Informacion mbi regjistrat që kanë caktimin duplicate_hierarchy_depth.
  • Arsyeja për gjatësinë e zinxhirit që mund ta përdorni si pikënisje për përmirësime të mëtejshme me detyrën.
  • Informacion në lidhje me regjistrat individualë në zinxhir që mund të përdorni për të kuptuar më mirë strukturën e dublikatave të zbatuara.

Raporti Fitter përfshin gjithashtu një seksion mbi regjistrat që kanë cilësimin duplicate_register.

Aplikoni teknikat e optimizimit të përpiluesit

Modele që përdorin një përqindje shumë të lartëtage nga burimet e pajisjes FPGA mund të shkaktojë bllokim të burimeve, duke rezultuar në fMAX më të ulët dhe mbyllje më komplekse të kohës. Cilësimet e modalitetit të optimizimit të përpiluesit ju lejojnë të specifikoni fokusin e përpjekjeve të përpiluesit gjatë sintezës. Për shembullample, ju optimizoni sintezën për Zonën, ose Drejtueshmërinë kur adresoni mbingarkesat e burimeve. Ju mund të eksperimentoni me kombinime të këtyre cilësimeve të modalitetit të optimizimit në Intel Quartus Prime Design Space Explorer II. Këto cilësime dhe teknika të tjera manuale mund t'ju ndihmojnë të reduktoni mbingarkesën në dizajne shumë të përdorura.

Problemi i mbylljes së kohës

  • Modelet me përdorim shumë të lartë të burimeve të pajisjes ndërlikojnë mbylljen e kohës.

Zgjidhjet e mbylljes së kohës

  • Aplikoni mënyrat dhe strategjitë e optimizimit të përpiluesit në faqen 13—përcaktoni qëllimin primar të modalitetit të optimizimit për sintezën e dizajnit.
  • Eksperimentoni me opsionet e zonës dhe të gjurmueshmërisë në faqen 16—aplikoni koleksione shtesë cilësimesh për të reduktuar mbingarkesën dhe për të përmbushur objektivat e zonës dhe kalueshmërisë.
  • Merrni parasysh Sintezën Fraktal për dizajne me intensitet aritmetik në faqen 16—Për dizajne me performancë të lartë, me intensitet aritmetik, sinteza fraktale redukton përdorimin e burimeve të pajisjes nëpërmjet rregullimit të shumëzuesit, ri-kohësimit dhe paketimit të vazhdueshëm aritmetik.

Informacione të Përafërta

  • Kapitulli "Mbyllja dhe optimizimi i kohës", Udhëzuesi i përdoruesit Intel Quartus Prime Pro Edition: Optimizimi i dizajnit
  • Udhëzuesi i përdoruesit Intel Quartus Prime Pro Edition: Përpilimi i Dizajnit

Aplikoni mënyrat dhe strategjitë e optimizimit të përpiluesit

Përdorni informacionin e mëposhtëm për të aplikuar mënyrat e optimizimit të përpiluesit dhe strategjitë e përpilimit të Design Space Explorer II (DSE II).

Eksperimentoni me cilësimet e modalitetit të optimizimit të përpiluesit
Ndiqni këto hapa për të eksperimentuar me cilësimet e modalitetit të optimizimit të përpiluesit:

  1. Krijoni ose hapni një projekt Intel Quartus Prime.
  2. Për të specifikuar strategjinë e optimizimit të nivelit të lartë të përpiluesit, klikoni Detyrat ➤ Cilësimet ➤ Cilësimet e përpiluesit. Eksperimentoni me cilindo nga cilësimet e mëposhtme të modalitetit, siç e përshkruan Tabela 4 në faqen 14.
  3. Për të përpiluar dizajnin me këto cilësime, klikoni Start Compilation në Panelin e Përpilimit.
  4. View rezultati i përpilimit në Raportin e Përpilimit.
  5. Kliko Veglat ➤ Analizuesi i kohës për të view rezultatet e cilësimeve të optimizimit mbi performancën.

Cilësimet e modalitetit të optimizimit të përpiluesit

intel-AN-903-Accelerating-Timing-Closure-FIG-22

Mënyrat e optimizimit (faqja e cilësimeve të përpiluesit)

Mënyra e optimizimit Përshkrimi
E ekuilibruar (rrjedhje normale) Përpiluesi optimizon sintezën për zbatimin e balancuar që respekton kufizimet e kohës.
Përpjekje me performancë të lartë Përpiluesi rrit përpjekjet për optimizimin e kohës gjatë vendosjes dhe rrugëtimit, dhe mundëson optimizimet e sintezës fizike të lidhura me kohën (për cilësimet e optimizimit të regjistrit). Çdo optimizim shtesë mund të rrisë kohën e përpilimit.
Performancë e lartë me përpjekje maksimale për vendosje Aktivizon të njëjtat optimizime të përpiluesit si Përpjekje me performancë të lartë, me përpjekje shtesë për optimizimin e vendosjes.
Performanca Superiore Aktivizon të njëjtat optimizime të përpiluesit si Përpjekje me performancë të lartë, dhe shton më shumë optimizime gjatë Analizës dhe Sintezës për të maksimizuar performancën e dizajnit me një rritje të mundshme në zonën logjike. Nëse përdorimi i dizajnit është tashmë shumë i lartë, ky opsion mund të çojë në vështirësi në montim, gjë që gjithashtu mund të ndikojë negativisht në cilësinë e përgjithshme të optimizimit.
Performancë superiore me përpjekje maksimale për vendosje Aktivizon të njëjtat optimizime të përpiluesit si Performanca Superiore, me përpjekje shtesë për optimizimin e vendosjes.
Zonë agresive Përpiluesi bën përpjekje agresive për të reduktuar zonën e pajisjes që kërkohet për të zbatuar dizajnin në dëm të mundshëm të performancës së dizajnit.
Përpjekje e lartë e shtrirjes së vendosjes Përpiluesi bën përpjekje të mëdha për të drejtuar dizajnin në kurriz të mundshëm të zonës së projektimit, performancës dhe kohës së përpilimit. Përpiluesi shpenzon kohë shtesë duke reduktuar përdorimin e rrugëzimit, gjë që mund të përmirësojë rutueshmërinë dhe gjithashtu kursen energji dinamike.
Përpjekje e lartë e kalimit të paketimit Përpiluesi bën përpjekje të mëdha për të drejtuar dizajnin në kurriz të mundshëm të zonës së projektimit, performancës dhe kohës së përpilimit. Përpiluesi shpenzon kohë shtesë për paketimin e regjistrave, gjë që mund të përmirësojë rutueshmërinë dhe gjithashtu kursen energji dinamike.
Optimizo Netlist-in për Routability Përpiluesi zbaton modifikime të listës së rrjetit për të rritur rutueshmërinë në kurriz të mundshëm të performancës.
vazhdoi…
Mënyra e optimizimit Përshkrimi
Përpjekje me fuqi të lartë Përpiluesi bën përpjekje të mëdha për të optimizuar sintezën për fuqi të ulët. Përpjekje me fuqi të lartë rrit kohën e funksionimit të sintezës.
Fuqia Agresive Bën përpjekje agresive për të optimizuar sintezën për fuqi të ulët. Përpiluesi redukton më tej përdorimin e rrugëzimit të sinjaleve me shpejtësitë më të larta të specifikuara ose të vlerësuara të ndërrimit, duke kursyer fuqi dinamike shtesë, por duke ndikuar potencialisht në performancën.
Koha e përpilimit agresiv Redukton kohën e përpilimit të kërkuar për të zbatuar dizajnin me përpjekje të reduktuara dhe më pak optimizime të performancës. Ky opsion gjithashtu çaktivizon disa funksione të detajuara të raportimit.

Shënim: Duke u ndezur Koha e përpilimit agresiv mundëson Cilësimet e Intel Quartus Prime File Cilësimet (.qsf) të cilat nuk mund të anashkalohen nga cilësimet e tjera .qsf.

Strategjitë e Kompilimit të Dizajnimit të Space Explorer II
DSE II ju lejon të gjeni cilësimet optimale të projektit për qëllimet e optimizimit të burimeve, performancës ose fuqisë. DSE II ju lejon të përpiloni në mënyrë të përsëritur një dizajn duke përdorur kombinime të ndryshme të paracaktuara të cilësimeve dhe kufizimeve për të arritur një qëllim specifik. DSE II më pas raporton kombinimin më të mirë të cilësimeve për të përmbushur qëllimet tuaja. DSE II gjithashtu mund të marrë advantage të aftësive paralelizuese për të përpiluar farat në kompjuterë të shumtë. Cilësimet e Strategjisë së Përpilimit të DSE II i bëjnë jehonë cilësimeve të Modalitetit të Optimizimit në Tabelën 4 në faqen 14

Design Space Explorer IIintel-AN-903-Accelerating-Timing-Closure-FIG-12

Ndiqni këto hapa për të specifikuar Strategjinë e Përpilimit për DSE II:

  1. Për të nisur DSE II (dhe për të mbyllur softuerin Intel Quartus Prime), klikoni Tools ➤ Launch Design Space Explorer II. DSE II hapet pas mbylljes së softuerit Intel Quartus Prime.
  2. Në shiritin e veglave DSE II, klikoni ikonën Exploration.
  3. Zgjeroni pikat e eksplorimit.
  4. Zgjidhni eksplorimin e dizajnit. Aktivizo ndonjë nga strategjitë e Përpilimit për të kryer eksplorime të projektimit që synojnë ato strategji.

Ulja e mbingarkesës për përdorim të lartë

Modelet që përdorin mbi 80% të burimeve të pajisjes zakonisht paraqesin vështirësinë më të madhe në kohën e mbylljes. Ju mund të aplikoni teknikat e mëposhtme manuale dhe të automatizuara për të reduktuar më tej bllokimin dhe për të thjeshtuar mbylljen e kohës.

  • Eksperimentoni me opsionet e zonës dhe të gjurmueshmërisë në faqen 16
  • Merrni parasysh sintezën fraktale për dizajne intensive aritmetike në faqen 16

Eksperimentoni me opsionet e zonës dhe të rrugëzimit

Kur përdorimi i pajisjes shkakton mbingarkesë të rrugës, mund të eksperimentoni me cilësimet e optimizimit të zonës dhe rrugëzimit për të reduktuar përdorimin e burimeve dhe mbingarkesën për dizajnin tuaj. Klikoni Detyrat ➤ Cilësimet ➤ Cilësimet e përpiluesit ➤ Modaliteti i Optimizimit për të hyrë në këto cilësime:

Zona dhe opsionet e gjurmueshmërisë

intel-AN-903-Accelerating-Timing-Closure-FIG-13

Merrni parasysh sintezën fraktale për dizajne intensive aritmetike

Për dizajne me performancë të lartë dhe intensive aritmetike, mund të aktivizoni optimizimet automatike të sintezës fraktal për të përmirësuar përdorimin e burimeve të pajisjes. Optimizimet e sintezës fraktale përfshijnë rregullimin e shumëzuesit dhe ri-kohën, si dhe paketimin e vazhdueshëm aritmetik. Optimizimet synojnë dizajne me një numër të madh operacionesh aritmetike me saktësi të ulët (të tilla si shtimet dhe shumëzimet). Mund të aktivizoni sintezën fraktal në nivel global ose vetëm për shumëzues specifikë. Në kushte ideale, optimizimi i sintezës fraktal mund të arrijë reduktimin e sipërfaqes 20-45%.

Rregullimi i shumëzuesit dhe kthimi i kohës
Rregullimi i shumëzuesit dhe ri-koha kryen konkluzionet e zbatimeve të shumëzuesit të butë shumë të optimizuar. Përpiluesi mund të aplikojë ri-kohën e prapambetur në dy ose më shumë tubacionetages nëse kërkohet. Kur aktivizoni sintezën fraktal, përpiluesi zbaton rregullimin e shumëzuesit dhe ri-kohën për shumëzuesit e nënshkruar dhe të panënshkruar.

Figura 16. Kohëzgjatja e shumëzuesitintel-AN-903-Accelerating-Timing-Closure-FIG-14

SHËNIM

  • Rregullimi i shumëzuesit përdor vetëm burime logjike dhe nuk përdor blloqe DSP.
  • Rregullimi i shumëzuesit dhe kthimi i kohës zbatohen si për shumëzuesit e nënshkruar ashtu edhe për ato të panënshkruara në modulet ku është caktuar caktimi FRACTAL_SYNTHESIS QSF.

Paketim aritmetik i vazhdueshëm
Paketimi i vazhdueshëm aritmetik risintetizon portat aritmetike në blloqe logjike me madhësi optimale për t'u përshtatur në LAB të Intel FPGA. Ky optimizim lejon përdorimin deri në 100% të burimeve LAB për blloqet aritmetike. Kur aktivizoni sintezën fraktal, përpiluesi e zbaton këtë optimizim për të gjithë zinxhirët e transportit dhe portat logjike me dy hyrje. Ky optimizim mund të paketojë pemë shtuese, shumëzues dhe çdo logjikë tjetër të lidhur me aritmetikën.

Paketim aritmetik i vazhdueshëm

intel-AN-903-Accelerating-Timing-Closure-FIG-15

SHËNIM

Vini re se paketimi i vazhdueshëm aritmetik funksionon në mënyrë të pavarur nga rregullimi i shumëzuesit. Pra, nëse jeni duke përdorur një shumëzues që nuk është i rregulluar (si p.sh. shkrimi i shumëzuesit tuaj), atëherë paketimi i vazhdueshëm aritmetik mund të vazhdojë të funksionojë. Optimizimi i sintezës fraktale është më i përshtatshmi për dizajne me përshpejtues të mësimit të thellë ose funksione të tjera me performancë të lartë, me intensitet aritmetik, që tejkalojnë të gjitha burimet e DSP. Aktivizimi i sintezës fraktal në të gjithë projektin mund të shkaktojë fryrje të panevojshme në modulet që nuk janë të përshtatshme për optimizime fraktale.

Aktivizimi ose çaktivizimi i sintezës fraktale

Për pajisjet Intel Stratix® 10 dhe Intel Agilex™, optimizimi i sintezës fraktal funksionon automatikisht për shumëzues të vegjël (çdo deklaratë A*B në Verilog HDL ose VHDL ku gjerësia bit e operandëve është 7 ose më pak). Ju gjithashtu mund të çaktivizoni sintezën automatike fraktal për shumëzues të vegjël për këto pajisje duke përdorur njërën nga metodat e mëposhtme:

  • Në RTL, vendosni stilin e shumëfishtë DSP, siç përshkruan "Atributi i sintezës së Multstyle Verilog HDL". Për shembullample: (* multistyle = “dsp” *) moduli foo(…); moduli foo(..) /* synthesis multstyle = “dsp” */;
  • Në .qsf file, shtoni si një detyrë si më poshtë: set_instance_assignment -emri DSP_BLOCK_BALANCING_IMPLEMENTATION \DSP_BLOCKS -to r

Përveç kësaj, për pajisjet Intel Stratix 10, Intel Agilex, Intel Arria® 10 dhe Intel Cyclone® 10 GX, mund të aktivizoni sintezën fractal globalisht ose për shumëzues specifikë me opsionin Fractal Synthesis GUI ose caktimin përkatës FRACTAL_SYNTHESIS .qsf:

  • Në RTL, përdorni altera_attribute si më poshtë: (* altera_attribute = "-emri FRACTAL_SYNTHESIS ON" *)
  • Në .qsf file, shtoni si një detyrë si më poshtë: set_global_assignment -emri FRACTAL_SYNTHESIS ON -entitet

Në ndërfaqen e përdoruesit, ndiqni këto hapa:

  1. Klikoni Detyrat ➤ Redaktori i Detyrave.
  2. Zgjidhni Sintezën Fraktal për Emrin e Detyrës, On për Vlerën, emrin e entitetit intensiv aritmetik për Entitetin dhe një emër shembulli në kolonën Për. Ju mund të vendosni një karakteristikë (*) për To për të caktuar të gjitha rastet e entitetit.

Figura 18. Detyra e sintezës fraktale në redaktuesin e detyrave

intel-AN-903-Accelerating-Timing-Closure-FIG-16

Informacione të Përafërta

  • Atributi i sintezës së Multstyle Verilog HDL
    • Në Ndihmën Intel Quartus Prime.

Ruani rezultate të kënaqshme

Ju mund të thjeshtoni mbylljen e kohës duke shënuar rezultate të kënaqshme të përpilimit për të bllokuar vendosjen e blloqeve të mëdha që lidhen me orët, RAM-et dhe DSP-të. Në mënyrë të ngjashme, teknika e ripërdorimit të bllokut të projektimit ju mundëson të ruani rezultate të kënaqshme përpilimi për periferinë specifike të FPGA ose blloqet e dizajnit logjik bazë (logjika që përfshin një shembull hierarkik të dizajnit), dhe më pas t'i ripërdorni ato blloqe në përpilimet pasuese. Në ripërdorimin e bllokut të projektimit, ju caktoni shembullin hierarkik si një ndarje të projektimit dhe më pas ruani dhe eksportoni ndarjen pas përpilimit të suksesshëm. Ruajtja dhe ripërdorimi i rezultateve të kënaqshme ju lejon të përqendroni përpjekjet dhe kohën e Përpiluesit vetëm në pjesë të dizajnit që nuk kanë kohë të mbyllura.

Problemi i mbylljes së kohës

  • Nëse nuk është i kyçur, përpiluesi mund të zbatojë blloqet e projektimit, orët, RAM-et dhe DSP-të ndryshe nga përpilimi në përpilim në varësi të faktorëve të ndryshëm.

Zgjidhjet e mbylljes së kohës

  • Lock Down Clocks, RAMs dhe DSPs në faqen 20—shënoni mbrapsht rezultate të kënaqshme të kompilimit për të bllokuar vendosjen e blloqeve të mëdha që lidhen me orët, RAM-et dhe DSP-të.
  • Ruajtja e rezultateve të ndarjes së dizajnit në faqen 21—ruani ndarjet për blloqet që plotësojnë kohën dhe fokusoni optimizimin në blloqet e tjera të projektimit.

Informacione të Përafërta

  • Ndihma e kutisë së dialogut për detyrat prapa-Shënimi
  • AN-899: Reduktimi i kohës së përpilimit me ruajtje të shpejtë
  • Udhëzuesi i përdoruesit Intel Quartus Prime Pro Edition: Dizajni i bazuar në bllok

Mbyllni orët, RAM-et dhe DSP-të

Ju mund të thjeshtoni mbylljen e kohës duke shënuar rezultate të kënaqshme të përpilimit për të mbyllur vendosjen e blloqeve të mëdha që lidhen me orët, RAM-et dhe DSP-të. Bllokimi i vendosjes së blloqeve të mëdha mund të prodhojë fMAX më të lartë me më pak zhurmë. Bllokimi i blloqeve të mëdha si RAM-et dhe DSP-të mund të jetë efektiv sepse këto blloqe kanë lidhje më të rëndë se LAB-të e rregullt, duke e komplikuar lëvizjen gjatë vendosjes. Kur një farë prodhon rezultate të mira nga vendosja e përshtatshme RAM dhe DSP, ju mund ta kapni atë vendosje me shënime të pasme. Kompilimet e mëvonshme mund të përfitojnë më pas nga vendosja e cilësisë së lartë të RAM dhe DSP nga fara e mirë. Kjo teknikë nuk përfiton ndjeshëm dizajnet me shumë pak RAM ose DSP. Klikoni Assignments ➤ Back-Annotate Assignments për të kopjuar caktimet e burimeve të pajisjes nga përpilimi i fundit në .qsf për t'u përdorur në përpilimin e ardhshëm. Zgjidhni llojin e shënimeve të pasme në listën e llojit të shënimit prapa.

Kutia e dialogut për detyrat e shënimeve prapa

intel-AN-903-Accelerating-Timing-Closure-FIG-17

Përndryshe, mund të ekzekutoni shënimet e pasme me ekzekutuesin e mëposhtëm quartus_cdb. kuartus_cdb –back_anotate [–dsp] [–ram] [–ora]

SHËNIM

  • Ekzekutuesi mbështet variablat shtesë [–dsp], [–ram] dhe [–clock] që kutia e dialogut Back-Annotate Assignments nuk i mbështet ende.

Ruajtja e rezultateve të ndarjes së dizajnit

SHËNIM

  • Pas ndarjes së dizajnit, ju mund të ruani ndarjet për blloqet që plotësojnë kohën dhe të fokusoni optimizimin në blloqet e tjera të projektimit. Përveç kësaj, opsioni Fast Reserve thjeshton logjikën e një ndarjeje të ruajtur vetëm në logjikën e ndërfaqes gjatë përpilimit, duke reduktuar kështu kohën e përpilimit për ndarjen. Fast Preserve mbështet vetëm ripërdorimin e ndarjeve rrënjësore dhe dizajnet e rikonfigurimit të pjesshëm. Për dizajne me nën-module që janë sfiduese për mbylljen e kohës, mund të kryeni optimizimin dhe kompilimin e pavarur të ndarjes së modulit dhe më pas të eksportoni modulin e mbyllur me kohën për të ruajtur zbatimin në përpilimet pasuese.

Ruajtja e rezultateve të ndarjes së projektimit

intel-AN-903-Accelerating-Timing-Closure-FIG-18

Dizajni i bazuar në bllok kërkon ndarje të projektimit. Ndarja e projektimit ju lejon të ruani blloqe individuale logjike në dizajnin tuaj, por gjithashtu mund të sjellë humbje të mundshme të performancës për shkak të kryqëzimit të ndarjes dhe efekteve të planit të dyshemesë. Ju duhet t'i balanconi këta faktorë kur përdorni teknika të projektimit të bazuara në bllok. Hapat e mëposhtëm të nivelit të lartë përshkruajnë rrjedhën e ruajtjes së ndarjes për dizajnet e ripërdorimit të ndarjeve rrënjësore:

  1. Kliko Processing ➤ Start ➤ Start Analysis & Elaboration.
  2. Në Navigatorin e Projektit, kliko me të djathtën në shembullin e dizajnit të mbyllur me kohë, drejtohu te Dizajni i ndarjes dhe zgjidhni një lloj ndarjeje, siç e përshkruajnë Cilësimet e ndarjes së dizajnit në faqen 23.

Krijoni ndarje të projektimit

intel-AN-903-Accelerating-Timing-Closure-FIG-19

  1. Përcaktoni kufizimet e planifikimit të dyshemesë Logic Lock për ndarjen. Në dritaren e ndarjeve të projektimit, kliko me të djathtën mbi ndarjen dhe më pas kliko Logic Lock Region ➤ Create New Logic Lock Region. Sigurohuni që rajoni të jetë mjaft i madh për të përfshirë të gjithë logjikën në ndarje.
  2. Për të eksportuar rezultatet e ndarjes pas përpilimit, në dritaren e ndarjeve të projektimit, specifikoni ndarjen .qdb si Eksportin e Post Final File.

Pas eksportit përfundimtar File

intel-AN-903-Accelerating-Timing-Closure-FIG-20

  1. Për të përpiluar dizajnin dhe për të eksportuar ndarjen, klikoni Compile Design në Panelin e Përpilimit.
  2. Hapni projektin e nivelit të lartë në softuerin Intel Quartus Prime.
  3. Klikoni Assignments ➤ Settings ➤ Compiler Settings ➤ Incremental Compile. Aktivizoni opsionin Fast Reserve.

Opsioni i ruajtjes së shpejtë

intel-AN-903-Accelerating-Timing-Closure-FIG-21

  1. Klikoni OK.
  2. Në dritaren e ndarjeve të projektimit, specifikoni .qdb të eksportuar si bazën e të dhënave të ndarjes File për ndarjen në fjalë. Ky .qdb është tani burimi për këtë ndarje në projekt. Kur aktivizoni opsionin Fast Preserve, përpiluesi redukton logjikën e ndarjes së importuar vetëm në logjikën e ndërfaqes, duke reduktuar kështu kohën e përpilimit që kërkon ndarja.

Cilësimet e ndarjes së projektimit

Cilësimet e ndarjes së projektimit

Opsioni Përshkrimi
Emri i ndarjes Specifikon emrin e ndarjes. Çdo emër i ndarjes duhet të jetë unik dhe të përbëhet vetëm nga karaktere alfanumerike. Softueri Intel Quartus Prime krijon automatikisht një "root_partition" të nivelit të lartë (|) për çdo rishikim të projektit.
Rruga e hierarkisë Specifikon shtegun e hierarkisë së shembullit të entitetit që i caktoni ndarjes. Ju e specifikoni këtë vlerë në Krijo ndarje të re kuti dialogu. Rruga e hierarkisë së ndarjes rrënjë është |.
Lloji Klikoni dy herë për të specifikuar një nga llojet e mëposhtme të ndarjeve që kontrollojnë mënyrën se si përpiluesi përpunon dhe zbaton ndarjen:
vazhdoi…
Opsioni Përshkrimi
•    E paracaktuar—Identifikon një ndarje standarde. Përpiluesi përpunon ndarjen duke përdorur burimin e dizajnit të lidhur files.

•    E rikonfigurueshme—Identifikon një ndarje të rikonfigurueshme në një rrjedhë rikonfigurimi të pjesshëm. Specifikoni E rikonfigurueshme lloji për të ruajtur rezultatet e sintezës, duke lejuar rivendosjen e ndarjes në rrjedhën PR.

•    Bërthama e rezervuar—Identifikon një ndarje në një rrjedhë dizajni të bazuar në bllok që është e rezervuar për zhvillimin bazë nga një Konsumator që ripërdor periferinë e pajisjes.

Niveli i ruajtjes Specifikon një nga nivelet e mëposhtme të ruajtjes për ndarjen:

•    Nuk është caktuar—përcakton asnjë nivel ruajtjeje. Ndarja përpilohet nga burimi files.

•    të sintetizuara— ndarja përpilohet duke përdorur fotografinë e sintetizuar.

•    përfundimtar— ndarja përpilohet duke përdorur fotografinë përfundimtare.

Me Niveli i ruajtjes of të sintetizuara or përfundimtar, ndryshimet në kodin burimor nuk shfaqen në sintezë.

Bosh Përcakton një ndarje të zbrazët që përpiluesi e kalon. Ky cilësim është i papajtueshëm me Bërthama e rezervuar dhe Baza e të dhënave të ndarjes File cilësimet për të njëjtën ndarje. Të Niveli i ruajtjes duhet të jetë Nuk është caktuar. Një ndarje bosh nuk mund të ketë asnjë ndarje fëmijë.
Baza e të dhënave të ndarjes File Specifikon një bazë të dhënash të ndarjes File (.qdb) që përdor përpiluesi gjatë kompilimit të ndarjes. Ju eksportoni .qdb për stage të përpilimit që dëshironi të ripërdorni (i sintetizuar ose përfundimtar). Cakto .qdb në një ndarje për t'i ripërdorur ato rezultate në një kontekst tjetër.
Ri-lidhja e entitetit • Rrjedha PR—përcakton entitetin që zëvendëson personin e paracaktuar në çdo rishikim të zbatimit.

• Rrjedha e ripërdorimit të ndarjes rrënjësore —përcakton entitetin që zëvendëson logjikën bazë të rezervuar në projektin e konsumatorit.

Ngjyra Përcakton kodimin e ngjyrave të ndarjes në ekranet Chip Planner dhe Design Partition Planner.
Eksporti i Post Sintezës File Eksporton automatikisht rezultatet e kompilimit pas sintezës për ndarjen në .qdb që ju specifikoni, sa herë që ekzekutohet Analiza & Sinteza. Mund të eksportoni automatikisht çdo ndarje të projektimit që nuk ka një ndarje prind të ruajtur, duke përfshirë ndarjen root_.
Pas eksportit përfundimtar File Eksporton automatikisht rezultatet e përpilimit pas-final për ndarjen në .qdb që specifikoni, sa herë që s-ja përfundimtaretage nga vrapimet e montuesit. Mund të eksportoni automatikisht çdo ndarje të projektimit që nuk ka një ndarje prind të ruajtur, duke përfshirë ndarjen root_.

Historia e rishikimit të dokumentit AN 903

Ky dokument ka historinë e mëposhtme të rishikimit:

Versioni i dokumentit Versioni i Intel Quartus Prime Ndryshimet
2021.02.25 19.3 Zëvendësohet "tërheqja" me "tension" në Analizoni dhe Optimizoni Dizajn RTL temë.
2020.03.23 19.3 Gabim sintaksor i korrigjuar në kodin sample në temën "Bllokimi i orëve, RAM-ve dhe DSP-ve".
2019.12.03 19.3 • Publikimi i parë publik.

Dokumentet / Burimet

intel AN 903 Përshpejtimi i mbylljes së kohës [pdfUdhëzuesi i përdoruesit
AN 903 Përshpejtimi i mbylljes së kohës, AN 903, Përshpejtimi i mbylljes së kohës, mbyllja e kohës

Referencat

Lini një koment

Adresa juaj e emailit nuk do të publikohet. Fushat e kërkuara janë shënuar *