Showing posts with label Direct Memory Access Controller in hindi. Show all posts
Showing posts with label Direct Memory Access Controller in hindi. Show all posts

Friday, August 14, 2020

Learn DMA Controller in Hindi And dma controller block diagram



Definition Of DMA Controller in Hindi:  DMA or Direct Memory Access Controller एक बाहरी डिवाइस है जो प्रोसेसर की भागीदारी के बिना I / O डिवाइस और मेमोरी के बीच डेटा के हस्तांतरण को नियंत्रित करता है। यह पढ़ने या लिखने के संचालन के लिए मुख्य मेमोरी को सीधे एक्सेस करने की क्षमता रखता है।

DMA Controller को इंटेल द्वारा डिजाइन किया गया था, जिसमें कम प्रोसेसर उपयोग के साथ सबसे तेज डेटा ट्रांसफर दर थी।

हम जानते हैं कि किसी ऑपरेशन को अंजाम देने के लिए, Microprocessors पहले निर्देश प्राप्त करता है और फिर उसे डिकोड करता है, फिर आगे निष्पादित करता है। लेकिन व्यक्तिगत रूप से अगर प्रोसेसर सिस्टम के अंदर सभी कार्य कर रहा है तो यह अनावश्यक रूप से प्रोसेसर को हर समय व्यस्त रखता है।

इसलिए, प्रोसेसर के प्रदर्शन को बढ़ाने के लिए, एक बाहरी डिवाइस का उपयोग किया जाता है जो कम से कम सीपीयू उपयोग के साथ बाह्य उपकरणों और मेमोरी के बीच डेटा ट्रांसफर ऑपरेशन का प्रबंधन कर सकता है।

असल में, यह हार्डवेयर नियंत्रित डेटा ट्रांसफर के अलावा कुछ भी नहीं है, जहां डेटा ट्रांसफर करने के लिए जरूरी एड्रेस और कंट्रोल सिग्नल किसी बाहरी डिवाइस द्वारा जनरेट किए जाते हैं। डेटा ट्रांसफर की इस पद्धति को प्रत्यक्ष मेमोरी एक्सेस के रूप में जाना जाता है और इस उद्देश्य के लिए उपयोग किए जाने वाले बाहरी डिवाइस को DMA controller के रूप में जाना जाता है।

Read About DMA Controller Need In Hindi :
हम जानते हैं कि आम तौर पर जब भी बाह्य उपकरणों और मुख्य मेमोरी के बीच डेटा के हस्तांतरण की आवश्यकता होती है, तो पहले डेटा प्रोसेसर को इनपुट डिवाइस द्वारा दिया जाता है और फिर प्रोसेसर मेमोरी में डेटा को आगे स्थानांतरित करता है।

और डेटा ट्रांसफर ऑपरेशन के समय, प्रोसेसर किसी अन्य ऑपरेशन को निष्पादित करने में सक्षम नहीं हो सकता है।

इसलिए जब सिस्टम में डीएमए कंट्रोलर होता है तो यह सीपीयू को डाटा ट्रांसफर ऑपरेशन से मुक्त कर देता है और उस विशेष समय में सीपीयू अन्य ऑपरेशन को निष्पादित कर सकता है।

अब तक हमने DMA controller की आवश्यकता पर चर्चा की है, हमें आगे बढ़ने और समझने की आवश्यकता है कि डीएमए डेटा हस्तांतरण के लिए किसी भी निर्देश को कैसे निष्पादित करता है।

Read DMA Operations in Microprocessor And Check dma controller block diagram

मूल रूप से जब भी I / O Device को मेमोरी में डेटा ट्रांसफर करने की आवश्यकता होती है, तो यह शुरुआत में डीएमए कंट्रोलर को एक अनुरोध भेजता है। डेटा ट्रांसफर अनुरोध प्राप्त करने पर, नियंत्रक सीपीयू के लिए होल्ड अनुरोध भेजता है और HLDA की प्रतीक्षा करता है जो CPU द्वारा स्वीकार किए जाने के अलावा कुछ भी नहीं है।

इसलिए, कंट्रोलर द्वारा होल्ड रिक्वेस्ट मिलने पर, CPU सभी बसों (यानी, डेटा, कंट्रोल और एड्रेस बस) पर नियंत्रण छोड़ देता है और कंट्रोलर को HLDA भेजता है।

इसलिए अब प्रोसेसर किसी भी डेटा ट्रांसफर ऑपरेशन से तब तक मुक्त हो जाता है जब तक कि हस्तांतरण के पूरा होने के बारे में (DMA controller in Hindi) द्वारा एक बाधा उत्पन्न नहीं होती है।

नीचे दिया गया आंकड़ा DMA controller वाली प्रणाली का प्रतिनिधित्व करता है:


dma controller block diagram
dma controller block diagram


आइए हम नियंत्रक के निष्क्रिय और सक्रिय स्थिति पर विचार करके सिस्टम के अंदर डीएमए नियंत्रक के संचालन को समझते हैं।

सिस्टम के निष्क्रिय चक्र में, शुरू में जब सिस्टम चालू होता है, तो प्रोसेसर का सिस्टम बसों पर नियंत्रण होता है, क्योंकि स्विच X स्थिति से जुड़ा होता है।

ऐसा इसलिए है क्योंकि, इस स्थिति में, बस प्रोसेसर के माध्यम से मुख्य मेमोरी और बाह्य उपकरणों के बीच संबंध बनाते हैं। तो, इस स्थिति में, प्रोसेसर निर्देश का निष्पादन करता है।

लेकिन एक बार, डिस्क से डेटा को पढ़ने के लिए आवश्यकता होती है। फिर माइक्रोप्रोसेसर उस विशेष डेटा के रीड ऑपरेशन के बारे में डिस्क नियंत्रक को एक निर्देश भेजता है।

आवश्यक डेटा लाने पर, डिस्क नियंत्रक (परिधीय उपकरण) डीएमए अनुरोध भेजता है, अर्थात डीएमए नियंत्रक डीएमए सिग्नल। यह DRQ सिग्नल दिखाता है कि डिवाइस सीधे प्रोसेसर को परेशान किए बिना डेटा को मेमोरी में ट्रांसफर करना चाहता है।

इसलिए, DRQ सिग्नल प्राप्त करने पर, होल्ड रिक्वेस्ट यानि HRQ सिग्नल को DMA कंट्रोलर द्वारा माइक्रोप्रोसेसर को भेजा जाता है।

एचआरक्यू सिग्नल डीएमए नियंत्रक के हित को दिखाता है ताकि सिस्टम बसों तक पहुंच हो। इसलिए, होल्ड अनुरोध प्राप्त करने पर, DMA नियंत्रक को नियंत्रण प्रदान करने के लिए सीपीयू अपनी बसों को हटा देता है।

एक बार जब प्रोसेसर बसों को मुक्त कर देता है, तो यह एचएमडीए सिग्नल को DMA controller को भेजता है। और एचएलडीए सिग्नल प्राप्त करने पर, बसों पर नियंत्रण डीएमए नियंत्रक को दिया जाता है क्योंकि स्विच स्थिति अब एक्स से वाई में बदल जाती है।

इसलिए, बसों पर नियंत्रण पाने से, डीएमए का सक्रिय चक्र सक्षम हो जाता है। इस प्रकार अब यह डिस्क नियंत्रक को डिस्चार्ज सिग्नल डीएके भेजता है जो दिखाता है कि यह अब डेटा ट्रांसफर के लिए तैयार है।

अब, डिस्क नियंत्रक को स्वीकार करने के बाद, आगे, DMA controller उस ऑपरेशन के अनुसार बस पर नियंत्रण संकेत लोड करता है जिसे प्रदर्शन किया जाना है।

मान लीजिए कि एक लिखित ऑपरेशन के मामले में, IOR और MEMW 'सिग्नल लोड किए गए हैं। इसलिए, जब IOR सिग्नल डिस्क कंट्रोलर द्वारा प्राप्त किया जाता है तो यह डेटा बस में आवश्यक डेटा लोड करता है। इसके अलावा, MEMW 'सिग्नल पता बस पर पता की उपस्थिति को दर्शाता है जहां डेटा स्थानांतरित किया जाना है।

इस प्रकार डिस्क नियंत्रक सीपीयू के उपयोग के बिना वांछित मेमोरी स्थान पर डेटा को सीधे स्थानांतरित कर सकता है।

एक बार जब डेटा ट्रांसफर पूरा हो जाता है तो DMA कंट्रोलर Y से फिर से X में स्विच की स्थिति को अलग करके एक अवरोध उत्पन्न करता है। यह डेटा ट्रांसफर ऑपरेशन के पूरा होने के बारे में माइक्रोप्रोसेसर को इंगित करता है।

तो, इसके द्वारा, बसों का नियंत्रण फिर से प्रोसेसर में स्थानांतरित कर दिया जाता है और यह आगे के संचालन को निष्पादित करना शुरू कर देता है। यह सिस्टम के अंदर (DMA controller in Hindi) का मूल कार्य है।

आइए हम 8257 डीएमए नियंत्रक के वास्तु प्रतिनिधित्व पर एक नज़र डालें।

 Architecture of 8257 DMA Controller in Hindi

dma controller block diagram
The architecture of 8257 DMA Controller

