इनपुट–आउटपुट ऑर्गेनाइजेशन (Input–Output Organization)


इनपुटआउटपुट ऑर्गेनाइजेशन (Input–Output Organization)

Input–Output (I/O) Organization कंप्यूटर ऑर्गेनाइजेशन का वह भाग है जो CPU, मेमोरी और बाहरी उपकरणों (devices) के बीच डेटा के आदान-प्रदान और नियंत्रण को प्रबंधित करता है। इसमें I/O डिवाइस के साथ संचार, नियंत्रण और सिंक्रोनाइज़ेशन शामिल होता है।


मूल अवधारणा

  • कंप्यूटर और बाहरी डिवाइस के बीच संचार को नियंत्रित करता है
  • CPU, मेमोरी और I/O डिवाइस के बीच डेटा ट्रांसफर करवाता है
  • अलग-अलग स्पीड और डेटा फॉर्मेट वाले डिवाइस को संभालता है

I/O डिवाइस के उदाहरण

इनपुट डिवाइस:
कीबोर्ड, माउस, स्कैनर, माइक्रोफोन, बारकोड रीडर

आउटपुट डिवाइस:
मॉनिटर, प्रिंटर, स्पीकर, प्लॉटर

स्टोरेज डिवाइस:
हार्ड डिस्क, USB ड्राइव, SSD


I/O ऑर्गेनाइजेशन की आवश्यकता

CPU और मेमोरी बहुत तेज होते हैं जबकि I/O डिवाइस अपेक्षाकृत धीमे होते हैं। अंतर होता है:

  • स्पीड में
  • डेटा फॉर्मेट में
  • ट्रांसफर रेट में
  • कंट्रोल मेथड में

इन अंतर को संभालने के लिए विशेष I/O व्यवस्था जरूरी है।


बेसिक I/O ट्रांसफर संरचना

डेटा पथ:
इनपुट डिवाइस → I/O इंटरफेससिस्टम बसमेमोरी/CPU
आउटपुट डिवाइस ← I/O इंटरफेससिस्टम बसमेमोरी/CPU


I/O इंटरफेस (I/O मॉड्यूल)

CPU और I/O डिवाइस के बीच हार्डवेयर यूनिट जो कंट्रोलर + ट्रांसलेटर का काम करती है।

मुख्य कार्य:

  • डिवाइस कंट्रोल और टाइमिंग
  • डेटा बफरिंग
  • एरर डिटेक्शन
  • सिग्नल कन्वर्ज़न
  • स्टेटस रिपोर्टिंग

 

 

डेटा ट्रांसफर के तरीके

1️ Programmed I/O (Polling)

  • CPU बार-बार डिवाइस स्टेटस चेक करता है
  • पूरा ट्रांसफर CPU नियंत्रित करता है
  • सरल लेकिन CPU समय बर्बाद
  • धीमे डिवाइस के लिए अप्रभावी

2️ Interrupt Driven I/O

  • डिवाइस तैयार होने पर इंटरप्ट भेजता है
  • CPU ISR चलाकर डेटा ट्रांसफर करता है
  • CPU समय बचता है
  • कंट्रोल लॉजिक थोड़ा जटिल

3️ DMA (Direct Memory Access)

  • डेटा सीधे डिवाइस और मेमोरी के बीच ट्रांसफर
  • CPU हर स्टेप में शामिल नहीं
  • DMA कंट्रोलर द्वारा नियंत्रित
  • बड़े डेटा ब्लॉक के लिए सबसे तेज
  • अतिरिक्त हार्डवेयर चाहिए

I/O एड्रेसिंग मेथड

Memory Mapped I/O

  • I/O डिवाइस को मेमोरी एड्रेस दिया जाता है
  • मेमोरी जैसी ही इंस्ट्रक्शन से एक्सेस
  • प्रोग्रामिंग आसान

Isolated (Port Mapped) I/O

  • I/O के लिए अलग एड्रेस स्पेस
  • विशेष IN/OUT इंस्ट्रक्शन उपयोग

I/O बफरिंग

डेटा ट्रांसफर के दौरान अस्थायी स्टोरेज।

प्रकार:

  • सिंगल बफरएक बफर
  • डबल बफरदो बफर बारी-बारी
  • सर्कुलर बफरलगातार डेटा स्ट्रीम

I/O कंट्रोलर और चैनल

  • I/O कंट्रोलर: एक या अधिक डिवाइस को कंट्रोल करता है
  • I/O चैनल: उन्नत कंट्रोलर, स्वतंत्र रूप से I/O कार्य कर सकता है

I/O मेथड तुलना

मेथड

CPU उपयोग

स्पीड

लागत

Programmed I/O

अधिक

धीमी

कम

Interrupt I/O

मध्यम

बेहतर

मध्यम

DMA

कम

तेज

अधिक


***********************************************************************************************

परिधीय उपकरण (Peripheral Devices)

परिधीय उपकरण वे बाहरी हार्डवेयर डिवाइस हैं जो कंप्यूटर सिस्टम से जुड़े होते हैं। ये CPU का हिस्सा नहीं होते, लेकिन I/O इंटरफेस और कंट्रोलर के माध्यम से CPU के नियंत्रण में कार्य करते हैं। ये इनपुट, आउटपुट, स्टोरेज और संचार कार्यों में मदद करते हैं।


कंप्यूटर सिस्टम का मूल प्रवाह

इनपुट डिवाइस → I/O कंट्रोलर → CPU (ALU, CU, Registers) → मुख्य मेमोरीआउटपुट डिवाइस


परिधीय उपकरणों का वर्गीकरण

1. इनपुट डिवाइस

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

2. आउटपुट डिवाइस

  • प्रोसेस किए गए परिणाम दिखाते या प्रदान करते हैं
  • उदाहरण: मॉनिटर, प्रिंटर, स्पीकर
  • डिजिटल डेटा को दृश्य, प्रिंट या ध्वनि में बदलते हैं

3. स्टोरेज डिवाइस (सेकेंडरी स्टोरेज)

  • डेटा का स्थायी भंडारण करते हैं
  • प्रकार:
    • मैग्नेटिक: हार्ड डिस्क, टेप
    • ऑप्टिकल: CD, DVD, Blu-ray
    • सॉलिड-स्टेट: SSD, पेन ड्राइव, मेमोरी कार्ड

4. संचार (नेटवर्किंग) डिवाइस

  • कंप्यूटरों के बीच डेटा ट्रांसफर के लिए
  • उदाहरण: मॉडेम, NIC
  • वायर्ड और वायरलेस संचार समर्थित

परिधीय डिवाइस कंट्रोलर

क्योंकि अलग-अलग डिवाइस अलग गति से काम करते हैं, इसलिए कंट्रोलर उपयोग होता है।

मुख्य कार्य:

  • डेटा बफरिंग
  • त्रुटि जाँच
  • डिवाइस नियंत्रण
  • स्पीड मिलान

डिवाइसकंट्रोलर ↔ CPU


डेटा ट्रांसफर विधियाँ

  • Programmed I/O: CPU खुद डिवाइस स्टेटस चेक करता है (धीमा)
  • Interrupt Driven I/O: डिवाइस CPU को इंटरप्ट करता है (बेहतर)
  • DMA: डेटा सीधे मेमोरी में ट्रांसफर (सबसे तेज)

इनपुट और आउटपुट डिवाइस में अंतर

  • इनपुट डिवाइस: डेटा CPU को भेजते हैं (यूज़रकंप्यूटर)
  • आउटपुट डिवाइस: डेटा CPU से प्राप्त करते हैं (कंप्यूटरयूज़र)

लाभ

  • सिस्टम की क्षमता बढ़ाते हैं
  • यूज़र इंटरैक्शन बेहतर करते हैं
  • स्टोरेज और संचार संभव बनाते हैं

सीमाएँ

  • CPU से धीमे होते हैं
  • ड्राइवर की आवश्यकता
  • इंटरफेस (USB, HDMI, SATA) चाहिए

 

I/O इंटरफेस (Input/Output Interface)

I/O इंटरफेस एक हार्डवेयर यूनिट है जो CPU और Peripheral Devices के बीच मध्यस्थ (intermediate) का कार्य करती है। इसका उद्देश्य डेटा ट्रांसफर को सुचारु बनाना है, ताकि स्पीड, डेटा फॉर्मेट और कंट्रोल सिग्नल के अंतर को संभाला जा सके।


