intel AN 903 Pagpadali sa Pagsira sa Timing

AN 903: Pagpadali sa Pagsira sa Timing sa Intel® Quartus® Prime Pro Edition
Ang densidad ug kakomplikado sa modernong mga disenyo sa FPGA, nga nagkombinar sa mga embedded system, IP, ug high-speed nga mga interface, nagpresentar ug nagkadaghang mga hagit alang sa pagsira sa timing. Ang ulahi nga mga pagbag-o sa arkitektura ug mga hagit sa pag-verify mahimong mosangput sa pag-usik sa oras nga mga pag-usab sa disenyo. Kini nga dokumento nag-summarize sa tulo ka mga lakang aron mapadali ang pagsira sa timing gamit ang gipamatud-an ug balik-balik nga pamaagi sa Intel® Quartus® Prime Pro Edition software. Kini nga metodolohiya naglakip sa inisyal nga pagtuki sa RTL ug pag-optimize, ingon man ang mga automated nga pamaagi aron mapamenos ang oras sa pag-compile ug makunhuran ang pagkakomplikado sa disenyo ug mga pag-usab nga gikinahanglan alang sa pagsira sa timing.
Mga Lakang sa Pagpadali sa Pagsira sa Tayming

Mga Lakang sa Pagpadali sa Pagsira sa Tayming
Lakang 1: Analisaha ug I-optimize ang Design RTL
Ang pag-optimize sa source code sa imong desinyo kasagaran mao ang una ug labing epektibo nga teknik sa pagpausbaw sa kalidad sa imong mga resulta. Ang Intel Quartus Prime Design Assistant nagtabang kanimo nga dali nga matul-id ang sukaranan nga mga paglapas sa lagda sa disenyo, ug girekomenda ang mga pagbag-o sa RTL nga nagpasimple sa pag-optimize sa disenyo ug pagsira sa oras.
Mga Problema sa Pagsira sa Tayming
- Ang sobra nga lebel sa lohika nag-impluwensya sa han-ay sa pagproseso sa Fitter, gidugayon, ug kalidad sa mga resulta.
- Ang taas nga fan-out nets hinungdan sa paghuot sa kahinguhaan ug makadugang sa dugang nga tensyon sa mga agianan sa datos, sa walay hinungdan nga pagdugang sa kritikal nga agianan, ug komplikado nga pagsira sa timing. Kini nga tensyon mao ang puwersa sa atraksyon nga nagbira sa agianan (ug ang tanan nga mga agianan nga nag-ambit sa taas nga signal sa fan-out) padulong sa taas nga gigikanan sa fan-out.
Mga Solusyon sa Pagsira sa Tayming
- Husto nga Mga Paglapas sa Katabang sa Disenyo sa panid 4—aron dali nga mailhan ug matul-id ang mga paglapas sa sukaranan nga lagda sa disenyo nga may kalabotan sa imong disenyo.
- Bawasan ang Logic Levels sa pahina 7—aron masiguro nga ang tanang elemento sa disenyo makadawat sa samang Fitter optimizations ug aron makunhuran ang mga oras sa pag-compile.
- Bawasan ang Taas nga Fan-Out Nets sa pahina 9—aron makunhuran ang kahuot sa kahinguhaan ug mapasayon ang pagsira sa tayming.
May Kalabutan nga Impormasyon
- "Pagsusi sa Lagda sa Disenyo uban ang Katabang sa Disenyo," Giya sa Gumagamit sa Intel Quartus Prime Pro Edition: Mga Rekomendasyon sa Disenyo
- "Pag-optimize sa Source Code," Giya sa Gumagamit sa Intel Quartus Prime Pro Edition: Pag-optimize sa Disenyo
- "Duplicate nga mga Register para sa Fan-Out Control," Intel Quartus Prime Pro Edition User Guide: Design Optimization
Husto nga Mga Paglapas sa Katabang sa Disenyo
Ang paghimo sa inisyal nga pag-analisar sa disenyo aron mawagtang ang nahibal-an nga mga isyu sa pagsira sa oras labi nga nagdugang sa produktibo. Human sa pagpadagan sa usa ka inisyal nga compilation uban sa default settings, mahimo nimo pag-usabview ang Design Assistant nagtaho alang sa inisyal nga pagtuki. Kung mahimo, ang Design Assistant awtomatik nga magreport sa bisan unsang mga paglapas batok sa usa ka standard set sa Intel FPGA-recommended design guidelines. Mahimo nimong ipadagan ang Design Assistant sa Compilation Flow mode, nga gitugotan ka view ang mga paglapas nga may kalabutan sa compilation stagikaw run. Sa laing bahin, ang Design Assistant anaa sa analysis mode sa Timing Analyzer ug Chip Planner.
- Mode sa Pag-agos sa Kompilasyon—awtomatikong modagan sa usa o daghang stages sa kompilasyon. Niini nga mode, ang Design Assistant naggamit sa in-flow (transient) nga datos sa panahon sa pag-compile.
- Mode sa Pagtuki—pagpadagan sa Design Assistant gikan sa Timing Analyzer ug Chip Planner aron analisahon ang mga paglapas sa disenyo sa usa ka piho nga compilation stage, sa dili pa mopadayon sa dagan sa compilation. Sa analysis mode, ang Design Assistant naggamit sa static compilation snapshot data.
Gitudlo sa Design Assistant ang matag paglapas sa lagda nga adunay usa sa mosunod nga lebel sa kagrabe. Mahimo nimong ipiho kung unsang mga lagda ang gusto nimo nga susihon sa Design Assistant ang imong disenyo, ug ipasibo ang lebel sa kagrabe, sa ingon mawagtang ang mga pagsusi sa lagda nga dili hinungdanon sa imong laraw.
Mga Level sa Severity sa Lagda sa Design Assistant
| Mga kategoriya | Deskripsyon | Kolor sa Antas sa Kagrabe |
| Kritikal | Tubaga ang isyu para sa hand-off. | Pula |
| Taas | Posible nga hinungdan sa pagkapakyas sa pag-andar. Mahimong magpakita sa nawala o sayup nga datos sa disenyo. | Kahel |
| Medium | Posibleng makaapekto sa kalidad sa mga resulta para sa fMAX o paggamit sa kahinguhaan. | Brown |
| Ubos | Ang lagda nagpakita sa labing maayo nga mga gawi alang sa RTL coding guidelines. | Asul |
Pag-set up sa Design Assistant
Mahimo nimong hingpit nga ipasibo ang Design Assistant alang sa imong indibidwal nga mga kinaiya sa disenyo ug mga kinahanglanon sa pagreport. I-klik ang Mga Assignment ➤ Settings ➤ Design Assistant Rule Settings aron ipiho ang mga opsyon nga nagkontrol kung unsang mga lagda ug mga parameter ang magamit sa lain-laing stages of design compilation para sa design rule checking.
Mga Setting sa Lagda sa Design Assistant
Nagdagan nga Design Assistant
Kung ma-enable, ang Design Assistant awtomatik nga modagan sa panahon sa pag-compile ug magreport sa mga paglapas sa lagda sa disenyo sa Compilation Report. Sa laing bahin, mahimo nimong ipadagan ang Design Assistant sa Analysis Mode sa usa ka piho nga compilation snapshot aron ipunting ang pagtuki sa kanatage. Aron mahimo ang automated nga Design Assistant nga pagsusi sa panahon sa pag-compile:
- I-on ang Enable Design Assistant execution atol sa compilation sa Design Assistant Rule Settings. Aron ipadagan ang Design Assistant sa analysis mode aron ma-validate ang usa ka piho nga snapshot batok sa bisan unsang mga lagda sa disenyo nga magamit sa snapshot:
- I-klik ang Report DRC sa Timing Analyzer o Chip Planner Tasks panel.
Viewing ug Pagtul-id sa mga Resulta sa Katabang sa Disenyo
Ang mga taho sa Design Assistant nakahimo sa mga paglapas sa lagda sa disenyo sa lain-laing mga stages sa Compilation Report.
Mga Resulta sa Design Assistant sa Synthesis, Plano, Place, ug Finalize Reports
Sa view ang mga resulta alang sa matag lagda, i-klik ang lagda sa listahan sa Mga lagda. Ang usa ka paghulagway sa lagda ug mga rekomendasyon sa disenyo alang sa pagtul-id makita.
Rekomendasyon sa Paglapas sa Lagda sa Design Assistant

