intel-LOGO

intel AN 903 एक्सेलेरेटिङ टाइमिङ क्लोजर

intel-AN-903-एक्सेलेरेटिङ-टाइमिङ-क्लोजर-PRODUCT

AN 903: Intel® Quartus® प्राइम प्रो संस्करणमा समय बन्द गर्ने गति

आधुनिक FPGA डिजाइनहरूको घनत्व र जटिलता, जसले इम्बेडेड प्रणालीहरू, IP, र उच्च-गति इन्टरफेसहरू संयोजन गर्दछ, समय बन्द गर्नका लागि बढ्दो चुनौतीहरू प्रस्तुत गर्दछ। ढिलो वास्तु परिवर्तन र प्रमाणीकरण चुनौतीहरूले समय खपत गर्ने डिजाइन पुनरावृत्तिहरू निम्त्याउन सक्छ। यो कागजातले Intel® Quartus® प्राइम प्रो संस्करण सफ्टवेयरमा प्रमाणित र दोहोर्याउन मिल्ने विधि प्रयोग गरेर समय बन्द गर्ने गति बढाउन तीन चरणहरूको सारांश दिन्छ। यस पद्धतिमा प्रारम्भिक RTL विश्लेषण र अप्टिमाइजेसन, साथै संकलन समय कम गर्न र डिजाइन जटिलता र समय बन्द गर्न आवश्यक पुनरावृत्तिहरू कम गर्न स्वचालित प्रविधिहरू समावेश छन्।

समय बन्द गर्ने प्रवेग चरणहरू

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

समय बन्द गर्ने प्रवेग चरणहरू

समय बन्द गर्ने चरण समय बन्द गर्ने गतिविधि विस्तृत जानकारी
चरण 1: RTL विश्लेषण र अनुकूलन गर्नुहोस् •    सही डिजाइन सहायक उल्लङ्घन पृष्ठ 4 मा

•    तर्क स्तर घटाउनुहोस् पृष्ठ 7 मा

•    उच्च फ्यान-आउट नेटहरू घटाउनुहोस् पृष्ठ 9 मा

•    इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन अनुकूलन

•    इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन सिफारिसहरू

चरण 2: कम्पाइलर अप्टिमाइजेसन लागू गर्नुहोस् •    कम्पाइलर अप्टिमाइजेसन मोडहरू लागू गर्नुहोस् र रणनीतिहरू पृष्ठ 13 मा

•    उच्च उपयोगको लागि भीड कम गर्नुहोस् पृष्ठ 16 मा

•    इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन संकलन

•    इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन अनुकूलन

चरण 3: सन्तोषजनक परिणामहरू सुरक्षित गर्नुहोस् •    लक डाउन घडीहरू, RAMs, र DSPs पृष्ठ 20 मा

•    डिजाइन विभाजन परिणामहरू सुरक्षित गर्नुहोस् पृष्ठ 21 मा

•    इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: ब्लक- आधारित डिजाइन

•    AN-899: कम्पाइल कम गर्दै द्रुत संरक्षणको साथ समय

चरण 1: डिजाइन RTL को विश्लेषण र अनुकूलन गर्नुहोस्

तपाईको डिजाइनको स्रोत कोडलाई अनुकूलन गर्नु तपाईको परिणामको गुणस्तर सुधार गर्नको लागि सामान्यतया पहिलो र सबैभन्दा प्रभावकारी प्रविधि हो। Intel Quartus प्राइम डिजाइन सहायकले तपाईंलाई आधारभूत डिजाइन नियम उल्लङ्घनहरू द्रुत रूपमा सच्याउन मद्दत गर्दछ, र RTL परिवर्तनहरू सिफारिस गर्दछ जसले डिजाइन अप्टिमाइजेसन र समय बन्द गर्न सरल बनाउँछ।

समय बन्द गर्ने समस्याहरू

  • अत्यधिक तर्क स्तरहरूले फिटर प्रशोधन क्रम, अवधि, र परिणामहरूको गुणस्तरलाई प्रभाव पार्छ।
  • उच्च फ्यान-आउट नेटहरूले स्रोत भीड निम्त्याउँछ र डेटा मार्गहरूमा अतिरिक्त तनाव थप्छ, अनावश्यक रूपमा मार्गको आलोचनात्मकता बढाउँछ, र समय बन्द गर्न जटिल बनाउँछ। यो तनाव उच्च फ्यान-आउट स्रोत तिर बाटो (र त्यो उच्च फ्यान-आउट संकेत साझा गर्ने सबै मार्गहरू) तान्ने आकर्षण बल हो।

समय बन्द समाधान

  • पृष्ठ ४ मा सही डिजाइन सहायक उल्लङ्घनहरू - तपाईंको डिजाइनसँग सान्दर्भिक आधारभूत डिजाइन नियम उल्लङ्घनहरू द्रुत रूपमा पहिचान गर्न र सच्याउन।
  • पृष्ठ 7 मा तर्क स्तरहरू घटाउनुहोस् — डिजाइनका सबै तत्वहरूले समान फिटर अप्टिमाइजेसनहरू प्राप्त गर्न सक्छन् र कम्पाइल समय घटाउन सक्छन्।
  • पृष्ठ 9 मा उच्च फ्यान-आउट नेटहरू घटाउनुहोस् — स्रोत भीड कम गर्न र समय बन्द गर्ने समयलाई सरल बनाउन।

सम्बन्धित जानकारी

  • "डिजाइन सहायकसँग डिजाइन नियम जाँच गर्दै," इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन सिफारिसहरू
  • "स्रोत कोड अप्टिमाइज गर्नुहोस्," इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन अप्टिमाइजेसन
  • "फ्यान-आउट नियन्त्रणको लागि नक्कल दर्ताहरू," इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन अप्टिमाइजेसन

सही डिजाइन सहायक उल्लङ्घन

ज्ञात समय बन्द गर्ने समस्याहरू हटाउन प्रारम्भिक डिजाइन विश्लेषण प्रदर्शन गर्दा उत्पादकतामा उल्लेखनीय वृद्धि हुन्छ। पूर्वनिर्धारित सेटिङहरूसँग प्रारम्भिक संकलन चलाएपछि, तपाइँ पुन: गर्न सक्नुहुन्छview डिजाइन सहायकले प्रारम्भिक विश्लेषणको लागि रिपोर्ट गर्दछ। सक्षम हुँदा, डिजाइन सहायकले स्वचालित रूपमा Intel FPGA-सिफारिस गरिएको डिजाइन दिशानिर्देशहरूको मानक सेट विरुद्ध कुनै पनि उल्लङ्घनको रिपोर्ट गर्छ। तपाईं कम्पाइलेशन फ्लो मोडमा डिजाइन सहायक चलाउन सक्नुहुन्छ, तपाईंलाई अनुमति दिँदै view संकलनका लागि सान्दर्भिक उल्लङ्घनहरूtagतपाईं दौडनुहुन्छ। वैकल्पिक रूपमा, डिजाइन सहायक टाइमिङ एनालाइजर र चिप प्लानरमा विश्लेषण मोडमा उपलब्ध छ।

  • संकलन प्रवाह मोड- एक वा बढी s को समयमा स्वचालित रूपमा चल्छtagसंकलन को es। यस मोडमा, डिजाइन सहायकले संकलनको क्रममा इन-फ्लो (अस्थायी) डेटा प्रयोग गर्दछ।
  • विश्लेषण मोड- विशिष्ट संकलनमा डिजाइन उल्लङ्घनहरू विश्लेषण गर्न समय विश्लेषक र चिप प्लानरबाट डिजाइन सहायक चलाउनुहोस्।tage, संकलन प्रवाहमा अगाडि बढ्नु अघि। विश्लेषण मोडमा, डिजाइन सहायकले स्थिर संकलन स्न्यापसट डेटा प्रयोग गर्दछ।

डिजाइन सहायकले निम्न गम्भीरता स्तरहरू मध्ये एकको साथ प्रत्येक नियम उल्लङ्घनलाई निर्दिष्ट गर्दछ। तपाईले कुन नियमहरू निर्दिष्ट गर्न सक्नुहुन्छ जुन तपाईले डिजाइन सहायकले तपाईको डिजाइनमा जाँच गर्न चाहानुहुन्छ, र गम्भीरता स्तरहरू अनुकूलित गर्नुहोस्, यसरी तपाईंको डिजाइनको लागि महत्त्वपूर्ण नभएका नियम जाँचहरू हटाउँदै।

