Friday, January 23, 2009

高速化技術

組込みのMPUを設計すると、高速化技術はかなり大切です。
MPUはひとつの命令を複数ステップで実行します。複数ステップは命令を取り出し(IF)、命令を解読し(ID)、命令を実行し(EX)、メモリをアクセスし(MEM)、レジスタを格納し(WB)、という5階段に分割します。パイプライン処理はそれらの階段を並列して実行することにより、複数の命令をオーバラップさせて実行し、高速化になります。
     パイプライン処理
命令1: IFー>IDー>EXー>MEMー>WB
命令2:    IFー>IDー>EXー>MEMー>WB
命令3:       IFー>IDー>EXー>MEMー>WB
命令4:       IFー>IDー>EXー>MEMー>WB
命令5:         IFー>IDー>EXー>MEMー>WB

パイプライン処理は遅延分岐がよく使用されます。遅延命令の直前に配置されるべき命令を分岐命令の直後に配置するぉとで、分岐命令の直後の命令を実行できます。

No comments: