حافظه رایانه
در علوم رایانه، به هر وسیله که توانایی نگهداری اطلاعات را داشته باشد، حافظه میگویند. حافظه یکی از قسمتهای ضروری و اساسی یک رایانه بهشمار میرود. همانطور که انسان برای نگهداری اطلاعات مورد نیاز خود علاوه بر حافظه درونی خویش از ابزارهای گوناگون دیگری همانند کاغذ، تخته سیاه، نوار ضبط صوت، نوار ویدئو و ... استفاده میکند رایانه هم میتواند از انواع گوناگون حافظه استفاده کند. بهطور کلی دو نوع حافظه داریم:
- حافظه اصلی که به آن «حافظه اولیه» یا «حافظه درونی» نیز میگویند.
- حافظه جانبی که به آن «حافظه ثانویه» یا «حافظه کمکی» نیز میگویند.
در مفهوم گستردهتر این واژه به ابزارهای انبارش بیرونی چون دیسکگردان یا نوارگردان گفته میشود. ابزار ذخیرهسازی نیمه هادی یکراست به پردازنده وصل میشود. حافظه پنهان یا Cache حافظه سریعی است که برای افزایش سرعت پیوند سیستم با دستگاههای کندتر بهره گرفته میشود و بکارگیری آن مایه آن میشود که سرعت و تواناییهای دستگاه سریع هرز نرود. مهمترین حافظه پنهان در پردازندههای مرکزی (سیپییوها) وجود دارد که به سه سطح (L1 و L2 و L3) بخش میشود و امروزه حافظه پنهان که در پردازشگرهای مرکزی ساختن آن هزینه بیشتری دارد تا ۱۶ مگا بایت هم میرسد.
انواع حافظه
حافظه با هدف انباشتن دادهها (فرار، غیر-فرار) در رایانه به کار برده میشوند و دارای انواع گوناگونی است. حافظهها را میتوان بر پایه نمایههای گوناگونی بخشبندی کرد. حافظه فرار Volatile و حافظه غیر فرار Nonvolatile نمونهای از این دستهبندی هاست. حافظههای فرار بلافاصله پس از خاموش شدن سیستم دادههای خود را از دست میدهند و همواره برای نگهداری دادههای خود به منبع تأمین انرژی نیاز خواهند داشت. بیشتر حافظههای رَم در این گروه جای میگیرند. حافظههای غیر فرار دادههای خود را همچنان پس از خاموش شدن سیستم نگه میدارند. حافظه «رام» ROM نمونهای از این نوع حافظهها است. نام انواع حافظهها در زیر آمدهاست:
- حافظه دسترسی تصادفی (رَم) RAM
- حافظه فقط خواندنی (رام) ROM
- حافظه پنهان Cache
- حافظه دسترسی تصادفی پویا Dynamic RAM
- حافظه دسترسی تصادفی ایستا Static RAM
- حافظه فِلَش Flash Memory
- حافظه مجازی Virtual Memory
- حافظه ویدئویی Video Memory
- بایوس (واسط سختافزار و نرمافزار) BIOS
استفاده از حافظه صرفاً محدود به رایانههای شخصی نبوده و در دستگاههای متفاوتی نظیر: تلفن همراه، رایانه جیبی، رادیوهای اتومبیل، دستگاه پخش نوار ویدئویی، تلویزیون و … نیز در ابعاد وسیعی استفاده میگردد. هر یک از دستگاههای فوق مدلهای خاصی از حافظه را استفاده مینمایند.
مبانی اولیه حافظه
با اینکه میتوان واژه «حافظه» را بر هر گونه ابزار انبارش الکترونیکی نامید، ولی بیشتر از واژه بالا برای حافظههای سریع با توانایی اندوختن فرار بهره گرفته میشود. با اینکه پردازنده ناچار باشد برای بازیابی دادهها مورد نیاز خود همیشه از هارد دیسک بهره گیرد، بیگمان سرعت پردازش پردازنده (با آن سرعت بالا) کند خواهد گردید. زمانیکه دادهها مورد نیاز پردازنده در حافظه اندوخته گردند، سرعت پردازش پردازنده از دید دستیابی به دادههای مورد نیاز بیشتر خواهد گردید. از حافظههای فراوانی برای نگهداری فرار دادهها کاربری میگردد.
همانگونه که در شکل بالا دیده میشود، گنجینه جوراجوری از انواع حافظهها هست. پردازنده با پرداختن به ساختار نردبانی بالا به آنها دستیابی پیدا خواهد کرد. زمانیکه در سطح حافظههای غیر-فرار همچو دیسک سخت (هارد دیسک) یا حافظه دستگاههایی همچو صفحه کلید، دانستههای باشد که پردازنده قصد بهرهگیری از آنان را داشته باشد، میبایست دانستههای بالا از روش حافظه رَم در دسترس پردازنده گذاشته شوند. در دنباله، پردازنده دادهها و دادههای مورد نیاز خود را در حافظه پنهان (Cache) و دستور کارهای ویژه عملیاتی خود را در ثباتها (register) اندوخته مینماید.
همه بخشهای سختافزاری (پردازنده، دیسک سخت، حافظه و …) و بخشهای نرمافزاری (سیستم عامل و…) به گونه یک گروه عملیاتی به کمک یکدیگر وظیفههای محوله را انجام میدهند. بی شک در این گروه «حافظه» دارای جایگاهی ویژه است. از زمانیکه رایانه روشن تا زمانیکه خاموش میگردد، پردازنده به گونه پیوسته و همیشگی از حافظه بهره میگیرد. بیدرنگ پس از روشن نمودن رایانه دانستههای نخستین (برنامه POST) از «حافظه فقط خواندنی» (رام) بارگذاری شده و در دنباله وضعیت حافظه از نظر سالم بودن بررسی میگردد (عملیات سریع خواندن، نوشتن). در گام بعد رایانه بایوس را از طریق «رام» بارگذاری خواهد کرد. بایوس دانستههای نخستین و ضروری در پیوند با دستگاههای انبارش، وضعیت درایوی که میبایست فرایند بوت از آنجا آغاز گردد، امنیت و … را آشکار مینماید.
در گام بعد سیستم عامل از دیسک سخت به درون حافظه رم سوار خواهد شد. بخشهای مهم و حیاتی سیستم عامل تا زمانیکه سیستم روشن است در حافظه ماندگار خواهند بود. در دنباله و زمانیکه یک برنامه به دست کاربر فعال میگردد، برنامه بالا در حافظه رم سوار خواهد شد. پس از جایگیری یک برنامه در حافظه و آغاز سرویس دهی از سوی برنامه یاد شده در صورت ضرورت به فایلهای مورد نیاز برنامه بالا، در حافظه سوار خواهند شد؛ و سرانجام زمانیکه به حیات یک برنامه پایان داده میشود (Close) یا یک فایل اندوخته میگردد، اطلاعات بر روی یک رسانه انبارش همیشگی اندوخته و در پایان حافظه از بودن برنامه و فایلهای وابسته، پاکسازی میگردد. همانگونه که اشاره گردید در هر زمان که اطلاعاتی، مورد نیاز پردازنده باشد، میبایست اطلاعات درخواستی در حافظه رَم سوار شود تا زمینه بهرهگیری از آنان به دست پردازنده فراهم گردد. چرخه درخواست اطلاعات پدید آمده در رم به دست پردازنده، پردازش اطلاعات به دست پردازنده و نوشتن اطلاعات نوین در حافظه یک زنجیره پیوسته بوده و در بیشتر رایانهها زنجیره بالا شاید هر ثانیه میلیونها بار انجام گردد.
حافظه اصلی
کلیه دستورالعملها و دادهها، برای این که مورد اجرا و پردازش قرار گیرند، نخست باید به حافظه اصلی رایانه منتقل گردند و نتایج پردازش نیز به آنجا فرستاده شود. حافظه اصلی رایانه از جنس نیمه رسانا (الکترونیکی) است و در نتیجه، سرعت دسترسی به اطلاعات موجود در آنها در مقایسه با انواع حافظه جانبی که به صورت مکانیکی کار میکنند مانند دیسک سخت، دیسکگردان، و لوح فشرده بالا و قیمت آن نیز گرانتر است اما در مقابل حافظههایی، که به پردازنده نزدیکتر هستند و از ظرفیت کمتری برخوردارند مانند ثبات (به انگلیسی: Processor Registers) و حافظه نهان سیپییو (به انگلیسی:Cache) گرانتر و از سرعت دسترسی بالاتری بهره میبرند.
حافظههای اصلی نیز به دو دسته تبدیل میشوند:
- حافظه خواندنی/ نوشتنی (به انگلیسی: RAM)، حافظه دسترسی تصادفی (به انگلیسی: Random Access Memory یا RAM) از این نوع است.
- حافظه فقط خواندنی (به انگلیسی: Read Only Memory یا ROM)
حافظه خواندنی/ نوشتنی
همانطور که از نام این حافظه پیداست، پردازنده میتواند هم در این نوع حافظه بنویسد و هم از آنها بخواند. بهطور کلی، برنامهها (به انگلیسی: Codes)، دستورالعملها (به انگلیسی: Instructions)، و دادههایی (به انگلیسی: Data) در این حافظه قرار میگیرند که پردازشگر بخواهد بر روی آنها کاری انجام دهد. به این نوع حافظهها، حافظه فَرّار نیز میگویند زیرا با قطع برق، محتویات آنها از بین میرود. RAMها غالباً دو نوع اند:
- (DRAM (Dynamic RAM
(RAMدینامیک): در این نوع حافظه اطلاعات بهطور اتوماتیک توسط رایانه تازه (به انگلیسی:Refresh) میشوند. به دلیل چگالی بیشتر دادهها و ارزان بودن RAM دینامیک پراستفاده است و در حافظه دسترسی تصادفی (به انگلیسی: RAM) از آن بیشتر استفاده میشود.
- (SRAM (Static RAM
(RAMاستاتیک): سرعت این نوع حافظه بالاتر از نوع دینامیک است. از این نوع RAM در حافظه نهان (به انگلیس:Cache) که بین حافظه اصلی و پردازنده قرار دارد، استفاده میشود.
حافظه فقط خواندنی
همانگونه که از نام حافظه فقط خواندنی (به انگلیسی: ROM) استفاده میشود، پردازنده نمیتواند به صورت خودکار اطلاعات موجود در این نوع حافظه را تغییر دهد، بلکه فقط میتواند آن را بخواند. هنگام خاموش شدن رایانه نیز این اطلاعات از بین نمیرود و ثابت میماند. سامانهٔ ورودی/خروجیِ پایه (به انگلیسی: Basic Input/Output System یا BIOS)که وظیفه تنظیمات ساختاری سختافزاری رایانه و همچنین آزمایش و راه اندازی قسمتهای گوناگون رایانه را به هنگام روشن شدن سیستم بر عهده دارد در این نوع حافظه قرار داده میشود.
ساخت مدارهای منطقی به کمک ROM و تراشههای همانند
ROM و ساختارهای همانند PROM وRAM از اعضای مهم خانواده تراشههای قابل برنامهریزی میباشند. توسط ROM هر نوع تابع ترکیبی را میتوان به وجود آورد زیرا که این تراشه در برگیرنده تمام عبارات حداقلی (Minterm) میباشد ولی نکتهای که نباید از نظر دور داشت این است که استفاده از ROM اضافه بر کاهش سرعت سیستم در خیلی از مواقع ممکن است نوعی به هدر دادن منابع بوده و ازلحاظ اقتصادی مقرون به صرفه نباشد چون کمتر مدارهایی وجود دارند که احتیاج به استفاده از چنین آرایههای بزرگی داشته باشند. در موارد زیر استفاده از حافظههای یاد شده به منظور پیادهسازی مدارهای منطقی میتواند مفید و مقرون به صرفه باشد.
- الف: زمانی که مسا له در ابتدا به صورت جدول درستی بیان شده باشد زیرا که محتویات جدول مذکور مستقیماً قابل پیاده شدن بر روی ROM میباشد و هیچ نیازی به پردازش و سادهسازی صورت مسئله نخواهد بود. جداول تبدیل انواع رمزها به یکدیگر(Look Up Tables) و کنترلرهای ریز برنامهای مثالهای مناسبی از این نوع مدارهای منطقی میباشند. در یک چنین حالاتی درست نخواهد بود که ساختاری که مستقیماً قابل پیاده شدن بر روی ROM است را به هم زده و پردازشهای گوناگون بر روی آن انجام دهیم به خاطر آن که بخواهیم جواب مسئله را با استفاده از دریچهها طراحی کرده یا به عبارتی آن را به صورت مجموع حاصلضربهای ساده شده درآوریم.
- ب: زمانی که تابع مورد نظر احتیاج به عوامل حاصل ضربی خیلی زیاد داشته که بیش از امکانات PLDهای موجود باشد یک چنین حالاتی معمولاً در مورد توابع حسابی پیش میآید.
- ج: مواردی که به منظور ساخت بلوکهای منطقی تغییرپذیر بوده و تعداد عوامل حاصلضربی مورد نیاز در تغییرات آینده قابل پیشبینی نباشد، در این مواقع استفاده از حافظهها یکی از راه حلهای مناسب خواهد بود.
- همان گونه که یادآور شدیم، کاربرد مورد الف در تبدیل رمزها به همدیگر است. مثلاً رایانههای بزرگ غالباً دادههای خود را به صورت رمز EBCDIC به سمت دستگاههای چاپگر میفرستند. حال اگر بنا باشد از یک دستگاه چاپگر ارزان PC به جای چاپگر ویژه بزرگ استفاده گردد باید رمز دادههای ارسالی را به ASCII تبدیل نمود، در یک چنین موردی جدول درستی تبدیل EBCDIC به ASCII مستقیماً قابل پیاده شدن بر روی ROM میباشد. رمز EBCDIC به عنوان آدرس ROM و رمز ASCII به عنوان محتویات ROM به حساب خواهند آمد.
مثال دیگر از این نوع، تبدیل رمز دودویی خالص Pure Binary داخلی سیستمهای میکروکنترلر به رمز BCD برای نمایش اطلاعات خروجی میباشد. با توجه به مطالب بالا میتوانیم نتیجهگیری کنیم که در توابعی که خروجیها به صورت مشابه با محتویات و ورودیها مشابه با ورودیهای آدرس حافظهها باشند، این تراشهها نامزدهای مناسبی برای پیادهسازی توابع یاد شده در بالا میباشند.
- به عنوان مثال اگر منظور ساخت یک علامت الکتریکی رقمی متشکل از ۱۶ وضعیت گوناگون در یک پریود خود باشد، میتوان از یک ROM، ۱۶ خانه تک رقمی استفاده نمود. پریود موج تولید شده شانزده برابر زمان لازم برای خواندن دادهها از روی ROM خواهد بود. خطوط آدرس این ROM توسط خروجیهای یک شمارنده ۱۶ حالتی طبیعی فرمان داده میشوند.
نام دیگری که در چنین مواردی برای ROM مورد استفاده قرار میگیرد، واژه PLE خلاصه شده عبارت Programmable Logic Element میباشد. این واژه به این دلیل برای نامیدن ROM مورد استفاده قرار میگیرد، که ROM به صورت اصولی یک تراشه تولید توابع منطقی نیز میباشد.
- یک ابزار نرمافزاری به همین منظور، یعنی کمک به پیادهسازی مدارهای منطقی به کمک ROM زمانی به بازار عرضه گردید که به نام' PLEASM 'که خلاصه شده Programmable Logic Element Assembler میباشد، نامیده میشد. این ابزار خصوصیات طرح منطقی مورد نظر را به صورت معادلات دودویی یا توابع حسابی قبول کرده و خروجی خود را به صورت جدول درستی که مستقیماً قابل پیاده شدن بر روی ROM یا به عبارتی PLE باشد آماده مینمود. ROMها را در ابعاد و سرعتها و تکنولوژیها گوناگون میسازند. انواع دو قطبی BIPOLAR آن با زمان دسترسی حدود ۱۰ نانو ثانیه و گونههای CMOS آن با حداقل زمان دسترسی تقریباً چندین برابر این مقدار در بازار وجود دارند. انواع قابل برنامهریزی (PROM) نیز وجود دارند که بعضی به توسط فیوزها برنامهریزی میشوند و قابل پاک شدن نیستند و بعضیها هم با پرتو فرابنفش قابل پاک شدن میباشند که به آنها EPROM گفته میشود.
در حافظههای PROMتمام بیتهای کلمات در ابتدا برابر ۱ هستند. برای داشتن صفر در کلمات حافظه میبایستی یک جریان پالسی در خروجیROM برای هر آدرس قرار داد بهطوریکه فیوزی که داخلPROM قرار داردمی سوزد. در این صورت آن بیتی که فیوز آن سوخته است دارای اطلاعات صفر میشود. به این ترتیب کاربر متناسب با نیاز در آزمایشگاه خودPROM را برنامهریزی میکند و در هر کلمه حافظه PROMاطلاعات مورد نظر را قرار میدهد. گونههای دیگری نیز وجود دارند که از لحاظ تکنیک ساخت و طرز کار ما بین ROM و RAM قرار میگیرند که از آن جمله میتوان از: E2PROM=Electrically Erasable Programmable Read Only Memory و Flash Memoryها نام برد.
مختصری در مورد E2PROM و Flash Memory
استفاده از این نوع حافظهها که از نوع غیر فرار'Nonvolatile 'بوده و یعنی از این لحاظ شبیه بقیه انواع ROM میباشند، زمانی به کار میآید که نیاز باشد تراشه بدون برداشته شدن از روی مدار قابل برنامهریزی مجدد باشد.
- Flash Memory از لحاظ تکنولوژی ساخت تلفیقی از روشهای ساخت حافظههای EPROM و E2PROM میباشد و در واقع مزایای هر یک از حافظههای یاد شده در بالا را دارا میباشد. Flash Memoryها میتوانند همانند E2PROMها به صورت الکتریکی پاک شوند با این تفاوت که اینها بر خلاف E2PROMها که خط به خط پاک میشوند به صورت یک جا تمام محتویات آنها قابل پاک شدن میباشد؛ و از این لحاظ شبیه EPROM میباشند. البته با این تفاوت که نوع اخیر توسط نور فرابنفش شدید در مدتی در حدود ۱۵ الی ۲۰ دقیقه پاک میشود. در صورتی که این عمل برای حافظههای از نوع Flash در یک لحظه خیلی کوتاه انجام میپذیرد و کل عمل پاک کردن و برنامهریزی دوباره در عرض چند ثانیه قابل انجام است؛ بنابراین از این لحاظ این نوع حافظه سریع تر از E2PROMها میباشد.
نکته دیگری که قابل توجه است، این که در این نوع از حافظه احتیاج به ایجاد پنجره شفاف جهت انجام عمل پاک کردن محتویات تراشه شبیه آنچه در EPROM موجود بود، نمیباشد و از این لحاظ ساخت تراشه ارزانتر تمام خواهد شد. حافظههای E2PROM و Flash معمولاً ولتاژ تغذیه دیگری علاوه بر تغذیه استاندارد ۵ ولتی نیز دارند که در مورد حافظههای یاد شده در بالا این ولتاژ در خیلی از مواقع حدود ۱۲ ولت بوده و برای انجام عمل نوشتن و پاک کردن مورد استفاده قرار میگیرد و با قطع آن محتویات داخلی تراشه ثابت خواهند ماند و به عبارتی در مقابل پاک شوندگی یا تغییرات ناخواسته اتفاقی مصونیت پیدا خواهند کرد. جدول ۱- نشان دهنده خواص عمده از خانواده حافظههای غیر فرار یعنی EPROM و E2PROM وFlash از دید مقایسهای میباشد.
E2PROM | FLASH | UVEPROM | وضعیت |
---|---|---|---|
الکتریکی بایت به بایت | الکتریکی به صورت یک جا | به صورت نور فرابنفش | پاک کردن |
بربایت | بربایت | بربایت | برنامهریزی |
۵ولت | ۵ و۱۲ ولت | ۵/۱۲ و۲۱ ولت | ولتاژ برنامهریزی |
در داخل سیستم | در داخل سیستم | به توسط دستگاه ویژه | روش برنا مه ریزی |
۱۰ثانیه | ۵ ثانیه | ۱۵ تا ۲۰ ثانیه | زبان برنامهریزی برای یک مگا بایت |
حافظههای Flash در خیلی از مواردی که به صورت معمول ازE2PROM و EPROM یا مجموعه SRAM و باتری یا DRAM و دیسک مغناطیسی استفاده میشود، کاربرد دارند و میتوانند جایگزین انواع بالا بشوند. هزینه برنامهریزی دوباره کمتر برای حافظه Flash از مزایای عمده این نوع تراشهها بوده و از این لحاظ کاربرد آنها در طولانی مدت به مراتب از کاربرد EPROM مقرون به صرفه تر است. یکی از عیوب این حافظهها تعداد محدود دفعات نوشتن و پاک کردن آنها میباشد که مقدار حداکثر آن در مدارک فنی سازندگان در حال حاضر ده هزار یاد میشود و این در حالی است که تعداد دفعات پاک کردن و برنامهریزی مجدد برای EPROMها در حدود یک هزار بار میباشد و از لحاظ نظری این رقم برای حافظههای RAM بینهایت میباشد. نکته دیگری که قابل بیان است این که تعداد E2PROMهای ساخته شده از لحاظ تنوع به مراتب از EPROMها کمتر میباشد.
- سرعت کار حافظهها به صورت سرعت دسترسی به اطلاعات آنها در زمان خواندن بیان میشود که به صورت پسوندی پس از شماره قطعه حافظه قید میگردد. مثلاً ۲۷C۵۱۲–۱۲۰ نشان دهنده یک نوع حافظه EPROM با ظرفیت ۵۱۲ کیلو بایت و با زمان دسترسی ۱۲۰ نانو ثانیه میباشد در صورتی که ۲۷C۵۱۲–۲۵۵ نشان دهنده همین نوع حافظه منتها با زمان دسترسی ۲۵۵ نانو ثانیه میباشد.
- نکته دیگری که در مورد حافظههای EPROM قابل ذکر است اینکه معمولاً برای هر نوع EPROM و ROM معادل نیز توسط سازندگان عرضه میشود و این بدان دلیل است که سازندگان دستگاه پس از اتمام دوره نمونهسازی و در دوران تولید انبوه بتواند EPROM خود را با ROM معادل که هم از نظر قیمت خیلی ارزانتر و هم از نظر پایداری اطلاعات ضبط شده خیلی بادوامتر و مطمئن تر میباشد جایگزین نمایند.
به عنوان مثال تراشه ROM ۲۳۳۲ معادل EPROM ۲۷۳۲ بوده و تراشه ROM 27X۵۱۲ معادل ۲۷C۵۱۲ که یک EPROM، ۵۱۲ کیلو بایتی است، میباشد. جدول۲- نشان دهنده تعدادی از EPROMهای معمول موجود در بازار و ROM مشابه آنها و بعضی از اطلاعات اساسی مربوطه میباشد. در دو ستون آخر این جدول نمونههایی از حافظههای E2PROM و Flash که از لحاظ ظرفیت و سازماندهی داخلی همانند EPROMهای هم ردیف خود میباشند، آمدهاند.
FLASHمشابه | E2PROM مشابه | ROM معادل | تکنولوژِی ساخت | سازماندهی داخلی | حجم اطلاعاتی | نوع تراشه |
---|---|---|---|---|---|---|
PCB۸۵۸۲ | ۲۵۶×۸bit | ۲k | ||||
۲۸۱۶ | ۲۰۴۸×۸bit | ۱۶k | ۲۷۱۶ | |||
۲۳۳۲ | ۴۰۹۶×۸bit | ۳۲k | ۲۷۳۲ | |||
۲۷×۶۴ | CMOS | ۸۱۹۲×۸bit | ۶۴k | ۲۷c۴۶ | ||
۲۷×۱۲۸ | CMOS | ۱۶۳۸۴×۸bit | ۱۲۸k | ۲۷c۱۲۸ | ||
۲۸f۲۵۶ | ۲۷×۲۵۶ | CMOS | ۳۲۷۶۸×۸bit | ۲۵۶k | ۲۷c۲۵۶ | |
۲۸f۵۱۲ | ۲۷×۵۱۲ | CMOS | ۶۵۵۳۶×۸bit | ۵۱۲k | ۲۷c۵۱۲ | |
۲۸f۰۱۰ | ۲۷×۱۰۲۴ | CMOS | ۱۳۱۰۷۲×۸bit | ۱M | ۲۷c۰۱۰ |
نوعی از EPROMها وجود دارند که به نام' OTP 'کوتاه شده عبارت One Time Programmable نامیده میشوند. این نوع همانطور که از نام آنها پیدا است فقط یک بار میتوانند برنامهریزی شوند. اینها معادل EPROMهایی با همان شماره قطعه میباشند با این تفاوت که فاقد پنجره شفاف بوده و جعبه آنها از پلاستیک یک تکه ساخته شده و طبیعتاً ارزانتر از EPROMهای پنجره دار (قابل پاک شدن) میباشند. پنجره شفافی که در EPROMهای معمولی وجود دارد از جنس کوارتز بوده و در موقع پاک کردن نور فرابنفش از آن عبور کرده و با سطح تراشه برخورد مینماید و در صورتی که شدت و زمان تابش پرتو کافی باشد سبب پاک شدن تراشه خواهد شد. برای پاک نمودن میبایست یک سطح زیاد از انرژی را به منظور شکستن الکترونهای منفی دریچه شناور (Floating Gate)استفاده کرد.
- دریک EPROM استاندارد عملیات بالا از راه پرتو فرابنفش با فرکانس ۲۵۳/۷انجام میگردد. برای حذف ازحافظهEPROM، باید قطعه را از محل خارج کرده و به مدت چند دقیقه زیر پرتو فرابنفش دستگاه پاککننده قرار داد از طریق دریچه کوارتز کلیه بارهای روی تراشه ناپدیدشده وآرایهORرا به حالت برنامهریزی نشده اش بازمیگرداند، اصطلاحاً اطلاعا ت EPROMپاک شدهاست. گر چه این بارها به اندازهٔ فیوزها دائمی نیستند ولی برای مدت ۱۰ سال محبوس باقی میمانند.
شکل زیر نشان دهنده شمای ساده شده یک سلول از حافظه نوع Flash میباشد. ساختمان این سلول بجز در مورد نحوه پاک شوندگی شباهت به سلول EPROM دارد و طریقه به تله انداختن بار الکتریکی در دریچه شناور نیز شبیه حالت EPROM میباشد. در موقع برنامهریزی ولتاژ دریچه کنترل و Drain بالا برده شده و Source به سمت Drain شده و در آنجا بعضی از این الکترونها پر انرژی شده و شباهت به الکترون آزاد پیدا میکنند و در اینجا این الکترونها تحت اثر ولتاژ مثبت اعمال شده از سوی دریچه کنترل به سمت آن جذب شده و در ضمن عبور از منطقه اکسید نازک در دریچه شناور به تله میافتند. الکترونهای به تله افتاده در دریچه شناور یک میدان الکتریکی ایجاد مینمایند که این میدان سبب قطع شدن ترانزیستور شده و سلول مربوطه به وضعیت صفر منطقی خواهد رفت.
- برای پاک کردن سلول این حافظه مشابه E2PROM عمل میشود. بدین طریق که ولتاژ مثبت بالایی به پایانه Source ترانزیستور وصل شده و دریچه کنترلی به زمین وصل میشود. میدان الکتریکی حاصل شده در این حالت سبب میشود که بار الکتریکی ذخیره شده در دریچه شناور از منطقه اکسید نازک عبور کرده (Fowler-Nordheim Tunneling) و از طریق Source به زمین برود. در زمان پاک کردن ولتاژ مثبت بالا همزمان به Source تمام سلولها متصل میشود و در نتیجه تمام سلولها با هم پاک میشوند. در حالت پاک شده چون دریچه شناور خالی از الکترون است، در نتیجه ترانزیستور روشن بوده و سلول حالت یک منطقی را از خود نشان خواهد داد.
حافظه جانبی
از حافظه جانبی برای ذخیرهسازی دائمی اطلاعات استفاده میشود. این حافظه از عناصر غیر الکترونیکی ساخته شده و قیمت آن ارزان و سرعت آن پایین است. برای اجرای یک برنامه از روی دیسک جانبی، اول باید برنامه در حافظه اصلیRAMقرار گیرد و سپس توسط CPU مورد پردازش قرار گیرد. برای نگهداری اطلاعات این نوع حافظه هیچ گونه انرژی مصرف نمیکند، اما برای ذخیرهسازی و فراخوانی اطلاعات نیاز به انرژی دارد.
حافظه غیر مغناطیسی
۱. کارت و نوار کاغذی: از کارتهای منگنه شده و رنگ شده و نوارهای کاغذی سوراخ شده (پانچ)، به عنوان محلی برای ذخیره اطلاعات استفاده میشود مانند پاسخ کارت کنکور. این حافظه توسط دستگاهی به نام کارت خوان خوانده میشود و سپس اطلاعات به حافظه رایانه منتقل میشود.
۲. دیسک نوری (Optical Disk): دیسکهای نوری نوع دیگری از حافظههای غیر مغناطیسی است. برای خواندن و نوشتن اطلاعات در این نوع دیسکها، از پرتو لیزر استفاده میشود.
CD: این دیسکها از صفحه دایره شکلی به قطر ۱۲ سانتیمتر ساخته شدهاند و میتوانند تاحدود ۷۰۰ مگا بایت اطلاعات را نگهداری کنند. به نوع متداول آن که فقط قابل خواندن است CD-ROM میگویند. بر نوع دیگری که به CD-R معروف است میتوان با استفاده از CD-Recorder یک بار اطلاعات وارد کرد و با استفاده از دیسک گردانهای CD-Rewriter بارها بر روی CD-RW اطلاعات نوشت و پاک کرد.
DVD: نوع جدیدتری از دیسکهای نوری به نام DVD-ROM در حال گسترش است. این دیسک، ظاهر و اندازهای شبیه سی – دی دارد، ولی برای آن ظرفیتهای ۴/۵ GB (یک رو – یک لایه) ۷/۹ (یک رو – دو لایه) ۱۵/۸ (دورو – دولایه) در نظر گرفته شدهاست.
حافظه مغناطیسی
در این نوع حافظهها، میتوان اطلاعات را به صورت نقاط مغناطیس شده نوشت (ذخیره کرد) یا خواند (بازیابی نمود). این اعمال، به وسیله شاخکهای خاصی که به آنها هد میگویند، انجام میپذیرد. هد از یک سیم پیچ هسته دار کوچک تشکیل شدهاست.
الف) نوار مغناطیسی: نوار مغناطیسی از یک نوار پلاستیکی که روی آن از یک ماده مغناطیس شونده مثل اکسید آهن پوشاندهاند، تشکیل شدهاست (شبیه نوار ضبط صوت با پهنای بیشتر). این نوارها امروزه به صورت کارتریج و در گذشته به صورت حلقهای مورد استفاده قرار میگرفتهاست. دسترسی به اطلاعات این حافظهها دسترسی ترتیبی است. یعنی به ترتیب اطلاعات باید بگذرند تا به اطلاعات مورد نظر برسیم، مثل نوار کاست.
ب) دیسک مغناطیسی: دیسکهای مغناطیسی صفحات گرد پلاستیکی، فلزی یا سرامیکی هستند که سطح آنها به وسیله ماده مغناطیس شونده مثل اکسید آهن پوشانیده میشود. اگر جنس دیسک مغناطیسی شده، پلاستیک باشد به آن دیسک نرم (Floppy Disk) و اگر فلز یا سرامیک باشند به آن دیسک سخت (Hard Disk) میگویند. دسترسی در این دیسکها مستقیم است یعنی هر اطلاعاتی را که خواستیم بتوانیم آن را از روی سطح دیسک انتخاب کنیم. همانند دسترسی به تراکهای یک MP۳. که سرعت اینگونه دسترسی بالاست.
۱-دیسک نرم (Floppy Disk): این نوع دیسکها قابل جابجایی است. امروزه اندازه استاندارد آن ۳٫۵ اینچ است. برای محافظت از آنها، دیسکتها را در پوششهایی به شکل مربع و از جنس پلاستیک سخت قرارمی دهند. اگر دکمه حفاظت در مقابل نوشتن بسته باشد میتوان روی دیسک نوشت و اگر باز باشد این کار امکانپذیر نیست. ظرفیت معمولی این دیسکها ۱٫۴۴MB است. نوع ۲٫۸۸MB آن هم وجود دارد اما متداول نیست. در دیسک گردانهای ۱٫۴۴ نمیتوان دیسکهای ۲٫۸۸ را خواند، اما در دیسک گردانهای ۲٫۸۸ میتوان از دیسکتهای ۱٫۴۴ استفاده کرد. دیسک گردان شکافی دارد که دیسک روی آن قرار میگیرد، سپس دیسک گردان، دیسک را با سرعت ۳۰۰ دور در دقیقه میچرخاند. ظرفیت دیسکهای مغناطیسی به سطح مفید و چگالی دادهها بستگی دارد. نخستین دیسکتها دارای چگالی مغناطیسی اندکی بودهاند که به اختصار به آنها SS-DD (یک رویه – چگالی مضاعف) میگفتند. چندی بعد کارخانههای سازنده، دیسکهای دورویه (DS) را ساختند که پس از آن دیسکهای ساخته شده به این مدلها هستند:
علامت اختصاری توضیح ظرفیت
DS-DD دورویه – چگالی مضاعف ۷۲۰ KB
DS-HD دورویه – چگالی بالا ۱٫۴۴ MB
DS-ED دورویه – چگالی خیلی بالا ۲٫۸۸ MB
۲. دیسک سخت (Hard Disk) : دیسک سخت یا هارد دیسک از یک یا چند صفحه گرد، از جنس آلیاژهای آلومینیوم یا سرامیک تشکیل شدهاست که بر روی یک محور درون محفظهای بسته (دیسک گردان) قرار دارند. این صفحه یا صفحهها به وسیله موتوری، حول محور دیسک گردان با سرعتی در حدود چند هزار دور در دقیقه میچرخد. یک یا چند بازوی دسترسی، بسته به تعداد رویه دیسک، هد یا هدها را در امتداد شعاع به جلو و عقب میبرد و به این ترتیب، اطلاعات روی هر شیار (TRACK) میتواند خوانده شود. گنجایش این دیسکها بالاست.
نیاز به سرعت دلیلی بر وجود حافظههای متنوع
چرا حافظه در کامپیوتر تا بدین میزان متنوع و متفاوت است؟ در پاسخ میتوان به موارد ذیل اشاره نمود:
پردازندههای با سرعت بالا نیازمند دستیابی سریع و آسان به حجم بالائی از دادهها به منظور افزایش بهرهوری و کارایی خود میباشند.. در صورتیکه پردازنده قادر به تأمین و دستیابی به دادههای مورد نیاز در زمان مورد نظر نباشد، میبایست عملیات خود را متوقف و در انتظار تأمین دادههای مورد نیاز باشد. پردازند ههای جدید وبا سرعت یک گیگا هرتز به حجم بالائی از دادهها (میلیارد بایت در هر ثانیه) نیاز خواهند داشت. پردازنده هائی با سرعت اشاره شده گرانقیمت بوده و قطعاً اتلاف زمان مفید آنان مطلوب و قابل قبول نخواهد بود. طراحان کامپیوتر به منظور حل مشکل فوق ایده «لایه بندی حافظه» را مطرح نمودهاند. در این راستا از حافظههای گرانقیمت با میزان اندک استفاده و از حافظههای ارزانتر در حجم بیشتری استفاده به عمل میآید. ارزانترین حافظه متداول، هارد دیسک است. هارد دیسک یک رسانه ذخیرهسازی ارزان قیمت با توان ذخیرهسازی حجم بالائی از دادهها است. با توجه به ارزان بودن فضای ذخیرهسازی دادهها بر روی هارد، دادهها مورد نظر بر روی آنها ذخیره و با استفاده از روشهای متفاوتی نظیر: حافظه مجازی میتوان به سادگی و بسرعت بدون نگرانی از فضای فیزیکی حافظه رم، از آنها استفاده نمود.
حافظه رم سطح دستیابی بعدی در ساختار نردبانی حافظهاست. اندازه بیت یک پردازنده نشاندهنده شمار بایت هائی از حافظهاست که در یک دم میتوان به آنها دستیابی داشت. برای نمونه یک پردازنده شانزده بیتی، توانا به پردازش دو بایت در هر دماست. مگاهرتز واحد سنجش سرعت پردازش در پردازندهها است و هم ارز «میلیون در هر ثانیه» است. برای نمونه یک رایانه ۳۲ بیتی پنتیوم ۳ با سرعت ۸۰۰ مگاهرتز، توانا به پردازش چهار بایت به گونه همزمان و ۸۰۰ میلیون بار در ثانیهاست. حافظه رم بهتنهایی دارای سرعت مناسب برای همسنگ شدن با سرعت پردازنده نیست از این رو است که از حافظه پنهان بهره گرفته میشود. روشن است هر اندازه که سرعت حافظه رم بالا باشد دلخواه تر خواهد بود. بیشتر تراشههای امروزه دارای سرعتی بین ۵۰ تا ۷۰ نانوثانیه میباشند. سرعت خواندن یا نوشتن در حافظه پیوند مستقیم با نوع حافظه بهره گرفته شده دارد. در این راستا میتوان از حافظههای DRAM ,SDRAM ,RAMBUS سود جست.
سرعت رم توسط پهنا و سرعت باس، کنترل میگردد. پهنای باس، تعداد بایتی که میتواند بهطور همزمان برای پردازنده ارسال گردد را مشخص و سرعت باس به تعداد دفعاتی که میتوان یک گروه از بیتها را در هر ثانیه ارسال کرد اطلاق میگردد. سیکل منظم حرکت دادهها از حافظه به سمت پردازنده را چرخه میگویند مثلاً یک گذرگاه با وضعیت: ۱۰۰ مگاهرتز و ۳۲ بیت، به صورت تئوری قادر به ارسال چهار بایت به پردازنده و یکصد میلیون مرتبه در هر ثانیهاست. در حالیکه یک گذرگاه شانزده بیتی ۶۶ مگاهرتز به صورت تئوری قادر به ارسال دو بایت و ۶۶ میلیون مرتبه در هر ثانیهاست. با توجه به مثال فوق مشاهده میگردد که با تغییر پهنای گذرگاه از شانزده به سی و دو و سرعت از ۶۶ مگاهرتز به ۱۰۰ مگاهرتز سرعت ارسال داده برای پردازنده سه برابر گردید.
ثبّات (رجیستر) و حافظهٔ پنهان
با توجه به سرعت بسیار بالای پردازنده حتی در صورت استفاده از «گذرگاه» Bus عریض و سریع همچنان مدت زمانی طول خواهد کشید تا دادهها از حافظه رَم برای پردازنده ارسال گردند. حافظه پنهان یا «کَش» Cache با این هدف طراحی شدهاست که دادههای مورد نیاز پردازنده را که احتمال استفاده از آنان بیشتر است، در دسترس تر قرار دهد. عملیات فوق از طریق بکارگیری مقدار اندکی از حافظه پنهان که اولیه Primary یا «سطح ۱» Level ۱ نامیده میشود صورت میپذیرد. ظرفیت حافظههای فوق بسیار اندک بوده و از دو کیلو بایت تا ۵۱۲ کیلو بایت را، شامل میگردد. نوع دوم حافظه پنهان که ثانویه Secodray یا «سطح ۲» level ۲ نامیده میشود بر روی یک کارت حافظه و در مجاورت پردازنده قرار میگیرد. این نوع حافظه پنهان دارای یک ارتباط مستقیم با پردازندهاست. یک مدار کنترلکننده اختصاصی بر روی برد اصلی که «کنترلکننده L۲» نامیده میشود مسئولیت عملیات مربوط را برعهده خواهد گرفت. با توجه به نوع پردازنده، اندازه حافظه فوق متغیر بوده و دارای دامنهای بین ۲۵۶Kb تا چند مگابایت است. برخی از پردازندههای با کارایی بالا اخیراً این نوع حافظه پنهان را به عنوان جزئی جداناپذیر در کنار خود دارند. (بخشی از تراشه پردازنده) در این نوع پردازندهها با توجه به اینکه Cache بخشی از پردازنده محسوب میگردد، اندازه آن متغیر بوده و به عنوان یکی از مهمترین شاخصها در کارایی پردازنده مطرح است.
نوع دیگری از رَم با نام حافظه دسترسی تصادفی ایستا (SRAM) نیز وجود داشته که در آغاز برای حافظه پنهان استفاده میگردید. این نوع حافظهها از چندین ترانزیستور (معمولاً چهار تا شش) برای هر یک از سلولهای حافظه خود استفاده مینمایند. حافظههای فوق دارای مجموعهای از فلیپ فلاپها با دو وضعیت خواهند بود؛ بنابراین حافظههای فوق قادر به بازخوانی اطلاعات به صورت پیوسته نظیر حافظههای حافظه دسترسی تصادفی پویا (DRAM) نخواهند بود. هر یک از سلولهای حافظه مادامیکه منبع تأمین انرژی آنها فعال (On) باشد دادههای خود را ذخیره نگاه خواهند داشت. در این حالت ضرورتی به بازخوانی دادهها به صورت پریودیک نخواهد بود پ. سرعت حافظههای فوق بسیار بالا است پ، ولی به دلیل قیمت بالا، در حال حاضر به عنوان جایگزینی استاندارد برای حافظههای رَم مطرح نمیباشند.
انبار شیشهای ذخیره دادهها
حجم دانستههایی که هر روزه تولید و عرضه میشود واقعاً در حدی انفجار آمیز است؛ ولی از منظر بایگانی و حفظ این دادهها برای نسلهای آینده، بشر حقیقتاً از زمان سنگ نوشتهها به این سو پیشرفت چندانی نداشتهاست؛ بنابراین احتمال از دست رفتن اطلاعات به نسبت گذشتهها افزایش یافتهاست.
طول عمر ابزارهای بایگانی دیجیتال که تا امروزه در دسترس ما بودهاند، از سی دی و ام پی تری گرفته تا حافظههای کامپیوتری، هیچکدام بیشتر از چند دهه یا حداکثر یک قرن نیست. از سوی دیگر تحول و سرعت اختراعات در فناوریهای دیجیتال باعث شده که ابزارهای خوانش یا خواندن این دادهها همواره در حال تغییر باشند.
به همین خاطر با گذشت چند دهه اکنون بخش زیادی از محصولات صوتی و تصویری که روی فیلمهای سینمایی قدیمی یا نوارهای کاست ضبط شدهاند دیگر به راحتی قابل دسترسی نیستند.
سالها پیش به هنگام عرضه سی دی به بازار خیلیها تصمیم گرفتند کلکسیون موسیقی خود را از صفحات گرامافون به سی دی منتقل کنند اما بعد مشخص شد که سی دی نیز عمری محدود دارد. بعد از آن سیستم ضبط و بایگانی Mp3 ام پی تری به بازار آمد ولی ثابت شد که هیچیک از آنها عمری ابدی ندارند.
روش جدید ذخیرهسازی دادهها
در روش جدید، دادهها روی صفحات شیشهای از جنس کوارتز بایگانی شده و به خاطر مقاومت آن در برابر دمای شدید و شرایط نامناسب برای ابد محفوظ خواهند ماند. فناوری جدید با نقطهگذاری مضاعف (دو تایی) در ورقهای شیشهای که از ماده کوارتز ساخته شدهاند دادهها را به شکلی ذخیره میکند که خواندن آن توسط یک میکروسکوپ امکانپذیر است. با کمک یک کامپیوتر ساده که بتواند این نقطه گذاریهای مضاعف (دوتایی) را بخواند دانستههای ذخیره شده در این لوح شیشهای همیشه قابل دسترس خواهند بود. مهم نیست که به مرور زبان کامپیوترها چقدر پیچیده شوند فقط کافی است که کامپیوتر مورد نظر امکان آن را داشته باشد تا برنامه مخصوص برای خواندن این دادهها را دریافته و به کار بگیرد.
مساحت این لوح یا چیپ حدود هشت سانتیمتر مربع و ضخامت ن فقط دو میلیمتر است و ا از جنس شیشه کوارتز ساخته شده که ماده بسیار مقاومی است.
این لوح یا چیپ در برابر بسیاری از مواد شیمیایی و امواج رادیویی آسیبناپذیر است و میتواند گرمای شدیدی تا مرز هزار درجه سانتیگراد را به مدت دو ساعت تحمل کند. در عین حال در مقابل آب نیز مقاوم است و به این ترتیب میتواند از سوانح طبیعی مثل آتشسوزی یا سیل و بارانهای شدید جان سالم به در ببرد.
در نمونههای اولیه و آزمایشی که از این محصول ساخته شده میتوان دو لایه نقطهگذاری را جا داد که به این ترتیب ظرفیت بایگانی آن حدود ۴۰ مگابایت در هر سانتیمتر مربع است.
واحد های حافظه
- b
- B
- KB
- MB
- GB
- TB
- PB
- EB
- ZB
- YB
- AB
- BB
- CB
- DB
- FB
- HB
- IB
- JB
- LB
- NB
- OB
- QB
- RB
- SB
- UB
- VB
- WB
- XB