फॉर्मल ए माइंड-स्ट्रेचर पर इंटेल कीनोट

फॉर्मल ए माइंड-स्ट्रेचर पर इंटेल कीनोट

स्रोत नोड: 2528571

सिनोप्सिस ने सॉल्वनेट साइट पर इंटेल ग्राफिक्स के डॉ. थियो ड्रेने द्वारा दी गई एक आकर्षक बातचीत पोस्ट की है। विषय डेटापथ समतुल्यता जाँच है। ऐसा लग सकता है कि यह एक और सिनोप्सिस वीसी औपचारिक डीपीवी समर्थन है, लेकिन फिर भी आपको इसे देखना चाहिए। यह औपचारिक रूप से उपयोग और विचारों पर एक दिमाग-विस्तारित चर्चा है जो आपको नियमित उपयोगकर्ता-गाइड प्रकार की पिच से परे और अधिक आकर्षक क्षेत्र में ले जाएगी।

औपचारिक पर इंटेल कीनोट

बौद्धिक समझ बनाम नमूना परीक्षण

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

औपचारिकता आपको कार्यक्षमता को गहरे स्तर पर समझने के लिए प्रोत्साहित करती है (कम से कम यदि आप एक मूल्यवान परिणाम देना चाहते हैं)। उपरोक्त उदाहरण में, एक सरल प्रश्न - क्या z कभी भी सभी 1 हो सकता है - एक सिम्युलेटर पर एक अरब चक्रों में एक उदाहरण प्रदर्शित करने में विफल रहता है। आश्चर्य की बात नहीं है, क्योंकि यह एक चरम कोने का मामला है। एक औपचारिक परीक्षण 188 सेकंड में एक विशिष्ट और बहुत गैर-स्पष्ट उदाहरण प्रदान करता है और थोड़े कम समय में यह साबित कर सकता है कि यह एकमात्र ऐसा मामला है।

ठीक है औपचारिक ने वह किया जो गतिशील परीक्षण नहीं कर सका, लेकिन इससे भी महत्वपूर्ण बात यह है कि आपने कुछ ऐसा सीखा जो सिम्युलेटर ने आपको कभी नहीं बताया होगा। कि केवल एक ही संभावित मामला था जिसमें वह स्थिति हो सकती थी। फॉर्मल ने आपको बौद्धिक स्तर पर डिज़ाइन को बेहतर ढंग से समझने में मदद की, न कि केवल परीक्षण मामलों के सीमित सेट में संभाव्य सारांश के रूप में।

विशेष मुद्दे

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

बग वेंडिंग मशीन के रूप में औपचारिक

सी और आरटीएल के बीच विशिष्ट तुलना अन्य खतरों के साथ आती है, खासकर बिट चौड़ाई के आसपास। मध्यवर्ती सिग्नल में कैरी बिट का कटाव या हानि (#3 ऊपर) अच्छे उदाहरण हैं। क्या ये विशिष्ट मुद्दे हैं? शायद विशिष्टता और कार्यान्वयन विकल्पों के बीच एक अस्पष्ट क्षेत्र।

तुल्यता जाँच से परे

ऐसा प्रतीत होता है कि डीपीवी का प्राथमिक उद्देश्य सी या आरटीएल संदर्भ और आरटीएल कार्यान्वयन के बीच समानता की जांच करना है। लेकिन यह आवश्यकता अपेक्षाकृत कम है और ऐसे अन्य उपयोगी तरीके हैं जिनसे ऐसी तकनीक को लागू किया जा सकता है, अगर थोड़ा हटकर किया जाए। कार्यान्वयन की दुनिया में पहला क्लासिक - मैंने एक बदलाव किया, एक बग ठीक किया - क्या परिणामस्वरूप मैंने कोई नया बग पेश किया? क्लॉक गेटिंग जोड़ने के बाद कुछ हद तक SEQ जाँच की तरह। ब्लॉक आउटपुट में रीचैबिलिटी विश्लेषण कुछ मामलों में एक और उपयोगी अनुप्रयोग हो सकता है।

सिर्फ तुल्यता जाँच नहीं

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

लपेटें

थियो उत्पादन उपयोग में महत्वपूर्ण कार्यप्रणाली, बाधाओं, प्रतिगमन और विरासत आरटीएल मॉडल के साथ तुलना पर चर्चा के साथ समाप्त होता है। यह जानने में भी चुनौतियाँ कि आप जो जाँच रहे हैं वह वास्तव में शीर्ष-स्तरीय प्राकृतिक भाषा विनिर्देश से मेल खाता है या नहीं।

बहुत ही ऊर्जावान बातचीत, देखने लायक यहाँ सॉल्वनेट पर!

इस पोस्ट को इसके माध्यम से साझा करें:

समय टिकट:

से अधिक सेमीविकी