BIOSは通常、EEPROMチップ(電気的に消去可能でプログラム可能な読み取り専用メモリ)に保存されます。理想的な条件下では、少しのソフトウェアでフラッシュできます。状況が著しく悪化した場合(つまり、システムがブリックされている場合)、マザーボードからチップを取り出し、 プログラマー に入れ、チップを書き直してから、元に戻す必要があります。システム。
この場合、プログラマはチップをプログラムするデバイスです。これらは、マイクロコントローラ、フラッシュチップ、EEPROMチップ、PROMチップなどをプログラムするためによく使用されます。
プログラマーの最も基本的な2つのタイプは、インサーキットプログラマーと従来のプログラマーです。このAVRISP mk.IIなどのインサーキットプログラマーは、プログラムされた回路に直接接続します。
小さなヘッダーは回路基板上の適切なコネクタに接続され、プログラミングが完了すると、回路から取り外すことができます。また、プログラムされているメモリを回路から取り外す必要がないという利点もあります。
これはいわゆる「ビットバンギング」プログラマーです。インサーキットプログラマーでもありますが、コンピューター(この場合)のシリアルポートを使用して、デバイスをプログラミングするための信号を生成します。それらは非常に安価に製造できますが、USBからシリアルチップへの接続ではうまく機能しません。ケーブルのもう一方の端は、プログラムされている回路に接続されています。
そして今、私たちは古典的なプログラマーを持っています。チップを回路から取り外してプログラマー自身に配置する必要があります。それらは、高電圧プログラマーの並列とも呼ばれます。
ここに、ソケット内のチップをプログラムするビットバンギングプログラマーがいます。自家製であり、その主な利点は低価格ですが、一方で、動作するにはホストコンピュータにパラレルポートが必要です。
これは、デバイスを挿入する必要がある別のプログラマーです。
同様のプログラミングインターフェイスを備えた関連するチップファミリは、いくつかの異なるパッケージで入手できることが多いため、これらのプログラマにはさまざまなタイプのソケットがよく見られます。
これら2種類のプログラマーの主な違いは、回路内プログラマーは実際にはプログラミングを受け入れるように設定されたチップを必要とすることです。プログラミングが不適切であるか、設計による場合があります(たとえば、デバイスで使用できるピンが十分でないため、プログラミングのためだけにピンが残っていない場合、デバイスのファームウェアがアップグレード可能であるとは思われない場合、またはデバイスが単にインサーキットプログラミングをサポートしていません)デバイスは、それ自体の回路でプログラミングできないような状態のままになります。このような場合は、削除して外部プログラマーに配置する必要があります。通常、回路内プログラマーは、デバイスに接続し、ファームウェアを少し使用して新しいファームウェアをデバイスにダウンロードすることで作業します。一方、従来のプログラマーは、デバイスのメモリに直接書き込むように強制できるため、応答がない場合でも使用できます。
したがって、これをBIOSチップに接続します。マザーボードには通常、BIOSチップを更新するある種の集積回路プログラマがあります。 BIOSがBIOSチップに正しく書き込まれていない場合、プログラマーにアクセスできなくなり、正しいBIOSをチップにフラッシュするために外部プログラマーが必要になることがあります。
BIOSを再プログラムする小さなプログラムにすることができます。このプログラミングでは、以前にバックアップされた可能性のある設定を再プログラミングするか、BIOSバージョン自体を変更するだけで済みます(ただし、新しいBIOSでチップをプログラミングします)。あなたの場合、「プログラマー」はチップをプログラムするために使用されるハードウェアデバイスであるかもしれません(それはおそらくIC {集積回路}にあるでしょう)。
通常、最近ではこれを「BIOSのフラッシュ」と呼んでいます。