डिजाइन सहायक नियम गम्भीरता स्तर

कोटीहरू विवरण गम्भीरता स्तर रंग
क्रिटिकल ह्यान्ड-अफको लागि ठेगाना मुद्दा। रातो
उच्च सम्भावित रूपमा कार्यात्मक विफलताको कारण बनाउँछ। हराएको वा गलत डिजाइन डाटा संकेत गर्न सक्छ। सुन्तला
मध्यम f का लागि परिणामहरूको गुणस्तरलाई सम्भावित रूपमा असर गर्छMAX वा स्रोतको उपयोग। ब्राउन
कम नियमले RTL कोडिङ दिशानिर्देशहरूको लागि उत्तम अभ्यासहरू प्रतिबिम्बित गर्दछ। निलो

डिजाइन सहायक सेट अप गर्दै
तपाइँ तपाइँको व्यक्तिगत डिजाइन विशेषताहरु र रिपोर्टिङ आवश्यकताहरु को लागी डिजाइन सहायक पूर्ण रूप मा अनुकूलित गर्न सक्नुहुन्छ। Assignments मा क्लिक गर्नुहोस् ➤ सेटिङहरू ➤ डिजाइन सहायक नियम सेटिङहरू विकल्पहरू निर्दिष्ट गर्नका लागि कुन नियम र प्यारामिटरहरू विभिन्न s मा लागू हुन्छन्।tagडिजाइन नियम जाँचको लागि डिजाइन संकलनको es।

डिजाइन सहायक नियम सेटिङहरूintel-AN-903-Accelerating-Timing-Closure-FIG-2

चलिरहेको डिजाइन सहायक
सक्षम हुँदा, डिजाइन सहायक संकलनको समयमा स्वचालित रूपमा चल्छ र कम्पाइलेशन रिपोर्टमा सक्षम गरिएको डिजाइन नियम उल्लङ्घनहरू रिपोर्ट गर्दछ। वैकल्पिक रूपमा, तपाइँ विश्लेषण मोडमा डिजाइन सहायक चलाउन सक्नुहुन्छ एक विशिष्ट संकलन स्न्यापसटमा मात्र विश्लेषण फोकस गर्नको लागि।tage संकलनको समयमा स्वचालित डिजाइन सहायक जाँच सक्षम गर्न:

  • डिजाइन सहायक नियम सेटिङहरूमा संकलन गर्दा डिजाइन सहायक कार्यान्वयन सक्षम गर्नुहोस्। स्न्यापसटमा लागू हुने कुनै पनि डिजाइन नियमहरू विरुद्ध विशिष्ट स्न्यापसट प्रमाणित गर्न विश्लेषण मोडमा डिजाइन सहायक चलाउन:
  • टाइमिङ एनालाइजर वा चिप प्लानर टास्क प्यानलमा रिपोर्ट DRC मा क्लिक गर्नुहोस्।

Viewडिजाइन सहायक परिणामहरू ing र सुधार गर्दै
डिजाइन सहायकले विभिन्न s मा डिजाइन नियम उल्लङ्घन सक्षम गरेको रिपोर्ट गर्दछtagसंकलन प्रतिवेदन को es।

डिजाइन सहायक परिणामहरू संश्लेषण, योजना, स्थान, र रिपोर्टहरूलाई अन्तिम रूप दिनुहोस्intel-AN-903-Accelerating-Timing-Closure-FIG-3

को view प्रत्येक नियमको लागि परिणामहरू, नियम सूचीमा नियममा क्लिक गर्नुहोस्। नियमको विवरण र सुधारका लागि डिजाइन सिफारिसहरू देखा पर्छन्।

डिजाइन सहायक नियम उल्लङ्घन सिफारिस

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

डिजाइन नियम उल्लङ्घनहरू सच्याउन आफ्नो RTL परिमार्जन गर्नुहोस्।

तर्क स्तर घटाउनुहोस्

अत्यधिक तर्क स्तरहरूले फिटरको परिणामको गुणस्तरलाई असर गर्न सक्छ किनभने डिजाइन महत्वपूर्ण मार्गले फिटर प्रशोधन क्रम र अवधिलाई प्रभाव पार्छ। फिटरले समय सुस्ततामा आधारित डिजाइनलाई स्थान र मार्गहरू बनाउँछ। फिटरले पहिले कम्तिमा ढिलो भएको लामो बाटोहरू राख्छ। फिटरले सामान्यतया तल्लो-तर्क स्तर पथहरू भन्दा उच्च तर्क-स्तर पथहरूलाई प्राथमिकता दिन्छ। सामान्यतया, फिटर पछिtage पूरा भयो, बाँकी रहेका महत्वपूर्ण मार्गहरू उच्चतम तर्क स्तर पथहरू होइनन्। फिटरले रुचाइएको प्लेसमेन्ट, राउटिङ, र उच्च स्तरको तर्कमा रिटिमिङ दिन्छ। तर्क स्तर घटाउनुले डिजाइनका सबै तत्वहरूले समान फिटर प्राथमिकता प्राप्त गरेको सुनिश्चित गर्न मद्दत गर्छ। रिपोर्टहरू चलाउनुहोस् ➤ अनुकूलन रिपोर्टहरू ➤ मार्गमा तर्कको स्तरहरू देखाउने रिपोर्टहरू उत्पन्न गर्न समय विश्लेषकमा समय रिपोर्ट गर्नुहोस्। यदि पथ समय असफल भयो र तर्क स्तरहरूको संख्या उच्च छ भने, प्रदर्शन सुधार गर्न डिजाइनको त्यो भागमा पाइपलाइन थप्ने विचार गर्नुहोस्।

पथ रिपोर्ट मा तर्क गहिराई

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

रिपोर्टिङ तर्क स्तर गहिराई
कम्पाइलरको योजना पछि stage, तपाइँ रिपोर्ट_logic_depth लाई समय विश्लेषक Tcl कन्सोलमा चलाउन सक्नुहुन्छ view घडी डोमेन भित्र तर्क स्तर को संख्या। report_logic_depth ले महत्वपूर्ण मार्गहरू बीच तर्कको गहिराइको वितरण देखाउँछ, जसले तपाईंलाई आफ्नो RTL मा तर्क स्तरहरू घटाउन सक्ने क्षेत्रहरू पहिचान गर्न अनुमति दिन्छ।

रिपोर्ट_लगिक_डेप्थ -प्यानल_नाम - [get_clocks बाट ] \ - [get_clocks ]

report_logic_depth आउटपुटintel-AN-903-Accelerating-Timing-Closure-FIG-6

RTL लाई अप्टिमाइज गर्नका लागि डाटा प्राप्त गर्न, कम्पाइलरको योजना पछि रिपोर्ट_लगिक_डेपथ चलाउनुहोस्।tage, बाँकी फिटर चलाउनु अघि stages। अन्यथा, पोस्ट-फिटर रिपोर्टहरूले भौतिक अप्टिमाइजेसन (रिटिमिङ र रिसिंथेसिस) को परिणामहरू पनि समावेश गर्दछ।

छिमेकी मार्गहरू रिपोर्ट गर्दै
फिटर चलाएपछि (फाइनलाइज) stage, तपाईले रिपोर्ट_neighbour_paths चलाउन सक्नुहुन्छ महत्वपूर्ण मार्गको मूल कारण निर्धारण गर्न मद्दत गर्न (पूर्वको लागिample, उच्च तर्क स्तर, रिटिमिङ सीमा, सब-इष्टतम प्लेसमेन्ट, I/O स्तम्भ क्रसिङ, होल्ड-फिक्स, वा अन्य): रिपोर्ट_छिमेकी_पाथ -to_clock -npaths -panel_name

report_neighbour_paths ले डिजाइनमा सबैभन्दा समय-महत्वपूर्ण मार्गहरू रिपोर्ट गर्दछ, सम्बन्धित ढिलो, अतिरिक्त मार्ग सारांश जानकारी, र मार्ग बाउन्डिङ बक्सहरू सहित।

रिपोर्ट_छिमेकी_पथ आउटपुटintel-AN-903-Accelerating-Timing-Closure-FIG-7

report_neighbour_paths ले प्रत्येक महत्वपूर्ण पथ अघि र पथ पछि सबैभन्दा समय-महत्वपूर्ण मार्ग देखाउँछ। यदि पथमा नकारात्मक ढिलाइ भएमा, तर पथमा सकारात्मक ढिलाइ अघि वा पछिको बाटोमा रिटाइमिङ वा तर्क सन्तुलनले समय बन्द गर्ने कार्यलाई सरल बनाउन सक्छ।

