Altifigence Academy

30 / 63 · अवधारणा

काउंटर की अगली अवस्था और reset की प्राथमिकता

वृद्धि, धारण, reset और वापस घूमने को एक विनिर्देश में रखें तथा हर किनारे का परिणाम निकालें।

पहले अगली अवस्था के समीकरण से व्यवहार तय करें

NN-बिट स्वतंत्र रूप से बढ़ने वाले काउंटर में तुल्यकालिक reset और enable जोड़ने पर यह मिलता है:

Ck+1={0rk=1(Ck+1) mod 2Nrk=0, ek=1Ckrk=0, ek=0C_{k+1}=\begin{cases} 0&r_k=1\\ (C_k+1)\bmod2^N&r_k=0,\ e_k=1\\ C_k&r_k=0,\ e_k=0 \end{cases}

Resetरीसेट अवस्था को विनिर्दिष्ट प्रारंभिक मान पर लौटाने वाला नियंत्रण। उसका तुल्यकालिक या अतुल्यकालिक होना और अन्य नियंत्रणों पर प्राथमिकता साथ तय करें। की प्राथमिकता सबसे अधिक है और enable=0 होने पर मान बना रहता है। नीचे के दृश्य मॉडल में enable बदलकर वृद्धि और hold की तुलना कर सकते हैं।

प्रारंभिक q=11 पर reset=1 चुनने से केवल अगली अवस्था 00 होती है। संग्रहित मान कब बदलता है, यह देखने के लिए अगला क्लॉक दबाएँ। Reset हटाकर 00→01→10→11→00 चलाएँ और तुलना करें कि enable=0 होने पर केवल किनारों की संख्या बढ़ती है, जबकि q वही रहता है।

उदयी किनारे से पहले और बाद की अवस्था की तुलना

तुल्यकालिक reset को enable पर प्राथमिकता है। enable=0 पर संग्रहित मान बनाए रखें। q=11; q_next = (q + 1) mod 4

हर किनारे के लिए पूर्वानुमान तालिका बनाएँ

यदि 2-बिट काउंटर की प्रारंभिक अवस्था 3 है, पहले किनारे पर reset=1 और उसके बाद reset=0 है, तो किनारों के बाद मान 0, 1, 2, 3, 0 होंगे। क्लॉक किनारों के बीच reset को 1 करने पर भी उदयी किनारेउदयी किनारा (rising edge) क्लॉक के 0 से 1 होने का क्षण। यह CLK=1 के पूरे स्तर-अंतराल से अलग है। और पढ़ें से पहले तुल्यकालिक रजिस्टररजिस्टर कई बिटों की अवस्था संग्रहित करता है। इस पाठ्यक्रम के तुल्यकालिक रजिस्टर निर्धारित इनपुट को क्लॉक एज पर संग्रहित करते हैं। और पढ़ें तुरंत 0 नहीं होता।

किनाराकिनारे से ठीक पहले resetपुराना Cनया C
1130
2001
3012
4023
5030

हर स्तंभ एक उदयी किनारे का अवलोकन है। इनपुट किनारे से ठीक पहले के हैं; नाम में after वाली अवस्थाएँ अद्यतन के तुरंत बाद की हैं। स्तंभों का क्रम नमूनों का क्रम दिखाता है, भौतिक प्रसार विलंबप्रसार विलंब इनपुट बदलने के बाद आउटपुट सही मान पर स्थिर होने तक का समय। तार्किक समतुल्यता और समय-संबंधी गुण अलग हैं। और पढ़ें नहीं। प्रारंभिक अवस्था 3 है और पहले किनारे का reset वृद्धि पर प्राथमिकता रखता है। अंतिम किनारे पर मान 3 से 0 पर लौटता है।

2-बिट काउंटर का reset और चक्रीय क्रम
तरंगरूप डेटा देखें
तरंगरूप डेटा: हर अक्षर एक अंतराल है; बिंदु पिछली अवस्था बनाए रखता है; p एक क्लॉक चक्र है।
संकेततरंगरूपबस मान
edge23452E0 → E1 → E2 → E3 → E4
reset10...
count पहले2345211 → 00 → 01 → 10 → 11
count बाद में2345200 → 01 → 10 → 11 → 00

Reset के अलग अर्थों को न मिलाएँ

always_ff @(posedge clk) के अंदर if(rst) तुल्यकालिक reset है। यह event सूची में reset का किनारा जोड़ने वाले अतुल्यकालिक reset के समान नहीं है। अतुल्यकालिक reset हटाने पर recovery/removal जैसी अलग timing शर्तें लागू होती हैं; केवल जल्दी 0 होने के कारण इसे बदलना उचित नहीं।

यदि काउंटर समय-समय पर पल्स देता है, तो यह भी तय करें कि किस अवस्था में पल्स निकलेगा। अधिकतम मान रहने तक आउटपुट 1 रखना और 0 पर लौटने वाले किनारे के बाद एक चक्र तक 1 रखना अलग हैं। इनके आउटपुट समीकरण और अवलोकन समय भी अलग होंगे।

खुद आज़माएँ

एक 3-बिट काउंटर का मान 7 है। पहले किनारे पर rst=0, en=0 और अगले पर rst=0, en=1 हो, तो दोनों अवस्थाएँ क्या होंगी?

व्याख्या पढ़ें

पहले किनारे पर मान 7 बना रहता है। अगले किनारे पर 3-बिट सीमा में घूमकर 0 हो जाता है। मान 8 बनाए रखने के लिए अधिक चौड़ाई या अलग saturation/त्रुटि नीति चाहिए।

आपका चयन इस ब्राउज़र पर लागू होता है। फ़ुटर से कभी भी बदलें।