[[

]]
काउन्टर

डिजिटल तर्क और कंप्यूटिंग के सन्दर्भ में काउन्टर एक उपकरण है जो एक विशेष घटना या प्रक्रिया की संख्या को स्टोर अथवा प्रदर्शित करता है। काउन्टर अक्सर एक घड़ी संकेत करने के संबंध में आता है।

इलेक्ट्रोनिक काउन्टर
--------------------

इलेक्ट्रोनिक्स में काउंटरों का उपयोग ऐसे फ्लिप फ्लॉप के रूप में रजिस्टर प्रकार सर्किट के माध्यम से काफी आसानी से लागू किया जा सकता है, और वर्गीकरण की एक विस्तृत विविधता मौजूद हैं:

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

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

**अतुल्यकालिक (तरंग) काउंटर**
एक अतुल्यकालिक (तरंग) काउंटर अपनी ही उल्टे उत्पादन में प्रतिक्रिया के कनेक्शन से जे(डाटा) इनपुट के साथ, एक ही प्रकार का डी फ्लिप फ्लॉप है। यह सर्किट एक बिट को रख सकता है, यानीं शूण्य से लेकर एक तक गिन सकता है। यह सर्किट हर एक घड़ी चक्र में एक वृद्धि करता है और दो घड़ी चक्र में सर्किट से बाहर निकल जाता है, अत: यह 0-1 के एक संक्रमण और 1-0 के एक संक्रमण के बीच वैकल्पिक होगी। नोट करें कि इस इनपुट घड़ी की ठीक आधी आवृत्ति पर एक 50% शुल्क साइकिल के साथ एक नई घड़ी बनाता है। अगर यह अनुपाद एक इसी तरह की व्यवस्थित् डी फ्लिप फ्लॉप के घड़ी के लिये इस्तमाल किया जाये, तो आधे के रूप में तेजी से गिणने वाला ऐसा एक और काउंटर मिल जाएगा। दोनों को जोड़ कर हमें दो-बिट काउन्टर मिल जाएगा।

| चक्र | Q1 | Q0 | (Q1:Q0) |
| --- | --- | --- | --- |
| 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 1 |
| 2 | 1 | 0 | 2 |
| 3 | 1 | 1 | 3 |
| 4 | 0 | 0 | 0 |

ह्म उत्पादन को पलट कर इंपुट, और पिछले उत्पादन को घड़ी की तरह इस्तमाल कर, अधिक्तर फ्लिप-फ्लोप जोड़ सकते हैं। इससे हमें तरंग काउंटर प्राप्त होगा जो २n-1 बार गिनता है, जहाँ n काउंटर के बिट (फ्लिप-फ्लोप) की संख्या है। तरंग काउंटर में अस्थिर उत्पादन देखा जाता है, जहाँ आप्लाव स्टेज से स्टेज से उमड़ आता है। ये घड़ी सिगनल को विभक्त करने का आवेदन है जहाँ समग्र विभाजन विभाजन आवश्यक और तात्कालिक गिन्ती अनावश्य्क है।

**तुल्यकालिक काउंटर**

तुल्यकालिक काउंटरों में सारी फ्लिप-फ्लोप की घड़ियाँ एक साथ जोड़ी जाती हैं और इंपुट द्वारा ट्रिगर की जाती हैं। तथा सारी फ्लिप-फ्लोप साथ में अवस्था बदलते हैं। तुल्य्कालिक काउन्टर का ४-बिट स्रर्किट नीचे दिया गया है। FF0 के J और K इंपुट HIGH से जोड़े जाते हैं। FF1 के J और K इंपुट FF0 के उत्पादन से जोड़े जाते हैं। FF2 के J और K इंपुट एक AND गेट के उत्पादन से जोड़े जाते हैं, जिसे FF0 और FF1 का उत्पादन प्राप्त होता है। आरोही काउंटर के हर एक बिट के तर्क को लागू करने के सरल तरीका यह है कि हर एक बिट टॉगल करे जब सारे कम महत्वपूर्ण बिट HIGH अवस्था में हो। उदाहरण के लिये जब बिट 0 होता है बिट 1 टॉगल करता है, जब बिट 0 और 1 होते हैं तब बिट 2 टॉगल करता है, इत्यादि।

**दशक काउटंर**

दशक काउंटर बाइनरी में गिनने के बजाए दशमलव अंक में गिनता है। दशक काउंटर द्विआधारी कोडित दशमलव, जैसे IC 7490, में गिन सकता है, या बाइनरी स्ंकेतिकरण में। दशक काउंटर बाइनरी काउंटर है जो 1010b तक गिनने के लिये डिज़ाइन किया गया है। एक साधारण 4 स्टेज काउंटर में एक NAND गेट लगा कर हम उसे एक दशक काउंटर में परिवर्तित कर सकते हैं। देखिये कि FF2 और FF4 NAND गेट के इंपुट हैं। NAND गेट का उत्पादन हर एक फ्लिप-फ्लोप के CLR इंपुट से जोड़े जाते हैं। दशक काउंटर 0 से 1 तक गिनकर फिर से 0 में रिसेट हो जाता है। रिसेट को LOW पल्स में देकर काउंटर के उत्पादन को शूण्य किया जा सकता है। हर एक घड़ी पल्स में संख्या एक-एक नंबर से बढ़ती है, जब तक वह 1001(दशम्लव 9) तक गिन लेती है। जब 1010(दशम्लव 10) तक बढ़्त होती है, दोनों NAND गेट इंपुट HIGH अवस्था में चले जाते हैं और NAND उत्पात LOW स्तिथी में चली जाती है। D इंपुट का LOW होना CARRY OUT सिग्नल माना जा सकता है जब 10 तक गिन्ती हो चुकी हो।

**रिंग काउंटर**

रिंग काउंटर एक चक्रधारी शिफ्ट रेजिस्टर है जो तब शुरु होता है जब उसका एक फ्लिप-फ्लोप HIGH अवस्था में होता है और बाकी फ्लिप-फ्लोप LOW दशा में होते हैं। रिंग काउंटर एक शिफ्ट रेजिस्टर है जिस में पिछले फ्लिप-फ्लोप का उत्पादन अगले फ्लिप-फ्लोप के इंपुट से जुड़ा होता है, यानि कि चक्र रूप में। आम तौर पर एक एकल बिट से मिलकर एक पैटर्न वितरित किया जाता है ताकि हर n घड़ी चक्र के लिये दशा n बार दोहराया जाये, अगर n फ्लिप-फ्लोप का इस्तमाल किया गया हो।