所有的處理器(cpu)都包含如下3個最基本的部分。 (1) 算術邏輯單元(alu):在其中完成數據處理任務,如加、減、乘、除、布爾運算及移位處理等?! ?2) 寄存器組(register file):由通用寄存器組成,為alu的操作數提供緩存和數據處理結果,緩存指令或輸入/輸出數據等?! ?3) 控制單元(control unit):包含復位邏輯、讀/寫控制、中斷處理、程序計數器、指令譯碼和寄存及條件碼寄存器等。 基本和簡單的處理器結構如圖1所示。
圖1 基本和簡單的處理器結構 盡管構成處理器的基本單元大致相同,但由于數據和指令/控制的總線不同,使整個處理器的結構有所區(qū)別。目前常用的總線結構如下: (1) 多總線結構,如圖2所示。在該結構中,指令、數據和地址都通過同一條總線實現,數據和指令在同一個存儲器中,只是采用分時方式及額外的控制邏輯(如地址鎖存信號等)來實現?! ?2) 共享總線結構,如圖3所示。該結構也稱為范·紐曼(von neumann)結構,盡管地址和數據共享同一條總線,但是分時占用的。 (3) 獨立總線結構,如圖4所示。該總線也稱做哈佛(harvard)結構,由于數據和地址有各自的總線通道,數據和指令(程序)具有不同的存儲器,因此指令執(zhí)行和數據處理可并行(同時)運行。
圖2 多總線cpu結構
圖3 共享cpu總線結構
圖4 獨立總線結構 從以上的分析中看出,獨立總線結構具有高速特性。許多嵌入式處理器都是采用這種結構,特別是用于數據處理及信號處理等高速應用的處理器。盡管為了提高指令的運行和數據的處理速度,有些處理器在其內部采用了cache(高速緩沖存儲器)和指令流水線(pipelining)結構等新的技術。然而就數據的處理速度來說,還是獨立總線結構最好,picoblaze 8位處理器核就是采用的獨立總線結構。