रिटाइमिङ सक्षम गर्न, निम्न विकल्पहरू सक्रिय छन् भनी सुनिश्चित गर्नुहोस्:

  • दर्ताका लागि — असाइनमेन्टहरू सक्षम पार्नुहोस् ➤ सेटिङहरू ➤ कम्पाइलर सेटिङहरू ➤ दर्ता अप्टिमाइजेसन ➤ दर्ता रिटिमिङलाई अनुमति दिनुहोस्
  • RAM अन्त्य बिन्दुहरूको लागि - असाइनमेन्टहरू सक्षम गर्नुहोस् ➤ सेटिङहरू ➤ कम्पाइलर सेटिङहरू ➤ फिटर सेटिङहरू (उन्नत) ➤ RAM रिटिमिङलाई अनुमति दिनुहोस्
  • DSP Endpoints को लागि — असाइनमेन्टहरू सक्षम गर्नुहोस् ➤ सेटिङहरू ➤ कम्पाइलर सेटिङहरू ➤ फिटर सेटिङहरू (उन्नत) ➤ DSP रिटिमिङलाई अनुमति दिनुहोस्

नोट

यदि थप तर्क सन्तुलन आवश्यक छ भने, तपाईंले म्यानुअल रूपमा आफ्नो RTL परिमार्जन गर्नुपर्छ तर्कलाई महत्वपूर्ण पथबाट पथ अघि वा पछिको बाटोमा सार्नको लागि।
यदि रेजिस्टरको आउटपुट यसको इनपुटमा जोडिएको छ भने, एक वा दुबै छिमेकी मार्गहरू हालको मार्गसँग समान हुन सक्छन्। सबैभन्दा खराब ढिलो भएको छिमेकी मार्गहरू खोज्दा, मुख्य मार्गको सञ्चालन सर्तहरू मात्र होइन, सबै सञ्चालन अवस्थाहरू विचार गरिन्छ।

टेक्नोलोजी नक्सामा तर्क स्तरहरू कल्पना गर्दै Viewer
टेक्नोलोजी नक्सा Viewer ले योजनाबद्ध, टेक्नोलोजी-म्याप गरिएको, डिजाइन नेटलिस्टको प्रतिनिधित्वहरू पनि प्रदान गर्दछ, र तपाईंलाई तर्क स्तरहरूको संख्या घटाएर डिजाइनमा कुन क्षेत्रहरूले फाइदा लिन सक्छ भनेर हेर्न मद्दत गर्न सक्छ। तपाईं चिप प्लानरमा विस्तृत रूपमा पथको भौतिक रूपरेखाको पनि अनुसन्धान गर्न सक्नुहुन्छ। एक मा एक समय मार्ग पत्ता लगाउन viewers, टाइमिङ रिपोर्टमा एउटा पथमा दायाँ क्लिक गर्नुहोस्, पाथ पत्ता लगाउनुहोस्, र टेक्नोलोजी नक्सामा पत्ता लगाउनुहोस् चयन गर्नुहोस्। Viewer

उच्च फ्यान-आउट नेटहरू घटाउनुहोस्

उच्च फ्यान-आउट नेटहरूले स्रोत भीड निम्त्याउन सक्छ, जसले गर्दा समय बन्द गर्न जटिल हुन्छ। सामान्यतया, कम्पाइलरले घडीहरूसँग सम्बन्धित उच्च फ्यान-आउट नेटहरू स्वचालित रूपमा व्यवस्थापन गर्दछ। कम्पाइलरले स्वचालित रूपमा मान्यता प्राप्त उच्च फ्यान-आउट नेटहरूलाई विश्वव्यापी घडी नेटवर्कमा बढावा दिन्छ। कम्पाइलरले स्थान र मार्गको समयमा उच्च अनुकूलन प्रयास गर्दछtages, जसले लाभकारी दर्ता नक्कलमा परिणाम दिन्छ। निम्न कुना केसहरूमा, तपाइँ तपाइँको डिजाइन RTL मा निम्न म्यानुअल परिवर्तनहरू गरेर भीड कम गर्न सक्नुहुन्छ:

उच्च फ्यान-आउट नेट कर्नर केसहरू

डिजाइन विशेषता म्यानुअल RTL अनुकूलन
उच्च फ्यान-आउट नेटहरू जुन धेरै पदानुक्रमहरू वा भौतिक रूपमा टाढा गन्तव्यहरूमा पुग्छन् पदानुक्रमहरूमा उच्च फ्यान-आउट नेटवर्कहरू म्यानुअल रूपमा नक्कल गर्न पाइपलाइनमा अन्तिम दर्तामा duplicate_hierarchy_depth असाइनमेन्ट निर्दिष्ट गर्नुहोस्। नियुक्तिको क्रममा नक्कल दर्ताहरूको लागि डुप्लिकेट_रेजिस्टर असाइनमेन्ट निर्दिष्ट गर्नुहोस्।
संयोजन तर्कबाट DSP वा M20K मेमोरी ब्लकहरूमा नियन्त्रण संकेतहरूको साथ डिजाइनहरू एक दर्ताबाट DSP वा M20K मेमोरीमा नियन्त्रण संकेत ड्राइभ गर्नुहोस्।

पदानुक्रमहरूमा डुप्लिकेशन दर्ता गर्नुहोस्
तपाईंले पाइपलाइनमा अन्तिम दर्तामा duplicate_hierarchy_depth असाइनमेन्ट निर्दिष्ट गर्न सक्नुहुन्छ रेजिस्टर नक्कल र फ्यान-आउटहरू सिर्जना गर्न मार्गदर्शन गर्न। निम्न तथ्याङ्कहरूले निम्न डुप्लिकेट_हाइरार्की_डेप्थ असाइनमेन्टको प्रभावलाई चित्रण गर्दछ:

set_instance_assignment -name duplicate_hierarchy_depth -to \

कहाँ:

  • register_name — धेरै पदानुक्रमहरूमा फ्यान गर्ने चेनमा अन्तिम दर्ता।
  • level_number — डुप्लिकेट गर्न श्रृंखलामा दर्ताहरूको संख्या।

चित्र 9. नक्कल दर्ता गर्नु अघि
पदानुक्रमहरूमा दर्ता नक्कल कार्यान्वयन गर्न duplicate_hierarchy_depth असाइनमेन्ट सेट गर्नुहोस्, र श्रृंखलामा अन्तिम दर्ता पछि दर्ताहरूको रूख सिर्जना गर्नुहोस्। तपाईंले दर्ता नाम र M द्वारा प्रतिनिधित्व गरिएको नक्कलहरूको संख्या निम्न पूर्वमा निर्दिष्ट गर्नुहोस्ample। रातो तीरहरूले डुप्लिकेट दर्ताहरूको सम्भावित स्थानहरू देखाउँछन्।

  • set_instance_assignment -नाम DUPLICATE_HIERARCHY_DEPTH -regZ M लाईintel-AN-903-Accelerating-Timing-Closure-FIG-8

नक्कल दर्ता गर्नुहोस् = १
रेजिस्टर डुप्लिकेशन (M=1) को निम्न एकल स्तर निर्दिष्ट गर्दा डिजाइन पदानुक्रमको एक स्तर तल एक दर्ता (regZ) डुप्लिकेट हुन्छ:

  • set_instance_assignment -नाम DUPLICATE_HIERARCHY_DEPTH -regZ 1 लाईintel-AN-903-Accelerating-Timing-Closure-FIG-9

नक्कल दर्ता गर्नुहोस् = १
दर्ता नक्कल (M=3) को तीन स्तरहरू निर्दिष्ट गर्दा क्रमशः तीन, दुई, र पदानुक्रमको एक स्तर तल तीन दर्ताहरू (regZ, regY, regX) डुप्लिकेट हुन्छ:

  • set_instance_assignment -नाम DUPLICATE_HIERARCHY_DEPTH -regZ 3 लाईintel-AN-903-Accelerating-Timing-Closure-FIG-10

डुप्लिकेट गरी रजिष्टरहरूलाई पदानुक्रममा तल धकेल्दै, डिजाइनले यी मार्गहरूमा कार्यसम्पादनलाई धेरै गतिमा बढाउँदै सबै गन्तव्यहरूमा उस्तै संख्यामा चक्रहरू राख्छ।

