یک کامپیوتر شامل مجموعه ای از اجزا یا ماژول های سه نوع اصلی (پردازنده، حافظه، I/O) است که با یکدیگر ارتباط برقرار می کنند. بنابراین باید مسیرهایی برای اتصال این ماژول ها وجود داشته باشد.
ساختار ارتباط متقابل
طراحی ساختار اتصال به تبادلاتی که باید بین ماژول ها انجام شود بستگی دارد. ابتدا بیایید هر ماژول را درک کنیم:
حافظه
به طور معمول، یک ماژول حافظه از N کلمه با طول مساوی تشکیل شده است. به هر کلمه یک آدرس عددی منحصر به فرد اختصاص داده می شود (0، 1، ...، N-1). یک کلمه از داده ها را می توان از حافظه خواند یا در حافظه نوشت.
- ماهیت عملیات با سیگنال های کنترل خواندن و نوشتن نشان داده می شود.
- مکان عملیات توسط یک آدرس مشخص می شود.
ماژول I/O
I/O از نظر عملکردی شبیه حافظه است. دو عملیات وجود دارد. خواندن و نوشتن علاوه بر این، یک ماژول I/O ممکن است بیش از یک دستگاه خارجی را کنترل کند. میتوانیم به هر یک از اینترفیسهای یک دستگاه خارجی بهعنوان پورت اشاره کنیم و به هر کدام یک آدرس منحصربهفرد بدهیم (به عنوان مثال، 0، 1، c، M-1). علاوه بر این، مسیرهای داده خارجی برای ورودی و خروجی یک دستگاه خارجی وجود دارد. در نهایت، یک ماژول ورودی/خروجی ممکن است بتواند سیگنال های وقفه را به پردازنده ارسال کند.
پردازنده
پردازنده دستورالعمل ها و داده ها را می خواند، داده ها را پس از پردازش می نویسد و از سیگنال های کنترلی برای کنترل عملکرد کلی سیستم استفاده می کند. همچنین سیگنال های وقفه را دریافت می کند.
ساختار اتصال باید از انواع زیر پشتیبانی کند:
- حافظه به پردازنده: پردازنده یک دستورالعمل یا داده را از حافظه می خواند.
- پردازنده در حافظه: پردازنده داده ها را در حافظه می نویسد.
- I/O به پردازنده: پردازنده داده ها را از دستگاه I/O از طریق یک ماژول I/O می خواند.
- پردازنده به ورودی/خروجی: پردازنده داده ها را به دستگاه ورودی/خروجی ارسال می کند.
- ورودی/خروجی به یا از حافظه: برای این دو مورد، یک ماژول I/O مجاز است تا با استفاده از دسترسی مستقیم به حافظه (DMA) بدون عبور از پردازنده، داده ها را مستقیماً با حافظه مبادله کند.
تا کنون رایج ترین سازه های اتصال متقابل هستند
- گذرگاه و سازههای چند گذرگاهی مختلف
- ساختارهای اتصال نقطه به نقطه با انتقال داده های بسته بندی شده.
اتصال گذرگاه
گذرگاه یک مسیر ارتباطی است که دو یا چند دستگاه را به هم متصل می کند. گذرگاهی که اجزای اصلی کامپیوتر (پردازنده، حافظه، I/O) را به هم متصل می کند، گذرگاه سیستم نامیده می شود. ویژگی های کلیدی گذرگاه عبارتند از:
- این یک رسانه انتقال مشترک است — چندین دستگاه به گذرگاه متصل می شوند و سیگنال ارسال شده توسط هر دستگاه برای دریافت توسط سایر دستگاه های متصل به گذرگاه در دسترس است.
- فقط یک دستگاه در یک زمان میتواند با موفقیت ارسال کند - اگر دو دستگاه در یک بازه زمانی یکسان ارسال کنند، سیگنالهای آنها با هم همپوشانی پیدا میکنند و مخدوش میشوند.
یک گذرگاه از چندین مسیر ارتباطی به نام خطوط تشکیل شده است. چندین خط از یک گذرگاه می تواند برای انتقال ارقام باینری به طور همزمان و به صورت موازی استفاده شود.
خطوط را می توان به 3 گروه عملکردی طبقه بندی کرد:
- داده ها
- آدرس
- خطوط کنترل
خطوط داده
خطوط داده مسیری را برای جابجایی داده ها در میان ماژول های سیستم فراهم می کنند. این خطوط، در مجموع، گذرگاه داده نامیده می شوند. گذرگاه داده ممکن است از 32، 64، 128 یا حتی بیشتر از خطوط جداگانه تشکیل شده باشد که تعداد خطوط به عنوان عرض گذرگاه داده نامیده می شود.
برای مثال، فرض کنید میخواهیم یک عدد باینری 8 بیتی 10110101 را ارسال کنیم. این کار را میتوان با استفاده از هشت خط گذرگاه موازی انجام داد که هر کدام حامل یکی از بیتها هستند. همه 8 بیت به طور همزمان از طریق 8 خط گذرگاه منتقل می شوند.
این خطوط اغلب به عنوان D0، D1، D2، D3، D4، D5، D6، D7 برچسب گذاری می شوند، جایی که D0 دارای کمترین بیت مهم (LSB) و D7 دارای بیشترین بیت (MSB) است. این بدان معنی است که در یک چرخه ساعت، کل عدد 8 بیتی از مبدا به مقصد به ارسال می شود.
خطوط آدرس
از خطوط آدرس برای تعیین منبع یا مقصد داده ها در گذرگاه داده استفاده می شود. به عنوان مثال، اگر پردازنده بخواهد یک کلمه (8، 16 یا 32 بیتی) از داده ها را از حافظه بخواند، آدرس کلمه مورد نظر را در خطوط آدرس قرار می دهد. واضح است که عرض گذرگاه آدرس حداکثر ظرفیت حافظه ممکن سیستم را تعیین می کند.
یک گذرگاه آدرس 8 بیتی را در نظر بگیرید. این می تواند نشان دهنده 256 آدرس مختلف (از 00000000 تا 11111111 به صورت باینری یا 0 تا 255 در اعشار) باشد که برای حافظه یا I/O استفاده می شود:
- آدرس های 00000000 تا 01111111 (0 تا 127 در اعشار) برای حافظه استفاده می شود.
- آدرس های 10000000 تا 11111111 (128 تا 255 در اعشار) برای پورت های I/O استفاده می شود.
بیت مرتبه بالاتر 0 از 01111111 نشان می دهد که آدرس به ماژول حافظه اشاره دارد، در حالی که بیت های باقیمانده محل حافظه خاص را در ماژول حافظه مشخص می کنند. به عنوان مثال، آدرس 01101101 به صورت باینری (109 به صورت اعشاری) به 110 امین مکان حافظه در ماژول حافظه اشاره می کند.
به طور مشابه، بیت مرتبه بالاتر 1 از 10000000 نشان می دهد که آدرس به ماژول I/O اشاره دارد، در حالی که بیت های باقیمانده پورت خاص را در ماژول I/O مشخص می کنند. به عنوان مثال، آدرس 11101101 به صورت باینری (237 در اعشار) به پورت 110 در ماژول I/O اشاره می کند.
خطوط کنترل
خطوط کنترل برای کنترل دسترسی به داده ها و خطوط آدرس استفاده می شود. از آنجایی که داده ها و خطوط آدرس توسط همه اجزا به اشتراک گذاشته می شود، باید ابزاری برای کنترل استفاده از آنها وجود داشته باشد.
عملکرد گذرگاه به شرح زیر است. اگر یک ماژول بخواهد داده ها را به دیگری ارسال کند، باید
- استفاده از گذرگاه را دریافت کنید
- انتقال داده ها از طریق گذرگاه
اگر یک ماژول بخواهد از ماژول دیگری داده درخواست کند، باید
- استفاده از گذرگاه را دریافت کنید
- یک درخواست را از طریق خطوط کنترل و آدرس مناسب به ماژول دیگر منتقل کنید
- سپس منتظر بمانید تا آن ماژول دوم اطلاعات را ارسال کند
منبع: medium.com