2011-11-17 97 views

回答

2

我將展示它如何在簡單的處理器中工作,如用於研究CPU架構的DLX或RISC。

當(AT & T語法,或$ R1複製到$ R2)

mov $R1, $R2 

或偶數(對於RISC風格架構)

add $R1, 0, $R2 

指令工作,CPU將讀取的源操作數:來自register file的R1和來自...的零可以是立即操作數或零發生器;將兩個輸入傳遞到Arithmetic Logic Unit (ALU)。 ALU將執行只是將第一個源操作數傳遞到目標的操作(因爲A + 0 = A),並且在ALU之後,目標將被寫回寄存器文件(但是到R2插槽)。

所以,數據在源寄存器僅readed和沒有改變在此操作中; 目標寄存器中的數據將被源寄存器數據的副本覆蓋。 (目標寄存器的老態將會丟失with generating of heat。)

在物理層,在寄存器文件中的任何寄存器設置的SRAM cells,他們每個人是兩個逆變器(雙穩態觸發器的基礎上,M1,M2 ,M3,M4)和附加門寫作和閱讀:

SRAM cell (wiki, PD File:SRAM_Cell_(6_Transistors).svg)

當我們要覆蓋到存儲於SRAM單元格的值,我們將設置BL和-BL根據我們的數據(存儲位0 - 設置BL和取消設置-BL;存儲位1 - 設置-BL和取消設置BL);然後寫入單元的當前設置(行)(WL打開;它將打開M5和M6)。 M5和M6打開後,BL和-BL將改變雙穩態觸發器的狀態(如SR-latch)。因此,新值被寫入並丟棄舊值(通過將電荷泄漏到BL和-BL中)。

+0

哇!蘭道爾的原則很酷!從來沒有想過這樣。 – 2011-11-17 22:40:34

+0

你應該知道它仍然有點爭議。這是一個下限,對於現代CPU(有許多經典Wt)的Wt <2/100(最壞情況估計)。但它是量子計算機的主要限制因素(如果你不可逆地重寫量子寄存器,它將被加熱並失去量子性質)。因此[量子門](http://en.wikipedia.org/wiki/Quantum_gate)具有相同數量的輸入和輸出,任何計算都可以從最終狀態恢復(反轉)回到開始狀態。 – osgx