「ビットスライス」の版間の差分

削除された内容 追加された内容
ページの置換: 'ayy lmao'
163.177.79.4 (会話) による ID:58357900 の版を取り消し。Rv/v
1行目:
'''ビットスライス'''とは、[[CPU]]を小さなビット幅のモジュールを組み合わせて構築する技術。ビットスライスによるプロセッサ構築に使う[[集積回路|ICチップ]]を'''ビットスライスプロセッサ'''と呼ぶ。ビットスライスプロセッサは各オペランドを所定のビット幅ぶん(スライス)だけ処理する。ビットスライスプロセッサを組み合わせて設計上の完全なワード長の処理を実現する。
ayy lmao
 
また、[[音声]]や[[画像]]の[[データ]]を[[ビットプレーン]]構造に格納する操作を'''ビットスライス'''と呼ぶ。詳細は[[ビットプレーン]]参照。
 
== 概要 ==
ひとつのビットスライスプロセッサは、1/2/4/8ビット幅の[[演算装置]] (ALU) と、通常CPU外部には出されないキャリーやオーバフローといった制御ラインから構成される。
 
例えば、2個の 4ビット・ビットスライスプロセッサの制御ラインを相互接続すると 8ビットのプロセッサ(正確にはALU)が構成される。ALUを制御するための[[制御装置]]や他のCPU内コンポーネントは別の回路として接続する必要がある。
 
ビットスライス式[[マイクロプロセッサ]]の実例としては、[[テキサス・インスツルメンツ|TI]]の [[:en:74181|74181]] がある。他に Intel 3000 ファミリ、[[アドバンスト・マイクロ・デバイセズ|AMD]] [[AMD Am2900|Am2900ファミリ]]、[[ナショナル セミコンダクター]] [[IMP-16]]/IMP-8ファミリなどがある。これらは、ALU以外のCPU回路もチップとして提供しているため「ファミリ」と呼ばれている。
 
== 歴史 ==
かつて[[集積回路]]が使われるようになる以前、ビットスライスは一般的に使われた技術だった(ただし、そのように呼ばれていたわけではない)。世界初のビットスライス・マシンは1956年から1958年に開発された[[ケンブリッジ大学]]数学研究所の [[:en:EDSAC 2|EDSAC 2]] である。
 
[[集積回路]]の集積度が低く高価であった当時、コンピュータシステムの[[バス (コンピュータ)|バス]]幅をどれだけにするのが適切かという議論があった。複数の単純な(かつ安価な)ALUを組み合わせて使用することは、費用を抑えつつ計算能力を高めるための効果的な方法であった。
 
当時[[16ビット]]のプロセッサが一般的だったが高価であり、黎明期のホームコンピュータ市場では[[Z80]]などの[[8ビット]]のプロセッサが広く使われていた。
 
複数の標準的量産部品を組み合わせてビットスライス方式を使えば、より強力で複雑なコンピュータを安価に製作可能だった。ALUの複雑な部分は既に実装済みなので、新たなコンピュータアーキテクチャを作る際の複雑さや[[デバッグ]]の手間も大幅に低減される。
 
60年代末から80年代中ごろにかけて、[[バイポーラトランジスタ]]を使ったビットスライス方式のプロセッサは、NMOSや[[CMOS]]のプロセッサよりも高速動作するという利点があった。そのためクロック周波数を高くでき、高速性を要求される用途に便利だった。例えば、[[デジタルシグナルプロセッサ|DSP]]や [[Alto|Xerox Alto]] では、高速性と柔軟性からビットスライス式でプロセッサを構成している。
 
== 現代的用途 ==
1998年、Matthew Kwan はビットスライシングという用語の新たな用法を提案<ref>{{Cite web |author= Matthew Kwan |url= http://www.darkside.com.au/bitslice/ |title=Bitslice DES |year=1998 |accessdate=2013-02-02}}</ref>。汎用CPUを使って[[SIMD]]命令を実行することで、複数の並列動作する単純な仮想機械として使用する技法を指すとした。この技法は一般に [[:en:SWAR|SWAR]] (SIMD Within A Register) と呼ばれる。
 
この技法の起源は、Eli Biham の1997年の論文 ''A Fast New DES Implementation in Software'' であり<ref>{{Cite journal |url= http://www.cs.technion.ac.il/users/wwwb/cgi-bin/tr-info.cgi?1997/CS/CS0891 |author=Eli Biham |year=1997 |title=A Fast New DES Implementation in Software}}</ref>、この技法を使って[[Data Encryption Standard|DES]]の性能を大幅に向上させた。
This was initially in reference to 's 1997 paper , which achieved significant gains in performance of [[Data Encryption Standard|DES]] by using this method.
 
== 脚注 ==
{{Reflist}}
 
{{FOLDOC}}
 
== 外部リンク ==
* [http://plaintext.crypto.lo.gy/article/378/untwisted-bit-sliced-tea-time A bitslicing primer]
 
{{DEFAULTSORT:ひつとすらいす}}
[[Category:マイクロプロセッサ]]
[[Category:デジタル回路]]