I/O इंटरफेस की आवश्यकता

  • CPU तेज और I/O डिवाइस धीमे होते हैंस्पीड मिसमैच को संतुलित करता है
  • डेटा फॉर्मेट मिसमैच (बाइनरी, सीरियल, पैरेलल) को संभालता है
  • कंट्रोल और टाइमिंग का अंतर दूर करता है
  • डिवाइस सिलेक्शन और पहचान में मदद करता है
  • डेटा बफरिंग द्वारा अस्थायी स्टोरेज उपलब्ध कराता है

I/O इंटरफेस के मुख्य घटक

  1. Address Decoderसही I/O डिवाइस की पहचान और चयन करता है
  2. Data Registerट्रांसफर के दौरान डेटा रखता है
  3. Control Register – READ, WRITE, START, STOP जैसे कमांड स्टोर करता है
  4. Status Registerडिवाइस की स्थिति बताता है (Ready, Busy, Error)
  5. Bufferअस्थायी डेटा स्टोरेज, स्पीड अंतर को मैनेज करता है

I/O इंटरफेस के प्रकार

1. Serial Interface

  • एक समय में 1 बिट ट्रांसफर
  • धीमा लेकिन सस्ता
  • लंबी दूरी संचार के लिए उपयोगी

2. Parallel Interface

  • एक साथ कई बिट ट्रांसफर
  • तेज
  • हाई-स्पीड डिवाइस के लिए उपयोगी

 

I/O डेटा ट्रांसफर विधियाँ

1. Programmed I/O

  • CPU लगातार डिवाइस स्टेटस चेक करता है
  • CPU Busy रहता है
  • सरल लेकिन CPU समय की बर्बादी

2. Interrupt-driven I/O

  • डिवाइस तैयार होने पर CPU को इंटरप्ट देता है
  • CPU अन्य काम कर सकता है
  • बेहतर CPU उपयोग, पर इंटरप्ट ओवरहेड

3. DMA (Direct Memory Access)

  • DMA कंट्रोलर सीधे मेमोरी और डिवाइस के बीच डेटा ट्रांसफर करता है
  • बहुत तेज
  • हार्डवेयर जटिल

Isolated I/O vs Memory-Mapped I/O

विशेषता

Isolated I/O

Memory-Mapped I/O

एड्रेस स्पेस

अलग

समान

इंस्ट्रक्शन

विशेष I/O निर्देश

सामान्य मेमोरी निर्देश


Handshaking

  • CPU और डिवाइस के बीच सिंक बनाने की तकनीक
  • READY और ACK जैसे सिग्नल उपयोग होते हैं
  • सुरक्षित और सही डेटा ट्रांसफर सुनिश्चित करता है

I/O इंटरफेस के लाभ

  • विश्वसनीय डेटा ट्रांसफर
  • CPU को डिवाइस की जटिलता से बचाता है
  • कई डिवाइस सपोर्ट
  • सिस्टम परफॉर्मेंस बेहतर करता है

 

**************************************************************************

 

असमकालिक डेटा ट्रांसफर (Asynchronous Data Transfer)

असमकालिक डेटा ट्रांसफर वह संचार विधि है जिसमें दो डिजिटल घटक या सिस्टम बिना कॉमन क्लॉक के डेटा का आदान-प्रदान करते हैं। इसमें डेटा भेजने और स्वीकार करने के लिए कंट्रोल सिग्नल (Handshake signals) का उपयोग किया जाता है, जिससे Sender और Receiver यह सुनिश्चित करते हैं कि डेटा कब वैध है और कब स्वीकार किया गया है।


उपयोग (Use of Asynchronous Transfer)

  • जब Sender और Receiver की स्पीड अलग-अलग हो
  • जब दोनों अलग क्लॉक पर काम कर रहे हों
  • बाहरी उपकरणों (कीबोर्ड, सेंसर, सीरियल पोर्ट) से इंटरफेस में
  • लो-पावर और लो-लेटेंसी सिस्टम में
  • बड़े सिस्टम में clock skew और EMI कम करने के लिए

मुख्य सिग्नल (Basic Signals)

  • DATAवास्तविक सूचना बिट्स
  • REQ (Request) – Sender बताता है कि डेटा तैयार है
  • ACK (Acknowledge) – Receiver बताता है कि डेटा स्वीकार कर लिया गया
  • Strobe/Validकभी-कभी एक सिग्नल से डेटा वैध होने का संकेत

टाइमिंग शब्द:

  • setup time, hold time
  • propagation delay (गेट/वायर की देरी)

 

Handshake Protocols (हैंडशेक प्रोटोकॉल)

1. Four-Phase (REQ/ACK) Handshake

हर ट्रांसफर में 4 स्टेप:

  1. Sender डेटा रखकर REQ = 1 करता है
  2. Receiver डेटा पढ़कर ACK = 1 करता है
  3. Sender REQ = 0 करता है
  4. Receiver ACK = 0 करता है

विशेषता: सरल और विश्वसनीय तरीका


2. Two-Phase (Transition) Handshake

  • सिग्नल के level की जगह transition (0→1 या 1→0) से नया डेटा संकेत
  • हर ट्रांसफर में सिर्फ 2 transitions
  • तेज़ और कम पावर खपत
  • डिजाइन थोड़ा ज्यादा जटिल

Muller C-Element

  • असमकालिक सर्किट का बेसिक ब्लॉक
  • सभी इनपुट 1 → आउटपुट 1
  • सभी इनपुट 0 → आउटपुट 0
  • अन्य स्थितिआउटपुट अपनी पिछली वैल्यू रखता है
  • Handshake completion और synchronization में उपयोग

Metastability और Synchronizers

  • जब asynchronous सिग्नल clocked flip-flop में जाता है, तो आउटपुट कुछ समय के लिए अस्थिर हो सकता हैइसे metastability कहते हैं
  • इससे लॉजिक में त्रुटि हो सकती है

समाधान:

  • 2-stage या 3-stage synchronizer flip-flops का उपयोग
  • MTBF (Mean Time Between Failures) बढ़ाने के लिए उचित डिजाइन

फायदे (Advantages)

  • Global clock की जरूरत नहीं
  • Clock skew की समस्या कम
  • Dynamic power कम
  • Variable-latency और peripherals के लिए उपयुक्त

नुकसान (Disadvantages)

  • डिजाइन और verification कठिन
  • Testing मुश्किल
  • Metastability का जोखिम
  • Tools और synthesis support कम

**********************************************************************************

डेटा ट्रांसफर के मोड (Modes of Data Transfer)

डेटा ट्रांसफर का मतलब है डेटा का स्थानांतरण:

  • CPU ↔ Memory
  • CPU ↔ I/O Devices
  • Memory ↔ I/O Devices

क्योंकि I/O डिवाइस CPU की तुलना में धीमे होते हैं, इसलिए कुशल संचार के लिए विशेष ट्रांसफर मोड उपयोग किए जाते हैं।


डेटा ट्रांसफर मोड के प्रकार

  1. Programmed I/O (Polling)
  2. Interrupt-Driven I/O
  3. Direct Memory Access (DMA)

1. Programmed I/O (Polling)

संकल्पना:
CPU
खुद पूरा डेटा ट्रांसफर नियंत्रित करता है और बार-बार डिवाइस की स्थिति चेक करता है।

कार्य विधि (Steps):

  • CPU I/O कमांड देता है
  • CPU लगातार डिवाइस स्टेटस चेक करता है (Polling)
  • Ready होने पर CPU डेटा ट्रांसफर करता है
  • फिर CPU अपना काम जारी रखता है

मुख्य बिंदु: CPU को इंतज़ार करना पड़ता है (Busy Waiting)

फायदे:

  • सरल विधि
  • अतिरिक्त हार्डवेयर की जरूरत नहीं

नुकसान:

  • CPU समय की बर्बादी
  • धीमे डिवाइस के लिए अक्षम

उपयोग: साधारण और कम गति वाले डिवाइस


2. Interrupt-Driven I/O

संकल्पना:
डिवाइस Ready होने पर CPU को Interrupt सिग्नल भेजता है — CPU को बार-बार चेक नहीं करना पड़ता।

कार्य विधि:

  • CPU I/O कमांड देता है
  • CPU अन्य कार्य करता रहता है
  • डिवाइस Ready होने पर Interrupt भेजता है
  • CPU Interrupt Service Routine (ISR) चलाता है
  • डेटा ट्रांसफर होता है
  • CPU फिर पुराने कार्य पर लौटता है

मुख्य बिंदु: Event-driven ट्रांसफर

फायदे:

  • CPU का बेहतर उपयोग
  • Busy waiting नहीं

नुकसान:

  • Interrupt हैंडलिंग का ओवरहेड
  • DMA से धीमा (बड़े डेटा के लिए)

उपयोग: मध्यम गति और इवेंट आधारित डिवाइस


3. Direct Memory Access (DMA)

संकल्पना:
DMA Controller
डेटा को सीधे Memory और I/O के बीच ट्रांसफर करता है, CPU लगातार शामिल नहीं रहता।

कार्य विधि:

  • CPU DMA को initialize करता है (address, count, direction)
  • DMA बस का नियंत्रण मांगता है
  • CPU बस DMA को दे देता है
  • DMA सीधे I/O ↔ Memory डेटा ट्रांसफर करता है
  • पूरा होने पर DMA CPU को interrupt भेजता है

DMA ट्रांसफर तकनीकें:

  • Burst Modeपूरा डेटा एक साथ
  • Cycle Stealingएक-एक शब्द प्रति साइकिल
  • Transparent Mode – CPU idle समय में ट्रांसफर

फायदे:

  • बहुत तेज ट्रांसफर
  • बड़े डेटा ब्लॉक के लिए श्रेष्ठ
  • CPU फ्री रहता है

नुकसान:

  • जटिल हार्डवेयर
  • महंगा

उपयोग: Disk, Graphics, Network जैसे high-speed डिवाइस


त्वरित तुलना तालिका

विशेषता

Programmed I/O

Interrupt I/O

DMA

CPU भागीदारी

अधिक

मध्यम

कम

CPU इंतज़ार

हाँ

नहीं

नहीं

डेटा पथ

CPU के माध्यम से

CPU के माध्यम से

Direct Memory ↔ I/O

दक्षता

कम

मध्यम

सबसे अधिक

हार्डवेयर

सरल

मध्यम

जटिल

उपयोग

Simple devices

Event devices

Bulk transfer

*****************************************************************************************

प्रायोरिटी इंटरप्ट (Priority Interrupt)

इंटरप्ट (Interrupt) एक सिग्नल होता है जो किसी I/O डिवाइस या आंतरिक घटना द्वारा CPU को भेजा जाता है। यह CPU के वर्तमान कार्य को अस्थायी रूप से रोककर नियंत्रण को Interrupt Service Routine (ISR) को दे देता है।
इंटरप्ट का उपयोग CPU समय की बचत और बेहतर उपयोग के लिए किया जाता है क्योंकि I/O डिवाइस CPU से धीमे होते हैं।


प्रायोरिटी इंटरप्ट सिस्टम में प्रत्येक इंटरप्ट स्रोत को एक प्राथमिकता (priority level) दी जाती है।
यदि एक साथ कई इंटरप्ट आते हैं, तो CPU सबसे उच्च प्राथमिकता वाले इंटरप्ट को पहले सेवा देता है।


प्रायोरिटी इंटरप्ट की आवश्यकता

  • कई I/O डिवाइस एक साथ सेवा मांग सकते हैं
  • कुछ घटनाएँ बहुत महत्वपूर्ण होती हैं (जैसे power failure)
  • बिना प्रायोरिटी के:
    • महत्वपूर्ण कार्य देर से होंगे
    • सिस्टम की विश्वसनीयता कम होगी

उदाहरण प्राथमिकता क्रम:
Power failure > Disk I/O > Keyboard > Printer


मूल कार्यप्रणाली (Basic Concept)

  • हर इंटरप्ट लाइन को एक priority दी जाती है
  • CPU सभी requests को जांचता है
  • Highest priority request चुनी जाती है
  • Low priority interrupts को अस्थायी रूप से mask (disable) किया जाता है
  • CPU:
    • वर्तमान स्थिति (PC, registers) save करता है
    • ISR चलाता है
    • स्थिति restore करके main program पर लौटता है

उच्च प्राथमिकता वाला इंटरप्ट, कम प्राथमिकता वाले ISR को बीच में रोक सकता है।


प्रायोरिटी इंटरप्ट के प्रकार

1️ हार्डवेयर प्रायोरिटी इंटरप्ट

  • Priority hardware द्वारा तय होती है
  • प्रतिक्रिया तेज होती है
  • Real-time systems में उपयोग

(a) Daisy Chaining Method

  • डिवाइस श्रृंखला (series) में जुड़े होते हैं
  • जो डिवाइस CPU के पास है उसकी priority अधिक
  • Acknowledge signal chain में आगे बढ़ता है

लाभ:

  • सरल
  • कम लागत

हानि:

  • Fixed priority
  • Low priority डिवाइस को देर

(b) Priority Encoder Method

  • Priority encoder circuit उपयोग होता है
  • Highest priority interrupt को binary code में बदलता है

लाभ:

  • Daisy chain से तेज
  • Flexible priority
  • Multiple interrupts को efficiently handle करता है

हानि:

  • Hardware जटिल
  • अधिक लागत
  • Low priority starvation संभव

2️ सॉफ्टवेयर प्रायोरिटी इंटरप्ट (Polling)

  • Priority software द्वारा तय होती है
  • CPU एक common ISR पर जाता है
  • ISR if-else द्वारा हर डिवाइस का status check करता है
  • Highest priority active device को service मिलती है

लाभ:

  • सरल डिजाइन
  • कम hardware आवश्यकता

हानि:

  • धीमा (बार-बार checking के कारण)

प्रायोरिटी vs नॉन-प्रायोरिटी इंटरप्ट

विशेषता

Priority Interrupt

Non-Priority Interrupt

सेवा क्रम

Priority आधारित

पहले आया पहले

महत्वपूर्ण कार्य

तुरंत

देर हो सकती

जटिलता

अधिक

कम

दक्षता

अधिक

कम


उपयोग (Applications)

  • Operating systems
  • Embedded systems
  • Real-time control systems
  • Industrial automation
  • Communication systems

*********************************************************************************** 

 

 

 

 

डायरेक्ट मेमोरी एक्सेस (DMA)

परिभाषा

Direct Memory Access (DMA) एक तकनीक है जिसमें I/O डिवाइस मेन मेमोरी से डेटा का ट्रांसफर सीधे करता है, बिना CPU की लगातार भागीदारी के।
CPU
केवल ट्रांसफर की शुरुआत करता है, उसके बाद DMA कंट्रोलर डेटा ट्रांसफर संभालता है।


DMA की आवश्यकता

DMA का उपयोग programmed और interrupt-driven I/O की कमियों को दूर करने के लिए किया जाता है:

  • उच्च गति डेटा ट्रांसफर
  • CPU का लोड कम करता है
  • सिस्टम परफॉर्मेंस बढ़ाता है

DMA Controller के मुख्य भाग

1. Address Register

  • शुरुआती मेमोरी एड्रेस स्टोर करता है
  • पॉइंटर की तरह काम करता है
  • हर ट्रांसफर के बाद एड्रेस स्वतः बढ़ता/घटता है
  • प्रकार: Base Address Register (BAR), Current Address Register (CAR)

2. Word Count Register

  • कितने bytes/words ट्रांसफर करने हैंयह स्टोर करता है
  • हर ट्रांसफर के बाद count कम होता है
  • Zero होने पर ट्रांसफर पूरा माना जाता है
  • सामान्यतः 16-bit (अधिकतम 65,536 यूनिट)

3. Control Register

  • Read/Write ऑपरेशन सेट करता है
  • ट्रांसफर मोड चुनता है (burst, cycle stealing)
  • Interrupt enable/disable करता है
  • कंट्रोल फ्लैग्स रखता है

4. Status Register

  • ट्रांसफर पूरा हुआ या error — यह बताता है
  • Done flag सेट करता है

DMA का कार्य (Step-by-Step)

  1. CPU DMA को सेट करता है:
    • Starting address
    • Word count
    • Transfer type
  2. I/O डिवाइस DMA request भेजता है
  3. DMA सिस्टम बस का कंट्रोल मांगता है
  4. CPU बस कंट्रोल दे देता है
  5. DMA सीधे memory ↔ I/O डेटा ट्रांसफर करता है
  6. काम पूरा होने पर DMA interrupt भेजता है
  7. CPU फिर से सामान्य कार्य शुरू करता है

DMA Transfer Modes

(A) Burst Mode (Block Transfer)

  • पूरा डेटा ब्लॉक एक साथ ट्रांसफर
  • CPU पूरी अवधि निष्क्रिय
  • सबसे तेज मोड
  • बड़े डेटा के लिए उपयुक्त

(B) Cycle Stealing Mode

  • एक बार में एक word ट्रांसफर
  • DMA हर बार एक cycle “चुरालेता है
  • CPU थोड़ा ही रुकता है
  • CPU और DMA बारी-बारी से काम करते हैं

(C) Transparent Mode

  • DMA केवल तब ट्रांसफर करता है जब CPU idle हो
  • CPU को कोई रुकावट नहीं
  • सबसे धीमा पर सुरक्षित

DMA vs Programmed I/O

