کنٹرولر کے بنیادی افعال

Feb 06, 2023|

1. ڈیٹا بفرنگ: چونکہ I/O ڈیوائسز کی شرح کم ہے اور CPU اور میموری کی شرح زیادہ ہے، اس لیے کنٹرولر میں بفر سیٹ کرنا ضروری ہے۔ آؤٹ پٹ کے وقت، اس بفر کا استعمال میزبان کے ذریعے منتقل کردہ ڈیٹا کو تیز رفتاری سے عارضی طور پر ذخیرہ کرنے کے لیے کریں، اور پھر بفر میں موجود ڈیٹا کو I/O ڈیوائس میں اس شرح پر منتقل کریں جو I/O ڈیوائس کے پاس ہے۔ ان پٹ کے وقت، بفر استعمال کرتا ہے یہ I/O ڈیوائس سے بھیجے گئے ڈیٹا کو عارضی طور پر اسٹور کرتا ہے، اور ڈیٹا کا ایک بیچ حاصل کرنے کے بعد، بفر میں موجود ڈیٹا کو تیز رفتاری سے میزبان کو منتقل کرتا ہے۔
2. ایرر کنٹرول: ڈیوائس کنٹرولر I/O ڈیوائس کے ذریعے منتقل ہونے والے ڈیٹا کی خرابی کا پتہ لگانے کے لیے بھی ذمہ دار ہے۔ اگر ٹرانسمیشن کے دوران کوئی خرابی پیش آتی ہے تو، غلطی کا پتہ لگانے کا کوڈ عام طور پر سیٹ کیا جاتا ہے اور CPU کو رپورٹ کیا جاتا ہے، لہذا CPU اس بار منتقل ہونے والے ڈیٹا کو باطل کر دیتا ہے اور ایک نئی ٹرانسمیشن انجام دیتا ہے۔ یہ درست ڈیٹا انٹری کو یقینی بناتا ہے۔
3. ڈیٹا کا تبادلہ: اس سے مراد CPU اور کنٹرولر کے درمیان، اور کنٹرولر اور ڈیوائس کے درمیان ڈیٹا کے تبادلے کی وصولی ہے۔ پہلے کے لیے، CPU ڈیٹا بس کے ذریعے متوازی طور پر کنٹرولر میں ڈیٹا لکھتا ہے، یا متوازی طور پر کنٹرولر سے ڈیٹا پڑھتا ہے۔ مؤخر الذکر کے لیے، ڈیوائس کنٹرولر کو ڈیٹا داخل کرتی ہے، یا کنٹرولر سے ڈیٹا کو ڈیوائس میں منتقل کرتی ہے۔ اس مقصد کے لیے، ڈیٹا رجسٹر کو کنٹرولر میں سیٹ کرنا ضروری ہے۔
4. حالت کی وضاحت: آلہ کی حیثیت کی شناخت کریں اور اس کی اطلاع دیں کنٹرولر کو CPU کے سمجھنے کے لیے آلہ کی حیثیت ریکارڈ کرنی چاہیے۔ مثال کے طور پر، صرف اس وقت جب آلہ بھیجنے کے لیے تیار ہو، CPU کنٹرولر کو آلہ سے ڈیٹا پڑھنے کے لیے شروع کر سکتا ہے۔ اس وجہ سے، کنٹرولر میں ایک ریاستی رجسٹر قائم کیا جانا چاہئے، اور ان میں سے ہر ایک آلہ کی ایک مخصوص حالت کو ظاہر کرنے کے لیے استعمال کیا جاتا ہے۔ جب CPU رجسٹر کے مندرجات کو پڑھتا ہے، تو یہ آلہ کی حالت کو سمجھ سکتا ہے۔
5. کمانڈز وصول کرنا اور ان کی شناخت کرنا: CPU کنٹرولر کو متعدد مختلف کمانڈز بھیج سکتا ہے، اور ڈیوائس کنٹرولر کو ان کمانڈز کو موصول اور شناخت کرنے کے قابل ہونا چاہیے۔ اس وجہ سے، کنٹرولر میں متعلقہ کنٹرول رجسٹر ہونے چاہئیں، جو موصولہ کمانڈز اور پیرامیٹرز کو ذخیرہ کرنے اور موصولہ کمانڈز کو ڈی کوڈ کرنے کے لیے استعمال ہوتے ہیں۔ مثال کے طور پر، ڈسک کنٹرولر CPU سے 15 مختلف کمانڈز حاصل کر سکتا ہے جیسے کہ پڑھیں، لکھیں، اور فارمیٹ کریں، اور کچھ کمانڈز کے پیرامیٹرز بھی ہوتے ہیں۔ اسی طرح، ڈسک کنٹرولر میں متعدد رجسٹر اور کمانڈ ڈیکوڈرز ہیں۔
6. ایڈریس ریکگنیشن: جس طرح میموری میں موجود ہر یونٹ کا ایک پتہ ہوتا ہے، اسی طرح سسٹم میں موجود ہر ڈیوائس کا بھی ایک پتہ ہوتا ہے، اور ڈیوائس کنٹرولر کو ہر اس ڈیوائس کے ایڈریس کو پہچاننے کے قابل ہونا چاہیے جو اسے کنٹرول کرتا ہے۔ اس کے علاوہ، CPU کو رجسٹروں پر (یا اس سے) ڈیٹا لکھنے (یا پڑھنے) کے لیے، ان رجسٹروں کے منفرد پتے ہونے چاہئیں۔

 

انکوائری بھیجنے