इंटेल 8253: Difference between revisions

From Vigyanwiki
No edit summary
m (7 revisions imported from alpha:इंटेल_8253)
 
(4 intermediate revisions by 2 users not shown)
Line 2: Line 2:


[[Image:Ic-photo-Intel--C8253.JPG|thumb|इंटेल C8253]]
[[Image:Ic-photo-Intel--C8253.JPG|thumb|इंटेल C8253]]
[[Image:Intel 8253 and 8254.svg|thumb|इंटेल 8253 प्रोग्रामयोग्य अंतराल टाइमर। इंटेल 8254 में समान पिनआउट है।]][[इंटेल]] 8253 और 8254 [[प्रोग्रामयोग्य अंतराल टाइमर]] (पीआईटी) हैं, जो तीन 16-बिट काउंटर का उपयोग करके समय और गणना फ़ंक्शन निष्पादित करते हैं।<ref name=i82c54/>
[[Image:Intel 8253 and 8254.svg|thumb|इंटेल 8253 प्रोग्रामेबल अंतराल टाइमर। इंटेल 8254 में समान पिनआउट है।]]'''[[इंटेल]] 8253''' और '''8254''' [[प्रोग्रामयोग्य अंतराल टाइमर|प्रोग्रामेबल अंतराल टाइमर]] (पीआईटी) हैं, जो तीन 16-बिट काउंटर का उपयोग करके समय और गणना फ़ंक्शन निष्पादित करते हैं।<ref name=i82c54/>


825x वर्ग मुख्य रूप से [[Intel 8080|इंटेल 8080]]/[[Intel 8085|इंटेल 8085]]-प्रोसेसर के लिए डिज़ाइन किया गया था, परंतु बाद में x86 संगत सिस्टम में उपयोग किया गया। 825x चिप, या बड़ी चिप में एम्बेडेड समकक्ष सर्किट, सभी [[आईबीएम पीसी संगत]] और वेक्टर -06 सी जैसे सोवियत कंप्यूटरों में पाए जाते हैं।
825x वर्ग मुख्य रूप से [[Intel 8080|इंटेल 8080]]/[[Intel 8085|इंटेल 8085]]-प्रोसेसर के लिए डिज़ाइन किया गया था, परंतु बाद में x86 संगत सिस्टम में उपयोग किया गया। 825x चिप, या बड़ी चिप में एम्बेडेड समकक्ष सर्किट, सभी [[आईबीएम पीसी संगत]] और वेक्टर -06 सी जैसे सोवियत कंप्यूटरों में पाए जाते हैं।


पीसी कंपैटिबल्स में, टाइमर चैनल 0 को [[ व्यवधान अनुरोध (पीसी आर्किटेक्चर) | अंतरायन अनुरोध (पीसी आर्किटेक्चर)]] -0 (उच्चतम प्राथमिकता हार्डवेयर इंटरप्ट) को दिया गया है। टाइमर चैनल 1 को डीरैम रिफ्रेश के लिए असाइन किया गया है (कम से कम 80386 से पहले के प्रारम्भिक मॉडल में)। टाइमर चैनल 2 [[पीसी स्पीकर]] को दिया गया है।
पीसी कंपैटिबल्स में, टाइमर चैनल 0 को [[ व्यवधान अनुरोध (पीसी आर्किटेक्चर) |अंतरायन अनुरोध (पीसी आर्किटेक्चर)]] -0 (उच्चतम प्राथमिकता हार्डवेयर इंटरप्ट) को दिया गया है। टाइमर चैनल 1 को डीरैम रिफ्रेश के लिए असाइन किया गया है (कम से निम्न 80386 से पहले के प्रारम्भिक मॉडल में)। टाइमर चैनल 2 [[पीसी स्पीकर]] को दिया गया है।


इंटेल 82c54 ([[सीएमओएस]] लॉजिक के लिए सी) प्रकार 10 मेगाहर्ट्ज क्लॉक सिग्नल तक संभालता है।<ref name=i82c54/>
इस प्रकार से इंटेल 82c54 ([[सीएमओएस]] लॉजिक के लिए सी) प्रकार 10 मेगाहर्ट्ज कालद सिग्नल तक संभालता है।<ref name=i82c54/>
==इतिहास==
==इतिहास==
8253 का वर्णन 1980 इंटेल कंपोनेंट डेटा कैटलॉग प्रकाशन में किया गया है। 8254, जिसे उच्च क्लॉक स्पीड रेटिंग के साथ 8253 के सुपरसेट के रूप में वर्णित किया गया है, की 1982 इंटेल कंपोनेंट डेटा कैटलॉग में प्रारंभिक डेटा शीट है।
8253 का वर्णन 1980 इंटेल कंपोनेंट डेटा कैटलॉग प्रकाशन में किया गया है। 8254, जिसे उच्च कालद स्पीड रेटिंग के साथ 8253 के सुपरसेट के रूप में वर्णित किया गया है, की 1982 इंटेल कंपोनेंट डेटा कैटलॉग में प्रारंभिक डेटा शीट है।