Features For 8257A

  •     इसमें 4 चैनल होते हैं जिनका उपयोग 4 इनपुट / आउटपुट डिवाइस पर किया जा सकता है।
  •     सभी 4 चैनलों को अलग से प्रोग्राम किया जा सकता है।
  •     सभी 4 चैनल 16-बिट एड्रेस और 14-बिट काउंटर को अलग-अलग रखते हैं।
  •     अनुमन्य डेटा अंतरण 64 Kb तक है।
  •     ऑपरेटिंग आवृत्ति 250 हर्ट्ज से 3 मेगाहर्ट्ज के बीच होती है।
  •     किए गए तीन ऑपरेशन हैं: ट्रांसफर पढ़ना, ट्रांसफर लिखना और ट्रांसफर को वेरिफाई करना।
  •     8257 के दो ऑपरेटिंग मोड मास्टर मोड और दास मोड हैं।

नीचे दिया गया Pin Diagram for  8257 DMA controller के PIN आरेख को दर्शाता है:


Pin Diagram for  8257 DMA controller
Pin Diagram for  8257 DMA controller

DRQ0 से DRQ3 - Pin Number 16 से 19 - जब भी इनपुट डिवाइस डायरेक्ट डेटा ट्रांसफर के लिए या मुख्य मेमोरी से DMA कंट्रोलर से अनुरोध करता है तो ये पिन सक्षम हो जाते हैं। सभी 4 के बीच, DRQ0 सर्वोच्च प्राथमिकता, निश्चित प्राथमिकता मोड में रखती है।

DACK0 से DACK3 - पिन नंबर 14, 15, 24 और 25 - ये सक्रिय निम्न संकेत हैं जो परिधीय उपकरणों द्वारा DMQ की स्वीकृति दिखाने के लिए नियंत्रक द्वारा उत्पन्न कुछ नहीं बल्कि पावती संकेत हैं।

IOR - पिन नंबर 1 - ऑपरेशन के मास्टर मोड में, इस पिन पर कम संकेत डीएमए नियंत्रक द्वारा परिधीय डिवाइस पर रीड ऑपरेशन को इंगित करता है। हालांकि, दास मोड में, यह दर्शाता है कि प्रोसेसर द्वारा आंतरिक रजिस्टर पर रीड ऑपरेशन किया जाता है।

IOW - पिन नंबर 2 - यह एक सक्रिय लो पिन भी है। मास्टर मोड में इस पिन पर एक कम संकेत दिखाता है कि परिधीय डिवाइस पर लेखन ऑपरेशन प्रदर्शन कर रहा है। हालाँकि, दास मोड में, डेटा बस रजिस्टर में अपनी सामग्री लोड करती है।

D0 से D7 - पिन नंबर 26 से 30 और 21 से 23 - ये डेटा लाइनें हैं जो दास मोड में कमांड और स्टेटस शब्द रखती हैं। मास्टर मोड में रहते हुए यह उच्च पता बाइट्स को कुंडी में स्थानांतरित करता है।

A0 से A3 - पिन नंबर 32 से 35 - ये 4 कम से कम महत्वपूर्ण पता लाइनें हैं जो क्रमशः सिस्टम के दास और मास्टर ऑपरेटिंग मोड में इनपुट और आउटपुट के रूप में कार्य करते हैं।


A 4 से A 7 - पिन नंबर 37 से 40 - ये मूल रूप से मास्टर मोड में कंट्रोलर द्वारा उत्पादित लोअर ऑर्डर एड्रेस लाइनें हैं।
 

CLK - पिन नंबर 12 - यह पिन 8257 को आंतरिक घड़ी आवृत्ति संकेत प्रदान करने के लिए उपयोग किया जाता है।

CS - पिन नंबर 11 - सीएस चिप चयन को दर्शाता है और यह एक सक्रिय लो पिन है।

HRQ - पिन नंबर 10 - इस पिन को सक्षम करने से रीड-राइट ऑपरेशन के लिए परिधीय डिवाइस द्वारा मेमोरी को सीधे एक्सेस करने का अनुरोध दिखाता है।

HLDA - पिन नंबर 7 - इस पिन को सक्षम करना DMA controller के सिग्नल को रखने के जवाब में प्रोसेसर द्वारा पावती का प्रतिनिधित्व करता है।

MEMR - पिन नंबर 3 - इस विशेष पिन पर एक कम संकेत यह दर्शाता है कि परिधीय डिवाइस द्वारा रीड ऑपरेशन मेमोरी पर प्रदर्शन कर रहा है।

MEMW - पिन नंबर 4 - यह एक सक्रिय लो पिन भी है। यह परिधीय उपकरण द्वारा मेमोरी राइट ऑपरेशन के समय सक्षम हो जाता है।

ADSTB - पिन नंबर 8 - यह पता स्ट्रोब के लिए है। इस पिन को सक्षम करने से पता और डेटा बस को latches का उपयोग करने के लिए demultiplex किया जाएगा।

वीसीसी - पिन नंबर 31 - इस पिन पर ऑपरेशन के लिए सिग्नल लगाया गया है।

यह सब 8257 पिन विवरण के साथ (DMA controller in Hindi) के संचालन के बारे में है।