विशेषता

Programmed I/O

DMA

CPU भागीदारी

अधिक

बहुत कम

गति

धीमी

तेज

CPU उपयोग

खराब

बेहतर

ट्रांसफर

Byte-by-byte

Block


DMA के फायदे

  • तेज डेटा ट्रांसफर
  • CPU फ्री रहता है
  • सिस्टम थ्रूपुट बढ़ता है
  • बड़े डेटा ब्लॉक्स के लिए आदर्श
  • कम ओवरहेड

DMA के नुकसान

  • हार्डवेयर जटिल
  • बस कंटेंशन समस्या
  • Debug करना कठिन
  • छोटे डेटा के लिए लाभकारी नहीं
  • सेटअप जटिल

DMA के उपयोग

  • हार्ड डिस्क/स्टोरेज कंट्रोलर
  • ग्राफिक्स कार्ड
  • साउंड कार्ड
  • नेटवर्क इंटरफेस
  • रियल-टाइम सिस्टम

*************************************************************************

I/O प्रोसेसर (IOP)

परिभाषा:
I/O Processor (IOP) एक विशेष प्रकार का प्रोसेसर है जो Input/Output कार्यों को मुख्य CPU से अलग होकर स्वयं नियंत्रित और प्रबंधित करता है। इसका मुख्य उद्देश्य CPU का लोड कम करना और सिस्टम की कार्यक्षमता बढ़ाना है।


IOP की आवश्यकता क्यों है

पुराने कंप्यूटर सिस्टम में CPU को ही करना पड़ता था:

  • प्रोग्राम चलाना
  • डेटा ट्रांसफर करना
  • I/O डिवाइस को नियंत्रित करना

इससे:

  • CPU का समय व्यर्थ होता था
  • सिस्टम धीमा हो जाता था

समाधान → I/O Processor का उपयोग


IOP के मुख्य कार्य

  1. I/O डिवाइस को नियंत्रित करना
  2. डिवाइस और मेमोरी के बीच डेटा ट्रांसफर करना
  3. I/O प्रोग्राम/इंस्ट्रक्शन चलाना
  4. Interrupt और I/O errors को संभालना
  5. कार्य पूर्ण होने पर CPU को सूचना देना
  6. Buffering, error checking और data conversion करना

मुख्य विशेषताएँ

  • I/O कार्यों को स्वतंत्र रूप से संभालता है
  • CPU का लोड कम करता है
  • CPU के साथ समानांतर (parallel) कार्य करता है
  • अपने I/O निर्देश स्वयं execute कर सकता है
  • Direct Memory Access (DMA) सपोर्ट करता है
  • Master/Slave मोड में कार्य कर सकता है

IOP का कार्य करने का तरीका (Steps)

  1. CPU, IOP को I/O कमांड देता है
  2. CPU अन्य कार्य करता रहता है
  3. IOP डिवाइस चुनता और नियंत्रित करता है
  4. डेटा सीधे डिवाइसमेमोरी के बीच ट्रांसफर होता है
  5. कार्य पूरा होने पर IOP, CPU को interrupt भेजता है
    CPU की भागीदारी बहुत कम रहती है

IOP और CPU में अंतर

  • CPU: मुख्य प्रोग्राम चलाता है, जटिल निर्देश, बहुत तेज
  • IOP: I/O कार्य संभालता है, सरल I/O निर्देश, मध्यम गति, विशेष कार्य

IOP और DMA कंट्रोलर में अंतर

  • IOP: अधिक बुद्धिमान, प्रोग्राम execute करता है, पूरा device control, CPU की बहुत कम जरूरत, महंगा
  • DMA: कम बुद्धिमान, प्रोग्राम execute नहीं करता, सीमित control, CPU की आंशिक जरूरत, सस्ता

फायदे

  • CPU का लोड कम करता है
  • Parallel processing संभव
  • System throughput बढ़ाता है
  • कई I/O डिवाइस को कुशलता से संभालता है
  • High-speed सिस्टम के लिए उपयुक्त

कमियाँ

  • हार्डवेयर लागत अधिक
  • डिजाइन जटिल
  • छोटे सिस्टम के लिए किफायती नहीं

उपयोग

  • Mainframe सिस्टम
  • Supercomputers
  • High-performance servers
  • Real-time सिस्टम
  • Industrial automation सिस्टम

*************************************************************************** 

Post a Comment

0 Comments