Usba ang imong RTL aron matul-id ang mga paglapas sa lagda sa disenyo.
Bawasan ang Logic Levels
Ang sobra nga lebel sa lohika mahimong makaapekto sa kalidad sa mga resulta sa Fitter tungod kay ang disenyo nga kritikal nga agianan nag-impluwensya sa han-ay sa pagproseso sa Fitter ug gidugayon. Ang Fitter nagbutang ug nagruta sa disenyo base sa timing slack. Gibutang sa Fitter ang mas taas nga mga agianan nga adunay labing gamay nga pagkahinay una. Ang Fitter sa kasagaran nag-una sa mas taas nga lebel sa lohika nga mga agianan kay sa ubos nga lebel sa lohika nga mga agianan. Kasagaran, pagkahuman sa Fitter stage kompleto na, ang mga kritikal nga dalan nga nahabilin dili ang pinakataas nga lebel sa lohika nga mga agianan. Ang Fitter naghatag sa gipalabi nga pagbutang, pag-ruta, ug pagretiro sa mas taas nga lebel nga lohika. Ang pagkunhod sa lebel sa lohika makatabang aron masiguro nga ang tanan nga mga elemento sa disenyo makadawat sa parehas nga prayoridad sa Fitter. Run Reports ➤ Custom Reports ➤ Report Timing sa Timing Analyzer aron makamugna og mga report nga nagpakita sa lebel sa logic sa agianan. Kung ang agianan mapakyas sa timing ug ang gidaghanon sa mga lebel sa lohika taas, hunahunaa ang pagdugang sa pipelining sa kana nga bahin sa disenyo aron mapauswag ang pasundayag.
Logic Depth sa Path Report

