專利名稱:具有外圍設備配置信息錯誤檢測的數據處理系統的制作方法
技術領域:
本發(fā)明一般地涉及數據處理系統,并且更具體地,涉及存儲在外圍設備中的外圍設備配置信息的錯誤檢測。
背景技術:
數據處理系統用于處理信息并且用于控制其他系統的操作。數據處理系統的示例包括計算機(單機的、膝上型計算機)、手機、PDA、觸摸板、蜂窩電話、電子閱讀器和用于諸如汽車、飛機、聯網設備和制造設備的各種設備的控制系統。通常,數據處理系統包括用于對數據執(zhí)行操作的一個或多個處理器;用于存儲數據和用于存儲指令的一個或多個存儲器;以及用作用于獲得數據和/或使用處理器生成的數據的接口的一個或多個外圍設備。
通過參考附圖,本領域技術人員可以更容易地理解本公開,并且使得其很多特征和優(yōu)點明顯。圖1是根據本發(fā)明的一個實施例的數據處理系統的框圖。圖2是根據本發(fā)明的一個實施例的外圍設備接口的框圖。圖3是根據本發(fā)明的一個實施例的對外圍設備的配置寄存器的寫入操作的流程圖。圖4是根據本發(fā)明的一個實施例的對外圍設備的配置寄存器的讀取操作的流程圖。圖5示出了根據本發(fā)明的外圍設備接口的存儲器映射的兩個實施例。除非另外說明,否則在不同附圖中使用相同標號指示相似或相同的項。附圖沒有必要按比例繪制。
具體實施例方式下面闡述了本發(fā)明具體實施方式
的詳細描述。該描述意在說明本發(fā)明而不應該被認為限制本發(fā)明。如下所述,數據處理系統包括用于對寫入到數據處理系統的外圍設備的配置存儲電路的配置信息執(zhí)行錯誤檢測的系統。在一些示例中,通過經由外圍設備接口從外圍設備的配置寄存器讀取信息來在外圍設備接口處執(zhí)行錯誤檢測??梢詫ψx取的信息執(zhí)行錯誤檢測方案。圖1是根據本發(fā)明的一個實施例的數據處理系統的框圖。數據處理系統101包括處理器103、DMA控制器105、RAM 109、閃速存儲器111和用于經由外圍設備總線123與諸如外圍設備125、129、133和137的外圍設備對接的外圍設備總線接口 113。在一些實施例中,外圍設備接口可以被實現為網關或橋。系統101包括系統互連107,該系統互連107用于通信地耦合處理器103、DMA控制器105、RAM 109、閃速存儲器111和接口 113。處理器 103可以是單核處理器或多核處理器。在一個實施例中,系統互連107是計算機總線。在其他實施例中,系統互連是縱橫開關(cross bar switch)電路。在其他實施例中,系統101 可以包括未示出的其他設備(例如,時鐘、電壓調節(jié)器、其他處理器、存儲器控制器或其他存儲器設備)。在其他實施例中,系統101可以具有其他配置。在一個實施例中,系統101是汽車的控制電路。但是在其他實施例中,系統101可以是其他類型的數據處理系統。在一個實施例中,圖1中示出的設備可以被實現在單個集成電路管芯上,但是在其他實施例中,可以利用多個集成電路管芯來實現這些設備。數據處理系統101包括計時器外圍設備125、模數轉換器外圍設備129、通信外圍設備133和顯示器控制器外圍設備137。計時器外圍設備是基于時基(例如,時鐘計數器或晶體振蕩器)提供輸出或使輸入與時基相關聯的設備。模數電路外圍設備將模擬信號轉換成數字信號。通信外圍設備用于通過通信介質(例如,有線或無線介質)與包括其他數據處理系統的其他設備進行通信。通信外圍設備的示例包括UART控制器、USB控制器、控制器區(qū)域網絡(CAN)控制器或無線調制解調器。顯示器控制器外圍設備137用于進行控制以使得以人類可讀形式在顯示器(未示出)上顯示由數據處理系統101提供的信息。系統 101可以包括其他類型的外圍設備,諸如數模轉換器、鍵盤、鼠標、制動器、傳感器、觸摸板和圖形控制器(均未示出)。每個外圍設備都包括配置存儲電路,該配置存儲電路在圖1被示作配置寄存器 127、131、135和139。配置存儲電路是存儲外圍設備的配置信息的存儲位置。配置存儲電路可以以獨立存儲器設備來實現,或者可以被實現為也存儲外圍設備的其他信息的存儲器設備的一個或多個特定位置。外圍設備的配置信息是用于指示外圍設備將如何操作的信息。外圍設備使用配置信息來控制其操作的各個方面,諸如參數控制、特征使能(enablement)和模式控制。計時器電路的配置信息的示例包括指示每個信道的計時器功能、計時器功能的變量、時基選擇、分辨率選擇、輸入濾波器選擇和中斷使能的信息。A/D轉換器配置信息的示例包括指示采樣率、轉換準確度、轉換分辨率、單個或差分轉換、何時要進行轉換的觸發(fā)和中斷使能的信息。通信外圍設備的配置信息的示例包括指示傳輸率、頻率、消息濾波器類型和使能、傳送隊列命令、傳送隊列數據、分組配置和大小、中斷使能和協議實現(例如,RTZ, NRTZ)的信息。計時器電路、A/D轉換器和通信外圍設備可以包括其他類型的配置信息。而且,其他類型的外圍設備可以具有其他類型的配置信息??梢栽趩悠陂g或者改變配置信息操作期間,通過處理器103(或者系統101的其他數據主設備(master))將配置信息寫入外圍設備的配置存儲電路。在一個實施例中,處理器103從RAM 109、閃速存儲器111獲得配置信息,或者通過處理器操作來生成配置信息。 在一個實施例中,處理器發(fā)起對外圍設備的配置寄存器的邏輯存儲器地址的寫入命令。經由系統互連107將寫入命令傳遞到外圍設備接口,其中,系統到外圍設備總線接口電路115 將邏輯地址轉換成外圍設備總線123上的指定寄存器的物理地址。在寫入配置信息之后, 外圍設備在其操作中使用配置信息。圖2是根據本發(fā)明的一個實施例的外圍總線接口 113的框圖。在圖1和圖2的實施例中,外圍總線接口 113包括用于生成由處理器或系統101的其他主設備寫入到配置寄存器的配置信息的錯誤校正子(syndrome)和用于存儲那些校正子的電路。在寫入配置信息之后,可以經由外圍設備接口讀取配置信息,其中,外圍設備總線接口 113生成新的錯誤校正子,并且將新的錯誤校正子與先前生成的錯誤校正子進行比較,以確定外圍設備的配置寄存器信息是否已經損壞。在圖2的實施例中,總線接口電路115包括地址解碼器201,該地址解碼器201從系統互連107接收由數據處理系統主設備(例如,處理器103、DMA控制器10 生成的指示數據事務(transaction)的信號。示出的特定信號包括主設備ID指示、R/W指示、地址信號、數據信號和其他事務屬性,諸如存取大小(access size)等。地址解碼器201對來自互連107的在地址信號線上提供的地址進行解碼,并且提供外圍總線123的地址線的相應外圍設備總線地址。錯誤檢測器117包括校正子生成器205,該校正子生成器205用于生成在系統互連 107與外圍設備總線123之間的數據線上傳遞的信息的錯誤校正子。錯誤校正子表示一種數據單元,該數據單元通常由比數據單元更少的數據比特來表示并且用于數據單元的隨后錯誤檢測和/或校正。錯誤校正子的示例包括奇偶校驗比特、漢明碼、糾錯碼或散列碼。一些錯誤校正子可以用于檢測數據單元中的一個錯誤。其他的可以用于檢測數據單元的多個錯誤。一些碼可以檢測兩個錯誤比特并且糾正數據單元中的一個比特。寫入到外圍設備的配置存儲電路的生成的用于數據的校正子被存儲在錯誤RAM 119中。錯誤RAM解碼器209根據來自系統互連107的地址生成用于將校正子存儲在錯誤 RAM 119中的地址。在其他實施例中,解碼器209根據外圍設備總線地址生成錯誤RAM地址。地址解碼器201包括使能電路203,該使能電路203檢測數據事務何時為對外圍設備的配置存儲電路的預定存取大小的配置信息的寫入事務,并且響應于此來對校正子生成器205斷言寫入使能(WRITE ENABLE)信號。類似地,使能電路202檢測數據事務何時是對外圍設備的配置存儲電路的預定存取大小的配置信息的讀取事務,并且響應于此來對校正子生成器205斷言讀取使能(READ ENABLE信號。在一個實施例中,當R/W和存取大小信號指示字寫入并且來自系統互連107的地址信號指示映射到外圍設備的配置存儲電路的位置的地址時,生成寫入使能信號。在一些實施例中,可以基于發(fā)起對配置存儲電路的寫入的特定主設備(如主設備ID信號所指示)來生成寫入使能。在一個實施例中,當R/W和存取大小信號指示字讀取并且來自系統互連107的地址信號指示映射成外圍設備的配置存儲電路的位置的地址時,生成讀取使能信號。在一些實施例中,可以基于特定主設備發(fā)起對配置存儲電路的讀取來生成讀取使能。當對配置存儲電路寫入外圍設備信息生成寫入使能信號時,校正子生成器205生成寫入信息的校正子,并且將該信息存儲在錯誤RAM119中。當從配置存儲電路讀取外圍設備信息生成讀取使能信號時,校正子生成器205生成讀取信息的校正子。比較器207將新生成的校正子與先前生成的校正子進行比較,以確定配置信息中是否存在錯誤(如錯誤指示信號所指示)。在一個實施例中,僅對特定大小的配置信息(例如,字)的讀取和寫入生成寫入使能和讀取使能信號。在一些實施例中,校正子生成取決于相同大小的讀取信息和寫入信息。在圖2的實施例中,接口 113包括糾錯電路211,該糾錯電路211可操作地耦合到外圍總線123。電路211響應于錯誤指示信號來將糾錯的確認信息寫入到具有錯誤數據的配置存儲電路。其他實施例不包括糾錯電路211。通常,在數據處理系統操作期間,一般不讀取外圍設備的配置信息。因此,為了連續(xù)監(jiān)視配置信息的完整性,數據處理系統101包括用于對外圍設備的配置信息執(zhí)行讀取的電路,其中錯誤檢測器117能夠生成被讀取信息的校正子以檢測錯誤。在示出的實施例中,控制器121用于經由地址解碼器201和外圍設備總線123生成外圍設備的配置信息的讀取事務,用于對該信息的錯誤檢查。在示出的實施例中,控制器 121通過提供指示要讀取的期望外圍設備存儲電路地址的地址信號、指示控制器發(fā)起讀取的ID、以及用于指示讀取的R/W信號和用于指示讀取信息的適當大小的存取大小信號,來發(fā)起讀取事務。地址還被提供到錯誤RAM解碼器209,用于檢索在配置信息先前被寫入該位置時先前生成的校正子。在一個實施例中,以狀態(tài)機實現控制器121,但是在其他實施例中,可以以其他方式實現控制器121。在一個實施例中,控制器121生成對數據處理系統的外圍設備的配置存儲電路的周期性讀取。這樣的讀取的頻率基于保證配置信息完整性所期望的時間。在一個實施例中, 可以在外圍設備總線未被使用的任何時間從外圍設備讀取配置信息。在一個這樣的實施例中,可以在不使用總線123時的那些時間期間連續(xù)執(zhí)行由控制器121發(fā)起的配置信息讀取。 在另一實施例中,讀取以規(guī)則調度的時間發(fā)生,其中其他外圍設備總線活動將被延遲,直到完成配置讀取。使用外圍設備總線接口 113的電路(諸如控制器121)來發(fā)起外圍配置信息讀取的一個優(yōu)點在于不需要處理器103或其他數據系統主設備(例如,DMA控制器105)檢查外圍設備配置信息完整性的處理時間。如果處理器103或DMA(直接存儲器訪問)控制器 105用于讀取外圍設備配置信息,則不僅該主設備用于執(zhí)行讀取,而且系統互連107也被用于讀取。因此,在最小化對數據處理系統101的影響的同時可以執(zhí)行配置信息完整性。另外,在一些實施例中,控制器121可以被設計有更簡單或更低功率的電路,其中,與通過處理器103發(fā)起的讀取相比,通過控制器121發(fā)起的讀取消耗更少的功率。在其他實施例中,可以通過系統互連主設備(例如,處理器103或控制器105)來發(fā)起外圍設備配置信息的完整性讀取。在一個實施例中,使用DMA控制器發(fā)起外圍設備配置信息的完整性讀取支持使用現有電路來執(zhí)行配置完整性操作。另外,使用DMA控制器可以將處理器103從執(zhí)行讀取發(fā)起釋放出來。此外,在一些實施例中,可以在DMA控制器中對使DMA控制器105執(zhí)行配置信息讀取的命令進行編程以自主地發(fā)生。使用處理器103發(fā)起配置信息讀取可能需要使用執(zhí)行操作的代碼。在示出的實施例中,將為每個外圍設備生成的校正子存儲在接口 113中的RAM 119中。將校正子存儲在接口中有利地減少了對外圍設備的配置信息進行讀取或寫入的時間。如果將校正子存儲在外圍設備中,則必須與外圍設備交換更多數據用于配置信息檢查。此外,在外圍設備總線接口 113處執(zhí)行配置信息的錯誤檢查操作支持在不需要在每個外圍設備中實現錯誤檢查電路的情況下進行外圍設備配置信息的錯誤檢查,由此節(jié)省了管芯空間。此外,在接口 113中實現錯誤檢查電路和校正子存儲二者支持在數據處理系統中實現外圍設備的不同配置。在一些實施例中,不必為了實現對外圍設備配置信息的完整性檢查來進行對外圍設備的修改。因此,在接口 113處具有錯誤檢查電路和校正子存儲的情況下,與在外圍設備處進行配置信息完整性檢查的系統相比,可以在外圍設備制造商與數據處理制造商之間較少協作的情況下實現外圍設備配置信息的完整性檢查。檢查外圍設備配置信息的完整性可以提供更穩(wěn)健和可靠的數據處理系統。因此, 如果保持配置信息完整性,則不太會影響數據處理系統的外圍設備。在一個實施例中,接口 113可以位于集成電路的連續(xù)區(qū)域中。然而,在其他實施例中,接口 113可以分布在整個集成電路中。此外,其他實施例可以具有不同配置的接口 113, 包括接口 113的電路的不同可操作耦合。在一個實施例中,錯誤RAM 119是專用RAM電路。 在其他實施例中,RAM 119可以是系統存儲器的指定位置。在一些實施例中,可以在存儲生成器205在配置信息寫入期間生成的多個校正子的觸發(fā)器寄存器中實現RAM 119的功能。 而且,在其他實施例中,可以經由總線可操作地耦合113的一些電路。圖3是圖示對外圍設備的配置信息的寫入操作以及該信息的校正子生成的一個實施例的流程圖。在操作301中,處理器或其他系統主設備發(fā)起寫入事務,以向外圍設備 (例如,外圍設備125、129、133或137中的一個)的配置存儲電路(例如,配置寄存器或其他類型存儲位置)寫入配置信息。經由系統互連107、總線接口電路115(包括解碼器201) 和外圍設備總線123對外圍設備進行寫入事務。在寫入期間,使能電路203通過讀取地址和存取大小來檢測該寫入是對外圍設備的外圍設備配置存儲電路(并且在一些實施例中寫入具有特定大小),并且在操作303中,(通過寫入使能信號的斷言)使得生成器205能夠生成來自系統互連107的數據總線的寫入數據的校正子。在操作305中,在解碼器209 根據互連107的地址線上的地址生成的位置處將生成的校正子存儲在錯誤RAM 119中。圖4是示出讀取和檢查外圍設備配置信息的一個實施例的流程圖。在操作401中, 發(fā)起外圍設備配置信息的讀取??梢杂煽刂破?21、處理器103、控制器105或系統101的其他電路進行該發(fā)起。在操作403中,確定讀取事務是否要求錯誤檢查。在一個實施例中,僅對特定主設備或控制器121請求的信息進行錯誤檢查和/或錯誤檢查具有特定大小。例如,在控制器 121發(fā)起配置信息完整性讀取的系統中,處理器103進行的外圍設備的配置存儲電路的讀取將不生成錯誤檢查。因此,通過來自互連107和控制器121的設備ID信號,以及讀取是否處于外圍設備的配置存儲電路的I/O映射的空間(如通過來自互連107和控制器121的地址來確定)和讀取大小(如通過來自互連107和控制器121的存取大小信號確定的),來確定是否要執(zhí)行錯誤檢查的確定。如果讀取不要求錯誤檢查,則在操作405中,執(zhí)行讀取而在不進行錯誤檢查。如果讀取要求錯誤檢查,則在操作407中,執(zhí)行讀取,并且在操作409中,通過生成器205生成讀取的配置信息的錯誤校正子。在操作411中,比較器207將生成的校正子與存儲在RAM 119 中的校正子作比較。如果校正子匹配,則配置信息中沒有錯誤。然而,如果校正子不匹配, 則生成錯誤信號,和/或在一些實施例中,通過將糾正的信息寫入配置存儲電路的電路211 來糾正錯誤。在一些實施例中,如果在配置信息中發(fā)現錯誤,則錯誤信號用于生成指示在外圍設備配置信息中已經發(fā)現錯誤的中斷。在一些實施例中,僅在糾錯電路211不能糾正錯誤時生成中斷。
在一些實施例中,對每次外圍設備配置信息讀取執(zhí)行錯誤檢查。圖5示出了本發(fā)明的兩個不同實施例的存儲器映射配置。每個存儲器表示外圍設備的存儲器地址在數據處理系統101的存儲器地址空間中的映射。映射501示出實施例, 其中每個外圍設備的配置信息位于用于外圍設備的所有存儲信息的地址范圍內。例如,在映射501的左側,由“P1”指示外圍設備1的地址范圍。由“P1配置”指示的那些范圍的一部分是該外圍設備的配置存儲寄存器的地址范圍。圖5中的地址范圍表示處理器103利用的位置的邏輯地址。這些地址由解碼器201映射成外圍設備總線的地址。在圖501的實施例中,可以通過向地址解碼器201提供由存儲器映射示出的地址來發(fā)起對外圍設備的配置存儲電路的任何數據存取。因此,在控制器121發(fā)起配置信息的實施例中,控制器在將數據寫入那些配置存儲電路中可以提供與處理器103相同的邏輯地址。映射503示出了包括外圍設備配置存儲電路的地址的鏡像映射的實施例。通過該實施例,針對每個配置存儲位置給出兩個不同的邏輯地址。發(fā)起讀取以檢查外圍設備配置信息的完整性的電路在寫入到外圍設備的相同配置存儲電路中將使用與處理器103所使用的邏輯地址不同的邏輯地址。配置存儲位置的映射503的兩個位置將映射到相同的外圍設備總線物理地址。在一個實施例中,使用鏡像映射方案支持基于將哪個地址提供給解碼器201來確定是否對數據執(zhí)行錯誤檢查。例如,如果提供映射的配置鏡像區(qū)域的地址(如圖5中的“配置鏡像”所指示的),則將對讀取的配置信息執(zhí)行錯誤檢查。如果提供了沒有位于鏡像區(qū)域中的地址,則不執(zhí)行錯誤檢查。通過映射503的實施例,映射503的鏡像區(qū)域中的配置存儲位置的邏輯地址相對于非鏡像區(qū)域被壓縮。與訪問非鏡像區(qū)域相比,訪問鏡像區(qū)域的電路將需要更少的地址范圍信息。因此,發(fā)起配置完整性讀取的諸如控制器121的電路可以以較小地址比特生成電路來實現。在一個實施例中,在控制器121或數據處理系統的其他設備中,外圍設備的配置存儲電路的邏輯地址是硬接線的。然而,在其他實施例中,可以由在系統101的啟動期間設置的寄存器可編程值來指定每個外圍設備配置存儲電路的邏輯地址。而且,還可以(例如, 在啟動期間)在寄存器中編程每個外圍設備的配置信息的地址范圍以定義配置區(qū)域的空間。在一個實施例中,那些寄存器(未示出)可以駐留在控制器121中。在另一實施例中, 寄存器將駐留在DMA控制器105中。然而,寄存器可以處于系統101的其他位置。在一些實施例中,實現外圍設備配置存儲位置的鏡像映射區(qū)域可以允許減少定義外圍設備配置存儲電路的位置所需要的寄存器的數目。例如,在非鏡像映射的情況下,每個外圍設備需要兩個寄存器,一個寄存器用于定義配置信息的開始地址,并且第二個寄存器包括地址范圍的長度。如果鏡像區(qū)域的配置存儲電路的邏輯地址被壓縮在一起,則對于所有外圍設備僅需要兩個寄存器,一個用于定義鏡像區(qū)域的開始地址,并且第二個包括鏡像區(qū)域的長度。在一個這樣的實施例中,控制器121將包括計數器,利用鏡像區(qū)域的開始地址來對計數器的開始值進行編程,并且利用鏡像區(qū)域的大小來對計數器的計數長度進行編程。 計數器值的每次改變將發(fā)起用于讀取外圍設備的配置信息的新讀取地址。在一個實施例中,計數器可以在計數結束時被重置回開始數目。在一個實施例中,控制器會從地址解碼器 201接收“正在使用”信號,該“正在使用”信號在外圍設備總線正在由系統主設備使用時會使計數器停止,以暫停配置完整性讀取。當外圍設備總線空閑時,讀取將恢復。在其他實施例中,控制器121被配置為直接向外圍設備總線提供用于配置讀取的外圍設備總線地址。在其他實施例中,控制器121包括使能信號輸入,該使能新號輸入允許操作系統例如為了功率節(jié)省目的而禁用外圍設備配置信息錯誤檢測功能。在其他實施例中,系統101包括開關電路,以將系統互連107的數據線與外圍設備總線123的數據線隔離,以允許在系統互連用于其他目的時執(zhí)行配置信息完整性檢查。在一個實施例中,在包括可操作地耦合到外圍設備總線接口的第一主設備以及可操作地耦合到外圍設備總線接口的多個外圍設備的數據處理系統中,其中,第一主設備經由外圍設備總線接口與多個外圍設備中的每一個進行通信,一種方法包括由第一主設備發(fā)起對多個外圍設備中的第一外圍設備的配置信息的寫入。該方法還包括響應于發(fā)起寫入, 經由外圍設備總線接口提供配置信息用于存儲到第一外圍設備,其中,通過外圍設備總線接口來生成配置信息的第一錯誤校正子。該方法還包括將配置信息存儲在第一外圍設備的第一存儲位置中;以及將第一錯誤校正子存儲在外圍設備總線接口的存儲電路中。在另一個實施例中,在包括可操作地耦合到外圍設備總線接口的第一主設備以及可操作地耦合到外圍設備總線接口的多個外圍設備的數據處理系統中,其中,第一主設備經由外圍設備總線接口與多個外圍設備中的每一個進行通信,一種方法包括經由外圍設備總線接口提供配置信息用于存儲到多個外圍設備中的第一外圍設備。通過外圍設備總線接口生成配置信息的第一錯誤校正子。該方法包括在第一外圍設備中存儲經由外圍設備總線接口提供的配置信息;將第一錯誤校正子存儲在外圍設備總線接口的存儲電路中;以及在存儲配置信息之后,發(fā)起對存儲在第一外圍設備中的配置信息的讀取。該方法包括響應于發(fā)起讀取,從第一外圍設備接收配置信息。通過外圍設備總線接口生成從第一外圍設備接收到的配置信息的第二錯誤校正子,并且將該第二錯誤校正子與第一錯誤校正子作比較, 以確定從第一外圍設備接收到的配置信息中是否存在錯誤。在另一個實施例中,數據處理系統包括第一主設備和外圍設備總線接口。第一主設備可操作地耦合到外圍設備總線接口。數據處理系統包括可操作地耦合到外圍設備總線接口的多個外圍設備。第一主設備經由外圍設備總線接口與多個外圍設備中的每一個進行通信。第一主設備發(fā)起到多個外圍設備中的每一個的配置信息的存儲。當提供配置信息來用于存儲到多個外圍設備中的每一個時,通過外圍設備總線接口生成多個外圍設備中的每一個的配置信息的錯誤校正子,并且將錯誤校正子存儲在外圍設備總線接口的存儲電路中。盡管已經示出和描述了本發(fā)明的特定實施例,但是本領域的技術人員應該認識到,基于本文的教導,可以在不脫離本發(fā)明及其較廣方面的情況下進行進一步的變化和修改,并且因此,所附權利要求將所有這種變化和修改包括在它們的范圍內,如在本發(fā)明的真實精神和范圍內的一樣。
權利要求
1.一種數據處理系統中的方法,所述數據處理系統包括操作地耦合到外圍設備總線接口的第一主設備以及操作地耦合到所述外圍設備總線接口的多個外圍設備,其中,所述第一主設備經由所述外圍設備總線接口與所述多個外圍設備中的每一個進行通信,該方法包括所述第一主設備發(fā)起對所述多個外圍設備中的第一外圍設備的配置信息的寫入;響應于發(fā)起所述寫入,經由所述外圍設備總線接口提供所述配置信息以存儲到所述第一外圍設備中,其中,通過所述外圍設備總線接口生成所述配置信息的第一錯誤校正子;將所述配置信息存儲在所述第一外圍設備的第一存儲位置中;以及將所述第一錯誤校正子存儲在所述外圍設備總線接口的存儲電路中。
2.如權利要求1所述的方法,還包括在存儲所述配置信息之后,從所述第一存儲位置讀取所述配置信息;所述外圍設備總線接口根據讀取所述配置信息來生成從所述第一存儲位置讀取的所述配置信息的第二錯誤校正子;將所述第一錯誤校正子與所述第二錯誤校正子作比較,以確定從所述第一存儲位置讀取的所述配置信息中是否存在錯誤。
3.如權利要求2所述的方法,還包括發(fā)起對存儲在所述第一存儲位置中的所述配置信息的讀取,其中,響應于所述發(fā)起讀取來執(zhí)行上述讀取步驟;確定是否要對所述讀取執(zhí)行錯誤檢測;其中,如果上述確定步驟確定了要對所述讀取執(zhí)行錯誤檢測,則執(zhí)行上述生成步驟和上述比較步驟;其中,上述確定步驟基于所述數據處理系統內的哪個實體發(fā)起了對存儲在所述第一存儲位置中的所述配置信息的讀取。
4.如權利要求3所述的方法,其中,當所述實體包括所述第一主設備時,所述方法還包括確定將不執(zhí)行上述比較步驟。
5.如權利要求3所述的方法,其中,當所述實體包括所述外圍設備總線接口時,所述方法還包括確定將要執(zhí)行錯誤檢測。
6.如權利要求3所述的方法,其中,所述數據處理系統還包括第二主設備,其中,所述第二主設備操作地耦合到所述外圍設備總線接口,并且經由所述外圍設備總線接口與所述外圍設備中的每一個進行通信,并且其中,當所述實體包括所述第二主設備時,所述方法還包括確定將要執(zhí)行錯誤檢測。
7.如權利要求2所述的方法,還包括發(fā)起對存儲在所述第一存儲位置中的所述配置信息的讀取,并且確定是否要對所述讀取執(zhí)行錯誤檢測;其中,如果上述確定步驟確定了要對所述讀取執(zhí)行錯誤檢測,則執(zhí)行上述生成步驟和上述比較步驟;其中,上述確定是否要對所述讀取執(zhí)行錯誤檢測的步驟基于所述外圍設備的哪個存儲器映射用于發(fā)起對所述配置信息的讀取。
8.如權利要求7所述的方法,其中,當所述外圍設備的第一存儲器映射用于發(fā)起所述讀取時,所述方法還包括確定將不執(zhí)行所述錯誤檢測,并且當所述外圍設備的鏡像存儲器映射用于發(fā)起所述讀取時,所述方法還包括確定將要執(zhí)行錯誤檢測。
9.一種數據處理系統中的方法,所述數據處理系統包括操作地耦合到外圍設備總線接口的第一主設備以及操作地耦合到所述外圍設備總線接口的多個外圍設備,其中,所述第一主設備經由所述外圍設備總線接口與所述多個外圍設備中的每一個進行通信,該方法包括經由所述外圍設備總線接口提供配置信息以存儲到所述多個外圍設備中的第一外圍設備中,其中,通過所述外圍設備總線接口生成所述配置信息的第一錯誤校正子;將經由所述外圍設備總線接口提供的所述配置信息存儲在所述第一外圍設備中;將所述第一錯誤校正子存儲在所述外圍設備總線接口的存儲電路中;在存儲所述配置信息之后,發(fā)起對存儲在所述第一外圍設備中的所述配置信息的讀??;以及響應于發(fā)起所述讀取,從所述第一外圍設備接收所述配置信息,其中,通過所述外圍設備總線接口生成從所述第一外圍設備接收到的所述配置信息的第二錯誤校正子,并且將所述第二錯誤校正子與所述第一錯誤校正子作比較,以確定從所述第一外圍設備接收到的所述配置信息中是否存在錯誤。
10.如權利要求9所述的方法,還包括經由所述外圍設備總線接口提供第二配置信息以存儲到所述多個外圍設備中的第二外圍設備中,其中,通過所述外圍設備總線接口生成所述第二配置信息的第三錯誤校正子;將經由所述外圍設備總線接口所提供的所述第二配置信息存儲在所述第二外圍設備中;將所述第三錯誤校正子存儲在所述外圍設備總線接口的所述存儲電路中;在存儲所述第二配置信息之后,發(fā)起對存儲在所述第二外圍設備中的所述第二配置信息的讀?。灰约绊憫诎l(fā)起對所述第二配置信息的讀取,從所述第二外圍設備接收所述第二配置信息,其中,通過所述外圍設備總線接口生成從所述第二外圍設備接收到的所述第二配置信息的第四錯誤校正子,并且將所述第四錯誤校正子與所述第三錯誤校正子作比較,以確定從所述第二外圍設備接收到的所述第二配置信息中是否存在錯誤。
11.如權利要求9所述的方法,還包括所述第一主設備發(fā)起對所述第一外圍設備的所述配置信息的寫入,其中,響應于發(fā)起所述寫入來執(zhí)行提供所述配置信息。
12.如權利要求11所述的方法,其中,所述數據處理系統還包括第二主設備,所述第二主設備操作地耦合到所述外圍設備總線接口并且經由所述外圍設備總線接口與所述外圍設備中的每一個進行通信,并且其中,由所述第二主設備執(zhí)行發(fā)起對存儲在所述第一外圍設備中的所述配置信息的讀取。
13.如權利要求12所述的方法,還包括所述第一主設備發(fā)起對存儲在所述第一外圍設備中的配置信息的第二讀?。豁憫谒龅谝恢髟O備發(fā)起所述第二讀取,經由所述外圍設備總線接口從所述第一外圍設備接收所述配置信息;其中,所述外圍設備總線接口不對從所述第一外圍設備接收到的所述配置信息執(zhí)行錯誤檢測;以及向所述第一主設備提供從所述第一外圍設備接收到的所述配置信息。
14.如權利要求12所述的方法,還包括所述第一主設備發(fā)起對存儲在所述第一外圍設備中的所述配置信息的第二讀??;響應于所述第一主設備發(fā)起所述第二讀取,經由所述外圍設備總線接口從所述第一外圍設備接收所述配置信息;其中,所述第一主設備根據所述多個外圍設備的第一存儲器映射來發(fā)起對存儲在所述第一外圍設備中的所述配置信息的所述第二讀取,并且第二主設備根據所述多個外圍設備的第二存儲器映射來發(fā)起對存儲在所述第一外圍設備中的所述配置信息的讀取,所述第二存儲器映射與所述第一存儲器映射不同。
15.如權利要求9所述的方法,其中,通過所述外圍設備總線接口來執(zhí)行發(fā)起對存儲在所述第一外圍設備中的所述配置信息的讀取。
16.如權利要求15所述的方法,其中,所述第一主設備根據所述多個外圍設備的第一存儲器映射來發(fā)起對存儲在所述第一外圍設備中的所述配置信息的寫入,并且所述外圍設備總線接口根據所述多個外圍設備的第二存儲器映射來發(fā)起對存儲在所述第一外圍設備中的所述配置信息的讀取,所述第二存儲器映射與所述第一存儲器映射不同。
17.一種數據處理系統,包括第一主設備;外圍設備總線接口,其中,所述第一主設備操作地耦合到所述外圍設備總線接口 ;以及多個外圍設備,所述多個外圍設備操作地耦合到所述外圍設備總線接口,其中,所述第一主設備經由所述外圍設備總線接口與所述多個外圍設備中的每一個進行通信,并且其中所述第一主設備發(fā)起對所述多個外圍設備中的每一個的配置信息的存儲,其中,當提供所述配置信息以存儲到所述多個外圍設備中的每一個中時,通過所述外圍設備總線接口生成所述多個外圍設備中的每一個外圍設備的所述配置信息的錯誤校正子,并且將所述錯誤校正子存儲在所述外圍設備總線接口的存儲電路中。
18.如權利要求17所述的數據處理系統,其中,對于配置信息的錯誤檢測,當從所述外圍設備讀取存儲在所述多個外圍設備中的一個外圍設備中的配置信息,并且在所述外圍設備總線接口中接收所述配置信息時,所述外圍設備總線接口生成從所述外圍設備接收到的所述配置信息的錯誤校正子,并且將所述錯誤校正子與在對所述外圍設備寫入所述配置信息期間所生成的錯誤校正子作比較,以確定從外圍設備接收到的所述配置信息中是否存在錯誤。
19.如權利要求18所述的數據處理系統,其中,所述第一主設備使用所述多個外圍設備的第一存儲器映射來發(fā)起對所述多個外圍設備的配置信息的存儲,并且與所述第一存儲器映射不同的鏡像存儲器映射用于發(fā)起對存儲在所述多個外圍設備中的配置信息的讀取以用于錯誤檢測。
20.如權利要求18所述的數據處理系統,其中,所述外圍設備總線接口發(fā)起對存儲在所述外圍設備中的所述配置信息的讀取以用于錯誤檢測。
全文摘要
一種具有外圍設備配置信息錯誤檢測的數據處理系統。在包括可操作地耦合到外圍設備總線接口的第一主設備以及可操作地耦合到外圍設備總線接口的多個外圍設備的數據處理系統中,其中,第一主設備經由外圍設備總線接口與多個外圍設備中的每一個進行通信,一種方法包括第一主設備發(fā)起對多個外圍設備中的第一外圍設備的配置信息寫入。響應于發(fā)起寫入,經由外圍設備總線接口提供配置信息用于存儲到第一外圍設備,其中,通過外圍設備總線接口生成配置信息的第一錯誤校正子。將所提供的配置信息存儲在第一外圍設備中,且將第一錯誤校正子存儲在外圍設備總線接口的存儲電路中。在隨后的錯誤檢查中,第一錯誤校正子可以用于檢查配置信息的完整性。
文檔編號G06F11/22GK102436412SQ20111022872
公開日2012年5月2日 申請日期2011年8月5日 優(yōu)先權日2010年8月5日
發(fā)明者加里·L·米勒 申請人:飛思卡爾半導體公司