DMA in Hindi & DMA Transfer modes in Hindi

DMA in Hindi – DMA क्या है?

DMA (डीएमए) का पूरा नाम direct memory access (डायरेक्ट मैमोरी एक्सेस) है. DMA एक ऐसी विधी है जिसके द्वारा डेटा को कंप्यूटर की RAM (रैंडम एक्सेस मैमोरी) से इनपुट/आउटपुट devices में बिना सी.पी.यू. का प्रयोग किये ट्रान्सफर किया जाता है.

इससे मैमोरी ऑपरेशनों की गति बढती है तथा डेटा ट्रान्सफर की गति बढती है. डेटा ट्रान्सफर में वही समय लगता है जो मैमोरी से डेटा read तथा write करने में लगता है. इसमें डेटा एक ब्लॉक के रूप में ट्रान्सफर होता है.

कंप्यूटर में ज्यादातर डेटा सी.पी.यू. के द्वारा प्रोसेस होता है किंतु कंप्यूटर में कुछ डेटा को प्रोसेस करने की जरुरत नहीं होती है इस स्थिती में DMA जो है वह प्रोसेसिंग में लगने वाले समय को save कर सकता है तथा डेटा को अच्छी तरीके से कंप्यूटर की मैमोरी से दूसरे डिवाइसों में ट्रान्सफर कर सकता है.

यह पूरी प्रक्रिया एक चिप के द्वारा मैनेज होती है जिसे हम DMA controller (DMAC) कहते है. डीएमए कंट्रोलर डेटा को contain नहीं करता है बल्कि यह केवल bus को drive करता है. डीएमए कंट्रोलर एक i/o डिवाइस को DMA सिग्नल द्वारा एक्सेस करता है.

DMA in hindi diagram

बहुत सारें हार्डवेयर सिस्टम DMA का प्रयोग करते है जैसे कि डिस्क ड्राइव कंट्रोलर्स, ग्राफ़िक कार्ड, नेटवर्क कार्ड तथा साउंड कार्ड आदि.

जब भी कोई डिवाइस डीएमए का प्रयोग करती है तो उसे एक विशेष डीएमए चैनल को specify करना पड़ता है जिसे वह प्रयोग करती है.

Ultra DMA हार्ड ड्राइव जो है वह DMA का प्रयोग डेटा को तेज गति से ट्रान्सफर करने के लिए करती है जबकि पहले कि जो हार्ड ड्राइव थी, उसमें सबसे पहले डेटा सी.पी.यू. से होकर ट्रान्सफर होता था. जिससे समय अधिक लग जाता था.

डीएमए का एक दूसरा विकल्प है PIO (programmed input/output). जिसमें डिवाइसों के मध्य ट्रान्सफर होने वाला डेटा प्रोसेसर से होकर गुजरता है. PIO जो है वह डीएमए से धीमा होता है.

पुराने कंप्यूटरों में चार डीएमए चैनल 0, 1, 2, तथा 3 होते थे. जब 16 बिट ISA bus प्रस्तावित हुआ तो चैनल 5, 6, तथा 7 भी उसमें जुड़ गये.

ISA एक कंप्यूटर बस स्टैण्डर्ड था जिसके द्वारा डिवाइस तेज गति से transactions को आरम्भ करते थे.
ISA को बाद में AGP (accelerated graphics port) तथा PCI (peripheral component interconnect) expansion boards ने replace कर दिया. जो कि ISA से भी तेज है.

कंप्यूटर के सिस्टम रिसोर्स टूल्स निम्नलिखित चार प्रकार के होते है.:-
1:- i/o addresses
2:- memory address
3:- interrupt request number (IRQ)
4:- DMA channels.

डीएमए चैनलों का प्रयोग सिस्टम मैमोरी तथा पेरिफेरल डिवाइसों के मध्य डेटा को कम्यूनिकेट करने के लिए किया जाता है.

ये सभी चारों सिस्टम रिसोर्स जो है वह बस की किसी नियत लाइन पर निर्भर रहती है. बस में कुछ लाइन्स IRQs के लिए प्रयोग होती है, कुछ address के लिए तथा कुछ डीएमए चैनलों के लिए.

DMA transfer modes in Hindi – डीएमए ट्रान्सफर मोड क्या है?

DMA transfer modes निम्नलिखित तीन प्रकार के होते है:-

  1. Burst या block transfer DMA
  2. Cycle steal या single byte transfer DMA
  3. Transparent या hidden DMA

1:- Burst या block transfer DMA:-

यह सबसे तेज डीएमए मोड है इसमें दो या दो से अधिक डेटा bytes को लगातार ट्रान्सफर किया जा सकता है.

इसमें DMA जो है वह सिस्टम बस के लिए प्रोसेसर को HOLD सिग्नल भेजता है तथा HLDA सिग्नल का इन्तजार करता है.
HLDA सिग्नल जब उसे रिसीव हो जाता है तो उसके बाद DMA, सिस्टम बस पर नियन्त्रण कर लेता है तथा एक byte भेजता है. एक byte भेजने के बाद यह मैमोरी एड्रेस को बढ़ा देता है, काउंटर को घटा देता है तथा फिर दूसरी byte को भेजता है.

इस प्रकार यह सभी डेटा bytes को मैमोरी तथा i/o डिवाइस के मध्य ट्रान्सफर कर लेता है. सभी डेटा bytes को ट्रान्सफर करने के बाद dma कंट्रोलर जो है वह HOLD सिग्नल को disable कर देता है तथा salve मोड में चला जाता है.

2:- cycle steal या single byte transfer डीएमए:-

इस मोड में एक समय में केवल एक बाइट ही ट्रान्सफर की जाती है, यह मोड burst DMA से धीमा है.

इसमें DMA जो है वह HOLD सिग्नल को प्रोसेसर को भेजता है तथा HLDA सिग्नल को रिसीव करने का इन्तजार करता है जब HLDA सिग्नल इसे प्राप्त हो जाता है तो यह सिस्टम बस को नियंत्रित कर लेता है तथा केवल एक DMA cycle को execute करता है.

जब एक बाइट को ट्रान्सफर कर लिया जाता है, उसके बाद यह HOLD सिग्नल को disable कर देता है तथा salve मोड में चला जाता है.

इसके बाद प्रोसेसर फिर से सिस्टम बस पर नियन्त्रण कर लेता है तथा अगली machine cycle को execute करता है. यदि count शून्य नहीं है तथा डेटा उपलब्ध है तो तब DMA controllers प्रोसेसर को HOLD सिग्नल भेजते है तथा अगली बाइट को ट्रान्सफर करते है.

3:- transparent या hidden डीएमए:-

इसमें प्रोसेसर कुछ ऐसी status को execute करता है जिससे वह सिस्टम बस से अलग जाता है.

DMA जो है वह इन status के दौरान मैमोरी तथा i/o डिवाइसों के मध्य डेटा ट्रान्सफर करता है और यह ऑपरेशन, प्रोसेसर के लिए transparent रहती है.

यह सबसे धीमा डेटा ट्रान्सफर मोड है.

निवेदन:- आपके लिए यह पोस्ट helpful रही हो तो कमेंट के द्वारा बताइए तथा इसे अपने दोस्तों के साथ share करें. धन्यवाद.

14 thoughts on “DMA in Hindi & DMA Transfer modes in Hindi”

Leave a Comment