Pagreport sa Logic Level Depth
Human sa Plano sa Compiler stage, mahimo nimong ipadagan ang report_logic_depth sa Timing Analyzer Tcl console sa view ang gidaghanon sa mga lebel sa lohika sulod sa usa ka domain sa orasan. report_logic_depth nagpakita sa pag-apod-apod sa lohika giladmon sa taliwala sa mga kritikal nga mga dalan, nga nagtugot kaninyo sa pag-ila sa mga dapit diin kamo makahimo sa pagpakunhod sa logic lebel sa imong RTL.
report_logic_depth -panel_name -gikan sa [get_clock ] \ -sa [pagkuha_mga orasan ]
report_logic_depth Output
Aron makakuha og datos alang sa pag-optimize sa RTL, pagdagan ang report_logic_depth pagkahuman sa Plano sa Compiler.tage, sa wala pa modagan ang nahabilin nga Fitter stages. Kung dili, ang mga post-Fitter nga mga taho naglakip usab sa mga resulta gikan sa pisikal nga pag-optimize (retiming ug resynthesis).
Pagreport sa mga Silingan nga Dalan
Human sa pagpadagan sa Fitter (Finalize) stage, mahimo nimong ipadagan ang report_neighbor_paths aron makatabang sa pagtino sa hinungdan sa kritikal nga agianan (alang sa example, taas nga lebel sa lohika, limitasyon sa pagretiro, sub-optimal nga pagbutang, pagtabok sa kolum sa I/O, pag-ayo-ayo, o uban pa): report_neighbor_paths -to_clock - mga agianan -panel_name
report_neighbor_paths nagtaho sa labing timing-kritikal nga mga agianan sa disenyo, lakip na ang kaubang slack, dugang nga impormasyon sa summary sa agianan, ug mga kahon nga nagbugkos sa dalan.
report_neghbor_paths Output
report_neighbor_paths nagpakita sa labing timing-kritikal nga Path Before ug Path After sa matag kritikal nga Path. Ang pag-retiro o pagbalanse sa lohika sa agianan makapasayon sa pagsira sa timing kung adunay negatibo nga pagkahinay sa Dalan, apan positibo nga pagkahinay sa Dalan sa Una o Pagsunod.
Aron mahimo ang retiming, siguroha nga ang mosunod nga mga opsyon gi-on:
- Para sa mga Rehistro—pagana sa Mga Assignment ➤ Mga Setting ➤ Compiler Settings ➤ Register Optimization ➤ Tugoti ang Pag-retiro sa Pagrehistro
- Para sa RAM Endpoints—pagana sa mga Assignment ➤ Settings ➤ Compiler Settings ➤ Fitter Settings (Advanced) ➤ Tugoti ang RAM Retiming
- Para sa DSP Endpoints—pagana sa mga Assignment ➤ Settings ➤ Compiler Settings ➤ Fitter Settings (Advanced) ➤ Tugoti ang DSP Retiming
NOTA
Kung gikinahanglan ang dugang nga pagbalanse sa lohika, kinahanglan nimo nga mano-mano nga usbon ang imong RTL aron mabalhin ang lohika gikan sa kritikal nga Path ngadto sa Path Before o Path After.
Kung ang output sa usa ka rehistro konektado sa input niini, ang usa o ang duha sa silingan nga mga agianan mahimong parehas sa karon nga agianan. Kung nangita alang sa silingan nga mga agianan nga adunay labing grabe nga pagkahinay, ang tanan nga mga kondisyon sa pag-opera gikonsiderar, dili lamang ang mga kondisyon sa pag-opera sa panguna nga agianan mismo.
Pagtan-aw sa Logic Levels sa Technology Map Viewer
Ang Mapa sa Teknolohiya Viewer usab naghatag og eskematiko, teknolohiya-mapa, mga representasyon sa disenyo nga netlist, ug makatabang kanimo nga makita kung unsang mga bahin sa usa ka disenyo ang makabenepisyo gikan sa pagkunhod sa gidaghanon sa mga lebel sa lohika. Mahimo usab nimo nga imbestigahan ang pisikal nga layout sa usa ka agianan sa detalye sa Chip Planner. Aron makapangita og timing path sa usa sa viewers, i-right-click ang usa ka dalan sa timing report, itudlo ang Locate Path, ug pilia ang Locate in Technology Map Viewer.
Bawasan ang Taas nga Fan-Out Nets
Ang taas nga fan-out nets mahimong hinungdan sa paghuot sa kahinguhaan, sa ingon makapakomplikado sa pagsira sa tayming. Sa kinatibuk-an, ang Compiler awtomatik nga nagdumala sa taas nga fan-out nets nga may kalabutan sa mga orasan. Ang Compiler awtomatik nga nagpasiugda sa giila nga taas nga fan-out nets ngadto sa global nga network sa orasan. Ang Compiler naghimo og mas taas nga paningkamot sa pag-optimize sa panahon sa Dapit ug Ruta stages, nga moresulta sa mapuslanon nga pagdoble sa rehistro. Sa mosunod nga mga kaso sa suok, mahimo nimong makunhuran ang paghuot pinaagi sa paghimo sa mosunod nga manwal nga mga pagbag-o sa imong disenyo nga RTL:
Taas nga Fan-Out Net Corner Cases
| Kinaiya sa Disenyo | Manwal nga RTL Optimization |
| Taas nga fan-out nga mga pukot nga moabot sa daghang hierarchy o pisikal nga layo nga mga destinasyon | Ipiho ang duplicate_hierarchy_depth nga assignment sa kataposang rehistro sa pipeline aron manu-mano ang pagdoble sa taas nga fan-out nga mga network sa mga hierarchy. Ipiho ang duplicate_register nga assignment aron madoble ang mga rehistro atol sa pagbutang. |
| Mga laraw nga adunay mga signal sa pagkontrol sa DSP o M20K nga mga bloke sa memorya gikan sa kombinasyon nga lohika | Pagdala sa control signal sa DSP o M20K nga panumduman gikan sa usa ka rehistro. |
Pagrehistro sa Pagdoble sa Tibuok Hierarchy
Mahimo nimong ipiho ang duplicate_hierarchy_depth nga buluhaton sa katapusang rehistro sa usa ka pipeline aron mogiya sa paghimo sa pagdoble sa rehistro ug mga fan-out. Ang mosunod nga mga numero nag-ilustrar sa epekto sa mosunod nga duplicate_hierarchy_depth assignment:
set_instance_assignment -ngalan duplicate_hierarchy_depth -to \
diin:
- register_name—ang kataposang rehistro sa usa ka kadena nga nagpasiugda sa daghang hierarchy.
- level_number—ang gidaghanon sa mga rehistro sa kadena nga madoble.
Figure 9. Sa wala pa ang Register Duplication
I-set ang duplicate_hierarchy_depth nga assignment aron ipatuman ang pagdoble sa rehistro sa mga hierarchy, ug paghimo og kahoy sa mga rehistro nga nagsunod sa katapusang rehistro sa kadena. Imong gipiho ang ngalan sa rehistro ug ang gidaghanon sa mga duplicate nga girepresentahan sa M sa mosunod nga example. Ang pula nga mga pana nagpakita sa mga potensyal nga lokasyon sa mga duplicate nga mga rehistro.
- set_instance_assignment –ngalan DUPLICATE_HIERARCHY_DEPTH –sa regZ M

Pagrehistro sa Pagdoble = 1
Ang pagtino sa mosunod nga usa ka lebel sa pagdoble sa rehistro (M=1) nagdoble sa usa ka rehistro (regZ) paubos sa usa ka lebel sa hierarchy sa disenyo:
- set_instance_assignment –ngalan DUPLICATE_HIERARCHY_DEPTH –sa regZ 1

Pagrehistro sa Pagdoble = 3
Ang pagpiho sa tulo ka lebel sa pagdoble sa rehistro (M=3) nagdoble sa tulo ka rehistro (regZ, regY, regX) ubos sa tulo, duha, ug usa ka lebel sa hierarchy, matag usa:
- set_instance_assignment –ngalan DUPLICATE_HIERARCHY_DEPTH –sa regZ 3

