網路城邦
上一篇 回創作列表 下一篇   字體:
BIOS basic knowledge - 2 Important HardWare
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 CPU268時,位址線增加至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,也有自已的韌體負責keyboardA20 開關 重置)

Step1. 把關機(shutdown) 返回指示位元組 & 返回位址寫入CMOS

Step2. 然後下令打開A20切到保護模式。

------------- 切到保護模式 -----------------------

              

              

              

              

              

              

------------- 回到真實模式 -----------------------

Step3. 重置鍵盤控制器(KBC),因為鍵盤控制器有自已的韌體,不受系統重置影嚮。

Step4. CPU-> 0FFFFF:00000h 做簡單CPU 測試。

Step5. CMOS 讀入關機返回指示位元判斷此次為何種關機:

.硬體正常開機(power-onreset)

.重保護模式返回(軟體重置(Soft reset)) -> 讀取返回位址。

注意:386以後以設計可直接從保護模式返回真實模式,但還是保留A20開關、軟體重置(為了向下相容性)

2.1.2 晶片組(Chip-set)

早期主機板上焊滿大量電阻、電容、IC和複雜電路, 這樣才能達成一個功能.. 不但成本高, 也很難完成很多功能或除錯, 所以借由半導體技術,將這些電子元件、線路微縮至幾個大型晶片內,以化簡主機板設計,稱為系統晶片組,到現在主要分為兩大晶片:

北橋晶片(North-Bridge): intel稱之為記憶體控制集線器MCH(Memory Control Hub),集線器(Hub)也就是把其它裝置集中連線到北橋晶片上,而北橋是靠近CPU的一端,所以它主要連接高速的裝置 ,像是CPUMemory、顯示卡,並且它也包含了記憶體控制器(Memory Controller),所以顧名思義命名為記憶體控制集線器(Memory Control Hub)

南橋晶片(South-Bridge): 輸入/輸出控制集線器ICH(I/O Control Hub),不同於MCH主導高速裝置,它相業負責較低速的I/O週邊,像是鍵盤、PrinterUSB..等,並集成了部份I/O 週邊的控制晶片(super I/OUSB控制器、鍵盤控制器..)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匯流排橋接控制晶片),最多可以有32PCI裝置(北橋晶片、南橋晶片、網路卡、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晶片..等,可以大幅降低訊號線數量(腳位),主機板也可以簡化設計。

 

ISA

LPC

Data width

16bit

4bit

Work.freq.

8.33MHz

33.3MHz

Addressing space

24(16MB)

32(4GB)

Max Transfer width

16MB/s

16MB/s

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)

不同於進階電源管理APMBIOS主導電源管理,進階設定與電源介面ACPI是由OS主導著電源管理,因為最後掌控電腦的是OS,可以做的變化相對多了,所以把電源管理由BIOS 轉移至OS,才能真正發揮出電源管理的效率。

( 知識學習科學百科 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=wens1689&aid=8040760
 引用者清單(1)  
2014/10/05 07:54 【udn】 這裡更便宜!下置 轉速 電源 控制比價