マスクROM(Read-Only Memory)は、コンピュータシステムで使用される記憶装置の一種で、記録されている内容を書き換えることができない不揮発性メモリのことを言います。
1.マスクROMの概要
マスクROMは集積回路の配線によって記憶情報を構成し、読み出せる内容が半導体製造に用いるフォトマスクによって固定されることから、マスクROMと呼ばれています。一般にCPUの主記憶の一部として利用されていますが、外部記憶装置の形で利用される事も多いです。 大量生産時にチップ単価を安く抑えられる点から、数量が多く出る(数万台以上の出荷が見込める)ゲーム機のソフトや組み込み機器で多く使用されています。
近年の組み込み機器に関してはマスクROM特有のデメリットから、近年はマスクROMの代わりに、書き換え可能なメモリ技術であるフラッシュメモリやEEPROM(Electrically Erasable Programmable Read-Only Memory)が広く使用されるようになりました。これらのメモリは、データの書き換えや再プログラムが可能であり、柔軟性が求められるアプリケーションに適しています。
(*)不揮発性メモリ:簡単に言いますと、コンピュータの電源を切ってもメモリの中身が消えないメモリの事です。
逆に電源を切るとメモリの中身が消えてしますメモリを揮発性メモリと言います。
(*)フォトマスク:ガラス乾板とも呼ばれております、電子部品の製造工程で使用されるパターン原版をガラス・石英等に形成した透明な板の事で、「フォトリソグラフィ」と呼ばれる転写技術によって電子部品の回路パターン等を被転写対象に転写する際の原版となるものことです。
2.マスクROMの用途
2-1 ファームウェア:
マスクROMは、デバイスやシステムのファームウェアを格納するために広く使用されています。ファームウェアは、特定のハードウェアやソフトウェアの動作を制御するためのプログラムです。マスクROMにファームウェアをプログラムすることで、製品の起動時に必要な命令やデータが提供されます。例えば、スマートフォンや家電製品のファームウェアは、マスクROMに格納されることがあります。
2-2 ゲームカートリッジ:
マスクROMは、ゲームカートリッジ内に使用されることがあります。ゲームカートリッジは、ゲーム機やコンピュータ上で実行されるゲームのデータを保持するメディアです。マスクROMを使用することで、ゲームのプログラムやグラフィックス、音楽などのデータをカートリッジにプリインストールすることができます。
2-3 コンピュータのブートストラップ:
マスクROMは、コンピュータのブートプロセスにおいて重要な役割を果たします。コンピュータの電源が入った直後、マザーボード上のマスクROMに格納されたブートストラップコードが実行されます。このコードは、オペレーティングシステムや他のブート可能なデバイス(ハードディスク、USBドライブなど)を特定し、ロードするための初期化手順を提供します。
2-4 組み込みシステム:
マスクROMは、組み込みシステムにおいて広く使用されます。組み込みシステムは、特定の機能を実行するために設計されたコンピュータシステムであり、一般的には特定のアプリケーションやデバイスに組み込まれます。マスクROMには、組み込みシステムの制御プログラムやデータが格納され、特定のタスクや制御手順を実行するために使用されます。例えば、自動車の制御システムや医療機器などが挙げられます。
2-5 セキュリティ:
マスクROMは製造時に不可逆的にデータが書き込まれるため、物理的な攻撃やソフトウェアの介入によってメモリの内容を変更することができません。これにより、マスクROM内のデータの完全性が保証されます。したがってマスクROMは、物理的な攻撃に対して情報の保護を提供しますので不正なソフトウェアの挿入やマルウェアの実行などの攻撃から保護する事で機密データの漏洩を防止します。
これらはマスクROMの主な使用用途の一部です。マスクROMは、一度書き込まれたデータを保持するため、信頼性が高く、電源供給がなくてもデータを保持できる特徴があります。何より後から一度書き込んだデータを変更する事が出来ないのも大きな特徴です。
そのため、さまざまな領域で幅広く利用されています。
3.マスクROMの長所と短所
3-1長所について
①高い信頼性:
マスクROMは情報が一度プログラムされると、電源がない状態でも情報が保持されるため、高い信頼性を持ちます。データの消失や書き換えのリスクがほとんどありません。
②高速なアクセス時間:
マスクROMはハードウェア的に実装されるため、データへのアクセス時間が非常に短くなります。情報は物理的に配線されているため、電子信号の遅延が少なく、高速なデータアクセスが可能です。
③低コスト:
マスクROMは大量生産に適しており、製造コストが比較的低いです。一度製造が完了すれば追加のコストはほとんどかかりません。したがって、大量生産される製品においてコスト効率の良いメモリとなります。
3-2短所について
①プログラムの変更が不可能:
マスクROMは一度プログラムされると、そのデータを変更することができません。新しい情報や修正が必要な場合には、新たなマスクROMの設計と製造が必要です。そのため、プログラムの変更が頻繁に必要な場合には適していません。バグフックスが完了していない設計初期の段階の製品等も使用にてきしません。
②ボリュームプロダクションへの制約:
マスクROMは大量生産に最適ですが、小規模なプロダクションや試作品の開発には向いていません。マスクROMの製造には初期費用がかかり、設計の変更や修正には追加の費用がかかるため、小規模なプロジェクトにはコスト的に負担がかかる場合があります。
③フレキシビリティの欠如:
マスクROMはデータを物理的に固定するため、柔軟性や拡張性に制約があります。データのレイアウトや構造の変更には、再設計と製造が必要となります。そのため、将来のデータの変更や新しい要件への対応に制約が生じる場合があります。
4.マスクROMの種類につて
4-1 Programmable Read Only Memory(PROM)(プログラマブルROM):
PROMは、デバイスの製造時に一度だけ書き込まれることができるROMです。データは不揮発性で、電源が切れても保持されます。データが書き込まれた後は、読み取り専用となります。PROMは低コストで大量生産が可能ですが、一度書き込むとデータを変更することはできません。
4-2Erasable Programmable Read Only Memory(EPROM)エラザブルプログラマブルROM:
EPROMは、データを複数回書き込むことができるROMです。書き込むためには、特殊な消去手順が必要です。EPROMは紫外線を照射してデータを消去し、新しいデータを書き込むことができます。EPROMはデータの再プログラミングが可能ですが、書き込みや消去には特別な装置が必要ですしメモリの一部分だけを修正する事はできません。すべてのデータを一旦消去して新しいプログラムを書込むことになります。
4-3Electrically Erasable Programmable Read-Only Memory(EEPROM)エレクトリックアレーシングプログラマブルROM:
EEPROMは、電気信号を使用してデータを書き込みおよび消去することができるROMです。EPROMとは異なり、紫外線照射は必要ありません。EEPROMは一般的にコンピュータや周辺機器で使用され、データの書き換えが必要な場合に便利です。EEPROMは書き込みおよび消去が電気的に行われるため、より簡単に操作できます。厳密にはマスクROMの種類とは言えないかもしれませんがご参考までに説明させて頂きました。
おまけ:マスクROMではありませんが、ワンチップマイコン(弊社で使用のマイコン)に内蔵されているROM(EEPROM)は何度も書き換える事ができますが、外部から読み出すことは構造的にできない構造になっているので秘匿性の面では大変有効です。