Pinaagi sa pagdoble ug pagduso sa mga rehistro ngadto sa mga hierarchy, ang disenyo nagpabilin sa samang gidaghanon sa mga cycle sa tanang mga destinasyon, samtang gipadali ang performance niini nga mga agianan.
Pagrehistro sa Duplikasyon Panahon sa Pagbutang
Ang Figure 12 sa panid 11 nagpakita sa usa ka rehistro nga adunay taas nga fan-out sa usa ka kaylap nga mikaylap nga lugar sa chip. Pinaagi sa pagdoble niini nga rehistro 50 ka beses, mahimo nimong mapakunhod ang gilay-on tali sa rehistro ug sa mga destinasyon nga sa katapusan moresulta sa mas paspas nga performance sa orasan. Ang paghatag og duplicate_register nagtugot sa Compiler sa paggamit sa pisikal nga kaduol aron sa paggiya sa pagbutang sa bag-ong mga rehistro nga nagpakaon sa usa ka subset sa mga fan-out.
Figure 12. Pagrehistro sa Pagdoble Panahon sa Pagbutang
Mubo nga sulat: Aron ma-broadcast ang signal sa chip, gamita ang multistage pipeline. Ibutang ang duplicate_register nga buluhaton sa matag usa sa mga rehistro sa pipeline. Kini nga teknik nagmugna og istruktura sa kahoy nga nagsibya sa signal tabok sa chip.
Viewsa mga Resulta sa Duplikasyon
Pagkahuman sa synthesis sa disenyo, view ang pagdoble moresulta sa Hierarchical Tree Duplication Summary report sa Synthesis folder sa Compilation Report. Ang report naghatag sa mosunod:
- Impormasyon sa mga rehistro nga adunay duplicate_hierarchy_depth assignment.
- Rason alang sa gitas-on sa kadena nga mahimo nimong gamiton ingon usa ka punto sa pagsugod alang sa dugang nga pag-uswag sa buluhaton.
- Impormasyon bahin sa indibidwal nga mga rehistro sa kadena nga imong magamit aron mas masabtan ang istruktura sa gipatuman nga mga duplicate.
Ang report sa Fitter naglakip usab sa usa ka seksyon sa mga rehistro nga adunay duplicate_register setting.
Ibutang ang Compiler Optimization Techniques
Mga disenyo nga naggamit sa taas kaayo nga porsyentotage sa mga kahinguhaan sa FPGA device mahimong hinungdan sa paghuot sa kahinguhaan, nga moresulta sa ubos nga fMAX ug mas komplikado nga pagsira sa timing. Ang mga setting sa Optimization Mode sa Compiler nagtugot kanimo sa pagtino sa pokus sa mga paningkamot sa Compiler atol sa synthesis. Kay example, imong gi-optimize ang synthesis alang sa Area, o Routability kung gitubag ang paghuot sa kapanguhaan. Mahimo kang mag-eksperimento sa mga kombinasyon niining parehas nga mga setting sa Optimization Mode sa Intel Quartus Prime Design Space Explorer II. Kini nga mga setting ug uban pang manual nga mga teknik makatabang kanimo nga makunhuran ang paghuot sa labi ka gigamit nga mga disenyo.
Problema sa Pagsira sa Tayming
- Ang mga laraw nga adunay taas kaayo nga paggamit sa kahinguhaan sa aparato nagpalisud sa pagsira sa oras.
Mga Solusyon sa Pagsira sa Tayming
- Ibutang ang Compiler Optimization Modes and Strategy sa pahina 13—specific the primary optimization mode goal for design synthesis.
- Eksperimento sa Area ug Routability Options sa pahina 16—paggamit og dugang nga mga koleksyon sa mga setting aron mamenosan ang kahuot ug makab-ot ang mga tumong sa area ug rotaability.
- Binagbinaga ang Fractal Synthesis para sa Arithmetic-Intensive Designs sa pahina 16—Para sa high-throughput, arithmetic-intensive nga mga desinyo, ang fractal synthesis nagapanubo sang paggamit sang resource sang device paagi sa multiplier regularization, retiming, kag padayon nga arithmetic packing.
May Kalabutan nga Impormasyon
- "Pagsira sa Oras ug Pag-optimize" nga Kapitulo, Giya sa Gumagamit sa Intel Quartus Prime Pro Edition: Pag-optimize sa Disenyo
- Giya sa Gumagamit sa Intel Quartus Prime Pro Edition: Compilation sa Disenyo
Ibutang ang Compiler Optimization Modes ug Istratehiya
Gamita ang mosunod nga impormasyon aron magamit ang Compiler optimization modes ug Design Space Explorer II (DSE II) compilation strategies.
Eksperimento sa Compiler Optimization Mode Settings
Sunda kini nga mga lakang sa pag-eksperimento sa Compiler optimization mode settings:
- Paghimo o pag-abli sa usa ka proyekto sa Intel Quartus Prime.
- Aron matino ang taas nga lebel nga estratehiya sa pag-optimize sa Compiler, i-klik ang Mga Assignment ➤ Settings ➤ Compiler Settings. Eksperimento sa bisan unsa sa mosunod nga mga setting sa mode, sama sa gihulagway sa Table 4 sa pahina 14.
- Aron ma-compile ang disenyo sa kini nga mga setting, i-klik ang Start Compilation sa Compilation Dashboard.
- View ang compilation resulta sa Compilation Report.
- I-klik ang Tools ➤ Timing Analyzer aron view ang mga resulta sa mga setting sa pag-optimize sa performance.
Mga Setting sa Compiler Optimization Mode

Mga Mode sa Pag-optimize (Pahina sa Mga Setting sa Compiler)
| Mode sa Pag-optimize | Deskripsyon |
| Balanse (normal nga dagan) | Gi-optimize sa Compiler ang synthesis alang sa balanse nga pagpatuman nga nagtahod sa mga pagpugong sa oras. |
| Taas nga Paningkamot | Gidugangan sa Compiler ang paningkamot sa pag-optimize sa oras sa panahon sa pagbutang ug pag-ruta, ug gitugotan ang mga pag-optimize sa Physical Synthesis nga may kalabotan sa oras (matag mga setting sa pag-optimize sa rehistro). Ang matag dugang nga pag-optimize makadugang sa oras sa pag-compile. |
| Taas nga Pagganap nga adunay Pinakataas nga Paningkamot sa Pagpahimutang | Makapahimo sa samang Compiler optimizations sama sa Taas nga Paningkamot, nga adunay dugang nga paningkamot sa pag-optimize sa placement. |
| Superior nga Performance | Makapahimo sa samang Compiler optimizations sama sa Taas nga Paningkamot, ug nagdugang ug dugang nga mga pag-optimize sa panahon sa Pagtuki ug Synthesis aron mapadako ang pasundayag sa disenyo nga adunay potensyal nga pagtaas sa lugar sa lohika. Kung ang paggamit sa disenyo taas na kaayo, kini nga opsyon mahimong mosangpot sa kalisud sa pagpahiangay, nga mahimo usab nga negatibong makaapekto sa kinatibuk-ang kalidad sa pag-optimize. |
| Labaw nga Pagganap nga adunay Labing Kataas nga Paningkamot sa Pagpahimutang | Makapahimo sa samang Compiler optimizations sama sa Superior nga Performance, nga adunay dugang nga paningkamot sa pag-optimize sa placement. |
| Agresibo nga Lugar | Ang Compiler naghimo sa agresibo nga paningkamot aron makunhuran ang lugar sa aparato nga gikinahanglan aron ipatuman ang disenyo sa potensyal nga gasto sa pasundayag sa disenyo. |
| Taas nga Placement Routability Paningkamot | Ang Compiler naghimo og taas nga paningkamot sa pagruta sa disenyo sa posibleng gasto sa disenyo nga lugar, performance, ug oras sa pag-compile. Ang Compiler mogugol og dugang nga panahon sa pagpamenos sa paggamit sa routing, nga makapauswag sa rotaability ug makadaginot usab sa dinamikong gahum. |
| Taas nga Paningkamot sa Routability sa Pag-pack | Ang Compiler naghimo og taas nga paningkamot sa pagruta sa disenyo sa posibleng gasto sa disenyo nga lugar, performance, ug oras sa pag-compile. Ang Compiler mogugol og dugang nga oras sa pag-pack sa mga rehistro, nga makapauswag sa rotaability ug makadaginot usab sa dinamikong gahum. |
| I-optimize ang Netlist para sa Routability | Ang Compiler nagpatuman sa mga pagbag-o sa netlist aron madugangan ang rutability sa posible nga gasto sa pasundayag. |
| nagpadayon… | |
| Mode sa Pag-optimize | Deskripsyon |
| Taas nga Gahum nga Paningkamot | Ang Compiler naghimo og taas nga paningkamot aron ma-optimize ang synthesis alang sa ubos nga gahum. Taas nga Gahum nga Paningkamot nagdugang ang synthesis run time. |
| Agresibo nga Gahum | Naghimo agresibo nga paningkamot aron ma-optimize ang synthesis alang sa ubos nga gahum. Ang Compiler dugang nga nagpamenos sa paggamit sa ruta sa mga signal nga adunay labing taas nga espesipiko o gibanabana nga mga rate sa toggle, makatipig dugang nga dinamikong gahum apan mahimo’g makaapekto sa pasundayag. |
| Agresibo nga Panahon sa Pag-compile | Gipamub-an ang oras sa pag-compile nga gikinahanglan aron ma-implementar ang laraw nga adunay pagkunhod sa paningkamot ug gamay nga pag-optimize sa pasundayag. Kini nga opsyon nagpugong usab sa pipila ka detalyado nga pagreport nga mga gimbuhaton.
Mubo nga sulat: Pag-on Agresibo nga Panahon sa Pag-compile makahimo sa Intel Quartus Prime Settings File (.qsf) setting nga dili ma-override sa ubang .qsf setting. |
Disenyo sa Space Explorer II Mga Estratehiya sa Pagtipon
Gitugotan ka sa DSE II nga makit-an ang labing maayo nga mga setting sa proyekto alang sa mga katuyoan sa kapanguhaan, pasundayag, o pag-optimize sa gahum. Gitugotan ka sa DSE II nga magbalikbalik pag-compile sa usa ka disenyo gamit ang lainlaing preset nga kombinasyon sa mga setting ug mga pagpugong aron makab-ot ang usa ka piho nga katuyoan. Gi-report dayon sa DSE II ang labing kaayo nga kombinasyon sa mga setting aron makab-ot ang imong mga katuyoan. Ang DSE II mahimo usab nga magdala sa advantage sa parallelization nga mga abilidad sa pag-compile sa mga liso sa daghang mga kompyuter. Ang mga setting sa DSE II Compilation Strategy nagpalanog sa mga setting sa Optimization Mode sa Table 4 sa pahina 14
Disenyo sa Space Explorer II
Sunda kini nga mga lakang aron itakda ang Compilation Strategy para sa DSE II:
- Aron ilunsad ang DSE II (ug isira ang Intel Quartus Prime software), i-klik ang Tools ➤ Ilunsad ang Design Space Explorer II. Ang DSE II moabli human ang Intel Quartus Prime software magsira.
- Sa DSE II toolbar, i-klik ang Exploration icon.
- Pagpalapad sa Exploration Points.
- Pilia ang eksplorasyon sa Disenyo. I-enable ang bisan unsa sa mga estratehiya sa Compilation nga magpadagan sa mga eksplorasyon sa disenyo nga nagpunting sa mga estratehiya.
Bawasan ang Paghuot alang sa Taas nga Paggamit
Ang mga disenyo nga naggamit ug kapin sa 80% sa mga kahinguhaan sa device kasagarang nagpresentar sa labing kalisod sa pagsira sa panahon. Mahimo nimong i-apply ang mosunod nga manual ug automated nga mga teknik aron makunhuran pa ang paghuot ug mapasayon ang pagsira sa oras.
- Eksperimento sa Area ug Routability Options sa panid 16
- Binagbinaga ang Fractal Synthesis para sa Arithmetic-Intensive Designs sa pahina 16
Eksperimento sa mga Opsyon sa Lugar ug Routability
Kung ang paggamit sa aparato hinungdan sa paghuot sa ruta, mahimo kang mag-eksperimento sa mga setting sa pag-optimize sa Area ug Routability aron makunhuran ang paggamit sa kapanguhaan ug paghuot alang sa imong disenyo. I-klik ang Mga Assignment ➤ Settings ➤ Compiler Settings ➤ Optimization Mode aron ma-access kini nga mga setting:
Mga Opsyon sa Area ug Routability

