1. 程式人生 > >80286指令流水線及其優化

80286指令流水線及其優化

80286 Architecture Overview

80286處理器的架構相比8086架構略微複雜,除了匯流排介面單元執行單元以外,新增加的地址單元用於將邏輯地址轉換成實體地址,主要用於支援新增的保護模式,獨立出來的指令單元用於指令的譯碼功能。

從下面的80286內部框圖中我們可以看到更多的細節,例如匯流排介面單元中的6位元組預取指令佇列,指令單元中的指令譯碼器和已譯碼指令佇列(可以儲存3條指令),以及段限長檢查器等部件。

80286 Instruction Pipeline Details

80286的指令流水線也相對簡單,只有3級:取指,譯碼和執行。

80286只比8086多了一級譯碼階段,其他的均與8086類似。需要注意的是,從下圖中可以看出在某些情況下,下一條指令的地址計算可以和當前指令的執行並行進行,在某種程度上增加了並行度,提升了指令的吞吐量。但是地址計算並不是80286指令流水線中獨立的一級。

Optimization Consideration

針對80286流水線沒有什麼需要特別優化的地方