حافظه با هدف ذخیره سازی اطلاعات ( دائم ، موقت ) در کامپیوتر استفاده می گردد و دارای انواع متفاوتی است :
RAM
ROM
Cache
Dynamic RAM
Static RAM
Flash Memory
Virtual Memory
Video Memory
BIOS
استفاده از حافظه صرفا" محدود به کامپیوترهای شخصی نبوده و در دستگاههای متفاوتی نظیر : تلفن های سلولی، PDA ، رادیوهای اتومبیل ، VCR ، تلویزیون و ... نیز در ابعاد وسیعی استفاده می گردد .هر یک از دستگاه های فوق مدل های خاصی از حافظه را استفاده می نمایند.
مبانی اولیه حافظه
با اینکه می توان واژه " حافظه " را بر هر نوع وسیله ذخیره سازی الکترونیکی اطلاق کرد، ولی اغلب از واژه فوق برای مشخص نمودن حافظه های سریع با قابلیت ذخیره سازی موقت استفاده می شود. در صورتیکه پردازنده مجبور باشد برای بازیابی اطلاعات مورد نیاز خود بصورت دائم از هارد دیسک استفاده نمائد، قطعا" سرعت عملیات پردازنده ( با آن سرعت بالا) کند خواهد گردید. زمانیکه اطلاعات مورد نیاز پردازنده در حافظه ذخیره گردند، سرعت عملیات پردازنده از بعد دستیابی به داده های مورد نیاز بیشتر خواهد گردید. از حافظه های متعددی به منظور نگهداری موقت اطلاعات استفاده می گردد.
همانگونه که در شکل فوق مشاهده می گردد ، محموعه متنوعی ازانواع حافظه ها وجود دارد . پردازنده با توجه به ساختار سلسله مراتبی فوق به آنها دستیابی پیدا خواهد کرد. زمانیکه در سطح حافظه های دائمی نظیر هارد و یا حافظه دستگاههائی نظیر صفحه کلید، اطلاعاتی موحود باشد که پردازنده قصد استفاده از آنان را داشته باشد ، می بایست اطلاعات فوق از طریق حافظه RAM در اختیار پردازنده قرار گیرند. در ادامه پردازنده اطلاعات و داده های مورد نیاز خود را در حافظه Cache و دستورالعمل های خاص عملیاتی خود را در ریجسترها ذخیره می نماید.
تمام عناصر سخت افزاری ( پردازنده، هارد دیسک ، حافظه و ...) و عناصر نرم افزاری ( سیستم عامل و...) بصورت یک گروه عملیاتی بکمک یکدیگر وظایف محوله را انجام می دهند . بدون شک در این گروه " حافظه " دارای جایگاهی خاص است . از زمانیکه کامپیوتر روشن تا زمانیکه خاموش می گردد ، پردازنده بصورت پیوسته و دائم از حافظه استفاده می نماید. بلافاصله پس از روشن نمودن کامپیوتر اطلاعات اولیه ( برنامه POST ) از حافظه ROM فعال شده و در ادامه وضعیت حافظه از نظر سالم بودن بررسی می گردد ( عملیات سریع خواندن ، نوشتن ) .در مرحله بعد کامپیوتر BIOS را ازطریق ROM فعال خواهد کرد. BIOS اطلاعات اولیه و ضروری در رابطه با دستگاههای ذخیره سازی، وضعیت درایوی که می بایست فرآیند بوت از آنجا آغاز گردد، امنیت و ... را مشخص می نماید. در مرحله بعد سیستم عامل از هارد به درون حافظه RAM استفرار خواهد یافت . بخش های مهم و حیاتی سیستم عامل تا زمانیکه سیستم روشن است در حافظه ماندگار خواهند بود. در ادامه و زمانیکه یک برنامه توسط کاربر فعال می گردد، برنامه فوق در حافظه RAM مستقر خواهد شد. پس از استقرار یک برنامه در حافظه و آغاز سرویس دهی توسط برنامه مورد نظر در صورت ضرورت فایل های مورد نیاز برنامه فوق، در حافظه مستفر خواهند شد.و در نهایت زمانیکه به حیات یک برنامه خاتمه داده می شود (Close ) و یا یک فایل ذخیره می گردد ، اطلاعات بر روی یک رسانه ذخیره سازی دائم ذخیره و نهایتا" حافظه از وجود برنامه و فایل های مرتبط ، پاکسازی ! می گردد. همانگونه که اشاره گردید در هر زمان که اطلاعاتی ، مورد نیاز پردازنده باشد، می بایست اطلاعات درخواستی در حافظه RAM مستقر تا زمینه استفاده از آنان توسط پردازنده فراهم گردد. چرخه درخواست اطلاعات موجود درRAM توسط پردازنده ، پردازش اطلاعات توسط پردازنده و نوشتن اطلاعات جدید در حافظه یک سیکل کاملا" پیوسته بوده و در اکثر کامپیوترها سیکل فوق ممکن است در هر ثانیه میلیون ها مرتبه تکرار گردد.
نیاز به سرعت دلیلی بر وجود حافظه های متنوع
چرا حافظه در کامپیوتر تا بدین میزان متنوع و متفاوت است ؟ در پاسخ می توان به موارد ذیل اشاره نمود:
پردازنده های با سرعت بالا نیازمند دستیابی سریع و آسان به حجم بالائی از داده ها به منظور افزایش بهره وری و کارآئی خود می باشند.. در صورتیکه پردازنده قادر به تامین و دستیابی به داده های مورد نیاز در زمان مورد نظر نباشد، می بایست عملیات خود را متوقف و در انتظار تامین داده های مورد نیاز باشد. پردازند ه های جدید وبا سرعت یک گیگا هرتز به حجم بالائی از داده ها ( میلیارد بایت در هر ثانیه ) نیاز خواهند داشت . پردازنده هائی با سرعت اشاره شده گران قیمت بوده و قطعا" اتلاف زمان مفید آنان مطلوب و قابل قبول نخواهد بود. طراحان کامپیوتر به منظور حل مشکل فوق ایده " لایه بندی حافظه " را مطرح نموده اند. در این راستا از حافظه های گران قیمت با میزان اندک استفاده و از حافظه های ارزان تر در حجم بیشتری استفاده بعمل می آید. ارزانترین حافظه متدواول ، هارد دیسک است . هارد دیسک یک رسانه ذخیره سازی ارزان قیمت با توان ذخیره سازی حجم بالائی از اطلاعات است . با توجه به ارزان بودن فضای ذخیره سازی اطلاعات بر روی هارد، اطلاعات مورد نظر بر روی آنها ذخیره و با استفاده از روش های متفاوتی نظیر : حافظه مجازی می توان بسادگی و بسرعت بدون نگرانی از فضای فیزیکی حافظه RAM ، از آنها استفاده نمود.
حافظه RAM سطح دستیابی بعدی در ساختار سلسله مراتبی حافظه است . اندازه بیت یک پردازنده نشاندهنده تعداد بایت هائی از حافظه است که در یک لحظه می توان به آنها دستیابی داشت. مثلا" یک پردازنده شانزده بیتی ، قادر به پردازش دو بایت در هر لحظه است . مگاهرتز واحد سنجش سرعت پردازش در پردازنده ها است و معادل "میلیون در هر ثانیه" است . مثلا" یک کامپیوتر 32 بیتی پنتیوم iii با سرعت 800-MHz ، قادر به پردازش چهار بایت بصورت همزمان و 800 میلیون بار در ثانیه است . حافظه RAM بتنهائی دارای سرعت مناسب برای همسنگ شدن با سرعت پردازنده نیست . بهمین دلیل است که از حافظه های Cache استفاده می گردد. بدیهی است هر اندازه که سرعت حافظه RAM بالا باشد مطلوب تر خواهد بود.اغلب تراشه های مربوطه امروزه دارای سرعتی بین 50 تا 70 Nanoseconds می باشند. سرعت خواندن و یا نوشتن در حافظه ارتباط مستقیم با نوع حافظه استفاده شده دارد .در این راستا ممکن است از حافظه های DRAM,SDRAM,RAMBUS استفاده گردد. سرعت RAM توسط پهنا و سرعت Bus ، کنترل می گردد. پهنای Bus ، تعداد بایتی که می تواند بطور همزمان برای پردازنده ارسال گردد را مشخص و سرعت BUS به تعداد دفعاتی که می توان یک گروه از بیت ها را در هر ثانیه ارسال کرد اطلاق می گردد. سیکل منظم حرکت داده ها از حافظه بسمت پردازنده را Bus Cycle می گویند مثلا" یک Bus با وضعیت : 100MHz و 32 بیت، بصورت تئوری قادر به ارسال چهار بایت به پردازنده و یکصد میلیون مرتبه در هر ثانیه است . در حالیکه یک BUS شانرده بیتی 66MHZ بصورت تئوری قادر به ارسال دو بایت و 66 میلیون مرتبه در هر ثانیه است . با توجه به مثال فوق مشاهده می گردد که با تغییر پهنای BUS از شانزده به سی و دو و سرعت از 66MHz به 100MHz سرعت ارسال داده برای پردازنده سه برابر گردید.
ریجستر و Cache
با توجه به سرعت بسیار بالای پردازنده حتی در صورت استفاده از Bus عریض وسریع همچنان مدت زمانی طول خواهد کشید تا داده ها از حافظه RAM برای پردازنده ارسال گردند. Cache با این هدف طراحی شده است که داده های مورد نیاز پردازنده را که احتمال استفاده از آنان بیشتر است ، در دسترس تر قرار دهد . عملیات فوق از طریق بکارگیری مقدار اندکی از حافظه Cache که Primary و یا Level 1 نامیده می شود صورت می پذیرد. ظرفیت حافظه های فوق بسیار اندک بوده و از دو کیلو بایت تا شصت و چهار کیلو بایت را، شامل می گردد. نوع دوم Cache که Secodray و یا level 2 نامیده می شود بر روی یک کارت حافظه و در مجاورت پردازنده قرار می گیرد. این نوع Cache دارای یک ارتباط مستقیم با پردازنده است. یک مدار کنترل کننده اختصاصی بر روی برد اصلی که " کنترل کننده L2 " نامیده می شود مسئولیت عملیات مربوطه را برعهده خواهد گرفت . با توجه به نوع پردازنده ، اندازه حافظه فوق متغیر بوده و دارای دامنه ای بین 256Kb تا 2MB است. برخی از پردازنده های با کارائی بالا اخیرا" این نوع Cache را بعنوان جزئی جداناپذیر در کنار خود دارند. ( بخشی از تراشه پردازنده ) در این نوع پردازنده ها با توجه به اینکه Cache بخشی از پردازنده محسوب می گردد، اندازه آن متغیر بوده و بعنوان یکی از مهمترین شاخص ها در کارائی پردازنده مطرح است.
نوع دیگری از RAM با نام SRAM ( حافظ های با دستیابی تصادفی ایستا ) نیز وجود داشته که در آغاز برای Cache استفاده می گردید. این نوع حافظه ها از چندین ترانزیستور ( معمولا" چهار تا شش ) برای هر یک از سلول های حافظه خود استفاده می نمایند. حافظه های فوق دارای مجموعه ای از فلیپ فلاپ ها با دو وضعیت خواهند بود. بنابراین حافظه های فوق قادر به بازخوانی اطلاعات بصورت پیوسته نظیر حافظه های DRAM نخواهند بود. هر یک از سلول های حافظه مادامیکه منبع تامین انرژی آنها فعال (On ) باشد داده های خود را ذخیره نگاه خواهند داشت . در این حالت ضرورتی به بازخوانی اطلاعات بصورت پریودیک نخواهد بود . سرعت حافظه های فوق بسیار بالا است ، ولی بدلیل قیمت بالا ، در حال حاضر بعنوان جایگزینی استاندارد برای حافظه های RAM مطرح نمی باشند.
شاخص های تقسیم بندی حافظه
حافظه ها را می توان بر اساس شاخص های متفاوتی تقسیم بندی کرد . Volatile و Nonvolatile نمونه ای از این تقسیم بندی ها است . حافظه های volatile بلافاصله پس از خاموش شدن سیستم اطلاعات خود را از دست می دهند. و همواره برای نگهداری اطلاعات خود به منبع تامین انرژی نیاز خواهند داشت . اغلب حافظه های RAM در این گروه قرار می گیرند. حافظه های Nonvolatile داده های خود را همچنان پس از خاموش شدن سیستم حفظ خواهند کرد. حافظه ROM نمونه ای از این نوع حافظه ها است .
حافظه RAM
حافظه (RAM(Random Access Memory شناخته ترین نوع حافظه در دنیای کامپیوتر است . روش دستیابی به این نوع از حافظه ها تصادفی است ، چون می توان به هر سلول حافظه مستقیما" دستیابی پیدا کرد . در مقابل حافظه های RAM ، حافظه های(SAM(Serial Access Memory وجود دارند. حافظه های SAM اطلاعات را در مجموعه ای از سلول های حافظه ذخیره و صرفا" امکان دستیابی به آنها بصورت ترتیبی وجود خواهد داشت. ( نظیر نوار کاست ) در صورتیکه داده مورد نظر در محل جاری نباشد هر یک از سلول های حافظه به ترتیب بررسی شده تا داده مورد نظر پیدا گردد. حافظه های SAM در مواردیکه پردازش داده ها الزاما" بصورت ترتیبی خواهد بود مفید می باشند ( نظیر حافظه موجود بر روی کارت های گرافیک ). داده های ذخیره شده در حافظه RAM با هر اولویت دلخواه قابل دستیابی خواهند بود.
مبانی حافظه های RAM
حافظه RAM ، یک تراشه مدار مجتمع (IC ) است که از میلیون ها ترانزیستور و خازن تشکیل می گردد .در اغلب حافظه ها با استفاده و بکارگیری یک خازن و یک ترانزیستور می توان یک سلول را ایجاد کرد. سلول فوق قادر به نگهداری یک بیت داده می باشد. خازن اطلاعات مربوط به بیت را که یک و یا صفر است ، در خود نگهداری خواهد کرد.عملکرد ترانزیستور مشابه یک سوییچ بوده که امکان کنترل مدارات موجود بر روی تراشه حافظه را بمنظور خواندن مقدار ذخیره شده در خازن و یا تغییر وضعیت مربوط به آن ، فراهم می نماید.خازن مشابه یک ظرف ( سطل) بوده که قادر به نگهداری الکترون ها است . بمنظور ذخیره سازی مقدار" یک" در حافظه، ظرف فوق می بایست از الکترونها پر گردد. برای ذخیره سازی مقدار صفر، می بایست ظرف فوق خالی گردد.مسئله مهم در رابطه با خازن، نشت اطلاعات است ( وجود سوراخ در ظرف ) بدین ترتیب پس از گذشت چندین میلی ثانیه یک ظرف مملو از الکترون تخلیه می گردد. بنابراین بمنظور اینکه حافظه بصورت پویا اطلاعات خود را نگهداری نماید ، می بایست پردازنده و یا " کنترل کننده حافظه " قبل از تخلیه شدن خازن، مکلف به شارژ مجدد آن بمنظور نگهداری مقدار "یک" باشند.بدین منظور کنترل کننده حافظه اطلاعات حافظه را خوانده و مجددا" اطلاعات را بازنویسی می نماید.عملیات فوق (Refresh )، هزاران مرتبه در یک ثانیه تکرار خواهد شد.علت نامگذاری DRAM بدین دلیل است که این نوع حافظه ها مجبور به بازخوانی اطلاعات بصورت پویا خواهند بود. فرآیند تکراری " بازخوانی / بازنویسی اطلاعات" در این نوع حافظه ها باعث می شود که زمان تلف و سرعت حافظه کند گردد.
سلول های حافظه بر روی یک تراشه سیلیکون و بصورت آرائه ای مشتمل از ستون ها ( خطوط بیت ) و سطرها ( خطوط کلمات) تشکیل می گردند. نقطه تلاقی یک سطر و ستون بیانگر آدرس سلول حافظه است .
حافظه های DRAM با ارسال یک شارژ به ستون مورد نظر باعث فعال شدن ترانزیستور در هر بیت ستون، خواهند شد.در زمان نوشتن خطوط سطر شامل وضعیتی خواهند شد که خازن می بایست به آن وضغیت تبدیل گردد. در زمان خواندن Sense-amplifier ، سطح شارژ موجود در خازن را اندازه گیری می نماید. در صورتیکه سطح فوق بیش از پنجاه درصد باشد مقدار "یک" خوانده شده و در غیراینصورت مقدار "صفر" خوانده خواهد شد. مدت زمان انجام عملیات فوق بسیار کوتاه بوده و بر حسب نانوثانیه ( یک میلیاردم ثانیه ) اندازه گیری می گردد. تراشه حافظه ای که دارای سرعت 70 نانوثانیه است ، 70 نانو ثانیه طول خواهد به منظور تا عملیات خواندن و بازنویسی هر سلول را انجام دهد.
سلول های حافظه در صورتیکه از روش هائی بمنظور اخذ اطلاعات موجود در سلول ها استفاده ننمایند، بتنهائی فاقد ارزش خواهند بود. بنابراین لازم است سلول های حافظه دارای یک زیرساخت کامل حمایتی از مدارات خاص دیگر باشند.مدارات فوق عملیات زیر را انجام خواهند داد :
ü مشخص نمودن هر سطر و ستون (انتخاب آدرس سطر و انتخاب آدرس ستون )
ü نگهداری وضعیت بازخوانی و باز نویسی داده ها ( شمارنده )
ü خواندن و برگرداندن سیگنال از یک سلول ( Sense amplifier )
ü اعلام خبر به یک سلول که می بایست شارژ گردد و یا ضرورتی به شارژ وجود ندارد ( Write enable )
سایر عملیات مربوط به "کنترل کننده حافظه" شامل مواردی نظیر : مشخص نمودن نوع سرعت ، میزان حافظه و بررسی خطاء است .
حافظه های SRAM دارای یک تکنولوژی کاملا" متفاوت می باشند. در این نوع از حافظه ها از فلیپ فلاپ برای ذخیره سازی هر بیت حافظه استفاده می گردد. یک فلیپ فلاپ برای یک سلول حافظه، از چهار تا شش ترانزیستور استفاده می کند . حافظه های SRAM نیازمند بازخوانی / بازنویسی اطلاعات نخواهند بود، بنابراین سرعت این نوع از حافظه ها بمراتب از حافظه های DRAM بیشتر است .با توجه به اینکه حافظه های SRAM از بخش های متعددی تشکیل می گردد، فضای استفاده شده آنها بر روی یک تراشه بمراتب بیشتر از یک سلول حافظه از نوع DRAM خواهد بود. در چنین مواردی میزان حافظه بر روی یک تراشه کاهش پیدا کرده و همین امر می تواند باعث افزایش قیمت این نوع از حافظه ها گردد. بنابراین حافظه های SRAM سریع و گران و حافظه های DRAM ارزان و کند می باشند . با توجه به موضوع فوق ، از حافظه های SRAM بمنظور افزایش سرعت پردازنده ( استفاده از Cache ) و از حافظه های DRAM برای فضای حافظه RAM در کامپیوتر استفاده می گردد.
روش کار RAM
به این وسیله از انجایی كه دستیابی به سلول های حافظه آن بلافاصله قابل دسترسی هست random access میگویند نقطه مقابل RAM را Serial Access Memory یا SAM مینامند همانطور كه از نامش پیداست دیتاها را بصورت سریال مانند نوار كاست نگهداری می كند . در SAM اگر دیتایی در دسترس نباشد كلیه دیتاها چك میشوند تا به دیتای مورد نظر برسد . كاربرد SAM در حافظه بصورت بافر بیشتر مورد استفاده است . اما در RAM در هر لحظه ای كه بخواهید می توانید به دیتای مورد نظر دسترسی داشته باشید . در این مقاله سعی میكنم تمامی چیزهایی كه لازمست تا بدانید RAM چیست و چه می كند را توضیح می دهم . یك چیپ حافظه تقریبا شبیه به میكروپروسسور همان IC یا Integrated Circuit هست در این مدارات مجتمع میلیون ها ترانزیستور و خازن قرار دارد . در تقریبا تمامی كامپیوتر ها در حافظه dynamic random access memory یا DRAM ترانزیستور و خازن مجموعا با هم یك سلول از حافظه را تشكیل می دهند كه نمایش دهنده یك بیت از حافظه هستند . خازن یك بیت از حافظه را نگهداری می كند یا صفر یا یك . در مقابل ترانزیستور بصورت سوئیچی عمل می كند كه وظیفه كنترل مدارات را روی چیپ حافظه دارد كه ایا خازن را بخواند یا اینكه موقعیت را برای نخواندن ان و تغییر موضع ایجاد كند .
خازن را می توانید مثل سطلی در نظر بگیرید كه الكترون ها در ان ذخیره میشوند . برای ذخیره كردن 1 در سلول حافظه این سطل پر از الكترون می شود و برای 0 شدن خالی از الكترون می شود . مشكلی كه این خازنها دارند اینستكه پس از مرور زمان نشتی میكنند و گرایش به خالی شدن دارند . این اتفاقات در كمتر از میلی ثانیه اتفاق می افتد . بنابراین برای عملكرد درست حافظه پویا یا حتی CPU كنترل كننده حافظه باید انها را شارژكند تا مقدار 1 را در خودشان نگه دارند . یعنی كنترل كننده حافظه مدام حافظه را میخواند و دوباره انرا مینویسد ! این عملیات بصورت خودكار در یك ثانیه هزاران بار اتفاق می افتد .
برای تصور قضیه فوق در ذهنتان فرض كنید سطل آبی داریم كه از زیر سوراخ كوچكی دارد وقتی سطل را از اب پر میكنی و شیر اب را قطع كردی اب ظرف رو به اتمام میرود حالا برای اینكه ظرف همیشه پر از اب یا همان الكترون باشد یك شناور میگذاریم كه با پایین امدن ان اب دوباره به ظرف بریزد . عملیات refresh شدن رم برای رم های پویا هست و عملا برای همین قضیه به این نام نامیده شده اند . بنابراین رم های پویا مداوما باید در حال refresh شدن باشند درغیر اینصورت اطلاعات داخل خود را از دست می دهند . بنابراین این refresh شدن ها باعث می شود از سرعت این رم كم بشود . سلول های حافظه روی یك تخته سیلیكونی قرار دارند كه بصورت ارایه ای از ستون ها و سطر ها هست به ستون ها bitline و به سطرها wordline میگویند . محل تقاطع این دو محدوده شناسایی ادرس های سلول حافظه می باشد .
DRAM ها مداوم ستونهایشان را شارژ می كنند تا ترانزیستور های خود را بصورت فعال نگهدارند . وقتی قرار باشد كه مقدار یك را به خازن اختصاص دهد آنرا شارژ می كند اما وقتی می خواهد ان مقدار را بخواند كه آیا مقدار یك را دارد یا نه یك آمپلی فایر حساس مشخص می كند كه آیا خازن ظرفیتش از الكترون باندازه بیش از 50% هست یا خیر اگر هست مقدار یك دارد وگرنه باید مقدار یك به آن داده می شود . تحلیل عملكرد DRAM تا همین جا بماند بنابراین یادتان باشد كه خازن ها به تنهایی نمی توانند كاری كنند بلكه RAS و CAS برای آدرس دهی خازنها لازمند . یك كنتور برای انكه لحظات رفرش شدن را بشمارد . یك امپلی فایر حساس برای خواندن مقدار خازن و اینكه ایا خازن قابل نوشتن هست یا خیر .
Static RAM یا SRAM از تكنولوژی متفاوتی استفاده می كند . در رم از نوع ایستا نوعی flip-flop وجود دارد كه هر بیت از حافظه را نگهداری می كند . یك فلیپ فلاپ برای حافظه چهار تا شش ترانزیستور سیم كشی شده به هم دارد اما دیگر نیازی به تازه شدن و refresh شدن ندارند . و این همان نقطه ای است كه باعث می شود رم ایستا از رم پویا پیشی بگیرد . به هر حال از انجایی كه بخش های بیشتری نسبت به رم پویا در رم ایستا داریم بنابراین سلول های حافظه فضای بیشتری نسبت به رم پویا اشغال میكنند . بنابراین شما روی چیپ حافظه از حافظه كمتری برخوردار میشوید كه باعث می شود این نوع حافظه گران شود . بنابراین رم ایستا سرعت بیشتری دارد اما گرانتر است اما رم پویا سرعت كمتری دارد در عوض ارزان تر است . لذا رم ایستا برای كش CPU بهتر است و رم پویا برای حافظه های بزرگتر پركاربرد تر است . چیپ های حافظه امروزه بصورت كارتهایی كه ماژول مینامیم هستند حتما شده كه روی این حافظه ها اعدادی مثل 8*32 یا 4*16 را دیده باشید این اعداد تعداد چیپهای موجود در ان چیپ را نمایش می دهند و اینكه هر اما اینكه چه نوع رمی بر روی چه نوع پایه ای قرار بگیرد نیز نكته ایست كه نباید از ان به این سادگی رد شد . در مقالات قبلی درمورد نحوه اتصال رم با مادربرد توضیحاتی داده ام . اما نكاتی را باز هم یادآور می شوم :
SIMM single in-line memory module این برد از حافظه از 30 پین برای اتصال با ابعاد 9*2 سانتیمتر دارد در اكثر كامپیوتر ها SIMM ها را باید بصورت جفت نصب كنید علاوه بران میزان حافظه نیز در این جفت باید یكی باشد این بان دلیل است كه پهنای باند ارتباطی باس مادربرد شما بیش از یك SIMM می باشد . یعنی برای انكه شما از 16 مگابایت رم بهره مند شوید باید دو رم 8 مگابایتی نصب كنید .
كه هر SIMM بفرض می تواند 8 بیت دیتا منتقل كند . در حالیكه باس سیستم می تواند 16 مگابایت منتقل كند . SIMM های اخیر در ابعاد 11*2.5 سانتیمتر هستند كه از 72 پین برای اتصال استفاده میكنند كه این پینها برای افزایش پهنای باند است كه تا بیش از 256 مگابایت رم هم می توان برانها نصب كرد .
اما همانطور كه میدانید SIMM ها قدیمی شده و تكنولوژی جدید بنام Dual in-line Memory Module یا DIMM وجود دارد . كه دارای 164 یا 184 پین هستند با ابعاد تقریبا 14*2.5 سانتیمتر DIMM ها می توانند از 8 مگابایت تا 1 گیگابایت گنجایش برای رم داشته باشند و دیگر نیازی به اینكه بصورت جفت قرار بگیرند ندارند .
ماژول های حافظه
تراشه های حافظه در کامییوترهای شخصی در آغاز از یک پیکربندی مبتنی بر Pin با نام (DIP(Dual line Package استفاده می کردند. این پیکربندی مبتنی بر پین، می توانست لحیم کاری درون حفره هائی برروی برداصلی کامپیوتر و یا اتصال به یک سوکت بوده که خود به برد اصلی لحیم شده است .همزمان با افزایش حافظه ، تعداد تراشه های مورد نیاز، فضای زیادی از برد اصلی را اشغال می کردند.از روش فوق تا زمانیکه میزان حافظه حداکثر دو مگابایت بود ، استقاده می گردید.
راه حل مشکل فوق، استقرار تراشه های حافظه بهمراه تمام عناصر و اجزای حمایتی در یک برد مدار چاپی مجزا (Printed circut Board ) بود. برد فوق در ادامه با استفاده از یک نوع خاص از کانکنور ( بانک حافظه ) به برد اصلی متصل می گردید. این نوع تراشه ها اغلب از یک پیکربندی pin با نام Small Outline J-lead ) soj ) استفاده می کردند . برخی از تولیدکنندگان دیگر که تعداد آنها اندک است از پیکربندی دیگری با نام Thin Small Outline Package )tsop ) استفاده می نمایند. تفاوت اساسی بین این نوع پین های جدید و پیکربندی DIP اولیه در این است که تراشه های SOJ و TSOR بصورت surface-mounted در PCB هستند. به عبارت دیگر پین ها مستقیما" به سطح برد لحیم خواهند شد . ( نه داخل حفره ها و یا سوکت ) .
تراشه ها ی حافظه از طریق کارت هائی که " ماژول " نامیده می شوند قابل دستیابی و استفاده می باشند.. شاید تاکنون با مشخصات یک سیستم که میزان حافظه خود را بصورت 32 * 8 , یا 16 * 4 اعلام می نماید ، برخورده کرده باشید.اعداد فوق تعداد تراشه ها ضربدر ظرفیت هر یک از تراشه ها را که بر حسب مگابیت اندازه گیری می گردند، نشان می دهد. بمنظور محاسبه ظرفیت ، می توان با تقسیم نمودن آن بر هشت میزان مگابایت را بر روی هر ماژول مشخص کرد.مثلا" یک ماژول 32 * 4 ، بدین معنی است که ماژول دارای چهار تراشه 32 مگابیتی است .با ضرب 4 در 32 عدد 128 ( مگابیت) بدست می آید . اگر عدد فوق را بر هشت تقسیم نمائیم به ظرفیت 16 مگابایت خواهیم رسید.
نوع برد و کانکتور استفاده شده در حافظه های RAM ، طی پنج سال اخیر تفاوت کرده است . نمونه های اولیه اغلب بصورت اختصاصی تولید می گردیدند . تولید کنندگان متفاوت کامپیوتر بردهای حافظه را بگونه ای طراحی می کردند که صرفا" امکان استفاده از آنان در سیستم های خاصی وجود داشت . در ادامه (SIMM (Single in-line memory مطرح گردید. این نوع از بردهای حافظه از 30 پین کانکتور استفاده کرده و طول آن حدود 3/5 اینچ و عرض آن یک اینچ بود ( یازده سانتیمتر در 2/5 سانتیمتر ) .در اغلب کامپیوترها می بایست بردهای SIMM بصورت زوج هائی که دارای ظرفیت و سرعت یکسان باشند، استفاده گردد. علت این است که پهنای گذرگاه داده بیشتر از یک SIMM است . مثلا" از دو SIMM هشت مگابایتی برای داشتن 16 مگابایت حافظه بر روی سیستم استفاده می گردد. هر SIMM قادر به ارسال هشت بیت داده در هر لحظه خواهد بود با توجه به این موضوع که گذرگاه داده شانزده بیتی است از نصف پهنای باند استفاده شده و این امر منطقی بنظر نمی آید.در ادامه بردهای SIMM بزرگتر شده و دارای ابعاد 25 / 4 * 1 شدند( 11 سانتیمتر در 2/5 سانتیمتر ) و از 72 پین برای افزایش پهنای باند و امکان افزایش حافظه تا میزان 256 مگابایت بدست آمد.
بموازات افزایش سرعت و ظرفیت پهنای باند پردازنده ها، تولیدکنندگان از استاندارد جدید دیگری با نام dual in-line memory module)DIMM ) استفاده کردند.این نوع بردهای حافظه دارای 168 پین و ابعاد 1 * 5/4 اینچ ( تقریبا" 14 سانتیمتر در 2/5 سانتیمتر ) بودند.ظرفیت بردهای فوق در هر ماژول از هشت تا 128 مگابایت را شامل و می توان آنها را بصورت تک ( زوج الزامی نیست ) استفاده کرد. اغلب ماژول های حافظه با 3/3 ولت کار میکنند. در سیستم های مکینتاش از 5 ولت استفاده می نمایند. یک استاندارد جدید دیگر با نام Rambus in-line memory module ، RIMM از نظر اندازه و پین با DIMM قابل مقایسه است ولی بردهای فوق ، از یک نوع خاص گذرگاه داده حافظه برای افزایش سرعت استفاده می نمایند.
اغلب بردهای حافظه در کامپیوترهای دستی (notebook ) از ماژول های حافظه کاملا" اختصاصی استفاده می نمایند ولی برخی از تولیدکنندگان حافظه از استاندارد small outline dual in-line memory module) SODIMM استفاده می نمایند. بردهای حافظه SODIMM دارای ابعاد 1* 2 اینچ ( 5 سانتیمنتر در 5 /2 سانتیمنتر ) بوده و از 144 پین استفاده می نمایند. ظرفیت این نوع بردها ی حافظه در هر ماژول از 16 مگابایت تا 256 مگابایت می تواند باشد.
بررسی خطاء
اکثر حافظه هائی که امروزه در کامپیوتر استفاده می گردند دارای ضریب اعتماد بالائی می باشند.در اکثر سیستم ها ،" کنترل کننده حافظه " درزمان روشن کردن سیستم عملیات بررسی صحت عملکرد حافظه را انجام می دهد. تراشه های حافظه با استفاده از روشی با نام Parity ، عملیات بررسی خطاء را انحام می دهند. تراشه های Parity دارای یک بیت اضافه برای هشت بیت داده می باشند.روشی که Parity بر اساس آن کار می کند بسیار ساده است . در ابتداParity زوج بررسی می گردد. زمانیکه هشت بیت ( یک بایت) داده ئی را دریافت می دارند، تراشه تعداد یک های موجود در آن را محاسبه می نماید.در صورتیکه تعداد یک های موجود فرد باشد مقدار بیت Parity یک خواهد شد. در صورتیکه تعداد یک های موجود زوج باشد مقدار بیت parity صفر خواهد شد. زمانیکه داده از بیت های مورد نظر خوانده می شود ، مجددا" تعداد یک های موجود محاسبه و با بیت parity مقایسه میگردد.درصورتیکه مجموع فرد و بیت Parity مقدار یک باشد داده مورد نظر درست بوده و برای پردازنده ارسال می گردد. اما در صورتیکه مجموع فرد بوده و بیت parity صفر باشد تراشه متوجه بروز یک خطاء در بیت ها شده و داده مورد نظر کنار گذاشته می شود. parity فرد نیز به همین روش کار می کند در روش فوق زمانی بیت parity یک خواهد شد که تعداد یک های موجود در بایت زوج باشد.
مسئله مهم در رابطه با Parity عدم تصحیح خطاء پس از تشخیص است . در صورتیکه یک بایت از داده ها با بیت Parity خود مطابقت ننماید داده دور انداخته شده سیستم مجددا" سعی خود را انجام خواهد داد. کامپیوترها نیازمند یک سطح بالاتربرای برخورد با خطاء می باشند.برخی از سیستم ها از روشی با نام به error correction code)ECC ) استفاده می نمایند. در روش فوق از بیت های اضافه برای کنترل داده در هر یک از بایت ها استفاده می گردد. اختلاف روش فوق با روش Parity در این است که از چندین بیت برای بررسی خطاء استفاده می گردد. ( تعداد بیت های استفاده شده بستگی به پهنای گذرگاه دارد ) حافظه های مبتنی بر روش فوق با استفاده از الگوریتم مورد نظر نه تنها قادر به تشخیص خطا بوده بلکه امکان تصحیح خطاهای بوجود آمده نیز فراهم می گردد. ECCهمچنین قادر به تشخیص خطاها در مواردی است که یک یا چندین بیت در یک بایت با مشکل مواجه گردند.
انواح حافظه RAM
Static random access memory)SRAM ) . این نوع حافظه ها از چندین ترانزیستور ( چهار تا شش ) برای هر سلول حافظه استفاده می نمایند. برای هر سلول از خازن استفاده نمی گردد. این نوع حافظه در ابتدا بمنظور cache استفاده می شدند.
Dynamic random access memory)DRAM ) . در این نوع حافظه ها برای سلول های حافظه از یک زوج ترانزیستورو خازن استفاده می گردد .
Fast page mode dynamic random access memory)FPM DRAM ) . شکل اولیه ای از حافظه های DRAM می باشند.در تراشه ای فوق تا زمان تکمیل فرآیند استقرار یک بیت داده توسط سطر و ستون مورد نظر، می بایست منتظر و در ادامه بیت خوانده خواهد شد.( قبل از اینکه عملیات مربوط به بیت بعدی آغاز گردد) .حداکثر سرعت ارسال داده به L2 cache معادل 176 مگابایت در هر ثانیه است .
Extended data-out dynamic random access memory)EDO DRAM ) . این نوع حافظه ها در انتظار تکمیل و اتمام پردازش های لازم برای اولین بیت نشده و عملیات مورد نظر خود را در رابطه با بیت بعد بلافاصله آغاز خواهند کرد. پس از اینکه آدرس اولین بیت مشخص گردید EDO DRAM عملیات مربوط به جستجو برای بیت بعدی را آغاز خواهد کرد. سرعت عملیات فوق پنج برابر سریعتر نسبت به حافظه های FPM است . حداکثر سرعت ارسال داده به L2 cache معادل 176 مگابایت در هر ثانیه است .
Synchronous dynamic random access memory)SDRM ) از ویژگی "حالت پیوسته " بمنظور افزایش و بهبود کارائی استفاده می نماید .بدین منظور زمانیکه سطر شامل داده مورد نظر باشد ، بسرعت در بین ستون ها حرکت و بلافاصله پس از تامین داده ،آن را خواهد خواند. SDRAM دارای سرعتی معادل پنج برابر سرعت حافظه های EDO بوده و امروزه در اکثر کامپیوترها استفاده می گردد.حداکثر سرعت ارسال داده به L2 cache معادل 528 مگابایت در ثانیه است .
Rambus dynamic random access memory )RDRAM ) یک رویکرد کاملا" جدید نسبت به معماری قبلی DRAM است. این نوع حافظه ها از Rambus in-line memory module)RIMM ) استفاده کرده که از لحاظ اندازه و پیکربندی مشابه یک DIMM استاندارد است. وجه تمایز این نوع حافظه ها استفاده از یک گذرگاه داده با سرعت بالا با نام "کانال Rambus " است . تراشه های حافظه RDRAM بصورت موازی کار کرده تا بتوانند به سرعت 800 مگاهرتز دست پیدا نمایند.
بردهایی که از RDRAM استفاده می نمایند دارای Chip set اینتل 850 یا 850E می باشند. این نوع از حافظه ها ( RDRAM ) می بایست بمنظور افزایش کارآئی ، بصورت زوج بر روی مادربرد استفاده شده و اسلات های خالی توسط CRIMM تکمیل (پر) گردند.حافظه ها ی RDRAM ، قادر به تامین پهنای باند بالای مورد نیاز برنامه هائی با حجم عملیات سنگین در ارتباط با حافظه، می باشند.( برنامه های ویرایش فیلم های ویدیوئی و یا بازیهای سه بعدی گرافیکی) قیمت حافظه های RDRAM نسبت به حافظه های DDR دو برابر است. حافظه های RDRAM در حال حاضر با دو سرعت متفاوت ارائه می گردند : PC800 و PC1066 در صورت انتخاب پردازنده ای از نوع P4 که بر روی BUS با سرعت 533 مگاهرتز اجراء می گردد، سرعت بیشتر پردازنده معیار اصلی انتخاب قرار گیرد. در زمان انتخاب حافظه ، می بایست تعداد سوکت های DIMM و RIMM موجود بر روی مادربرد بهمراه حداکثر حافظه قابل نصب بر روی آن دقیقا بررسی گردد.
یك حافظه SDRAM با فركانس 100 مگاهرتز می تواند یك Signal را در یك واحد زمان انتقال دهد و نرخ ارسال اطلاعات آن 100 مگاهرتز خواهد.یك حافظه DDR با فركانس 100 مگاهرتز می تواند دو Signal از اطلاعات را در واحد زمان انتقال دهد و نرخ ارسال آن 100MHz x2 یا همان 200 مگاهرتز می باشد و یك حافظه DDR با فركانس 133 مگاهرتز كه نرخ ارسال آن معادل133MHz x2 یا همان 266 مگاهرتز خواهد بود.به طور علمی خطوط انتقال حافظه های DDR از نوع PC1600 با فركانس 100 مگاهرتز و PC2100 با فركانس 133 مگاهرتز و DDR از نوع PC2700 با فركانس 166 مگاهرتز كار خواهند كرد.
به طور كلی ماژول های حافظه DDR با نرخ ارسال 200MHz ، 266MHz ، 333MHz ایفای نقش می نمایند.حافظه های DDR باعث ایجاد نسل جدید كامپیوترهای پر قدرت در سطوح مختلف از قبیل Desktop ،Workstation ،Server ،Notebook و Sub_Compact Computer گردیده اند.همچنین این تكنولوژی در صنعت Data Communication و محصولات شبكه از قبیل Router و Switch نیز نقش بسزایی ایفا می كند و باعث تغییر و تحول در ساختار درونی این رده دستگاهها گردیده است.
در این راستا شركت ها و كمپانیهای صاحب نام در تكنولوژی كامپیوتر و كمپانی های سازنده Chipset از قبیل Intel ،VIA ،AMD ،Acer Labs (ALI ) ،SIS ، nVIDIA و ATI طی یك توافق پشتیبانی از حافظه های DDR در سطوح مختلف محصولات جدید خود را اعلام نموده اند.
Credit card memory یک نمونه کاملا" اختصاصی از تولیدکنندگان خاص بوده و شامل ماژول های DRAM بوده که دریک نوع خاص اسلات ، در کامپیوترهای noteBook استفاده می گردد .
PCMCIA memory card .نوع دیگر از حافظه شامل ماژول های DRAM بوده که در notebook استفاده میشود.
FlashRam نوع خاصی از حافظه با ظرفیت کم برای استفاده در دستگاههائی نظیر تلویزیون، VCR بوده و از آن به منظور نگهداری اطلاعات خاص مربوط به هر دستگاه استفاده می گردد. زمانیکه این نوع دستگاهها خاموش باشند همچنان به میزان اندکی برق مصرف خواهند کرد. در کامپیوتر نیز از این نوع حافظه ها برای نگهداری اطلاعاتی در رابطه با تنظیمات هارد دیسک و ... استفاده می گردد.
VideoRam)VRAM ) یک نوع خاص از حافظه های RAM بوده که برای موارد خاص نظیر : آداپتورهای ویدئو و یا شتا ب دهندگان سه بعدی استفاده می شود. به این نوع از حافظه ها multiport dynamic random access memory) MPDRAM ) نیز گفته می شود.علت نامگذاری فوق بدین دلیل است که این نوع از حافظه ها دارای امکان دستیابی به اطلاعات، بصورت تصادفی و سریال می باشند . VRAM بر روی کارت گرافیک قرار داشته و دارای فرمت های متفاوتی است. میزان حافظه فوق به عوامل متفاوتی نظیر : " وضوح تصویر " و " وضعیت رنگها" بستگی دارد.
به چه میزان حافظه نیاز است ؟
حافظه RAM یکی از مهمترین فاکتورهای موجود در زمینه ارتقاء کارآئی یک کامپیوتر است . افزایش حافظه بر روی یک کامپیوتر با توجه به نوع استفاده می تواند در مقاطع زمانی متفاوتی انجام گیرد. در صورتیکه از سیستم های عامل ویندوز 95 و یا 98 استفاده می گردد حداقل به 32 مگابایت حافظه نیاز خواهد بود. ( 64 مگابایت توصیه می گردد) .اگر از سیستم عامل ویندوز 2000 استفاده می گردد حداقل به 64 مگابایت حافظه نیاز خواهد بود.( 128 مگابایت توصیه می گردد) .سیستم عامل لینوکس صرفا" به 4 مگابایت حافظه نیاز دارد. در صورتیکه از سیستم عامل اپل استفاده می گردد به 16 مگابایت حافظه نیاز خواهد بود.( 64 مگابایت توصیه می گردد). میزان حافظه اشاره شده برای هر یک از سیستم های فوق بر اساس کاربردهای معمولی ارائه شده است . دستیابی به اینترنت ، استفاده از برنامه های کاربردی خاص و سرگرم کننده ، نرم افزارهای خاص طراحی، انیمیشن سه بعدی و... مستلزم استفاده از حافظه بمراتب بیشتری خواهد بود .
مقایسه ظاهری ماژول های DDR یا SDRAM
الف) بانك های DIMM از نوع DDR از نظر اندازه كاملا یكسان با SDRAM می باشد و از نظر ساختار متفاوت می باشد.
ب) بانك های DDR DIMM از نوع 184 پین و بانكهای SDRAM DIMM از نوع 168 پین می باشد.
پ) ماژول های DDR بدلیل اختلاف در ساختار DIMM قابل بر روی SDRAM DIMM نمی باشد.
حافظه های DDR در سال 2003 به عنوان تنها حافظه استاندارد شده نوسط كمپانیهای تولید كننده مادربورد و سایر ادوات كامپیوتر كه به نوعی از حافظه استفاده می كنند مورد استفاده قرار گرفته است.
پهنای باند در حافظه های DDR
روش زیر طریقه محاسبه پهنای باند حافظه های DDR را نشان میدهد.
Peak Band Width=(Memory Bus Width) x (Data Rate)
Data Rate = (Memory Bus Speed) x (Operations/Clock cycle)
هر ماژول DIMM به صورت 64 بیت یا 8 بایت می باشد.پس پهنای یاند PC2100 DIMM به صورت زیر محاسبه می شود:
8byte) x (266 MHz) = 2,128 MB/sec )
كه به طور خلاصه 2.1 GB/sec می باشد.
پهنای باند PC1600 DIMM به صورت زیر می باشد:
8byte) x (200MHz) = 1.600 MB/sec = 1.6 GB/sec )
پهنای باند PC2700 به صورت زیر می باشد:
8byte) x (333MHz) = 2.664 MB/sec = 2.7 GB/sec )
گام بعدی DDR برای قابلیت بیشتر DDR2 SDRAM
اینك پیشرفت دیگری در DDR یا DOUBLE DATA RATE MEMORY حاصل شده است.MICRON فركانس DDR266 SDRAM را در تكنولوژی 2 برابر كرده است DDR2 533 SDRAM جدید MICRON همچنین دارای پهنای باند وسیعتر می باشد بدون این كه توان مصرفی سیستم زیاد شده باشد،در حقیقت SSTL_18 I/O و 1.8 VOLT VDD آن از نیاز توان مصرفی كاسته است.
DDR2 SDRAM مایكرون با 533 مگابایت در ثانیه سرعت انتقال داده ها به طراحان قابلیت استفاده از تمام ابزاری كه برای تولید نسل جدید DESKTOP ها ،LAPTOP ها و SERVER ها داده است در این محصولات قابلیت بالا و توان مصرفی پایین مد نظر می باشد.
استفاده از این تكنولوژی جدید با سرعت بالا در حقیقت استفاده از یك حافظه سیستم 64 بیتی می باشد كه می تواند 4300 مگابایت در ثانیه داده ها را پردازش نماید كه این 1/5 برابر سریعتر از DDR 533 استاندارد می باشد.
Features • VDD = 1.8V, VDDQ = 1.8V • I/O = SSTL_18 • 200 MHz and 266 MHz clock frequencies • 400 Mb/s/pin and 533 Mb/s/pin data rates • 3,200 MB/s and 4,300 MB/s for 64-bit systems • 4n data prefetch • 4 banks for 256Mb and 512Mb devices • 8 banks for 1Gb and 2Gb devices • Burst length of 4 or 8 • WRITE latency = READ latency - 1 clock • Differential data strobe option • Duplicate RDQS data strobe option • CAS latency: 3, 4, and 5 clocks • Posted CAS# additive latency: 0, 1, 2, 3, and 4 clocks • On-die termination (ODT) • Off-chip driver (OCD) output impedance calibration option • FBGA packaging
DDR3 (Double Data Rate 3 Synchronous Dynamic Random Access Memory )
حافظه ی جدیدی از سری حافظه های SDRAM می باشد و جایگزین حافظه های DDR2 می شود که به تازگی مصرف زیادی پیدا کرده است .
سازندگان این حافظه قول دادند که DDR3 40 کمتر از حافظه های DDR2 که الان در بازار می باشد مصرف برق داشته باشد و قرار است این حافظه با تکنولوژی 90 نانومتری ساخته شود که باعث می شود مصرف پایین تز داشته باشد ( DDR 2.5 ولت و در DDR2 1.8 ولت و در DDR3 به 1.5 ولت رسیده است . ) و با استفاده از دو ردیف ترانزیستور مشکل حال حاضر را حل کرده است.
پهنای prefetch buffer هم در این حافظه ها به 8 بین رسیده است که در DDR2 4 بیت و این پهنای در DDR 2 بین می باشد . prefetch buffer نهان گاهی است در حافظه های امروزی برای ذخیره کردن و نگه داشتن اطلاعاتی که به آن ها نیاز نیست نگه داری شود . که این باعث سرعت بیشتر جواب گویی رم و بهتر کار کردن آن در پردازش این اطلاعات است.
کار موثری که این حافظه در انتقال اطلاعات انجام می دهد سرعتی برابر 400-800 مگاهرتز می باشد که در حافظه های DDR2 این سرعت ساعت برابر 200- 533 مگاهرتز و در حافظه های DDR برابر 100-300 مگاهرتز این سرعت ساعت بود . همچنین پهنای باندی که پردازنده های DDR3 برابر با 800-1600 مگارهرتز شده است عمل بسیاری مهمی در کارهای گرافیکی می باشد به دلیل اینکه این پهنای باند برای پردازش بین فریم ها ضروری است .
اولین نمونه DDR3 در اولایل 2005 آمد ولی در اواسط سال 2006 بود . در این هنگام اینتل بلافاصله اعلام کرد که اینتل در اواخر سال 2007 پردازنده ها و سیستم های پشتیبان کننده ی این حافظه را عرضه خواهد کرد . در این راستا AMD هم در برنامه ی خود در DDR3 وسیستم های مورد پشتیبانی آن را در 2008 عرضه می کند .
GDDR3 هم حافظه ی دیگری می باشد که از نظر اسمی بسیار شبیه DDR3 می باشد ولی این فقط در اسم است !!! این حافظه را سال ها می باشد مورد استفاده دو شرکت بزرگ Nvidia و ATI می باشد . و سیستم اصلی کنسول XboX 360 هم از این همین حافظه استفاده می کند . این حافظه ی اشتباها به DDR3 ربط داده شده است در فرق این دو هم مقاله ای دوست عزیزم تهیه کرده است .
تكنولوژی Dual Channel
افزایش سرعت وبهرهگیری از حداكثر نوان پردازنده ها،یكی از مهمترین اهداف طراحان سیستم های كامپیوتری است و تكنولوژی های DDR و Dual Channel یكی از راه های افزایش سرعت می باشدن.
FSB مخفف Front Side Bus است.منظور از FSB همون گذرگاهی است كه CPU از طریق آن با پل شمالی مادربورد ارتباط برقرار می كند.و همچنین نمایانگرسرعت انتقال اطلاعات بین پردازنده و چیپ اصلی مادربورد یعنی MCH یاMemory Controler Hub است. تا پیش از سال 1995 وآمدن پنتیوم پرو ها،Host Bus این وظیفه را بر عهده داشت و بعد از اون FSB پا به عرصه گذاشت.فركانس FSB از نظر كارایی سیستم بسیار دارای اهمیت است،چون تنها راهی ایست كه پردازنده از طریق آن داده رو از حافظه و دستگاهای دیگر كسب می كند و در واقع می توان گفت كه FSB پایه اصلی سرعت مادربورده چون تعیین كننده سرعت ارتباط پردازنده با گذر گاهای PCI و AGP نیز می باشد.
در حالت FSB800 مگاهرتز سرعت انتقال اطلاعات در حدود 6/4 گیگابایت در ثانیه است و حداكثر سرعت انتقال در رم های DDR400 در حدود 3/2 مگابایت در ثانیه است با توجه به این می توان گفت كه نیمی از پهنای باند پردازنده و MCH تقریبا بلا استفاده می ماند .
با استفاده از این تكنولوژی به جای استفاده از یك مسیر انتقال اطلاعات،بین رم و كنترلر حافظه،از 2 مسیر استفاده می شود.كه با توجه به پهنای باند هر یك از كانال ها(3/2 Gb/s )مجموع نرخ انتقال اطلاعات در هر 2 تا كانال با نرخ انتقال اطلاعات بین CPU و MCH برابر می شود.
چند نكته هم در این باب:
1- رم هایی كه در این تكنولوژی استفاده می شوند تفاوتی با رم های معمولیDDR ندارند.
2- تعداد رم های نصب شده بروی مادربورد حتما باید زوج باشند.
3- رم ها حتما میباست با در اسلات های 1 و 3 و یا در اسلات های 2 و 4 به صورت جفت نصب شوند .اصولا برای راحتی كار این بانك های رم بروی مادربورد با 2 رنگ مجزا مشخص میشوند .
4- رم هایی كه به صورت جفت نصب میشوند هر 2 باید از نظر فركانس و ظرفیت یكسان باشند،مثلا اگر یكی از رم ها 256 و DDR333 است دیگری هم باید مشابه هم باشند.
5- نیازی نیست كه رم ها در اسلات های 1و3 با رم های اسلات 2و4 مشابه باشند.
حافظه ROM
حافظه ROM یک نوع مدار مجتمع (IC ) است که در زمان ساخت داده هائی در آن ذخیره می گردد. این نوع حافظه ها علاوه بر استفاده در کامپیوترهای شخصی در سایر دستگاههای الکترونیکی نیز به خدمت گرفته می شوند. حافظه های ROM از لحاظ تکنولوژی استفاده شده، دارای انواع متفاوتی است :
PROM
EPROM
EEPROM
هر یک از مدل های فوق دارای ویژگی های منحصربفرد خود می باشند . حافظه های فوق در موارد زیردارای ویژگی مشابه می باشند:
داده های ذخیره شده در این نوع تراشته ها " غیر فرار " بوده و پس از خاموش شدن منبع تامین انرژی اطلاعات خود را از دست نمی دهند.
داده های ذخیره شده در این نوع از حافظه ها غیر قابل تغییر بوده و یا اعمال تغییرات در آنها مستلزم انجام عملیات خاصی است.
مبانی حافظه های ROM
حافظه ROM از تراشه هائی شامل شبکه ای از سطر و ستون تشکیل شده است(نظیر حافظه RAM ). هر سطر و ستون در یک نقظه یکدیگر را قطع می نمایند. تراشه های ROM دارای تفاوت اساسی با تراشه های RAM میباشند. حافظه RAM از " ترانزیستور " به منظور فعال و یا غیرفعال نمودن دستیابی به یک " خازن " در نقاط برخورد سطر و ستون ، استفاده می نمایند.در صورتیکه تراشه های ROM از یک " دیود" (Diode ) استفاده مینماید. در صورتیکه خطوط مربوطه "یک" باشند برای اتصال از دیود استفاده شده و اگر مقدار "صفر" باشد خطوط به یکدیگر متصل نخواهند شد. دیود، صرفا" امکان حرکت " جریان " را در یک جهت ایجاد کرده و دارای یک نفطه آستانه خاص است . این نقطه اصطلاحا" (Forward breakover ) نامیده می شود. نقطه فوق میزان جریان مورد نیاز برای عبور توسط دیود را مشخص می کند. در تراشه ای مبتنی بر سیلیکون نظیر پردازنده ها و حافظه ، ولتاژ Forward breakover تقریبا" معادل شش دهم ولت است .با بهره گیری از ویژگی منحصر بفرد دیود، یک تراشه ROM قادر به ارسال یک شارژ بالاتر از Forward breakover و پایین تر از ستون متناسب با سطر انتخابی ground شده در یک سلول خاص است .در صورتیکه دیود در سلول مورد نظر ارائه گردد، شارژ هدایت شده (از طریق Ground ) و با توجه به سیستم باینری ( صفر و یک )، سلول یک خوانده می شود ( مقدار آن 1 خواهد بود) در صورتیکه مقدار سلول صفر باشد در محل برخورد سطر و ستون دیودی وجود نداشته و شارژ در ستون ، به سطر مورد نظر منتقل نخواهد شد.
همانطور که اشاره گردید، تراشه ROM ، مستلزم برنامه نویسی وذخیره داده در زمان ساخت است . یک تراشه استاندارد ROM را نمی توان برنامه ریزی مجدد و اطلاعات جدیدی را در آن نوشت . در صورتیکه داده ها درست نبوده و یا مستلزم تغییر و یا ویرایش باشند، می بایست تراشه را دور انداخت و مجددا" از ابتدا عملیات برنامه ریزی یک تراشه جدید را انجام داد.فرآیند ایجاد تمپلیت اولیه برای تراشه های ROM دشوار است .اما مزیت حافظه ROM بر برخی معایب آن غلبه می نماید. زمانیکه تمپلیت تکمیل گردید تراشه آماده شده، می تواند بصورت انبوه و با قیمت ارزان به فروش رسد.این نوع از حافظه ها از برق ناچیزی استفاده کرده ، قابل اعتماد بوده و در رابطه با اغلب دستگاههای الکترونیکی کوچک، شامل تمامی دستورالعمل های لازم به منظور کنترل دستگاه مورد نظر خواهند بود.استفاده از این نوع تراشه ها در برخی از اسباب بازیها برای نواختن موسیقی، آواز و ... متداول است .
حافظه PROM
تولید تراشه های ROM مستلزم صرف وقت و هزینه بالائی است .بدین منظور اغلب تولید کنندگان ، نوع خاصی از این نوع حافظه ها را که PROM )Programmable Read-Only Memory ) نامیده می شوند ، تولید می کنند.این نوع از تراشه ها با محتویات خالی با قیمت مناسب عرضه شده و می تواند توسط هر شخص با استفاده از دستگاههای خاصی که Programmer نامیده می شوند ، برنامه ریزی گردند. ساختار این نوع از تراشه ها مشابه ROM بوده با این تفاوت که در محل برخورد هر سطر و ستون از یک فیوز( برای اتصال به یکدیگر) استفاده می گردد. یک شارژ که از طریق یک ستون ارسال می گردد از طریق فیوز به یک سلول پاس داده شده و بدین ترتیب به یک سطر Grounded که نماینگر مقدار "یک" است ، ارسال خواهد شد. با توجه به اینکه تمام سلول ها دارای یک فیوز می باشند، درحالت اولیه ( خالی )، یک تراشه PROM دارای مقدار اولیه " یک" است . به منظور تغییر مقدار یک سلول به صفر، از یک Programmer برای ارسال یک جریان خاص به سلول مورد نظر، استفاده می گردد.ولتاژ بالا، باعث قطع اتصال بین سطر و ستون (سوختن فیوز) خواهد کرد. فرآیند فوق را " Burning the PROM " می گویند. حافظه های PROM صرفا" یک بار قابل برنامه ریزی هستند. حافظه های فوق نسبت به RAM شکننده تر بوده و یک جریان حاصل از الکتریسیته ساکن، می تواند باعث سوخته شدن فیور در تراشه شده و مقدار یک را به صفر تغییر نماید. از طرف دیگر ( مزایا ) حافظه ای PROM دارای قیمت مناسب بوده و برای نمونه سازی داده برای یک ROM ، قبل از برنامه ریزی نهائی کارآئی مطلوبی دارند.
حافظه EPROM
استفاده کاربردی از حافظه های ROM و PROM با توجه به نیاز به اعمال تغییرات در آنها قابل تامل است ( ضرورت اعمال تغییرات و اصلاحات در این نوع حافظه ها می تواند به صرف هزینه بالائی منجر گردد)حافظه هایEPROM)Erasable programmable read-only memory ) پاسخی مناسب به نیاز های مطح شده است ( نیاز به اعمال تغییرات ) تراشه های EPROM را می توان چندین مرتبه باز نویسی کرد. پاک نمودن محتویات یک تراشه EPROM مشتلزم استفاده از دستگاه خاصی است که باعث ساطع کردن یک فرکانس خاص ماوراء بنفش باشد.. پیکربندی این نوع از حافظه ها مستلزم استفاده از یک Programmer از نوع EPROM است که یک ولتاژ را در یک سطح خاص ارائه نمایند ( با توجه به نوع EPROM استفاده شده ) این نوع حافظه ها ، نیز دارای شبکه ای مشتمل از سطر و ستون می باشند. در یک EPROM سلول موجود در نقظه برخورد سطر و ستون دارای دو ترانزیستور است .ترانزیستورهای فوق توسط یک لایه نازک اکسید از یکدیگر جدا شده اند. یکی از ترانزیستورها Floating Gate و دیگری Control Gate نامیده می شود. Floating gate صرفا" از طریق Control gate به سطر مرتبط است. مادامیکه لینک برقرارباشد سلول دارای مقدار یک خواهد بود. به منظور تغییر مقدار فوق به صفر به فرآیندی با نام Fowler-Nordheim tunneling نیاز خواهد بود .Tunneling به منظور تغییر محل الکترون های Floating gate استفاده می گردد.یک شارژ الکتریکی بین 10 تا 13 ولت به floating gate داده می شود.شارژ از ستون شروع و پس از ورود به floating gate در ground تخلیه خواهد گردید. شارژ فوق باعث می گردد که ترانزیستور floating gate مشابه یک "پخش کننده الکترون " رفتار نماید . الکترون های مازاد فشرده شده و در سمت دیگر لایه اکسید به دام افتاد و یک شارژ منفی را باعث می گردند. الکترون های شارژ شده منفی ، بعنوان یک صفحه عایق بین control gate و floating gate رفتار می نمایند.دستگاه خاصی با نام Cell sensor سطح شارژ پاس داده شده به floating gate را مونیتور خواهد کرد. در صورتیکه جریان گیت بیشتر از 50 درصد شارژ باشد در اینصورت مقدار "یک" را دارا خواهد بود.زمانیکه شارژ پاس داده شده از 50 درصد آستانه عدول نموده مقدار به "صفر" تغییر پیدا خواهد کرد.یک تراشه EPROM دارای گیت هائی است که تمام آنها باز بوده و هر سلول آن مقدار یک را دارا است.
به منظور باز نویسی یک EPROM می بایست در ابتدا محتویات آن پاک گردد. برای پاک نمودن می بایست یک سطح از انرژی زیاد را به منظور شکستن الکترون های منفی Floating gate استفاده کرد.در یک EPROM استاندارد ،عملیات فوق از طریق اشعه ماوراء بنفش با فرکانس 253/7 انحام می گردد.فرآیند حذف در EPROM انتخابی نبوده و تمام محتویات آن حذف خواهد شد. برای حذف یک EPROM می بایست آن را از محلی که نصب شده است جدا کرده و به مدت چند دقیقه زیر اشعه ماوراء بنفش دستگاه پاک کننده EPROM قرار داد.
حافظه های EEPROM و Flash Memory
با اینکه حافظه ای EPROM یک موفقیت مناسب نسبت به حافظه های PROM از بعد استفاده مجدد می باشند ولی کماکن نیازمند بکارگیری تجهیزات خاص و دنبال نمودن فرآیندهای خسته کننده به منظور حذف و نصب مجدد آنان در هر زمانی است که به یک شارژ نیاز باشد. در ضمن، فرآیند اعمال تغییرات در یک حافظه EPROM نمی تواند همزمان با نیاز و بصورت تصاعدی صورت پذیرد و در ابتدا می بایست تمام محتویات را پاک نمود.
حافظه های Electrically Erasable Programmable Read Only Memory)EEOPROM ) پاسخی مناسب به نیازهای موجود است . در حافظه های EEPROM تسهیلات زیر ارائه می گردد:
· برای بازنویسی تراشه نیاز به جدا نمودن تراشه از محل نصب شده نخواهد بود.
· برای تغییر بخشی از تراشه نیاز به پاک نمودن تمام محتویات نخواهد بود.
· اعمال تغییرات در این نوع تراشه ها مستلزم بکارگیری یک دستگاه اختصاصی نخواهد بود.
در عوض استفاده از اشعه ماوراء بنفش، می توان الکترون های هر سلول را با استفاده از یک برنامه محلی و بکمک یک میدان الکتریکی به وضعیت طبیعی برگرداند. عملیات فوق باعث حذف سلول های مورد نظر شده و می توان مجددا" آنها را بازنویسی نمود.تراشه های فوق در هر لحظه یک بایت را تغییر خواهند داد.فرآیند اعمال تغییرات در تراشه های فوق کند بوده و در مواردی که می بایست اطلاعات با سرعت تغییر یابند ، سرعت لازم را نداشته و دارای چالش های خاص خود می باشند.
تولیدکنندگان با ارائه Flash Memory که یک نوع خاص از حافظه های EEPROM می باشد به محدودیت اشاره شده پاسخ لازم را داده اند.در حافظه Falsh از مدارات از قبل پیش بینی شده در زمان طراحی ، به منظور حذف استفاده می گردد ( بکمک ایجاد یک میدان الکتریکی). در این حالت می توان تمام و یا بخش های خاصی از تراشه را که " بلاک " نامیده می شوند، را حذف کرد.این نوع حافظه نسبت به حافظه های EEPROM سریعتر است ، چون داده ها از طریق بلاک هائی که معمولا" 512 بایت می باشند ( به جای یک بایت در هر لحظه ) نوشته می گردند. شکل زیر حافظه BIOS را که نوع خاصی از حافظه ROM مدل Flash memory است ، نشان می دهد.
حافظه Cache
اگر تا کنون برای خود کامپیوتری تهیه کرده باشید ، واژه " Cache " برای شما آشنا خواهد بود. کامپیوترهای جدید دارای Cache از نوع L1 و L2 می باشند. شاید در هنگام خرید یک کامپیوتر از طرف دوستانتان توصیه هائی به شما شده باشد مثلا" : " سعی کن از تراشه های Celeron استفاده نکنی چون دارای Cache نمی باشند! "
Cache یک مفهوم کامپیوتری است که بر روی هر نوع کامپیوتر با یک شکل خاص وجود دارد. حافظه های Cache ، نرم افزارهای با قابلیت Cache هارد دیسک و صفحات Cache همه بنوعی از مفهوم Caching استفاده می نمایند. حافظه مجازی که توسط سیستم های عامل ارائه می گردد نیز از مفهوم فوق استفاده می نماید.
مبانی Caching
Caching یک تکنولوژی استفاده شده برای زیر سیستم های حافظه ، در کامپیوتر است . مهمترین هدف یک Cache افزایش سرعت و عملکرد کامپیوتر بدون تحمیل هزینه های اضافی برای تهیه سیستم است . با استفاده از Cache عملیات کاربران با سرعت بیشتری انجام خواهد شد.
کتابداری را در نظر بگیرید که در یک کتابخانه مسئول تحویل کتاب به متقاضیان است . فرض کنید در سیستم فوق ( درخواست و تحویل کتاب ) از مفهوم Cache استفاده نمی گردد. اولین متقاصی کتابی را درخواست مینماید( فرض شده است که متقاضی خود نمی تواند مستقیما" کتاب مورد نظر را از قفسه مربوطه بردارد) ، کتابدار، کتاب مورد نظر را از قفسه مربوطه پیدا و در ادامه آن را تحویل متقاضی می نماید. متقاضی پس از 90ساعاتی مراجعه و کتاب را تحویل می دهد. کتابدار، کتاب تحویلی را مجددا" در قفسه مربوطه قرار می دهد. پس از لحظاتی یک متقاضی دیگر مراجعه و همان کتاب قبلی را درخواست می نماید ، کتابدار مجددا" می بایست به بخش مربوطه در کتابخانه مراجعه و پس از بازیابی کتاب ، آن را در اختیار متقاضی دوم قرار دهد.همانگونه که ملاحظه می گردد ، کتابدار مکلف است برای تحویل هر کتاب ( ولو کتاب هائی که فرکانس استفاده از آنان توسط متقاضیان زیاد باشد ) به بخش مربوطه مراجعه و پس از یافتن کتاب آن را در اختیار متقاضیان قرار دهد. آیا روشی وجود دارد که با استناد به آن بتوان عملکرد و کارآئی کتابدار را بهبود بخشید ؟
در پاسخ به سوال فوق می توان با ایجاد یک سیستم Cache برای کتابدار ، کارآئی آن را افزایش داد. فرض کنید بخشی را با ظرفیت حداکثر ده کتاب در مجاورت ( نزدیکی ) کتابدار آماده نمائیم . کتاب هائی که توسط متقاضیان برگردانده می شود، در بخش فوق ذخیره خواهند شد. مثال فوق را با در نظر گرفتن سیستم Cache ایجاد شده برای کتابدار مجددا" دنبال می نمائیم . در ابتدای فعالیت روزانه ، بخش Cache خالی بوده و هنوز در آن کتابی قرار نگرفته است . اولین متفقاصی مراجعه و کتابی را درخواست می نماید . کتابدار می بایست به بخش مربوطه مراجعه و کتاب را از قفسه مربوطه براشته و در اختیار متقاضی قرار دهد. متقاضی پس از تحویل کتاب ، چند ساعت بعد مراجعه و کتاب را تجویل کتابدار خواهد داد. کتابدار، کتاب تحویلی را در بخش پیش بینی شده برای Cache قرار می دهد. لحظاتی بعد متقاضی دیگر مراجعه و درخواست همان کتاب را می نماید .کتابدار در ابتدا بخش مربوط به Cache را جستجو و در صورت یافتن کتاب ، آن را به متقاضی تحویل خواهد داد. در این حالت ضرورتی به مراجعه کتابدار به بخش و قفسه های مربوطه نخواهد بود. در روش فوق زمان تحویل کتاب به متقاضی بهبود چشمگیری پیدا خواهد کرد. در صورتیکه کتاب درخواستی توسط متقاضی در بخش Cache کتابخانه نباشد ، چه اتفاقی خواهد افتاد؟ در ابتدا مدت زمانی صرف خواهد شد که کتابدار به این اطمینان برسد که کتاب درخواستی در بخش Cache موجود نمی باشد ( جستجو) یکی از چالش های اصلی در رابطه با طراحی Cache به حداقل رساندن زمان جستجو در Cache است .سخت افزارهای جدید ، زمان فوق را به صفر نزدیک کرده اند. پس از حصول اطمینان از عدم وجود کتاب در بخش Cache ، کتابدار می بایست با مراجعه به بخش مربوطه آن را انتخاب و در ادامه در اختیار متقاضی قرار دهد.
با توجه به مثال فوق ، چندین نکته مهم در رابطه با Cache استنباط می گردد:
· تکنولوژی Cache ، استفاده از حافظه های سریع ولی کوچک ، به منظور افزایش سرعت یک حافظه کند ولی با حجم بالا است
· زمانیکه از Cache استفاده می گردد ، در ابتدا می بایست محتویات آن به منظور یافتن اطلاعات مورد نظر بررسی گردد. فرآیند فوق را Cache hit می گویند. در صورتیکه اطلاعات مورد نظر در Cache موجود نباشند (Cache miss ) ، کامپیوتر می بایست در انتظار تامین داده های خود از حافظه اصلی سیستم باشد ( حافظه ای کند ولی با حجم بالا )
· اندازه Cache محدود بوده وسعی می گردد که ظرفیت فوق حتی المقدور زیاد باشد ، ولی بهرحال اندازه آن نسبت به رسانه های ذخیره سازی دیگر بسیار کم است .
· این امکان وجود خواهد داشت که از چندین لایه Cache استفاده گردد.
Cache در کامپیوتر
کامپیوتر، ماشینی است که زمان انجام کارها توسط آن با واحدهای خیلی کوچک اندازه گیری می گردد.زمانیکه ریزپردازنده قصد دستیابی به حافظه اصلی را داشته باشد، می بایست مدت زمانی معادل 60 نانوثانیه را برای این کار در نظر بگیرد. سرعت فوق بسیار بالا است ولی سرعت ریزپردازنده بمراتب بیشتر است . ریزپردازنده قادر به داشتن سیکل هائی به اندازه دو نانوثانیه است . تفاوت سرعت بین پردازنده و حافظه کاملا" مشهود بوده و قطعا" رضایت پردازنده در این خصوص کسب نخواهد شد. پردازنده می بایست تاوان کند بودن حافظه را خود بپردازد . انتظار پردازنده و هرز رفتن زمان مفید وی کوچکترین تاوانی است که می بایست پردازنده پذیرای آن باشد.
به منظور حل مشکل فوق ، فرض کنید از یک نوع حاص حافظه، با ظرفیت کم ولی با سرعت بالا ( 30 نانوثانیه ) ، استفاده گردد . سرعت دستیابی به حافظه فوق دو مرتبه سریعتر نسبت به حافظه اصلی است .این نوع حافظه راL2 Cache می نامند. فرض کنید از یک حافظه بمراتب سریعتر ولی با حجم کمتر استفاده و آن را مستقیما" با پردازنده اصلی درگیر نمود. سرعت دستیابی به حافظه فوق می بایست در حد و اندازه سرعت پردازنده باشد .این نوع حافظه ها را L1 Cache می گویند. در کامپیوتر از زیرسیستمهای متفاوتی استفاده می گردد.از Cache می توان در رابطه با اکثر زیر سیستمهای فوق استفاده تا کارآئی آنان افزایش یابد.
تکنولوژی Cache
یکی از سوالاتی که ممکن است در ذهن خواننده این بخش خطور پیدا کند این است که " چرا تمام حافظه کامپیوترها از نوع L1 Cache نمی باشند تا دیگر ضرورتی به استفاده از Cache وجود نداشته باشد؟" در پاسخ می بایست گفت که اشکالی ندارد وهمه چیز هم بخوبی کار خواهد کرد ولی قیمت کامپیوتر بطرز قابل ملاحظه ای افزایش خواهد یافت . ایده Cache ، استفاده از یک مقدار کم حافظه ولی با سرعت بالا( قیمت بالا) برای افزایش سرعت و کارآئی میزان زیادی حافظه ولی با سرعت پایین ( قیمت ارزان ) است .
در طراحی یک کامپیوتر هدف فراهم کردن شرایط لازم برای فعالیت پردازنده با حداکثر توان و در سریعترین زمان است . یک تراشه 500 مگاهرتزی ، در یک ثانیه پانصد میلیون مرتبه سیکل خود را خواهد داشت ( هر سیکل در دونانوثانیه ) . بدون استفاده از L1 و L2 Cache ، دستیابی به حافظه حدودا" 60 نانوثانیه طول خواهد کشید. بهرحال استفاده از Cache اثرات مثبت خود را بدنبال داشته و باعث بهبود کارآئی پردازنده می گردد.اگر مقدار L2 Cache معادل 256 کیلو بایت و ظرفیت حافظه اصلی معادل 64 مگابایت باشد ، 256000 بایت مربوط به Cache با استفاده از روش های موجود قادر به Cache نمودن 64000000 بایت حافظه اصلی خواهند بود.
حافظه های فلش
حافظه های الکترونیکی با اهداف متفاوت و به اشکال گوناگون تاکنون طراحی و عرضه شده اند. حافظه فلش ، یک نمونه از حافظه های الکترونیکی است که برای ذخیره سازی آسان و سریع اطلاعات در دستگاههائی نظیر : دوربین های دیجیتال ، کنسول بازیهای کامپیوتری و ... استفاده می گردد. حافظه فلش اغلب مشابه یک هارد استفاده می گردد تا حافظه اصلی .
در تجهیزات زیر از حافظه فلش استفاده می گردد :
· تراشه BIOS موجود در کامپیوتر
· CompactFlash که در دوربین های دیجیتال استفاده می گردد .
· SmartMedia که اغلب در دوربین های دیجیتال استفاده می گردد
· Memory Stick که اغلب در دوربین های دیجیتال استفاده می گردد .
· کارت های حافظه PCMCIA نوع I و II
· کارت های حافظه برای کنسول های بازیهای ویدئویی
مبانی حافظه فلش
حافظه فلاش یک نوع خاص از تراشه های EEPROM است . حافظه فوق شامل شبکه ای مشتمل بر سطر و ستون است . در محل تقاطع هر سطر و یا ستون از دو ترانزیستور استفاده می گردد. دو ترانزیستور فوق توسط یک لایه نازک اکسید از یکدیگر جدا شده اند. یکی از ترانزیستورها Floating gate و دیگری Control gate خواهد بود. Floatino gate صرفا" به سطر (WordLine ) متصل است . تا زمانیکه لینک فوق وجود داشته باشد در سلول مربوطه مقدار یک ذخیره خواهد بود. به منظور تغییر مقدار یک به صفر از فرآیندی با نام Fowler-Nordheim tunneling استفاده می گردد. از Tunneling به منظور تغییر محل الکترون ها در Floating gate استفاد می شود. یک شارژ الکتریکی حدود 10 تا 13 ولت به floating gate داده می شود. شارژ از ستون شروع ( bitline ) و سپس به floating gate خواهد رسید .در نهایت شارژ فوق تخلیه می گردد( زمین ) .شارژ فوق باعث می گردد که ترانزیستور floating gate مشابه یک "پخش کننده الکترون " رفتار نماید . الکترون های مازاد فشرده شده و در سمت دیگر لایه اکسید به دام افتاد و یک شارژ منفی را باعث می گردند. الکترون های شارژ شده منفی ، بعنوان یک صفحه عایق بین control gate و floating gate رفتار می نمایند.دستگاه خاصی با نام Cell sensor سطح شارژ پاس داده شده به floating gate را مونیتور خواهد کرد. در صورتیکه جریان گیت بیشتر از 50 درصد شارژ باشد ، در اینصورت مقدار یک را دارا خواهد بود.زمانیکه شارژ پاس داده شده از 50 درصد آستانه عدول نموده مقدار به صفر تغییر پیدا خواهد کرد.یک تراشه EEPROM دارای گیت هائی است که تمام آنها باز بوده و هر سلول آن مقدار یک را دارا است.
در این نوع حافظه ها ( فلش) ، به منظور حذف از مدارات پیش بینی شده در زمان طراحی ( بکمک ایجاد یک میدان الکتریکی) استفاده می گردد. در این حالت می توان تمام و یا بخش های خاصی از تراشه را که " بلاک " نامیده می شوند، را حذف کرد.این نوع حافظه نسبت به حافظه های EEPROM سریعتر است ، چون داده ها از طریق بلاک هائی که معمولا" 512 بایت می باشند ( به جای یک بایت در هر لحظه ) نوشته می گردند.
کارت های حافظه فلش
تراشه BIOS در کامپیوتر، متداولترین نوع حافظه فلش است . کارت های SmartMedia و ComapctFlash نیز نمونه های دیگری از حافظه های فلش بوده که اخیرا" متداول شده اند. از کارت های فوق بعنوان "فیلم های الکترونیکی" در دوربین های دیجیتال، استفاده می گردد .کارتهای حافظه برای بازیهای کامپیوتری نظیر Sega و PlayStation نمونه های دیگری از حافظه های فلش می باشند. استفاده از حافظه فلش نسبت به هارد دارای مزایای زیر است :
· حافظه های فلش نویز پذیر نمی باشند.
· سرعت دستیابی به حافظه های فلش بالا است .
· حافظه های فلش دارای اندازه کوچک هستند.
· حافظه فلش دارای عناصر قابل حرکت ( نظیر هارد ) نمی باشند.
· قیمت حافظه های فلش نسبت به هارد بیشتر است .
حافظه مجازی
حافظه مجازی یکی ازبخش های متداول در اکثر سیستم های عامل کامپیوترهای شخصی است . سیستم فوق با توجه به مزایای عمده، بسرعت متداول و با استقبال کاربران کامپیوتر مواجه شده است . اکثر کامپیوترها در حال حاضر از حافظه های محدود با ظرفیت 64 ، 128 و یا 256 مگابایت استفاده می نمایند. حافظه موجود در اکثر کامپیوترها یه منظور اجرای چندین برنامه بصورت همزمان توسط کاربر ، پاسخگو نبوده و با کمبود حافظه مواجه خواهیم شد. مثلا" در صورتی که کاربری بطور همزمان ، سیستم عامل ، یک واژه پرداز ، مرورگر وب و یک برنامه برای ارسال نامه الکترونیکی را فعال نماید ، 32 و یا 64 مگابایت حافظه، ظرفیت قابل قبولی نبوده و کاربران قادر به استفاده از خدمات ارائه شده توسط هر یک از نرم افزارهای فوق نخواهند بود. یکی از راهکارهای غلبه بر مشکل فوق افزایش و ارتقای حافظه موجود است . با ارتقای حافظه و افزایش آن ممکن است مشکل فوق در محدوده ای دیگر مجددا" بروز نماید. یکی دیگر از راهکارهای موجود در این زمینه ، استفاده از حافظه مجازی است . در تکنولوژی حافظه مجازی از حافظه های جانبی ارزان قیمت نظیر هارد دیسک استفاده می گردد. در چنین حالتی اطلاعات موجود در حافظه اصلی که کمتر مورد استفاده قرار گرفته اند ، از حافظه خارج و در محلی خاص بر روی هارد دیسک ذخیره می گردند. بدین ترتیب بخش ی از حافظه اصلی آزاد و زمینه استقرار یک برنامه جدید در حافظه فراهم خواهد شد. عملیات ارسال اطلاعات از حافظه اصلی بر روی هارد دیسک بصورت خودکار انجام می گیرد.
مسئله سرعت
سرعت خواندن و نوشتن اطلاعات بر روی هارد دیسک بمراتب کندتر از حافظه اصلی کامپیوتر است . در صورتی که سیستم مورد نظر دارای عملیاتی حجیم در رابطه با حافظه مجازی باشد ، کارآئی سیستم بشدت تحت تاثیر قرار خواهد گرفت . در چنین مواردی لازم است که نسبت به افزایش حافظه موجود در سیستم ، اقدام گردد. در مواردی که سیستم عامل مجبور به جابجائی اطلاعات موجود بین حافظه اصلی و حافظه مجازی باشد ( هارد دیسک ) ، باتوجه به تفاوت محسوس سرعت بین آنها ، مدت زمان زیادی صرف عملیات جایگزینی می گردد. در چنین حالتی سرعت سیستم بشدت افت کرده و عملا" در برخی حالات غیرقابل استفاده می گردد. محل نگهداری اطلاعات بر روی هارد دیسک را یک Page file می گویند. در فایل فوق ، صفحات مربوط به حافظه اصلی ذخیره و سیستم عامل در زمان مورد نظر اطلاعات فوق را مجددا" به حافظه اصلی منتقل خواهد کرد. در ماشین هائی که از سیستم عامل ویندوز استفاده می نمایند ، فایل فوق دارای انشعاب swp است .
یکی از متداولترین موارد کاربرد حافظه های Flash ، استفاده از آنان در BIOS)Basic Input/Output System ) است . BIOS این اطمینان را به عناصر سخت افزاری نظیر : تراشه ها ، هارد یسک ، پورت ها ، پردازنده و ... خواهد داد که به درستی عملیات خود را در کنار یکدیگر انجام دهند.
هر کامپیوتر ( شخصی ، دستی ) دارای یک ریزپردازنده به عنوان واحد پردازشگر مرکزی است . ریزپردازنده یک المان سخت افزاری است .به منظور الزام پردازنده برای انجام یک عملیات خاص، می بایست مجموعه ای از دستورالعمل ها که نرم افزار نامیده می شوند، نوشته شده و در اختیار پردازنده قرار گیرند. در این رابطه از دو نوع نرم افزار استفاده می گردد :
سیستم عامل : سیستم عامل مجموعه ای از خدمات مورد نیاز برای اجرای یک برنامه را فراهم می نماید. ویندوز 98 ، 2000 و یا لینوکس نمونه هائی از سیستم های عامل موجود می باشند.
برنامه های کاربردی : برنامه های کاربردی نرم افزارهائی هستند که به منظور تامین خواسته هائی خاصی طراحی و در اختیار کاربران گذاشته می شوند. برنامه هائی نظیر : Word ، Excel و ... نمونه هائی در این زمینه می باشند .
BIOS در حقیقت نوع سومی از نرم افزارها می باشد که کامپیوتر به منظور عملکرد صحیح خود به خدمات آن نیاز خواهد داشت.
خدمات ارائه شده توسط BIOS
نرم افزار BIOS دارای وطایف متعددی است . ولی بدون شک مهمترین وظیفه آن استقرار سیستم عامل در حافظه است . زمانی که کامپیوتر روشن و ریزپردازنده سعی در اجرای اولین دستورالعمل های خود را داشته باشد ، می بایست دستورالعمل های اولیه از مکان دیگری در اختیار آن گذاشته شوند ( در حافظه اصلی کامپیوتر هنوز اطلاعاتی قرار نگرفته است ) . دستورالعمل های مورد نظر را نمی توان از طریق سیستم عامل در اختیار پردازنده قرار داد، چراکه هنوز سیستم عامل در حافظه مستقر نشده و همچنان بر روی هارد دیسک است . مشکل اینجاست که می بایست با استفاده از روش هائی به پردازنده اعلام گردد که سیستم عامل را به درون حافظه مستقر تا در ادامه زمینه استفاده از خدمات سیستم عامل فراهم گردد. BIOS دستورالعمل های لازم را در این خصوص ارائه خواهد کرد. برخی از خدمات متداولی که توسط BIOS ارائه می گررد عبارتند از :
· یک برنامه تست با نام POST به منظور بررسی صحت عملکرد عناصر سخت افراری
· فعال کردن تراشه های BIOS مربوط به سایر کارت های نصب شده در سیستم نظیر : کارت گرافیک و یا کنترل کننده SCSI
· مدیریت مجموعه ای از تنظیمات مرتبط با هارد دیسک،Clock و ...
BIOS ، نرم افزاری خاص است که به عنوان اینترفیس ( میانجی ) بین عناصر اصلی سخت افزارهای نصب شده بر روی سیستم و سیستم عامل ایفای وظیفه می نماید. نرم افزار فوق اغلب در حافظه هائی از نوع Flash و به صورت یک تراشه بر روی برد اصلی نصب می گردد. در برخی حالات تراشه فوق یک نوع خاص از حافظه ROM خواهد بود.
زمانی که کامپیوتر روشن می گردد، خدمات متنوعی توسط BIOS ارائه می گردد :
· بررسی محتویات CMOS برای آگاهی از تنظیمات خاص انجام شده
· لود کردن درایورهای استاندارد و Interrupt handlers
· مقدار دهی اولیه ریجسترها و مدیریت Power
· اجرای برنامه POST به منظور اطمینان از صحت عملکرد عناصر سخت افزاری
· تشخیص درایوی که سیستم می بایست از طریق آن راه اندازی (Booting ) گردد.
· مقدار دهی اولیه برنامه مربوط به استقرار سیستم عامل در حافظه (Bootstrap )
اولین موردی را که BIOS بررسی خواهد کرد، اطلاعات ذخیره شده در یک نوع حافظه RAM با ظرفیت 64 بایت است . اطلاعات فوق بر روی تراشه ای با نام CMOS)Complementry metal oxid semiconductor ) ذخیره می گردند. CMOS شامل جزئیات اطلاعات در رابطه با سیستم بوده و درصورت بروز هر گونه تغییردر سیستم، اطلاعات فوق نیز تغییر خواهند کرد. BIOS از اطلاعات فوق به منظور تغییر و جایگزینی مقادیر پیش فرض خود استفاده می نماید.
Interrupt handlers نوع خاصی از نرم افزار است که به عنوان یک مترجم بین عناصر سخت افزاری و سیستم عامل ایفای وظیفه می نماید.مثلا" زمانی که شما کلیدی را برروی صفحه کلید فعال می نمائید، سیگنال مربوطه، برای Interrupt handler صفحه کلید ارسال می گردد تا از این طریق به پردازنده اعلام شود که کدامیک از کلیدهای صفحه کلید فعال شده اند.
درایورها یک نوع خاص دیگر از نرم افزارها می باشند که مجموعه عملیات مجاز بر روی یک دستگاه را تبین و راهکارهای ( توابع ) مربوطه را ارائه خواهند. اغلب دستگاه های سخت افزاری نظیر: صفحه کلید، موس ، هارد و فلاپی درایو دارای درایورهای اختصاصی خود می باشند. با توجه به اینکه BIOS به صورت دائم با سیگنال های ارسالی توسط عناصر سخت افزاری مواجه است ، معمولا" یک نسخه از آن در حافظه RAM تکثیر خواهد شد.
بررسی ساختار RAM
توضیحات
این اپلت سازمان های داخلی نوعی حافظه دسترسی تصادفی (رم) را نشان می دهد. . رم متشکل از چهار بخش اصلی ، یعنی
ماتریس حافظه، ساخته شده است به عنوان 2D - آرایه ای از سلول های 1 بیتی شبکه ،
رمز گشای آدرس ،
بافر ورودی و آمپلی فایر
بافر خروجی و آمپلی فایر .
فقط بازی با ورودی های حافظه (آدرس ، داده ها ، nChipSelect و nWriteEnable به نوشتن داده ها به سلول های حافظه می انجامد .
standard write-cycles
standard read-cycles
fast write-cycles
Also, additional applets are provided to demonstrate the individual sub-components of the RAM:
single bit memory cell (latch)
address decoder
bitline buffer
به منظور به حداقل رساندن اندازه تراشه از حافظه ، اندازه بسیار کوچکی از هر یک از سلول های ذخیره سازی و طرح بندی و کارآمد مسیریابی سیگنال در ماتریس حافظه بسیار ضروری است. یکی از انتخاب قطعی و بدیهی متعامد با استفاده از سیم برای دسترسی به حافظه است. wordlines اجرا به صورت افقی و در حالت فعال؛ کلمه ای از اطلاعات حافظه است. bitlines اجرای عمودی هستند و به سلول های حافظه ذخیره سازی آدرس های مختلف متصل می شود. در اپلت ، دو بیتی bitlines جداگانه برای هر یک از داده ها استفاده می شود. bitline و سمت چپ هر جفت استفاده می شود برای نوشتن و ذخیره سازی داده ها را به سلول انتخاب شده توسط wordline فعال ، در حالی که bitline حق استفاده شده است به خواندن داده ها باشد. رم نشان داده شده در فروشگاههای اپلت 4 - 4 از کلمات هر بیت (4x4 بیتی رم). برای هر سلول ، به رهبری اضافی استفاده شده است به تجسم در حال حاضر اطلاعات ذخیره شده در سلول (تعریف نشده ، 0 یا 1).
دو نوع مهم ترین حافظه در انتخاب سلول های ذخیره سازی متفاوت است. در اصل ، هر نوع از قفل کردن یا flipflop می تواند مورد استفاده برای ایجاد استاتیک حافظه دسترسی تصادفی ، این است ، محتوای حافظه ذخیره شده باقی مانده است در حالی که مدار شده است. شاید سلول اغلب استفاده می شود ، به اصطلاح شش سلول ترانزیستور است یک نوع از انتقال استاندارد دروازه محکم نگاه داشتن. تظاهرات اپلت متقابل 6T سلول می توان در اینجا یافت نشد. علاوه بر استفاده از تنها شش ترانزیستور برای ذخیره یک بیت از اطلاعات ، 6T سلول نیز اجازه می دهد تا برای مسیریابی بسیار جمع و جور از سیم های سیگنال. پویا در حافظه دسترسی تصادفی (درام) تراشه ، سلول های ذخیره سازی متشکل از NMOS تک ترانزیستور و خازن کوچک. ولتاژ بالا یا پایین (شارژ) به عنوان یک خازن 1 یا 0 منطقی ارزش تعبیر شده است.
یک خازن مثل یک سطل کوچک است که قادر به ذخیره الکترونهاست ذخیره کردن یک ۱ در سلول حافظه مانند این است که سطل پر از الکترون است و یک صفر مانند این است که سطل خالی است ولی خازن مانند یک سطل سوراخ است و در کمتر از یک میلی ثانیه یک سطل پر خالی می شود.بنابراین یک حافظه به صورت دینامیک کار می کندو هر دو cpu یا حافظه کنترل کننده باید در امتداد هم باشند.همه خازنها از یک ۱ قبل از تخلیه نگهداری می کنند.حافظه کنترل کننده حافظه را می خواند و سپس آن را برمی گرداند.این عمل به طور اتوماتیک ۱۰۰۰ بار در هر ثانیه اتفاق می افتد.پس RAM مثل سطل سوراخی است که یا باید در فواصل معینی برگردانده شود یا با صفر خالی شود.
این عمل مجدد برای جایی است که RAM دینامیک باشد.RAM دینامیک همواره عمل را تکرار می کند یا چیزی را که نگهداری کرده بود فراموش می کند.این عمل تکرار وقت گیراست و در نتیجه حافظه را کند می کند.سلول حافظه بر روی یک ویفر سیلیکونی درستونهای منظم(bitlines )و در ردیفهای منظم(wordline ) پرمی شوند.تقاطع یک ۱ bitline با wordline آدرسی از سلولهای حافظه را تشکیل می دهند.
کار RAM این است که با فرستادن یک بار الکتریکی از میان ستونهای مخصوص (CAS )ترانزیستور را در هر بیت در فعال می کند.زمان نوشتن در خطوط سطرها حالتی است که خازن باید بار بگیرد.در زمان خواندن حسگر تقویت کننده sense_amplifier سطح بار در خازن را تعیین می کند اگر مقدار آن بیشتر از ۵۰ در صد باشد یک و در غیر این صورت صفر خوانده می شود.شمارنده یا کنتور ردیف جدید را پیدا می کند و روی هر کدام از سطرهایی که دسترسی داشته است پایه قرار می دهد و در طول زمان لازم همه آن را انجام می دهد که این زمان کوتاه و در حد نانو ثانیه است .
سلولهای حافظه به تنهایی ناتوان هستند مگر اینکه راه هایی برای گرفتن اطلاعات از داخل یا بیرون آنها وجود داشته باشد .بنابراین سلولهای حافظه یک پشتیبانی کلی از دیگر مدارهای مخصوص زیر ساخته دارند.این مدارها کارهایی زیر را انجام می دهند:
۱-تعیین کردن هر سطر و هر ستون (آدرس سطرهای انتخاب شده و آدرس ستونهای انتخاب شده.)
۲-نگهداری ترکهایی از رشته های جدید (کنتور)
۳-دادن اطلاعات یک سلول خواه بار بدهد خواه ندهد شامل یک سری از کارهاست مثل تعیین نوع و سرعت و مقدار حافظه و چک کردن خطاهاست.
RAM static از تکنولوژی کاملا متفاوت استفاده می کند .در RAM استاتیک یک flip_flop از هر بیت نگهداری می کند.RAM استاتیک ازRAM دینامیک سریعتر است ولی سلول حافظه استاتیک فضای بیشتری را نسبت به سلول حافظه دینامیک روی تراشه می گیرد . RAM استاتیک گرانتر ساخته می شود.بنابراین RAM استاتیک سریع و گران و RAM دینامیک کم هزینه تر و کند تر است .همچنین RAM استاتیک برای cpu های سریع و گران cache ایجاد شده در صورتیکه RAM دینامیک برای سیستمهای RAM با فضای بیشتر است.
برنامه ریزی حافظه
امروزه آنچه که کاربران را در شاخه های مختلف از علوم الکترو نیک به خود مشغول کرده است تنوع در بر نامه ریزی ها ست. دنیای فیزیکی یک قطعه آی سی کوچک با بر نامه نویسی است که معنا و مفهوم می یابد. در کامپیو تر های شخصی- گو شی تلفن های همراه ? انواع وسایل پیچیده و حتی ساده برنامه نویسی و ایجاد ارتباط بین سخت افزار و نرم افزار از بیشترین دغدغه های سازندگان می باشد.
برای مثال در یک کامپیو تر دیجیتال به کار گیری دنباله های از ریز عمل هاست . تعداد انواع ریز عمل های مو جود در یک سیستم معین محدود است . پیچیدگی سیستم دیجیتال به تعداد ریز عمل های متوالیست که اجرا می کند بستگی دارد. هنگامی که سیستم های کنترلی توسط سخت افزار حاصل از تکنیک های مدار های منطقی رایج تو لید شود گوییم واحد کنترل سخت افزاریست .
ریز بر نا مه نویسی روش دیگری برای طراحی واحد کنترل یک کامپیو تر دیجیتال است . اصل ریز بر نامه نویسی روش شاخص و سیستماتیک در کنترل رشته ریز عمل ها در یک کامپیو تر دیجیتال است . تابع کنترلی که مشخص کننده یک ریز عمل است یک متغیر دو دویی می باشد. وقتی که این متغییر در یکی از حالات دودویی باشد ریز عمل متناظر آن اجرا می شود. اگر متغیر کنترلی که در وضعیت دودویی مخالف باشد وضعیت ثبات های سیستم را تغییر نمی دهد. وضعیت فعال یک متغیر کنترل ممکن است بسته به کاربرد هر یک از حالات ۱ یا ۰ باشد.
در سیستم مبتنی بر گذر گاه سیگنال های کنترلی که ریز عمل را مشخص می نمایند به صورت گره هایی از بیت ها هستند که مسیر ها را در مولتی پلبکسر ها ? دیکدرها و واحد های حساب و منطق انتخاب می نمایند.
واحد کنترل موجب اجرای یک سری مراحل متوالی از ریز معل ها می شود. در هر زمان مفروض ریز عمل های معینی باید اجرا شوند در حالیکه سایر ریز عمل ها راکد هستند. متغیر های کنترلی در هر لحظه از زمان می توانند با رشته ای از ۱ ها و ۰ ها که کلمه کنترل نامیده می شوند نمایش داده شوند. به این ترتیب می توان با بر نامه نویسی کلمات کنترلی عملیات مختلف را روی اجزا سیستم انجام داد .
واحد کنترلی که متغیر های دودویی کنترل آن در حافظه ذخیره شده باشد واحد کنترل ریز بر نامه نویسی شده نام دارد . هر کلمه در واحد کنترل حاوی یک ریز دستور العمل است . ریز دستور العمل مشخص کننده یک یا چند دستور العمل برای سیستم است . رشته هی از ریز دستور العمل ریز بر نامه را تشکیل می دهد . با تو جه به اینکه بعد از نصب واحد کنترل در سیستم لازم نیست تغییری در ریز بر نامه داده شود واحد کنترل می تواند فقط از نوع خو اندنی باشد .
کامپیو تری که از واحد کنترل برنامه نویسی شده استفاده می کند دو حافظه مجزا خواهد داشت . یک حافظه اصلی و یک حافظه کنترل . حافظه اصلی در اختیار کاربر است تا بر نامه های خود را در آن ذخیره کند . محتوی حافظه اصلی به هنگام دستکاره داده ها و یا هر بار که بر نامه عوض شود تغییر می نماید . بر نامه کاربر در حافظه اصلی شامل دستورات ماشین و داده هاست . متقابلا حافظه کنترل یک ریز بر نامه ثابتی را نگهداری می کند و به وسیله هر کاربری قابل تغییر نیست .
ریز بر نامه از ریز دستور العمل هایی تشکیل شده که به نو به خود انواع سیگنال های کنترلی را برای اجرا روی ثبات ها معین می کند. هر دستور العمل ماشین موجب اجرای رشته ای از ریز دستور العمل های موجود در حافظه کنترل می شود. وظیفه این ریز دستور العمل ها برداشت دستور العمل ماشین از حافظه اصلی ست . محاسبه آدرس مو ثر اجرای عملی که تومسط دستور العمل ماشین مشخص شده و باز گرداندن کنترل به فاز بر داشت برای تکرار سیکل مر بوط به دستور العمل بعدی ست .
الکترونیک قدرت؛ الکترونیک، قدرت و کنترل را با هم ترکیب می کند. کنترل با مشخصه های حالت دائمی و دینامیکی سیستم های مدار بسته سروکار دارد. علم قدرت، به تجهیزات استاتیک و دوّار برای تولید، انتقال و توزیع قدرت الکتریکی ارتباط دارد. الکترونیک با وسایل و المان های حالت جامد برای پردازش سیگنال ها، به منظور برآوردن اهداف کنترلی مورد نظر سروکار دارد. الکترونیک قدرت را می توان به عنوان کاربردهای الکترونیک حالت جامد برای کنترل و تبدیل توان الکتریکی تعریف کرد .
این چند جمله از مقدمه کتاب الکترونیک صنعتی تالیف م.ه.رشید؛ اهمیت و ویژگی های الکترونیک قدرت را به خوبی مشخص می کند. از آنجایی که مبحث الکترونیک صنعتی یکی از مهمترین و پر کاربرد ترین مباحث در مهندسی برق است، نیاز به مطالعه مباحث آن به صورت تئوری و عملی ضروری می نماید. و همچنین با توجه به پیشرفت روز افزون علم و تولیدات بیشمار وسایل الکتریکی، دیگر روش تجربه و خطا در تولید محصولات، ابداعات و اختراعات روشی غیر معقول برشمرده می شود. در همین راستا می توان با بهره گیری از محیط های مجازی شبیه سازی کامپیوتری به راحتی و با صرف حداقل زمان و هزینه به شبیه سازی مدل ها و سیستم های مختلف (از جمله در زمینه سیستم های الکترونیک قدرت) پرداخت. با شبیه سازی یک سیستم واقعی در دنیای مجازی کامپیوتر به راحتی می توان آن را بارها و بارها تجزیه و تحلیل کرد، تغییر داد و اصلاح نمود.
سیمولینک (Simulink ) ازجمله نرم افزار های جامع و قدرتمند در زمینه شبیه سازی کامپیوتری و از محصولات شرکت Math Works می باشد .
سیمولینک یک بسته نرم افزاری است که شما را قادر می سازد سیستم هایی را مدل سازی، شبیه سازی و تجزیه تحلیل کنید که خروجی آنها بارها تغییر می کند. چنین سیستم هایی اغلب به سیستم های دینامیکی منسوب هستند. سیمولینک می تواند برای مطالعه رفتار گستره وسیعی از سیستم های دینامیک در دنیای واقعی (از جمله مدارهای الکتریکی، ضربه گیرها، سیستم های ترمزی و بسیاری از سیستم های الکتریکی، مکانیکی، ترمودینامیکی و... )به کار رود .
برای مدل سازی، سیمولینک یک واسط گرافیکی کاربر (GUI ) عرضه می کند .
شبیه سازی یک سیستم دینامیکی یا الکتریکی با سیمولینک یک فرایند دو مرحله ایست. ابتدا، شما یک مدل گرافیکی از سیستمی که باید شبیه سازی شود، با استفاده از ویرایشگر مدل سیمولینک می سازید که مدل روابط ریاضی وابسته به زمان میان ورودی ها، حالات و خروجی های سیستم را نشان می دهد. سپس، شما با استفاده از سیمولینک رفتار سیستم را روی یک محدوده زمانی مشخص شبیه سازی می کنید. سیمولینک از اطلاعاتی که شما در مدل اجرای شبیه سازی وارد کرده اید استفاده می کند .
سیمولینک شامل یک کتابخانه جامع از خروجی ها (نمایشگرها)، ورودی ها (منابع)، عناصر خطی و غیر خطی و رابط ها است. به علاوه شما می توانید درآن بلوک هایی را سفارشی کنید یا از نو خلق کنید .
اندازه گیری میزان حافظه مورد نیاز برای کامپیوتر
مادربردهایی که در سه چهار سال اخیر وارد بازار شدهاند به طور معمول از ۴ گیگابایت حافظه در چهار شکاف (به بیان دیگر چهار شکاف یک گیگابایتی) چهار شکاف یک گیگابایتی پشتیبانی میکنند. از یکی دو سال پیش مادربردهایی طراحی شدهاند که سقف پشتیبانی خود را تا ۸ گیگابایت افزایش دادهاند. بنابراین به شکلی منطقی میتوان پیشبینی کرد که این موجودات از چهار شکاف ۲ گیگابایتی پشتیبانی خواهند کرد. تذکر این نکته خالی از لطف نیست که سازندگان مادربرد به طور معمول از تمامی قابلیتهای چیپستها استفاده نمیکنند. برای مثال، برخی چیپستها از ۸ گیگابایت حافظه پشتیبانی میکنند، در حالی که طراحان مادربرد حداکثر پشتیبانی حافظه را به ۴ گیگابایت محدود میکنند که البته برای خود هزار و یک توجیه فنی دارند. از سال گذشته نیز برخی مادربردهای مبتنی بر چیپستهای جدید، سقف سازگاری خود را با حافظه تا ۱۶ گیگابایت افزایش دادهاند.
از سالها پیش مطالبی درباره محدودیت سیستمعاملهای Microsoft در مدیریت حافظه منتشر شده بود. برای مثال، گفته میشد که سیستمعامل Windows ۹۸SE توان مدیریت فقط ۵۱۲ مگابایت حافظه و سیستمعامل Windows XP نیز قادر به مدیریت کمتر از یک گیگابایت حافظه است. بالاخره Microsoft نیز بیکار نمانده و اصطلاحاتی در مولود خود ایجاد کرده است تا توانایی آن را با توجه به شرایط روز سازگار کند.
محدودیت ۳۲ بیتیها
بیشتر سیستمهای کنونی به شکل ۳۲ بیتی کار میکنند و حتم دارم میدانید که اینگونه سیستمها قادر به آدرسدهی فقط ۴ گیگابایت حافظه هستند. سیستمهای ۳۲ بیتی قادر به تشخیص بیش از این مقدار نیستند و به همین ترتیب مورد استفاده نیز قرار نخواهد گرفت.
از اینرو اگر از سیستمهای ۳۲ بیتی مانند Windows XP یا Vista استفاده میکنید بدانید که در هر حالت بیش از ۴ گیگابایت حافظه به کار شما نمیآید. البته ماجرا برای سیستمعامل Vista در وضعیت ۶۴ بیتی متفاوت است، زیرا این سیستم میتواند ۱۶ ترابایت حافظه را آدرسدهی کند. بد نیست بدانید که وجود این قابلیت، به این معنا نیست که هر قدر که میخواهید مجاز به استفاده از حافظه هستید.
در یکی از گزارشهایی که در این مورد منتشر شده از ترکیبات مختلف حافظه در چهار حالت استفاده کرده و نتیجه آن مورد بررسی قرار گرفته است.
▪ ترکیب A ؛ ۲ قطعه یک گیگابایتی در مجموع ۲ گیگابایت
▪ ترکیب B ؛ ۲ قطعه ۲ گیگابایتی در مجموع ۴ گیگابایت
▪ ترکیب C ؛ ۴ قطعه یک گیگابایتی در مجموع ۴ گیگابایت
▪ ترکیب D ؛ ۴ قطعه ۲ گیگابایتی در مجموع ۸ گیگابایت
لازم به یادآوری است که نتایج تست ۸ گیگابایت حافظه در سیستمعامل ۶۴ بیتی Vista حاصل شده.
کارایی کلی حافظه
تستها در این بخش توسط نرمافزارهای معروف Sisoft Sandra و Everest شکل گرفته است و نتایج Sisoft Sandra نشان میدهد که ترکیبهای C و D کارایی بالاتری دارند. هرچند عملکرد ترکیب C فاصله مختصری با ترکیب B دارد و نتیجه ترکیب D رضایتبخش نیست.
تست زمان تأخیر (Latency ) نرمافزار Everest حکایت از برتری ترکیب A و با فاصلهای اندک ترکیب B دارد. ترکیب C و D نتایج مشابهی دارند و به سادگی میتوان تحلیل کرد که ترکیبهایی که از تعداد قطعات کمتری حافظه استفاده میکنند تاخیر کمتری دارند. به بیان دیگر اگر مشکلات فنی قابل رفع باشند، استفاده از قطعات پرظرفیتتر تأخیر کمتری در پی دارد که این موضوع برای بازیدوستان و کاربران حرفهای دارای اهمیت فوقالعادهای است.
اما نتیجه خوانش (Read )، ثبت (Write ) و انتقال (Copy ) دادهها نشان از برتری ترکیبهایی با ظرفیت کمتر و تعداد قطعه کمتر است. هرچند نتیجه انتقال داده توسط ترکیب C بهتر از دیگران است، اما در مجموع ترکیبهای A و B نتایج بهتری نشان میدهند. ترکیب ۸ گیگابایتی ناامیدکننده ظاهر شده است.
زمان Boot Up
مقصود فاصله زمانی بین نمایش اطلاعات اولیه BIOS تا فعالشدن کامل امکانات اولیه سیستمعامل است. این تست باز هم بر این نکته تاکید دارد که ترکیب کم ظرفیتتر عملیات آمادهشدن سیستم را سریعتر انجام میدهد. البته شاید قیاس سیستمعامل XP با Vista قدری ناجوانمردانه باشد، زیرا سیستمعامل Vista در هنگام فعال شدن نزدیک به ۴۰۰ مگابایت اطلاعات را داخل حافظه وارد میکند.
البته تأخیر میان ترکیبهای مختلف کمتر از ۵ ثانیه است و عدد قابل توجهی محسوب نمیشود.
برای ادامه بررسی درباره این موضوع از بار کردن (Loud ) تعدادی تصویر توسط نرمافزار Photoshop Element ۶ استفاده میشود تا قیاسی حقیقی در اینباره شکل گیرد. البته کارایی هارددیسک سیستم در تغییر زمان بار کردن تصاویر تاثیر دارد. به این منظور آزمایش برای دو هارددیسک متفاوت تکرار شده است.
نتیجه ترکیب D در باز کردن ۲۰ تصویر ۸ مگابایتی به شکل محسوسی برتر از ترکیب A است. نتیجه ترکیب B نیز قابل قبول است. اکنون اگر قرار باشد تعداد تصاویر را تا ۲۰۰ عدد افزایش دهیم نتیجه ترکیب A به فاجعه نزدیک میشود. ترکیبهای B فوقالعاده ظاهر شده و نتیجه ترکیب D نیز با قدری اغماض به ترکیب B نزدیک است. اگر بخواهیم تصویری واقعی ترسیم کنیم، کارایی ترکیبهای ۴ و ۸ گیگابایتی دو برابر ترکیب ۲ گیگابایتی است.
مقایسه DDR2 و DDR3
قطعات حافظه حرفهای برای خود دنیایی دارند که هرچند محدود است، اما برای گشت و گذاری کوتاه جذاب به نظر میرسد. قیمت بالا و شاید ظاهر عجیب این خانواده از قطعات سختافزاری موجب چشمپوشی قاطبه خریداران از آنها باشد، اما اهالی خطر و دوستداران بازیهای مهیج خوب میدانند که قطعات حرفهای جزو لاینفک یک سیستم کامل هستند. از اینرو در این شماره چهار قطعه خوشنام و سطح بالا را در فرصتی کوتاه معرفی میکنیم.
راهنماییها و توصیههای ما در این صفحه تصور نمیکنم به کار حرفهایجماعت بیاید، اما زمینه آشنایی بیشتر کاربران عام این حوزه را با قطعات حرفهای مهیا خواهد ساخت. بعید نیست که تعدادی از ایشان دست توکل بر آسمان برداشته و جیبها خالی کنند و گرفتار قطعات حرفهای شوند.
چرا DDR2
شاید بپرسید در این هنگامه که حافظههای نسل DDR3 از راه رسیدهاند و در بازار قابل تهیه هستند چه لزومی دارد که کلی پول بیزبان را خرج حافظههای نسل DDR2 کنیم. در پاسخ باید گفت که چنین سؤالاتی چند سال پیش در هنگام جایگزینی حافظههای نسل DDR2 با DDR مطرح میشد. پاسخ منطقی این بود که حافظههای جدید مانند حافظههای جاری بازار مورد بررسی قرار نگرفتهاند و زیر و بم آنها برای حرفهای جماعت مشخص نشده است. از طرفی؛ اهمیت موضوع زمانبندی برای کاربردهای حرفهای تا حدی است که میتواند حرفهایها را تا مدتها به حافظههای کنونی بازار وابسته نگه دارد. خوب میدانید که هرچه اندازه اعداد چهارگانه مربوط به زمانبندی -که سرعت دسترسی و تبادل دادهها را در چیپهای حافظه نشان میدهد- کمتر باشد با موجود کیفیتری مواجه هستیم. جالب آن است که هر چه سرعت فرکانس چیپهای حافظه افزایش مییابد اعداد چهارگانه زمانبندی نیز افزایش خواهد یافت و آه از نهاد افراد حرفهای بر خواهد آمد. به همین دلیل سازندگان قطعات حرفهای حافظه تمام تلاش خود را به کاهش همزمان اعداد چهارگانه مربوط به زمانبندی (Rated Timings ) در عین افزایش سرعت فرکانس چیپها معطوف میکنند و به دنبال آن قیمت اینگونه حافظهها بهصورت محسوسی بالاتر میرود.
بیشتر سازندگان برای اینکه خود را داخل آدم حساب کنند سعی دارند علاوه بر تولید محصولات عام (Value ) یا ارزانقیمت (Eco )، یک یا چند خانواده از محصولات حرفهای را نیز طراحی و روانه بازار کنند. برای مثال، شرکت Kingston حافظههای خاندان Value را برای بازار عام و خاندان HyperX را برای خواص تولید میکند. Crucial نیز خاندان Standard را برای عموم و خاندان Ballistix را برای حرفهایجماعت طراحی میکند.
چهارگانه مهم
در سطرهای بالا گفته شد که اعداد چهارگانه زمانبندی و سرعت فرکانس مهمترین مشخصههای چیپهای حافظه محسوب میشوند. بسیاری از خریداران قطعات حافظه اطلاعات مختصر و مفیدی درباره سرعت فرکانس دارند، اما تعداد اندکی از ایشان اطلاعات کافی درباره اعداد زمانبندی دارند و غفلت از این نکته میتواند موجب هدر رفتن منابع مالی خریدار شود.
اعداد چهارگانه زمانبندی بیشتر به صورت ۶- ۲- ۲- ۲ یا ۱۵- ۵- ۵- ۵ نمایش داده میشوند. از این میان عدد اول از سمت چپ که CAS Latency نام دارد و به اختصار CL خطاب میشود برای دوستان از اهمیت بالاتری برخوردار است. ارزش این اعداد بر حسب نانوثانیه محاسبه میشود، اما اینگونه رایج است که آنها را بر اساس تعداد سیکل فرکانس نمایش میدهند. برای مثال، عدد CL3 معادل با سه واحد فرکانس نوسانی حافظه است. فرکانس چیپ حافظه یک گیگاهرتزی به این معنی است که این چیپ میتواند یک میلیارد بار در ثانیه نوسان کامل داشته باشد و هر نوسان کامل آن یک نانوثانیه طول میکشد. پس عدد CL ۳ مترادف با ۳ نانو ثانیه (۳ میلیاردیوم ثانیه) است.
محصولات چهارگانه زیر برای خرید توصیه میشوند. واقعیت این است که این محصولات روی مادربردها و پردازندههای مختلف، نتایج متفاوتی نشان دادهاند. از اینرو نمیتوان بهضرس قاطع گفت که کدام قطعه بر دیگری رجحان دارد. البته توصیه همیشگی ما این است که همواره گرانتر بهتر نیست. محصولی خوب است که نسبت به کیفیت قیمت مناسبی داشته باشد. با این استدلال Kingston بر دیگران ارجحیت خفیفی دارد.
Kingston HyperX
یکی از خصایص جالب Kingston که برای نویسنده این سطور جذابیت دارد، بستهبندی ساده و به دور از جنگولکبازی رایج در میان شرکتهای عرضهکننده قطعات سختافزاری و بهخصوص قطعات حافظه است. اولین مزیت این سادگی را میتوان در قیمت مناسب محصولات Kinston جستجو کرد و بیدلیل نیست که ذلیلشدگان متقلب علاقه ویژهای به محصولات ارزانقیمت این شرکت دارند. شاید اینگونه تصور شود که خانواده HyperX در مقابل خانوادههای اشرافی دیگر سازندگان، حرف چندانی برای گفتن نداشته باشد که بهزعم حقیر تصور نادرستی است. قبول که خاندان HyperX قابلیتهای عجیبی در زمینه OverClocking ندارد، اما از بعد کیفی در فعالیتهای سنگین، به خوبی پاسخگوی نیازهاست و کار خود را بدون ادعا به پیش میراند.
مشخصات فنی
▪ سازنده: Kingston
▪ سری: HyperX
▪ نام تجاری: KHX ۸۵۰۰D ۲K ۲/۴G
▪ مشخصه فنی: DDR ۲-۸۵۰۰
▪ سرعت فرکانس حافظه: ۱۰۶۶ مگاهرتز
▪ سرعت فرکانس OverClocked: ۱۱۳۰ مگاهرتز
▪ زمانبندی حافظه: ۱۵- ۵- ۵- ۵
▪ ولتاژ کاری: ۲/۲ ولت
▪ ولتاژ در حالت OverClocked: ۳/۲ ولت
▪ حجم حافظه: دو قطعه ۲ گیگابایتی
▪ مصرف انرژی در وضعیت غیرفعال: ۱۰۷ وات
▪ مصرف انرژی در اوج فعالیت: ۱۴۶ وات
▪ قیمت بینالمللی: ۱۹۰۰ دلار
Mushkin Ascent
چند سال بیشتر از حضور حافظههای فوقالعاده Mushkin در بازار داخلی نمیگذرد. این شرکت سه خانواده مهم را در زمینه حافظههای حرفهای معرفی کرده است. خانواده EM برای علاقمندان OverClocking ، خانواده HP برای دوستداران کیفیت و خانواده XP برای آنهایی که در آخر کیفیت را طلب میکنند.
کیفیت محصولات Mushkin قابل اعتماد است و مانند محصولات Buffalo نوسان کیفی ندارد که روزی در اوج باشد و روزی دیگر همچون محصولات متوسط رفتار کند. این محصول Mushkin جذابیت ویژهای برای دوستداران OverClocking ندارد و به این دوستان توصیه نمیشود. این در حالی است که مانند محصول Kingston در فعالیتهای سخت، به خوبی از عهده کارها برآمده و پایدار نشان داده و به نظر میرسد محصولی قابل اعتماد و اتکاست.
▪ مشخصات فنی
▪ سازنده: Mushkin
▪ سری: Ascent
نام تجاری: XP ۲-۸۵۰۰
▪ سرعت فرکانس OverClocked: ۱۱۱۵ مگاهرتز
▪ ولتاژ کاری: ۰/۲ ولت
▪ مصرف انرژی در وضعیت غیرفعال: ۱۰۳ وات
▪ مصرف انرژی در اوج فعالیت: ۱۴۳ وات
OCZ FLEX XLC
شک ندارم شما نیز قبول دارید که محصولات OCZ برای اهالی حرفهای طعم و مزهای دیگر دارد. شرکت OCZ بههمراه Corsair از لحاظ سرعت رکورددار محسوب میشوند و از خود نقشی در سرزمین کیفیت بر جای گذاشتهاند که به راحتی قابل زدودن نیست. مشکل اصلی محصولات OCZ تعداد خانوادههای متعددی است که تفاوت آنها برای مخاطب به روشنی قابل تشخیص نیست. برای مثال، هماکنون خانوادههای Gold ، Titanium ، Platinum ، Reaper ، Fatal ۱ty ، Flex XLC ، Crossfire ، nVIDIA SLI Ready ، Performance ، Vista Special و Limited Edition در وبسایت رسمی این شرکت معرفی شدهاند، اما تصور نمیکنم کاربردهای معمول حافظهها چنان باشد که نیاز به دستهبندی اینچنینی داشته باشد. این محصول OCZ برای OverClocking مناسب است، اما محدودیتهایی به همراه دارد.
▪ سازنده: OCZ Technology
▪ سری: FLEX XLC
▪ نام تجاری: PC ۲-۹۲۰۰ Flex II ۴GB
▪ مشخصه فنی: DDR ۲-۹۲۰۰
▪ سرعت فرکانس حافظه: ۱۱۵۰ مگاهرتز
▪ سرعت فرکانس OverClocked: ۱۱۸۰ مگاهرتز
▪ زمانبندی حافظه: ۱۸- ۵- ۵- ۵
▪ ولتاژ کاری: ۱/۲ ولت
▪ مصرف انرژی در وضعیت غیرفعال: ۱۰۴ وات
▪ مصرف انرژی در اوج فعالیت: ۱۴۵ وات
Corsair Dominator
قیمت آن دسته از محصولات Corsair که برای اهالی OverClocking طراحی میشوند فوقالعاده بالا و به همان اندازه قابل اطمینان است. به طور معمول محصولات Corsair و OCZ انتخاب اول حرفهایها است، اما موضوع قیمت بین دوستدارانی که توان مالی محدودتری دارند با این محصولات فاصله قابل ملاحظهای را ایجاد کرده. یکی از علل قیمت بالا، سیستمهای خنکسازی است که برای فعالیت سنگین در ولتاژ بالاتر و برای مدتهای طولانی به همراه قطعات حافظه ارایه میشوند. این محصول Corsair توانایی افزایش سرعت فرکانس حافظه تا ۱۲۰۰ مگاهرتز را نیز دارد، اما در آن وضعیت چندان پایدار نشان نمیدهد. انتخاب محصولات Corsair و OCZ به علاقه و عمق جیب مخاطب وابسته است.
▪ سازنده: Corsair
▪ سری: Dominator
▪ نام تجاری: TWIN ۲X ۴۰۹۶
▪ مشخصه فنی: DDR ۲-۹۱۳۶
▪ سرعت فرکانس حافظه: ۱۱۴۲ مگاهرتز
▪ سرعت فرکانس OverClocked: ۱۱۷۶ مگاهرتز
References :
tams-www.informatik.uni-hamburg.de
www.infotech-era.com
www.srco.ir
www.wikipedia.org
دانشنامه ویکیپدیا
bselectron.mihanblog.com
بانک اطلاعات مهندسی برق
هفتهنامه بزرگراه فناوری ( www.itnewsway.ir )