तर्क अनुकरण: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 2: Line 2:
|कार्यक्रम की कार्यक्षमता का अनुकरण|उच्च-स्तरीय अनुकरण}}
|कार्यक्रम की कार्यक्षमता का अनुकरण|उच्च-स्तरीय अनुकरण}}


तर्क अनुकरण [[डिजिटल सर्किट]] और [[हार्डवेयर विवरण भाषा|हार्डवेयर विवरण भाषाओं]] के व्यवहार की भविष्यवाणी करने के लिए [[कंप्यूटर सिमुलेशन|अनुकरण सॉफ़्टवेयर]] का उपयोग है।<ref name="WangChang2009">{{cite book|author1=Laung-Terng Wang|author2=Yao-Wen Chang|author3=Kwang-Ting (Tim) Cheng|title=Electronic Design Automation: Synthesis, Verification, and Test|url=https://books.google.com/books?id=3XBe7dLb5NEC&q=%22logic+simulation%22|date=11 March 2009|publisher=Morgan Kaufmann|isbn=978-0-08-092200-3}}</ref><ref name="LitovskiZwolinski1996">{{cite book|author1=V. Litovski|author2=Mark Zwolinski|title=वीएलएसआई सर्किट सिमुलेशन और अनुकूलन|url=https://books.google.com/books?id=Ca9DJs9-SPYC&q=%22logic+simulation%22|date=31 December 1996|publisher=Springer Science & Business Media|isbn=978-0-412-63860-2}}</ref> अनुकरण भौतिक पृथक्करण के अलग-अलग डिग्री पर किया जा सकता है, जैसे ट्रांजिस्टर स्तर, गेट स्तर, [[रजिस्टर-ट्रांसफर स्तर]] (आरटीएल), [[इलेक्ट्रॉनिक प्रणाली-स्तरीय डिजाइन और सत्यापन|इलेक्ट्रॉनिक प्रणाली-स्तरीय]] (ईएसएल), या व्यवहार स्तर पर।  
तर्क अनुकरण [[डिजिटल सर्किट]] और [[हार्डवेयर विवरण भाषा|हार्डवेयर विवरण भाषाओं]] के व्यवहार की भविष्यवाणी करने के लिए [[कंप्यूटर सिमुलेशन|अनुकरण सॉफ़्टवेयर]] का उपयोग है।<ref name="WangChang2009">{{cite book|author1=Laung-Terng Wang|author2=Yao-Wen Chang|author3=Kwang-Ting (Tim) Cheng|title=Electronic Design Automation: Synthesis, Verification, and Test|url=https://books.google.com/books?id=3XBe7dLb5NEC&q=%22logic+simulation%22|date=11 March 2009|publisher=Morgan Kaufmann|isbn=978-0-08-092200-3}}</ref><ref name="LitovskiZwolinski1996">{{cite book|author1=V. Litovski|author2=Mark Zwolinski|title=वीएलएसआई सर्किट सिमुलेशन और अनुकूलन|url=https://books.google.com/books?id=Ca9DJs9-SPYC&q=%22logic+simulation%22|date=31 December 1996|publisher=Springer Science & Business Media|isbn=978-0-412-63860-2}}</ref> अनुकरण भौतिक पृथक्करण के अलग-अलग डिग्री पर किया जा सकता है, जैसे ट्रांजिस्टर स्तर, गेट स्तर, [[रजिस्टर-ट्रांसफर स्तर]] (आरटीएल), [[इलेक्ट्रॉनिक प्रणाली-स्तरीय डिजाइन और सत्यापन|इलेक्ट्रॉनिक प्रणाली-स्तर]] (ईएसएल), या व्यवहार स्तर पर।  


== सत्यापन में प्रयोग करें ==
== सत्यापन में प्रयोग करें ==
Line 8: Line 8:


== अनुकरण की लंबाई ==
== अनुकरण की लंबाई ==
'''डिज़ाइन''' को डिबग करने और फिर सत्यापित करने के लिए आवश्यक प्रयास का स्तर डिज़ाइन की परिपक्वता के समानुपाती होता है। यही है, डिजाइन के जीवन की शुरुआत में, बग और गलत व्यवहार प्रायः जल्दी से पाए जाते हैं। जैसे-जैसे डिजाइन परिपक्व होता है, अनुकरण को चलाने के लिए अधिक समय और संसाधनों की आवश्यकता होगी, और त्रुटियों को खोजने में उत्तरोत्तर अधिक समय लगेगा। यह विशेष रूप से संदिग्ध है जब आधुनिकप्रणा ली के लिए घटकों का अनुकरण करते हैं, अनुकरण पर एकल घड़ी चक्र में स्थिति बदलने वाले प्रत्येक घटक को अनुकरण करने के लिए कई घड़ी चक्रों की आवश्यकता होगी।
डिज़ाइन को डिबग करने और फिर सत्यापित करने के लिए आवश्यक प्रयास का स्तर डिज़ाइन की परिपक्वता के समानुपाती होता है। यही है, डिजाइन के जीवन की शुरुआत में, दोष और गलत व्यवहार प्रायः जल्दी से पाए जाते हैं। जैसे-जैसे डिजाइन तैयार होता है, अनुकरण को चलाने के लिए अधिक समय और संसाधनों की आवश्यकता होगी, और त्रुटियों को खोजने में लगातार अधिक समय लगेगा। यह विशेष रूप से संदिग्ध है जब आधुनिक प्रणाली के लिए घटकों का अनुकरण करते हैं, अनुकरण पर एकल घड़ी चक्र में स्थिति बदलने वाले प्रत्येक घटक को अनुकरण करने के लिए कई घड़ी चक्रों की आवश्यकता होगी।


इस मुद्दे के लिए सीधा दृष्टिकोण इसके बजाय [[क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला]] पर सर्किट का अनुकरण करना हो सकता है। अनुकरण के विकल्प के रूप में [[औपचारिक सत्यापन]] का भी पता लगाया जा सकता है, हालांकि औपचारिक प्रमाण हमेशा संभव या सुविधाजनक नहीं होता है।
इस मुद्दे के लिए सीधा दृष्टिकोण इसके बजाय [[क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला]] पर सर्किट का अनुकरण करना हो सकता है। अनुकरण के विकल्प के रूप में [[औपचारिक सत्यापन]] का भी पता लगाया जा सकता है, हालांकि औपचारिक प्रमाण हमेशा संभव या सुविधाजनक नहीं होता है।


तर्क अनुकरण में तेजी लाने का एक संभावित तरीका वितरित और समांतर संगणनाओं का उपयोग कर रहा है।<ref>Software system for distributed [[Event-driven programming|event-driven]] logic simulation. Ladyzhensky Y.V., Popoff Y.V. Proceedings of IEEE East-West Design & Test Workshop(EWDTW'05). IEEE EWDTW, 2005, p.119-122 {{ISBN|966-659-113-8}}</ref>  
तर्क अनुकरण में तेजी लाने का संभावित तरीका वितरित और समांतर संगणनाओं का उपयोग कर रहा है।<ref>Software system for distributed [[Event-driven programming|event-driven]] logic simulation. Ladyzhensky Y.V., Popoff Y.V. Proceedings of IEEE East-West Design & Test Workshop(EWDTW'05). IEEE EWDTW, 2005, p.119-122 {{ISBN|966-659-113-8}}</ref>  


अनुकरण की संपूर्णता को मापने में सहायता के लिए, [[ कोड कवरेज़ | कोड कवरेज़]] का आकलन करने के लिए उपकरण मौजूद हैं,<ref>{{cite conference
अनुकरण की संपूर्णता को मापने में सहायता के लिए, [[ कोड कवरेज़ | कोड कवरेज़]] का आकलन करने के लिए उपकरण मौजूद हैं,<ref>{{cite conference
Line 21: Line 21:
   |year=1995
   |year=1995
   |publisher=IEEE
   |publisher=IEEE
   |url=https://ieeexplore.ieee.org/document/512503 }}</ref> कार्यात्मक कवरेज, परिमित राज्य मशीन (एफएसएम) कवरेज, और कई अन्य मेट्रिक्स।<ref>{{cite conference
   |url=https://ieeexplore.ieee.org/document/512503 }}</ref> कार्यात्मक आवृत्त क्षेत्र, परिमित राज्य मशीन (एफएसएम) कवरेज, और कई अन्य मेट्रिक्स।<ref>{{cite conference
   |title=Coverage analysis techniques for HDL design validation
   |title=Coverage analysis techniques for HDL design validation
   |author=Jou, Jing-Yang and Liu, Chien-Nan Jimmy
   |author=Jou, Jing-Yang and Liu, Chien-Nan Jimmy

Revision as of 20:30, 25 March 2023

तर्क अनुकरण डिजिटल सर्किट और हार्डवेयर विवरण भाषाओं के व्यवहार की भविष्यवाणी करने के लिए अनुकरण सॉफ़्टवेयर का उपयोग है।[1][2] अनुकरण भौतिक पृथक्करण के अलग-अलग डिग्री पर किया जा सकता है, जैसे ट्रांजिस्टर स्तर, गेट स्तर, रजिस्टर-ट्रांसफर स्तर (आरटीएल), इलेक्ट्रॉनिक प्रणाली-स्तर (ईएसएल), या व्यवहार स्तर पर।

सत्यापन में प्रयोग करें

हार्डवेयर डिजाइन करने में सत्यापन प्रक्रिया के हिस्से के रूप में तर्क अनुकरण का उपयोग किया जा सकता है।[3] अनुकरण में उपयोगकर्ता को परिचित रूप और अनुभव प्रदान करने का लाभ होता है जिसमें यह उसी भाषा और डिजाइन में उपयोग किए गए प्रतीकों से निर्मित होता है। उपयोगकर्ता को डिज़ाइन के साथ परस्पर प्रभाव करने की अनुमति देकर, अनुकरण डिज़ाइनर के लिए उनके डिज़ाइन पर प्रतिक्रिया प्राप्त करने का स्वाभाविक तरीका है।

अनुकरण की लंबाई

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

इस मुद्दे के लिए सीधा दृष्टिकोण इसके बजाय क्षेत्र में प्रोग्राम की जा सकने वाली द्वार श्रंखला पर सर्किट का अनुकरण करना हो सकता है। अनुकरण के विकल्प के रूप में औपचारिक सत्यापन का भी पता लगाया जा सकता है, हालांकि औपचारिक प्रमाण हमेशा संभव या सुविधाजनक नहीं होता है।

तर्क अनुकरण में तेजी लाने का संभावित तरीका वितरित और समांतर संगणनाओं का उपयोग कर रहा है।[4]

अनुकरण की संपूर्णता को मापने में सहायता के लिए, कोड कवरेज़ का आकलन करने के लिए उपकरण मौजूद हैं,[5] कार्यात्मक आवृत्त क्षेत्र, परिमित राज्य मशीन (एफएसएम) कवरेज, और कई अन्य मेट्रिक्स।[6]

इवेंट अनुकरण बनाम चक्र अनुकरण

असतत घटना अनुकरण डिजाइन को सरल समय की जानकारी रखने की अनुमति देता है - सिग्नल को एक स्थान से दूसरे स्थान पर जाने के लिए आवश्यक देरी। अनुकरण के दौरान, सिग्नल परिवर्तन को घटनाओं के रूप में ट्रैक किया जाता है। एक निश्चित समय पर परिवर्तन एक निश्चित देरी के बाद एक घटना को ट्रिगर करता है। घटनाओं को उस समय के अनुसार क्रमबद्ध किया जाता है जब वे घटित होंगे, और जब किसी विशेष समय के लिए सभी घटनाओं को संभाला जाता है, तो सिम्युलेटेड समय अगले निर्धारित कार्यक्रम के समय तक आगे बढ़ जाता है। ईवेंट अनुकरण कितनी तेजी से चलता है यह संसाधित होने वाली घटनाओं की संख्या (मॉडल में गतिविधि की मात्रा) पर निर्भर करता है।[7] जबकि ईवेंट अनुकरण सिग्नल टाइमिंग के संबंध में कुछ प्रतिक्रिया प्रदान कर सकता है, यह स्थिर समय विश्लेषण के लिए प्रतिस्थापन नहीं है।

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

हालांकि, चिप डिजाइन के रुझान सर्किट में गतिविधि कारक में कमी के कारण सापेक्ष प्रदर्शन प्राप्त करने वाले इवेंट अनुकरण की ओर इशारा करते हैं (घड़ी गेटिंग और पावर गेटिंग जैसी तकनीकों के कारण, जो बिजली अपव्यय को कम करने के प्रयास में बहुत अधिक सामान्य रूप से उपयोग किए जा रहे हैं)। इन मामलों में, चूंकि घटना अनुकरण केवल आवश्यक घटनाओं का अनुकरण करता है, प्रदर्शन अब चक्र अनुकरण पर नुकसान नहीं हो सकता है। इवेंट अनुकरण में अधिक लचीलेपन का लाभ भी है, डिजाइन सुविधाओं को संभालना साइकिल अनुकरण के साथ संभालना मुश्किल है, जैसे कि अतुल्यकालिक तर्क और असंगत घड़ियां। इन विचारों के कारण, लगभग सभी व्यावसायिक तर्क सिमुलेटरों में एक घटना आधारित क्षमता होती है, भले ही वे मुख्य रूप से चक्र आधारित तकनीकों पर निर्भर हों।[8]


यह भी देखें

संदर्भ

  1. Laung-Terng Wang; Yao-Wen Chang; Kwang-Ting (Tim) Cheng (11 March 2009). Electronic Design Automation: Synthesis, Verification, and Test. Morgan Kaufmann. ISBN 978-0-08-092200-3.
  2. V. Litovski; Mark Zwolinski (31 December 1996). वीएलएसआई सर्किट सिमुलेशन और अनुकूलन. Springer Science & Business Media. ISBN 978-0-412-63860-2.
  3. Bombieri, Nicola; Fummi, Franco; Pravadelli, Graziano (May 2006). "सत्यापन के लिए हार्डवेयर डिजाइन और सिमुलेशन". Lecture Notes in Computer Science: 1–29.
  4. Software system for distributed event-driven logic simulation. Ladyzhensky Y.V., Popoff Y.V. Proceedings of IEEE East-West Design & Test Workshop(EWDTW'05). IEEE EWDTW, 2005, p.119-122 ISBN 966-659-113-8
  5. Wang, Tsu-Hua and Tan, Chong Guan (1995). Practical code coverage for Verilog. 1995 IEEE International Verilog HDL Conference. IEEE. pp. 99–104.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  6. Jou, Jing-Yang and Liu, Chien-Nan Jimmy (1999). Coverage analysis techniques for HDL design validation. Asia Pacific CHip Design Languages. pp. 48–55.{{cite conference}}: CS1 maint: multiple names: authors list (link)
  7. "नेटवर्क मॉडलिंग और सिमुलेशन पर्यावरण" (PDF). Defense Technical Information Center. Retrieved January 1, 2023.
  8. Electronic Design Automation For Integrated Circuits Handbook, by Lavagno, Martin, and Scheffer, ISBN 0-8493-3096-3, a survey of the field of EDA. The above summary was derived, with permission, from Volume I, Chapter 16, Digital Simulation, by John Sanguinetti.