複合メモリモジュールを理解する方法
コンピュータメモリの用語は、特に「複合メモリモジュール」のような用語に遭遇し、何が特別なのか、あるいは時代遅れなのか疑問に思うと、かなり混乱することがあります。少し奇妙に聞こえるかもしれませんが、この用語は主に古いハードウェア、特に1990年代頃のハードウェアについて話すときに登場し、現在ではあまり使われていません。Appleのハードウェアでよく見かける用語で、正直なところ、最近のメモリのほとんどはこの用語を気にしていません。トラブルシューティングや古いメモリモジュールの理解を深める際に、複合メモリについて知っておくと互換性の問題を回避できます。
かつてのRAMモジュールは、今日のように単純なDIMMではありませんでした。代わりにSIMMが使用されていましたが、容量が限られており、コストも高かったです。より高い容量を実現するために、メーカーは1つのモジュールに多数の小型DRAMチップを積み重ね始めました。そのため、16MBのSIMMを実現するために、16個の小さな4MBチップを積み重ねるというアプローチが一般的でした。これは「複合メモリ」と呼ばれていました。これは、複数の小型チップを組み合わせてメモリ全体を構成するため、モジュールあたり8個以上のDRAMチップが使用されることが多かったためです。そのため、古い仕様書には複合モジュールと非複合モジュールという記述が見られることがあります。
メモリモジュールの構造
これらすべてを面白くしているのは、これらのチップの配置方法です。現代のDIMMは通常、DDR4 16GBや32GBモジュールなどの構成で、片側に8個のDRAMチップを搭載しています。しかし、かつては8個をはるかに超えるチップを搭載したモジュールもありました。そこで「複合」という用語が登場します。8個を超えるチップを搭載するということは、それらすべてのチップを同時に管理するために追加の回路が必要になったことを意味します。この追加の複雑さは、特にQuadra 800などの一部のAppleシステムのように互換性が厳しいマシンでは問題を引き起こす可能性がありました。場合によっては、追加の回路だけで消費電力とレイテンシが増加し、システムクラッシュや安定性の問題を引き起こすこともありました。
一方、非複合モジュールは、DRAMチップが8個だけというシンプルな構成で、動作もスムーズでした。しかし、一部の古い構成では、不適合モジュールや複合モジュールがマザーボードのメモリコントローラやCPUの期待値と完全に互換性がなかったため、システムに問題が発生することがありました。
効果
これらの複合モジュールが一般的だった頃は、選り好みする価値がありました。一部のコンピューター、特に特定のAppleモデルは、このモジュールをうまく利用できなかったのです。互換性の問題は、回路の複雑さと消費電力の増加に起因していました。古いマシンが特定のRAMを搭載した際に起動しなくなったり、頻繁にクラッシュしたりした経験があるなら、おそらくこの複合モジュールがうまく機能していなかったのでしょう。なぜそうなるのかは分かりませんが、いくつかの環境では、複合モジュールではない8チップモジュールに交換することで完全に解決しました。ある環境では最初はうまくいきましたが、別の環境では…うまくいきませんでした。
現代の違い
時代は進み、現在では9個のチップを搭載したECC DDR DIMM、いわゆるサーバー向けECCモジュールが主流となっています。これらは特殊な追加回路でエラー処理を行いますが、この古い複合チップとは関係ありません。一般的なコンシューマー向けRAMスティックのほとんどは8個のチップを搭載しており、デュアルランク構成では16個のチップを搭載している場合もありますが、これは全く別の話です。重要なのは、現在のRAMのほぼすべてがこれらの複合チップの問題を回避しているということです。なぜなら、これらの問題は過去の問題であり、最新のRAMモジュールは幅広いシステムで互換性と信頼性を確保するように設計されているからです。
まとめ
では、なぜこんなことにこだわる必要があるのでしょうか?ヴィンテージハードウェアを触ったり、動作が不安定な古いマシンのメモリアップグレードを理解しようとしたりする場合、複合メモリについて知っておくと、かなりの手間が省けます。複合メモリはほぼ過去の遺物であり、最近のRAMのほとんどは、そのような複雑な処理を必要とせず、快適に動作します。ただし、8個以上のチップを搭載したモジュールは、以前の技術制限を回避するための手段だったことを覚えておいてください。現代のRAMははるかに扱いやすく、これらの古い問題はめったに発生しません。