Ikonsiderar ang Fractal Synthesis alang sa Arithmetic-Intensive Designs
Para sa high-throughput, arithmetic-intensive nga mga disenyo, mahimo nimong palihokon ang automatic fractal synthesis optimizations aron mapauswag ang paggamit sa mga kahinguhaan sa device. Ang Fractal synthesis optimizations naglakip sa multiplier regularization ug retiming, ingon man ang padayon nga arithmetic packing. Gipunting sa mga pag-optimize ang mga disenyo nga adunay daghang mga operasyon sa aritmetika nga ubos ang katukma (sama sa mga pagdugang ug pagpadaghan). Mahimo nimong palihokon ang fractal synthesis sa tibuuk kalibutan o alang lamang sa piho nga mga multiplier. Ubos sa sulundon nga mga kondisyon, ang pag-optimize sa fractal synthesis mahimong makab-ot ang 20-45% nga pagkunhod sa lugar.
Multiplier Regularization ug Retiming
Ang multiplier nga regularisasyon ug pag-retiming naghimo sa inference sa labing maayo nga soft multiplier nga mga pagpatuman. Ang Compiler mahimong mag-apply ug backward retiming sa duha o daghan pang pipeline stages kung gikinahanglan. Kung imong gi-enable ang fractal synthesis, ang Compiler mo-apply sa multiplier regularization ug retiming sa pinirmahan ug unsigned multiplier.
Figure 16. Multiplier Retiming
NOTA
- Ang pagpadaghan sa regularisasyon naggamit lamang sa mga kapanguhaan sa lohika ug wala mogamit sa mga bloke sa DSP.
- Ang pagpadaghan sa regularisasyon ug pag-retiming kay gipadapat sa duha ka pinirmahan ug wala pa mapirmahan nga mga multiplier sa mga module diin ang FRACTAL_SYNTHESIS QSF nga assignment gitakda.
Padayon nga Arithmetic Packing
Ang padayon nga pag-pack sa aritmetika nag-synthesize pag-usab sa mga ganghaan sa aritmetika ngadto sa mga bloke sa logic nga labing maayo nga gidak-on aron mahaum sa mga Intel FPGA LABs. Gitugotan sa kini nga pag-optimize hangtod sa 100% nga paggamit sa mga kahinguhaan sa LAB alang sa mga bloke sa aritmetika. Kung mahimo nimo ang fractal synthesis, ang Compiler magamit kini nga pag-optimize sa tanan nga mga kadena sa pagdala ug duha ka-input nga mga ganghaan sa logic. Kini nga pag-optimize mahimong mag-pack sa mga punoan sa adder, multiplier, ug bisan unsang uban pang lohika nga may kalabotan sa aritmetika.
Padayon nga Arithmetic Packing

NOTA
Timan-i nga ang padayon nga arithmetic packing nagtrabaho nga independente sa multiplier regularization. Mao nga, kung naggamit ka usa ka multiplier nga dili regular (sama sa pagsulat sa imong kaugalingon nga multiplier) nan ang padayon nga pagputos sa aritmetika mahimo pa nga molihok. Ang pag-optimize sa Fractal synthesis labing angay alang sa mga laraw nga adunay mga pagpadali sa lawom nga pagkat-on o uban pang mga high-throughput, mga gimbuhaton nga kusog sa aritmetika nga milabaw sa tanan nga mga kapanguhaan sa DSP. Ang pagpagana sa fractal synthesis sa tibuok nga proyekto mahimong hinungdan sa dili kinahanglan nga pag-bloat sa mga module nga dili angay alang sa fractal optimizations.
Pag-enable o Pag-disable sa Fractal Synthesis
Para sa Intel Stratix® 10 ug Intel Agilex™ nga mga device, ang fractal synthesis optimization awtomatikong modagan alang sa gagmay nga mga multiplier (bisan unsang A*B nga pahayag sa Verilog HDL o VHDL diin ang bit-width sa mga operand kay 7 o mas ubos). Mahimo usab nimo nga ma-disable ang awtomatikong fractal synthesis alang sa gagmay nga mga multiplier para sa kini nga mga aparato gamit ang bisan hain sa mosunod nga mga pamaagi:
- Sa RTL, itakda ang DSP multstyle, ingon sa gihulagway sa "Multstyle Verilog HDL Synthesis Attribute". Kay example: (* multstyle = “dsp” *) module foo(…); module foo(..) /* synthesis multstyle = “dsp” */;
- Sa .qsf file, idugang isip assignment sama sa mosunod: set_instance_assignment -ngalan DSP_BLOCK_BALANCING_IMPLEMENTATION \DSP_BLOCKS -to r
Dugang pa, para sa Intel Stratix 10, Intel Agilex, Intel Arria® 10, ug Intel Cyclone® 10 GX nga mga device, mahimo nimong palihokon ang fractal synthesis sa tibuok kalibutan o alang sa piho nga mga multiplier nga adunay opsyon sa Fractal Synthesis GUI o ang katugbang nga FRACTAL_SYNTHESIS .qsf nga buluhaton:
- Sa RTL, gamita ang altera_attribute sama sa mosunod: (* altera_attribute = “-name FRACTAL_SYNTHESIS ON” *)
- Sa .qsf file, idugang isip assignment sama sa mosunod: set_global_assignment -name FRACTAL_SYNTHESIS ON -entity
Sa user interface, sunda kini nga mga lakang:
- I-klik ang Mga Assignment ➤ Assignment Editor.
- Pilia ang Fractal Synthesis para sa Assignment Name, On for the Value, ang arithmetic-intensive entity name para sa Entity, ug usa ka instance name sa To column. Mahimo kang magsulod ug wildcard (*) para kang To aron ma-assign ang tanang instance sa entidad.
Figure 18. Fractal Synthesis Assignment sa Assignment Editor

