現代PCの基礎知識(6):ハードウェアの機能追加に欠かせない拡張スロット

2016年11月24日(木)
沖 勝(おき まさる)

はじめに

最近のPCはマザーボード上に様々な機能が統合されており、プロセッサやメモリ、ストレージ、電源さえあればPCとしての機能を揃えることができる。

しかし、マザーボード上に用意されていない機能を追加したい場合は拡張カードを搭載する必要がある。このときに使われるのが拡張スロットだ。今回は、PCI Express規格の拡張スロットについて概要を紹介する。

拡張スロットとその役割

タワー型デスクトップPCの背面を見ると、等間隔に並び蓋がされたスリットのようなものを確認できる(図1)。これらが拡張スロットである。現在では主にPCI Express(PCIe)規格のバスに接続可能な拡張カードを搭載する際に、カードを固定する役割と外部と接続するための端子がついたブラケットを露出させる役割を持つ。

図1:タワー型PCの背面。横に倒しているが、写真の右半分が拡張スロットだ。左から3番目にビデオカードが取り付けられていることが分かる

スペースの関係で超小型のPCにはないが、それ以外のPCにはたいてい拡張スロットが用意されている。2016年現在ではPCI Express(PCIe)と呼ばれる拡張バス対応の拡張スロットが主流だ。

ビデオ機能を持たないプロセッサやマザーボードにモニターを接続する場合のビデオカードも拡張スロットに搭載する。マザーボード上にある細長い溝のついた端子が拡張スロットだ。単にPCIeスロットなどと呼ばれることもある(図2)。

図2:マザーボード上に用意された拡張スロット。上の横に長いものがx16、下の2つがx1だ

機能を拡張する様々なアダプター

アダプターは現代PCの先祖にあたるPC/ATアーキテクチャを創ったIBM社の用語であるが、一般には拡張カードと呼ばれる類のもので、マザーボード上の拡張スロットに挿して機能を追加する。まずは、拡張スロットに搭載可能な比較的よく使用されるカード類を紹介しよう。

ビデオカード

大昔のPCではマザーボードでビデオ機能を提供せず、モニターを接続するには別途ビデオカードを用意する必要があった。現代PCの大半を占めるプロセッサではビデオ機能を内蔵し、マザーボードにモニターを接続するためのVGA、DVI、HDMI、DisplayPortなどの接続端子が提供されている。

しかし、プロセッサ内蔵のビデオ機能では性能が不足していたり、あるいはもともとビデオ機能が内蔵されていないサーバー向けプロセッサだったりする場合にはビデオカードを搭載する必要がある。

また、高性能なビデオカードのGPU(Graphics Processing Unit)は高い消費電力による発熱を抑える大型の冷却装置も搭載されているため、隣接する拡張スロットと合わせて2スロットを占有する形状となっている製品が多い。なお、筆者の携わる開発では高性能ビデオカードは不要な上、ビデオ機能を持たないプロセッサを搭載するサーバーPCもLAN経由のリモートコンソール機能を持っているため、筆者はここ紹介できるビデオカードを所持していない。ご了承いただきたい。

ネットワークインタフェースカード(NIC)

現代のPC環境ではWebサイトの閲覧をはじめとする通信機能が必須だ。その通信機能を持つインタフェースがネットワークインタフェースである。

通信には無線有線があり、身近なところでは限られた範囲内の接続を前提としたLAN(Local Area Network)が利用されている。

有線接続では、現在一般に普及している有線LANではRJ45モジュラープラグが両端にあるLANケーブルを使用して機器間を接続する。現代のマザーボードにはケーブルを接続するコネクタ(LANポートなどと呼ばれる)が少なくとも1つ用意されているが、このLANポートを複数使う必要がある場合にネットワークインタフェースカード(NIC)を拡張スロットに搭載する(図3)。PCをネットワーク機器の代わりとして運用する、あるいはネットワーク機器の代わりとなるソフトウェアを開発するといった場合に重宝する。

図3:GbE(Gigabit Ethernet)対応のNIC。PCIeのバス帯域をそれほど必要としないためx1カードとなっている

RAIDカード

RAID(Redundant Arrays of Inexpensive Disks)とは複数台のストレージを組み合わせて冗長性を高める技術だ。通常、4台のストレージをマザーボードのSATA端子に接続するとそのまま4台として認識されるが、RAIDカードに4台を接続すると、これらがまとめて1台として認識されるといった具合である。

RAIDには構成レベルがあり、レベルによっては4台繋いでも3台分の容量しか扱わないようなものもある。この場合、どれか1台が故障してもシステムを動作させたまま交換することが可能になったりする。

また、基本的にRAIDを運用する場合は接続するストレージをすべて同一容量にするが、同一メーカー同一型番同一製造ロットの製品で揃えると同時に故障することも往々にしてあるため、購入時には製造ロットをずらすなど注意する必要がある。

