プログラマブル読み出し専用メモリ(PROM)は、デバイスの製造後に内容が設定されるデジタルメモリの一種です。一度設定されると、その内容は永続的に保持されます。PROMは読み出し専用メモリ(ROM)の一種です。PROMは通常、ファームウェアやマイクロコードなどの低レベルプログラムを格納するためにデジタル電子機器で使用されます。PROMは、最終的に量産版でROMに変換されるシステムの開発中に使用されることがあります。これらのタイプのメモリは、マイクロコントローラ、ビデオゲーム機、携帯電話、無線周波数識別(RFID)タグ、埋め込み型医療機器、高精細マルチメディアインターフェース(HDMI)、その他多くの民生品や自動車製品で使用されています。
PROMはブランクの状態で製造され、技術によっては、ウェハ、最終テスト、またはシステム段階でプログラムすることができます。ブランクのPROMチップは、PROMプログラマと呼ばれるデバイスに接続することでプログラムされます。一般的なPROMデバイスにはメモリセルのアレイがあります。セル内のバイポーラトランジスタには、ポリヒューズと呼ばれるヒューズに接続されたエミッタがあります。PROMをプログラムするには、ポリヒューズを戦略的に溶断します。[ 1 ]
PROMは、1956年にニューヨーク州ガーデンシティにあるアメリカン・ボッシュ・アルマ社のアルマ部門に勤務していたウェン・ツィン・チョウによって発明されました。[ 2 ] [ 3 ]この発明は、アトラスE/F ICBMの空中デジタルコンピュータに照準定数をより柔軟かつ安全に保存する方法を考案するという米国空軍の要請により考案されました。特許および関連技術は、アトラスE/Fが米国ICBM部隊の主力運用ミサイルであった数年間、秘密保持命令の下で保持されていました。PROMのプログラミングプロセスを指す「焼却」という用語は、元の特許にも記載されています。これは、当初の実装の1つが、電流過負荷によってダイオードの内部ウィスカを文字通り焼却し、回路の不連続性を生成することであったためです。最初のPROMプログラミングマシンもチョウの指導の下、アルマのエンジニアによって開発され、アルマのガーデンシティ研究所と空軍戦略航空軍団(SAC)本部に設置されました。
OTP(ワンタイムプログラマブル)メモリは、データを一度だけ書き込むことができる特殊な不揮発性メモリ(NVM)です。一度プログラムされると、電源が切れてもその値を保持します(つまり、不揮発性です)。OTPメモリは、データの信頼性と再現性が求められるアプリケーションで使用されます。例えば、ブートコード、暗号化キー、アナログ回路、センサー回路、ディスプレイ回路の構成パラメータなどが挙げられます。OTP NVMは、eFuseやEEPROMなどの他のタイプのNVMと比べて、低消費電力で小型のメモリ構造を実現できるという特徴があります。そのため、OTPメモリはマイクロプロセッサやディスプレイドライバから電源管理IC(PMIC)まで、幅広い製品に採用されています。
市販の半導体アンチヒューズベースのOTPメモリアレイは、少なくとも1969年から存在しており、初期のアンチヒューズビットセルは、交差する導電線の間にコンデンサを吹き飛ばすことに依存していました。テキサス・インスツルメンツは1979年にMOSゲート酸化膜破壊アンチヒューズを開発しました。 [ 4 ]デュアルゲート酸化膜2トランジスタ(2T)MOSアンチヒューズは1982年に導入されました。[ 5 ]初期の酸化膜破壊技術は、スケーリング、プログラミング、サイズ、製造上のさまざまな問題を示し、これらの技術に基づくメモリデバイスの量産を妨げていました。
ワンタイムプログラマブルメモリデバイスの別の形態は、紫外線消去可能プログラマブル読み出し専用メモリ(UV-EPROM)と同じ半導体チップを使用しますが、完成したデバイスは、消去に必要な透明な石英窓を備えた高価なセラミックパッケージではなく、不透明なパッケージに収められています。これらのデバイスは、UV EPROM部品と同じ方法でプログラムされますが、コストが低くなっています。組み込みコントローラは、フィールド消去可能タイプとワンタイムタイプの両方で利用可能であり、工場でプログラムされたマスクROMチップの費用とリードタイムなしに、量産でコストを削減できます。[ 6 ]
アンチヒューズベースのPROMは数十年前から利用可能でしたが、標準CMOSでは2001年まで利用できませんでした。Kilopass Technology Inc.が標準CMOSプロセスを使用して1T、2T、および3.5Tアンチヒューズビットセル技術の特許を取得し、PROMをロジックCMOSチップに統合することが可能になりました。標準CMOSでアンチヒューズを実装できる最初のプロセスノードは0.18μmです 。ゲート酸化膜の破壊は接合部の破壊よりも小さいため、アンチヒューズプログラミング要素を作成するために特別な拡散ステップは必要ありませんでした。2005年には、Sidenseによって分割チャネルアンチヒューズデバイス[ 7 ]が導入されました。この分割チャネルビットセルは、厚い(IO)酸化膜デバイスと薄い(ゲート)酸化膜デバイスを共通のポリシリコンゲートを持つ1つのトランジスタ(1T)に組み合わせます。

一般的なPROMは、すべてのビットが「1」として読み取られる状態になっています。プログラミング中にヒューズビットを焼損させると、ヒューズが「溶断」してビットが「0」として読み取られますが、これは元に戻せないプロセスです。新しいデータで「1」を「0」に置き換えると、「再プログラム」できるデバイスもあります。一部のCPU命令セット(例:6502)は、この特性を利用して、操作コード「00」を持つブレーク(BRK)命令を定義していました。誤った命令があった場合、それをBRKに「再プログラム」することで、CPUは制御をパッチに渡します。これにより、正しい命令が実行され、BRKの後の命令に戻ります。
ビットセルは、薄い酸化膜トランジスタのゲートと基板の間に、通常の動作では発生しない高電圧パルス( 2 nm 厚の酸化膜の場合約 6 V 、または 30 MV/cm)を印加してゲートと基板間の酸化膜を破壊することによってプログラムされます。トランジスタのゲートに正の電圧を印加すると、ゲート下の基板に反転チャネルが形成され、酸化膜を通してトンネル電流が流れます。この電流によって酸化膜中にトラップが追加され、酸化膜を流れる電流が増加し、最終的に酸化膜が溶融してゲートから基板への導電チャネルが形成されます。導電チャネルを形成するために必要な電流は約 100 μA/100 nm 2であり、破壊は約 100 μs 以下で発生します。[ 8 ]