431
بازدید
ویژگیهای مهم یک کامپیوتر
روند توسعه کامپیوتر در ۱۵۰ سال گذشته منجر به این شده است که تمام کامپیوترها حاوی چند ویژگی اساسی باشند:
کنترل برنامه ذخیرهشده: برنامه کامپیوتر، که دنبالهای از دستوراتی است که برای اجرای پردازش لازم دادهها یک به یک اجرا میشوند، باید در کامپیوتر ذخیره شود. این (مسئله) امتیازات مهمی نسبت به دخیره خارجی برنامه دارد.
انشعاب شرطی: یک امتیاز ذخیره برنامه به صورت داخلی این است که لازم نیست دستور بعدی که باید اجرا شود از نظر ترتیب ( دستور) بعدی باشد زیرا به هر دستوری میتوان با با همان سرعت هر (دستور) دیگر دسترسی پیداکرد ( این به دسترسی تصادفی معروف است ). از اینرو انتخاب اینکه کدام دستور بعداً اجرا شود میتواند بر مبنای نتیجه عمل یا عملیات قبلی باشد، که به کامپیوتر بر اساس پردازشی که انجام میدهد، توانایی تصمیم گیری میبخشد.
حلقهها و سابروتینها (زیرروالها): توانایی یک برنامه در اجرای تکراری مجموعه خاصی از دستورات در صورت نیاز، میتواند صرفهجوییهای قابل توجهی در ذخیرهسازی مورد نیاز برنامه ایجاد کند. پرشهای شرطی میتوانند موجب برگشت حلقه و یا تکرار مجموعهای از دستورات بدفعات شوند. و معمولاً زیر برنامه های مورد نظر در یک برنامه میتوانند از هر قسمت دیگر برنامه آنگونه که لازم است، فراخوانده شوند بدون اینکه لازم باشد دستورات زیر برنامه هر بار که آن زیربرنامه فراخوانده میشود در برنامه های اصلی وجود داشته باشند.
سرعت علم الکترونیک:اگر چه تکتک دستورات قابل دسترسی در یک کامپیوتر میتوانند کاملاً محدود باشند، ولی چون هر دستور میتواند بسیار سریع اجرا شود، از اینرو در زمانی که ذهناً خیلی کوتاه به نظر میرسد، امکان دارد پردازش نسبتاًقدرتمندتری انجام شود. ( اینرا با قابلیت سرعتی کامپیوتر مکانیکی بابیج مقایسه میکند.)
هزینه: هزینه قدرت محاسباتی و خصوصاًهزینه حافظه کامپیوتر دایماً رو به کاهش است. اکنون ذخیره یک دستور کامپیوتری در یک حافظه الکترونیکی از ذخیره آن روی کارت یا یک قطعه نوار کاغذی ارزانتر است.
دستورات میتوانند خود را تصحیح کنند: اگرچه این (موضوع) یکی از ایدههای اصلی وننیومان بود که در مفهوم کنترل برنامه ذخیرهشده تجسم مییافت، ولی از آن موقع به بعد خیلی مورد استفاده نبودهاست. یک دلیل آن این است که به محض آنکه برنامه کامپیوتری نسبت به آنچه که در ابتدا توسط برنامهنویس نوشتهشده است تغییر یافت، اطلاع از آنچه کامپیوتر انجام میدهد مشکل است. خصوصاً در میکروپروسسرها از این ایده پرهیز میشود.
یک کامپیوتر ساده:
شکل ۱ـ۷ ساختمان یک کامپیوتر ساده را نشان میدهد. کامپیوتر میتواند به تعدادی از اجزای جداگانه تفکیک شود. گر چه اجزای نشاندادهشده لزوماً معروف تقسیمبندی فیزیکی اجزاء در یک کامپیوتر واقعی نیستند. به عنوان مثال در ریزکامپیوترها، واحد کنترل و واحد حساب و منطق (ALU) عموماً به صورت یک تراشه تنها، یک میکروپروسسور، بکار گرفته میشوند. بطور مشابه در بعضی از ریزکامپیوترها واحد ورودی و خروجی میتوانند در یک تراشه تنها ترکیب شوند. با اینحال شکل ۱-۷ نشاندهنده ساختمان مفهومی هر کامپیوتر، از کوچکترین ریزکامپیوترها تا بزرگترین کامپیوترها است.
اولین لازمه هر کامپیوتر مکانیزمی برای کار با دادهها است.. این کار توسط ALU فراهم میشود، که میتواند اعمالی مانند جمع یا تقسیم دو عد، انجام عملیات منطقی، برای افزایش و کاهش اعداد و عملیات انتقال چپ و راست را اجرا کند. میتوان با برنامهریزی، از این مجموعه بسیار اساسی عملیات، عملیات پردازشی پیچیدهتری بوجود آورد. کامپیوترهای بزرگتر میتوانند دستورات قویتری (مثلاً ضرب و تقسیم) را در مجموعه دستورات کامپیوتر تدارک ببینند.
به وضوح هر کامپیوتری باید شامل یک واحد ورودی و خروجی نیز باشد. اینها مکانیزمهایی فراهم میکنند که کامپیوتر توسط آنها با دنیای خارج ارتباط برقرار مینماید. دنیای خارج میتواند شامل شخصی باشد که در یک پایانه کامپیوتری مشغول تایپ است و پاسخ را روی یک صفحه تماشا میکند، یا میتواند یکسری تجهیزات، مثلاًیک ماشینلباسشویی باشد، که ورودیهای دادهای مانند دمای آب، سطح آب و سرعت چرخش طلبک ارائه می کند و براساس برنامه داخل کامپیوتر، توسط خروجیهای کامپیوتری که هیتر و شیرهای آب را روشن و خاموش کرده و سرعت موتور را تغییر میدهند، کنترل میشود.
کامپیوتر باید حاوی یک حافظه داخلی باشد که دو کار انجام میدهد. اولاً محل ذخیرهای برای برنامه کامپیوتری فراهم میکند، ثانیاً محل ذخیره موقتی برای داده هایی فراهم میکند که ممکن است در نقطهای طی اجرای برنامه توسط AUL بوجود آیند، ولی تا مدتی بعد لازم نباشند. چنین متغیرهای دادهای باید بتوانند توسط کامپیوتر در واحد حافظه نوشته شوند، و بعد هنگامی که دادهها لازمند دوباره خواندهشون. حافظه بصورت یک آرایه (یا لیست) یک بعدی از کلمات سازمانیافته است و هر دستور یا متغیر دادهای یک یا چند کلمه را در حافظه اشغال میکند. هرکلمهاز تعدادی بیت (ارقام دودویی) حافظه بصورت موازی ساختهشده است.
واحد کنترل کامپیوتر ترتیب عملیات تمام اجزای توضیحدادهشده فوق را طبق دستورات برنامه کامپیوتر کنترل میکند. هر دستور از حافظه واکشیده میشود و سپس توسط واحد کنترل کدگشایی شده و به مجموعهای از سیگنالهای کنترل سطح پایینتر تبدیل میگردد که باعث میشوند عمل مشخصشده توسط آن دستور انجام شود. هنگامی که اجرای یک دستور کامل شده باشد دستور بعدی واکشیدهشده و فرآیند کدگشایی و اجرای دستور تکرار میشود. این فرآیند برای هر دستور برنامه تکرار میشود و فقط زمانی تفاوت می کند که یک دستور انشعاب پیش آید. در این حالت دستور بعدی که باید از حافظه واکشیدهشود به جای اینکه از نظر ترتیب دستور بعدی باشد، از آن بخش حافظه گرفته میشود که با دستور انشعابی تعیین شدهاست.
آخرین جزء کامپیوتر یک ساعت یا نوسانگر فرکانس ثابت است که کارکرد تمام اجزای کامپیوتر را همزمان میسازد و تضمین میکند که تمام عملیات با ترتیب صحیح رخ میدهند. فرکانس ساعت سرعت اجرای دستور کامپیوتر را تعیینکرده و با سرعت کاری مدارات نیمه رسانایی که کامپیوتر را تشکیل میدهند، محدود میشود.
اجزای حافظه اولیه:
در هر کامپیوتری، هم دستورات و هم دادهها به صورت اعداد دودویی بطور داخلی در حافظه ذخیره میشوند. این به آن علت است که کامپیوتر میتواند فقط دستوراتی را فهمیده و اجرا کند که در کد زبان ماشین دودویی متناسب با آن نوع خاص کامپیوتر کدبندی شدهباشند. ممکن است به نظر کاربر برسد که کامپیوتر در حال اجرای برنامهای است که به زبان برنامهنویسی دیگری، مانند بیسیک، پاسکال، نوشته شدهاست. در حقیقت برای اجرای یک برنامه نوشته شده به ر زبان دیگری، آن برنامه باید ابتدا به زبان ماشین خود کامپیوتر تبدیل شود. اینکار میتواند یا با استفاده از یک کامپایلر و یکبار و برای همه انجام شود، یا حین اجرای برنمهیا استفاده از یک مفسر انجام شود .
هر دستور در مجموعه دستورات کد ماشین به طور عادی با یک یا چند کلمه در حافظه کامپیوتر نمایشداده میشود.هر کلمه بطور فیزیکی با تعدادی رقم دودویی (بیت) به صورت موازی معرفی میگردد. همچنین دادهها بصورت کلمات در حافظه کامپیوتر ذخیره میشوند و از اینرو طول کلمه کامپیوتر تعداد ارقام دودوییای را تعریف میکند که کامپیوتر میتواند همزمان بکار برد. زیرا عملیات حسابی عموماً بر مبنای یک کلمه حافظه در یک زمان انجام می شوند تعداد بیت بر کلمه توسط طراح کامپیوتر انتخاب میشود و معیاری از قدرت پردازش کامپیوتر است در حال حاضر میکروپروسسورها نوعاً از ۸،۱۶ یا ۳۲ بیت بر کلمه، مینیکامپیوترها از ۳۲-۱۶ بیت بر کلمه و کامپیوترهای بزرگ از ۶۴-۳۲ بیت بر کلمه یا بیشتر، استفاده میکنند.
حافظه کامپیوتر به چندین روش مختلف بکارگرفته میشود در حال حاظر حافظه نیمههادی تکنولوژی غالب است . اجزای ذخیرهسازی نیمه هادی مدارات مجتمع ریزی هستند. هم مدارات سلول ذخیرهسازی و هم مدارگان پشتیبانی لازم برای نوشتن و خواندن دادهها روی تراشههای سیلیکونی بستهبندی شدهاند. در حال حاضر چندین تکنولوژی ذخیرهسازی نیمه هادی مورد استفادهاند. لازم نیست فیزیک این روشهای مختلف به تفضیل مورد ملاحضه قرار گیرد. فقط کافیست یادآوری شود که تراشههای گرانتر و سریعتر نیمه هادی دوقطبی اغلب در بخشهای حسابی / منطقی و بخشهای مشخص دیگر پروسسور بکار می روند در حالیکه تراشههای کندتر و ارزانتر که از تکنولوژی نیمه هادی اکسید – فلزی (MOS ) استفاده میکنند معمولاً در بخش حافظه اولیه بکار میروند. اغلب از این اجزای ذخیرهسازی اولیه تحت عنوان تراشههای حافظه دسترسی تصادفی ( RAM) نامبرده میشود زیرا هر مکان روی یک تراشه میتواند ذخیرهسازی و بازیابی مستقیم دادهها و دستورات بطور تصادفی و انتخاب و بکارگرفته شود.
تراشههای RAM میتوانند به صورت استاتیکی و دینامیکی طبقهبندی شوند. مدارات سلول ذخیرهسازی در تراشههای دینامیکی RAMشامل (این موارد) هستند: (۱) یک ترازیستور که عمدتاً به همان صورت یک کلید نوری روشن ـ خاموش مکانیکی عمل میکند و (۲) خازنی که قادر به ذخیرهسازی یک بار الکتریکی است، خازن، بسته به عمل کلیدزنی ترانزیستور، یا هیچ باری ندارد ( ۰ بیت) یا قطعاً بار دارد (۱ بیت). چون بار روی خازن تمایل به نشت کردن دارد شرایطی بارای بازتولید دورهای یا تجدید بار ذخیره فراهم میشود. بدینسان تراشه دینامیکی RAM نیز قطعات ذخیرهسازی فرار هستند، ولی تا هنگامیکه برق آنها تأمین باشد برای نگهداری دادههای ذخیرهشده نیاز به هیچ مدار بازسازی خاصی ندارند. از آنجا که ذخیره یک بیت در یک RAmاستاتیکی به تعداد بیشتری ترانزیستور و سایر قطعات نیاز دارد، این تراشهها نسبت به RAMهای دینامیکی پیچیدهترند و برای یک ظرفیت ذخیرهسازی مفروض فضای بیشتری اشغال میکنند. از اینرو RAMهای استاتیکی در کاربردهای خاصی بکار میروند در حالیکه RAM های دینامیکی در بخشهای حافظه اولیه اکثر کامپیوترها بکار میروند. به دلیل طبیعت فرار این اجزای حافظه، اغلب در دستگاههای کامپیوتری بزرگتر یک سیستم تغذیه قطعیناپذیر (UPS) پشتیبان یافت میشود. بعلاوه کاربران کامپیوترهای شخصی میتوانند چنددرصد دلار خرج کرده و یک UPSکوچک با توان باتری تهیه نمایند. این دستگاه جریان را برای مدتزمانی تأمین میکند که برایانکه کاربران دادهها را روی یک دیسک ذخیره کرده و سپس دستگاه را به صورتی مرتب متوقف کنند کافی است.
اجزای حافظه خاص در واحد پردازشگر
میدانید که هر پردازشگر یک بخش حافظه اولیه دارد که برنامه(های) فعال و داده های در حال پردازش را نگه میدارد. با اینحال خیلی از پردازشگرها علاوه بر این بخش حافظه همه منظوره، دارای اجزای درونساختی حافظه اختصاصی نیز هستند که برای مقاصد خاص پردازش و کنترل مورد استفاده قرار میگیرند.
یک جزء مورد استفاده حین عملیات پردازش یک بافر (یا حافظه پنهان)پر سرعت است که به ازای هر کارتر ذخیرهشده هم سریعتر و هم گرانتر از حافظه اولیه است. این مجموعه مدارات پرسرعت بعنوان یک حافظه دمدستی برای ذخیره موقت داده ها و دستوراتی بکار میرود که محتملاً طی پردازش بارها بازیابی میشوند. بدینسان میتوان سرعت پردازش را بهتر کرد. داده ها میتوانند به طور خودکار بین بافر و حافظه اولیه انتقال یابند به گونهای که برنامهنویس های کاربردی از کاربرد آن آگاه نیستند. حافظه پنهانی، که زمانی فقط در سیستمهای بزرگتر یافت میشد، اکنون در بعضی از تراشههای میکروپروسسوری کوچک بکاررفته در کامپیوترهای شخصی موجود است.
سایر اجزای اختصاصی حافظه که در بسیاری از پروسسورها یافت میشوند، برای مقاصد کنترلی بکار میروند. اصلیترین وظایف کامپیوتر توسط مدارات سیمکشی شده انجام میشوند. سپس می توان برای ترکیب این وظایف پایهای با عملیاتی که تا حدی سطح بالاتر هستند (تفریق مقادیر، انتقال دادهها، و غیره) مدارات بیشتری بکار برد. با این حال امکان انجام این عملیات سطح بالاتر با یک سری برنامه های خاص وجود دارد.از اینرو این برنامهها به نام ریزبرنامه، به این علت که با توابع سطح پایین ماشین سر و کار دارند اساساً جایگزینهایی برای سختافزار اضافی هستند.
ریزبرنامهها نوعاً در واحد پردازشگر در اجزای ذخیرهسازی کنترلی خاصی نگه داشته میشوند که به تراشههای حافظه فقطخواندنی (ROM) معروفند. تراشه های ROM، بر خلاف تراشه های RAM که فرار هستند، دادههای ذخیرهشده را هنگام قطع برق نگه میدارند. دستورات کنترلی ریز برنامه، که باعث میشوند ماشین عملیات خاصی را انجام دهد، میتوانند به صورت لازم مکرراً از یک تراشه ROM خواندهشوند، ولی تراشه هیچدستور یا داده ورودی را از کاربران کامپیوتر نخواهدپذیرفت.
مقدماتیترین نوع تراشه ROMتوسط سازنده کامپیوتر به صورت جزئی از سیستم کامپیوتر تهیه میشود و نمیتواند توسط کاربران تغییر یافته یا تعویض شود. چنین تراشههاییبه عنوان یک محیط ذخیرهسازی برنامه در بازیهای تلویزیونی و کامپیوترهای شخصی کاربرد وسیعی یافتهاند. البته برای یک کاربر این امکان وجود دارد که با انتخاب وظایفی از ماشین که توسط ریزبرنامهها اجرا خواهندشد و سپس با استفاده از یک نوع دوم تراشه ROM ، یک سیستم سفارش دهد. بعنوان مثال، عملیات حساس یا طولانی که توسط نرمافزار به آرامی انجامشدهاند میتوانند به ریزبرنامهها تبدیلشده و در یک تراشه حافظه فقطخواندنی قابل برنامهنویسی (PROM) وارد شوند. معمولاً اینها به محض اینکه به شکل سخت افزاری درآمدند، میتوانند در کسری از زمان لازم قبلی اجرا شوند.
تراشههای PROM توسط تولیدکنندگان کامپیوتر و فروشندگان معمولی ROM عرضه میشوند. عملیات به محض نوشته شدن در یک تراشه PROM، دایمیشده و نمیتوانند تعویض شوند. با اینحال انواع دیگری از تراشههای کنتل ROM وجود دارند که میتوانند پاکشده و دوباره برنامه ریزی شوند. از آنجا که یک نوع تراشه حافظه فقط خواندنی برنامهپذیر پاکشدنی (EPROM) قبل از آنکه بتواند محتویات جدید بپذیرد لازم است که از پردازشگر برداشتهشده و مدتی در معرض نور فرابنفش قرارگیرد، لذا بسختی برای استفاده برنامهنویسان کاربردی مناسب است. نوع دیکری تراشه حافظه فقط خواندنی برنامهپذیر پاکشدنی بصورت الکتریکی (EEPROM) نیز وجود دارد که میتواند با پالسهای الکتریکی خاص مجدداً برنامهریزی شود.
با اینحال همه آنها بی ارتباط به نوع تراشه ROM مورد استفاده، برای افزایش کارایی پردازشگر با کنترل عملکرد تعداد کمی از اعمال خاص بدرد میخورند.
روند توسعه کامپیوتر در ۱۵۰ سال گذشته منجر به این شده است که تمام کامپیوترها حاوی چند ویژگی اساسی باشند:
کنترل برنامه ذخیرهشده: برنامه کامپیوتر، که دنبالهای از دستوراتی است که برای اجرای پردازش لازم دادهها یک به یک اجرا میشوند، باید در کامپیوتر ذخیره شود. این (مسئله) امتیازات مهمی نسبت به دخیره خارجی برنامه دارد.
انشعاب شرطی: یک امتیاز ذخیره برنامه به صورت داخلی این است که لازم نیست دستور بعدی که باید اجرا شود از نظر ترتیب ( دستور) بعدی باشد زیرا به هر دستوری میتوان با با همان سرعت هر (دستور) دیگر دسترسی پیداکرد ( این به دسترسی تصادفی معروف است ). از اینرو انتخاب اینکه کدام دستور بعداً اجرا شود میتواند بر مبنای نتیجه عمل یا عملیات قبلی باشد، که به کامپیوتر بر اساس پردازشی که انجام میدهد، توانایی تصمیم گیری میبخشد.
حلقهها و سابروتینها (زیرروالها): توانایی یک برنامه در اجرای تکراری مجموعه خاصی از دستورات در صورت نیاز، میتواند صرفهجوییهای قابل توجهی در ذخیرهسازی مورد نیاز برنامه ایجاد کند. پرشهای شرطی میتوانند موجب برگشت حلقه و یا تکرار مجموعهای از دستورات بدفعات شوند. و معمولاً زیر برنامه های مورد نظر در یک برنامه میتوانند از هر قسمت دیگر برنامه آنگونه که لازم است، فراخوانده شوند بدون اینکه لازم باشد دستورات زیر برنامه هر بار که آن زیربرنامه فراخوانده میشود در برنامه های اصلی وجود داشته باشند.
سرعت علم الکترونیک:اگر چه تکتک دستورات قابل دسترسی در یک کامپیوتر میتوانند کاملاً محدود باشند، ولی چون هر دستور میتواند بسیار سریع اجرا شود، از اینرو در زمانی که ذهناً خیلی کوتاه به نظر میرسد، امکان دارد پردازش نسبتاًقدرتمندتری انجام شود. ( اینرا با قابلیت سرعتی کامپیوتر مکانیکی بابیج مقایسه میکند.)
هزینه: هزینه قدرت محاسباتی و خصوصاًهزینه حافظه کامپیوتر دایماً رو به کاهش است. اکنون ذخیره یک دستور کامپیوتری در یک حافظه الکترونیکی از ذخیره آن روی کارت یا یک قطعه نوار کاغذی ارزانتر است.
دستورات میتوانند خود را تصحیح کنند: اگرچه این (موضوع) یکی از ایدههای اصلی وننیومان بود که در مفهوم کنترل برنامه ذخیرهشده تجسم مییافت، ولی از آن موقع به بعد خیلی مورد استفاده نبودهاست. یک دلیل آن این است که به محض آنکه برنامه کامپیوتری نسبت به آنچه که در ابتدا توسط برنامهنویس نوشتهشده است تغییر یافت، اطلاع از آنچه کامپیوتر انجام میدهد مشکل است. خصوصاً در میکروپروسسرها از این ایده پرهیز میشود.
یک کامپیوتر ساده:
شکل ۱ـ۷ ساختمان یک کامپیوتر ساده را نشان میدهد. کامپیوتر میتواند به تعدادی از اجزای جداگانه تفکیک شود. گر چه اجزای نشاندادهشده لزوماً معروف تقسیمبندی فیزیکی اجزاء در یک کامپیوتر واقعی نیستند. به عنوان مثال در ریزکامپیوترها، واحد کنترل و واحد حساب و منطق (ALU) عموماً به صورت یک تراشه تنها، یک میکروپروسسور، بکار گرفته میشوند. بطور مشابه در بعضی از ریزکامپیوترها واحد ورودی و خروجی میتوانند در یک تراشه تنها ترکیب شوند. با اینحال شکل ۱-۷ نشاندهنده ساختمان مفهومی هر کامپیوتر، از کوچکترین ریزکامپیوترها تا بزرگترین کامپیوترها است.
اولین لازمه هر کامپیوتر مکانیزمی برای کار با دادهها است.. این کار توسط ALU فراهم میشود، که میتواند اعمالی مانند جمع یا تقسیم دو عد، انجام عملیات منطقی، برای افزایش و کاهش اعداد و عملیات انتقال چپ و راست را اجرا کند. میتوان با برنامهریزی، از این مجموعه بسیار اساسی عملیات، عملیات پردازشی پیچیدهتری بوجود آورد. کامپیوترهای بزرگتر میتوانند دستورات قویتری (مثلاً ضرب و تقسیم) را در مجموعه دستورات کامپیوتر تدارک ببینند.
به وضوح هر کامپیوتری باید شامل یک واحد ورودی و خروجی نیز باشد. اینها مکانیزمهایی فراهم میکنند که کامپیوتر توسط آنها با دنیای خارج ارتباط برقرار مینماید. دنیای خارج میتواند شامل شخصی باشد که در یک پایانه کامپیوتری مشغول تایپ است و پاسخ را روی یک صفحه تماشا میکند، یا میتواند یکسری تجهیزات، مثلاًیک ماشینلباسشویی باشد، که ورودیهای دادهای مانند دمای آب، سطح آب و سرعت چرخش طلبک ارائه می کند و براساس برنامه داخل کامپیوتر، توسط خروجیهای کامپیوتری که هیتر و شیرهای آب را روشن و خاموش کرده و سرعت موتور را تغییر میدهند، کنترل میشود.
کامپیوتر باید حاوی یک حافظه داخلی باشد که دو کار انجام میدهد. اولاً محل ذخیرهای برای برنامه کامپیوتری فراهم میکند، ثانیاً محل ذخیره موقتی برای داده هایی فراهم میکند که ممکن است در نقطهای طی اجرای برنامه توسط AUL بوجود آیند، ولی تا مدتی بعد لازم نباشند. چنین متغیرهای دادهای باید بتوانند توسط کامپیوتر در واحد حافظه نوشته شوند، و بعد هنگامی که دادهها لازمند دوباره خواندهشون. حافظه بصورت یک آرایه (یا لیست) یک بعدی از کلمات سازمانیافته است و هر دستور یا متغیر دادهای یک یا چند کلمه را در حافظه اشغال میکند. هرکلمهاز تعدادی بیت (ارقام دودویی) حافظه بصورت موازی ساختهشده است.
واحد کنترل کامپیوتر ترتیب عملیات تمام اجزای توضیحدادهشده فوق را طبق دستورات برنامه کامپیوتر کنترل میکند. هر دستور از حافظه واکشیده میشود و سپس توسط واحد کنترل کدگشایی شده و به مجموعهای از سیگنالهای کنترل سطح پایینتر تبدیل میگردد که باعث میشوند عمل مشخصشده توسط آن دستور انجام شود. هنگامی که اجرای یک دستور کامل شده باشد دستور بعدی واکشیدهشده و فرآیند کدگشایی و اجرای دستور تکرار میشود. این فرآیند برای هر دستور برنامه تکرار میشود و فقط زمانی تفاوت می کند که یک دستور انشعاب پیش آید. در این حالت دستور بعدی که باید از حافظه واکشیدهشود به جای اینکه از نظر ترتیب دستور بعدی باشد، از آن بخش حافظه گرفته میشود که با دستور انشعابی تعیین شدهاست.
آخرین جزء کامپیوتر یک ساعت یا نوسانگر فرکانس ثابت است که کارکرد تمام اجزای کامپیوتر را همزمان میسازد و تضمین میکند که تمام عملیات با ترتیب صحیح رخ میدهند. فرکانس ساعت سرعت اجرای دستور کامپیوتر را تعیینکرده و با سرعت کاری مدارات نیمه رسانایی که کامپیوتر را تشکیل میدهند، محدود میشود.
اجزای حافظه اولیه:
در هر کامپیوتری، هم دستورات و هم دادهها به صورت اعداد دودویی بطور داخلی در حافظه ذخیره میشوند. این به آن علت است که کامپیوتر میتواند فقط دستوراتی را فهمیده و اجرا کند که در کد زبان ماشین دودویی متناسب با آن نوع خاص کامپیوتر کدبندی شدهباشند. ممکن است به نظر کاربر برسد که کامپیوتر در حال اجرای برنامهای است که به زبان برنامهنویسی دیگری، مانند بیسیک، پاسکال، نوشته شدهاست. در حقیقت برای اجرای یک برنامه نوشته شده به ر زبان دیگری، آن برنامه باید ابتدا به زبان ماشین خود کامپیوتر تبدیل شود. اینکار میتواند یا با استفاده از یک کامپایلر و یکبار و برای همه انجام شود، یا حین اجرای برنمهیا استفاده از یک مفسر انجام شود .
هر دستور در مجموعه دستورات کد ماشین به طور عادی با یک یا چند کلمه در حافظه کامپیوتر نمایشداده میشود.هر کلمه بطور فیزیکی با تعدادی رقم دودویی (بیت) به صورت موازی معرفی میگردد. همچنین دادهها بصورت کلمات در حافظه کامپیوتر ذخیره میشوند و از اینرو طول کلمه کامپیوتر تعداد ارقام دودوییای را تعریف میکند که کامپیوتر میتواند همزمان بکار برد. زیرا عملیات حسابی عموماً بر مبنای یک کلمه حافظه در یک زمان انجام می شوند تعداد بیت بر کلمه توسط طراح کامپیوتر انتخاب میشود و معیاری از قدرت پردازش کامپیوتر است در حال حاضر میکروپروسسورها نوعاً از ۸،۱۶ یا ۳۲ بیت بر کلمه، مینیکامپیوترها از ۳۲-۱۶ بیت بر کلمه و کامپیوترهای بزرگ از ۶۴-۳۲ بیت بر کلمه یا بیشتر، استفاده میکنند.
حافظه کامپیوتر به چندین روش مختلف بکارگرفته میشود در حال حاظر حافظه نیمههادی تکنولوژی غالب است . اجزای ذخیرهسازی نیمه هادی مدارات مجتمع ریزی هستند. هم مدارات سلول ذخیرهسازی و هم مدارگان پشتیبانی لازم برای نوشتن و خواندن دادهها روی تراشههای سیلیکونی بستهبندی شدهاند. در حال حاضر چندین تکنولوژی ذخیرهسازی نیمه هادی مورد استفادهاند. لازم نیست فیزیک این روشهای مختلف به تفضیل مورد ملاحضه قرار گیرد. فقط کافیست یادآوری شود که تراشههای گرانتر و سریعتر نیمه هادی دوقطبی اغلب در بخشهای حسابی / منطقی و بخشهای مشخص دیگر پروسسور بکار می روند در حالیکه تراشههای کندتر و ارزانتر که از تکنولوژی نیمه هادی اکسید – فلزی (MOS ) استفاده میکنند معمولاً در بخش حافظه اولیه بکار میروند. اغلب از این اجزای ذخیرهسازی اولیه تحت عنوان تراشههای حافظه دسترسی تصادفی ( RAM) نامبرده میشود زیرا هر مکان روی یک تراشه میتواند ذخیرهسازی و بازیابی مستقیم دادهها و دستورات بطور تصادفی و انتخاب و بکارگرفته شود.
تراشههای RAM میتوانند به صورت استاتیکی و دینامیکی طبقهبندی شوند. مدارات سلول ذخیرهسازی در تراشههای دینامیکی RAMشامل (این موارد) هستند: (۱) یک ترازیستور که عمدتاً به همان صورت یک کلید نوری روشن ـ خاموش مکانیکی عمل میکند و (۲) خازنی که قادر به ذخیرهسازی یک بار الکتریکی است، خازن، بسته به عمل کلیدزنی ترانزیستور، یا هیچ باری ندارد ( ۰ بیت) یا قطعاً بار دارد (۱ بیت). چون بار روی خازن تمایل به نشت کردن دارد شرایطی بارای بازتولید دورهای یا تجدید بار ذخیره فراهم میشود. بدینسان تراشه دینامیکی RAM نیز قطعات ذخیرهسازی فرار هستند، ولی تا هنگامیکه برق آنها تأمین باشد برای نگهداری دادههای ذخیرهشده نیاز به هیچ مدار بازسازی خاصی ندارند. از آنجا که ذخیره یک بیت در یک RAmاستاتیکی به تعداد بیشتری ترانزیستور و سایر قطعات نیاز دارد، این تراشهها نسبت به RAMهای دینامیکی پیچیدهترند و برای یک ظرفیت ذخیرهسازی مفروض فضای بیشتری اشغال میکنند. از اینرو RAMهای استاتیکی در کاربردهای خاصی بکار میروند در حالیکه RAM های دینامیکی در بخشهای حافظه اولیه اکثر کامپیوترها بکار میروند. به دلیل طبیعت فرار این اجزای حافظه، اغلب در دستگاههای کامپیوتری بزرگتر یک سیستم تغذیه قطعیناپذیر (UPS) پشتیبان یافت میشود. بعلاوه کاربران کامپیوترهای شخصی میتوانند چنددرصد دلار خرج کرده و یک UPSکوچک با توان باتری تهیه نمایند. این دستگاه جریان را برای مدتزمانی تأمین میکند که برایانکه کاربران دادهها را روی یک دیسک ذخیره کرده و سپس دستگاه را به صورتی مرتب متوقف کنند کافی است.
اجزای حافظه خاص در واحد پردازشگر
میدانید که هر پردازشگر یک بخش حافظه اولیه دارد که برنامه(های) فعال و داده های در حال پردازش را نگه میدارد. با اینحال خیلی از پردازشگرها علاوه بر این بخش حافظه همه منظوره، دارای اجزای درونساختی حافظه اختصاصی نیز هستند که برای مقاصد خاص پردازش و کنترل مورد استفاده قرار میگیرند.
یک جزء مورد استفاده حین عملیات پردازش یک بافر (یا حافظه پنهان)پر سرعت است که به ازای هر کارتر ذخیرهشده هم سریعتر و هم گرانتر از حافظه اولیه است. این مجموعه مدارات پرسرعت بعنوان یک حافظه دمدستی برای ذخیره موقت داده ها و دستوراتی بکار میرود که محتملاً طی پردازش بارها بازیابی میشوند. بدینسان میتوان سرعت پردازش را بهتر کرد. داده ها میتوانند به طور خودکار بین بافر و حافظه اولیه انتقال یابند به گونهای که برنامهنویس های کاربردی از کاربرد آن آگاه نیستند. حافظه پنهانی، که زمانی فقط در سیستمهای بزرگتر یافت میشد، اکنون در بعضی از تراشههای میکروپروسسوری کوچک بکاررفته در کامپیوترهای شخصی موجود است.
سایر اجزای اختصاصی حافظه که در بسیاری از پروسسورها یافت میشوند، برای مقاصد کنترلی بکار میروند. اصلیترین وظایف کامپیوتر توسط مدارات سیمکشی شده انجام میشوند. سپس می توان برای ترکیب این وظایف پایهای با عملیاتی که تا حدی سطح بالاتر هستند (تفریق مقادیر، انتقال دادهها، و غیره) مدارات بیشتری بکار برد. با این حال امکان انجام این عملیات سطح بالاتر با یک سری برنامه های خاص وجود دارد.از اینرو این برنامهها به نام ریزبرنامه، به این علت که با توابع سطح پایین ماشین سر و کار دارند اساساً جایگزینهایی برای سختافزار اضافی هستند.
ریزبرنامهها نوعاً در واحد پردازشگر در اجزای ذخیرهسازی کنترلی خاصی نگه داشته میشوند که به تراشههای حافظه فقطخواندنی (ROM) معروفند. تراشه های ROM، بر خلاف تراشه های RAM که فرار هستند، دادههای ذخیرهشده را هنگام قطع برق نگه میدارند. دستورات کنترلی ریز برنامه، که باعث میشوند ماشین عملیات خاصی را انجام دهد، میتوانند به صورت لازم مکرراً از یک تراشه ROM خواندهشوند، ولی تراشه هیچدستور یا داده ورودی را از کاربران کامپیوتر نخواهدپذیرفت.
مقدماتیترین نوع تراشه ROMتوسط سازنده کامپیوتر به صورت جزئی از سیستم کامپیوتر تهیه میشود و نمیتواند توسط کاربران تغییر یافته یا تعویض شود. چنین تراشههاییبه عنوان یک محیط ذخیرهسازی برنامه در بازیهای تلویزیونی و کامپیوترهای شخصی کاربرد وسیعی یافتهاند. البته برای یک کاربر این امکان وجود دارد که با انتخاب وظایفی از ماشین که توسط ریزبرنامهها اجرا خواهندشد و سپس با استفاده از یک نوع دوم تراشه ROM ، یک سیستم سفارش دهد. بعنوان مثال، عملیات حساس یا طولانی که توسط نرمافزار به آرامی انجامشدهاند میتوانند به ریزبرنامهها تبدیلشده و در یک تراشه حافظه فقطخواندنی قابل برنامهنویسی (PROM) وارد شوند. معمولاً اینها به محض اینکه به شکل سخت افزاری درآمدند، میتوانند در کسری از زمان لازم قبلی اجرا شوند.
تراشههای PROM توسط تولیدکنندگان کامپیوتر و فروشندگان معمولی ROM عرضه میشوند. عملیات به محض نوشته شدن در یک تراشه PROM، دایمیشده و نمیتوانند تعویض شوند. با اینحال انواع دیگری از تراشههای کنتل ROM وجود دارند که میتوانند پاکشده و دوباره برنامه ریزی شوند. از آنجا که یک نوع تراشه حافظه فقط خواندنی برنامهپذیر پاکشدنی (EPROM) قبل از آنکه بتواند محتویات جدید بپذیرد لازم است که از پردازشگر برداشتهشده و مدتی در معرض نور فرابنفش قرارگیرد، لذا بسختی برای استفاده برنامهنویسان کاربردی مناسب است. نوع دیکری تراشه حافظه فقط خواندنی برنامهپذیر پاکشدنی بصورت الکتریکی (EEPROM) نیز وجود دارد که میتواند با پالسهای الکتریکی خاص مجدداً برنامهریزی شود.
با اینحال همه آنها بی ارتباط به نوع تراشه ROM مورد استفاده، برای افزایش کارایی پردازشگر با کنترل عملکرد تعداد کمی از اعمال خاص بدرد میخورند.
نويسنده / مترجم : -
زبان کتاب : -
حجم کتاب : -
نوع فايل : -
تعداد صفحه : -
ادامه مطلب + دانلود...