রম

রম বা রীড-অনলি মেমোরি (ইংরেজি: Read-only memory (ROM)) হল এক ধরনের সংরক্ষণ মাধ্যম যা কম্পিউটার এবং অন্যান্য ইলেক্ট্রনিক যন্ত্রে ব্যবহার করা হয়। রমে যে তথ্য থাকে তা পরিবর্তন করা যায় না বা করা গেলেও তা খুব ধীরে অথবা করা কঠিন। তাই এটি ব্যবহার করা হয় প্রধানত র্ফামওয়্যারে। অন্যান্য আরও যেসব নন-ভোলাটাইল বা বিদ্যুত চলে গেলেও যার তথ্য থেকে যায় এমন মেমোরি হল ইপিআরওএম, ইইপিআরওএম বা ফ্লাশ মেমোরি। এগুলোকে কোন কোন সময় রম বলা হয় কিন্তু এটি ঠিক নয় বা ভুল ধারণা কারণ ইপিআরওএম বা ইইপিআরওএমমগুলোকে মুছা যায় এবং আবার প্রোগ্রাম করা যায়। জ্যাকার্ড লুমসে (Jacquard looms) রম ব্যবহৃত হত। সাধারণ ধরনের সলিড স্টেটের রম সেমিকন্ডাক্টর প্রযুক্তির মতই পুরনো। আরবিট্রেরি তথ্য বা ভেল্যুর এম-বিটের তথ্য আউটপুট হিসেবে কম্বিনেশনাল লজিক গেট ব্যবহার করে এন-বিট ঠিকানা ইচ্ছানুযায়ী ইনপুট দেয়া যায়। ইন্টিগ্রেটেড সার্কিট আবিষ্কারের পর মাস্ক রমের উদ্ভব হয়। মাস্ক রম হল আসলে কিছু শব্দের লাইন (যাতে ঠিকানার ইনপুট থাকে) এবং বিট লাইনের (যাতে আউটপুট তথ্য থাকে) সমষ্টি। এগুলো বাছাইকরা কিছু ট্রানজিষ্টর সুইচের সাথে যোগ করা থাকে এবং আরবিট্রেরি লুক-আপ টেবিল (সাধারণ লেআউট) এবং পূর্বানুমান করা যায় এমন প্রোপগেশন ডিলেকে প্রকাশ করে থাকে। মাস্ক লেআউটে সার্কিট তথ্য এনকোড করা হয় আগে পরে তৈরীর সময় প্রোগ্রামিং করা হয়। এর ফলে কিছু অসুবিধা দেখা দেয় যেমন: ১. শুধুমাত্র বেশি পরিমানে কিনলেই দামে সস্তা হয়, এবং ব্যবহারকারীদেরকে সরাসরি উৎপাদকদের সাথে যোগাযোগ করতে হয় তাদের ইচ্ছানুযায়ী রমের জন্য ২. উৎপাদন সময় বেশি লাগে যেহেতু দুই পর্যায়ে এটা করা হয় এবং উভয় পর্যায়ই ধীর। ৩. এটি গবেষণা এবং উন্নয়নের জন্য অনুপযোগী কারণ এতে দ্রুতই নকশা পরিবর্তন করা লাগে। ৪. কোন পণ্য যদি ঠিকভাবে প্রস্তুত না হয় বা বিক্রির পর ভুল ধরা পড়ে, পন্যটি সরাসরি উৎপাদকদের কাছ থেকে পরির্বতন করার প্রয়োজন হয়। পরবর্তী উন্নয়নগুলোতে এই সব সমস্যা ঠিক করার ব্যবস্থা নেয়া হয়। ১৯৫৬ সালে আবিষ্কৃত পিআরওএম, ব্যবহারকারীদের বিষয়বস্তু প্রোগ্রাম করার সুযোগ দিত একবার উচ্চ বৈদ্যুতিক ভোল্টেজ পালস ব্যবহার করে। এটি এক ও দুই নম্বর সমস্যার সমাধান দেয় যেহেতু একটি কোম্পানী পিরম অর্ডার করতে পারে সহজেই এবং পরে সেগুলোতে নিজেদের বিষয়বস্তু অনুযায়ী প্রোগ্রাম করতে পারে। ১৯৭১ সালে আবিষ্কৃত ইপিআরওএম ৩ নম্বর সমস্যাটির সমাধান দেয়। ইপিরমকে আবার আগের প্রোগ্রামহীন বা শূন্য অবস্থায় আনা যেত উচ্চ মাত্রার আল্ট্রাভাইয়োলেট লাইট ব্যবহার করে। ১৯৮৩ সালে আবিষ্কৃত হয় ইইপিআরওএম, এটি ৪ নম্বর সমস্যার সমাধান করে কারণ ইইপিরম যেকোন জায়গায় বাহ্যিক কোন প্রোগ্রামিং বিষয়বস্তু সিরিয়াল কেবল ব্যবহার করে প্রোগ্রাম করা যায়। ফ্ল্যাশ মেমোরি তোশিবা আবিষ্কার করে ১৯৮০ দশকের মাঝামাঝি এবং বাজারে ছাড়ে ১৯৯০ দশকের শুরুর দিকে। এটি একধরনের ইইপিরম যেটি চিপের জায়গার দক্ষ ব্যবহার নিশ্চিত করে এবং মুছে আবার প্রোগ্রাম করা যায় হাজারবার চিপের কোন ক্ষতি না করেই। এইসব প্রযুক্তি যদিও রমের কার্যক্ষমতা বাড়িয়েছে তবুও সস্তা দরের চিপ হিসেবে মাস্ক রম তখনও বড়ধরনের পছন্দ ছিল ক্রেতাদের নিকট (পুনরায় প্রোগ্রাম করা যায় এমন যন্ত্রগুলোর দাম কমে আসে ২০০০ সালের দিকে এবং মাস্ক রমের বাজার দখল করে নেয়)। আরও বলতে গেলে, নতুন প্রযুক্তির রমগুলো শুধুমাত্র রিড-অনলি না হওয়াও একটি কারণ। সাম্প্রতিক উন্নয়ন করা এনএএনডি ফ্ল্যাশের (তোশিবার তৈরী) নকশাকারীগন দাবী করেন তারা আগের সবধরনের নিয়ম তুলে ফেলেছেন তারা আরও বলেছেন “এটি হার্ড ডিস্কের বিকল্প” আগে যেটি নন-ভোলাটাইল প্রাথমিক মেমোরি ছিল। ২০০৭ সাল অনুযায়ী, এনএএনডি এই দাবির কিছু অর্জন করে যেটিতে উচ্চ মাত্রার সহন শক্তি, আকারে ছোট, কম বিদ্যুত ব্যবহার ইত্যাদি বৈশিষ্ট্য ছিল। যেহেতু রমের তথ্য সহজে পরিবর্তন করা যায় না, তাই সেইসব তথ্যই এতে লিখা হয় যা সহজে পরিবর্তন করার দরকার হয় না। এই কারণে রমকে বিভিন্ন কম্পিউটারে লুক-আপ টেবিল (গাণিতিক এবং যুক্তিমূলক কাজসমূহের কাজে ব্যবহৃত) সংরক্ষণ করার কাজে ব্যবহার করা হয়। এটি খুবই কার্যকরী হয় যখন সিপিইউর গতি কম এবং র‍্যামের দাম বেশি হয় রমের তুলনায়। উল্লেখ্য,ব্যক্তিগত কম্পিউটারের পুরনো ডিসপ্লে এডাপ্টারগুলো বিটম্যাপ ফন্টের তথ্য রমে সংরক্ষণ করত। এটা দ্বারা বুঝা যায় যে, ডিসপ্লের ফন্টগুলো সহজে পরিবর্তন করা যেত না। আইবিএম ব্যক্তিগত কম্পিউটার এক্সটির সিজিএ এবং এমডিএ এডাপ্টারগুলোর ক্ষেত্রেও এটা একই। আধুনিক যুগের কম্পিউটারগুলোতে রমে তথ্য সংরক্ষণের বিষয়টি আর করা হয় না। যাই হোক, ফ্ল্যাশ রমগুলো এখন তথ্য সংরক্ষণ মাধ্যম অথবা দ্বিতীয় সংরক্ষণ মাধ্যম হিসেবে ভূমিকা পালন করে। রম... মাস্ক প্রোগ্রামড রম হল ইন্ট্রিগ্রেটেড সার্কিট যেটা নিজে কোন তথ্য এনকোড করে সংরক্ষণ করে এবং এগুলো উৎপাদনের পরে পরিবর্তন করা অসম্ভব। অন্যান্য ধরনের নন-ভোলাটাইল সলিড-স্টেট মেমোরি কিছু কিছু ক্ষেত্রে পরিবর্তনের সুযোগ দেয়। প্রোগ্রামেবল রীড-অনলি মেমোরি (পিআরওএম) অথবা ওয়ান-টাইম প্রোগ্রামেবল রম (ওটিপি) যা একবারই প্রোগ্রাম করা যায় এমন রমে প্রোগ্রামিং করা হয় বিশেষ যন্ত্র দিয়ে যাকে পিরম প্রোগ্রামার বলে। চিপের মধ্যকার আন্তঃসংযুক্ত লিংক বা সংযোগে উচ্চ মাত্রার ভোল্টেজ সরবরাহ করে স্থায়ীভাবে কোন কিছু তৈরী বা মুছে ফেলা হয়। ফলে এটাতে একবারই প্রোগ্রাম করা যায়। ইরেজেবল প্রোগ্রামেবল রীড-অনলি মেমোরি (ইপিআরওএম) শক্তিশালী অতিবেগুনী রশ্মির আলোতে উন্মুক্ত করে (সাধারণত ১০ মিনিট বা তারও বেশি) মুছা হয় এবং আবার প্রোগ্রাম লিখা হয়। পরেরবার মুছার সময় প্রথমবার যে শক্তি প্রয়োগ করে মুছা হয়েছিল তারচেয়ে বেশি শক্তি বা বেশি সময় ধরে রাখতে হয়। বারবার অতিবেগুনী রশ্মিরআলোতে উন্মুক্ত করার ফলে রম ক্ষতিগ্রস্ত হয় বা ব্যবহার অনুপযোগী হয়ে পড়ে। কিন্তু দীর্ঘস্থায়ী রমগুলো ১০০০ বা তার উপরে মুছা যায় এবং প্রোগ্রাম করা যায়। ইপিআরওএম চেনা যায় রমের মধ্যে একটি "জানালা" আকারের খালি জায়গা থাকে যেটা দিয়ে অতিবেগুনী রশ্মির আলো প্রবেশ করে। প্রোগ্রামিং করার পরে এটি লেভেল দিয়ে ঢাকা থাকে যাতে অনাকাঙ্খিত কোন কিছু না ঘটে এবং পুনব্যবহারের জন্য। ইলেক্ট্রিক্যালি ইরেজেবল প্রোগ্রামেবল রীড-অনলি মেমোরি (ইইপিআরওএম) ইপিআরওএম এর মতই এর সেমিকন্ডাক্টরের গঠন কিন্তু এটিতে নিদির্ষ্ট বা পুরো অংশই বৈদ্যুতিক শক্তি প্রয়োগ করে মুছা যায় এবং প্রোগ্রাম করা যায়। এতে করে এগুলোকে খুলতে (কম্পিউটার, এমপিথ্রী প্লেয়ার, ক্যামেরা প্রভৃতি) হয় না। ইইপিরমে লিখা বা ফ্ল্যাশ করা খুবই ধীর গতির র‍্যামের চেয়ে। ইলেক্ট্রিক্যালি অলটারেবল রীড-অনলি মেমোরি (ইএআরওএম) হল একধরনের ইইপিআরওএম যা একবার এক বিট করে পরিবর্তন করা যায়। লিখা খুবই সময়সাপেক্ষ এবং হাই ভোল্টেজের প্রয়োজন হয় (প্রায় ১২ ভোল্টের মত)। এই রম সেইসব যন্ত্রগুলোতে ব্যবহার করা হয় যেগুলো পুনপুন লিখার প্রয়োজন হয় না বা কম প্রয়োজন হয়। ফ্ল্যাশ মেমোরি হল আধুনিক ইইপিআরওএম (১৯৮৪ সালে আবিষ্কৃত)। এটি ইইপিআরওএম এর তুলনায় দ্রুত মুছা যায় এবং লিখা যায় সেই সাথে দীর্ঘস্থায়ীও (১০,০০,০০০ চক্রের বেশি)। আবার আধুনিক এনএএনডি ফ্ল্যাশের (২০০৭ সালে ঘোষিত) একটি আইসির ধারণক্ষমতা ৩২ জিবির মত যেটি চিপের কার্যক্ষম ব্যবহার নিশ্চিত করে। কিছু কিছু পন্যে ন্যান্ড ফ্ল্যাশ চৌম্বকের পরিবর্তে ব্যবহৃত হয় যেমন ইউএসবি ফ্ল্যাশ ড্রাইভ। যখন পুরনো রমের পরিবর্তে ব্যবহৃত হয় তখন একে ফ্ল্যাশ ইইপিআরওএম বা ফ্ল্যাশ রম বলা হয় কিন্তু যেসব ক্ষেত্রে পুনপুন পরিবর্তন করা হয় এবং দ্রুত হয় সেসব ক্ষেত্রে ফ্ল্যাশ মেমোরি বলা হয়। রাইট প্রোটেকশন বা লিখন নিরপত্তার কারণে কিছু কিছু পুনপ্রোগ্রাম করা যায় এমন রম অস্থায়ীভাবে রমে পরিনত হয়। আরও অন্যান্য ধরনের নন-ভোলাটাইল মেমোরি আছে যেগুলো সেমিকন্ডাক্টর প্রযুক্তির নয়, যেমন- অপটিকাল সংরক্ষণ মাধ্যম, যেমন সিডি-রম যেটা দিয়ে শুধু মাত্র পড়া যায়। সিডি-আর এটিতে একবার লিখা যায় বারবার পড়া যায় যেখানে সিডি-আরডব্লিউ দিয়ে একাধিকবার লিখা এবং পড়া যায়। ডায়োড ম্যাট্রিক্স রেজিস্টর, ক্যাপাসিটর অথবা ট্রান্সফরমার ম্যাট্রিক্স রম কোর রপ ক্যারেক্ট্রন ক্যাথোড রে টিউবস যদিও র‍্যাম এবং রমের গতি সময়ের সাথে পরিবর্তিত হয়েছে তবুও ২০০৭ সাল অনুযায়ী বড় র‍্যাম চিপগুলো রমের চেয়ে দ্রুত পড়া যায়। এইকারণে রমের কিছু অংশ র‍্যামে কপি করা হয় অথবা ছায়া হিসেবে ব্যবহার করা হয় যখন প্রথম করা হয় এবং র‍্যাম থেকেই পড়া হয়। যেসব রমে লিখা যায় সেগুলোর লিখার গতি খুবই ধীর পড়ার তুলনায় এবং হয়ত উচ্চ মাত্রার ভোল্টেজের প্রয়োজন হয় জাম্পার প্লাগে লিখার সিগনাল পাঠানোতে এবং বিশেষ লক/আনলক নির্দেশ দিতে। আধুনিক ন্যান্ড ফ্ল্যাশ লিখার ক্ষমতায় সবচেয়ে এগিয়ে আছে, এর গতি প্রায় ১৫ এমবি সেকেন্ডে। যেহেতু এগুলোতে লিখা হয় ইলেক্ট্রিক্যাল ইনসুলেশন স্তরের মাধ্যমে ইলেক্ট্রনগুলোকে বল প্রয়োগ করে। সেইকারণে রিরাইটেবল বা পুনরায় লিখন উপযোগী আরওএম গুলোর ইনসুলেশন স্তর ক্ষতিগ্রস্ত হওয়া পযর্ন্ত লিখা যায়। পুরনো ইএআরওএম গুলোতে এটা হত ১০০০ বার লিখার পর যেখানে আধুনিক ইইপিআরওএম এর বেলায় তা ১,০০০,০০০ বার কিন্তু এটা অসীম নয়। রমের পড়ার বিষয়টি লিখার সাথে সর্ম্পকিত নয়। ইপিআরওএম, ইএআরওএম, ইইপিআরওএম এবং ফ্ল্যাশ মেমোরিতে তথ্য সংরক্ষণ সীমাবদ্ধ হতে পারে যদি ফ্লোটিং গেট (মেমোরির) ক্ষতিগ্রস্ত হয়। অত্যধিক উচ্চতাপ এবং রেডিয়েশনের কারণে এটি ক্ষতিগ্রস্ত হতে পারে। মাস্ক রম এবং পিআরওএম গুলো এই সমস্যায় পড়ে না যেহেতু এগুলোর তথ্য সংরক্ষণ হয় ইন্টিগ্রেটেড সার্কিটে। ইইপিআরওএম ইপিআরওএম ফ্ল্যাশ মেমোরি পিআরওএম র‍্যান্ডম অ্যাক্সেস মেমোরি ইইপিআরওএম: ইলেক্ট্রিক্যালি ইরেজেবল প্রোগ্রামেবল রীড-অনলি মেমোরি ইপিআরওএম: ইরেজেবল প্রোগ্রামেবল রীড-অনলি মেমোরি পিআরওএম: প্রোগ্রামেবল রীড-অনলি মেমোরি "Definition of: flash ROM, PC Magazine."। ১০ নভেম্বর ২০১৩ তারিখে মূল থেকে আর্কাইভ করা। সংগ্রহের তারিখ ২ সেপ্টেম্বর ২০২১।  "History of Computation - Babbage, Boole, Hollerith"। Paul E. Dunne।  See page 6 of Toshiba's 1993 NAND Flash Applications Design Guide ওয়েব্যাক মেশিনে আর্কাইভকৃত ১০ মার্চ ২০০৪ তারিখে.