Upload
kaida
View
61
Download
0
Embed Size (px)
DESCRIPTION
س ازمان و رودی- خ روجی. مشخصات I/O : 1- سرعت انتقال دیتا در I/O های مختلف بسیار متنوع است. 2- عملیات مربوط به I/O ها آسنکرون هستند، یعنی با کلاک CPU هماهنگ نیستند. - PowerPoint PPT Presentation
Citation preview
ازمانس روجی خرودی- و
:I/Oمشخصات • های مختلف بسیار متنوع است.I/O- سرعت انتقال دیتا در 1 ه-ا آس-نکرون هس-تند، یعن-ی با کالک I/O- عملیات مربوط ب-ه 2
CPU.هماهنگ نیستند - کیفی-ت اطالعات دریافت-ی از دس-تگاه های جانبی مشکوک 3
اس-ت. بنابرای-ن اس-تراتژی های تشخی-ص و تص-حیح خطا برای تضمین درستی دیتا نیاز است.
بنابراین I/O- بس-یاری از دس-تگاه های 4 مکانیک-ی هس-تند و بیشتر از قطعات داخلی در معرض خرابی و خطر هستند.
افزاری 5 نرم های ماژول -I/O دستگاه درایورهای ب-ه ک معروف هس-تند، بای-د طوری نوشت-ه شون-د ک-ه مشخص-ات گفته
شده در باال را پشتیبانی کنند.
:I/Oگذرگاه •بی-ن اطالعات انتقال آن CPUبرای بدنبال و ه-ا واس-ط و
کنترل آدرس و خطوط و داده جانبی، خطوط دس-تگاه های وجود دارد.
یکدیگ-ر گذرگاه کنار در را تشکیل I/Oای-ن مجموع-ه خطوط می دهند.
:I/Oفرمان • ب�ه مدار واس�ط منتقل شده و CPU وجود دارد ک�ه توس�ط I/Oچهار نوع فرمان
به آنها پاسخ می دهد:- فرمان کنترلی:1
ی�ک فرمان کنترل�ی ی�ک دس�تگاه جانب�ی ار فع�ال م�ی کن�د و ب�ه آ�ن اطالع م�ی دهد ک�ه چ�ه بای�د انجام ده�د ک�ه این فرمان ه�ا و ترتی�ب ارسال انه�ا برای دستگاه های
جانبی مختلف فرق می کند.- فرمان وضعیت:2
ی�ا دستگاه ی�ک فرمان وضعی�ت برای بررس�ی حال�ت های مختل�ف ی�ک واس�ط جانب�ی بکار م�ی رود. وضع�ی�ت واس�ط ی�ا دس�تگاه جانب�ی معموال در ثباتی قرار
داده می شود ک�ه این ثبات تسط پردازنده خوانده می شود.- فرمان خروج داده ها:3
ی�ک فرمان خروج داده باع�ث م�ی شود ک�ه واس�ط آنچه بر روی خطوط داده در قرار دارد را به ثبات های خود منتقل نماید.I/Oگذرگاه
- فرمان ورود داده ها:4ی�ک فرمان ورود داده باع�ث م�ی شود ک�ه واس�ط داده ای را ک�ه قبال از دستگاه جانب�ی دریاف�ت نموده و در ثبات آ�ن موجود م�ی باشد بر روی خطوط داده از
قرار می دهد.I/Oگذرگاه
و گذرگاه حافظه:I/Oگذرگاه • نیاز به ارتباط با حافظه نیز دارند.I/Oپردازنده های عالوه بر ارتباط با
این گذرگاه شامل خطوط داده، آدرس و کنترل می باشد.های سیگنال کنترل�ی خطوط از منظور I/O READ و I/O WRITE برای
و MEMORY READخواندن از ورودی و نوشت�ن در خروج�ی و سیگنال های MEMORY WRITE.برای خواندن از حافظه و نوشتن در حافظه می باشد
و حافظه به سه صورت می توانند در کنار یکدیگر واقع شوند:I/Oگذرگاه و دیگری برای حافظهI/Oدو گذرگاه مجزا، یکی برای -ی�ک گذرگاه نیم�ه مشترک ب�ا خطوط داده وآدرس مشترک و خطوط ک�نترلی -
و حافظهI/Oمجزا برای و حافظهI/Oیک گذرگاه مشترک برای -گذرگاه مجزا:• ، پردازنده جداگانه ای تعبیه می شود، I/Oدر این حالت عموما برای کار با •
و حافظه ارتباط دارد و گذرگاه حافظه آن با گذرگاه I/Oاین پردازنده با گاهی » کانال داده « نیز نامیده I/O مشترک است. پردازنده CPUحافظه
می شود.
گذرگاه نیمه مشترک:• ، آدرسی روی گ�ذرگاه مشترک قرار می دهد، با فع�ال CPUهنگامی که •
اعالم می نماید ک�ه آدرس، مربوط به I/O WRITE و یا I/O READنمودن و یا MEMORY READ می باشد و یا با فعال نمودن I/Oواسط های
MEMORY WRITE مشخص� می نماید که آدرس، مربوط به مکانی از حافظه است.
و I/O برای CPU، دستور جداگانه ای از سوی ISOLATED I/O: در نکته•حافظه وجود دارد.
گذرگاه مشترک:•در این روش آنچه از تداخل آدرس ها جلوگیری می نماید و در مواقع�ی •
حافظه و در مواقع دیگر... را فعال می نماید جدانمودن آدرس هاست. در این حالت بخشی از فضای آدرس به حافظه و بخشی دیگر به ثبات های
واسط های ... منتسب می شوند. از این دیدگاه ثبات های واسط نیز به عنوان بخشی از سیستم حافظه در نظر گرفته می شوند.
و I/O دستورات جداگانه ای برای MEMORY-MAPPED I/O: در روش نکته•حافظه وجود ندارد و فقط آدرس مشخص می نماید که هدف برقراری
ارتباط با واسط یا حافظه است.
ساختار، پروتکل و کنترل باس:•یک • و متص�ل کننده ها س�یم ها، مث�ل فیزیک�ی، قس�مت های شام�ل باس ی�ک
پروتک�ل باس می باشد. س�یم ها ب�ه گروههای مجزای�ی مث�ل کنترل، آدرس، دیتا و تغذیه تقسیم می شوندکه در شکل زیر نشان داده شده است.
دس�تگاههای مختلف�ی ب�ه باس متص�ل هس�تند و فق�ط ی�ک دس�تگاه در ی�ک لحظه •می توان�د دیت�ا ارس�ال کند. هم�ه دس�تگاهها همزمان گوش می ک�نن�د ول�ی فقط باس مستر می توان�د دس�تگاه ی�ک فق�ط اس�ت. دریافت کننده دس�تگاه ی�ک
(BUS MASTER( باشد و سایر دستگاهها برده )SLAVE.هستند ) مس�تر، باس را کنترل می کن�د و می توان�د فرس�تنده ی�ا گیرنده باشد. یکی از •
ها 0دستگاههایی ک�ه به باس متص�ل می شود، اس�یالتور اس�ت ک�ه دنباله ای از ه�ا را تولی�د می کند. کالک باس از کالک اص�لی س�یستم گرفته می شود 1و
ولی مع�موالً از کالک اصلی کندتر است.
CPU Memory Disk
:Strobeکنترل • برای هر انتقال Strobeدر ای�ن روش تنه�ا ی�ک س�یگنال کنترل�ی ب�ا نام •
یا و مبدأ« توس�ط »فعال شونده می توان�د س�یگنال ای�ن اس�ت. الزم »فعال شونده توسط مقصد« باشد.
الف � فعال شونده توسط مبدأ: •روی • را داده ابتدا مبدأ می شود، دیده زیر شک�ل در ک�ه همان گون�ه
پایداری داده از ناچی�ز که از مدت�ی بع�د گذرگاه داده قرار می ده�د و را فعال می نمای�د، ای�ن سیگنال Strobeاطمینان حاص�ل ش�د، س�یگنال
به همراه داده مدتی فعال می ماند تا مقصد فرصت کافی برای انتقال پایین رونده سیگنال لب�ه از مقص�د عموماً البت�ه باش�د، Strobeداده
سیگنال مبدأ می نماید. اس�تفاده خود ثبات های ب�ه داده انتقال برای Strobe را غیرفعال نموده و بع�د از مدت�ی داده را نیز از روی گذرگاه
داده برمی دارد.
مبدا Strobeمقصدگذرگاه داده
داده مع�تبرStrobe
داده
:Strobeکنترل •ب � فعال شونده توسط مقصد: •ای�ن حال�ت نی�ز در شک�ل زی�ر نشان داده می شود. مقص�د ابتدا توسط •
از مبدأ درخواس�ت داده می نمای�د، مبدأ نی�ز در پاسخ، Strobeس�یگنال سیگنال مقص�د مدت�ی از بع�د می دهد. قرار گذرگاه روی را داده
Strobe را غیرفعال می نمای�د و در همان زمان می توان�د داده را نیز به ثبات های داخل�ی خود انتقال ده�د و س�پس ب�ه دنبال ان مبدأ نیز داده را
از روی گذرگاه بر می دارد.مبدا Strobeمقصد
گذرگاه داده
داده مع�تبرStrobe
داده
:Handshakingکنترل • رفع Handshaking معایب�ی دارد ک�ه توس�ط Strobeروش •
می شود. از جمل�ه ای�ن معای�ب ای�ن اس�ت ک�ه در حال�ت فعال شونده توسط •
مبدأ، مبدأ نمی توان�د مطمئ�ن باش�د ک�ه مقص�د داده ه�ا را دریافت Strobeنموده و ی�ا خی�ر و تنه�ا ب�ا حدس ای�ن ام�ر، داده و سیگنال
را غیرفعال می نمای�د و ی�ا در حال�ت فعال شونده توس�ط مقصد، به را داده مبدأ، ک�ه نمای�د حاص�ل اطمینان نمی توان�د مقص�د
موقع روی خطوط گذرگاه قرار خواهد داد یا خیر؟•Handshaking این دیگری اضاف�ی س�یگنال از اس�تفاده ب�ا
در می �برد. ح�ل را سیگنال Handshakingمشک�ل ی�ک تا می شود ارس�ال مقص�د ب�ه مبدأ از داده همراه ب�ه کنترل�ی اعتبار داده را اعالم نمای�د و س�یگنال دیگ�ر در جهت معکوس از شده دریافت داده ک�ه می نمای�د اعالم مبدأ ب�ه مقص�د س�وی
است. در این روش نیز دو حالت وجود دارد:
:Handshakingکنترل •در این روش نیز دو حالت وجود دارد:•- شروع عملیات توسط مبدأ: 1•
داده قراردادن با مبدأ داده می شود، زی�ر نشان در شک�ل ک�ه حال�ت ای�ن در ( داده« »اعتبار سیگنال فع�ال نمودن و گذرگاه روی ( Data Validمع�ت�بر
عملیات را آغاز می نمای�د و منتظ�ر می ماند تا مقص�د س�یگنالی بفرس�تد و توسط داده« ای�ن س�یگنال، »دریافت دریاف�ت شده اس�ت. داده ک�ه نمای�د اعالم آ�ن
(Data Accepted نام دارد، س�پس مبدأ می تواند داده �ی معت�بر و نی�ز سیگنال )اعتبار داده را غیرفع�ال نمای�د و ب�ه دنبال آ�ن مقص�د نی�ز س�یگنال دریافت داده را غیرفعال می کن�د و بع�د از ای�ن مرحل�ه اس�ت ک�ه دوباره داده �ی جدی�د می تواند
برای عملیات انتقال بعدی روی گذرگاه قرار داده شود.مبدا مقصد
دریافت داده
گذرگاه داده
اعتبار داده
:Handshakingکنترل •- شروع عملیات توسط مقصد2•: ب-ا توج-ه ب-ه شک-ل زی-ر مشاهده می شود ک-ه در ای-ن حال-ت مقصد •
با نام »آماده برای داده« ) ( Ready for Dataتوس-ط س-یگنالی برای دریاف-ت داده تقاض-ا و اعالم آمادگ-ی می نماید. مبدأ نی-ز با دریاف-ت ای-ن س-یگنال داده -ی معتبر را بر روی گذرگاه قرار داده و س-یگنال اعتبار داده را فعال می نمای-د، در این هنگام داده برای آماده برای داده سیگنال ب-ا دریاف-ت آماده اس-ت، مقص-د مقص-د داده را ب-ه نشانه -ی دریاف-ت موفقیت آمی-ز داده، غیرفعال می کند داده ی روی نی-ز داده و اعتبار آ-ن س-یگنال دنبال ب-ه نی-ز و مبدأ
گذرگاه را غیرفعال می نماید.
به • مبدأ ی-ا در مقص-د دلی-ل خراب-ی ب-ه اگ-ر از س-یگنالها هرکدام توسط تعیین شده پی-ش از زمان-ی مدت از بع-د بیفت-د، تعوی-ق- گیرنده -ی س-یگنال، عدم دریاف-ت آ-ن اعالم شده و وقفه ای صورت
ای-ن خطا نامیده Time Outمی پذیرد ک-ه خط-ا را پوش-ش دهد. می شود.
مبدا مقصد
آماده برای داده
گذرگاه داده
اعتبار داده
انتقال سریال ناهمگام:•در انتقال اطالعات س�ریال ناهمگام بی�ن دو واح�د فرس�تنده و گ�یرنده، پالس •
س�اعت مشترک�ی وجود دارد ک�ه همگام بودن دو واح�د را تضمی�ن می نماید ولی در انتقال سریال ناهمگام این پالس مشترک وجود ندارد.
هر • کنار در و می شون�د ارس�ال کاراکت�ر ب�ه کاراکت�ر داده ه�ا حال�ت ای�ن در را کاراکتر پایان و شروع ت�ا می گردن�د ارس�ال کمک�ی بیت های کاراکت�ر
قب�ل از 8 بی�ت کاراکت�ر ی�ک بی�ت شروع و بعد از 8مشخ�ص نمایند. معموالً بی�ت کاراکت�ر ی�ک ی�ا بی�ش از ی�ک بی�ت توق�ف ارس�ال می گردد. در حالت عادی خ�ط توس�ط فرس�تنده در حال�ت ی�ک نگهداشت�ه می شود، ب�ه عنوان بیت شروع ی�ک بی�ت ص�فر ارس�ال می شود ک�ه شروع کاراکت�ر را اعالم می کن�د ، آخرین بیت ی�ک توق�ف اس�ت بی�ت و ارس�ال می شود کاراکت�ر از بع�د ک�ه نی�ز بی�ت می باش�د و خ�ط ارتباط�ی در حال�ت ی�ک باق�ی می ماند. گیرنده نی�ز ب�ا دانستن ای�ن قوانی�ن در بازه های زمان�ی مشخص�ی ک�ه ب�ه نرخ ارس�ال بیت ه�ا بستگی
دارد خط را بررسی می کند و بیت ها را می خواند.
حالت های انتقال:•- ورودی- خروجی تحت کنترل 1•
(:programmed I/O)برنامهدر ای�ن حال�ت دس�تگاه ورودی �� خروج�ی ارتباط مس�تقیمی ب�ا حافظه ندارد و •
هرگون�ه انتقال داده از دس�تگاه ورودی �� خروج�ی ب�ه حافظ�ه اجرای ی�ک ی�ا چند نیاز دارد.CPUدستور را توسط
•CPU از طری�ق واس�ط ورودی �� خروج�ی ب�ه دس�تگاه ورودی �� خروج�ی وصل حقیق�ت در و واسط CPUمی شود ب�ه و می خوان�د واس�ط از را داده ه�ا
می نویس�د و واس�ط خود ب�ا ایجاد ارتباط ب�ا دس�تگاه ورودی �� خروجی داده را دستگاگرفته و یا می فرستد. شکل زیر نمونه ای از این ارتباط را نشان می دهد.
هI/O
CPU
گذرگاه دادهگذرگاه آدرس
خواندننوشتن
دریافت داده
اعتبار داده
واسطI/Oگذرگاه ثبات داده
ثبات وضعیت F
حالت های انتقال:• Interrupted)- ورودی- خروجی وقفه دهنده2•
Inititated I/O:)، ب�ه نظ�ر می رس�د ک�ه بهت�ر اس�ت به جای CPUبرای جلوگیری از اتالف وق�ت •
، واسط عهده دار CPUبررس�ی مداوم وجود داده �ی آماده در واس�ط توس�ط وجود آ�ن را اعالم نمای�د تا CPUای�ن ام�ر گردد ک�ه هنگام آماده شدن داده، ب�ه
CPU جلوگیری ب�ه عم�ل آید. در حال�ی که CPUاز بررس�ی های مکرر توس�ط در حال اجرای ی�ک برنام�ه اس�ت، وقفه ای مبن�ی بر آماده بودن داده از سویی
می نماید. دریافت آدرس CPUواس�ط کرده، ترک موقتاً را عادی اجرای دس�تور بعدی را ذخیره می نمای�د و اجرا را از آدرس برنام�ه سرویس دهنده ی
می باش�د، ادام�ه می ده�د و بعد از اتمام I/Oوقف�ه ک�ه همان برنام�ه س�رویسی عملیات دریاف�ت داده، اجرای عادی برنامه �ی قبل�ی را از آدرس�ی که هنگام
دریافت وقفه ذخیره نموده بود، ادامه می دهد.1دستگاه PI PO
2دستگاه PI PO
3دستگاه PI PO
VAD1 VAD2 VAD3
تقاضای وقفه
تایید درخواست وقفه
INT
INTACKCPU
حالت های انتقال:• Direct Memory)- دسترسی مستقیم به حافظه3•
Access-DMA:) برای انتقال داده های CPU، همیش�ه الزم اس�ت ک�ه I/O ب�ا CPUهنگام ارتباط •
را ب�ه دس�تگاههای خروج�ی مدت زمانی از حافظ�ه ی�ا و ب�ه حافظ�ه ورودی ص�رف کن�د ک�ه عموماً به دلی�ل کن�د بودن دس�تگاههای ورودی �� خروجی، انتظار
CPU به ص�رفه نیست و CPU می تواند در خالل آماده شدن داده ه�ا به اجرای دس�تورات دیگ�ر ک�ه نیاز فوری ب�ه ای�ن داده ه�ا ندارن�د بپردازد و ی�ا از دی�د دیگر در برخ�ی موارد، داده های�ی توس�ط دس�تگاههای ورودی آماده می شون�د ولی
CPU در و ندارد را اطالع�ات این وقف�ه بدون انتقال برای الزم فرص�ت ص�ورتی ک�ه ای�ن اطالعات مس�تقیماً ب�ه حافظ�ه منتق�ل شوند، داده های ورودی دیگ�ر می توانن�د توس�ط دس�تگاه ورودی آماده �ی ورود گردن�د و ای�ن امر هنگام خروج داده ه�ا ب�ه دس�تگاههای خروج�ی نی�ز اتفاق می افت�د، در همه موارد فوق
ارتباط حافظه CPUنیاز ب�ه قس�متی در س�یستم احس�اس میشود ک�ه فارغ از ای�ن تکنی�ک I/Oو نامیده می شود و قس�متی ک�ه این DMA را فراه�م آورد.
« نام دارد.DMAانتقال را کنترل می کند »کنترل کننده ی
حالت های انتقال:• Direct Memory)- دسترسی مستقیم به حافظه3•
Access-DMA:)کنترل کننده �ی • ک�ه دو طریق DMAوقت�ی ب�ه اختیار می گ�یرد در را ، گذرگاه
را انجام دهد:I/Oمی تواند انتقال داده ها بین حافظه و الف - انتقال توده ای:• ارس�ال و یا از I/Oدر ای�ن روش ی�ک بالک پیوس�ته از حافظ�ه بدون توق�ف ب�ه •
I/O کنترل کننده ی اختیار در انتقال، گذرگاه ه�ا و در مدت دریاف�ت می گردد DMA می ماند. این روش عموماً برای I/O سریع )مثل دیسک سخت( کاربرد دارد.
:Stealingب - سیکل •در ای�ن روش در ه�ر مرتب�ه ی�ک کلم�ه انتقال داده می شود و دوباره گذرگاه ها •
اجرای ه�ر عملیات خود را به اندازه CPU قرار می گیرن�د و CPUدر اختیار کامل گردد.I/Oیک سیکل حافظه به تاخیر اندازد تا انتقال داده های
حالت های انتقال:• Direct Memory)- دسترسی مستقیم به حافظه3•
Access-DMA:)
DSRSBRBGInterrupt
RD WR Address Data
RD WR Address Data
InterruptBGBR
RD WR Address Data
RAMCPU
DMAدستگاه جانبی
I/O
READکنترل WRITEکنترل
گذرگاه دادهگذرگاه آدرس
DMAموافقت
DMAدرخواست
انتخاب آدرس