TWI514281B - 具spi介面的sata儲存裝置、應用該sata儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法 - Google Patents
具spi介面的sata儲存裝置、應用該sata儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法 Download PDFInfo
- Publication number
- TWI514281B TWI514281B TW103129636A TW103129636A TWI514281B TW I514281 B TWI514281 B TW I514281B TW 103129636 A TW103129636 A TW 103129636A TW 103129636 A TW103129636 A TW 103129636A TW I514281 B TWI514281 B TW I514281B
- Authority
- TW
- Taiwan
- Prior art keywords
- basic input
- sata
- output system
- interface
- control unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 33
- 230000015654 memory Effects 0.000 claims description 141
- 238000012545 processing Methods 0.000 claims description 74
- 238000012360 testing method Methods 0.000 claims description 12
- 238000004519 manufacturing process Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 230000008439 repair process Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000012827 research and development Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000012356 Product development Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- RVCKCEDKBVEEHL-UHFFFAOYSA-N 2,3,4,5,6-pentachlorobenzyl alcohol Chemical compound OCC1=C(Cl)C(Cl)=C(Cl)C(Cl)=C1Cl RVCKCEDKBVEEHL-UHFFFAOYSA-N 0.000 description 1
- 241000208140 Acer Species 0.000 description 1
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 150000002016 disaccharides Chemical class 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Description
本發明係有關於一種SATA儲存裝置,尤指一種安裝於個人電腦系統中使該電腦系統不需使用基本輸入輸出系統唯讀記憶體(BIOS ROM)的具SPI介面的SATA儲存裝置、應用該SATA儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法。
個人電腦中的基本輸入輸出系統記憶體自1980年代使用的唯讀記憶體(ROM, Read-only memory)發展為現今的NOR快閃記憶體(Flash memory),其容量也由當初的16KB發展到128KB或更高,編輯BIOS時所使用之電腦語言也由組合語言發展到C語言。傳統BIOS唯讀記憶體(ROM)使用ISA與X-BUS介面,自1998年起個人電腦則使用LPC(Low Pin Count)匯流排介面,現在則使用串(序)列周邊介面(SPI, Serial Peripheral Interface) 匯流排。使用SPI介面的優點是腳位少可以進一步節省成本,SPI只需4個訊號即可,包括主輸出從輸入MOSI(Master Output Slave Input)、主輸入從輸出MISO(Master Input Slave Output)、串列時脈SCK(Serial Clock)及從選擇SS(Slave Select)等。
當電腦的電源開啟後第一時間T1,CPU就會讀取BIOS程式碼到動態隨機存取記憶體中執行,首先完成電源開機自我測試POST(Power-on Self-test),將系統晶片組和記憶體等子系統初始化。BIOS程式碼也包含診斷功能,以保證某些重要硬體元件,像是鍵盤、磁碟裝置、輸出輸入埠等等,可以正常運作且正確地初始化。幾乎所有的BIOS都可以選擇性地執行CMOS記憶體的設定程式;也就是保存BIOS會存取的使用者自訂設定資料(時間、日期、硬碟機細節,等等)。最後BIOS程式碼會將作業系統儲存裝置的主要開機紀錄MBR並把權力交給MBR(開機第二時間T2),MBR則陸續將作業系統所有檔案載入動態隨機存取記憶體中並執行。
而一般電腦出售後也常有BIOS程式碼更新版本的動作。現在更新BIOS版本的方式通常是電腦使用者透過網路,從電腦製造商網站上抓取更新的版本,下載後執行BIOS更新程式(開機第三時間T3),將新的BIOS 程式碼燒錄(Programing)至BIOS記憶體中。所以燒錄新BIOS程式碼時,須先抹除(Erase)BIOS記憶體後才能燒錄(Programing)新的程式碼,一般說來,燒錄一個新的BIOS程式碼約需數分鐘時間。
並目前快閃記憶體(Flash memory)可分為NOR快閃記憶體(NOR flash)或NAND 快閃記憶體(以下NAND flash),其特性係如下述:
(a) NOR快閃記憶體:因內部位址儲存連續,故適合儲存程式碼且可支持處理器以「原地執行」(Execute in place,XIP)方式直接於NOR快閃記憶體上進行運算,然而,NOR快閃記憶體之結構精密複雜,製造成本高,並不適合儲存大容量(例如超過16MB)之檔案。所以,現在的BIOS 都使用NOR 快閃記憶體。
(b) NAND快閃記憶體:因生產結構較簡易、單位面積可儲存之容量較大且寫入與擦除速度較快,故NAND快閃記憶體相較於NOR快閃記憶體,更適於儲存低成本之檔案,因此固態硬碟(Solid State Disk,SSD)或SATA DOM常以NAND 快閃記憶體之陣列實現,一筆相同大小的檔案寫入NOR快閃記憶體與NAND快閃記憶體,很明顯的NOR快閃記憶體需花費更多時間,通常是數百倍時間。
SATA DOM (SATA Disk-On-Module) 的基本結構與SSD相同,兩者主要差異為容量不同,另外,SATA DOM 通常其外觀如一張小卡片的結構,或者一個小PCBA或稱模組,而SSD通常設計成與硬碟機(HDD)相同的外觀尺寸(Form factor)。此外,目前SATA DOM只支援SATA介面。
傳統上,個人電腦使用BIOS 記憶體有一些缺點:一是材料成本及燒錄BIOS程式碼的間接製造成本,且電腦出售後BIOS 版本更新也不方便,另外當BIOS 記憶體中毒或毀損時,該電腦必須送修,而替換新的BIOS 記憶體也同樣耗費人力成本。有鑑於習知技術之各項問題,需要一個解決方案來解決上述問題。
是以,要如何解決上述習用之問題與缺失,即為本案之發明人與從事此行業之相關廠商所亟欲研究改善之方向所在者。
爰此,為有效解決上述之問題,本發明之主要目的在提供一種使用該SATA儲存裝置其內快閃記憶體陣列的基本輸入輸出系統程式碼取代傳統的電腦主機上的BIOS記憶體,藉以達到節省成本及更新簡單便利性佳之效果的具SPI介面的SATA儲存裝置。
本發明之另一目的係提供一種具有使用該SATA儲存裝置其內快閃記憶體陣列的基本輸入輸出系統程式碼取代傳統的電腦主機上的BIOS記憶體,藉以達到節省成本及快速維修之效果的應用該SATA儲存裝置之開機方法。
本發明之另一目的係提供一種具有使用該SATA儲存裝置其內快閃記憶體陣列的基本輸入輸出系統程式碼取代傳統的電腦主機上的BIOS記憶體,藉以達到節省成本、更新簡單便利性佳及快速維修之效果的應用該SATA儲存裝置之基本輸入輸出系統程式碼更新方法。
為達上述目的,本發明係提供一種具SPI介面的SATA儲存裝置,係應用於一無基本輸入輸出系統唯讀記憶體之電腦系統上,該SATA儲存裝置包括一快閃記憶體陣列及一控制單元,該快閃記憶體陣列係用以儲存一第一基本輸入輸出系統程式碼及一作業系統,該控制單元的一側係耦接該快閃記憶體陣列,其另一側耦接相對該電腦系統,並該控制單元包含一具有韌體程式之韌體及一隨機存取記憶體,該隨機存取記憶體係用以作為該控制單元執行韌體程式運算與資料的暫存區,所以當開機時,該控制單元係執行該韌體之韌體程式,從該快閃記憶體陣列內的第一基本輸入輸出系統程式碼搬移至該隨機存取記憶體內後,再傳送給該電腦系統;透過本發明具有SPI介面的SATA儲存裝置的設計,使得能有效取代傳統的電腦主機上的BIOS記憶體,藉以達到節省成本與更新簡單便利性佳及快速維修之效果。
本發明係另提供一種應用該SATA儲存裝置之開機方法,係應用於一無基本輸入輸出系統唯讀記憶體之電腦系統上,該SATA儲存裝置包含一快閃記憶體陣列、一第一SPI介面、一第一SATA介面及一耦接該快閃記憶體陣列之控制單元,該快閃記憶體陣列儲存有一第一基本輸入輸出系統程式碼及一作業系統,該控制單元係分別耦接該第一SPI介面與第一SATA介面,且其包含一具有韌體程式之韌體及一隨機存取記憶體,並該電腦系統包含一電腦主機,該電腦主機具有一中央處理單元、一耦接該第一SPI介面之第二SPI介面、一耦接該第一SATA介面之第二SATA介面及一耦接該中央處理單元之動態隨機存取記憶單元,該開機方法首先啟動前述電腦系統進行開機,並該控制單元執行該韌體之韌體程式,讀取從該快閃記憶體陣列搬移到該隨機存取記憶體中的第一基本輸入輸出系統程式碼,並檢測該SPI介面,同時該電腦系統會進行硬體重置動作完後,該中央處理單元透過該第二SPI介面傳送一讀取訊號至該第一SPI介面,此時該控制單元檢測該SPI介面接收到所傳送的讀取訊號後,該控制單元將於該隨機存取記憶體內的第一基本輸入輸出系統程式碼透過該第一SPI介面傳送給該中央處理單元,接著該中央處理單元透過該第二SPI介面將接收到前述第一基本輸入輸出系統程式碼,搬移到該動態隨機存取記憶單元中直到全部讀取完成後,該中央處理單元則執行該第一基本輸入輸出系統程式碼並進行自我開機測試及起始化測試完後,便傳送一指令,然後該控制單元執行接收到該中央處理單元傳送的指令,讀取從該快閃記憶體陣列搬移到該隨機存取記憶體中的作業系統,並透過該第一SATA介面傳送給該中央處理單元,最後該中央處理單元透過該第二SATA介面將接收到的作業系統載入至該動態隨機存取記憶單元中,並執行載入的作業系統;透過本發明此開機方法的設計,使得能有效取代傳統的電腦主機上的BIOS記憶體,藉以達到節省成本與快速維修之效果。
本發明係另提供一種應用該SATA儲存裝置之基本輸入輸出系統程式碼更新方法,係應用於一無基本輸入輸出系統唯讀記憶體之電腦系統上,該SATA儲存裝置包含一快閃記憶體陣列、一第一SPI介面、一第一SATA介面及一耦接該快閃記憶體陣列之控制單元,該快閃記憶體陣列係用以儲存一第一基本輸入輸出系統程式碼、一第二基本輸入輸出系統程式碼、一基本輸入輸出系統更新程式及一作業系統,該控制單元係分別耦接該第一SPI介面與第一SATA介面,且其包含一具有韌體程式之韌體及一隨機存取記憶體,並該電腦系統包含一電腦主機,該電腦主機具有一中央處理單元、一耦接該第一SPI介面之第二SPI介面、一耦接該第一SATA介面之第二SATA介面及一耦接該中央處理單元之動態隨機存取記憶單元,該基本輸入輸出系統程式碼更新方法首先當使用者欲更新為該第二基本輸入輸出系統程式碼時,該控制單元透過該第一SATA介面將被搬移到該快閃記憶體內的基本輸入輸出系統更新程式傳送該中央處理單元,令該中央處理單元透過一第二SATA介面接收並執行該基本輸入輸出系統更新程式,令該基本輸入輸出系統更新程式被載入至該動態隨機存取記憶單元中執行,並傳送一基本輸入輸出系統更新指令,接著該控制單元透過該第一SATA介面接收到該基本輸入輸出系統更新指令後,將該第二基本輸入輸出系統程式碼複製至該快閃記憶體中的一指定區塊中,此時該控制單元將於該指定區塊中的第二基本輸入輸出系統程式碼的啟用旗標設為開啟,同時將先前於該指定區塊內的第一基本輸入輸出程式碼設為關閉後完成更新;透過本發明此基本輸入輸出系統程式碼更新方法的設計,使得能有效取代傳統的電腦主機上的BIOS記憶體,藉以達到節省成本、更新簡單便利性佳及及快速維修之效果。
1‧‧‧SATA儲存裝置
11‧‧‧快閃記憶體陣列
111‧‧‧第一基本輸入輸出系統程式碼
112‧‧‧作業系統
113‧‧‧啟用旗標
114‧‧‧第二基本輸入輸出系統程式碼
115‧‧‧基本輸入輸出系統更新程式
13‧‧‧控制單元
14‧‧‧韌體
15‧‧‧隨機存取記憶體
16‧‧‧第一SPI介面
17‧‧‧第一SATA介面
2‧‧‧電腦系統
21‧‧‧電腦主機
211‧‧‧中央處理單元
212‧‧‧動態隨機存取記憶單元
213‧‧‧第二SPI介面
214‧‧‧第二SATA介面
23‧‧‧顯示單元
24‧‧‧輸入單元
25‧‧‧電源供應單元
第1圖係為本發明之第一較佳實施例之方塊示意圖。
第2圖係為本發明之第一較佳實施例之SATA儲存裝置與電腦系統耦接之方塊示意圖。
第3圖係為本發明之第二較佳實施例之開機流程示意圖。
第4圖係為本發明之第二較佳實施例之更新流程示意圖。
本發明之上述目的及其結構與功能上的特性,將依據所附圖式之較佳實施例予以說明。
本發明係一種具SPI介面的SATA儲存裝置、應用該SATA儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法。請參閱第1、2圖式,係本創作之第一較佳實施例之方塊示意圖;於該本較佳實施例之具SPI(Serial Peripheral Interface)介面的SATA儲存裝置1係以SATA電子硬碟(Disk On Module,DOM),可簡稱為SPI-SATA DOM做說明,但並不侷限於此;於具體實施時,本創作之SATA儲存裝置亦可選擇為一SATA固態硬碟或一SATA硬碟機,亦即SATA固態硬碟具有SPI介面,SATA硬碟機具有SPI介面。該SATA儲存裝置1係應用於一無基本輸入輸出系統唯讀記憶體之電腦系統2上,該SATA儲存裝置1(SATA DOM)包括一快閃記憶體陣列11、一第一SPI(Serial Peripheral Interface)介面16、一第一SATA介面17及一控制單元13,該快閃記憶體陣列11係具有複數NAND快閃記憶體,該等NAND快閃記憶體係用以儲存複數第一基本輸入輸出系統(Basic Input Output System,如下簡稱BIOS)程式碼111、複數啟用旗標113、一第二基本輸入輸出系統(BIOS)程式碼114、一基本輸入輸出系統(BIOS)更新程式115、一作業系統112及其他應用程式與資料,其中於該較佳實施例之第一BIOS程式碼111係以複數個BIOS程式碼做說明,但並不侷限於此,於具體實施時,亦可選擇設計該快閃記憶體陣列11內只儲存一個第一BIOS程式碼111。
而前述複數第一BIOS程式碼111係儲存在其中一NAND快閃記憶體的一指定區塊(或稱為特定的記憶區塊)中,且該等第一BIOS程式碼111中僅有一第一BIOS程式碼111的啟用旗標113(Boot-Flag)設定為開啟,用以供控制單元13讀取;其中前述NAND快閃記憶體的指定區塊(Block)係為該作業系統112無法辨識的記憶區塊。前述第一SPI介面16係為控制單元13中第一BIOS程式碼111的傳輸介面,該第一SPI介面16的一端係耦接該電腦系統2,其另一端則耦接該控制單元13,用以供所述控制單元13將該快閃記憶體陣列11的第一BIOS程式碼111傳送給該電腦系統2上。 並該第一SATA介面17係為串列ATA(Serial ATA: Serial Advanced Technology Attachment),包含SATA1.0、SATA2.0、 SATA3.0、SATA Express、e SATA及爾後衍生新規格均屬之,且該第一SATA介面17之一端係耦接該電腦系統2,其另一端則耦接該控制單元13。
而前述作業系統112係為如視窗作業系統112(Windows O.S.)、Unix、Linux Android等可在電腦系統2具有的一電腦主機21中運算與執行的任一作業系統112(即執行於個人電腦之作業系統112),該BIOS更新程式115為可在作業系統112環境下執行的一應用程式,當使用者取得新版本BIOS 程式碼(即第二BIOS程式碼114)後,得執行BIOS更新程式115將原先第一BIOS程式碼111更換為新版本BIOS 程式碼(即第二BIOS程式碼114)。
前述控制單元13於該較佳實施例係以微處理器做說明,但不侷限於此;於具體實施時,亦可選擇為微控制器(MCU)或積體電路晶片等可燒錄韌體之控制單元13,該控制單元13可接收指令、執行判斷並控制快閃記憶體陣列11。而所述控制單元13的一側係耦接該快閃記憶體陣列11,其另一側耦接相對該電腦系統2,亦即如第2圖式,該控制單元13的一側係耦接該快閃記憶體陣列11,其另一側是分別透過該第一SPI介面16與第一SATA介面17電性連接相對的電腦系統2。
續參閱第1、2圖式,該控制單元13包含一具有韌體程式之韌體14及一隨機存取記憶體15,該隨機存取記憶體15(Random Access Memory,RAM)係用以作為該控制單元13執行該韌體14之韌體程式運算與資料的暫存區,所以當開機時,該控制單元13係執行該韌體14之韌體程式,從該快閃記憶體陣列11內的第一基本輸入輸出系統程式碼111搬移至該隨機存取記憶體15內後,再傳送給該電腦系統2,亦即當電腦系統2開機時,該控制單元13係執行該韌體程式,讀取其中一NAND快閃記憶體的指定區塊中啟用旗標113設為開啟(ON)的第一BIOS程式碼111後,透過該第一SPI介面16傳送給連接的電腦系統2。
前述電腦系統2包含前述無基本輸入輸出系統唯讀記憶體(BIOS ROM)之電腦主機21、一顯示單元23、一輸入單元24及一電源供應單元25,該顯示單元23(如LCD螢幕)與輸入單元24係分別電性連接該電腦主機21,該電源供應單元25係為電腦系統2的電源供應,包括電源開關及各級不同電位之電能供應,換言之,就是該電源供應單元25用以供應該中央處理單元211、控制單元13、輸入單元24、動態隨機存取記憶單元212及快閃記憶體陣列11運作之電源。
所述輸入單元24可包含鍵盤、滑鼠、軌跡球及觸控板(Touch Pad)等。並前述電腦主機21具有一中央處理單元211、一動態隨機存取記憶單元212及一第二SPI介面213與一第二SATA介面214,該中央處理單元211是電腦主板的中央處理器,一般而言是Intel 或AMD公司的PC相容CPU,但並不限於這兩家的產品。此外,現在的CPU單元常常整合了周邊裝置的邏輯電路,也包含在我們的定義中,例如Intel 3-核心處理器ivy-bridge處理器或Sandy-bridge處理器等甚至包含了內建顯示卡晶片。
前述電腦系統2包含前述無基本輸入輸出系統唯讀記憶體(BIOS ROM)之電腦主機21、一顯示單元23、一輸入單元24及一電源供應單元25,該顯示單元23(如LCD螢幕)與輸入單元24係分別電性連接該電腦主機21,該電源供應單元25係為電腦系統2的電源供應,包括電源開關及各級不同電位之電能供應,換言之,就是該電源供應單元25用以供應該中央處理單元211、控制單元13、輸入單元24、動態隨機存取記憶單元212及快閃記憶體陣列11運作之電源。
所述輸入單元24可包含鍵盤、滑鼠、軌跡球及觸控板(Touch Pad)等。並前述電腦主機21具有一中央處理單元211、一動態隨機存取記憶單元212及一第二SPI介面213與一第二SATA介面214,該中央處理單元211是電腦主板的中央處理器,一般而言是Intel 或AMD公司的PC相容CPU,但並不限於這兩家的產品。此外,現在的CPU單元常常整合了周邊裝置的邏輯電路,也包含在我們的定義中,例如Intel 3-核心處理器ivy-bridge處理器或Sandy-bridge處理器等甚至包含了內建顯示卡晶片。
而前述中央處理單元211係電性連接該控制單元13與動態隨機存取記憶單元212,亦即該電腦主機21的第二SPI電性連接相對該第一SPI介面16,其第二SATA介面214電性連接該第一SATA介面17,令該中央處理單元211與控制單元13電性連接,且該中央處理單元211耦接相對的動態隨機存取記憶單元212。此外,於本發明實際實施時,本創作之SATA儲存裝置1可直接安裝(或整合)於該電腦主機21中,亦即該SATA儲存裝置1之控制單元13的複數接腳可直接電性連接對應該電腦主機21的中央處理單元211的複數接腳,使得所述第一、二SPI介面與第一、二SATA介面均可去除。
並所述動態隨機存取記憶單元212係由複數個動態隨機存取模組(DRAM Module)所構成,其為第一BIOS程式碼111、作業系統112和應用程式與資料運算和暫存的儲存裝置,亦即該動態隨機存取記憶單元212係選擇為SDRAM、DDR2、DDR3、DDR4等使用於個人電腦中用以程式及資料存取之記憶體。
請參閱第2圖式,所以當啟動電腦系統2開機時,該電源供應單元25供應電源給中央處理單元211、動態隨機存取記憶單元212、控制單元13和快閃記憶體陣列11,令前述控制單元13係執行該韌體程式,將快閃記憶體陣列11的複數第一BIOS程式碼111中啟用旗標113被設為開啟的第一BIOS程式碼111,先搬移到該隨機存取記憶體15中,然後透過該第一SPI介面16傳送給電腦主機21之中央處理單元211,該中央處理單元211透過該第二SPI介面213將接收到啟用旗標113被設為開啟的第一BIOS程式碼111,存入到動態隨機存取記憶單元212中並執行,令該中央處理單元211執行完第一BIOS程式碼111並進行自我開機測試及起始化測試完後,便透過該第二SATA介面214傳送一指令給該控制單元13,令該控制單元13接收並執行該電腦系統2之指令,從該快閃記憶體陣列11內讀取作業系統112(例如視窗作業系統112)搬移到該隨機存取記憶體15內,並透過該第一SATA介面17陸續將作業系統112中相關的檔案傳送給該電腦系統2之電腦主機21其上的中央處理單元211,該中央處理單元211透過該第二SATA介面214將接收到的作業系統112載入至動態隨機存取記憶單元212中並執行作業系統112。
若此時使用欲將第一BIOS程式碼111更新時,前述控制單元13透過該第一SATA介面17接收到該中央處理單元211傳送的BIOS更新指令後,將該等NAND快閃記憶體內的第二BIOS程式碼114(即新BIOS程式碼)複製至前述NAND快閃記憶體的指定區塊中,並該控制單元13將於該指定區塊中的第二BIOS程式碼114的啟用旗標113設為開啟,同時將先前於該指定區塊內的第一BIOS程式碼111重新設為關閉(OFF),便完成更新BIOS程式碼,所以使得爾後當電腦主機21下一次開機時,該控制單元13會將第二BIOS程式碼114傳回電腦主機21,直到下一次啟用旗標113(Boot-Flag)開啟(On)被設定於另一個新的BIOS 程式碼中為止。故相對於傳統BIOS程式碼更新需數分鐘,使用本發明此裝置的設計來更新BIOS程式碼僅需一秒鐘不到即可完成,舉例而言若BIOS 程式碼大小為64Kbyte,約需16個頁(Page)來儲存,實際需要的更新時間約為300微秒 x 16 =4.8毫秒。
並所述動態隨機存取記憶單元212係由複數個動態隨機存取模組(DRAM Module)所構成,其為第一BIOS程式碼111、作業系統112和應用程式與資料運算和暫存的儲存裝置,亦即該動態隨機存取記憶單元212係選擇為SDRAM、DDR2、DDR3、DDR4等使用於個人電腦中用以程式及資料存取之記憶體。
請參閱第2圖式,所以當啟動電腦系統2開機時,該電源供應單元25供應電源給中央處理單元211、動態隨機存取記憶單元212、控制單元13和快閃記憶體陣列11,令前述控制單元13係執行該韌體程式,將快閃記憶體陣列11的複數第一BIOS程式碼111中啟用旗標113被設為開啟的第一BIOS程式碼111,先搬移到該隨機存取記憶體15中,然後透過該第一SPI介面16傳送給電腦主機21之中央處理單元211,該中央處理單元211透過該第二SPI介面213將接收到啟用旗標113被設為開啟的第一BIOS程式碼111,存入到動態隨機存取記憶單元212中並執行,令該中央處理單元211執行完第一BIOS程式碼111並進行自我開機測試及起始化測試完後,便透過該第二SATA介面214傳送一指令給該控制單元13,令該控制單元13接收並執行該電腦系統2之指令,從該快閃記憶體陣列11內讀取作業系統112(例如視窗作業系統112)搬移到該隨機存取記憶體15內,並透過該第一SATA介面17陸續將作業系統112中相關的檔案傳送給該電腦系統2之電腦主機21其上的中央處理單元211,該中央處理單元211透過該第二SATA介面214將接收到的作業系統112載入至動態隨機存取記憶單元212中並執行作業系統112。
若此時使用欲將第一BIOS程式碼111更新時,前述控制單元13透過該第一SATA介面17接收到該中央處理單元211傳送的BIOS更新指令後,將該等NAND快閃記憶體內的第二BIOS程式碼114(即新BIOS程式碼)複製至前述NAND快閃記憶體的指定區塊中,並該控制單元13將於該指定區塊中的第二BIOS程式碼114的啟用旗標113設為開啟,同時將先前於該指定區塊內的第一BIOS程式碼111重新設為關閉(OFF),便完成更新BIOS程式碼,所以使得爾後當電腦主機21下一次開機時,該控制單元13會將第二BIOS程式碼114傳回電腦主機21,直到下一次啟用旗標113(Boot-Flag)開啟(On)被設定於另一個新的BIOS 程式碼中為止。故相對於傳統BIOS程式碼更新需數分鐘,使用本發明此裝置的設計來更新BIOS程式碼僅需一秒鐘不到即可完成,舉例而言若BIOS 程式碼大小為64Kbyte,約需16個頁(Page)來儲存,實際需要的更新時間約為300微秒 x 16 =4.8毫秒。
因此,透過本創作之具SPI介面的SATA電子裝置1,與無BIOS唯讀記憶體之電腦系統2結合一起的設計,得有效取代傳統的電腦主機21上的BIOS記憶體,藉以達到節省成本與更新簡單便利性佳及快速維修之效果。
請參閱第3圖式,係顯示本創作之第二較佳實施例之流程示意圖,並輔以參閱第2圖式,;主要是將前述第一較佳實施例之具SPI介面的SATA電子裝置1應用於一無基本輸入輸出系統唯讀記憶體之電腦系統2的開機方法與更新BIOS程式碼的方法,其中該開機方法包括下列之步驟;
(300) 啟動該電腦系統進行開機;
啟動該電腦系統2開機,令該電源供應單元25供電給電腦主機21之中央處理單元211、動態隨機存取記憶單元212、該控制單元13及快閃記憶體陣列11及其他單元(即如輸入單元24與顯示單元23)。
啟動該電腦系統2開機,令該電源供應單元25供電給電腦主機21之中央處理單元211、動態隨機存取記憶單元212、該控制單元13及快閃記憶體陣列11及其他單元(即如輸入單元24與顯示單元23)。
(301) 該控制單元13執行該韌體程式,讀取從該快閃記憶體陣列11搬移到該隨機存取記憶體15中的第一基本輸入輸出系統程式碼111,並檢測該第一SPI介面16,並繼續步驟302;
該控制單元13執行該韌體14之韌體程式,從該快閃記憶體陣列11具有的複數NAND快閃記憶體其中一NAND快閃記憶體的指定區塊中,其啟用旗標113為開啟的第一BIOS程式碼111,以頁(Page)為單位讀出至該隨機存取記憶體15中,並檢測第一SPI介面16的訊號。其中一般說來,一個頁(Page)為4Kbyte(例如Micron)或8Kbyte(例如Samsung),視NAND Flash製造商規格而定;另外,一般的控制單元其內部的隨機存取記憶體15(RAM)約為16Kbyte。一般的BIOS 程式碼約為64Kbyte,因此若以一個頁(Page)為4Kbyte計算,需要16個Page的空間儲存,換言之總共需要搬動16次。以500KHz的電腦系統2送出的時脈(clock)計算,大約一秒鐘完成傳輸BIOS 程式碼。其中於該較佳實施例之第一BIOS程式碼111讀出至該隨機存取記憶體15中係以頁(Page)為傳輸單位,但並不侷限於此,於具體實施時,亦可選擇以512Byte為單位、1KByte或16Kbyte等等為單位等均屬相同的技術方法,均應屬於本發明之權利保護範圍中。
(310) 同時該電腦系統2會進行硬體重置動作完後,該中央處理單元211透過該第二SPI介面213傳送一讀取訊號至該第一SPI介面16;
同時該電腦系統2會先完成硬體重置動作(Hardware Reset)及中央處理單元211內部各暫存器設為指定值後,該中央處理單元211透過該第二SPI介面213傳送一讀取訊號(即BIOS讀取訊號)至該第一SPI介面16,該中央處理單元211透過該第二SPI介面213傳送前述讀取訊號至該第一SPI介面16。其中以Intel CPU而言,中央處理器(CPU)會跳至位址0xFFFF0 h第一個執行位址,並繼續步驟311。
(302) 此時該控制單元13檢測該第一SPI介面16接收到所傳送的讀取訊號後,該控制單元13將於該隨機存取記憶體15內的第一基本輸入輸出系統程式碼111透過該第一SPI介面16傳送給該中央處理單元211;
此時,該控制單元13檢測(讀取)該SPI介面接收到所傳送的讀取訊號後,該控制單元13將於該隨機存取記憶體15內的第一BIOS程式碼111依序以一個頁(Page)的第一BIOS 程式碼111送出給該中央處理單元211,並檢查該第一BIOS 程式碼111的總頁數,若尚未傳送完成則會繼續下一頁第一BIOS程式碼111的讀取、搬移與傳送直到完全送出完到該中央處理單元211上,並繼續步驟303。
(311) 該中央處理單元211透過該第二SPI介面213將接收到前述第一基本輸入輸出系統程式碼111,搬移到該動態隨機存取記憶單元212中直到全部讀取完成後,該中央處理單元211則執行該第一基本輸入輸出系統程式碼111並進行自我開機測試及起始化測試完後,便傳送一指令;
該中央處理單元211透過該第二SPI介面213將接收到該啟用旗標113設為開啟的第一基本輸入輸出碼,以頁為單位依序搬移到該動態隨機存取記憶單元212中並繼續讀取下一頁第一BIOS程式碼111直到全部讀取完成後,該中央處理單元211將第一BIOS程式碼111寫入到動態隨機存取記憶單元212中,然後前述中央處理單元211則執行該第一BIOS程式碼111並進行自我開機測試及起始化測試完後,便透過該第二SATA介面214傳送一指令給所述控制單元13,並繼續步驟312。
(303) 該控制單元13執行接收到該中央處理單元211傳送的指令,讀取從該快閃記憶體陣列11搬移到該隨機存取記憶體15中的作業系統112,並透過該第一SATA介面17傳送給該中央處理單元211;
所述控制單元13經由該第一SATA介面17接收到該中央處理單元211傳送的指令並執行,先送出該快閃記憶體陣列11搬移到該隨機存取記憶體15中的一主要開機紀錄 (Master Boot Record,MBR)之首要開機載入器(Primary Boot loader)至中央處理單元211,接著陸續也送出作業系統112其他相關檔案直到作業系統112下載完成至中央處理單元211上。
(312) 該中央處理單元211透過該第二SATA介面將接收到的作業系統112載入至該動態隨機存取記憶單元212中,並執行載入的作業系統112;
該電腦主機21之中央處理單元211執行的第一BIOS 程式碼111,先讀取主要開機紀錄(MBR)中的首要開機載入器(Primary Boot loader)先執行,並把權力轉到主要開機紀錄(MBR)後,前述主要開機紀錄(MBR)取得權力後並跳至一第二開機載入器(Secondary Boot loader)執行,該第二開機載入器負責載入作業系統112,並陸續載入到動態隨機存取記憶單元212中,直到該作業系統112下載完成,其中包括Kernel、Session、Winlogon、Explorer等的初始化及Post Boot Activity等步驟。
此外,所述電腦系統2開機後,中央處理單元211在硬體重置(Hardware Reset)後開始至中央處理單元211將第一BIOS 程式碼111完全讀出並執行第一BIOS程式碼111後準備載入作業系統112時為止,稱為第一時間。電腦系統2在執行第一BIOS程式碼111後讀取開機載入器(Boot Loader)至將整個作業系統112載入到該電腦主機21內部的動態隨機存取記憶單元212中並執行,使電腦系統2在作業系統112環境下運作為止,稱為第二時間,所以第一時間至第二時間即為開機流程。
請參閱第4圖式,並輔以參閱第2圖式,當使用者欲將該第一BIOS程式碼111更新時,該基本輸入輸出系統程式碼更新方法包括下列之步驟
(400) 開始
(401) 該控制單元13透過該第二SATA介面214將被搬移到該快閃記憶體陣列11內的基本輸入輸出系統更新程式115傳送該中央處理單元211;
前述控制單元13透過該第二SATA介面214將被搬移到該快閃記憶體陣列11內的BIOS更新程式115傳送給該中央處理單元211。
(402) 該中央處理單元211透過一第二SATA介面214接收並執行該基本輸入輸出系統更新程式115,令該基本輸入輸出系統更新程式115被載入至該動態隨機存取記憶單元212中執行,並透過該第二SATA介面214傳送一基本輸入輸出系統更新指令;
該中央處理單元211透過第二SATA介面214接收並執行該BIOS更新程式115,令該BIOS更新程式115被載入至該動態隨機存取記憶單元212中執行,並透過該第二SATA介面214傳送一BIOS更新指令(或亦稱為BIOS複製指令)給該控制單元13。
(403) 該控制單元13透過該第一SATA介面17接收到該基本輸入輸出系統更新指令後,將該第二基本輸入輸出系統程式碼114複製至該快閃記憶體陣列11中的一指定區塊中;
該控制單元13透過該第一SATA介面17接收到該BIOS更新指令後,將新版BIOS程式碼(即前述第二BIOS程式碼114)複製到快閃記憶體陣列11中的一指定區塊中。
(404) 此時該控制單元13將於該指定區塊中的第二基本輸入輸出系統程式碼114的啟用旗標113設為開啟,同時將先前於該指定區塊內的第一基本輸入輸出程式碼111設為關閉後完成BIOS程式碼更新;
此時,前述控制單元13將於該指定區塊中的第二BIOS程式碼114的啟用旗標113設為開啟(ON),同時將上一次開機的第一BIOS程式碼111中其啟用旗標113設定為關閉(OFF)後即可完成BIOS程式碼更新(即更新為第二BIOS程式碼114),所以使得爾後當電腦主機21下一次開機時,該控制單元13會將新版BIOS程式碼(即第二BIOS程式碼114)傳回電腦主機21,並依序根據前述開機方法完成開機作業。
所以透過本發明之具SPI介面之SATA儲存裝置1內可包含複數個不同的BIOS版本,而且隨時可以變更,相較於傳統的方法則基本輸入輸出系統唯讀記憶體(BIOS ROM)中僅能有一組BIOS程式碼,進而本創作BIOS更新程式115的實施方法是不同於傳統BIOS更新程式,因本發明更新後的新版BIOS程式碼(即第二BIOS程式碼114)並不會覆蓋過原先BIOS程式碼(即第一BIOS程式碼111),只是將原先BIOS程式碼(即第一BIOS程式碼111)的啟用旗標113設為關閉(即令該第一BIOS程式碼111隱藏起來),而新版BIOS程式碼(即第二BIOS程式碼114)啟用旗標113設為開啟,可讓控制單元13讀取到的設計,使得可有效防止更新新版BIOS程式碼失敗後,還能夠恢復到原先版本的BIOS程式碼的效果。相較於傳統BIOS更新程式實施時,新版本BIOS程式碼會被燒錄至BIOS 記憶體(NOR 快閃記憶體)中以替代原來的舊版本BIOS 程式碼,亦即新版本BIOS程式碼會覆蓋(覆寫)過原來的舊版本BIOS程式碼,若是傳統於更新新版BIOS程式碼失敗後,便無法復原回原先的舊版本BIOS程式碼,導致使用者必須送修更換新的BIOS記憶體。
雖然本發明以實施方式揭露如上,然其並非用以限定本發明,任何熟悉此技藝者,在不脫離本發明的精神和範圍內,當可作各種的更動與潤飾。舉例來說,既然快閃記憶體陣列11的指定區塊(Block)中可同時包含複數第一BIOS程式碼111,自然本案也可延伸應用為一在BIOS 設定畫面或開機畫面上選擇多組BIOS程式碼其中之一為開機BIOS程式碼,換言之,可以進一步實施為多BIOS選擇技術,而且每一BIOS程式碼的檔案大小是不需限制的,所以本案這種技術相較於幾個前案的多BIOS開機系統的效果佳,因為本發明不須NOR快閃記憶體卻可以選擇多個BIOS程式碼之一來開機。
另者,本發明的BIOS 程式碼(即第一、二BIOS程式碼111、114)及控制單元13既然可以不受作業系統112控制,自然可以在快閃記憶體陣列11上加裝一”系統檢測程式(System-Debugger;圖中未示)”,於開機第一時間直接執行,根本不需在作業系統112環境下執行,這對於電腦製造商的研發部門的產品研究與發展、製造部門產線上產品檢修以及電腦售後服務部門的電腦修護更具便利性,進一步降低電腦製造商的研發、製造及客戶服務端的服務成本。
以上所述,本發明相較於習知技術具有下列之優點:
1. 具有縮短產品的開發時間。透過本發明的設計,使得可達到電腦製造與組裝端與產品研發端BIOS的編輯可以同時進行,即便產品製造與組裝過程中有BIOS內容需修正與更新時,均不需重新燒錄BIOS 記憶體。
2. 具有節省材料與製造成本,提高品質。本發明因為將BIOS程式碼置於NAND 快閃記憶陣列中而不需使用BIOS僅讀記憶體,材料成本因此降低,又因免除了燒錄BIOS記憶體的流程而降低了製造成本,電腦系統也因少了一個零組件,產品的良率可以更加提升。
3. 具有減少使用者更新BIOS的時間及風險。一般的個人電腦常常在使用者更新BIOS時,由於燒錄(Programing)BIOS 程式碼需數分鐘時間,也常常會有燒錄失敗無法開機而必須送修電腦的情形;若使用本案技術,一來更新BIOS只需一秒不到的時間,再者,根本不會有更新失敗的情形,甚者,使用本案方法可以有多個版本的BIOS可以選用。
4. 本發明商品售出後,因為電腦系統主板上並無BIOS記憶體,也因此不會有BIOS記憶體毀損更換的需求,在企業售後服務端產品更容易維修。
5. 傳統的BIOS 程式碼由於記憶體(NOR Flash)容量的限制,通常會將BIOS程式碼予以壓縮,當執行時,再將BIOS程式碼解壓縮到動態隨機存取記憶單元中。但這種壓縮與解壓縮程式及其步驟在本發明中是不需要的,因為現在的NAND快閃記憶體一般都有32GB以上,而且快閃記憶體製造商通常會提供大約7%的多餘容量給系統廠商,而一般BIOS程式碼大約為128KB至256KB,因此以NAND快閃記憶體來儲存BIOS程式碼時在記憶空間上有很大優勢。更明白地說,使用本案技術除了可以節省一顆NOR 快閃記憶體的成本外,BIOS 程式碼(即第一、二BIOS程式碼111、114)的檔案大小是不需要限制的,換言之,使用本案技術後,開機的第一時間就可以看到最高解析度(4K X 2K)的全彩畫面。這樣的效果在傳統BIOS ROM 上是不可能做到的,這一點我們可以在任何廠牌電腦的開機第一畫面上證明,通常他們的開機第一畫面為一單色,通常是白色文字例如Lenovo、HP、acer、ASUS等等低解析度的品牌Logo畫面。
6. 具有達到BIOS 程式碼可不受作業系統控制。本發明裝置的第一BIOS程式碼111與第二BIOS程式碼114可置於NAND 快閃記憶陣列的指定區塊(Block),例如第一個區塊中,NAND 快閃 記憶體製造商保證這個區域可以燒錄1000次不會有任何問題且不需錯誤改正碼(ECC,Error Collection Code)。另外,因為BIOS程式碼(即第一、二BIOS程式碼111、114)的讀出與寫入(更新版本)均由本發明的控制單元13控制,因此可以不在作業系統的控制下進行,換言之,即便作業系統(O.S.)受病毒程式破壞而毀損,本發明下的BIOS程式碼還是可以正常操作而無任何風險,相對於過去技術本發明顯然來得好。
按,以上所述,僅為本發明的較佳具體實施例,惟本發明的特徵並不侷限於此,任何熟悉該項技藝者在本發明領域內,可輕易思及的變化或修飾,皆應涵蓋在以下本發明的申請專利範圍中。
1‧‧‧SATA儲存裝置
11‧‧‧快閃記憶體陣列
111‧‧‧第一基本輸入輸出系統程式碼
112‧‧‧作業系統
113‧‧‧啟用旗標
114‧‧‧第二基本輸入輸出系統程式碼
115‧‧‧基本輸入輸出系統更新程式
13‧‧‧控制單元
14‧‧‧韌體
15‧‧‧隨機存取記憶體
16‧‧‧第一SPI介面
17‧‧‧第一SATA介面
Claims (10)
- 【第1項】一種具SPI介面的SATA儲存裝置,係應用於一無基本輸入輸出系統唯讀記憶體之電腦系統上,該SATA儲存裝置包括:
一快閃記憶體陣列,係儲存有一第一基本輸入輸出系統程式碼及一作業系統;
一控制單元,其一側耦接該快閃記憶體陣列,其另一側耦接相對該電腦系統,並該控制單元包含一具有韌體程式之韌體及一隨機存取記憶體,該隨機存取記憶體係用以作為該控制單元執行該韌體之韌體程式運算與資料的暫存區;及
其中當開機時,該控制單元係執行該韌體程式,從該快閃記憶體陣列內的第一基本輸入輸出系統程式碼搬移至該隨機存取記憶體內後,再傳送給該電腦系統。 - 【第2項】如申請專利範圍第1項所述之具SPI介面的SATA儲存裝置,其中該SATA儲存裝置更包含一第一SPI介面與一第一SATA介面,該第一SPI介面之一端係耦接該電腦系統,其另一端則耦接該控制單元,該第一SATA介面之一端係耦接該電腦系統,其另一端則耦接該控制單元。
- 【第3項】如申請專利範圍第2項所述之具SPI介面的SATA儲存裝置,其中該電腦系統將接收到該第一基本輸入輸出系統程式碼存入到動態隨機存取記憶單元中並執行完後,便傳送一指令給該控制單元,令該控制單元接收並執行該電腦系統之指令,從該快閃記憶體陣列內讀取作業系統搬移到該隨機存取記憶體內,並透過該第一SATA介面傳送給該電腦系統。
- 【第4項】如申請專利範圍第3項所述之具SPI介面的SATA儲存裝置,其中該快閃記憶體陣列具有複數NAND快閃記憶體,該等NAND快閃記憶體內儲存有複數第一基本輸入輸出系統程式碼、前述作業系統及複數啟用旗標,並該等第一基本輸入輸出系統程式碼係儲存在其中一NAND快閃記憶體的一指定區塊(Block)中,且其中一第一基本輸入輸出系統程式碼的啟用旗標設定為開啟,用以供控制單元讀取。
- 【第5項】如申請專利範圍第4項所述之具SPI介面的SATA儲存裝置,其中該指定區塊係為該作業系統無法辨識的記憶區塊。
- 【第6項】如申請專利範圍第4項所述之具SPI介面的SATA儲存裝置,其中電腦系統包含一無基本輸入輸出系統唯讀記憶體之電腦主機、一顯示單元、一輸入單元及一電源供應單元,該顯示單元與輸入單元係分別電性連接該電腦主機,該電腦主機具有一中央處理單元及一動態隨機存取記憶單元,該中央處理單元係電性連接該控制單元與動態隨機存取記憶單元,並該電源供應單元用以供應該中央處理單元、控制單元、輸入單元、動態隨機存取記憶單元及快閃記憶體陣列運作之電源。
- 【第7項】如申請專利範圍第6項所述之具SPI介面的SATA儲存裝置,其中該電腦主機具有一第二SPI介面與一第二SATA介面,該第二SPI介面係電性連接相對該第一SPI介面,該第二SATA介面則電性連接該第一SATA介面。
- 【第8項】如申請專利範圍第7項所述之具SPI介面的SATA儲存裝置,其中該等NAND快閃記憶體更儲存有至少一第二基本輸入輸出系統程式碼及一基本輸入輸出系統更新程式,當該控制單元透過該第一SATA介面接收到該中央處理單元傳送的基本輸入輸出系統更新指令後,將該等NAND快閃記憶體內的第二基本輸入輸出系統程式碼複製至前述NAND快閃記憶體的指定區塊中,並該控制單元將於該指定區塊中的第二基本輸入輸出系統程式碼的啟用旗標設為開啟,同時將先前於該指定區塊內的第一基本輸入輸出系統程式碼設為關閉。
- 【第9項】一種應用SATA儲存裝置之開機方法,係應用於一無基本輸入輸出系統唯讀記憶體之電腦系統上,該SATA儲存裝置包含一快閃記憶體陣列、一第一SPI介面、一第一SATA介面及一耦接該快閃記憶體陣列之控制單元,該快閃記憶體陣列儲存有一第一基本輸入輸出系統程式碼及一作業系統,該控制單元係分別耦接該第一SPI介面與第一SATA介面,且其包含一具有韌體程式之韌體程式及一隨機存取記憶體,並該電腦系統包含一電腦主機,該電腦主機具有一中央處理單元、一耦接該第一SPI介面之第二SPI介面、一耦接該第一SATA介面之第二SATA介面及一耦接該中央處理單元之動態隨機存取記憶單元,該開機方法係包括:
啟動該電腦系統進行開機;
該控制單元執行該韌體程式,讀取從該快閃記憶體陣列搬移到該隨機存取記憶體中的第一基本輸入輸出系統程式碼,並檢測該第一SPI介面;
同時該電腦系統會進行硬體重置動作完後,該中央處理單元透過該第二SPI介面傳送一讀取訊號至該第一SPI介面;
此時該控制單元檢測該第一SPI介面接收到所傳送的讀取訊號後,該控制單元將於該隨機存取記憶體內的第一基本輸入輸出系統程式碼透過該第一SPI介面傳送給該中央處理單元;
該中央處理單元透過該第二SPI介面將接收到前述第一基本輸入輸出系統程式碼,搬移到該動態隨機存取記憶單元中直到全部讀取完成後,該中央處理單元則執行該第一基本輸入輸出系統程式碼並進行自我開機測試及起始化測試完後,便傳送一指令;
該控制單元執行接收到該中央處理單元傳送的指令,讀取從該快閃記憶體陣列搬移到該隨機存取記憶體中的作業系統,並透過該第一SATA介面傳送給該中央處理單元;及
該中央處理單元透過該第二SATA介面將接收到的作業系統載入至該動態隨機存取記憶單元中,並執行載入的作業系統。 - 【第10項】一種應用SATA儲存裝置之基本輸入輸出系統程式碼更新方法,係應用於一無基本輸入輸出系統唯讀記憶體之電腦系統上,該SATA儲存裝置包含一快閃記憶體陣列、一第一SPI介面、一第一SATA介面及一耦接該快閃記憶體陣列之控制單元,該快閃記憶體陣列儲存有一第一基本輸入輸出系統程式碼、一第二基本輸入輸出系統程式碼、一基本輸入輸出系統更新程式及一作業系統,該控制單元係分別耦接該第一SPI介面與第一SATA介面,且其包含一具有韌體程式之韌體及一隨機存取記憶體,並該電腦系統包含一電腦主機,該電腦主機具有一中央處理單元、一耦接該第一SPI介面之第二SPI介面、一耦接該第一SATA介面之第二SATA介面及一耦接該中央處理單元之動態隨機存取記憶單元,當使用者欲將該第一基本輸入輸出系統程式碼更新時,該基本輸入輸出系統程式碼更新方法係包括:
該控制單元透過該第二SATA介面將被搬移到該快閃記憶體陣列內的基本輸入輸出系統更新程式傳送給該中央處理單元;
該中央處理單元透過一第二SATA介面接收並執行該基本輸入輸出系統更新程式,令該基本輸入輸出系統更新程式被載入至該動態隨機存取記憶單元中執行,並透過該第二SATA介面傳送一基本輸入輸出系統更新指令;
該控制單元透過該第一SATA介面接收到該基本輸入輸出系統更新指令後,將該第二基本輸入輸出系統程式碼複製至該快閃記憶體陣列中的一指定區塊中;及
此時該控制單元將於該指定區塊中的第二基本輸入輸出系統程式碼的啟用旗標設為開啟,同時將先前於該指定區塊內的第一基本輸入輸出程式碼設為關閉後完成更新。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW103129636A TWI514281B (zh) | 2014-08-28 | 2014-08-28 | 具spi介面的sata儲存裝置、應用該sata儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW103129636A TWI514281B (zh) | 2014-08-28 | 2014-08-28 | 具spi介面的sata儲存裝置、應用該sata儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW201502991A TW201502991A (zh) | 2015-01-16 |
| TWI514281B true TWI514281B (zh) | 2015-12-21 |
Family
ID=52718436
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW103129636A TWI514281B (zh) | 2014-08-28 | 2014-08-28 | 具spi介面的sata儲存裝置、應用該sata儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法 |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI514281B (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI607314B (zh) * | 2016-06-24 | 2017-12-01 | 神雲科技股份有限公司 | 機箱裝置 |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10620879B2 (en) | 2017-05-17 | 2020-04-14 | Macronix International Co., Ltd. | Write-while-read access method for a memory device |
| US10445088B2 (en) | 2018-01-11 | 2019-10-15 | Macronix International Co., Ltd. | System boot code clone |
| TWI710952B (zh) * | 2018-08-28 | 2020-11-21 | 緯創資通股份有限公司 | 韌體更新方法及電腦系統 |
| CN113495743A (zh) * | 2020-03-19 | 2021-10-12 | 瑞昱半导体股份有限公司 | 储存电路以及运作方法 |
| TWI793998B (zh) | 2022-01-27 | 2023-02-21 | 飛捷科技股份有限公司 | 用於控制系統的韌體架構及開機方法 |
| TWI851422B (zh) * | 2023-05-09 | 2024-08-01 | 神基科技股份有限公司 | 電子裝置及兼容多種行動通訊規格的方法 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW482981B (en) * | 2000-09-06 | 2002-04-11 | Asustek Comp Inc | Device and method for assisting power-on and updating BIOS of motherboard |
| TWI226017B (en) * | 2002-12-13 | 2005-01-01 | Giga Byte Tech Co Ltd | Method for detecting basic input/output system and updating power-on procedure |
| TW200532557A (en) * | 2004-03-23 | 2005-10-01 | Hon Hai Prec Ind Co Ltd | A system and method for updating the BIOS sign on logo |
| US7188238B2 (en) * | 2003-05-21 | 2007-03-06 | Intel Corporation | Methods and apparatus to update a basic input/output system (BIOS) |
| US7293167B2 (en) * | 2003-10-15 | 2007-11-06 | Via Technologies Inc. | Method and apparatus for driving a non-native SATA hard disk |
| US7337309B2 (en) * | 2003-03-24 | 2008-02-26 | Intel Corporation | Secure online BIOS update schemes |
-
2014
- 2014-08-28 TW TW103129636A patent/TWI514281B/zh not_active IP Right Cessation
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW482981B (en) * | 2000-09-06 | 2002-04-11 | Asustek Comp Inc | Device and method for assisting power-on and updating BIOS of motherboard |
| TWI226017B (en) * | 2002-12-13 | 2005-01-01 | Giga Byte Tech Co Ltd | Method for detecting basic input/output system and updating power-on procedure |
| US7337309B2 (en) * | 2003-03-24 | 2008-02-26 | Intel Corporation | Secure online BIOS update schemes |
| US7188238B2 (en) * | 2003-05-21 | 2007-03-06 | Intel Corporation | Methods and apparatus to update a basic input/output system (BIOS) |
| US7293167B2 (en) * | 2003-10-15 | 2007-11-06 | Via Technologies Inc. | Method and apparatus for driving a non-native SATA hard disk |
| TW200532557A (en) * | 2004-03-23 | 2005-10-01 | Hon Hai Prec Ind Co Ltd | A system and method for updating the BIOS sign on logo |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI607314B (zh) * | 2016-06-24 | 2017-12-01 | 神雲科技股份有限公司 | 機箱裝置 |
Also Published As
| Publication number | Publication date |
|---|---|
| TW201502991A (zh) | 2015-01-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI514281B (zh) | 具spi介面的sata儲存裝置、應用該sata儲存裝置之開機方法及基本輸入輸出系統程式碼更新方法 | |
| US10866797B2 (en) | Data storage device and method for reducing firmware update time and data processing system including the device | |
| TWI515660B (zh) | 韌體變量更新方法 | |
| US9760461B2 (en) | Electronic device and firmware recovery program that ensure recovery of firmware | |
| US9501289B2 (en) | Method of a UEFI firmware and computer system thereof | |
| TWI480802B (zh) | Platform system, universal extension firmware interface Basic input and output system Support for hardware configuration changes, recording media and computer program products | |
| JP5860543B2 (ja) | ブートデータのロード | |
| US20140195763A1 (en) | Hardware and file system agnostic mechanism for achieving capsule support | |
| US20150347151A1 (en) | System and method for booting from a non-volatile memory | |
| JP2015038644A (ja) | 計算機および仮想マシンの更新方法 | |
| US20120060023A1 (en) | Methods for booting an operating system using non-volatile memory | |
| CN108694060A (zh) | 利用高速和低速非易失性存储器来促进快速引导的技术 | |
| TW201629785A (zh) | 管理控制器 | |
| US20150067317A1 (en) | Device-less and system agnostic unified extensible firmware interface (uefi) driver | |
| CN101872306B (zh) | 一种实现软件更新和软件备份的嵌入式系统及其实现方法 | |
| TW201616273A (zh) | 電腦bios資料恢復系統及方法 | |
| CN110825419A (zh) | 一种固件刷新方法、装置及电子设备和存储介质 | |
| US8499142B1 (en) | UEFI boot loader for loading non-UEFI compliant operating systems | |
| CN113342365A (zh) | 操作系统部署方法、装置、设备及计算机可读存储介质 | |
| TWI743480B (zh) | 電腦系統與其開機方法 | |
| CN101788913B (zh) | 具有内建双可被隐藏操作装置的计算机系统 | |
| US20200210166A1 (en) | Systems and methods for enforcing update policies while applying updates from bootable image file | |
| CN113646745A (zh) | 禁用软件持久性 | |
| US20160179626A1 (en) | Computer system, adaptable hibernation control module and control method thereof | |
| CN104268100B (zh) | Sata储存装置、应用该装置的开机方法及基本系统更新方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |