プルアップ
読み:プルアップ
外語:pullup

 回路を、抵抗器を挿んで電源ラインに接続すること。このときの抵抗器をプルアップ抵抗という。
目次

概要
 その目的は主として、「そのラインに何も接続されていない状態になった時」に、そのラインの電位を「Hレベル」に固定することにある。
 CPU等が、回路からの入力を判断する基準は電圧である。しかしもし、回路がどこにも接続されない状態の場合、その回路のレベルはHかLかはっきりしない、宙に浮いた状態となる。これでは、CPU等は入力がONなのかOFFなのか判断できない。
 プルアップは、入力レベルがVCCレベル(Hレベル)であることを明確にするために行なわれ、この目的のためにプルアップ抵抗が取り付けられる。

特徴
 例えば、CPUのINポートに、押しボタンスイッチを付けることを考えてみる。

結線方法
 
 結線方法は、正論理負論理の二種類があるが、ここでは、押されていない時に入力はHレベル、押された時にLレベル、という負論理(以下、アクティブ・ロー)で考えてみる。
 この例では、INポートのラインに、抵抗を付けてVCCへ繋げ、同時に、スイッチはGNDへ繋げる構成とする。この時、VCCとラインの間に入れる抵抗をプルアップ抵抗といい、このような回路を作ることをプルアップする、という。

結線の工夫
 
 スイッチを繋げる場合、いくつかの工夫が必要である。
 例えばもし単にGNDに繋げるだけだと、スイッチを押せばLレベルになるが、押されていない場合のレベルが不明である。これは、押されていない場合に「どこにも繋がっていない状態」になるからである。
 これを、回路がオープンになるといい、この様な状態ではレベルが確定できないため入力が不安定になり、誤動作してしまう。
 上の例では、スイッチがGNDに繋がっている。使用時Lレベルなので、未使用時にはHレベルになるよう、VCCにも結線をすることになる。ただ、単に回路をVCCに繋げるだけだと、スイッチが押された時にVCCとGNDが短絡し故障してしまうので、抵抗器を挟む。これがプルアップ抵抗である。

押されていない時
 
 こうすると、スイッチが押されていない時はGNDに対するラインは断線しているのと同じ状態なので、電流は流れない。
 代わりに、抵抗を介してVCCとCPUが繋がるので、INポートにはVCCの電流が流れ込むことになる。
 従って、押されていない時には、CPUから見るとHレベルの入力があるように見える。回路がオープンにならないため、入力も安定となる。

押された時
 
 スイッチが押された場合、ラインには無抵抗でGNDに直結するラインが形成されることになる。
 さて、電流は抵抗の低い方に流れる特徴があるが、CPUのINポートには意図的に抵抗器が組み込まれており、電流が流れにくいようになっている。
 そこでこの場合、電流はCPUより抵抗値の低い側、つまりスイッチを経由してGNDに流れるため、このラインは0Vとなり、CPUのINポートはLレベルの入力があるように見えるわけである。

アクティブ極性
 プルアップでもプルダウンでもさして変わらないが、歴史的にプルアップが多用されて来た。
 なぜなら、昔のTTL回路などではHレベルでは電流が殆ど流れず、Lレベルになって電流が流れる構成となっていたためである。このため省エネの観点から、あるいはまた、TTLではワイヤードORを構成しやすい、ノイズマージンが良い等の特徴があることから、TTL回路ではアクティブ・ローが主となった。
 この流れで、現在でも多くのICがアクティブ・ローとなっている。未使用状態ならプルアップしておけば非アクティブにすることができる。
 最近の主流CMOSなら、TTLと違いスレッショルド電圧はH/Lが対称であり、ノイズマージン等のメリットはないのでアクティブ・ローにこだわる理由はないが、今でも多用されているのは、技術者の慣れなどを含む、慣例によるものであると思われる。

再検索