NVMe SSD

現在、PCIe接続の高速ストレージとして市販されているものがNVMe SSDだ。SATA接続と比較して高速アクセスが可能である分高価だが、大量データを扱う場合にパフォーマンスを発揮する。

ビデオキャプチャカード

テレビ番組を録画したり、ゲーム画面をキャプチャしたりといった用途で使われるのがビデオキャプチャカードである。昔からキャプチャカードの類はインテル製プロセッサを要求し、AMDでは動作保証しない旨が記載された製品をよく見かける。要求される性能もそれなり以上なので、利用する際は動作条件をよく確認しておこう。

サウンドカード

ビデオ機能と同様に昔のPCでは音楽や音声を再生するにはサウンドカードが必要だった。現代の大半のPCはマザーボード上のチップでオーディオ機能を提供するが、サーバー用途のマザーボードなどでは搭載されていないこともある。そういった環境において音楽再生が必要で、かつマザーボードが提供するオーディオ機能が貧弱だったりする場合にはサウンドカードを搭載することになる。

拡張カードのサイズを意識する

フルタワーケース、あるいはミドルタワーケースを使用していればさほど気にしなくてもいいが、Mini-ITXケースを使用する場合は拡張カードのサイズ、特に奥行を物理的に収めることができない場合がある。主にケース側の説明書等で搭載可能なカードサイズを確認しよう。

また、前述した高性能ビデオカードのように、搭載されている冷却ファンが大型で2スロット分を占有するような場合も、ケースあるいはほかの拡張カードと物理的に干渉しないかを気にしておかないと、実際に載せるときになって「入らない!」といったことがあり得る。こちらも気をつけたい。

小は大を兼ねる? Full HeightとLow Profile

スリムPCなど幅の狭いケースに搭載する拡張カードの場合、奥行とは別にカードの高さが問題になる。カード自体が小さくても、ブラケットのサイズが統一されているスリムPCには大きすぎて搭載できないことがあるのだ。そんなときには、ブラケットサイズが小さいLow Prpfileに対応した製品を利用する。

最初からLow Profile専用の製品もあれば、ブラケットを交換してフルサイズと両方に対応できるカードもある(図4)。ただし、外部接続端子の位置は製品によってまちまちで、対応していないカードに後からブラケットを買い足して搭載、といったことはまずできないと思ったほうがいい(特定製品用として売られていることはある)。またブラケットを付けずに無理やり押し込む方法もあるが、カードが固定さず不安定になり相応のリスクがあることを承知の上で自己責任でやるつもりでなければお勧めできない。

図4:LowProfile対応カードと製品に付属する交換用のLowProfileブラケット。ドライバーでネジを外せば交換できる。拡張カードはショップ店頭でまず見ることのない25GbE NICだ

なお、スリムPCでFull Heightのカードを搭載できる製品もあるが、これはカードをマザーボードに直接取り付けるのではなくライザーカードと呼ばれるスロットの向きを変えるだけのカードをマザーボードに取り付け、拡張カード自体はマザーボードと水平に取り付ける。前述のビデオカードなど厚みが必要なカードは物理的に搭載できないこともあるので、購入前によく確認しておこう。

電源供給はどこから?

通常、拡張カードへの電源供給はPCIeスロットから行われる。Full Heightのx16スロットであれば最大75W、x1スロットであれば10W、他は25Wの供給が可能だ。これとは別に、主にビデオカードで6ピンあるいは8ピンの電源供給コネクタが用意されているカードがある(図5)。これはPCIeスロットからの電源供給ではGPUの動作に十分ではなく、補助電源が必要であることを示している。こちらも接続を忘れないよう注意が必要だ。

図5:ATX電源から提供されるPCIeカード用補助電源コネクタ。これをビデオカードなど消費電力の大きなカードに接続する

PCIeの中身:スロットとレーンとバージョンと

PCのカタログ仕様表などでPCIeの項目を見ると3.0 x8などと記載されている。3.0はPCIeのバージョンを表し、大雑把に言えばバージョンの新しいほうがバス帯域が高い(転送速度が高速)。またx8はレーン数を表し、1レーンあたりの転送速度を8本束ねたデータ転送(つまり8倍速)が可能である。

拡張カード側の端子の幅は物によって異なるが、基本的にはレーン数に合わせた幅となっている。この幅に合わせてマザーボード上のPCIeスロットが用意されているわけだ。x16スロットと書かれている場合はx16までのカードを搭載できるという意味になる。

PCIeのバージョンとレーン数ごとの理論スループットを表に示す。

表:PCIeのバージョンとレーン数ごとの理論スループット