प्लेसमेन्टको समयमा नक्कल दर्ता गर्नुहोस्
पृष्ठ 12 मा चित्र 11 ले चिपको व्यापक रूपमा फैलिएको क्षेत्रमा उच्च फ्यान-आउट भएको दर्ता देखाउँछ। यस दर्तालाई ५० पटक नक्कल गरेर, तपाईंले दर्ता र गन्तव्यहरू बीचको दूरी घटाउन सक्नुहुन्छ जसले अन्ततः छिटो घडीको प्रदर्शनमा परिणाम दिन्छ। duplicate_register असाइन गर्नाले कम्पाइलरलाई फ्यान-आउटहरूको सबसेट खुवाउने नयाँ दर्ताहरूको प्लेसमेन्ट मार्गदर्शन गर्न भौतिक निकटताको लाभ उठाउन अनुमति दिन्छ।

चित्र 12. स्थानान्तरणको क्रममा नक्कल दर्ता गर्नुहोस्intel-AN-903-Accelerating-Timing-Closure-FIG-11

नोट: चिप भरि एक संकेत प्रसारण गर्न, एक multis प्रयोग गर्नुहोस्tage पाइपलाइन। पाइपलाइनमा रहेका प्रत्येक दर्ताहरूमा डुप्लिकेट_रेजिस्टर असाइनमेन्ट लागू गर्नुहोस्। यो प्रविधिले रूखको संरचना बनाउँछ जसले चिपमा सिग्नल प्रसारण गर्छ।

Viewनक्कल परिणामहरू
डिजाइन संश्लेषण पछि, view कम्पाइलेशन रिपोर्टको सिन्थेसिस फोल्डरमा हाइरार्किकल ट्री डुप्लिकेशन सारांश रिपोर्टमा नक्कल परिणामहरू। रिपोर्ट निम्न प्रदान गर्दछ:

  • डुप्लिकेट_hierarchy_depth असाइनमेन्ट भएका दर्ताहरूमा जानकारी।
  • असाइनमेन्टमा थप सुधारहरूका लागि तपाईंले सुरुवात बिन्दुको रूपमा प्रयोग गर्न सक्ने चेन लम्बाइको कारण।
  • तपाईंले लागू गरिएका डुप्लिकेटहरूको संरचनालाई अझ राम्ररी बुझ्न प्रयोग गर्न सक्ने चेनमा भएका व्यक्तिगत दर्ताहरूको बारेमा जानकारी।

फिटर रिपोर्टले रेजिस्टरहरूमा डुप्लिकेट_रेजिस्टर सेटिङ भएको खण्ड पनि समावेश गर्दछ।

कम्पाइलर अप्टिमाइजेसन प्रविधिहरू लागू गर्नुहोस्

धेरै उच्च प्रतिशत प्रयोग गर्ने डिजाइनहरूtagFPGA यन्त्र स्रोतहरूको e ले स्रोत भीड हुन सक्छ, फलस्वरूप कम fMAX र थप जटिल समय बन्द हुन्छ। कम्पाइलरको अप्टिमाइजेसन मोड सेटिङहरूले तपाईंलाई संश्लेषणको समयमा कम्पाइलर प्रयासहरूको फोकस निर्दिष्ट गर्न अनुमति दिन्छ। पूर्वका लागिample, तपाईं क्षेत्रको लागि संश्लेषण अनुकूलन गर्नुहुन्छ, वा संसाधन भीडलाई सम्बोधन गर्दा राउटेबिलिटी। तपाईं इन्टेल क्वार्टस प्राइम डिजाइन स्पेस एक्सप्लोरर II मा यी समान अप्टिमाइजेसन मोड सेटिङहरूको संयोजनको साथ प्रयोग गर्न सक्नुहुन्छ। यी सेटिङहरू र अन्य म्यानुअल प्रविधिहरूले तपाईंलाई अत्यधिक प्रयोग गरिएका डिजाइनहरूमा भीड कम गर्न मद्दत गर्न सक्छ।

समय बन्द गर्ने समस्या

  • धेरै उच्च उपकरण स्रोत उपयोगको साथ डिजाइनहरूले समय बन्द गर्न जटिल बनाउँछ।

समय बन्द समाधान

  • पृष्ठ 13 मा कम्पाइलर अप्टिमाइजेसन मोड र रणनीतिहरू लागू गर्नुहोस् — डिजाइन संश्लेषणको लागि प्राथमिक अनुकूलन मोड लक्ष्य निर्दिष्ट गर्नुहोस्।
  • पृष्ठ 16 मा क्षेत्र र राउटेबिलिटी विकल्पहरूको साथ प्रयोग गर्नुहोस् — भीड कम गर्न र क्षेत्र र राउटेबिलिटी लक्ष्यहरू पूरा गर्न सेटिङहरूको अतिरिक्त संग्रहहरू लागू गर्नुहोस्।
  • पृष्ठ 16 मा अंकगणित-गहन डिजाइनहरूका लागि फ्र्याक्टल संश्लेषणलाई विचार गर्नुहोस्—उच्च-थ्रुपुट, अंकगणित-गहन डिजाइनहरूको लागि, फ्र्याक्टल संश्लेषणले गुणक नियमितीकरण, रिटाइमिङ, र निरन्तर अंकगणितीय प्याकिङ मार्फत उपकरण स्रोतको प्रयोग घटाउँछ।

सम्बन्धित जानकारी

  • "समय बन्द र अनुकूलन" अध्याय, इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन अप्टिमाइजेसन
  • इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: डिजाइन संकलन

कम्पाइलर अप्टिमाइजेसन मोड र रणनीतिहरू लागू गर्नुहोस्

कम्पाइलर अप्टिमाइजेसन मोडहरू र डिजाइन स्पेस एक्सप्लोरर II (DSE II) संकलन रणनीतिहरू लागू गर्न निम्न जानकारी प्रयोग गर्नुहोस्।

कम्पाइलर अप्टिमाइजेसन मोड सेटिङहरूको साथ प्रयोग गर्नुहोस्
कम्पाइलर अप्टिमाइजेसन मोड सेटिङहरूसँग प्रयोग गर्न यी चरणहरू पालना गर्नुहोस्:

  1. Intel Quartus प्राइम प्रोजेक्ट बनाउनुहोस् वा खोल्नुहोस्।
  2. कम्पाइलरको उच्च-स्तर अनुकूलन रणनीति निर्दिष्ट गर्न, असाइनमेन्ट ➤ सेटिङहरू ➤ कम्पाइलर सेटिङहरूमा क्लिक गर्नुहोस्। निम्न मोड सेटिङहरू मध्ये कुनै पनि प्रयोग गर्नुहोस्, जस्तै पृष्ठ 4 मा तालिका 14 वर्णन गर्दछ।
  3. यी सेटिङहरूसँग डिजाइन कम्पाइल गर्न, संकलन ड्यासबोर्डमा संकलन सुरु गर्नुहोस् क्लिक गर्नुहोस्।
  4. View संकलन रिपोर्टमा संकलन परिणामहरू।
  5. Tools ➤ समय विश्लेषकमा क्लिक गर्नुहोस् view प्रदर्शनमा अनुकूलन सेटिङहरूको परिणाम।

कम्पाइलर अप्टिमाइजेसन मोड सेटिङहरू

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

अनुकूलन मोडहरू (कम्पाइलर सेटिङ पृष्ठ)

