ビット演算
■ このスレッドは過去ログ倉庫に格納されています
0185・∀・)っ-●○◎- ◆Pu/ODYSSEY
2005/12/04(日) 16:44:30モダンなCPUには丁度ベルトコンベアで流れ作業するような感じで、命令の実行までの処理を順番に
流していくための機構が備えられています。これをパイプラインという
これにより、見た目上、1つのパイプラインで1命令1クロックで命令が実行されることになります。
ただ、すぐ次の命令の流れが前の命令の実行結果に依存してる場合、
・投機実行を備えてないプロセッサの場合、分岐先が確定するまで
何を流せばわかりません。したがって、それだけ待たされることになります。
・分岐予測&投機実行なんかが導入されてる場合(大抵のx86アーキはそう)でも、
予測が外れた場合、投機してたステージを全部破棄して再度読み直すことになります。
10ステージのパイプラインなら10クロック+αは、分岐(or投機失敗)のたびに、
命令実行が止まることになります。これがストール。
■ このスレッドは過去ログ倉庫に格納されています