More Related Content
Similar to 昔の外付けキャッシュ & コヒーレント・キャッシュ
Similar to 昔の外付けキャッシュ & コヒーレント・キャッシュ (20)
More from たけおか しょうぞう (14)
昔の外付けキャッシュ & コヒーレント・キャッシュ
- 2. 2
竹岡って誰?
1977年(高校2年生): MITのJames Slagleの書いたAIの教科書(日本語版)を読んで、
「○×」を打つプログラムを8bitマイコンTK-80(8080,RAM 512Bytes)の機械語で書く
1980年代:UNIXのサーバクライアント方式の仮名漢字変換システムWnn、国産シンクライアント(X
Window端末”XMiNT”)などの設計開発に携わる。TCP/IPスタックの独自実装。Temporal Prolog実装
1990年代初頭: 1024PE規模の超並列計算機”SM-1”(豊橋技科大 湯淺研,住友金属)のLSIハード
ウェア、ソフトウェアの設計開発に携わる。Common Lispで開発ツール書いた。
1992年:(株)アックスを興し、マイクロカーネルXTALを設計。XTALはオリンパス社製デジタルカメラ、
シャープ ザウルスなどに使用された。アックスは、人工知能を開発&販売中
2015年: Tier IVの社長を拝命 (アックス社長と兼任)
OSSコンソーシアム副会長, JASA技術本部長/理事,PCクラスタコンソーシアム理事,DEOS協会事務局長
超並列計算機SM-1
(1992年)
シンクライアント
XMiNT
(1988年)
オリンパス デジカメ
(2000年)
カラーザウルス(1996年)
- 3. 昔
● CPUチップの外に キャッシュ
– キャッシュはCPU(コア)チップの外
– 高速RAM(SRAM)キャッシュ・コントローラLSIに内蔵だったり、外付
けだったり
– DRAM (遅い)
– 昔(1990年代前半)も、コヒーレンシを保つキャッシュ・コントローラ
LSIはあった(はず。データシートが見つからない)
CPU
コア
メイン・
メモリ
(DRAM)
SRAM
データ データ
データ
アドレス アドレス
アドレス
※キャッシュ制御のための詳細は省略
※アドレスの一部は、直にSRAMにい
くものもある
キャッシュ
コントローラ
キャッシュしている
アドレスの表
キャッシュ
- 7. スヌープ(コヒーレント)・キャッシュ
● キャッシュ制御部 同士は、アドレス線がつながっているよ!
● みんな、アドレス・バスを覗き見(スヌープ)している
●
書き換わったキャッシュから、情報をブロードキャスト
– 「インバリッド情報」は、アドレスのみでいい
●
キャッシュ同士が、主にアドレス情報を交換
●
アドレス・バスに少しだけ制御線を増やすなどして、インバリッド情報を通信できるようした
– 「キャッシュ・プロトコル」などという
CPUコア#0
メイン・
メモリ
(DRAM)
キャッシュ
制御
高速
RAM
キャッシュ
アドレス
データ
キャッシュ
制御
高速
RAM
キャッシュ
アドレス
データ
CPUコア#1
- 8. 8
スヌープ・キャッシュはXeroxから
●
Xerox Dシリーズ
●
DシリーズはAIマシン
●
Smalltalk, Interlisp-D, Mesa
●
Alto
●
世界で初めて(?)マウスが付いた機械
●
ウインドウ・システム
●
コヒーレント・キャッシュが最初に開発されたのは、
Xerox Dragon (1987年ごろ)
●
http://dl.acm.org/citation.cfm?id=36185
●
DEC Firefly
●
Dragonの後継
https://en.wikipedia.org/wiki/DEC_Firefly
●
CRAY CS6400
●
Dragonの後継
●
https://en.wikipedia.org/wiki/Cray_CS6400
DEC Firefly
(Dragonの後継)
Alto
Star (Dandelion)
- 10. 参考
● Bus snooping (バス・スヌーピング)
https://en.wikipedia.org/wiki/Bus_snooping
● Cache coherence(キャッシュ一貫性)
https://en.wikipedia.org/wiki/Cache_coherence
● Directory-based cache coherence(ディレクトリ・ベースのキャッシュ一貫性)
https://en.wikipedia.org/wiki/Directory-based_cache_coherence
● LL/SC
https://en.wikipedia.org/wiki/Load-link/store-conditional
● Xerox Dragon (Cray CS6400 へリダイレクトされる)
https://en.wikipedia.org/wiki/Cray_CS6400
● Dragon Protocol
https://en.wikipedia.org/wiki/Dragon_protocol
● Firefly
https://en.wikipedia.org/wiki/Firefly_(cache_coherence_protocol)