अनुकूलन मोड विवरण
सन्तुलित (सामान्य प्रवाह) कम्पाइलरले सन्तुलित कार्यान्वयनको लागि संश्लेषणलाई अनुकूलन गर्दछ जुन समय बाधाहरूलाई सम्मान गर्दछ।
उच्च प्रदर्शन प्रयास कम्पाइलरले प्लेसमेन्ट र राउटिङको समयमा समय अनुकूलन प्रयास बढाउँछ, र समय-सम्बन्धित भौतिक संश्लेषण अनुकूलन (प्रति दर्ता अनुकूलन सेटिङहरू) सक्षम गर्दछ। प्रत्येक अतिरिक्त अप्टिमाइजेसनले संकलन समय बढाउन सक्छ।
अधिकतम स्थान प्रयासको साथ उच्च प्रदर्शन को रूपमा समान कम्पाइलर अनुकूलन सक्षम गर्दछ उच्च प्रदर्शन प्रयास, अतिरिक्त नियुक्ति अनुकूलन प्रयास संग।
उत्कृष्ट प्रदर्शन को रूपमा समान कम्पाइलर अनुकूलन सक्षम गर्दछ उच्च प्रदर्शन प्रयास, र तर्क क्षेत्रमा सम्भावित वृद्धिको साथ डिजाइन कार्यसम्पादनलाई अधिकतम बनाउन विश्लेषण र संश्लेषणको क्रममा थप अप्टिमाइजेसनहरू थप्छ। यदि डिजाइनको उपयोग पहिले नै धेरै उच्च छ भने, यो विकल्पले फिटिङमा कठिनाई निम्त्याउन सक्छ, जसले समग्र अनुकूलन गुणस्तरलाई पनि नकारात्मक रूपमा असर गर्न सक्छ।
अधिकतम स्थान प्रयासको साथ उत्कृष्ट प्रदर्शन को रूपमा समान कम्पाइलर अनुकूलन सक्षम गर्दछ उत्कृष्ट प्रदर्शन, अतिरिक्त नियुक्ति अनुकूलन प्रयास संग।
आक्रामक क्षेत्र कम्पाइलरले डिजाइन कार्यसम्पादनको सम्भावित खर्चमा डिजाइन कार्यान्वयन गर्न आवश्यक उपकरण क्षेत्र कम गर्न आक्रामक प्रयास गर्दछ।
उच्च स्थानान्तरण राउटेबिलिटी प्रयास कम्पाइलरले डिजाइन क्षेत्र, कार्यसम्पादन, र संकलन समयको सम्भावित खर्चमा डिजाइनलाई रुट गर्न उच्च प्रयास गर्दछ। कम्पाइलरले राउटिङ उपयोग कम गर्न अतिरिक्त समय खर्च गर्दछ, जसले रूटिङ सुधार गर्न सक्छ र गतिशील शक्ति पनि बचत गर्दछ।
उच्च प्याकिंग राउटेबिलिटी प्रयास कम्पाइलरले डिजाइन क्षेत्र, कार्यसम्पादन, र संकलन समयको सम्भावित खर्चमा डिजाइनलाई रुट गर्न उच्च प्रयास गर्दछ। कम्पाइलरले अतिरिक्त समय प्याकिङ रेजिष्टरहरू खर्च गर्दछ, जसले राउटेबिलिटी सुधार गर्न सक्छ र गतिशील शक्ति पनि बचत गर्दछ।
राउटेबिलिटीको लागि नेटलिस्ट अप्टिमाइज गर्नुहोस् कम्पाइलरले प्रदर्शनको सम्भावित खर्चमा राउटेबिलिटी बढाउन नेटलिस्ट परिमार्जनहरू लागू गर्दछ।
जारी…
अनुकूलन मोड विवरण
उच्च शक्ति प्रयास कम्पाइलरले कम शक्तिको लागि संश्लेषण अनुकूलन गर्न उच्च प्रयास गर्दछ। उच्च शक्ति प्रयास संश्लेषण रन टाइम बढाउँछ।
आक्रामक शक्ति कम शक्तिको लागि संश्लेषण अनुकूलन गर्न आक्रामक प्रयास गर्दछ। कम्पाइलरले उच्च निर्दिष्ट वा अनुमानित टगल दरहरूसँग सिग्नलहरूको राउटिङ प्रयोगलाई कम गर्छ, अतिरिक्त गतिशील शक्ति बचत गर्छ तर सम्भावित रूपमा प्रदर्शनलाई असर गर्छ।
आक्रामक संकलन समय कम प्रयास र कम प्रदर्शन अनुकूलन संग डिजाइन लागू गर्न आवश्यक कम्पाइल समय घटाउँछ। यो विकल्पले केही विस्तृत रिपोर्टिङ प्रकार्यहरू पनि असक्षम पार्छ।

नोट: खोल्दै आक्रामक संकलन समय Intel Quartus प्राइम सेटिङहरू सक्षम गर्दछ File (.qsf) सेटिङहरू जुन अन्य .qsf सेटिङहरूले ओभरराइड गर्न सक्दैनन्।

डिजाइन स्पेस एक्सप्लोरर II संकलन रणनीतिहरू
DSE II ले तपाईंलाई स्रोत, कार्यसम्पादन, वा पावर अप्टिमाइजेसन लक्ष्यहरूको लागि इष्टतम परियोजना सेटिङहरू फेला पार्न अनुमति दिन्छ। DSE II ले तपाइँलाई निश्चित लक्ष्य प्राप्त गर्न सेटिङहरू र अवरोधहरूको विभिन्न प्रिसेट संयोजनहरू प्रयोग गरेर पुनरावृत्ति रूपमा डिजाइन कम्पाइल गर्न अनुमति दिन्छ। DSE II ले तपाइँको लक्ष्यहरू पूरा गर्नको लागि उत्तम सेटिङ संयोजन रिपोर्ट गर्दछ। DSE II ले पनि एडभान लिन सक्छtage बहुविध कम्प्यूटरहरूमा बीउ कम्पाइल गर्न समानान्तर क्षमताहरू। DSE II संकलन रणनीति सेटिङहरू पृष्ठ 4 मा तालिका 14 मा अनुकूलन मोड सेटिङहरू प्रतिध्वनित गर्दछ

डिजाइन स्पेस एक्सप्लोरर IIintel-AN-903-Accelerating-Timing-Closure-FIG-12

DSE II को लागि संकलन रणनीति निर्दिष्ट गर्न यी चरणहरू पालना गर्नुहोस्:

  1. DSE II सुरु गर्न (र Intel Quartus प्राइम सफ्टवेयर बन्द गर्नुहोस्), Tools ➤ Launch Design Space Explorer II मा क्लिक गर्नुहोस्। इन्टेल क्वार्टस प्राइम सफ्टवेयर बन्द भएपछि DSE II खुल्छ।
  2. DSE II टूलबारमा, अन्वेषण आइकनमा क्लिक गर्नुहोस्।
  3. अन्वेषण बिन्दुहरू विस्तार गर्नुहोस्।
  4. डिजाइन अन्वेषण चयन गर्नुहोस्। ती रणनीतिहरूलाई लक्षित गरी डिजाइन अन्वेषणहरू चलाउनको लागि कुनै पनि संकलन रणनीतिहरूलाई सक्षम पार्नुहोस्।

उच्च उपयोगको लागि भीड कम गर्नुहोस्

यन्त्र स्रोतहरूको 80% भन्दा बढी प्रयोग गर्ने डिजाइनहरूले सामान्यतया समय बन्द गर्नमा सबैभन्दा कठिनाई प्रस्तुत गर्दछ। भीड कम गर्न र समय बन्द गर्ने समयलाई सरल बनाउनको लागि तपाईंले निम्न म्यानुअल र स्वचालित प्रविधिहरू लागू गर्न सक्नुहुन्छ।

  • पृष्ठ 16 मा क्षेत्र र राउटेबिलिटी विकल्पहरूको साथ प्रयोग गर्नुहोस्
  • पृष्ठ 16 मा अंकगणित-गहन डिजाइनहरूको लागि भग्न संश्लेषणलाई विचार गर्नुहोस्

क्षेत्र र राउटेबिलिटी विकल्पहरूको साथ प्रयोग गर्नुहोस्

जब यन्त्र उपयोगले राउटिंग भीड निम्त्याउँछ, तपाईले आफ्नो डिजाइनको लागि स्रोतको उपयोग र भीड कम गर्न क्षेत्र र राउटेबिलिटी अप्टिमाइजेसन सेटिङहरू प्रयोग गर्न सक्नुहुन्छ। क्लिक गर्नुहोस् असाइनमेन्टहरू ➤ सेटिङहरू ➤ कम्पाइलर सेटिङहरू ➤ यी सेटिङहरू पहुँच गर्न अनुकूलन मोड:

क्षेत्र र राउटेबिलिटी विकल्पहरू

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

अंकगणित-गहन डिजाइनहरूको लागि भग्न संश्लेषणलाई विचार गर्नुहोस्