8254 को एचएमओएस में लागू किया गया है और इसमें रीड बैक कमांड 8253 पर उपलब्ध नहीं है, और एक ही काउंटर को इंटरलीव करने के लिए पढ़ने और लिखने की अनुमति देता है।<ref>{{cite book |author1=Deepali A. Godse |author2=Atul P. Godse |title=उन्नत माइक्रोप्रोसेसर|publisher=Technical Publications |year=2007 |isbn=978-81-89411-33-6 |page=74}}</ref>
8254 को एचएमओएस में लागू किया गया है और इसमें रीड बैक कमांड 8253 पर उपलब्ध नहीं है, और एक ही काउंटर को इंटरलीव करने के लिए पढ़ने और लिखने की अनुमति देता है।<ref>{{cite book |author1=Deepali A. Godse |author2=Atul P. Godse |title=उन्नत माइक्रोप्रोसेसर|publisher=Technical Publications |year=2007 |isbn=978-81-89411-33-6 |page=74}}</ref>
Line 17: Line 17:


=== प्रकार ===
=== प्रकार ===
-55°C से +125°C के तापमान श्रेणी के साथ इंटेल M8253 का सैन्य संस्करण है, जिसमें ±10% 5V सामर्थ्य सहनशीलता भी है।<ref>Intel Corporation, "Focus Components: Military Intelligence: Timers, EPROMs, Leadless Chip Carriers", Solutions, March/April 1983, Page 12.</ref> उपलब्ध 82C53 CMOS संस्करण को ओकी इलेक्ट्रिक इंडस्ट्री कंपनी लिमिटेड को आउटसोर्स किया गया था।<ref>Intel Corporation, "NewsBit: Intel Licenses Oki on CMOS Version of Several Products", Solutions, July/August 1984, Page 1.</ref> इंटेल 82C54 का उपलब्ध पैकेज संस्करण 1986 की प्रथम तिमाही में सैंपलिंग के 28-पिन चिप कैरियर में था।<ref>Ashborn, Jim; "Advanced Packaging: A Little Goes A Long Way", Intel Corporation, Solutions, January/February 1986, Page 2</ref>
इस प्रकार से -55°C से +125°C के तापमान श्रेणी के साथ इंटेल M8253 का सैन्य संस्करण है, जिसमें ±10% 5V सामर्थ्य सहनशीलता भी है।<ref>Intel Corporation, "Focus Components: Military Intelligence: Timers, EPROMs, Leadless Chip Carriers", Solutions, March/April 1983, Page 12.</ref> उपलब्ध 82C53 CMOS संस्करण को ओकी इलेक्ट्रिक इंडस्ट्री कंपनी लिमिटेड को आउटसोर्स किया गया था।<ref>Intel Corporation, "NewsBit: Intel Licenses Oki on CMOS Version of Several Products", Solutions, July/August 1984, Page 1.</ref> इंटेल 82C54 का उपलब्ध पैकेज संस्करण 1986 की प्रथम तिमाही में सैंपलिंग के 28-पिन चिप कैरियर में था।<ref>Ashborn, Jim; "Advanced Packaging: A Little Goes A Long Way", Intel Corporation, Solutions, January/February 1986, Page 2</ref>
== विशेषताएँ ==
== विशेषताएँ ==
[[Image:Intel 8253 block diagram.svg|thumb|का ब्लॉक आरेख {{nowrap|Intel 8253}}]]टाइमर में तीन काउंटर हैं, जिनकी संख्या 0 से 2 है।<ref name="Intel 8254">{{cite web |title=8254/82C54: Introduction to Programmable Interval Timer |url=http://www.intel.com:80/design/archives/periphrl/docs/7203.htm |publisher=Intel Corporation |archive-url=https://web.archive.org/web/20161122073424/http://www.intel.com:80/design/archives/periphrl/docs/7203.htm |accessdate=21 August 2011|archive-date=22 November 2016 }}</ref> प्रत्येक चैनल को छह मोड में से में संचालित करने के लिए प्रोग्राम किया जा सकता है। एक बार प्रोग्राम हो जाने पर, चैनल स्वतंत्र रूप से कार्य करते हैं।<ref name=i82c54>{{cite web |archive-url=https://web.archive.org/web/20150603122044/http://download.intel.com/design/archives/periphrl/docs/23124406.pdf |archive-date=3 June 2015 |url=http://download.intel.com/design/archives/periphrl/docs/23124406.pdf |url-status=dead |title=Intel 82C54 CHMOS Programmabe Interval Timer |type=datasheet |access-date=26 November 2012 }}</ref>
[[Image:Intel 8253 block diagram.svg|thumb|{{nowrap|Intel 8253}} का ब्लॉक आरेख ]]टाइमर में तीन काउंटर हैं, जिनकी संख्या 0 से 2 है।<ref name="Intel 8254">{{cite web |title=8254/82C54: Introduction to Programmable Interval Timer |url=http://www.intel.com:80/design/archives/periphrl/docs/7203.htm |publisher=Intel Corporation |archive-url=https://web.archive.org/web/20161122073424/http://www.intel.com:80/design/archives/periphrl/docs/7203.htm |accessdate=21 August 2011|archive-date=22 November 2016 }}</ref> प्रत्येक चैनल को छह मोड में से में संचालित करने के लिए प्रोग्राम किया जा सकता है। एक बार प्रोग्राम हो जाने पर, चैनल स्वतंत्र रूप से कार्य करते हैं।<ref name=i82c54>{{cite web |archive-url=https://web.archive.org/web/20150603122044/http://download.intel.com/design/archives/periphrl/docs/23124406.pdf |archive-date=3 June 2015 |url=http://download.intel.com/design/archives/periphrl/docs/23124406.pdf |url-status=dead |title=Intel 82C54 CHMOS Programmabe Interval Timer |type=datasheet |access-date=26 November 2012 }}</ref>
प्रत्येक काउंटर में दो इनपुट पिन होते हैं - "CLK" ([[ घड़ी ]] इनपुट) और "GATE" - और डेटा आउटपुट के लिए पिन, "OUT"। तीन काउंटर एक-दूसरे से स्वतंत्र 16-बिट डाउन काउंटर हैं, और इन्हें केंद्रीय प्रसंस्करण इकाई द्वारा सरलता से पढ़ा जा सकता है।<ref>{{cite web |title=MSM 82c53 Datasheet |url=http://www.sharpmz.org/download/8253.pdf}}</ref>
प्रत्येक काउंटर में दो इनपुट पिन होते हैं - "CLK" ([[ घड़ी |कालद]] इनपुट) और "GATE" - और डेटा आउटपुट के लिए पिन, "OUT"। तीन काउंटर एक-दूसरे से स्वतंत्र 16-बिट डाउन काउंटर हैं, और इन्हें केंद्रीय प्रसंस्करण इकाई द्वारा सरलता से पढ़ा जा सकता है।<ref>{{cite web |title=MSM 82c53 Datasheet |url=http://www.sharpmz.org/download/8253.pdf}}</ref>
* डेटा बस बफ़र में माइक्रोप्रोसेसर और आंतरिक रजिस्टरों के बीच डेटा बस को बफ़र करने का तर्क होता है। इसमें 8 इनपुट पिन हैं, जिन्हें सामान्यतः D7..D0 के रूप में लेबल किया जाता है, जहां D7 [[सबसे महत्वपूर्ण बिट]] है।
* डेटा बस बफ़र में माइक्रोप्रोसेसर और आंतरिक रजिस्टरों के बीच डेटा बस को बफ़र करने का तर्क होता है। इसमें 8 इनपुट पिन हैं, जिन्हें सामान्यतः D7..D0 के रूप में लेबल किया जाता है, जहां D7 [[सबसे महत्वपूर्ण बिट]] है।
* रीड/राइट लॉजिक में 5 पिन होते हैं, जो निम्न सूचीबद्ध हैं। {{overline|X}} दर्शाता है कि X एक सक्रिय निम्न सिग्नल है।
* रीड/राइट लॉजिक में 5 पिन होते हैं, जो निम्न सूचीबद्ध हैं। {{overline|X}} दर्शाता है कि X एक सक्रिय निम्न सिग्नल है।
Line 28: Line 28:
** A0, A1: [[पता पंक्ति|एड्रैस लाइन]]
** A0, A1: [[पता पंक्ति|एड्रैस लाइन]]


उपरोक्त हार्डवेयर सिग्नल सेट करके पीआईटी का ऑपरेशन मोड बदल दिया जाता है। उदाहरण के लिए, कंट्रोल वर्ड रजिस्टर पर लिखने के लिए, किसी को {{overline|CS}}=0, {{overline|RD}}=1, {{overline|WR}}=0, A1=A0=1 सेट करना होगा।
इस प्रकार से उपरोक्त हार्डवेयर सिग्नल सेट करके पीआईटी का ऑपरेशन मोड बदल दिया जाता है। उदाहरण के लिए, कंट्रोल वर्ड रजिस्टर पर लिखने के लिए, किसी को {{overline|CS}}=0, {{overline|RD}}=1, {{overline|WR}}=0, A1=A0=1 सेट करना होगा।


* कंट्रोल वर्ड रजिस्टर में प्रोग्राम की गई सूचना होती है जिसे ([[माइक्रोप्रोसेसर]] द्वारा) डिवाइस पर भेजा जाएगा। यह परिभाषित करता है कि पीआईटी का प्रत्येक चैनल तार्किक रूप से कैसे कार्य करता है। इन पोर्ट तक प्रत्येक पहुंच में लगभग 1 µs का समय लगता है।
* कंट्रोल वर्ड रजिस्टर में प्रोग्राम की गई सूचना होती है जिसे ([[माइक्रोप्रोसेसर]] द्वारा) डिवाइस पर भेजा जाएगा। यह परिभाषित करता है कि पीआईटी का प्रत्येक चैनल तार्किक रूप से कैसे कार्य करता है। इन पोर्ट तक प्रत्येक पहुंच में लगभग 1 µs का समय लगता है।
Line 34: Line 34:
काउंटरों को आरंभ करने के लिए, माइक्रोप्रोसेसर को इस रजिस्टर में नियंत्रण शब्द (सीडब्ल्यू) लिखना होगा। यह रीड/राइट लॉजिक ब्लॉक के पिन के लिए उचित मान सेट करके और फिर डेटा/बस बफर ब्लॉक में नियंत्रण शब्द भेजकर किया जा सकता है।
काउंटरों को आरंभ करने के लिए, माइक्रोप्रोसेसर को इस रजिस्टर में नियंत्रण शब्द (सीडब्ल्यू) लिखना होगा। यह रीड/राइट लॉजिक ब्लॉक के पिन के लिए उचित मान सेट करके और फिर डेटा/बस बफर ब्लॉक में नियंत्रण शब्द भेजकर किया जा सकता है।


नियंत्रण शब्द रजिस्टर में 8 बिट्स हैं, जिन्हें D7..D0 लेबल किया गया है (D7 सबसे महत्वपूर्ण बिट है)। डिकोडिंग कुछ जटिल है। अधिकांश मान तीन काउंटरों में से एक के लिए पैरामीटर सेट करते हैं:
नियंत्रण शब्द रजिस्टर में 8 बिट्स हैं, जिन्हें D7..D0 लेबल किया गया है (D7 सबसे महत्वपूर्ण बिट है)। डिकोडिंग कुछ जटिल है। इस प्रकार से अधिकांश मान तीन काउंटरों में से एक के लिए पैरामीटर सेट करते हैं:
* सबसे महत्वपूर्ण दो बिट्स (यदि 11 नहीं) उस काउंटर रजिस्टर का चयन करें जिस पर कमांड लागू होता है।
* सबसे महत्वपूर्ण दो बिट्स (यदि 11 नहीं) उस काउंटर रजिस्टर का चयन करें जिस पर कमांड लागू होता है।
* अग्रिम दो बिट्स (यदि 00 नहीं हैं) उस फॉर्मैट का चयन करें जिसका उपयोग काउंटर रजिस्टर में बाद में पढ़ने/लिखने की पहुंच के लिए किया जाएगा। इसे सामान्यतः ऐसे मोड पर सेट किया जाता है जहां एक्सेस सबसे कम-महत्वपूर्ण और सबसे-महत्वपूर्ण बाइट्स के बीच वैकल्पिक होता है। 8253 और 8254 के बीच अंतर यह है कि पहले वाले में आंतरिक बिट था जो पढ़ने और लिखने दोनों को प्रभावित करता था, इसलिए यदि फॉर्मैट 2-बाइट पर सेट किया गया था, तो lsbyte को पढ़ने से निम्नलिखित लेखन को msbyte पर निर्देशित किया जाएगा। 8254 में पढ़ने और लिखने के लिए अलग-अलग बिट्स का उपयोग किया गया।
* अग्रिम दो बिट्स (यदि 00 नहीं हैं) उस फॉर्मैट का चयन करें जिसका उपयोग काउंटर रजिस्टर में बाद में पढ़ने/लिखने की एक्सेस के लिए किया जाएगा। इसे सामान्यतः ऐसे मोड पर सेट किया जाता है जहां एक्सेस सबसे कम-महत्वपूर्ण और सबसे-महत्वपूर्ण बाइट्स के बीच वैकल्पिक होता है। 8253 और 8254 के बीच अंतर यह है कि पहले वाले में आंतरिक बिट था जो पढ़ने और लिखने दोनों को प्रभावित करता था, इसलिए यदि फॉर्मैट 2-बाइट पर सेट किया गया था, तो lsbyte को पढ़ने से निम्नलिखित लेखन को msbyte पर निर्देशित किया जाएगा। 8254 में पढ़ने और लिखने के लिए अलग-अलग बिट्स का उपयोग किया गया।
* अग्रिम तीन बिट्स उस मोड का चयन करें जिसमें काउंटर कार्य करेगा।
* अग्रिम तीन बिट्स उस मोड का चयन करें जिसमें काउंटर कार्य करेगा।
* सबसे कम महत्वपूर्ण बिट यह चयनित है कि काउंटर बाइनरी या [[बाइनरी-कोडित दशमलव]] में कार्य करेगा या नहीं। (बीसीडी गणना लगभग कभी भी उपयोग नहीं की जाती है और इसे एमुलेटर या साउथब्रिज में ठीक से लागू नहीं किया जा सकता है।)
* सबसे निम्न महत्वपूर्ण बिट यह चयनित है कि काउंटर बाइनरी या [[बाइनरी-कोडित दशमलव]] में कार्य करेगा या नहीं। (बीसीडी गणना लगभग कभी भी उपयोग नहीं की जाती है और इसे एमुलेटर या साउथब्रिज में ठीक से लागू नहीं किया जा सकता है।)


यद्यपि, दो अन्य रूप भी हैं:
यद्यपि, दो अन्य रूप भी हैं:
Line 103: Line 103:
|colspan=3| mode
|colspan=3| mode
| BCD
| BCD
|align=left| केवल काउंटर वैल्यू की कम बाइट पढ़ें/लिखें
|align=left| केवल काउंटर वैल्यू की निम्न बाइट पढ़ें/लिखें
|-
|-
|colspan=2|counter
|colspan=2|counter
Line 135: Line 135:
| 1
| 1
| BCD
| BCD
|align=left| मोड 1: हार्डवेयर रिट्रिगरेबल वन-शॉट
|align=left| मोड 1: हार्डवेयर रिट्रिगरेबल एक-शॉट
|-
|-
|colspan=2| counter
|colspan=2| counter
Line 181: Line 181:
|colspan=3| mode
|colspan=3| mode
| 1
| 1
|align=left| Counter is a 4-digit [[binary-coded decimal]] counter (0–9999)
|align=left| काउंटर एक 4-अंकीय [[binary-coded decimal|बाइनरी-कोडेड दशमलव]] काउंटर है (0-9999)
|-
|-
|colspan=9|
|colspan=9|
Line 193: Line 193:
! C0
! C0
!bgcolor=lightgrey| x
!bgcolor=lightgrey| x
! Read-back command (8254 only)
! रीड-बैक कमांड (केवल 8254)
|-
|-
| 1
| 1
Line 203: Line 203:
| C0
| C0
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Next read of selected counters will read back latched status, then count
|align=left| चयनित काउंटरों की अगली रीडिंग बैक लैच स्थिति को पढ़ेगी, फिर गणना करेगी
|-
|-
| 1
| 1
Line 213: Line 213:
| C0
| C0
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Next read of selected counters will read back latched count
|align=left| चयनित काउंटरों का अगला रीड बैक लैच्ड काउंट पढ़ेगा
|-
|-
| 1
| 1
Line 223: Line 223:
| C0
| C0
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Next read of selected counters will read back latched status
|align=left| चयनित काउंटरों की अगली रीडिंग बैक लैच स्थिति को पढ़ेगी
|-
|-
| 1
| 1
Line 233: Line 233:
| C0
| C0
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Do nothing (latch nothing on any or all counters)
|align=left| कुछ भी न करें (किसी भी या सभी काउंटरों पर कुछ भी न लगाएं)
|-
|-
| 1
| 1
Line 243: Line 243:
| 0
| 0
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Do nothing (latch count and/or status on no counters)
|align=left| कुछ न करें (कुंडी की गणना और/या बिना किसी काउंटर पर स्थिति)
|-
|-
| 1
| 1
Line 253: Line 253:
| C0
| C0
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Read-back command applies to counter 2
|align=left| रीड-बैक कमांड काउंटर 2 पर लागू होता है
|-
|-
| 1
| 1
Line 263: Line 263:
| C0
| C0
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Read-back command applies to counter 1
|align=left| रीड-बैक कमांड काउंटर 1 पर लागू होता है
|-
|-
| 1
| 1
Line 273: Line 273:
| 1
| 1
|bgcolor=lightgrey| x
|bgcolor=lightgrey| x
|align=left| Read-back command applies to counter 0
|align=left| रीड-बैक कमांड काउंटर 0 पर लागू होता है
|}
|}
पीआईटी सेट करते समय, माइक्रोप्रोसेसर पहले नियंत्रण संदेश भेजता है, फिर पीआईटी को गणना संदेश भेजता है। गणना की प्रक्रिया पीआईटी को ये संदेश प्राप्त होने के पश्चात शुरू होगी, और, कुछ मामलों में, अगर यह "GATE" इनपुट [[संकेत किनारा]] बढ़ते सिग्नल किनारे का पता लगाता है।
पीआईटी सेट करते समय, माइक्रोप्रोसेसर पहले नियंत्रण संदेश भेजता है, फिर पीआईटी को गणना संदेश भेजता है। गणना की प्रक्रिया पीआईटी को ये संदेश प्राप्त होने के पश्चात प्रारंभ होगी, और, कुछ स्थितियों में, यदि यह "GATE" इनपुट [[संकेत किनारा|संकेत एज]] बढ़ते सिग्नल एज को ज्ञात करता है। स्थिति बाइट फॉर्मैट। बिट 7 सॉफ़्टवेयर को OUT पिन की वर्तमान स्थिति की निरीक्षण करने की अनुमति देता है। बिट 6 इंगित करता है कि गणना कब पढ़ी जा सकती है; जब यह बिट 1 होता है, तो गणना अवयव अभी तक लोड नहीं हुआ है और प्रोसेसर द्वारा वापस पढ़ा नहीं जा सकता है। इस प्रकार से बिट्स 5 से 0 नियंत्रण रजिस्टर में लिखे गए अंतिम बिट्स के समान हैं।
स्थिति बाइट फॉर्मैट. बिट 7 सॉफ़्टवेयर को OUT पिन की वर्तमान स्थिति की निगरानी करने की अनुमति देता है। बिट 6 इंगित करता है कि गणना कब पढ़ी जा सकती है; जब यह बिट 1 होता है, तो गणना तत्व अभी तक लोड नहीं हुआ है और प्रोसेसर द्वारा वापस पढ़ा नहीं जा सकता है। बिट्स 5 से 0 नियंत्रण रजिस्टर में लिखे गए अंतिम बिट्स के समान हैं।
   {| class="wikitable" style="text-align: center;"
   {| class="wikitable" style="text-align: center;"
|+ 8254 status word
|+ 8254 स्टैटस वर्ड
|-
|-
!colspan=8| Bit #/Name
!colspan=8| Bit #/Name
!rowspan=2| Short Description
!rowspan=2| संक्षिप्त वर्णन
|-
|-
! D7<br />Output<br />Status
! D7<br />Output<br />Status
Line 294: Line 293:
| 0
| 0
|colspan=7|
|colspan=7|
|align=left| Out pin is 0
|align=left| आउट पिन 0 है
|-
|-
| 1
| 1
|colspan=7|
|colspan=7|
|align=left| Out pin is 1
|align=left| आउट पिन 1 है
|-
|-
|
|
| 0
| 0
|colspan=6|
|colspan=6|
|align=left| Counter can be read
|align=left| काउंटर पढ़ा जा सकता है
|-
|-
|
|
| 1
| 1
|colspan=6|
|colspan=6|
|align=left| The counter is being set
|align=left| काउंटर लगाया जा रहा है
|-
|-
|colspan=2|
|colspan=2|
Line 314: Line 313:
|colspan=3| mode
|colspan=3| mode
| BCD
| BCD
|align=left| Counter mode bits, as defined for the कंट्रोल वर्ड register
|align=left| काउंटर मोड बिट्स, जैसा कि नियंत्रण शब्द रजिस्टर के लिए परिभाषित किया गया है
|}
|}


== ऑपरेशन मोड ==
== ऑपरेशन मोड ==
नियंत्रण शब्द के D3, D2 और D1 बिट्स टाइमर के ऑपरेटिंग मोड को सेट करते हैं। कुल मिलाकर 6 मोड हैं; मोड 2 और 3 के लिए, डी3 बिट को नजरअंदाज कर दिया जाता है, इसलिए गायब मोड 6 और 7 मोड 2 और 3 के लिए उपनाम हैं।
नियंत्रण शब्द के D3, D2 और D1 बिट्स टाइमर के ऑपरेटिंग मोड को सेट करते हैं। कुल मिलाकर 6 मोड हैं; मोड 2 और 3 के लिए, डी3 बिट को अनदेखा कर दिया जाता है, इसलिए लुप्त मोड 6 और 7 मोड 2 और 3 के लिए उपनाम हैं।


सभी मोड GATE इनपुट के प्रति संवेदनशील हैं, GATE उच्च के कारण सामान्य ऑपरेशन होता है, परंतु GATE कम का प्रभाव मोड पर निर्भर करता है:
इस प्रकार से सभी मोड GATE इनपुट के प्रति संवेदनशील हैं, GATE उच्च के कारण सामान्य ऑपरेशन होता है, परंतु GATE निम्न का प्रभाव मोड पर निर्भर करता है:
* मोड 0 और 4: GATE कम होने पर गणना निलंबित कर दी जाती है, और GATE अधिक होने पर गणना फिर से शुरू हो जाती है।
* मोड 0 और 4: GATE निम्न होने पर गणना निलंबित कर दी जाती है, और GATE अधिक होने पर गणना पुनः प्रारंभ हो जाती है।
* मोड 1 और 5: GATE के बढ़ते किनारे की गणना शुरू होती है। गणना को प्रभावित किए बिना GATE निम्न जा सकता है, परंतु और बढ़ती बढ़त शुरुआत से ही गणना को फिर से शुरू कर देगी।
* मोड 1 और 5: GATE के बढ़ते एज की गणना प्रारंभ होती है। गणना को प्रभावित किए बिना GATE निम्न जा सकता है, परंतु और बढ़ती बढ़त प्रारंभ से ही गणना को पुनः प्रारंभ कर देगी।
* मोड 2 और 3: "GATE" लो फोर्स को तुरंत हाई आउट करें (क्लॉक पल्स की प्रतीक्षा किए बिना) और काउंटर को रीसेट करता है (अगली क्लॉक गिरने वाले किनारे पर)। जब GATE फिर से ऊपर चला जाता है, तो गणना फिर से शुरू हो जाती है।
* मोड 2 और 3: "GATE" निम्न बल को तुरंत हाई आउट करें (कालद पल्स की प्रतीक्षा किए बिना) और काउंटर को रीसेट करता है (अगली कालद गिरने वाले एज पर)। जब GATE पुनः ऊपर चला जाता है, तो गणना पुनः प्रारंभ हो जाती है।


=== मोड 0 (000): टर्मिनल गणना पर अंतरायन ===
=== मोड 0 (000): टर्मिनल गणना पर अंतरायन ===
मोड 0 का उपयोग सॉफ्टवेयर नियंत्रण के तहत सटीक समय विलंब उत्पन्न करने के लिए किया जाता है। इस मोड में, काउंटर इसमें लोड किए गए प्रारंभिक COUNT मान से 0 तक गणना शुरू कर देगा। गणना दर इनपुट घड़ी आवृत्ति के बराबर है।
इस प्रकार से मोड 0 का उपयोग सॉफ्टवेयर नियंत्रण के अंतर्गत यथार्थ समय विलंब उत्पन्न करने के लिए किया जाता है। इस मोड में, काउंटर इसमें लोड किए गए प्रारंभिक COUNT मान से 0 तक गणना प्रारंभ कर देगा। गणना दर इनपुट कालद आवृत्ति के बराबर है।


कंट्रोल वर्ड लिखे जाने के पश्चात OUT पिन को कम सेट किया जाता है, और COUNT प्रोग्राम होने के पश्चात गणना घड़ी चक्र शुरू होती है। काउंटर 0 तक पहुंचने तक OUT कम रहता है, जिस बिंदु पर OUT को तब तक उच्च सेट किया जाएगा जब तक कि काउंटर पुनः लोड न हो जाए या नियंत्रण शब्द न लिखा जाए। काउंटर चारों ओर से लपेटता है <code>0xFFFF</code> आंतरिक रूप से और गणना जारी रहती है, परंतु OUT पिन फिर कभी नहीं बदलता है। सामान्य गणना के लिए "GATE" सिग्नल को उच्च स्तर पर सक्रिय रहना चाहिए। यदि "GATE" निम्न चला जाता है, तो गणना रोक दी जाती है, और फिर से ऊपर जाने पर गणना फिर से शुरू हो जाती है।
कंट्रोल वर्ड लिखे जाने के पश्चात OUT पिन को निम्न रूप से सेट किया जाता है, और COUNT प्रोग्राम होने के पश्चात गणना कालद चक्र प्रारंभ होता है। काउंटर 0 तक पहुंचने तक OUT निम्न रहता है, जिस बिंदु पर OUT को तब तक उच्च सेट किया जाएगा जब तक कि काउंटर पुनः लोड न हो जाए या नियंत्रण शब्द न लिखा जाए। काउंटर आंतरिक रूप से <code>0xFFFF</code> पर लपेटता है और गणना जारी रखता है, परंतु OUT पिन फिर कभी नहीं बदलता है। सामान्य गणना के लिए "GATE" सिग्नल को उच्च स्तर पर सक्रिय रहना चाहिए। यदि "GATE" निम्न चला जाता है, तो गणना रोक दी जाती है, और पुनः ऊपर जाने पर गणना पुनः प्रारंभ हो जाती है।


नई गणना की पहली बाइट गणना रजिस्टर में लोड होने पर पिछली गणना को रोक देती है।
नवीन गणना की पहली बाइट गणना रजिस्टर में लोड होने पर पूर्व गणना को रोक देती है।


=== मोड 1 (001): प्रोग्रामयोग्य शॉट ===
=== मोड 1 (001): प्रोग्रामेबल शॉट ===
इस मोड में 8253 का उपयोग [[मोनोस्टेबल मल्टीवाइब्रेटर]] के रूप में किया जा सकता है। GATE इनपुट का उपयोग ट्रिगर इनपुट के रूप में किया जाता है।
इस मोड में 8253 का उपयोग [[मोनोस्टेबल मल्टीवाइब्रेटर]] के रूप में किया जा सकता है। इस प्रकार से GATE इनपुट का उपयोग ट्रिगर इनपुट के रूप में किया जाता है।


प्रारंभ में OUT उच्च होगा। एक-शॉट पल्स शुरू करने के लिए ट्रिगर के पश्चात क्लॉक पल्स पर OUT कम हो जाएगा, और जब तक काउंटर शून्य तक नहीं पहुंच जाता तब तक कम रहेगा। फिर OUT उच्च स्तर पर जाएगा और अग्रिम ट्रिगर के पश्चात CLK पल्स तक उच्च बना रहेगा।
प्रारंभ में OUT उच्च होगा। एक-शॉट पल्स प्रारंभ करने के लिए ट्रिगर के पश्चात कालद पल्स पर OUT निम्न हो जाएगा, और जब तक काउंटर शून्य तक नहीं पहुंच जाता तब तक निम्न रहेगा। फिर OUT उच्च स्तर पर जाएगा और अग्रिम ट्रिगर के पश्चात CLK पल्स तक उच्च बना रहेगा।


नियंत्रण शब्द और प्रारंभिक गणना लिखने के पश्चात, काउंटर सशस्त्र है। ट्रिगर के परिणामस्वरूप काउंटर लोड होता है और अग्रिम "CLK" पल्स पर आउट कम सेट होता है, इस प्रकार एक-शॉट पल्स शुरू होता है। एन की प्रारंभिक गणना के परिणामस्वरूप अवधि में एक-शॉट पल्स एन "CLK" चक्र प्राप्त होगा।
नियंत्रण शब्द और प्रारंभिक गणना लिखने के पश्चात, काउंटर सशस्त्र है। ट्रिगर के परिणामस्वरूप काउंटर लोड होता है और अग्रिम "CLK" पल्स पर आउट निम्न सेट होता है, इस प्रकार एक-शॉट पल्स प्रारंभ होता है। N की प्रारंभिक गणना के परिणामस्वरूप अवधि में एक-शॉट पल्स N "CLK" चक्र प्राप्त होगा।


वन-शॉट पुनः ट्रिगर करने योग्य है, इसलिए किसी भी ट्रिगर के पश्चात एन "CLK" पल्स के लिए आउट कम रहेगा। एक-शॉट पल्स को काउंटर में समान गणना दोबारा लिखे बिना दोहराया जा सकता है। GATE का OUT पर कोई प्रभाव नहीं पड़ता. यदि ऑनशॉट पल्स के दौरान काउंटर पर नई गणना लिखी जाती है, तो वर्तमान वन-शॉट प्रभावित नहीं होता है जब तक कि काउंटर को फिर से चालू न किया जाए। उस स्थिति में, काउंटर को नई गणना के साथ लोड किया जाता है और नई गणना समाप्त होने तक वनशॉट पल्स जारी रहता है।
इस प्रकार से एक-शॉट पुनः ट्रिगर करने योग्य है, इसलिए किसी भी ट्रिगर के पश्चात N "CLK" पल्स के लिए आउट निम्न रहेगा। एक-शॉट पल्स को काउंटर में समान गणना दोबारा लिखे बिना दोहराया जा सकता है। GATE का OUT पर कोई प्रभाव नहीं पड़ता। यदि ऑनशॉट पल्स के समय काउंटर पर नवीन गणना लिखी जाती है, तो वर्तमान एक-शॉट प्रभावित नहीं होता है जब तक कि काउंटर को पुनः प्रारंभ न किया जाए। उस स्थिति में, काउंटर को नवीन गणना के साथ लोड किया जाता है और नवीन गणना समाप्त होने तक वनशॉट पल्स जारी रहता है।


=== मोड 2 (X10): दर जनरेटर ===
=== मोड 2 (X10): दर जनरेटर ===
इस मोड में, डिवाइस डिवाइड-बाय-एन काउंटर के रूप में कार्य करता है, जिसका उपयोग सामान्यतः वास्तविक समय घड़ी अंतरायन उत्पन्न करने के लिए किया जाता है।
इस मोड में, डिवाइस डिवाइड-बाय-n काउंटर के रूप में कार्य करता है, जिसका उपयोग सामान्यतः वास्तविक समय कालद अंतरायन उत्पन्न करने के लिए किया जाता है।


अन्य तरीकों की तरह, COUNT भेजे जाने के पश्चात गणना प्रक्रिया अग्रिम घड़ी चक्र शुरू कर देगी। तब तक OUT ऊंचा रहेगा जब तक काउंटर 1 तक नहीं पहुंच जाता, और क्लॉक पल्स के लिए कम हो जाएगा। अग्रिम चक्र में, गणना पुनः लोड की जाती है, OUT फिर से उच्च हो जाता है, और पूरी प्रक्रिया खुद को दोहराती है।
अन्य विधियों के जैसे, COUNT भेजे जाने के पश्चात गणना प्रक्रिया अग्रिम कालद चक्र प्रारंभ कर देगी। तब तक OUT ऊंचा रहेगा जब तक काउंटर 1 तक नहीं पहुंच जाता, और कालद पल्स के लिए निम्न हो जाएगा। अग्रिम चक्र में, गणना पुनः लोड की जाती है, OUT पुनः उच्च हो जाता है, और पूर्ण प्रक्रिया स्वयं को दोहराती है।


उच्च दालों के बीच का समय काउंटर के रजिस्टर में पूर्व निर्धारित गणना पर निर्भर करता है, और निम्न सूत्र का उपयोग करके गणना की जाती है:
उच्च पल्स के बीच का समय काउंटर के रजिस्टर में पूर्व निर्धारित गणना पर निर्भर करता है, और निम्न सूत्र का उपयोग करके गणना की जाती है:


काउंटर में लोड किया जाने वाला मान = <math>f_{\rm input}\over f_{\rm output}</math>
काउंटर में लोड किया जाने वाला मान = <math>f_{\rm input}\over f_{\rm output}</math>
ध्यान दें कि COUNT रजिस्टर में मानों की सीमा होती है <math>n</math> से 1; रजिस्टर कभी भी शून्य तक नहीं पहुंचता.
 
इस प्रकार से ध्यान दें कि COUNT रजिस्टर में मान <math>n</math> से 1 तक होते हैं; रजिस्टर कभी भी शून्य तक नहीं पहुंचता।


=== मोड 3 (X11): वर्ग तरंग जनरेटर ===
=== मोड 3 (X11): वर्ग तरंग जनरेटर ===