No history yet

आर्किटेक्चर और डेटा प्रवाह

सीपीयू के अंदर डेटा का सफ़र

कंप्यूटर का दिल यानी सीपीयू (सेंट्रल प्रोसेसिंग यूनिट) सिर्फ गणना नहीं करता, बल्कि यह निर्देशों को बहुत व्यवस्थित तरीके से पूरा करता है। यह सब एक मौलिक चक्र से शुरू होता है जिसे फ़ेच-डीकोड-एक्ज़ीक्यूट (Fetch-Decode-Execute) साइकिल कहते हैं। यह कंप्यूटर द्वारा किए जाने वाले हर काम का आधार है।

यह प्रक्रिया दो मुख्य घटकों द्वारा संचालित होती है: कंट्रोल यूनिट (CU) और एरिथमैटिक लॉजिक यूनिट (ALU)।

  • कंट्रोल यूनिट (CU): यह सीपीयू का ट्रैफिक कंट्रोलर है। यह मेमोरी से निर्देश लाता है (फ़ेच), समझता है कि निर्देश क्या करना चाहता है (डीकोड), और फिर सिस्टम के बाकी हिस्सों को बताता है कि क्या करना है। यह डेटा के प्रवाह को निर्देशित करता है।

  • एरिथमैटिक लॉजिक यूनिट (ALU): यह असल में काम करने वाला हिस्सा है। एक बार जब CU निर्देश को डीकोड कर लेता है, तो ALU गणितीय गणनाएँ (जैसे जोड़ना, घटाना) और तार्किक संचालन (जैसे AND, OR, NOT) करता है।

सरल शब्दों में, CU तय करता है कि क्या करना है, और ALU उसे करता है। वे एक टीम के रूप में काम करते हैं ताकि सॉफ़्टवेयर के निर्देशों को भौतिक क्रियाओं में बदला जा सके।

गति बढ़ाना: पाइपलाइनिंग और कैश

केवल एक निर्देश को एक बार में चलाना धीमा हो सकता है। आधुनिक सीपीयू बहुत तेज़ होते हैं क्योंकि वे निर्देशों को ओवरलैप करने के लिए नामक एक तकनीक का उपयोग करते हैं। इसे एक कार असेंबली लाइन की तरह सोचें। एक ही समय में, एक कार पेंट हो रही है, दूसरी के टायर लग रहे हैं, और तीसरी की सीटें लगाई जा रही हैं। कोई भी स्टेशन खाली नहीं रहता।

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

कुछ उन्नत प्रोसेसर इसे एक कदम और आगे ले जाते हैं, जिसे सुपरस्केलर आर्किटेक्चर कहा जाता है। वे एक से ज़्यादा पाइपलाइन का उपयोग करते हैं, जिससे वे एक ही क्लॉक साइकिल में एक से ज़्यादा निर्देशों को एक्ज़ीक्यूट कर सकते हैं।

लेकिन एक समस्या है: सीपीयू बेहद तेज़ है, लेकिन मुख्य मेमोरी (RAM) तक पहुँचना तुलनात्मक रूप से बहुत धीमा है। इसे मेमोरी बॉटलनेक (Memory Bottleneck) कहा जाता है। इस समस्या को हल करने के लिए, कंप्यूटर मेमोरी का उपयोग करते हैं।

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

आमतौर पर कैश के कई स्तर होते हैं:

  • L1 कैश: सबसे छोटा और सबसे तेज़। यह हर सीपीयू कोर के लिए अलग होता है।
  • L2 कैश: L1 से बड़ा लेकिन थोड़ा धीमा। यह भी अक्सर हर कोर के लिए अलग होता है।
  • L3 कैश: सबसे बड़ा और सबसे धीमा कैश, लेकिन फिर भी रैम से बहुत तेज़। यह एक ही चिप पर सभी सीपीयू कोर द्वारा साझा किया जाता है।

जब सीपीयू को डेटा की आवश्यकता होती है, तो वह पहले L1 कैश में देखता है, फिर L2 में, फिर L3 में और अंत में रैम में। इस पदानुक्रम से यह सुनिश्चित होता है कि सबसे अधिक उपयोग किया जाने वाला डेटा हमेशा सबसे तेज़ मेमोरी में उपलब्ध हो।

अंदर की कहानी: रजिस्टर और मेमोरी

सीपीयू के अंदर भी, डेटा को इधर-उधर ले जाने की एक व्यवस्था होती है। सीपीयू के भीतर सबसे तेज़ मेमोरी स्थान को कहा जाता है। ये छोटे स्टोरेज एरिया होते हैं जिनका उपयोग सीपीयू उस डेटा को रखने के लिए करता है जिस पर वह तुरंत काम कर रहा है।

रजिस्टर ALU के लिए एक वर्कबेंच की तरह हैं। डेटा को रैम से रजिस्टरों में लाया जाता है, ALU उस पर काम करता है, और परिणाम को वापस एक रजिस्टर में संग्रहीत किया जाता है, जिसे बाद में रैम में वापस लिखा जा सकता है। कुछ महत्वपूर्ण रजिस्टर हैं:

  • प्रोग्राम काउंटर (PC): अगले निर्देश का मेमोरी पता रखता है।
  • इंस्ट्रक्शन रजिस्टर (IR): वर्तमान में डीकोड और एक्ज़ीक्यूट किए जा रहे निर्देश को रखता है।
  • एक्युमुलेटर (Accumulator): ALU संचालन के परिणामों को संग्रहीत करता है।

लेकिन सीपीयू रैम में सही डेटा कैसे ढूँढता है? यह मेमोरी एड्रेसिंग के माध्यम से होता है। रैम में हर बाइट का एक अनूठा संख्यात्मक पता होता है, जैसे किसी सड़क पर घर का नंबर। जब सीपीयू को डेटा पढ़ने या लिखने की आवश्यकता होती है, तो वह उस डेटा का मेमोरी पता पर भेजता है।

सिस्टम बस एक हाईवे की तरह है जो सीपीयू, रैम और अन्य घटकों को जोड़ता है। यह डेटा, मेमोरी एड्रेस और कंट्रोल सिग्नल ले जाता है, जिससे पूरे सिस्टम को एक साथ मिलकर काम करने में मदद मिलती है। कंट्रोल यूनिट बस पर ट्रैफ़िक को निर्देशित करता है, यह सुनिश्चित करता है कि सही समय पर सही डेटा सही जगह पर पहुँचे।

Quiz Questions 1/6

सीपीयू द्वारा निर्देशों को संसाधित करने के लिए उपयोग किए जाने वाले मौलिक चक्र का सही क्रम क्या है?

Quiz Questions 2/6

सीपीयू में, कौन सा घटक गणितीय गणना और तार्किक संचालन करने के लिए जिम्मेदार है?

इस तरह, सीपीयू, कैश, रजिस्टर और बसें एक जटिल लेकिन कुशल नृत्य में एक साथ काम करती हैं, जो सॉफ्टवेयर के निर्देशों को उन कार्यों में बदल देती हैं जिन्हें हम हर दिन उपयोग करते हैं।