Altifigence Academy

42 / 63 · अवधारणा

शिफ्ट परिपथ सत्यापन और डेटा/valid संरेखण

सममित पैटर्न से छिपने वाले दोष और valid सिग्नल का एक-चक्र विस्थापन खोजें।

दोष दिखाने वाले बिट क्रम चुनें

केवल 0000 या 1111 खिसकाने से दिशा का उलटाव छिप जाता है। 1000 जैसा असममित पैटर्न या केवल एक 1 वाला इनपुट देकर हर स्थान का पीछा करें। हमेशा शून्य प्रारंभिक अवस्था रखने से initialization पथ और hold के कुछ दोष भी छूट सकते हैं।

3-बिट रजिस्टररजिस्टर कई बिटों की अवस्था संग्रहित करता है। इस पाठ्यक्रम के तुल्यकालिक रजिस्टर निर्धारित इनपुट को क्लॉक एज पर संग्रहित करते हैं। और पढ़ें को 000 से शुरू करके 1,0,0 देने पर 001→010→100 मिलता है। उलटी दिशा के implementation में 100→010→001 मिलेगा, इसलिए पहला किनारा ही अंतर दिखाता है।

संदर्भ मॉडल को दो रूपों में देखें

Qnext=(2Q+d) mod 2NQ_{next}=(2Q+d)\bmod2^N

हर मान्य किनारे पर इस संख्यात्मक मॉडल को वास्तविक sliceस्लाइस वेक्टर से लगातार बिटों की सीमा चुनना। चुनी हुई सीमा परिणाम की चौड़ाई और बिट क्रम तय करती है। और पढ़ें/concatenation RTL से मिलाएँ। N=3 जैसे छोटे मामले में आठ सामान्य अवस्थाएँ और दो इनपुट, कुल 16 संक्रमणों की पूर्ण जाँच कर सकते हैं। Reset और enable संयोजन इसके अतिरिक्त जोड़ें।

हर स्तंभ एक उदयी किनारेउदयी किनारा (rising edge) क्लॉक के 0 से 1 होने का क्षण। यह CLK=1 के पूरे स्तर-अंतराल से अलग है। और पढ़ें का अवलोकन है। इनपुट किनारे से ठीक पहले के हैं; नाम में after वाली अवस्थाएँ अद्यतन के तुरंत बाद की हैं। स्तंभों का क्रम नमूनों का क्रम दिखाता है, भौतिक प्रसार विलंबप्रसार विलंब इनपुट बदलने के बाद आउटपुट सही मान पर स्थिर होने तक का समय। तार्किक समतुल्यता और समय-संबंधी गुण अलग हैं। और पढ़ें नहीं। प्रारंभिक q=000 है। दूसरे किनारे पर enable=0 होने से din बदलने पर भी q=001 रहता है। किनारे और स्वीकारे गए इनपुट अलग-अलग गिनें।

enable न हो तो पूरी अवस्था रुकती है
तरंगरूप डेटा देखें
तरंगरूप डेटा: हर अक्षर एक अंतराल है; बिंदु पिछली अवस्था बनाए रखता है; p एक क्लॉक चक्र है।
संकेततरंगरूपबस मान
edge2345E0 → E1 → E2 → E3
enable101.
din10.1
q बाद में2.34001 → 010 → 101

ऊपर का तरंगरूप स्वयं दोहराएँ। पहले din=1 से एक किनारा चलाकर 001 बनाएँ। फिर enable=0, din=0 से अगला किनारा चलाने पर 001 बना रहेगा। Enable फिर सक्रिय करके din=0,1 देने पर 010,101 मिलते हैं। यह मॉडल केवल डेटा रजिस्टर दर्शाता है; valid को भी समान enable शर्त पर रोकने की आवश्यकता अगले भाग में अलग देखें।

बीच की रुकावट में इनपुट और संग्रहित मान अलग करें

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

Valid भी डेटा पथ का हिस्सा है

केवल डेटा रुक जाए और valid चलता रहे, या डेटा चलता रहे और valid रुक जाए, तो आउटपुट का ग्रहणकर्ता गलत sample लेता है। केवल “आउटपुट बिट सही हैं” जाँचने से इंटरफ़ेस सही नहीं सिद्ध होता।

परीक्षणअपेक्षित व्यवहार
लगातार सामान्य इनपुटबिट क्रम और निश्चित मान्य विलंब सही
बीच में enable=0डेटा और valid साथ बने रहें
बीच में resetपुराने फ़्रेम की valid अवस्था हटे
लगातार नया फ़्रेमपुराने फ़्रेम का अंत और नए का आरंभ अलग दिखें

विफलता विश्लेषण में इनपुट स्वीकारने का क्रमांक भी रिकॉर्ड करें, ताकि वास्तविक क्लॉक क्रमांक से भ्रम न हो। फ़्रेम सीमा वाला न्यूनतम प्रतिउदाहरण रखना पूरे लंबे तरंगरूप को बार-बार देखने से अधिक उपयोगी है।

खुद आज़माएँ

डेटा रजिस्टर केवल enable=1 पर खिसकता है, लेकिन valid delay line हर क्लॉक पर चलती है। किस इनपुट से दोष सबसे आसानी से दिखेगा?

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

दो अलग डेटा के बीच enable=0 वाला रुका किनारा रखें। Valid पहले पहुँच जाएगा या दूसरे डेटा से जुड़ जाएगा। ऐसे संदर्भ मॉडल से तुलना करें जो डेटा और metadata दोनों पर समान स्वीकार शर्त लागू करता हो।

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