उच्च-थ्रुपुट, अंकगणित-गहन डिजाइनहरूको लागि, तपाईंले उपकरण स्रोतहरूको प्रयोग सुधार गर्न स्वचालित भग्न संश्लेषण अनुकूलन सक्षम गर्न सक्नुहुन्छ। भग्न संश्लेषण अप्टिमाइजेसनमा गुणक नियमितीकरण र रिटिमिङ, साथै निरन्तर अंकगणितीय प्याकिङ समावेश छ। अप्टिमाइजेसनले ठूलो संख्यामा कम सटीक अंकगणितीय कार्यहरू (जस्तै थप र गुणनहरू) सँग डिजाइनहरूलाई लक्षित गर्दछ। तपाईं विश्वव्यापी रूपमा वा विशिष्ट गुणकहरूको लागि मात्र भग्न संश्लेषण सक्षम गर्न सक्नुहुन्छ। आदर्श अवस्थाहरूमा, भग्न संश्लेषण अनुकूलनले 20-45% क्षेत्र घटाउन सक्छ।

गुणक नियमितीकरण र रिटाइमिङ
गुणक नियमितीकरण र रिटिमिङले अत्यधिक अनुकूलित सफ्ट गुणक कार्यान्वयनहरूको अनुमान प्रदर्शन गर्दछ। कम्पाइलरले दुई वा बढी पाइपलाइनहरूमा ब्याकवर्ड रिटाइमिङ लागू गर्न सक्छtagयदि आवश्यक हो। जब तपाइँ फ्र्याक्टल संश्लेषण सक्षम गर्नुहुन्छ, कम्पाइलरले गुणक नियमितकरण र हस्ताक्षरित र अहस्ताक्षरित गुणकहरूमा पुन: समय लागू गर्दछ।

चित्र १६. गुणक रिटाइमिङintel-AN-903-Accelerating-Timing-Closure-FIG-14

नोट

  • गुणक नियमितीकरणले केवल तर्क स्रोतहरू प्रयोग गर्दछ र DSP ब्लकहरू प्रयोग गर्दैन।
  • FRACTAL_SYNTHESIS QSF असाइनमेन्ट सेट गरिएको मोड्युलमा हस्ताक्षरित र अहस्ताक्षरित दुवै गुणकहरूमा गुणक नियमितीकरण र रिटाइमिङ लागू गरिन्छ।

निरन्तर अंकगणित प्याकिंग
निरन्तर अंकगणितीय प्याकिङले इन्टेल FPGA LABs मा फिट हुनको लागि इष्टतम आकारको तर्क ब्लकहरूमा अंकगणितीय गेटहरू पुन: संश्लेषण गर्दछ। यो अप्टिमाइजेसनले अंकगणितीय ब्लकहरूको लागि LAB स्रोतहरूको 100% उपयोग गर्न अनुमति दिन्छ। जब तपाइँ फ्र्याक्टल संश्लेषण सक्षम गर्नुहुन्छ, कम्पाइलरले सबै क्यारी चेनहरू र दुई-इनपुट तर्क गेटहरूमा यो अनुकूलन लागू गर्दछ। यो अप्टिमाइजेसनले एडर रूखहरू, गुणकहरू, र कुनै पनि अन्य अंकगणित-सम्बन्धित तर्कहरू प्याक गर्न सक्छ।

निरन्तर अंकगणित प्याकिंग

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

नोट

ध्यान दिनुहोस् कि निरन्तर अंकगणित प्याकिङले गुणक नियमितीकरणबाट स्वतन्त्र रूपमा काम गर्दछ। त्यसोभए, यदि तपाइँ एक गुणक प्रयोग गर्दै हुनुहुन्छ जुन नियमित गरिएको छैन (जस्तै तपाइँको आफ्नै गुणक लेख्नुहोस्) तब निरन्तर अंकगणित प्याकिङ अझै पनि सञ्चालन गर्न सक्छ। फ्र्याक्टल सिन्थेसिस अप्टिमाइजेसन डिप-लर्निङ एक्सेलरेटर वा अन्य उच्च-थ्रुपुट, अंकगणित-गहन कार्यहरू भएका डिजाइनहरूका लागि सबैभन्दा उपयुक्त छ जुन सबै DSP स्रोतहरू भन्दा बढी हुन्छ। भग्न संश्लेषण परियोजना-व्यापी सक्षम गर्नाले मोड्युलहरूमा अनावश्यक ब्लोट हुन सक्छ जुन भग्न अनुकूलनका लागि उपयुक्त छैन।

भग्न संश्लेषण सक्षम वा असक्षम गर्दै

Intel Stratix® 10 र Intel Agilex™ यन्त्रहरूका लागि, फ्र्याक्टल सिन्थेसिस अप्टिमाइजेसन साना मल्टिप्लायरहरूको लागि स्वचालित रूपमा चल्छ (Verilog HDL वा VHDL मा कुनै पनि A*B कथन जहाँ अपरेन्डहरूको बिट-चौडाइ 7 वा कम छ)। तपाईं निम्न विधिहरू मध्ये कुनै पनि प्रयोग गरेर यी यन्त्रहरूका लागि साना गुणकहरूको लागि स्वचालित फ्र्याक्टल संश्लेषण असक्षम गर्न सक्नुहुन्छ:

  • RTL मा, DSP मल्टिस्टाइल सेट गर्नुहोस्, "Multstyle Verilog HDL Synthesis Attribute" ले वर्णन गर्दछ। पूर्वका लागिample: (* multstyle = "dsp" *) मोड्युल foo(…); मोड्युल foo(..) /* synthesis multstyle = "dsp" */;
  • .qsf मा file, निम्नानुसार असाइनमेन्टको रूपमा थप्नुहोस्: set_instance_assignment -name DSP_BLOCK_BALANCING_IMPLEMENTATION \DSP_BLOCKS -to r

थप रूपमा, Intel Stratix 10, Intel Agilex, Intel Arria® 10, र Intel Cyclone® 10 GX उपकरणहरूका लागि, तपाईंले फ्र्याक्टल सिन्थेसिस GUI विकल्प वा सम्बन्धित FRACTAL_SYNTHESIS .qfsassignment: qfsassignment को साथ विश्वव्यापी रूपमा वा विशिष्ट गुणकहरूको लागि फ्र्याक्टल संश्लेषण सक्षम गर्न सक्नुहुन्छ।

  • RTL मा, निम्नानुसार altera_attribute प्रयोग गर्नुहोस्: (* altera_attribute = "-name FRACTAL_SYNTHESIS ON" *)
  • .qsf मा file, निम्नानुसार असाइनमेन्टको रूपमा थप्नुहोस्: set_global_assignment -name FRACTAL_SYNTHESIS ON -entity

प्रयोगकर्ता इन्टरफेसमा, यी चरणहरू पालना गर्नुहोस्:

  1. असाइनमेन्ट ➤ असाइनमेन्ट सम्पादकमा क्लिक गर्नुहोस्।
  2. असाइनमेन्ट नामको लागि फ्र्याक्टल सिन्थेसिस चयन गर्नुहोस्, मानको लागि अन, निकायको लागि अंकगणित-गहन इकाई नाम, र प्रति स्तम्भमा एउटा उदाहरण नाम। तपाइँ एक वाइल्डकार्ड (*) प्रविष्ट गर्न सक्नुहुन्छ संस्थाको सबै उदाहरणहरू असाइन गर्नको लागि।

चित्र 18. असाइनमेन्ट सम्पादकमा फ्र्याक्टल सिन्थेसिस असाइनमेन्ट

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

सम्बन्धित जानकारी

  • मल्टीस्टाइल भेरिलॉग एचडीएल संश्लेषण विशेषता
    • Intel Quartus प्राइम मद्दतमा।

सन्तोषजनक परिणामहरू सुरक्षित गर्नुहोस्

तपाईं घडी, RAM, र DSP हरू सम्बन्धित ठूला ब्लकहरूको प्लेसमेन्ट लक गर्न सन्तोषजनक संकलन परिणामहरू ब्याक-एनोटेट गरेर समय बन्द गर्ने प्रक्रियालाई सरल बनाउन सक्नुहुन्छ। त्यसै गरी, डिजाइन ब्लक पुन: प्रयोग प्रविधिले तपाइँलाई निश्चित FPGA परिधि वा कोर तर्क डिजाइन ब्लकहरू (एक पदानुक्रमिक डिजाइन उदाहरण समावेश गर्ने तर्क) को लागि सन्तोषजनक संकलन परिणामहरू सुरक्षित गर्न सक्षम बनाउँछ, र त्यसपछि ती ब्लकहरू पछिको संकलनहरूमा पुन: प्रयोग गर्नुहोस्। डिजाइन ब्लक पुन: प्रयोगमा, तपाईंले पदानुक्रमिक उदाहरणलाई डिजाइन विभाजनको रूपमा नियुक्त गर्नुहुन्छ, र त्यसपछि सफल संकलन पछि विभाजनलाई सुरक्षित र निर्यात गर्नुहोस्। सन्तोषजनक नतिजाहरूको संरक्षण र पुन: प्रयोगले तपाईंलाई कम्पाइलरको प्रयास र समयलाई बन्द समय नभएको डिजाइनको अंशहरूमा मात्र केन्द्रित गर्न अनुमति दिन्छ।