PCIeバージョン スループット
x1 x4 x8 x16
1.0 250MB/s 1GB/s 2GB/s 4GB/s
2.0 500MB/s 2GB/s 4GB/s 8GB/s
3.0 984.6MB/s 3.93GB/s 7.87GB/s 15.75GB/s

高性能ビデオカードのようなx16のカードはx8やx1のスロットには物理的に差し込めない。逆にx1やx8のカードであればx16スロットに挿しても動作する(速度はx1やx8のまま)。例外としてあるマザーボードのPCIeスロット形状はx16であるが、配線がx8レーンまでしかなくカードの転送速度もx8に制限されるといったことがある。

また、マザーボードによって「あるスロットは3.0」「あるスロットは2.0」といったこともある。PCIe 3.0のカードをPCIe 2.0のスロットに載せることは可能だが、その場合の速度は2.0相当になるため、主目的が機能拡張か性能向上かによって搭載するスロットの位置に注意する必要が出てくるかもしれない。逆にカード側のバージョンが古ければ、いずれにしても古いほうのバージョンに合わせた動作となる。

さらに、場合によってはそれらのスロットがどこから出ているPCIeなのかも重要だ。プロセッサから直接か、チップセット経由か、PCIブリッジ経由かなど、シビアなケースではこれらのどこを経由するかでレイテンシ(遅延時間)に差が出るからだ。プロセッサからが最も遅延が小さく、次がチップセット経由、PCIのブリッジ接続にぶらさがるPCIeを経由するケースが一番遅延が大きい。

拡張カードを複数搭載する際になるべく性能も維持したい場合は、プロセッサやチップセットと拡張スロットの接続の関係性に注目すると良い。プロセッサから直接繋がっているPCIeスロットと、複数のPCIeスロットをチップセットで束ねてプロセッサと繋げている場合とでは、たとえ同じx16スロットでもプロセッサに直接繋がっているほうが高速に動作する。複数で接続を共有するより単独で接続するほうが速いという理屈だ。

このあたりはサーバー・ワークステーション向けのマザーボードであれば説明書にはっきり記載されているが(図6)、一般PC向けマザーボードでは説明書に明記されてないものもある。不明な場合の目安として、一般にバックパネルに近い側のスロットが高速であることが多いと思われる。またMini-ITXマザーボードで提供されるPCIeスロットは1本で選択の余地はないが、「拡張できないよりはいい」という割り切りも必要だ。

図6:サーバー用マザーボードに記載されたブロックダイヤグラム。プロセッサ(Skt-H4)から直接繋がっているPCIeスロットとチップセット(PCH)経由で接続されるPCIeスロットがあることが分かる

古いマシンの拡張スロット

さて、冒頭で「拡張スロット」などとやや遠回しな表現をしたのには理由がある。PCIe以前に使われていた古いバスで接続される拡張カードもPCケース背面のブラケットの取り付け位置やサイズは同じであり、ケースから見ればそのスロットがどのバスで使われているかは関係ないからだ。

古いPCで使われていた主な拡張バス規格にはAGP、PCI、VL-Bus、ISAなどがある。ごくたまに古いPCのリプレースを狙ってPCIバスを搭載したマザーボードを見かけるが、その他に関してはすでに新品の一般ルートでの流通はなく、産業用としてISAバスのある製品がやはりリプレース需要に応じて用意されている程度だ。PCIには32bit PCIと64bit PCI、またPCI-Xという規格も存在したが、いずれもスロットは物理的にPCIeとは別である(図7)。

図7:PCIeスロット(奥)とPCIスロット(手前)。形状や高さなどが違うため、物理的に規格の異なるスロットにはカードを差し込めないようになっている

また、古いノートPCにはPCMCIA、CardBus、Compact Flash、Express Cardといったカードスロットが用意されていることもあった。これらは大まかにはISAバス、PCIバス、PCIeバスを着脱可能にしたものだが、現在ではほぼUSBに置き換えられ、使う機会は少なくなっている。一般のソフトウェア開発で必要となる場面はほとんどないだろう。

まとめ

拡張スロットにより、デスクトップPCはマザーボードだけで賄いきれないさまざまな機能を追加できる。開発用PCに関しても「動けばよし」から一歩進んだ快適な環境を構築する際に有用であるため、予算に余裕のある時や性能に不満があるときなど、必要に応じて導入を検討してみるといいだろう。

著者
沖 勝(おき まさる)
株式会社インターネットイニシアティブ
前職時代は「沖@沖」と名乗り、X68000用のフリーソフトウェアを発表していた。2001年より株式会社インターネットイニシアティブに勤務、自社開発の高機能ルータSEIL(ザイル)の開発に従事し、OS移植やデバイスドライバ開発などに携わった。2013年よりオープンソースソフトウェアLagopus(ラゴパス)の開発に従事、パケット処理機能の設計及びプログラミングを担当している。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています