ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

2010-01-01から1年間の記事一覧

Lispマシーンのマスタークロック生成方法

LispマシーンCADRのクロック生成方法が面白かったのでまとめてみました。回路図(CADR_schematic.pdf)の64ページです。図のpdfはこちら。通常のクロックのように、水晶発振子を使わずに、SRラッチと遅延回路の組み合わせでクロックを作っています。クロックが…

Lispマシーンのclock distribution

LispマシーンCADRのclock distributionを調べてみました。回路図がスキャンしたPDF(CADR_schematic.pdf)しかないので、目で追いかけてみました。苦労した割りにはあまり面白くないですが、途中経過としてまとめてみました。 CADRのクロック分配は、基本的に…

Lispマシーンのマイクロコード

IM-528_CADR.pdfからLispマシーンCADRの命令フォーマットをまとめました。CADRの命令長は48bit+奇パリティで、以下の部分が全命令で共通の仕様になっています。 bit 機能 IR[48] 奇パリティビット IR[47] 未使用 IR[46] 統計用bit(Statistics)。特定エリア…

Lispマシーンの制御パス

AIM-528_CADR.pdfからLispマシーンCADRの制御バスの図を抜き出してみました。中央右側にPC(プログラムカウンター)があります。 普通のプロセッサと明らかに違う所は、ビット幅の違う小さなメモリが複数あることです。PCは14bit幅、スタックは19bi幅t、disp…

Lispマシーンのブロック図

AIM-528_CADR.pdfから、Lispマシーンの機能ブロック図を抜き出しました。回路図が公開されているのはプロセッサとBus adaptor部分です。図を見るとCADRは2つ外部バスを持っています。 1つ目が16bitのバスで、キーボードやマウスが接続されます。UNIBUS COMP…

CADRのデータパス

AIM-528_CADR.pdfからLispマシーンCADRのデータパス(page24a)を抜き出してみました。単純にうつし間違いもあると思うので、気になる人は原文当たってください。 私から見て特徴的な所は大きく2点です。1つ目がALUへの入力がAバスとMバスの2つに分離されて…

Cray X-MPのデータパス

続いてCrayのデータパスを調べてみました。SIMDを採用したベクトル演算型のCPUは、通常のデータパスとは別に、SIMD用のデータパスが専用にあるのが特徴です。図は、The Cray X-MP/Model 24から持ってきました。 スカラーデータ用データパス こちらは通常の演…

80286のデータパス

x86

http://en.wikipedia.org/wiki/File:Intel_i80286_arch.svg続いてCISCを代表して286のデータパスを調べてみました。図はwikipediaを見てください。真ん中のバスがいろんな所に繋がっていて、ALUの入力のうち片方はレジスタですが、もう片方にメモリから読み…

RISCマシーンのデータパス

LispマシーンCADRのデータパスを調べているうちに、他のプロセッサのデータパスも整理したくなったので、まとめてみました。データパス(datapath)とは、プロセッサに限らず、デジタル回路のデータ処理を図にするときに、どこからデータが入ってきて、どこに…

cadrのVerilogソースのコンパイル その2

CADRのハードウェアをFPGAに実装した場合、どれくらいの規模になるのかを確かめるためにベンチマークを取って見ました。ダウンロードできるVerilogの回路では、ボード上のメモリがほぼ全てLEに変換されています。外付けのメモリを使う事にし、メモリの記述を…

cadrのVerilogソースのコンパイル その1

http://www.unlambda.com/cadrから入手できるVerilogファイル(CADDR Revised CADR Verilog)からcadr.vと関連ファイルのみで論理合成をしてみました。ターゲットはCycloe3です。論理合成でエラーが出るので、iram(part_16kx49ram)のみ外付けメモリを使う前提…

並列コンピュータで人材獲得作戦

時代は並列コンピュータのようなので、迷路の問題を解くための並列ハードウェアをVerilogで作ってみました。 元ネタはこちら http://okajima.air-nifty.com/b/2010/01/post-abc6.html アルゴリズム 迷路をグラフで表します。 迷路の1マスに1つのプロセッサを…