Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save buuuuuuun3939/1ab778c67de30c254b42a2d40ae21d4b to your computer and use it in GitHub Desktop.
Save buuuuuuun3939/1ab778c67de30c254b42a2d40ae21d4b to your computer and use it in GitHub Desktop.
tags: 技術書読んでみた。

自作pcの相性問題について今一度考えてみた。

自作pcの相性問題とは

自作pcの相性問題とは,pcパーツの相性によってpcが不安定になったり,うまく起動しないといったものである.これは,たとえ正しく自作pcを組んだとしても,発生する場合がある.


自作pcに必要なパーツ

 自作pcには以下のパーツが必要となる.

  • pcケース
  • マザーボード
  • CPU
  • CPUファン
  • RAM
  • HDD/SSD
  • PSU

また,構成によって以下のパーツなどが追加で必要となる.

  • グラフィックボード
  • サウンドカード

「相性」の原因

 自作er (自作pcを作成する人達の通称)にとって,相性問題は避けられないものである.なぜならば,生きているうちに一台pcを組んで終了とはならないからだ.数台組めば,相性問題に悩まされることもあるだろう.
しかし,根本的な「相性」の原因について考えたことがある自作erは少ないのではないだろうか?「相性」の存在は知っており,新しく組んだpcに相性問題が発生した場合,大抵は原因となっているパーツを交換して終了だろう.
 先日発売された「揚げて炙ってわかるコンピュータのしくみ」という本にあるコラムには,「相性」に関して以下の興味深い記述[1] がある.

論理回路のかたまりであるコンピュータは、すべて決定論が支配する体系ですから、本来は「相性」というような、人間くさい現象とは無縁のはずです。

セットアップやホールドに必要な期間が短くてもOKなものもあれば、長くしないと誤動作するものもあるわけです。
 これらはいわば待ち時間ですから、コンピュータを高速に動作させるためには、なるべく短くしたいわけです。このときにぎりぎりを攻めていると、たまたま運悪く動作の鈍い回路と組み合わさった場合に、セットアップタイムやホールドタイムが足りずに出力の値が正しい値になったりならなかったりする、という場合が出てくるわけです。


セットアップタイムとホールドタイム

 CPUなどにはクロック周波数が存在することは自作erに広く知られている.CPUでは,クロック周波数と,そのCPUが1sあたりに処理可能な処理数は比例する.これに関連したMIPSという指標も存在する.
 pcには多くのフリップフロップが使用されているが,フリップフロップが入力を取得する際にもクロック信号が必要となる.タイミング図において,クロック信号は立ち上がりと立ち下がりが一瞬で行われているように表記されているが,実際はそうではない.クロック信号といえど電気信号の一種であるため,クロック信号は徐々に変化する.ここで重要となるのが,セットアップタイムホールドタイムである.
 クロック信号が立ち上がり/立ち下がりして安定する前から,一定時間フリップフロップに入力をしておく必要がある.事前に入力が必要なこの時間がセットアップタイムである.
 また,フリップフロップのクロック信号が立ち上がり/立ち下がりした後も,一定時間フリップフロップに入力をしておく必要がある.事後に入力が必要なこの時間がホールドタイムである.


相性問題の対策

 「揚げて炙ってわかるコンピュータのしくみ」では,フリップフロップに関連した相性問題の原因について追求されていた.しかしながら,これは相性問題の原因の1つであり,全ての相性問題の原因ではない.相性問題の原因は,まだまだ謎が多い分野と言えるだろう.同じ型番のpcパーツであっても,それぞれのpcパーツには個体差があり,相性問題が起こる可能性がある.
 しかし,市場に出回り販売されているpcパーツでは,相性の悪いパーツの組み合わせが自作erによって報告される.このような報告はとても有用であり,自作erは参考にすることで,相性問題が起きる確率を下げることができる.pcパーツのレビューには,このような報告がよく書かれている.また,しばしば tom's HARDWAREにも情報が載っている.


Reference

[1] 秋田純一:揚げて炙って分かるコンピュータの仕組み,pp.68-69,技術評論社 (2020).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment