इंटेल 8253: Difference between revisions

From Vigyanwiki
No edit summary
m (7 revisions imported from alpha:इंटेल_8253)
 
(3 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 275: Line 275:
|align=left| रीड-बैक कमांड काउंटर 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 स्टैटस वर्ड
|+ 8254 स्टैटस वर्ड
Line 318: Line 317:


== ऑपरेशन मोड ==
== ऑपरेशन मोड ==
नियंत्रण शब्द के 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): वर्ग तरंग जनरेटर ===
यह मोड मोड 2 के समान है। यद्यपि, आउटपुट की उच्च और निम्न क्लॉक पल्स की अवधि मोड 2 से भिन्न होगी।
यह मोड मोड 2 के समान है। यद्यपि, आउटपुट की उच्च और निम्न कालद पल्स की अवधि मोड 2 से भिन्न होगी।


कल्पना करना <math>n</math> काउंटर में लोड की गई संख्या (COUNT संदेश) है, तो आउटपुट अधिक होगा <math>\left\lceil{n\over2}\right\rceil</math> मायने रखता है, और इसके लिए कम है <math>\left\lfloor{n\over2}\right\rfloor</math> मायने रखता है. इस प्रकार, अवधि होगी <math>n</math> मायने रखता है, और यदि <math>n</math> अजीब है, अतिरिक्त आधा चक्र OUT उच्च के साथ व्यतीत होता है।
मान लीजिए कि <math>n</math> काउंटर (COUNT संदेश) में लोड की गई संख्या है, आउटपुट <math>\left\lceil{n\over2}\right\rceil</math> गणनाओं के लिए उच्च होगा, और <math>\left\lfloor{n\over2}\right\rfloor</math> गणनाओं के लिए कम होगा। इस प्रकार, अवधि <math>n</math> गणना होगी, और यदि <math>n</math> विषम है, तो अतिरिक्त अर्ध चक्र OUT उच्च के साथ व्यतीत किया जाता है।


=== मोड 4 (100): सॉफ्टवेयर ट्रिगर स्ट्रोब ===
=== मोड 4 (100): सॉफ्टवेयर ट्रिगर स्ट्रोब ===
कंट्रोल वर्ड और COUNT लोड होने के पश्चात, काउंटर शून्य तक पहुंचने तक आउटपुट उच्च रहेगा। फिर काउंटर 1 घड़ी चक्र (एक स्ट्रोब) के लिए कम पल्स उत्पन्न करेगा - उसके पश्चात आउटपुट फिर से उच्च हो जाएगा।
कंट्रोल वर्ड और COUNT लोड होने के पश्चात, काउंटर शून्य तक पहुंचने तक आउटपुट उच्च रहेगा। फिर काउंटर 1 कालद चक्र (एक स्ट्रोब) के लिए निम्न पल्स उत्पन्न करेगा - उसके पश्चात आउटपुट पुनः उच्च हो जाएगा।


GATE निम्न गणना को निलंबित कर देता है, जो GATE के दोबारा उच्च होने पर फिर से प्रारंभ हो जाती है।
GATE निम्न गणना को निलंबित कर देता है, जो GATE के दोबारा उच्च होने पर पुनः प्रारंभ हो जाती है।


=== मोड 5 (101): हार्डवेयर ट्रिगर स्ट्रोब ===
=== मोड 5 (101): हार्डवेयर ट्रिगर स्ट्रोब ===
यह मोड मोड 4 के समान है। यद्यपि, गणना प्रक्रिया GATE इनपुट द्वारा ट्रिगर होती है।
इस प्रकार से यह मोड मोड 4 के समान है। यद्यपि, गणना प्रक्रिया GATE इनपुट द्वारा ट्रिगर होती है।


कंट्रोल वर्ड और COUNT प्राप्त करने के पश्चात, आउटपुट हाई सेट कर दिया जाएगा। बार जब डिवाइस GATE इनपुट पर बढ़ते किनारे का पता लगा लेता है, तो यह गणना प्रारंभ कर देगा। जब काउंटर 0 पर पहुंचता है, तो आउटपुट घड़ी चक्र के लिए कम हो जाएगा - उसके पश्चात यह GATE के अग्रिम बढ़ते किनारे पर चक्र को दोहराने के लिए फिर से उच्च हो जाएगा।
कंट्रोल वर्ड और COUNT प्राप्त करने के पश्चात, आउटपुट हाई सेट कर दिया जाएगा। बार जब डिवाइस GATE इनपुट पर बढ़ते एज को ज्ञात कर लेता है, तो यह गणना प्रारंभ कर देगा। जब काउंटर 0 पर पहुंचता है, तो आउटपुट कालद चक्र के लिए निम्न हो जाएगा - उसके पश्चात यह GATE के अग्रिम बढ़ते एज पर चक्र को दोहराने के लिए पुनः उच्च हो जाएगा।


== आईबीएम पीसी प्रोग्रामिंग ==
== आईबीएम पीसी प्रोग्रामिंग ==


8253 का उपयोग 1981 में उनकी प्रारंभ के पश्चात से आईबीएम पीसी संगतों में किया गया था।<ref>{{cite web |url=http://www.microsoft.com/whdc/system/sysinternals/mm-timer.mspx |title=मल्टीमीडिया टाइमर समर्थन प्रदान करने के लिए दिशानिर्देश|website=[[Microsoft]] |date=20 September 2002 |accessdate=2010-10-13}}</ref> आधुनिक समय में, इस PIT को x[[86]] PC में अलग चिप के रूप में शामिल नहीं किया गया है। बल्कि, इसकी कार्यक्षमता मदरबोर्ड चिपसेट के साउथब्रिज (कंप्यूटिंग) के हिस्से के रूप में शामिल है। आधुनिक चिपसेट में, यह परिवर्तन x86 आई/ओ एड्रेस स्पेस में PIT के रजिस्टरों तक काफ़ी तेज़ पहुंच के रूप में दिखाई दे सकता है।
8253 का उपयोग 1981 में उनकी प्रारंभ के पश्चात से आईबीएम पीसी संगतों में किया गया था।<ref>{{cite web |url=http://www.microsoft.com/whdc/system/sysinternals/mm-timer.mspx |title=मल्टीमीडिया टाइमर समर्थन प्रदान करने के लिए दिशानिर्देश|website=[[Microsoft]] |date=20 September 2002 |accessdate=2010-10-13}}</ref> आधुनिक समय में, इस पीआईटी को x[[86]] PC में अलग चिप के रूप में सम्मिलित नहीं किया गया है। यद्यपि, इसकी कार्यक्षमता मदरबोर्ड चिपसेट के साउथब्रिज (कंप्यूटिंग) के भाग के रूप में सम्मिलित है। आधुनिक चिपसेट में, यह परिवर्तन x86 आई/ओ एड्रेस स्पेस में पीआईटी के रजिस्टरों तक अत्यधिक तीव्र एक्सेस के रूप में दिखाई दे सकता है।


सभी पीसी संगत पीआईटी को 105/88 = 1.193 की क्लॉक दर पर संचालित करते हैं{{overline|18}} मेगाहर्ट्ज, {{frac|3}} [[एनटीएससी]] [[ रंग-विस्फोट |रंग-विस्फोट]] फ्रीक्वेंसी जो सिस्टम क्लॉक (14.31818 मेगाहर्ट्ज) को 12 से विभाजित करने से आती है। यह सबसे पहले [[ रंग ग्राफ़िक्स एडाप्टर |रंग ग्राफ़िक्स एडाप्टर]] पीसी का होल्डओवर है - उन्होंने ही [[क्रिस्टल थरथरानवाला]] से सभी आवश्यक आवृत्तियों को प्राप्त किया, और टीवी आउटपुट को संभव बनाने के लिए, इस ऑसिलेटर को एनटीएससी रंग सबकैरियर आवृत्ति के गुणक पर चलाना था। यह आवृत्ति, 2 से विभाजित है<sup>16</sup> (सबसे बड़ा विभाजक जो 8253 सक्षम है) [[MS-DOS]] और संबंधित ऑपरेटिंग सिस्टम में उपयोग किए जाने वाले ≈18.2 Hz टाइमर इंटरप्ट का उत्पादन करता है।
सभी पीसी संगत पीआईटी को 105/88 = 1.193{{overline|18}} मेगाहर्ट्ज की कालद दर पर संचालित करते हैं, {{frac|3}} [[एनटीएससी]] [[ रंग-विस्फोट |वर्ण-विस्फोट]] आवृत्ति जो सिस्टम कालद (14.31818 मेगाहर्ट्ज) को 12 से विभाजित करने से आती है। यह सर्वप्रथम वर्ण [[ रंग ग्राफ़िक्स एडाप्टर |ग्राफ़िक्स एडाप्टर]] पीसी का होल्डओवर है - उन्होंने ही [[क्रिस्टल थरथरानवाला|क्रिस्टल दोलित्र]] से सभी आवश्यक आवृत्तियों को प्राप्त किया, और टीवी आउटपुट को संभव बनाने के लिए, इस दोलित्र को एनटीएससी वर्ण सबकैरियर आवृत्ति के गुणक पर चलाना था। यह आवृत्ति, 2<sup>16</sup> से विभाजित (सबसे बड़ा विभाजक जो 8253 सक्षम है) [[MS-DOS|एमएस-डॉस]] और संबंधित ऑपरेटिंग सिस्टम में उपयोग किए जाने वाले ≈18.2 Hz टाइमर इंटरप्ट का उत्पादन करती है।


मूल आईबीएम पीसी में, काउंटर 0 का उपयोग टाइमकीपिंग अंतरायन उत्पन्न करने के लिए किया जाता है। काउंटर 1 का उपयोग [[DRAM|डीरैम]] मेमोरी के रिफ्रेश को ट्रिगर करने के लिए किया जाता है। काउंटर 2 का उपयोग पीसी स्पीकर के माध्यम से टोन उत्पन्न करने के लिए किया जाता है।
इस प्रकार से मूल आईबीएम पीसी में, काउंटर 0 का उपयोग टाइमकीपिंग अंतरायन उत्पन्न करने के लिए किया जाता है। काउंटर 1 का उपयोग [[DRAM|डीरैम]] मेमोरी के रिफ्रेश को ट्रिगर करने के लिए किया जाता है। काउंटर 2 का उपयोग पीसी स्पीकर के माध्यम से टोन उत्पन्न करने के लिए किया जाता है।


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