TWI644214B - 快速週邊組件互連介面卡的初始化方法 - Google Patents

快速週邊組件互連介面卡的初始化方法 Download PDF

Info

Publication number
TWI644214B
TWI644214B TW106115881A TW106115881A TWI644214B TW I644214 B TWI644214 B TW I644214B TW 106115881 A TW106115881 A TW 106115881A TW 106115881 A TW106115881 A TW 106115881A TW I644214 B TWI644214 B TW I644214B
Authority
TW
Taiwan
Prior art keywords
peripheral component
interface card
fast peripheral
component interconnect
processing unit
Prior art date
Application number
TW106115881A
Other languages
English (en)
Other versions
TW201901449A (zh
Inventor
江彥廷
Original Assignee
神雲科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 神雲科技股份有限公司 filed Critical 神雲科技股份有限公司
Priority to TW106115881A priority Critical patent/TWI644214B/zh
Priority to US15/869,902 priority patent/US10387164B2/en
Application granted granted Critical
Publication of TWI644214B publication Critical patent/TWI644214B/zh
Publication of TW201901449A publication Critical patent/TW201901449A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本發明提出一種快速週邊組件互連介面卡的初始化方法,所述方法包含,處理單元於開機程序根據旗標之預設之第一值以基本輸入輸出系統碼包含之第一初始化參數初始化一快速週邊組件互連介面插槽所插置之快速週邊組件互連介面卡,處理單元於開機程序根據初始化後之快速週邊組件互連介面卡設定前述旗標,使旗標具有第一值或第二值,處理單元於開機程序判斷初始化後之快速週邊組件互連介面卡是否需重新初始化,以及當快速週邊組件互連介面卡需重新初始化時,處理單元根據設定後之旗標之第二值以基本輸入輸出系統碼包含之一第二初始化參數重新初始化快速週邊組件互連介面卡。

Description

快速週邊組件互連介面卡的初始化方法
本發明是關於一種快速週邊組件互連介面卡的初始化方法。
快速週邊組件互連(PCI Express;PCI-E)介面,是電腦匯流排介面中的一種,它沿用了舊有的PCI介面的概念和通訊標準,但PCI-E介面有更快的傳輸速度。例如,第一代PCI-E介面的傳輸速度為2.5 GT/s,第二代PCI-E介面的傳輸速度為5 GT/s,而現今相當普及之第三代PCI-E介面的傳輸速度已高達8 GT/s。
然而,隨著PCI-E介面傳輸速度的提升,PCI-E介面所傳輸之PCI-E訊號之損耗也愈嚴重,一般可藉由限制PCI-E訊號之走線長度來減少PCI-E訊號之損耗,但限制走線長度將造成PCI-E介面卡在主機板上之佈局限制;再者,另一種方式可藉由改良PCI-E介面卡之電路板材料或是改良PCI-E介面插槽使用之材料來減少PCI-E訊號之損耗,但是使用改良之材料將造成PCI-E介面卡及PCI-E介面插槽之生產成本上升。於是,為了不限制PCI-E介面卡之佈局且不增加生產成本,習知技術亦提出調整PCI-E介面卡的初始化參數並以調整後的初始化參數取代未調整的初始化參數,期望可改善訊號損耗的問題;然而,調整初始化參數僅能以手動方式進行,亦即需要人為判斷必須調整後,由工程師操控調整初始化參數,非常不方便;此外,PCI-E介面卡可能應用在不同的訊號傳輸環境,即便是將初始化參數進行調整,僅針對特定傳輸環境進行調整並產生一組調整後的初始化參數並無法適用於其他的傳輸環境,使用與傳輸環境不相符的初始化參數並無法改善前述訊號損耗的問題,嚴重時PCI-E介面卡在傳遞訊號時依然會發生錯誤。
有鑑於此,本發明提出一種快速週邊組件互連介面卡的初始化方法。
在一實施例中,一種快速週邊組件互連介面卡的初始化方法適於一電腦,所述之初始化方法包含,處理單元於開機程序根據旗標之預設之一第一值以基本輸入輸出系統碼包含之第一初始化參數初始化一快速週邊組件互連介面插槽所插置之快速週邊組件互連介面卡,處理單元於開機程序根據初始化後之快速週邊組件互連介面卡設定前述旗標,使旗標具有第一值或第二值,處理單元於開機程序判斷初始化後之快速週邊組件互連介面卡是否需重新初始化,以及當快速週邊組件互連介面卡需重新初始化時,處理單元根據設定後之旗標之第二值以基本輸入輸出系統碼包含之一第二初始化參數重新初始化快速週邊組件互連介面卡。
在一實施例中,前述以第一初始化參數初始化快速週邊組件互連介面卡之步驟包含:處理單元判斷旗標是否具有第一值;及當旗標具有第一值時,處理單元以第一初始化參數初始化快速週邊組件互連介面卡;其中,處理單元以第二初始化參數重新初始化快速週邊組件互連介面卡之步驟包含:處理單元判斷旗標是否具有第一值;及當旗標具有第二值而不具有第一值時,處理單元以第二初始化參數重新初始化快速週邊組件互連介面卡。
在一實施例中,前述處理單元重新初始化快速週邊組件互連介面卡之步驟包含:當快速週邊組件互連介面卡需重新初始化時,處理單元重置;及處理單元於重置後之另一開機程序中以第二初始化參數重新初始化快速週邊組件互連介面卡。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟中,處理單元係根據初始化後之快速週邊組件互連介面卡之一識別資訊是否符合基本輸入輸出系統碼包含之一預設識別資訊來判斷是否需重新初始化。
在一實施例中,前述設定旗標之步驟包含:處理單元係判斷初始化後之快速週邊組件互連介面卡之一識別資訊是否符合前述預設識別資訊以設定旗標。
在一實施例中,前述設定旗標之步驟更包含:當識別資訊符合前述預設識別資訊時,處理單元設定旗標具有第二值;及當識別資訊不符合前述預設識別資訊時,處理單元設定旗標具有第一值。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟包含:當識別資訊符合前述預設識別資訊時,處理單元判斷快速週邊組件互連介面插槽於前次開機之另一開機程序中所插置之另一快速週邊組件互連介面卡與快速週邊組件互連介面卡是否相同,以判斷快速週邊組件互連介面卡是否需重新初始化。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當另一快速週邊組件互連介面卡與快速週邊組件互連介面卡不相同時,處理單元判斷快速週邊組件互連介面卡需重新初始化。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當另一快速週邊組件互連介面卡與快速週邊組件互連介面卡相同時,處理單元判斷對應於開機程序之一系統組態與對應於另一開機程序之另一系統組態是否相同,以判斷快速週邊組件互連介面卡是否需重新初始化。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當系統組態與另一系統組態不相同時,處理單元判斷快速週邊組件互連介面卡需重新初始化。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當系統組態與另一系統組態相同時,處理單元判斷快速週邊組件互連介面卡不需重新初始化,處理單元繼續執行開機程序。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟包含:當快速週邊組件互連介面卡之一識別資訊不符合前述預設識別資訊時,處理單元判斷快速週邊組件互連介面插槽於前次開機之另一開機程序中所插置之另一快速週邊組件互連介面卡之識別資訊是否符合前述預設識別資訊,以判斷快速週邊組件互連介面卡是否需重新初始化。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當另一快速週邊組件互連介面卡之識別資訊符合前述預設識別資訊時,處理單元判斷快速週邊組件互連介面插槽於前次開機之另一開機程序中所插置之另一快速週邊組件互連介面卡與快速週邊組件互連介面卡是否相同,以判斷快速週邊組件互連介面卡是否需重新初始化。
在一實施例中,前述判斷快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當另一快速週邊組件互連介面卡之識別資訊不符合前述預設識別資訊時,處理單元判斷快速週邊組件互連介面卡不需重新初始化,處理單元繼續執行開機程序。
綜上所述,根據本發明之快速週邊組件互連介面卡的初始化方法之一實施例,處理單元可在開機程序中根據一旗標選擇符合PCI-E訊號傳輸環境之初始化參數對快速週邊組件互連介面卡進行初始化,當處理單元選擇不符合PCI-E訊號傳輸環境之初始化參數時,處理單元會重新設定旗標並將快速週邊組件互連介面卡重新初始化。因此,不論是在良好或不良之PCI-E訊號傳輸環境中,快速週邊組件互連介面卡所傳遞之訊號之衰減量均小於一預設衰減值,且以韌體控制之方式不會造成裝置的生產成本上升。
圖1為根據本發明之具快速週邊組件互連(PCI-E)介面之電子裝置之一實施例之方塊示意圖。圖2為圖1之具PCI-E介面之電子裝置之一實施態樣之示意圖。圖3為根據本發明之PCI-E介面卡的初始化方法之一實施例之流程圖。請先合併參照圖1及圖2,具PCI-E介面之電子裝置包含處理單元11、BIOS記憶體12及PCI-E介面插槽13、14、15,處理單元11連接於BIOS記憶體12以及PCI-E介面插槽13、14、15。在此,圖1係以PCI-E介面插槽的數量為三為例,然本發明不以此為限,PCI-E介面插槽的數量可根據實際應用需求予以增加或減少。在一實施態樣中,處理單元11可為中央處理器(Central Processing Unit;CPU)。
如圖2所示,PCI-E介面插槽13、14、15用以分別插置PCI-E介面卡16、17、18,PCI-E介面卡16、17、18可為顯示卡、音效卡或網路卡等。處理單元11包含至少三輸入輸出腳位(I/O)111、112、113,三輸入輸出腳位111、112、113分別連接於三PCI-E介面插槽13、14、15。處理單元11可藉由輸入輸出腳位111、112、113分別將訊號經由PCI-E介面插槽13、14、15發送至PCI-E介面卡16、17、18,或藉由輸入輸出腳位111、112、113分別經由PCI-E介面插槽13、14、15接收來自PCI-E介面卡16、17、18之訊號。
BIOS記憶體12儲存有一基本輸入輸出(BIOS)碼,BIOS碼包含對應於PCI-E介面卡16、17、18中之每一者之初始化參數,初始化參數可包含連續時間線性等化(Continuous Time Linear Equalization;CTLE)值、預設(preset)值、前標記(pre-cursor)值、後標記(post-cursor)值或前述項目之組合。處理單元11在執行BIOS碼進行開機程序時可以BIOS記憶體12中之初始化參數對PCI-E介面卡16、17、18中之每一者進行初始化。再者,根據具PCI-E介面之電子裝置提供之PCI-E訊號傳輸環境,例如其各項軟硬體參數,前述之初始化參數至少包含一第一初始化參數及一第二初始化參數。以第一初始化參數及第二初始化參數為初始化PCI-E介面卡16時所需之初始化參數為例,第一初始化參數可為PCI-E介面卡16處於良好之PCI-E訊號傳輸環境時所需之初始化參數,第二初始化參數可為PCI-E介面卡16處於不良之PCI-E訊號傳輸環境時所需之初始化參數。基此,具PCI-E介面之電子裝置之設計者可在裝置開機前先根據裝置提供之PCI-E訊號傳輸環境進行測試,以根據良好及不良之PCI-E訊號傳輸環境分別產生第一初始化參數及第二初始化參數,並將第一初始化參數及第二初始化參數預先儲存於BIOS記憶體12,以作為部分之BIOS碼。
BIOS記憶體12更儲存有一旗標(flag)(即,旗標為BIOS碼之一部分),旗標係預設具有第一值或第二值,當處理單元11執行BIOS碼時,請合併參照圖1至圖3,處理單元11在開機程序中可根據旗標的預設之第一值或第二值選擇性地以第一初始化參數或第二初始化參數對PCI-E介面卡進行初始化(步驟S01)。以旗標的第一值對應於第一初始化參數且旗標的第二值對應於第二初始化參數為例,在步驟S01中,處理單元11可根據旗標的第一值以第一初始化參數對PCI-E介面卡16進行初始化,或根據旗標的第二值以第二初始化參數對PCI-E介面卡16進行初始化。接著,處理單元11根據初始化後之PCI-E介面卡16設定旗標(步驟S02),使旗標隨著PCI-E介面插槽13、14、15所插置之不同PCI-E介面卡而具有對應之第一值或第二值而可改變。在一實施態樣中,以二進位表示法為例,旗標的第一值及第二值可分別為「0」及「1」,換言之,處理單元11可將旗標設定為「0」或「1」。
在設定旗標之後,處理單元11判斷已初始化之PCI-E介面卡16是否需重新初始化(步驟S03);當處理單元11判斷PCI-E介面卡16需重新初始化時(判斷結果為「是」),表示處理單元11在步驟S01中使用不符合PCI-E訊號傳輸環境之初始化參數初始化PCI-E介面卡16,如此將導致PCI-E介面卡16傳遞之PCI-E訊號之衰減量大於或等於一預設衰減值。於是,處理單元11重置(reset)(步驟S05)。處理單元11在重置之後再由步驟S01開始執行,處理單元11根據重置前所設定之旗標重新初始化PCI-E介面卡16,使PCI-E介面卡16在重新初始化後相容於之裝置之各項軟硬體參數,使PCI-E介面卡16傳遞之PCI-E訊號的衰減量小於前述預設衰減值;另一方面,當處理單元11判斷PCI-E介面卡16不需重新初始化時(判斷結果為「否」),表示處理單元11在步驟S01中已使用符合PCI-E訊號傳輸環境之初始化參數初始化PCI-E介面卡16,此時處理單元11可繼續執行開機程序(步驟S04),或再由步驟S01開始執行,以根據旗標來初始化其他PCI-E介面卡17、18,並根據前述流程選擇性地將PCI-E介面卡17、18進行重新初始化,使PCI-E介面卡17、18傳遞之PCI-E訊號的衰減量亦小於前述預設衰減值;當PCI-E介面卡17、18皆無須重新初始化時,處理單元11繼續執行開機程序(步驟S04)。
在一實施態樣中,同樣以PCI-E介面卡16以及前述之旗標之第一值對應於第一初始化參數且旗標之第二值對應於第二初始化參數為例,在步驟S01中,處理單元11可根據預設具有第一值之旗標以符合良好之PCI-E訊號傳輸環境之第一初始化參數初始化PCI-E介面卡16,並在步驟S02中根據初始化後之PCI-E介面卡16設定旗標具有第二值,使旗標由預設之第一值改變為設定後之第二值;接著,處理單元11在步驟S03中判斷出PCI-E介面卡16需重新初始化,也就是在步驟S01中以第一初始化參數初始化PCI-E介面卡16並不符合實際的PCI-E訊號傳輸環境,於是,處理單元11在重置之後於步驟S01根據設定後之旗標之第二值以符合不良之PCI-E訊號傳輸環境之第二初始化參數重新初始化PCI-E介面卡16,並在重置之再次執行步驟S03時判斷出PCI-E介面卡16不需再次重新初始化而繼續執行開機程序(步驟S04)。
圖4為圖3之PCI-E介面卡的初始化方法之一實施態樣之流程圖。請合併參照圖1至圖4,同樣以PCI-E介面卡16為例,在步驟S01中,處理單元11會判斷旗標之值,藉以判斷需以第一初始化參數或第二初始化參數對PCI-E介面卡16進行初始化,例如處理單元11可判斷旗標是否具有第一值(步驟S011),當處理單元11判斷出旗標具有第一值時(判斷結果為「是」),處理單元11以第一初始化參數對PCI-E介面卡16進行初始化(步驟S012),另一方面,當處理單元11判斷出旗標不具有第一值時,例如旗標具有第二值,處理單元11則以第二初始化參數對PCI-E介面卡16進行初始化(步驟S013)。因此,當旗標具有不同的值時,處理單元11可根據不同的旗標以不同的初始化參數來初始化PCI-E介面卡16。
在實作上,處理單元11在執行步驟S01時係預設先將第一初始化參數自BIOS記憶體12中讀取至一記憶體中,接著處理單元11再判斷旗標是否具有第一值,當旗標具有第二值時,處理單元11再將第二初始化參數讀取至前述之記憶體中,使第二初始化參數覆蓋記憶體中之第一初始化參數,此時處理單元11即以記憶體中之第二初始化參數對PCI-E介面卡16、17、18中之一進行初始化;另一方面,當處理單元11將第一初始化參數讀入記憶體而後判斷出旗標具有第一值而非第二值時,處理單元11則不將第二初始化參數讀取自前述之記憶體中,第一初始化參數會繼續存在記憶體中而不被覆蓋,此時處理單元11即以記憶體中之第一初始化參數對PCI-E介面卡16、17、18中之一進行初始化。
進一步,同樣以PCI-E介面卡16為例,在步驟S02中,處理單元11可根據PCI-E介面卡16的識別資訊來設定旗標,而識別資訊可為PCI-E介面卡16的廠商識別碼或裝置識別碼。詳細而言,處理單元11在步驟S02中判斷PCI-E介面卡16的識別資訊是否符合一預設識別資訊(步驟S021),預設識別資訊可儲存於BIOS記憶體12而為BIOS碼之一部分,設計者可在具PCI-E介面之電子裝置開機之前將可能處於不良之PCI-E訊號傳輸環境之PCI-E介面卡的識別資訊預先儲存於BIOS記憶體12,以作為前述預設識別資訊。當處理單元11在開機程序中判斷PCI-E介面卡16的識別資訊符合預設識別資訊時,表示裝置提供之PCI-E訊號傳輸環境不良,此時需以第二初始化參數進行初始化;於是,處理單元11將旗標設定為可對應至第二初始化參數,例如將旗標設定為具有第二值(步驟S022);另一方面,當處理單元11判斷PCI-E介面卡16的識別資訊不符合預設識別資訊時,表示裝置提供之PCI-E訊號傳輸環境良好,此時需以第一初始化參數進行初始化;於是,處理單元11將旗標設定為可對應至第一初始化參數,例如將旗標設定為具有第一值(步驟S023)。
進一步,在設定旗標之後,為了判別PCI-E介面卡16是否需重新初始化,在步驟S03中,當PCI-E介面卡16的識別資訊符合預設識別資訊時,處理單元11需再進一步判斷PCI-E介面插槽13於前次開機程序中是否插置相同之PCI-E介面卡(步驟S031),也就是藉由步驟S031進一步判斷插置於PCI-E介面插槽13之PCI-E介面卡是否更換。若插置於PCI-E介面插槽13之PCI-E介面卡更換,表示PCI-E介面卡16在前次開機程序未插置在PCI-E介面插槽13,在步驟S01中處理單元11未根據適當之旗標以適當之初始化參數來初始化PCI-E介面卡16(即,處理單元11在此次開機程序中之步驟S011中並未根據旗標之第二值以第二初始化參數初始化PCI-E介面卡16)。也就是說,步驟S031其實具有重複確認的意義,可以避免前後次開機過程中PCI-E介面卡16被更換掉,而以不適當初始化參數來進行初始化的狀況。因此,當PCI-E介面卡16的識別資訊符合預設識別資訊時(步驟S021之判斷結果為「是」),處理單元11需再藉由步驟S031判斷前次開機程序後是否更換PCI-E介面卡,當前次插置之PCI-E介面卡並非PCI-E介面卡16而與PCI-E介面卡16不相同時(步驟S031之判斷結果為「否」),表示插置於PCI-E介面插槽13之PCI-E介面卡於前次開機程序後已更換,此時處理單元11重置(步驟S05),並在重置之後再根據旗標之第二值以第二初始化參數重新初始化PCI-E介面卡16(步驟S01)。
在實作上,處理單元11可在初始化PCI-E介面卡16之後獲得PCI-E介面卡16的識別資訊,處理單元11可將其儲存於一儲存單元,以記錄PCI-E介面卡16的識別資訊(步驟S024)。於此,在判斷PCI-E介面卡16的識別資訊與預設識別資訊時(步驟S021),處理單元11可根據前述之儲存單元所儲存之識別資訊來進行比對。進一步,儲存單元所儲存之識別資訊亦作為判斷前次開機程序是否插置相同之PCI-E介面卡(步驟S031)之依據。舉例來說,以處理單元11將當下獲得的識別資訊儲存在第一儲存單元為例,處理單元11可在判斷PCI-E介面卡16需重新初始化後將其識別資訊自第一儲存單元搬移至第二儲存單元,第二儲存單元中之識別資訊係作為前次開機程序中PCI-E介面插槽13所插置之PCI-E介面卡的識別資訊。於是,在重置之後,處理單元11在步驟S031中即可根據第一儲存單元及第二儲存單元中之識別資訊比對當下之開機程序獲得的識別資訊與前次開機程序獲得的識別資訊是否相同,以判斷前次開機程序是否插置相同之PCI-E介面卡。在一實施態樣中,前述之第一儲存單元及第二儲存單元可為同一儲存單元之不同儲存空間,或是兩獨立之儲存單元,本發明不以此為限。
另一方面,同樣以PCI-E介面卡16為例,當處理單元11判斷PCI-E介面插槽13於前次開機程序中所插置之PCI-E介面卡與PCI-E介面卡16相同時(步驟S031之判斷結果為「是」),表示PCI-E介面卡16於前次之開機程序中已插置於PCI-E介面插槽13,且使用者於前次之開機程序後並未更換PCI-E介面插槽13中之PCI-E介面卡16,此時處理單元11需再進一步判斷具PCI-E介面之電子裝置之系統組態是否改變(步驟S032),以藉由步驟S032判斷是否因系統組態改變而導致即便是相同的PCI-E介面卡也需要重新初始化。當系統組態改變(步驟S032之判斷結果為「是」)時,表示於前次開機程序後系統配置已更換,而處理單元11在此次之開機程序中並未根據適當之旗標以適當之初始化參數來對PCI-E介面卡16進行初始化(即,在此次之開機程序中並未根據旗標之第二值以第二初始化參數來對PCI-E介面卡16進行初始化),此時處理單元11重置(步驟S05),並在重置之後在步驟S01中再根據旗標之第二值將重新初始化PCI-E介面卡16。在一實施態樣中,前述之系統組態可為處理單元11之版本(stepping)、其時序參數及/或裝置中之其它轉接卡之時序參數等。
在實作上,處理單元11在步驟S024中亦記錄對應於當前之開機程序之系統組態,也就是將當前獲得之系統組態儲存在一儲存單元中,以作為步驟S032中判斷系統組態是否改變之依據。舉例來說,以處理單元11將當下獲得的系統組態儲存在第三儲存單元為例,處理單元11可在判斷PCI-E介面卡16需重新初始化後將系統組態自第三儲存單元搬移至第四儲存單元,第四儲存單元所儲存之系統組態係作為重置後對應於前次開機程序之系統組態。於是,在重置之後,處理單元11在步驟S032中即可根據第三儲存單元及第四儲存單元判斷系統組態是否改變。前述之第三儲存單元及第四儲存單元可為同一儲存單元之不同儲存空間,或是兩獨立之儲存單元,且第三儲存單元及第四儲存單元可相同或不同於第一儲存單元及第二儲存單元,本發明不以此為限。
在一實施態樣中,於設定旗標後,同樣以PCI-E介面卡16為例,為了判斷PCI-E介面卡16是否需重新初始化,在步驟S03中,當PCI-E介面卡16的識別資訊不符合預設識別資訊時(步驟S021的判斷結果為「否」),處理單元11需進一步判斷PCI-E介面插槽13於前次開機程序中所插置之另一PCI-E介面卡之識別資訊是否符合BIOS碼所包含之預設識別資訊(步驟S033),也就是藉由步驟S033來判斷在前一次之開機程序中旗標是否已被設定為具有第一值,當前次插置之PCI-E介面卡之識別資訊不符合預設識別資訊(步驟S033的判斷結果為「否」)時,表示旗標在前次之開機程序中之步驟S023中已被設定為具有第一值,而在此次之開機程序中之步驟S01中,處理單元11已根據具有第一值之旗標以第一初始化參數初始化PCI-E介面卡16,因此當處理單元在步驟S021判斷為「否」後又在步驟S033判斷為「否」時,表示PCI-E介面卡16並未被更換而不需要重新初始化,故處理單元11在判斷出前次插置之PCI-E介面卡之識別資訊不符合預設識別資訊後繼續執行開機程序(步驟S04)。
然而,當前次插置之PCI-E介面卡之識別資訊符合預設識別資訊(步驟S033的判斷結果為「是」)時,表示處理單元11在前次開機程序中之步驟S02中已將旗標設定為具有第二值(在此次開機程序之步驟S02中,處理單元將旗標設定為具有第一值),且處理單元11在此次開機程序中之步驟S01係以第一初始化參數初始化PCI-E介面卡16,故PCI-E介面卡16需重新初始化,此時處理單元11回到步驟S031。在步驟S031中,由於執行步驟S021所得之判斷結果為與執行步驟S033所得之判斷結果不相同,表示前次插置之PCI-E介面卡與PCI-E介面卡16不同,因此處理單元11在步驟S031會判斷出前次插置之PCI-E介面卡與PCI-E介面卡16不相同而重置(步驟S05),處理單元11在重置之後根據旗標之第一值以第一初始化參數將PCI-E介面卡16重新初始化(步驟S01),使PCI-E介面卡16傳遞之PCI-E訊號的衰減量小於前述預設衰減值。
綜上所述,根據本發明之快速週邊組件互連介面卡的初始化方法之一實施例,處理單元可在開機程序中根據一旗標選擇符合PCI-E訊號傳輸環境之初始化參數對快速週邊組件互連介面卡進行初始化,當處理單元選擇不符合PCI-E訊號傳輸環境之初始化參數時,處理單元會重新設定旗標並將快速週邊組件互連介面卡重新初始化。因此,不論是在良好或不良之PCI-E訊號傳輸環境中,快速週邊組件互連介面卡所傳遞之訊號之衰減量均小於一預設衰減值,且以韌體控制之方式不會造成裝置的生產成本上升。
雖然本案已以實施例揭露如上然其並非用以限定本案,任何所屬技術領域中具有通常知識者,在不脫離本案之精神和範圍內,當可作些許之更動與潤飾,故本案之保護範圍當視後附之專利申請範圍所界定者為準。
11‧‧‧處理單元
111‧‧‧輸入輸出腳位
112‧‧‧輸入輸出腳位
113‧‧‧輸入輸出腳位
12‧‧‧BIOS記憶體
13‧‧‧PCI-E介面插槽
14‧‧‧PCI-E介面插槽
15‧‧‧PCI-E介面插槽
16‧‧‧PCI-E介面卡
17‧‧‧PCI-E介面卡
18‧‧‧PCI-E介面卡
S01-S05‧‧‧步驟
S011-S013‧‧‧步驟
S021-S024‧‧‧步驟
S031-S033‧‧‧步驟
[圖1] 為根據本發明之具快速週邊組件互連介面之電子裝置之一實施例之方塊示意圖。 [圖2] 為圖1之具快速週邊組件互連介面之電子裝置之一實施態樣之示意圖。 [圖3] 為根據本發明之快速週邊組件互連介面卡的初始化方法之一實施例之流程圖。 [圖4] 為圖3之快速週邊組件互連介面卡的初始化方法之一實施態樣之流程圖。

Claims (13)

  1. 一種快速週邊組件互連介面卡的初始化方法,適於一電子裝置,該初始化方法包含:一處理單元於一開機程序根據一旗標之預設之一第一值以一基本輸入輸出系統碼包含之一第一初始化參數初始化一快速週邊組件互連介面插槽所插置之一快速週邊組件互連介面卡;該處理單元於該開機程序根據初始化後之該快速週邊組件互連介面卡設定該旗標具有該第一值或一第二值;該處理單元於該開機程序根據初始化後之該快速週邊組件互連介面卡之一識別資訊是否符合該基本輸入輸出系統碼包含之一預設識別資訊,以判斷初始化後之該快速週邊組件互連介面卡是否需重新初始化;及當該快速週邊組件互連介面卡需重新初始化時,該處理單元根據設定後之該旗標之該第二值以該基本輸入輸出系統碼包含之一第二初始化參數重新初始化該快速週邊組件互連介面卡。
  2. 如請求項1所述之快速週邊組件互連介面卡的初始化方法,其中以該第一初始化參數初始化該快速週邊組件互連介面卡之步驟包含:該處理單元判斷該旗標是否具有該第一值;及當該旗標具有該第一值時,該處理單元以該第一初始化參數初始化該快速週邊組件互連介面卡;其中,該處理單元以該第二初始化參數重新初始化該快速週邊組件互連介面卡之步驟包含:該處理單元判斷該旗標是否具有該第一值;及當該旗標具有該第二值而不具有該第一值時,該處理單元以該第二初始化參數重新初始化該快速週邊組件互連介面卡。
  3. 如請求項1所述之快速週邊組件互連介面卡的初始化方法,其中該處理單元重新初始化該快速週邊組件互連介面卡之步驟包含:當該快速週邊組件互連介面卡需重新初始化時,該處理單元重置;及該處理單元於重置後之另一開機程序中以該第二初始化參數重新初始化該快速週邊組件互連介面卡。
  4. 如請求項1所述之快速週邊組件互連介面卡的初始化方法,其中設定該旗標之步驟包含:該處理單元係判斷初始化後之該快速週邊組件互連介面卡之一識別資訊是否符合該基本輸入輸出系統碼包含之一預設識別資訊以設定該旗標。
  5. 如請求項4所述之快速週邊組件互連介面卡的初始化方法,其中設定該旗標之步驟更包含:當該識別資訊符合該預設識別資訊時,該處理單元設定該旗標具有該第二值;及當該識別資訊不符合該預設識別資訊時,處理單元設定該旗標具有該第一值。
  6. 如請求項5所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟包含:當該識別資訊符合該預設識別資訊時,該處理單元判斷該快速週邊組件互連介面插槽於前次開機之另一開機程序中所插置之另一快速週邊組件互連介面卡與該快速週邊組件互連介面卡是否相同,以判斷該快速週邊組件互連介面卡是否需重新初始化。
  7. 如請求項6所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當該另一快速週邊組件互連介面卡與該快速週邊組件互連介面卡不相同時,該處理單元判斷該快速週邊組件互連介面卡需重新初始化。
  8. 如請求項6所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當該另一快速週邊組件互連介面卡與該快速週邊組件互連介面卡相同時,該處理單元判斷對應於該開機程序之一系統組態與對應於該另一開機程序之另一系統組態是否相同,以判斷該快速週邊組件互連介面卡是否需重新初始化。
  9. 如請求項8所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當該系統組態與該另一系統組態不相同時,該處理單元判斷該快速週邊組件互連介面卡需重新初始化。
  10. 如請求項8所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當該系統組態與該另一系統組態相同時,該處理單元判斷該快速週邊組件互連介面卡不需重新初始化,該處理單元繼續執行該開機程序。
  11. 如請求項1所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟包含:當該快速週邊組件互連介面卡之一識別資訊不符合該基本輸入輸出系統碼之一預設識別資訊時,該處理單元判斷該快速週邊組件互連介面插槽於前次開機之另一開機程序中所插置之另一快速週邊組件互連介面卡之識別資訊是否符合該預設識別資訊,以判斷該快速週邊組件互連介面卡是否需重新初始化。
  12. 如請求項11所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當該另一快速週邊組件互連介面卡之識別資訊符合該預設識別資訊時,該處理單元判斷該快速週邊組件互連介面插槽於前次開機之另一開機程序中所插置之另一快速週邊組件互連介面卡與該快速週邊組件互連介面卡是否相同,以判斷該快速週邊組件互連介面卡是否需重新初始化。
  13. 如請求項11所述之快速週邊組件互連介面卡的初始化方法,其中判斷該快速週邊組件互連介面卡是否需重新初始化之步驟更包含:當該另一快速週邊組件互連介面卡之識別資訊不符合該預設識別資訊時,該處理單元判斷該快速週邊組件互連介面卡不需重新初始化,該處理單元繼續執行該開機程序。
TW106115881A 2017-05-12 2017-05-12 快速週邊組件互連介面卡的初始化方法 TWI644214B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW106115881A TWI644214B (zh) 2017-05-12 2017-05-12 快速週邊組件互連介面卡的初始化方法
US15/869,902 US10387164B2 (en) 2017-05-12 2018-01-12 Method for initializing peripheral component interconnect express interface card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106115881A TWI644214B (zh) 2017-05-12 2017-05-12 快速週邊組件互連介面卡的初始化方法

Publications (2)

Publication Number Publication Date
TWI644214B true TWI644214B (zh) 2018-12-11
TW201901449A TW201901449A (zh) 2019-01-01

Family

ID=64097856

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106115881A TWI644214B (zh) 2017-05-12 2017-05-12 快速週邊組件互連介面卡的初始化方法

Country Status (2)

Country Link
US (1) US10387164B2 (zh)
TW (1) TWI644214B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI701595B (zh) * 2018-12-28 2020-08-11 技嘉科技股份有限公司 記憶體的效能優化方法以及使用其的主機板

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110955442B (zh) * 2019-11-11 2023-03-07 郑州信大先进技术研究院 一种适用于PCI-E密码卡的Bootloader
TWI798935B (zh) * 2021-11-15 2023-04-11 華碩電腦股份有限公司 電腦系統及其啟動方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050147117A1 (en) * 2003-01-21 2005-07-07 Nextio Inc. Apparatus and method for port polarity initialization in a shared I/O device
TW200801952A (en) * 2006-06-02 2008-01-01 Via Tech Inc Method for setting up a peripheral component interconnect express (PCIE)
TW201232276A (en) * 2011-01-28 2012-08-01 Micro Star Int Co Ltd Main board and method for dynamically configuring PCIE ports thereof
US20140156986A1 (en) * 2012-11-30 2014-06-05 Inventec Corporation Motherboard in a server

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7873824B2 (en) * 2007-06-01 2011-01-18 Advanced Micro Devices, Inc. Method and apparatus for remote BIOS configuration control
US9465771B2 (en) * 2009-09-24 2016-10-11 Iii Holdings 2, Llc Server on a chip and node cards comprising one or more of same
US9152428B2 (en) * 2012-09-28 2015-10-06 Intel Corporation Alternative boot path support for utilizing non-volatile memory devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050147117A1 (en) * 2003-01-21 2005-07-07 Nextio Inc. Apparatus and method for port polarity initialization in a shared I/O device
TW200801952A (en) * 2006-06-02 2008-01-01 Via Tech Inc Method for setting up a peripheral component interconnect express (PCIE)
TW201232276A (en) * 2011-01-28 2012-08-01 Micro Star Int Co Ltd Main board and method for dynamically configuring PCIE ports thereof
US20140156986A1 (en) * 2012-11-30 2014-06-05 Inventec Corporation Motherboard in a server

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI701595B (zh) * 2018-12-28 2020-08-11 技嘉科技股份有限公司 記憶體的效能優化方法以及使用其的主機板

Also Published As

Publication number Publication date
US10387164B2 (en) 2019-08-20
TW201901449A (zh) 2019-01-01
US20180329716A1 (en) 2018-11-15

Similar Documents

Publication Publication Date Title
TWI644214B (zh) 快速週邊組件互連介面卡的初始化方法
US6496790B1 (en) Management of sensors in computer systems
US7523299B2 (en) Method and system for modifying operation of ROM based boot code of a network adapter chip
US20040025089A1 (en) Enhanced VPD (Vital Product Data) structure
CN109376103B (zh) 快速均衡的方法、芯片和通信系统
CN112689083B (zh) 车载摄像头配置方法、装置、电子设备和存储介质
EP3062216A1 (en) Network bios management
EP1372069A2 (en) Method system and software for configuring a graphics processing communication mode
US20210405314A1 (en) Management interface handler to expedite module boot time in pluggable optical modules
CN109660391B (zh) 一种池化服务器系统固件升级方法、系统及相关装置
CN109002402B (zh) 快速外围组件互连界面卡的初始化方法
CN111694776A (zh) 一种芯片中通讯接口的识别方法和装置
CN111737177B (zh) 一种芯片在boot态下通讯接口的识别方法和装置
US20180143928A1 (en) Switch system and operation method thereof
US6973564B2 (en) Automatically initiating a manufacturing mode of a system firmware
US20020103611A1 (en) System and method for receiving information from a test apparatus
US11061689B2 (en) Synchronization method for performing bi-directional data synchronization for bios
TWI685790B (zh) 伺服器裝置及其即時變更韌體設定的方法
FR2744539A1 (fr) Systeme et procede de traitement par augmentation du nombre d'entrees de donnees
MXPA00011828A (es) Sistema, dispositivo y metodo para comunicarse con e enicializar un dispositivo periferico de computadora.
CN111444129B (zh) Mdb数据传输的方法及终端设备
TWI762842B (zh) 積體電路開發系統、積體電路開發方法以及積體電路
CN113468028A (zh) 用于计算设备的设备管理方法、计算设备、装置和介质
CN112069113A (zh) I2c设备配置方法和系统
CN111913666A (zh) 兼容不同协议Nand颗粒的方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees