其實我不知道我對歷史的看法對不對,

我覺得歷史, 就這個主題來說, 只是了解它的發展過程而已, 是不用太認真的.

不過我是覺得我花得有點多時間來整理細節出來..

 

印象中其他人在報告時總是在講演進歷史, 最後還是不明白它怎麼運作的, 或是它是甚麼東西.

應該是這樣的曾經印象讓我對探討歷史不是很同意吧

---------------------------------------------------------------

1. UEFI Brief Introduction

1-1. 從何而來

在發展Itanium處理器的過程中, 所發展出的韌體介面.

在這邊有幾個硬體架構的概念先提出來, 分別是

1. 指令集架構 - Instruction Set Architecture.

2. 微架構 - Microarchitecutre.

//指令集架構, 像是一個基礎框架. 程式設計師或翻譯器撰寫所看的到的部分

  除了設計有哪些指令之外, 還有暫存器個數, 定址空間等.

  根據指令複雜度與長度, 常聽到的有CISC與RISC; 其他像是VLIW, EPIC.

  ISA不只是指處理器的方面, 還有其他應用, 像是Java的VM則是用Bytecode作為自己的ISA. (*2)

//微架構, 則是將ISA實作出來的技術

  正反器與邏輯閘的設計, 電路的規劃, 連接各區塊,

  區塊所代表的則是加法器, 乘法器, 計數器, 暫存器, ALU等元件.

  還有更多其他應用與介紹, 像是hardwire或是mircocode的設計方式    (*3)

  至於更多增加效能的技術, 這邊就不進一步說明

  如指令管線化(Instruction Pipelining), 或是超純量架構(Superscalar CPU Architecture)

 

現在可以先舉個例子來說, 如Intel Xeon處理器, ISA用的是x86_64指令集, 是屬於CISC類別的指令集,

微架構則是應用Sandy-bridge.

而Xeon這個名稱則是廠商對於特定市場定位所命名的市場名稱, 這邊代表是伺服器市場.

(也因此, 雖然市場名稱Xeo名稱沒變, 但隨著技術發展, 每個時期的微架構會隨之改變,

 如後來的Ivy-bridge, Haswell, etc)

 

說明一會後, 回來介紹 Itanium是甚麼.

Itanium是一個64bit的處理器, ISA使用EPIC.

1-2. History

以下是自己整理後的時期變化:

1987年(或1989年) –

HP考量到RISC未來發展的瓶頸(最快只能一週期一指令), 另外Intel本身不看好x86指令集(CISC)的未來發展空間,

於是Intel與HP開始合作, 以PA-RISC為基礎, 開發出VLIW style的架構

(http://www.hpl.hp.com/news/2001/apr-jun/itanium.html)

//這邊提到的PA-RISC則是早期, HP開發的一種RISC指令集

//x86指令集, 通指早期CPU如8086, 80186, 80286, 80386, 80486等以86數字結尾的處理器所用的指令集

  目前通指32位元指令集(嚴格說來8086是8-bit, 80186跟80286是16bit處理器)

  (再多做補充: 8088, 80188是將外部資料匯流排做成8-bit的處理器, 早期16-bit還不普及, 所做的經濟型)

  (87結尾的代表是台語北七的意思 作為浮點運算器用的輔助處理器)

  以上補充可看另一篇補充文章: http://billy6719.pixnet.net/blog/post/125228720

 1994年 –

開始IA-64指令集與處理器研發計畫,

系統的韌體架構結合了PAL與SAL(處理器及系統抽象層),

其概念從PA-RISC中承襲而來, 那時稱作processor- and I/O-dependent code (PDC-IODC)

//參考文件自503740_Broad_Use_of_UEFI_in_Hewlett_Packard_Systems.pdf -  from IBL

1996年 –

公布Itanium商標

1998年 –

發表共同開發的成品, 內部代號為Merced

Intel Boot Initiative在這一年也被提出來, 為的是解決BIOS的限制

(如中斷, I/O port空間, option ROM執行空間, PCI bus number等等的限制)

(由來: 在Windows尚未推出支援Itanium的OS前, 這樣的新系統想使用當時市場龐大的x86 OS
 但是有許多上述提到的BIOS限制都會連帶過來, 造成許多問題(資源重複, 不彈性等等)而讓boot device的支援也受到限制
 後來HP也為此提出Enhanced Mode option rom的概念, 不過因Windows開始支援Itanium之後
 也就沒完成了. 但因此, 此時也開始初步構想, 需要一個新的boot model來取代BIOS)

 2000年 –

12月, EFI 1.02版 (http://www.techbang.com/posts/4361-fully-understand-uefi-bios-theory-and-actual-combat-3-liu-xiudian)

還未解決option rom的限制問題 (503740_Broad_Use_of_UEFI_in_Hewlett_Packard_Systems.pdf from IBL)

Intel第一代Itanium工作站及伺服器也是這年Released, 使用1.1(時間沒寫清楚, 應是上述12月後, from Eng Wiki)

另外同一年, EFI 1.02已經用在Linux系統

一些資料總合, 應該是使用FreeBSD在ia-64機台上嘗試實作(The Evolution of the UEFI.pdf from IEH).

2001年 –

 6月, 第一代Itanium推出.

2002年 –

12月, EFI 1.10版

加入了EFI driver model (解決了Option ROM的限制問題), 完成了針對Itanium的boot model, 也成為其系統裡唯一支援的boot model.

HP第一個Itanium 2系統, 也在這年Released, 使用1.10

2005年 –

7月, 將EFI Spec v1.10轉交給UEFI論壇, 演化成UEFI

2006年 –

1月10日, Apple推出首代使用Intel處理器(Intel Core Duo, x86處理器)的Mac電腦 (之前是用Motorola跟IBM的),

同時也應用了EFI來作為韌體介面(取代原先的Open Firmware, 用於之前的PowerPC-based系統)

而其一的GPT概念也在其中. 這系列電腦是UEFI Class 2 System

1月31日, UEFI 2.0, 定義了與x64處理器的binding

以及加入了PXE與IPv4 & IPv6 (not quite sure in this revision)

Framework這時也演化成了PI

2007年 –

1月7日, UEFI 2.1

2.2時加入 Secure boot (not quite sure in this revision and the date)

2008年 –

許多64位元電腦系統也開始支援UEFI (http://www.techbang.com/posts/4361)

2009年 –

5月, UEFI 2.3,  定義了與ARM處理器的binding

2013年 –

7月, UEFI 2.4

 

 

---------------------------------------------------------------

參考資料來源: (wiki嘛, 基礎參考來源, 哈哈)

1. Itanium

http://en.wikipedia.org/wiki/Itanium 

http://www.ithome.com.tw/node/38381

(深度剖析英特爾旗艦處理器-走出隧道盡頭的Itanium) //這篇寫得很長, 像故事一樣...

2. ISA

http://en.wikipedia.org/wiki/Instruction_set

http://systw.net/note/af/sblog/more.php?id=35   

(關於"指令集架構的設計", 寫得很專業)

3. Microarchitecture

 ...Wiki...

4. UEFI

http://www.techbang.com/posts/4356    (即將換掉傳統 BIOS 的 UEFI,你懂了嗎? 一)

http://www.techbang.com/posts/4359    (分別第二頁, 三, 四; 用google搜UEFI首先會看到的網頁)

http://www.techbang.com/posts/4361

http://www.techbang.com/posts/4363

 

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 H.j. Yao 的頭像
    H.j. Yao

    紀錄, 記東記西

    H.j. Yao 發表在 痞客邦 留言(0) 人氣()