国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      封裝的硬件配置/控制的制作方法

      文檔序號:6375083閱讀:246來源:國知局
      專利名稱:封裝的硬件配置/控制的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及硬件子系統(tǒng)的配置和控制。
      背景技術(shù)
      隨著集成密度的增加,硬件子系統(tǒng)變得越來越復(fù)雜。典型地,這些子系統(tǒng)一般在啟動時需要初始化,并且在隨后的操作過程中需要配置或重新配置。操作期間子系統(tǒng)的控制也可能需要配置或重新配置。目前通過可以嵌入在硬件、固件或軟件中的系統(tǒng)程序設(shè)計來實現(xiàn)這樣的初始化、配置、重新配置和控制。這樣的系統(tǒng)程序設(shè)計是費力的和容易出錯的,而且從程序設(shè)計的觀點來看,也是不安全的。
      當(dāng)前,系統(tǒng)程序員首先必須讀取硬件子系統(tǒng)的詳細(xì)的技術(shù)說明。這種技術(shù)說明通常非常大而且可能是不清楚、存在矛盾、過期或者錯誤的。接下來,程序員一般要對硬件抽象語言(Hardware AbstractionLanguage)進(jìn)行編碼,該硬件抽象語言將技術(shù)說明中所提到的為數(shù)眾多的寄存器和規(guī)定比特翻譯為字母數(shù)字描述,這些字母數(shù)字描述允許程序員利用名稱而不是數(shù)字來配置和控制硬件子系統(tǒng)。典型地,在該項任務(wù)中沒有用來幫助的工具。因此,硬件抽象語言的構(gòu)成主要涉及費力的代換(substiution)處理,而這樣的處理對于許多程序員來說是不具有吸引力的并因此容易出錯。
      作為該處理的結(jié)果,可能在對通過硬件抽象接口傳遞的命令和數(shù)據(jù)進(jìn)行排序時出現(xiàn)差錯。也可能由于技術(shù)說明是錯誤的或者被誤解而出現(xiàn)差錯。此外,由于硬件子系統(tǒng)的接口實際上是全球性的(即,任何任務(wù)一般訪問任何子系統(tǒng)的寄存器或存儲器),所以錯誤的或惡意的任務(wù)能夠帶來嚴(yán)重的破壞。從這個意義上講,目前用于復(fù)雜硬件子系統(tǒng)的配置和控制方案是不安全的。
      對于復(fù)雜硬件子系統(tǒng)的配置和控制來說,所需要的是減輕上述的對系統(tǒng)程序員施加的負(fù)擔(dān)并且與現(xiàn)有方法相比是安全和無差錯的一種技術(shù)。

      發(fā)明內(nèi)容
      一般來說,本發(fā)明提供一種用于配置和控制復(fù)雜硬件子系統(tǒng)的技術(shù),該技術(shù)減輕置于系統(tǒng)程序員身上的負(fù)擔(dān),而且與目前方法相比較,該技術(shù)是安全的且無差錯的。根據(jù)本發(fā)明的一個方面,通過在硬件中提供配置控制器來實現(xiàn)硬件子系統(tǒng)的配置,所述配置控制器包括控制器部分和存儲配置參數(shù)的存儲器部分。例如,響應(yīng)于配置/控制ID,激活配置控制器,并據(jù)此執(zhí)行硬件子系統(tǒng)的配置,包括在硬件子系統(tǒng)的寄存器中存儲至少一個配置參數(shù)。典型地,配置控制器硬件和存儲器被嵌入到要被配置或被控制的硬件子系統(tǒng)內(nèi)。因此,配置/控制功能被“封裝”在硬件子系統(tǒng)自身中,使得系統(tǒng)程序員不需要關(guān)心功能的細(xì)節(jié)。配置控制器例如可以采用狀態(tài)機(jī)的形式。
      硬件子系統(tǒng)可以在系統(tǒng)的運(yùn)行期間在不同時間采用不同的配置。在該實例中,可以提供多個配置/控制ID,每個配置/控制ID對應(yīng)于一種特定配置。


      參考下面的詳細(xì)描述和附圖,將更好地理解本發(fā)明。在附圖中圖1是使用封裝的硬件配置/控制的系統(tǒng)的電路圖。
      具體實施例方式
      現(xiàn)在,參考圖1,示出了使用封裝的硬件配置/控制的系統(tǒng)的電路圖。該系統(tǒng)是一種電子系統(tǒng),其可以具有多種形式中的任何一種,例如包括電子底板、電路板、多片模塊或其它模塊、“單芯片系統(tǒng)(System-On-a-Chip)”(SOC)集成電路或其它集成電路等。假定該系統(tǒng)包括處理器101和系統(tǒng)總線103。必要時,系統(tǒng)總線可以使用一個或多個總線橋式接口連接到其它總線(未示出)。
      在該系統(tǒng)內(nèi),各種子系統(tǒng)連接到系統(tǒng)總線,包括要被配置或被控制的子系統(tǒng)110。例如,在SOC的環(huán)境下,一種這樣的典型子系統(tǒng)例如可以是USB控制器。其它典型的子系統(tǒng)例如可以包括SDRAM控制器、PLL/時鐘子系統(tǒng)決等。
      以簡化的形式將要被配置或控制的子系統(tǒng)110表示為包括各種硬件寄存器111以及另外還包括配置/控制狀態(tài)機(jī)113和相關(guān)存儲器115。可以根據(jù)復(fù)雜指令集處理器來仿造狀態(tài)機(jī)113。存儲器115一般是只讀的。配置/控制狀態(tài)機(jī)113與系統(tǒng)總線進(jìn)行通信,而存儲器115例如經(jīng)由子系統(tǒng)總線117與各個寄存器進(jìn)行通信。優(yōu)選地,存儲器115的寬度與子系統(tǒng)總線117的寬度相匹配。
      在操作中,為了配置或控制子系統(tǒng)110,將單個簡單的配置/控制ID從處理器101傳遞到配置/控制狀態(tài)機(jī)113,該配置/控制狀態(tài)機(jī)113對于系統(tǒng)軟件來說可以簡單地表現(xiàn)為寄存器。配置/控制狀態(tài)機(jī)113通過導(dǎo)致執(zhí)行一個或多個到子系統(tǒng)寄存器組111的寫循環(huán)來響應(yīng)配置/控制ID。系統(tǒng)程序員可以不注意配置/控制狀態(tài)機(jī)113的內(nèi)部工作。
      可以將允許不同配置或不同控制操作的多個配置數(shù)據(jù)集合存儲到存儲器115的不同部分。不同的配置/控制ID可以用于指定不同的配置數(shù)據(jù)集合或不同的控制操作。
      對于單個子系統(tǒng)使用多個配置/控制ID的一個實例是USB(通用串行總線)塊,其中特定端口(即,端點)可以操作在控制(Control)、中斷(Interrupt)、等時(Isochronous)或批量(Bulk)模式。在該實例中,將不同的配置/控制ID分配給每個模式。對于每個不同的模式來說,配置/控制狀態(tài)機(jī)113響應(yīng)于相應(yīng)的配置/控制ID,以便寫入可能大量的寄存器(例如,端點使能寄存器、端點中斷寄存器、DMA控制寄存器等),而不會出現(xiàn)在現(xiàn)有技術(shù)的解決方案中遇到的大量差錯可能性。系統(tǒng)軟件不需要知道這些“內(nèi)部”寄存器中的任何一個;相反,系統(tǒng)軟件僅需要知道相對較少的配置/控制ID。通過將單個配置/控制ID寫入單個“寄存器”(配置/控制狀態(tài)機(jī)113),可靠地實現(xiàn)期望的配置。
      配置/控制ID可以激活或禁用各種子系統(tǒng)硬件可選項。例如,在USB控制器的情況下,在成功接收了USB分組之后,控制功能有可以激活或禁用DMA控制器的自動的重新初始化。(當(dāng)激活該可選項時,DMA功能準(zhǔn)備接受下一個分組而無需軟件干涉)。對應(yīng)于控制模式的配置/控制ID一般將激活該可選項,而對應(yīng)于Bulk模式的配置/控制ID一般將不激活該可選項。
      可以使用多個不同的控制I D來接入子系統(tǒng)的某一些特定的內(nèi)部工作。例如,在USB子系統(tǒng)中,由軟件控制的一項功能是將該子系統(tǒng)設(shè)置為中止模式(Suspend Mode),以便在沒有USB總線業(yè)務(wù)量時,降低功率??梢詫蝹€唯一的控制ID分配給這項功能。軟件僅將該ID寫入到子系統(tǒng),以激活該模式。實際的寄存器和在該寄存器中執(zhí)行這項功能的特定比特將被隱藏而無法看到(即,被封裝)。這個方案的附增優(yōu)點是在不改變軟件的情況下,能夠?qū)崿F(xiàn)對USB塊的完整重新設(shè)計。
      盡管已經(jīng)就特定實施例描述了本發(fā)明,但本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,不脫離本發(fā)明的精神或?qū)嵸|(zhì)特性,可以以其它特定形式來實現(xiàn)本發(fā)明。因此,當(dāng)前公開的實施例在所有方面都被認(rèn)為是示例性的而不是限制性的。由所附的權(quán)利要求、而不是上面的描述來指明本發(fā)明的范圍,并且落入本發(fā)明的含義及其等價范圍內(nèi)的所有改變都旨為包含在其中。
      權(quán)利要求
      1.一種執(zhí)行子系統(tǒng)的配置或控制的方法,包括給子系統(tǒng)一起提供具有控制器部分(113)的配置/控制單元和存儲配置參數(shù)的存儲器部分(115);配置/控制單元接收激活信號;和響應(yīng)于激活信號,配置/控制單元執(zhí)行子系統(tǒng)(110)的配置或控制,包括在子系統(tǒng)內(nèi)的位置(111)上存儲至少一個配置參數(shù)。
      2.根據(jù)權(quán)利要求1的方法,其中子系統(tǒng)(110)是硬件子系統(tǒng),并且配置/控制單元是硬件配置/控制單元。
      3.根據(jù)權(quán)利要求1的方法,其中在同一個集成電路內(nèi)一起提供硬件子系統(tǒng)(110)和硬件配置/控制單元。
      4.根據(jù)權(quán)利要求1的方法,其中激活信號是配置/控制ID。
      5.根據(jù)權(quán)利要求4的方法,其中配置/控制單元響應(yīng)多個不同的配置/控制ID,用于對子系統(tǒng)(110)執(zhí)行不同的相應(yīng)配置或控制動作。
      6.一種具有自配置能力的子系統(tǒng),包括寄存器部分(111),包括多個寄存器,該子系統(tǒng)根據(jù)寄存器的內(nèi)容而不同地起作用;和配置/控制單元,其具有控制器部分(113)和存儲配置參數(shù)的存儲器部分(115);其中配置/控制單元響應(yīng)激活信號,用于執(zhí)行子系統(tǒng)(110)的配置或控制,包括在子系統(tǒng)(110)內(nèi)的位置(111)上存儲至少一個配置參數(shù)。
      7.根據(jù)權(quán)利要求6的設(shè)備,其中子系統(tǒng)(110)是硬件子系統(tǒng),并且配置/控制單元是硬件配置/控制單元。
      8.根據(jù)權(quán)利要求7的設(shè)備,其中在同一個集成電路中一起提供硬件子系統(tǒng)(110)和硬件配置/控制單元。
      9.根據(jù)權(quán)利要求6的設(shè)備,其中激活信號是配置/控制ID。
      10.根據(jù)權(quán)利要求9的設(shè)備,其中配置/控制單元響應(yīng)多個不同的配置/控制ID,用于對子系統(tǒng)(110)執(zhí)行不同的相應(yīng)配置或控制動作。
      全文摘要
      提供了一種用于配置和控制復(fù)雜硬件子系統(tǒng)的技術(shù),減輕了對系統(tǒng)程序員設(shè)置的負(fù)擔(dān),而且與目前的方法相比較,該技術(shù)是安全且無差錯的。根據(jù)本發(fā)明的一個方面,通過以硬件提供配置控制器來實現(xiàn)硬件子系統(tǒng)(110)的配置,所述配置控制器包括控制器部分(113)和存儲配置參數(shù)的存儲器部分(115)。例如,響應(yīng)于配置/控制ID,激活配置控制器(113),并且據(jù)此執(zhí)行硬件子系統(tǒng)(110)的配置,包括在硬件子系統(tǒng)的寄存器(111)中存儲至少一個配置參數(shù)。典型地,配置控制器硬件(113)和存儲器(115)被嵌入到要被配置或被控制的硬件子系統(tǒng)中。因此,配置/控制功能被“封裝”到硬件子系統(tǒng)(110)自身內(nèi),使得系統(tǒng)程序員不必關(guān)注細(xì)節(jié)。
      文檔編號G06F9/445GK1729450SQ200380106651
      公開日2006年2月1日 申請日期2003年12月17日 優(yōu)先權(quán)日2002年12月18日
      發(fā)明者L·戈夫 申請人:皇家飛利浦電子股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1