समय बन्द गर्ने समस्या

  • लक डाउन नभएसम्म, कम्पाइलरले विभिन्न कारकहरूको आधारमा कम्पाइलेशनदेखि कम्पाइलेशनसम्म विभिन्न डिजाइन ब्लकहरू, घडीहरू, RAMs र DSP हरू लागू गर्न सक्छ।

समय बन्द समाधान

  • पृष्ठ 20 मा घडीहरू, RAMs, र DSP हरू लक गर्नुहोस् — घडीहरू, RAMs, र DSPहरूसँग सम्बन्धित ठूला ब्लकहरूको प्लेसमेन्ट लक गर्न सन्तोषजनक संकलन परिणामहरू ब्याक-एनोटेट गर्नुहोस्।
  • पृष्ठ 21 मा डिजाइन विभाजन परिणामहरू सुरक्षित गर्नुहोस् — समय मिल्ने ब्लकहरूका लागि विभाजनहरू सुरक्षित गर्नुहोस्, र अन्य डिजाइन ब्लकहरूमा अनुकूलन फोकस गर्नुहोस्।

सम्बन्धित जानकारी

  • ब्याक-एनोटेट असाइनमेन्टहरू संवाद बक्स मद्दत
  • AN-899: द्रुत संरक्षणको साथ कम्पाइल समय घटाउँदै
  • इंटेल क्वार्टस प्राइम प्रो संस्करण प्रयोगकर्ता गाइड: ब्लक-आधारित डिजाइन

लक डाउन घडीहरू, RAMs, र DSPs

तपाईं घडी, RAM, र DSP हरू सम्बन्धित ठूला ब्लकहरूको प्लेसमेन्ट लक गर्न सन्तोषजनक संकलन परिणामहरू ब्याक-एनोटेट गरेर समय बन्द गर्ने प्रक्रियालाई सरल बनाउन सक्नुहुन्छ। ठूलो ब्लक प्लेसमेन्ट बन्द गर्नाले कम आवाजको साथ उच्च fMAX उत्पादन गर्न सक्छ। RAMs र DSPs जस्ता ठूला ब्लकहरू लक गर्न प्रभावकारी हुन सक्छ किनभने यी ब्लकहरूमा नियमित LABs भन्दा बढी जडान हुन्छ, प्लेसमेन्टको समयमा आन्दोलन जटिल हुन्छ। जब बीउले उपयुक्त RAM र DSP प्लेसमेन्टबाट राम्रो नतिजाहरू उत्पादन गर्छ, तपाईंले ब्याक-एनोटेसनको साथ त्यो प्लेसमेन्ट क्याप्चर गर्न सक्नुहुन्छ। त्यसपछिका कम्पाइलहरूले राम्रो बीउबाट उच्च गुणस्तरको RAM र DSP प्लेसमेन्टबाट फाइदा लिन सक्छन्। यो प्रविधिले धेरै थोरै RAM वा DSP हरू भएका डिजाइनहरूलाई महत्त्वपूर्ण रूपमा फाइदा गर्दैन। Assignments मा क्लिक गर्नुहोस् ➤ पछिल्लो कम्पाइलेशनबाट .qsf मा प्रयोग गर्नको लागि यन्त्र स्रोत असाइनमेन्टहरू प्रतिलिपि गर्नको लागि ब्याक-एनोटेट असाइनमेन्टहरू। ब्याक-एनोटेसन प्रकार सूचीमा ब्याक-एनोटेसन प्रकार चयन गर्नुहोस्।

ब्याक-एनोटेट असाइनमेन्ट संवाद बाकस

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

वैकल्पिक रूपमा, तपाइँ निम्न quartus_cdb कार्यान्वयनयोग्य संग ब्याक-एनोटेसन चलाउन सक्नुहुन्छ। quartus_cdb -ब्याक_एनोटेट [–डीएसपी] [–राम] [–घड़ी]

नोट

  • कार्यान्वयनयोग्यले अतिरिक्त [–dsp], [–ram], र [–clock] चरहरूलाई समर्थन गर्दछ जुन ब्याक-एनोटेट असाइनमेन्ट संवाद बक्सले अझै समर्थन गर्दैन।

डिजाइन विभाजन परिणामहरू सुरक्षित गर्नुहोस्

नोट

  • डिजाइन विभाजन गरेपछि, तपाईंले समय मिल्ने ब्लकहरूका लागि विभाजनहरू सुरक्षित गर्न सक्नुहुन्छ, र अन्य डिजाइन ब्लकहरूमा अनुकूलन फोकस गर्नुहोस्। थप रूपमा, फास्ट प्रिजर्भ विकल्पले कम्पाइलेशनको क्रममा इन्टरफेस तर्कमा संरक्षित विभाजनको तर्कलाई सरल बनाउँछ, जसले गर्दा विभाजनको लागि संकलन समय घटाउँछ। फास्ट संरक्षणले रूट विभाजन पुन: प्रयोग र आंशिक पुन: कन्फिगरेसन डिजाइनहरूलाई मात्र समर्थन गर्दछ। समय बन्द गर्नका लागि चुनौतीपूर्ण उप-मोड्युलहरू भएका डिजाइनहरूका लागि, तपाईंले मोड्युलको विभाजनको स्ट्यान्ड-अलोन अप्टिमाइजेसन र कम्पाइलेशन गर्न सक्नुहुन्छ, र त्यसपछिको कम्पाइलेशनहरूमा कार्यान्वयनलाई सुरक्षित राख्न समय-बन्द मोड्युल निर्यात गर्न सक्नुहुन्छ।

डिजाइन विभाजन परिणामहरू संरक्षण गर्दै

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

ब्लक-आधारित डिजाइन डिजाइन विभाजन आवश्यक छ। डिजाइन विभाजनले तपाइँलाई तपाइँको डिजाइनमा व्यक्तिगत तर्क ब्लकहरू सुरक्षित गर्न अनुमति दिन्छ, तर विभाजन क्रसिङ र फ्लोरप्लान प्रभावहरूको कारणले सम्भावित प्रदर्शन हानि पनि परिचय गर्न सक्छ। ब्लक-आधारित डिजाइन प्रविधिहरू प्रयोग गर्दा तपाईंले यी कारकहरूलाई सन्तुलन गर्न आवश्यक छ। निम्न उच्च स्तरका चरणहरूले मूल विभाजन पुन: प्रयोग डिजाइनहरूको लागि विभाजन संरक्षण प्रवाहको वर्णन गर्दछ:

  1. प्रशोधन ➤ सुरु ➤ विश्लेषण र विस्तार सुरु गर्नुहोस् क्लिक गर्नुहोस्।
  2. प्रोजेक्ट नेभिगेटरमा, टाइमिङ बन्द डिजाइन उदाहरणमा दायाँ क्लिक गर्नुहोस्, डिजाइन विभाजनमा बिन्दु गर्नुहोस्, र पृष्ठ 23 मा वर्णन गरिएको डिजाइन विभाजन सेटिङहरू अनुसार, विभाजन प्रकार चयन गर्नुहोस्।

डिजाइन विभाजनहरू सिर्जना गर्नुहोस्

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

  1. विभाजनको लागि तर्क लक फ्लोर प्लानिङ अवरोधहरू परिभाषित गर्नुहोस्। डिजाइन विभाजन विन्डोमा, विभाजनमा दायाँ क्लिक गर्नुहोस् र त्यसपछि तर्क लक क्षेत्र क्लिक गर्नुहोस् ➤ नयाँ तर्क लक क्षेत्र सिर्जना गर्नुहोस्। सुनिश्चित गर्नुहोस् कि क्षेत्र विभाजनमा सबै तर्कहरू संलग्न गर्न पर्याप्त ठूलो छ।
  2. संकलन पछि विभाजन परिणामहरू निर्यात गर्न, डिजाइन विभाजन सञ्झ्यालमा, पोस्ट फाइनल निर्यातको रूपमा विभाजन .qdb निर्दिष्ट गर्नुहोस्। File.

पोस्ट अन्तिम निर्यात File

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

  1. डिजाइन कम्पाइल गर्न र विभाजन निर्यात गर्न, संकलन ड्यासबोर्डमा कम्पाइल डिजाइन क्लिक गर्नुहोस्।
  2. Intel Quartus प्राइम सफ्टवेयरमा शीर्ष-स्तर परियोजना खोल्नुहोस्।
  3. Assignments ➤ Settings ➤ Compiler Settings ➤ Incremental Compile मा क्लिक गर्नुहोस्। फास्ट संरक्षण विकल्प खोल्नुहोस्।

द्रुत संरक्षण विकल्प

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

  1. ठीक क्लिक गर्नुहोस्।
  2. डिजाईन विभाजन सञ्झ्यालमा, विभाजन डाटाबेसको रूपमा निर्यात गरिएको .qdb निर्दिष्ट गर्नुहोस् File विवादित विभाजनको लागि। यो .qdb अब परियोजनामा ​​यो विभाजनको लागि स्रोत हो। जब तपाईँले द्रुत संरक्षण विकल्प सक्षम गर्नुहुन्छ, कम्पाइलरले आयात गरिएको विभाजनको तर्कलाई इन्टरफेस तर्कमा मात्र घटाउँछ, जसले गर्दा विभाजनलाई आवश्यक पर्ने कम्पाइलेशन समय घटाउँछ।

डिजाइन विभाजन सेटिङहरू

डिजाइन विभाजन सेटिङहरू

विकल्प विवरण
विभाजन नाम विभाजन नाम निर्दिष्ट गर्दछ। प्रत्येक विभाजन नाम अद्वितीय हुनुपर्छ र केवल अल्फान्यूमेरिक वर्णहरू समावेश हुनुपर्छ। Intel Quartus प्राइम सफ्टवेयरले स्वचालित रूपमा प्रत्येक परियोजना संशोधनको लागि शीर्ष-स्तर (|) "root_partition" सिर्जना गर्दछ।
पदानुक्रम पथ तपाईंले विभाजनमा तोक्नुभएको इकाई उदाहरणको पदानुक्रम मार्ग निर्दिष्ट गर्दछ। तपाईंले यो मान मा निर्दिष्ट गर्नुभयो नयाँ विभाजन सिर्जना गर्नुहोस् संवाद बक्स। मूल विभाजन पदानुक्रम मार्ग हो |।
टाइप गर्नुहोस् कम्पाइलरले विभाजनलाई कसरी प्रक्रिया र कार्यान्वयन गर्छ भन्ने नियन्त्रण गर्ने निम्न विभाजन प्रकारहरू मध्ये एउटा निर्दिष्ट गर्न डबल-क्लिक गर्नुहोस्:
जारी…
विकल्प विवरण
•    पूर्वनिर्धारित- मानक विभाजन पहिचान गर्दछ। कम्पाइलरले सम्बन्धित डिजाइन स्रोत प्रयोग गरेर विभाजन प्रक्रिया गर्दछ files.

•    पुन: कन्फिगर योग्य- आंशिक पुन: कन्फिगरेसन प्रवाहमा पुन: कन्फिगरेसन विभाजन पहिचान गर्दछ। निर्दिष्ट गर्नुहोस् पुन: कन्फिगर योग्य PR प्रवाहमा विभाजनको रिफिट अनुमति दिँदै, संश्लेषण परिणामहरू सुरक्षित गर्न टाइप गर्नुहोस्।

•    आरक्षित कोर- यन्त्र परिधि पुन: प्रयोग गर्ने उपभोक्ताद्वारा मूल विकासको लागि आरक्षित गरिएको ब्लक-आधारित डिजाइन प्रवाहमा विभाजन पहिचान गर्दछ।

संरक्षण स्तर विभाजनको लागि निम्न संरक्षण स्तरहरू मध्ये एक निर्दिष्ट गर्दछ:

•    सेट छैन- कुनै संरक्षण स्तर निर्दिष्ट गर्दैन। विभाजन स्रोतबाट कम्पाइल हुन्छ files.

•    संश्लेषित- विभाजनले संश्लेषित स्न्यापसट प्रयोग गरेर कम्पाइल गर्दछ।

•    अन्तिम- विभाजनले अन्तिम स्न्यापसट प्रयोग गरेर कम्पाइल गर्छ।

संग संरक्षण स्तर of संश्लेषित or अन्तिम, स्रोत कोडमा परिवर्तनहरू संश्लेषणमा देखा पर्दैन।

खाली कम्पाइलरले छोड्ने खाली विभाजन निर्दिष्ट गर्दछ। यो सेटिङ संग असंगत छ आरक्षित कोर विभाजन डाटाबेस File समान विभाजनको लागि सेटिङहरू। द संरक्षण स्तर हुनुपर्छ सेट छैन। खाली विभाजनमा कुनै पनि बाल विभाजन हुन सक्दैन।
विभाजन डाटाबेस File विभाजन डाटाबेस निर्दिष्ट गर्दछ File (.qdb) जुन कम्पाइलरले विभाजनको संकलन गर्दा प्रयोग गर्दछ। तपाईंले s का लागि .qdb निर्यात गर्नुहुन्छtagकम्पाइलेशनको e जुन तपाइँ पुन: प्रयोग गर्न चाहनुहुन्छ (संश्लेषण वा अन्तिम)। ती परिणामहरूलाई अर्को सन्दर्भमा पुन: प्रयोग गर्न विभाजनमा .qdb असाइन गर्नुहोस्।
संस्था पुन: बाध्यकारी • PR प्रवाह - प्रत्येक कार्यान्वयन संशोधनमा पूर्वनिर्धारित व्यक्तित्व प्रतिस्थापन गर्ने निकाय निर्दिष्ट गर्दछ।

• रूट विभाजन पुन: प्रयोग प्रवाह - उपभोक्ता परियोजनामा ​​आरक्षित कोर तर्कलाई प्रतिस्थापन गर्ने निकाय निर्दिष्ट गर्दछ।

रङ चिप प्लानर र डिजाइन विभाजन योजनाकार डिस्प्लेमा विभाजनको रङ-कोडिङ निर्दिष्ट गर्दछ।
पोस्ट संश्लेषण निर्यात File तपाईंले निर्दिष्ट गर्नुभएको .qdb मा विभाजनको लागि पोस्ट-सिंथेसिस संकलन परिणामहरू स्वचालित रूपमा निर्यात गर्दछ, प्रत्येक पटक विश्लेषण र संश्लेषण चल्छ। तपाईँले कुनै पनि डिजाइन विभाजन स्वचालित रूपमा निर्यात गर्न सक्नुहुन्छ जुनमा संरक्षित अभिभावक विभाजन छैन, root_partition सहित।
पोस्ट अन्तिम निर्यात File तपाईंले निर्दिष्ट गर्नुभएको .qdb मा विभाजनको लागि पोस्ट-फाइनल संकलन परिणामहरू स्वचालित रूपमा निर्यात गर्दछ, प्रत्येक पटक अन्तिम stagफिटर रन को ई। तपाईँले कुनै पनि डिजाइन विभाजन स्वचालित रूपमा निर्यात गर्न सक्नुहुन्छ जुनमा संरक्षित अभिभावक विभाजन छैन, root_partition सहित।

AN 903 कागजात संशोधन इतिहास

यस कागजातमा निम्न संशोधन इतिहास छ:

कागजात संस्करण इंटेल क्वार्टस प्राइम संस्करण परिवर्तनहरू
2021.02.25 19.3 "तान" मा "तान" लाई बदलियो डिजाइन RTL को विश्लेषण र अनुकूलन गर्नुहोस् विषय।
2020.03.23 19.3 कोड s मा सिन्ट्याक्स त्रुटि सच्याइएकोamp"लक डाउन घडीहरू, RAMs, र DSPs" शीर्षकमा।
2019.12.03 19.3 • पहिलो सार्वजनिक विमोचन।

कागजातहरू / स्रोतहरू

intel AN 903 एक्सेलेरेटिङ टाइमिङ क्लोजर [pdf] प्रयोगकर्ता गाइड
AN 903 एक्सेलेरेटिङ टाइमिङ क्लोजर, AN 903, एक्सेलेरेटिङ टाइमिङ क्लोजर, टाइमिङ क्लोजर

सन्दर्भहरू

एक टिप्पणी छोड्नुहोस्

तपाईंको इमेल ठेगाना प्रकाशित गरिने छैन। आवश्यक क्षेत्रहरू चिन्ह लगाइएका छन् *