字體:小 中 大 | |
|
|||||||||||||||
2013/07/30 00:01:29瀏覽1863|回應0|推薦0 | |||||||||||||||
Chapter 2 重要之硬體介紹 2.1 主要的集成電路(IC) 2.1.1 中央處理器(CPU) 中央處理器(CPU)有兩種主要模式, 分別如下: .真實模式(Real-Mode) .保護模式(Protect-Mode) 真實模式(Real mode): 在最初的8086處理器被釋出時,它只有一種記憶體定址模式。而它使用了節區暫存器(segment register)和位移暫存器(offset register)作定址,其定址方式如下: .記憶體定址(Memory Addressing): segment: offset CS << 4 + IP = 指令的線性位址(Linear Address Of Instruction) .位址線(Address-Lines) : 20條(1024KB) 這種定址模式稱為真實模式定址(Real mode addressing),而它允許8x86定址至1MB的記憶體。 接著說明真實模式的特性: 1. 捲繞(8086 記憶體特性) 當記憶體位址超過0FFFFFh 時,會捲繞回00000h。 2. A20 開關(switch) X86 CPU在268時,位址線增加至24條(16MB超過1024KB)。為了相容性,在位址線A20~A23設計了一個開關(A20 switch),它可切換兩種定址方式: .強制歸零: (Real-Mode)模擬8086的記憶體捲繞特性。 .可進位: (Protect-Mode)可以在0FFFFFh進位。 最後明確定義真實模式: 當IA-32 CPU在使用真實模式定址狀態下執行時,稱為真實模式(Real Mode)。 保護模式(Protect mode): 它允許8x86定址至4 GB(32條位址線)的記憶體。 但從保護模式切回真實模式時,必需重置(Reset),那麼不就等於又重新開機,也就使得之前所執行的部份又得重新執行一遍,這樣將會永無止境的執行下去,為了解決這個問題,發展出了一個機制,下面詳細說明其步驟: 解決從保護模式切回真實模式必須 重置(Reset)! 的問題 8042鍵盤控制器(近似一顆簡單小型的CPU,也有自已的韌體負責keyboard、A20 開關 和 重置)。 Step1. 把關機(shutdown) 返回指示位元組 & 返回位址寫入CMOS。 Step2. 然後下令打開A20切到保護模式。 ------------- 切到保護模式 ----------------------- ‧ ‧ ‧ ‧ ‧ ‧ ------------- 回到真實模式 ----------------------- Step3. 重置鍵盤控制器(KBC),因為鍵盤控制器有自已的韌體,不受系統重置影嚮。 Step4. CPU-> 0FFFFF:00000h 做簡單CPU 測試。 Step5. 從CMOS 讀入關機返回指示位元判斷此次為何種關機: .硬體正常開機(power-on、reset)。 .重保護模式返回(軟體重置(Soft reset)) -> 讀取返回位址。 注意:至386以後以設計可直接從保護模式返回真實模式,但還是保留A20開關、軟體重置(為了向下相容性)。 2.1.2 晶片組(Chip-set) 早期主機板上焊滿大量電阻、電容、IC和複雜電路, 這樣才能達成一個功能.. 不但成本高, 也很難完成很多功能或除錯, 所以借由半導體技術,將這些電子元件、線路微縮至幾個大型晶片內,以化簡主機板設計,稱為系統晶片組,到現在主要分為兩大晶片: .北橋晶片(North-Bridge): intel稱之為記憶體控制集線器MCH(Memory Control Hub),集線器(Hub)也就是把其它裝置集中連線到北橋晶片上,而北橋是靠近CPU的一端,所以它主要連接高速的裝置 ,像是CPU、Memory、顯示卡,並且它也包含了記憶體控制器(Memory Controller),所以顧名思義命名為記憶體控制集線器(Memory Control Hub)。 .南橋晶片(South-Bridge): 輸入/輸出控制集線器ICH(I/O Control Hub),不同於MCH主導高速裝置,它相業負責較低速的I/O週邊,像是鍵盤、Printer、USB..等,並集成了部份I/O 週邊的控制晶片(super I/O、USB控制器、鍵盤控制器..等)、CMOS。 2.1.3 整合中低速率介面(Super I/O) 它提供了下列介面: Serial Port: Com1 & Com2 Parallel Port: LPT Game/Joystick I/O FDC Controller(軟碟機) InfraRed(IR):需佔用一個com port 除了標準介面以外,廠商也會增加額外功能,例如 溫度偵測、CPU風扇轉速控制(fan control)、控制工作電壓(work voltage)..等。 2.1.4 鍵盤控制器(Keyboard Controller) 跟鍵盤做溝通的就是KBC,每當你按一個按鍵,鍵盤就會送出一個掃描碼 (scancode)給鍵盤控制器,經由鍵盤控制器翻譯後在發出中斷給CPU,由CPU接收處裡,而且鍵盤控制器的中斷優先權相當高,僅次於8253計時中斷器。 鍵盤控制器有8個暫存器是跟CPU溝通,兩個8-bit I/O port跟鍵盤溝通: .輸入是P1,從鍵盤接收輸入。 .輸出是P2,發出輸出給鍵盤。 2.1.5 CMOS(RTC/CMOS 計時/參數晶片) .RTC(Real Time Clock): 計時器 負責維持電腦時間。 .CMOS: 為一存儲資料的空間,用來記錄日期、時間和BiOS 設定。 具備低秏電特性,當電腦關閉時會改由電池供電,以維持電腦設定值。 2.2 匯流排系統(BUS System) 2.2.1 週邊元件介面匯流排PCI (Peripheral Component Interface Bus) 週邊元件匯流排PCI可以說是x86 系統中,最重要的一個匯流排系統,因為它連接大多數主機板上的裝置 ! 在一個基本的PCI 匯流排系統中(無其它PCI匯流排橋接控制晶片),最多可以有32個PCI裝置(北橋晶片、南橋晶片、網路卡、USB控制晶片..)互相連接,在一般主機板中,晶片組本身最少就佔一組(PCI 控制器),有時侯會佔用到兩組或更多。 2.2.2 系統管理匯流排SMBus (System Management Bus) 系統管理匯流排由兩條訊號線構成,而經由它的可使小型系統和電源管理相關晶片,得以和其它的系統溝通。它提供符合SMBus的裝制偵測、定位、讀寫參數等設定之用。例如 可用系統管理匯流排去偵測DRAM插了幾排,並抓取該排SPD參數,或是讀取硬體監控晶片的參數值(CPU溫度、風扇轉速、電源)、把不用裝置關掉。 Ps: (此兩條系統管理匯流排訊號線為 SMBCLK, 和 SMBDAT,工作在100KHz。) 2.2.3 低針腳數LPC (Low pin count) 是用來取代傳統工業標準架構ISA(Industry Standard Architecture) 匯流排的介面規格,因為以往ISA 匯流排的位置/資料 是分離解碼,而LPC是採用類似週邊元件匯流排PCI位置/資料 共用解碼方式,所以 以LPC介面設計的Super I/O晶片..等,可以大幅降低訊號線數量(腳位),主機板也可以簡化設計。
2.2.4 GP I/O(General Purpose I/O) Chipset 提供的通用I/O 控制訊號線,也可稱為使用者可規畫(User-Programmable) GP I/O,也就是可以依照需求,將GPIO當成IO Input 或是IO Output或是Input+Output(雙向),它的使用範圍很廣泛,不過還是得參照使用Chip的規範來使用。而它主要作為主機板上元件的特殊控制(運用GP I/O 設計相關硬體線路,然後配合BIOS),例如鍵盤power-on、網路喚醒(wake on Lan)、超頻(overclocking)。 2.3 電源管理(Power management) 2.3.1 系統管理模式SMM (System Management Mode) 這個模式是由特殊目的中斷 一系統管理中斷SMI(System Management Interrupt)組成,它被視為硬體介面和安全的記憶體位址空間,作為存放處理器狀態和SMI 處理程序(SMI handler),SMI 處理者為一種特殊的軟體程序,用以執行不同的系統管理功能(例如電源控制)。當SMI被觸發時,CPU會將它的狀態儲存至記憶體,然後開始執行SMI 處理程序,最後在最後一道指令,執行從記憶體讀回處理器狀態,然後解除中斷,並交回控制權至先前程序。它執行的主要程序為休眠模式,而處理器為電腦系統裡功率相對較高的元件,因此時眽控制在系統管理模式下(使用休眠時),可以省下很多處理器的電源消秏。 2.3.2 進階電源管理APM (Advanced Power Management) BIOS提供作業系統一個呼叫表(call-table),用以控制硬體電源狀態。但由於APM定義的功能較侷限(BIOS本身的限制),並且只能做簡單的監控,所以省電效率並不高,所以另外發展出ACPI進階設定與電源介面(在下面另作說明)。 2.3.3 進階設定與電源介面ACPI (Advanced Configuration and Power Interface) 不同於進階電源管理APM由BIOS主導電源管理,進階設定與電源介面ACPI是由OS主導著電源管理,因為最後掌控電腦的是OS,可以做的變化相對多了,所以把電源管理由BIOS 轉移至OS,才能真正發揮出電源管理的效率。 |
|||||||||||||||
( 知識學習|科學百科 ) |