May Kalabutan nga Impormasyon
- Multstyle Verilog HDL Synthesis Attribute
- Sa Intel Quartus Prime Help.
Ipreserbar ang Makatagbaw nga Resulta
Mahimo nimong pasimplehon ang pagsira sa oras pinaagi sa pag-back-annotate sa makatagbaw nga mga resulta sa pag-compile aron ma-lock ang pagbutang sa dagkong mga bloke nga may kalabotan sa mga orasan, RAM, ug DSP. Sa susama, ang disenyo block reuse technique makapahimo kanimo sa pagpreserbar sa makatagbaw nga resulta sa compilation alang sa piho nga FPGA periphery o core logic design blocks (logic nga naglangkob sa usa ka hierarchical design instance), ug unya gamiton pag-usab ang mga block sa sunod nga mga compilation. Sa paggamit pag-usab sa block sa disenyo, imong i-assign ang hierarchical nga pananglitan isip partition sa disenyo, ug dayon ipreserba ug i-export ang partition human sa malampusong paghugpong. Ang pagpreserbar ug paggamit pag-usab sa makatagbaw nga mga resulta nagtugot kanimo sa pag-focus sa paningkamot ug oras sa Compiler sa mga bahin lamang sa disenyo nga wala magsira sa timing.
Problema sa Pagsira sa Tayming
- Gawas kung ma-lock, ang Compiler mahimong mag-implementar sa mga bloke sa disenyo, orasan, RAM, ug DSP nga lahi gikan sa pag-compile hangtod sa pag-compile depende sa lainlaing mga hinungdan.
Mga Solusyon sa Pagsira sa Tayming
- I-lock ang mga Orasan, RAM, ug DSP sa panid 20—back-annotate sa makatagbaw nga resulta sa paghugpong aron ma-lock ang pagbutang sa dagkong mga bloke nga may kalabotan sa mga orasan, RAM, ug DSP.
- Ipreserbar ang Mga Resulta sa Disenyo sa Partisyon sa pahina 21—preserbar ang mga partisyon para sa mga bloke nga mohaum sa timing, ug ipunting ang pag-optimize sa ubang mga bloke sa disenyo.
May Kalabutan nga Impormasyon
- Tabang sa Balik-Annotate nga Mga Assignment Dialog Box
- AN-899: Pagkunhod sa Oras sa Pag-compile uban ang Dali nga Pagpreserbar
- Giya sa Gumagamit sa Intel Quartus Prime Pro Edition: Disenyo nga Gibase sa Block
I-lock ang mga Orasan, RAM, ug DSP
Mahimo nimong pasimplehon ang pagsira sa timing pinaagi sa pag-back-annotate sa makatagbaw nga mga resulta sa compilation aron ma-lock ang pagbutang sa dagkong mga bloke nga may kalabutan sa Mga Orasan, RAM, ug DSP. Ang pag-lock sa dako nga block placement makahimo og mas taas nga fMAX nga adunay gamay nga kasaba. Ang pag-lock sa dagkong mga bloke sama sa mga RAM ug DSP mahimong epektibo tungod kay kini nga mga bloke adunay mas bug-at nga koneksyon kay sa regular nga mga LAB, nga makapakomplikado sa paglihok atol sa pagbutang. Kung ang usa ka liso makahatag ug maayong mga resulta gikan sa angay nga RAM ug DSP nga pagbutang, mahimo nimong makuha kana nga pagbutang gamit ang back-annotation. Ang sunod nga mga pag-compile mahimo’g makabenepisyo gikan sa taas nga kalidad nga pagbutang sa RAM ug DSP gikan sa maayong liso. Kini nga teknik dili kaayo makabenepisyo sa mga disenyo nga gamay ra ang mga RAM o DSP. I-klik ang Mga Assignment ➤ Back-Annotate Assignments aron kopyahon ang mga assignment sa kahinguhaan sa device gikan sa katapusang compilation ngadto sa .qsf para gamiton sa sunod nga compilation. Pilia ang back-annotation type sa back-annotation type list.
Balik-Annotate nga Mga Assignment Dialog Box

Sa laing bahin, mahimo nimong ipadagan ang back-annotation sa mosunod nga quartus_cdb executable. quartus_cdb –back_annotate [–dsp] [–ram] [–clock]
NOTA
- Gisuportahan sa executable ang dugang nga [–dsp], [–ram], ug [–clock] nga mga variable nga wala pa gisuportahan sa back-Annotate Assignments dialog box.
Ipreserbar ang mga Resulta sa Partisyon sa Disenyo
NOTA
- Pagkahuman sa pagbahin sa disenyo, mahimo nimong mapreserbar ang mga partisyon alang sa mga bloke nga nagtagbo sa oras, ug ipunting ang pag-optimize sa ubang mga bloke sa disenyo. Dugang pa, ang opsyon sa Fast Preserve nagpayano sa lohika sa usa ka gipreserbar nga partisyon ngadto lamang sa interface logic sa panahon sa pag-compile, sa ingon gipakunhod ang oras sa pag-compile para sa partisyon. Gisuportahan lang sa Fast Preserve ang paggamit pag-usab sa partition sa ugat ug mga disenyo sa partial reconfiguration. Para sa mga disenyo nga adunay mga sub-modules nga mahagiton alang sa pagsira sa timing, mahimo nimong ipahigayon ang stand-alone nga optimization ug compilation sa partition sa module, ug dayon i-export ang timing-closed module aron mapreserbar ang pagpatuman sa sunod nga mga compilation.
Pagpreserbar sa mga Resulta sa Partisyon sa Disenyo

Ang disenyo nga nakabase sa block nagkinahanglan sa pagbahin sa disenyo. Ang pagbahin sa disenyo nagtugot kanimo sa pagpreserbar sa indibidwal nga mga bloke sa logic sa imong disenyo, apan mahimo usab nga ipaila ang potensyal nga pagkawala sa performance tungod sa partition crossing ug floorplan nga mga epekto. Kinahanglan nimo nga balansehon kini nga mga hinungdan kung mogamit mga teknik sa disenyo nga nakabase sa block. Ang mosunod nga taas nga lebel nga mga lakang naghulagway sa partition preservation flow alang sa root partition reuse designs:
- I-klik ang Processing ➤ Start ➤ Start Analysis & Elaboration.
- Diha sa Project Navigator, i-right-click ang timing closed design instance, itudlo ang Design Partition, ug pilia ang usa ka partition Type, ingon sa Design Partition Settings sa pahina 23 naghulagway.
Paghimo Mga Partisyon sa Disenyo

- Ipasabot ang Logic Lock floorplanning constraints para sa partition. Sa Design Partitions Window, i-right-click ang partition ug dayon i-klik ang Logic Lock Region ➤ Create New Logic Lock Region. Siguruha nga ang rehiyon adunay igo nga kadako aron malakip ang tanan nga lohika sa partisyon.
- Aron ma-eksport ang mga resulta sa partisyon human sa paghugpong, sa Design Partitions Window, ipiho ang partition .qdb isip Post Final Export File.
Post Katapusan nga Export File

- Aron ma-compile ang disenyo ug ma-export ang partition, i-klik ang Compile Design sa Compilation Dashboard.
- Ablihi ang top-level nga proyekto sa Intel Quartus Prime software.
- I-klik ang Mga Assignment ➤ Settings ➤ Compiler Settings ➤ Incremental Compile. I-on ang kapilian nga Fast Preserve.
Dali nga Pagpreserbar nga Opsyon

- I-klik ang OK.
- Diha sa Design Partitions Window, ipiho ang gi-eksport nga .qdb isip Partition Database File alang sa partisyon nga gihisgutan. Kini nga .qdb mao na ang tinubdan alang niini nga partisyon sa proyekto. Kung imong mahimo ang kapilian nga Fast Preserve, ang Compiler mokunhod sa lohika sa imported nga partisyon ngadto lamang sa interface logic, sa ingon makunhuran ang oras sa pag-compile nga gikinahanglan sa partition.
Mga Setting sa Partisyon sa Disenyo
Mga Setting sa Partisyon sa Disenyo
| Opsyon | Deskripsyon |
| Ngalan sa Partisyon | Gipiho ang ngalan sa partisyon. Ang matag ngalan sa partisyon kinahanglan nga talagsaon ug naglangkob lamang sa mga alphanumeric nga karakter. Ang software sa Intel Quartus Prime awtomatik nga nagmugna og top-level (|) "root_partition" alang sa matag rebisyon sa proyekto. |
| Hierarchy nga Dalan | Gipiho ang hierarchy nga agianan sa entidad nga pananglitan nga imong gi-assign sa partisyon. Gitakda nimo kini nga kantidad sa Paghimo Bag-ong Partisyon dialog box. Ang root partition hierarchy path kay |. |
| Type | Doble nga pag-klik aron matino ang usa sa mga musunud nga tipo sa partisyon nga nagkontrol kung giunsa ang pagproseso ug pag-implementar sa Compiler sa partisyon: |
| nagpadayon… | |
| Opsyon | Deskripsyon |
| • Default—Nag-ila sa usa ka sagad nga partisyon. Giproseso sa Compiler ang partisyon gamit ang kaubang tinubdan sa disenyo files.
• Ma-configure pag-usab—Nag-ila sa usa ka ma-reconfigurable nga partition sa partial reconfiguration flow. Ipiho ang Ma-configure pag-usab type aron mapreserbar ang mga resulta sa synthesis, samtang gitugotan ang pag-refit sa partisyon sa dagan sa PR. • Gireserba nga Core—Nag-ila sa usa ka partition sa usa ka block-based nga dagan sa disenyo nga gitagana alang sa kinauyokan nga kalamboan sa usa ka Consumer nga naggamit pag-usab sa device periphery. |
|
| Ang lebel sa pagpreserba | Gipiho ang usa sa mosunod nga lebel sa pagpreserba para sa partisyon:
• Dili Gitakda— wala nagtino nga lebel sa pagpreserba. Ang partisyon nag-compile gikan sa gigikanan files. • gi-synthesize—ang partisyon nag-compile gamit ang synthesized snapshot. • katapusan—ang partisyon nag-compile gamit ang katapusang snapshot. Uban sa Ang lebel sa pagpreserba of gi-synthesize or katapusan, ang mga pagbag-o sa source code dili makita sa synthesis. |
| Walay sulod | Nagtino sa usa ka walay sulod nga partisyon nga gilaktawan sa Compiler. Kini nga setting dili uyon sa Gireserba nga Core ug Database sa partisyon File mga setting alang sa parehas nga partisyon. Ang Ang lebel sa pagpreserba kinahanglan nga Dili Gitakda. Ang usa ka walay sulod nga partisyon dili mahimong adunay bisan unsang mga partisyon sa bata. |
| Database sa partisyon File | Nagtino sa usa ka Partition Database File (.qdb) nga gigamit sa Compiler sa panahon sa paghugpong sa partisyon. Imong gi-eksport ang .qdb para sa stage sa compilation nga gusto nimong gamiton pag-usab (synthesized o final). I-assign ang .qdb sa usa ka partition aron magamit pag-usab ang mga resulta sa laing konteksto. |
| Entity Re-binding | • PR Flow—nagtino sa entidad nga mopuli sa default persona sa matag rebisyon sa pagpatuman.
• Root Partition Reuse Flow —nagtumbok sa entidad nga mopuli sa gireserba nga core logic sa consumer project. |
| Kolor | Gipiho ang color-coding sa partition sa Chip Planner ug Design Partition Planner display. |
| Post Synthesis Export File | Awtomatikong gi-eksport ang mga resulta sa compilation sa post-synthesis alang sa partition ngadto sa .qdb nga imong gipiho, matag higayon nga ang Analysis & Synthesis modagan. Mahimo nimong awtomatiko nga ma-export ang bisan unsang partisyon sa disenyo nga wala’y gipreserbar nga partisyon sa ginikanan, lakip ang root_partition. |
| Post Katapusan nga Export File | Awtomatikong gi-eksport ang post-final nga mga resulta sa compilation para sa partition ngadto sa .qdb nga imong gipiho, matag higayon nga ang final stage sa Fitter midagan. Mahimo nimong awtomatiko nga ma-export ang bisan unsang partisyon sa disenyo nga wala’y gipreserbar nga partisyon sa ginikanan, lakip ang root_partition. |
AN 903 Kasaysayan sa Pagbag-o sa Dokumento
Kini nga dokumento adunay mosunod nga kasaysayan sa rebisyon:
| Bersyon sa Dokumento | Intel Quartus Prime nga Bersyon | Mga kausaban |
| 2021.02.25 | 19.3 | Gipulihan ang "pagbira" sa "tension" sa Analisaha ug I-optimize ang Disenyo RTL hilisgutan. |
| 2020.03.23 | 19.3 | Gitul-id nga syntax error sa code sampsa "Lock Down Clock, RAMs, ug DSPs" nga hilisgutan. |
| 2019.12.03 | 19.3 | • Unang pagpagawas sa publiko. |
Mga Dokumento / Mga Kapanguhaan
![]() |
intel AN 903 Pagpadali sa Pagsira sa Timing [pdf] Giya sa Gumagamit AN 903 Pagpadali sa Pagsira sa Timing, AN 903, Pagpadali sa Pagsira sa Timing, Pagsira sa Timing |





