18 / 37 · जाँच
डिज़ाइन जाँच: चौड़ाई, प्राथमिकता और चक्रीय सीमा
दिए गए अवस्था-संक्रमण विनिर्देश से सीमांत मानों और एक साथ आने वाले नियंत्रण इनपुटों का निर्णय करें।
पाठ पढ़ना मुफ़्त है। प्रगति सेव करने के लिए नामांकन करें।
Modulo-10 काउंटर का अनुबंध
4-बिट unsignedunsigned बिट अनुक्रम को गैर-ऋणात्मक पूर्णांक मानने का नियम। n बिट की सीमा 0 से 2^n−1 है और वही बिट signed व्याख्या में अलग मान दे सकते हैं। और पढ़ें count की प्राथमिकता reset, enable, फिर hold है। Reset=1 पर 0 होता है। Enable=1 पर 9 और उससे ऊपर से 0 लौटता है; बाकी अवस्थाओं में 1 बढ़ता है।
चार बिट होने का अर्थ 16 अवस्थाएँ संग्रहित कर पाना है। इससे 10 अवस्थाएँ उपयोग करने का विनिर्देश अपने-आप लागू नहीं होता। खासकर count=9 और enable=0 पर मान 0 पर नहीं लौटना चाहिए।
हर स्तंभ एक उदयी किनारेउदयी किनारा (rising edge) क्लॉक के 0 से 1 होने का क्षण। यह CLK=1 के पूरे स्तर-अंतराल से अलग है। और पढ़ें का अवलोकन है। इनपुट किनारे से ठीक पहले के हैं; नाम में after वाली अवस्थाएँ अद्यतन के तुरंत बाद की हैं। स्तंभों का क्रम नमूनों का क्रम दिखाता है, भौतिक प्रसार विलंबप्रसार विलंब इनपुट बदलने के बाद आउटपुट सही मान पर स्थिर होने तक का समय। तार्किक समतुल्यता और समय-संबंधी गुण अलग हैं। और पढ़ें नहीं। प्रारंभिक count=9 है। पहले स्तंभ में reset नहीं और enable=0 है, इसलिए 9 बना रहता है। अगले स्तंभ में enable=1 होने पर ही 0 लौटता है।
तरंगरूप डेटा देखें
| संकेत | तरंगरूप | बस मान |
|---|---|---|
| edge | 2345 | E0 → E1 → E2 → E3 |
| reset | 0.10 | |
| enable | 01.. | |
| count बाद में | 23.4 | 9 → 0 → 1 |
अतिरिक्त डिज़ाइन प्रश्न
- count=9, reset=0, enable=0 पर अगला मान निकालें।
- count=15 पर enable=1 देने पर वापसी की नीति समझाएँ।
- count=9, reset=1, enable=1 पर समाप्ति पल्स आना चाहिए या नहीं, यह तय करें। मानें कि resetरीसेट अवस्था को विनिर्दिष्ट प्रारंभिक मान पर लौटाने वाला नियंत्रण। उसका तुल्यकालिक या अतुल्यकालिक होना और अन्य नियंत्रणों पर प्राथमिकता साथ तय करें। और पढ़ें के दौरान आउटपुट 0 परिभाषित है।
खुद आज़माएँ
0–15 के सभी count मानों और reset/enable संयोजनों की पूर्ण जाँच के लिए कितने एक-कदम संक्रमण चाहिए? क्या केवल इससे लंबी अवस्था श्रृंखलाओं की सभी आवश्यकताएँ अपने-आप सिद्ध होती हैं?
व्याख्या पढ़ें
मामले हैं। इस डिज़ाइन की तरह count पूरी अवस्था दर्शाए और अगली अवस्था/आउटपुट का विनिर्देश सही हो, तो एक-कदम जाँच मजबूत प्रमाण देती है। फिर भी इससे छूटी हुई initialization, इनपुट धारणाएँ, समाप्ति पल्स की अलग अवस्था या वास्तविक timing जैसी आवश्यकताएँ सिद्ध नहीं होतीं।
वर्तमान count=9 पर reset=1 और enable=1 एक साथ sample हुए। Reset-प्राथमिक विनिर्देश के अनुसार अगला count और समाप्ति पल्स क्या होंगे?
एक साथ सक्रिय शर्तों में बताई गई प्राथमिकता व्यवहार तय करती है। Reset शाखा count और समाप्ति पल्स दोनों को 0 करती है, इसलिए केवल पुराना count=9 होने से चक्रीय पल्स नहीं निकलता।