亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

外圍設(shè)備的lpc總線接口時序轉(zhuǎn)換方法及轉(zhuǎn)換裝置的制作方法

文檔序號:6557520閱讀:609來源:國知局
專利名稱:外圍設(shè)備的lpc總線接口時序轉(zhuǎn)換方法及轉(zhuǎn)換裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及外圍設(shè)備接入LPC(Low Pin Count,低管腳數(shù))總線的接口轉(zhuǎn)換裝置,尤其涉及外圍設(shè)備的LPC總線接口時序轉(zhuǎn)換方法及其應(yīng)用的接口轉(zhuǎn)換裝置。
背景技術(shù)
LPC是Intel(英特爾)公司定義的一種總線,它是取代ISA(IndustryStandard Architecture,工業(yè)標(biāo)準(zhǔn)結(jié)構(gòu))、X-bus(X總線)的新的接口,因管腳數(shù)少而得名。LPC總線是一個多路復(fù)用總線,工作在33MHz(兆赫),與PCI(Peripheral Component Interconnect,外圍部件互連)總線同步。
然而,目前仍有很多外圍設(shè)備只提供其他類型的總線接口,如ISA總線、LocalBus(本地總線)總線等。由于這些總線的工作頻率、數(shù)據(jù)地址總線位數(shù)以及讀寫時序等與LPC總線不同,因而外圍設(shè)備需要進(jìn)行總線接口轉(zhuǎn)換后才能接入LPC總線正常工作。
在總線接口轉(zhuǎn)換中,最為重要的任務(wù)之一是進(jìn)行讀時序和寫時序的轉(zhuǎn)換。針對某個外圍設(shè)備進(jìn)行的讀操作和寫操作需要等待該外圍設(shè)備完成讀寫之后返回執(zhí)行結(jié)果。在LPC所定義的讀寫周期中,控制LPC總線的設(shè)備通過使LPC總線保持等待(SYNC)狀態(tài)來等待外圍設(shè)備完成讀寫。
LPC的等待狀態(tài)包括短等待狀態(tài)(Short Wait)和長等待狀態(tài)(Long Wait)?,F(xiàn)有技術(shù)中,總線接口轉(zhuǎn)換裝置根據(jù)其連接外圍設(shè)備完成讀操作或?qū)懖僮鞯臅r間設(shè)定預(yù)定時長,在該預(yù)定時長內(nèi)將LPC總線保持為短等待,在預(yù)定時長結(jié)束后返回執(zhí)行結(jié)果。這一預(yù)定時長足夠外圍設(shè)備完成相應(yīng)的讀或?qū)懖僮?。以某種采用LocalBus總線接口的Flash為例,8位數(shù)據(jù)地址寬度,要求讀寫操作時間大于90ns,在將LPC總線設(shè)為短等待的同時設(shè)置一個計數(shù)器,每個時鐘周期計數(shù)器增1,至少等待4個時鐘周期后收回LPC總線并完成一次讀寫操作。
這種等待時序的實現(xiàn)方法適用于訪問時長基本確定的外圍設(shè)備。而對一些具有可變訪問時長的外圍設(shè)備,其讀操作和/或?qū)懖僮魉璧臅r間可能因訪問方式、訪問地址等條件的不同而有較大范圍的變化,采用這種方法會只能按照可能的最大訪問時間來設(shè)置預(yù)定時長,使得該外圍設(shè)備和整個系統(tǒng)的效率大大降低。

發(fā)明內(nèi)容
本發(fā)明要解決的是現(xiàn)有技術(shù)中總線接口時序轉(zhuǎn)換方法應(yīng)用于具有可變訪問時長的外圍設(shè)備時造成訪問效率過低的問題。
本發(fā)明所述外圍設(shè)備的LPC總線接口時序轉(zhuǎn)換方法包括以下步驟在外圍設(shè)備執(zhí)行訪問操作時將LPC總線保持為長等待狀態(tài);在外圍設(shè)備完成訪問操作后,結(jié)束長等待狀態(tài),驅(qū)動LPC總線進(jìn)行下一個時鐘域的操作。
優(yōu)選地,所述方法還包括當(dāng)長等待狀態(tài)的持續(xù)時間超過預(yù)定閾值時,結(jié)束長等待狀態(tài)同時向LPC總線發(fā)送錯誤信息。
優(yōu)選地,所述長等待狀態(tài)的持續(xù)時間通過統(tǒng)計長等待狀態(tài)經(jīng)過的時鐘周期得到。
優(yōu)選地,所述外圍設(shè)備完成訪問操作具體為外圍設(shè)備輸出表示訪問完成的指示。
優(yōu)選地,所述方法在外圍設(shè)備執(zhí)行訪問前還包括獲得LPC總線控制權(quán)。
本發(fā)明提供了一種將外圍設(shè)備接入LPC總線的接口轉(zhuǎn)換裝置,包括LPC接口、外設(shè)接口和訪問時序控制模塊,其中
LPC接口和外設(shè)接口分別用來連接LPC總線和外圍設(shè)備;訪問時序控制模塊用來根據(jù)LPC總線的訪問時序進(jìn)行外圍設(shè)備的訪問操作,包括在通過外設(shè)接口輸出訪問操作指令后通過LPC接口輸出長等待狀態(tài),以及在從外設(shè)接口接收到訪問操作完成指示后結(jié)束長等待狀態(tài)。
優(yōu)選地,所述LPC總線包括LPC時鐘信號;訪問時序控制模塊根據(jù)LPC時鐘信號統(tǒng)計長等待狀態(tài)的持續(xù)時間,在持續(xù)時間超過預(yù)定閾值時通過LPC接口輸出訪問錯誤信息并結(jié)束長等待狀態(tài)。
優(yōu)選地,所述接口轉(zhuǎn)換裝置為復(fù)雜可編程邏輯設(shè)備CPLD或現(xiàn)場可編程門陣列FPGA。
本發(fā)明提供了一種采用LPC總線的輸入輸出I/O系統(tǒng),包括處理單元和外圍設(shè)備,以及接口轉(zhuǎn)換裝置,通過LPC總線連接處理單元并且連接外圍設(shè)備,用來將處理單元發(fā)起的LPC訪問周期轉(zhuǎn)換為外圍設(shè)備的訪問周期,其中LPC訪問周期中的等待SYNC時鐘域通過長等待狀態(tài)實現(xiàn),在接收到外圍設(shè)備訪問操作結(jié)果時結(jié)束SYNC時鐘域。
優(yōu)選地,所述接口轉(zhuǎn)換裝置通過與LPC相異的總線與外圍設(shè)備連接。
本發(fā)明以長等待狀態(tài)來實現(xiàn)LPC時序中的SYNC時鐘域,以外圍設(shè)備訪問操作完成作為SYNC時鐘域的結(jié)束,因而使得每次的等待時長正好符合外圍設(shè)備的訪問時長,提高了對外圍設(shè)備的訪問效率;同時,本發(fā)明對外圍設(shè)備的訪問時間進(jìn)行計時,在超時后返回錯誤信息,避免長時間占用總線。


圖1為LPC總線固件內(nèi)存訪問周期(Firmware Memory Cycle)的讀操作時序圖;圖2為LPC總線固件內(nèi)存訪問周期的寫操作時序圖;
圖3為本發(fā)明所述LPC總線接口時序轉(zhuǎn)換方法的流程圖;圖4為本發(fā)明所述I/O系統(tǒng)的結(jié)構(gòu)示意圖;圖5為本發(fā)明所述接口轉(zhuǎn)換裝置的結(jié)構(gòu)圖;圖6為本發(fā)明應(yīng)用示例中MAC芯片的讀操作時序圖;圖7為本發(fā)明應(yīng)用示例中MAC芯片的寫操作時序圖;圖8為本發(fā)明應(yīng)用示例中接口轉(zhuǎn)換裝置的總線連接示意圖;圖9為本發(fā)明應(yīng)用示例的狀態(tài)機(jī)轉(zhuǎn)換示意圖。
具體實施例方式
LPC總線定義了若干類型的訪問周期,以固件內(nèi)存訪問周期(FirmwareMemory Cycle)為例,其讀操作時序如圖1所示,其中LCLK為LPC時鐘信號;LAD[3:0]為LPC的4位雙向總線,用來傳輸控制、地址和數(shù)據(jù)信號;以LFRAME_N信號持續(xù)1個時鐘周期低電平時在LAD[3:0]上驅(qū)動0000b表示一個LPC訪問周期的開始。固件內(nèi)存訪問周期由LPC主設(shè)備發(fā)起,從設(shè)備響應(yīng)。
固件內(nèi)存訪問周期的讀操作開始時主設(shè)備握有LPC總線的控制權(quán),主設(shè)備以1個時鐘周期的低電平開始訪問周期,在IDSEL時鐘域發(fā)送1個時鐘周期的片選信號,再在ADDR時鐘域用7個時鐘周期將最多28位的訪問地址發(fā)送給從設(shè)備,之后的MSIZE為可選時鐘域,用來表示每次訪問的字節(jié)數(shù)。在將上述信息發(fā)送給從設(shè)備后,由主設(shè)備驅(qū)動將LPC總線控制權(quán)轉(zhuǎn)交給從設(shè)備,這一控制權(quán)轉(zhuǎn)移時鐘域TAR為2個時鐘周期。從設(shè)備取得總線控制權(quán)后,在讀操作期間將LPC總線保持為等待狀態(tài),此時為SYNC時鐘域,可能持續(xù)多個時鐘周期;在讀操作完成后,從設(shè)備將主設(shè)備讀取的數(shù)據(jù)在DATA時鐘域發(fā)送至LPC總線上,讀取M個字節(jié)時占用2M個時鐘周期;之后從設(shè)備在第二個TAR時鐘域?qū)⒖偩€控制權(quán)交還給主設(shè)備,結(jié)束讀操作時序。
圖2所示為固件內(nèi)存訪問周期的寫操作時序圖,與圖1中讀操作時序的不同之處在于主設(shè)備在第一個TAR時鐘域?qū)⒖偩€控制權(quán)轉(zhuǎn)給從設(shè)備前,要在DATA時鐘域?qū)⒁獙懭氲臄?shù)據(jù)傳輸給從設(shè)備;而從設(shè)備在占有總線控制權(quán)期間不需要向主設(shè)備返回數(shù)據(jù),在SYNC時鐘域完成寫操作后,即可交還總線控制權(quán)。
LPC總線的其他訪問周期與固件內(nèi)存訪問周期類似,都是當(dāng)主設(shè)備將訪問操作所需的地址信息以及數(shù)據(jù)信息發(fā)送至從設(shè)備后,轉(zhuǎn)換總線控制權(quán),從設(shè)備在SYNC時鐘域完成訪問操作,在SYNC時鐘域結(jié)束后向主設(shè)備返回操作結(jié)果并交還總線控制權(quán)。
在SYNC時鐘域中,從設(shè)備掌握總線控制權(quán)。從設(shè)備可以通過在LAD[3:0]上驅(qū)動不同的信號來保持兩種等待狀態(tài),在這一時間段內(nèi)完成訪問操作。當(dāng)從設(shè)備驅(qū)動0101b時為短等待狀態(tài),現(xiàn)有技術(shù)中即通過這一狀態(tài)設(shè)置預(yù)定訪問操作時長;當(dāng)從設(shè)備驅(qū)動0110b時為長等待狀態(tài),長等待狀態(tài)能夠持續(xù)超過1毫秒的時間,直到從設(shè)備驅(qū)動0000b或1010b結(jié)束;其中0000b表示訪問操作正常完成,1010b表示訪問操作發(fā)生錯誤。
對具有可變訪問時長的外圍設(shè)備,通常都能夠以在某條信號線上驅(qū)動某種信號來作為訪問操作完成的指示,以通知訪問設(shè)備。在本發(fā)明中,在SYNC時鐘域設(shè)置長等待狀態(tài),當(dāng)外圍設(shè)備輸出訪問操作完成指示時,結(jié)束長等待狀態(tài),從而非常靈活地實現(xiàn)每次訪問操作的不同等待時長。
圖3所示為本發(fā)明中外圍設(shè)備的總線接口時序轉(zhuǎn)換方法流程圖。在步驟S310,獲得LPC總線的控制權(quán)。如前所述,在LPC訪問周期的第1個TAR時鐘域進(jìn)行總線控制權(quán)由主設(shè)備到從設(shè)備的轉(zhuǎn)交,到達(dá)SYNC時鐘域時,從設(shè)備一側(cè)已獲得總線控制權(quán)。
在步驟S320,外圍設(shè)備開始執(zhí)行訪問操作。根據(jù)之前從LPC總線上接收的信息,外圍設(shè)備開始執(zhí)行該LPC訪問周期所指定的訪問操作。
在步驟S330,在外圍設(shè)備開始執(zhí)行訪問操作的同時,啟動對其訪問操作的計時。由于LPC總線上具有時鐘信號,可以通過對訪問操作所經(jīng)過的時鐘周期進(jìn)行計數(shù)從而方便地得到訪問操作的持續(xù)時間。
在步驟S340,保持LPC總線為長等待狀態(tài)。SYNC時鐘域,在LPC總線上驅(qū)動0110b即可保持LPC總線為長等待狀態(tài)。
在步驟S350,判斷外圍設(shè)備是否輸出訪問操作完成的指示,如果是,轉(zhuǎn)步驟S380;如果否,轉(zhuǎn)步驟S360。
在步驟S360,判斷訪問操作的持續(xù)時間是否超過預(yù)定閾值,如果是,則認(rèn)為本次訪問操作失敗,執(zhí)行步驟S370;如果否,轉(zhuǎn)步驟S340。
在步驟S370,在LPC總線上驅(qū)動1010b,結(jié)束長等待狀態(tài)并向主設(shè)備發(fā)送訪問操作錯誤的信息,轉(zhuǎn)步驟S390。此時,SYNC時鐘域隨長等待狀態(tài)的結(jié)束而結(jié)束。
在步驟S380,接收到外圍設(shè)備訪問操作完成的指示后,在LPC總線上驅(qū)動0000b,通知主設(shè)備訪問操作正常完成,同時結(jié)束長等待狀態(tài),SYNC時鐘域也結(jié)束。
在步驟S390,驅(qū)動LPC總線進(jìn)行下一個時鐘域的操作。
步驟S330、S360、S370用來實現(xiàn)外圍設(shè)備訪問的超時機(jī)制,避免外圍設(shè)備工作異常時長時間占用LPC總線。在一些應(yīng)用中,超時機(jī)制也可以在外圍設(shè)備內(nèi)部、或者主設(shè)備一側(cè)實現(xiàn),此時步驟S330、S360和S370可以省略。
本發(fā)明上述時序轉(zhuǎn)換方法可以應(yīng)用于采用LPC總線的I/O(輸入輸出)系統(tǒng),其結(jié)構(gòu)如圖4所示。處理單元410與接口轉(zhuǎn)換裝置430通過LPC總線420連接,接口轉(zhuǎn)換裝置430與外圍設(shè)備450通過外圍設(shè)備總線440連接。外圍設(shè)備總線440為非LPC總線。接口轉(zhuǎn)換裝置430也可以直接與外圍設(shè)備450連接。
處理單元410作為LPC總線420的主設(shè)備,通過LPC總線420發(fā)起對外圍設(shè)備450的LPC訪問周期。接口轉(zhuǎn)換裝置430將LPC訪問周期的時序轉(zhuǎn)換為外圍設(shè)備450的訪問周期的時序,通過外圍設(shè)備總線440驅(qū)動外圍設(shè)備450完成訪問操作。對LPC訪問周期中供外圍設(shè)備450進(jìn)行訪問操作的SYNC時鐘域,接口轉(zhuǎn)換裝置430保持LPC總線420為長等待狀態(tài),并在接收到外圍設(shè)備450的訪問操作結(jié)果后結(jié)束長等待狀態(tài)和SYNC時鐘域。
圖5所示為接口轉(zhuǎn)換裝置430的內(nèi)部結(jié)構(gòu),接口轉(zhuǎn)換裝置430包括LPC接口431、訪問時序控制模塊432和外設(shè)接口433,訪問時序控制模塊432分別與LPC接口431和外設(shè)接口433相連接,LPC接口431連接LPC總線420,外設(shè)接口433連接外圍設(shè)備。
訪問時序控制模塊432按照LPC總線420的訪問時序進(jìn)行外圍設(shè)備450的訪問操作。在LPC訪問周期的SYNC時鐘域,訪問時序控制模塊432從外設(shè)接口433輸出訪問操作指令,啟動外圍設(shè)備450的訪問操作,之后通過LPC接口431在LPC總線420上驅(qū)動0110b,保持LPC總線420為長等待狀態(tài);外圍設(shè)備450完成訪問操作后,訪問時序控制模塊432從外設(shè)接口433接收到訪問操作完成指示,之后結(jié)束LPC總線420的長等待狀態(tài)。
訪問時序控制模塊433可以利用LPC總線420中的LPC時鐘信號對長等待狀態(tài)計時,如果長等待狀態(tài)的持續(xù)時間超過預(yù)定閾值時仍未在外設(shè)接口433接收到訪問訪問操作完成指示,則通過LPC接口431在LPC總線420上輸出訪問錯誤信息,并同時結(jié)束長等待狀態(tài)。
接口轉(zhuǎn)換裝置可以采用CPLD(Complex Programmable Logic Device,復(fù)雜可編程邏輯設(shè)備)、FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)等實現(xiàn)。
以下以網(wǎng)絡(luò)設(shè)備中普遍使用的采用LPC總線的CPU(Central ProcessUnit,中央處理器)對MAC(Media Access Control,媒介接入控制)芯片的訪問為例,說明本發(fā)明的具體應(yīng)用。
MAC芯片的CPU接口通常是LocalBus總線接口,設(shè)MAC芯片選用Ample廠家Harrier系列的MAC芯片A2511,其同步CPU接口支持16位訪問模式。在圖6的A2511讀操作時序和圖7的A2511寫操作時序中,CPU_ADDR用來輸入CPU訪問操作的地址信息;CPU_TS_N低電平有效,表示一次訪問的開始;CPU_CS_N為片選信號,低電平有效;CPU_RDY_N低電平有效,表示當(dāng)前總線CPU傳輸結(jié)束;CPU_DATA用來在MAC芯片與CPU之間傳輸數(shù)據(jù)。
參考圖6所示的A2511讀操作時序,對于CPU讀操作,CPU_Rdy_N信號低電平有效表示MAC芯片已將數(shù)據(jù)送到數(shù)據(jù)總線上,可以被CPU安全讀取;參考圖7所示的A2511寫操作時序,對于CPU寫操作,CPU_Rdy_N信號有效表示MAC芯片已經(jīng)接收到CPU發(fā)來的數(shù)據(jù),并寫到相應(yīng)的MAC芯片內(nèi)部寄存器中。
MAC芯片中的寄存器都是32位,采用16位訪問模式,每個寄存器需要發(fā)起兩次CPU訪問周期才能完成。通常在寫操作時,前16位需要4個CPU時鐘周期,而后16位的寫操作大概需要14個時鐘周期;對于讀操作,所需要的CPU訪問時間正好相反,前16位訪問需要14個周期,而后16位只需要4個時鐘周期便能完成。訪問操作的時長除了與CPU時鐘頻率有關(guān)外,還與訪問的寄存器類型有關(guān),譬如訪問MDIO(Management Data Input Output,管理數(shù)據(jù)輸入輸出)寄存器,訪問時間將會非常長,最長的情況是當(dāng)MAC芯片工作在10Mbps(兆位每秒)模式下完成一次MDIO寄存器的讀寫需要2μs(微秒),如果CPU時鐘頻率為33MHz,則將近67個時鐘周期才能完成一次讀寫。
另外對于MAC芯片A2511,CPU等待的時間上限是256個時鐘周期,如果訪問了一個非法的寄存器地址,256個時鐘周期后CPU_RDY_N信號仍為無效狀態(tài),MAC芯片的內(nèi)部計數(shù)器會溢出,所以需要作相應(yīng)出錯處理。
本應(yīng)用示例中通過LPC的FWH(Firmware Hub,固件集線器)訪問周期實現(xiàn)對MAC芯片的訪問,F(xiàn)WH訪問周期為每次訪問的數(shù)據(jù)長度為2個字節(jié)的固件訪問周期,其讀操作時序、寫操作時序分別如圖1和圖2所示,其中M的值為2。進(jìn)行訪問周期轉(zhuǎn)換的接口轉(zhuǎn)換裝置采用CPLD實現(xiàn),其總線連接方式參見圖8,其中LPC接口連接LPC總線,MAC接口連接MAC芯片A2511,接口轉(zhuǎn)換裝置中的訪問時序控制模塊由State Machine(狀態(tài)機(jī))實現(xiàn)。
圖9為接口轉(zhuǎn)換裝置的狀態(tài)機(jī)轉(zhuǎn)換示意圖,其狀態(tài)對應(yīng)于LPC的讀寫操作時鐘域,其中TAR和TAR1分別對應(yīng)于第一次和第二次TAR時鐘域;WRITE和WRITE1分別對應(yīng)于寫操作的DATA時鐘域中第一字節(jié)和第二字節(jié)的寫操作;READ和READ1分別對應(yīng)于讀操作的DATA時鐘域中第一字節(jié)和第二字節(jié)的讀操作。
主設(shè)備在LPC總線上發(fā)起讀寫周期,CPLD將LPC四位總線傳輸?shù)臄?shù)據(jù)解碼,產(chǎn)生讀寫控制信號,其中地址和數(shù)據(jù)存到臨時寄存器中,組合成32位或28位尋址地址和8位或16位數(shù)據(jù),并根據(jù)訪問地址產(chǎn)生相應(yīng)設(shè)備片選,然后將地址、數(shù)據(jù)和控制信號從臨時寄存器驅(qū)動到Local Bus總線上。
主設(shè)備發(fā)起FWH周期訪問,在時鐘上升沿檢測到LFRAME_N為低電平時表示訪問開始。在LFRAME_N有效的最后一個時鐘周期發(fā)送START幀,發(fā)送1101b表示讀操作,1110b表示寫操作。狀態(tài)機(jī)轉(zhuǎn)到IDSEL狀態(tài),判斷讀操作或?qū)懖僮?。ADDR狀態(tài)需要7個時鐘周期完成28位MAC接口的地址發(fā)送,先從最高有效半字節(jié)開始傳輸。由于MAC芯片A2511的地址總線只有24根,所以不足的高4位補(bǔ)零。
對寫操作,狀態(tài)機(jī)轉(zhuǎn)到WRITE、WRITE1,每個WRITE狀態(tài)完成2個半字節(jié)的寫操作,共16位數(shù)據(jù),先傳輸?shù)退奈?。兩個WRTIE狀態(tài)后數(shù)據(jù)已經(jīng)送到CPLD內(nèi)部臨時寄存器中,并驅(qū)動到MAC接口的數(shù)據(jù)總線上;此時,MAC接口的片選CPU_CS_N和讀寫信號CPU_READ并未有效,所以數(shù)據(jù)還未寫到MAC芯片的內(nèi)部寄存器中。此時轉(zhuǎn)到TAR狀態(tài),主設(shè)備在LPC四位總線LAD[3:0]上驅(qū)動1111b,下一個周期TAR1將總線控制權(quán)交給CPLD,產(chǎn)生片選CPU_CS_N和CPU_READ的低電平寫有效信號。狀態(tài)機(jī)順序到達(dá)SYNC,CPLD判斷MAC接口的CPU_RDY_N信號,并不斷向主設(shè)備發(fā)送長等待信息0110b,直到MAC芯片將數(shù)據(jù)寫入內(nèi)部寄存器并驅(qū)動CPU_RDY_N有效。此時CPLD結(jié)束長等待狀態(tài),將MAC接口的片選和寫信號置為無效。當(dāng)LPC總線處于SYNC狀態(tài)時CPLD同時啟動計數(shù)器,每個時鐘周期累積一次,如果計數(shù)器到256還未檢測到有效的CPU_RDY_N信號,則向LPC總線發(fā)送1010b的錯誤信息,同時結(jié)束FWH訪問周期。
對讀操作,在ADDR狀態(tài)后轉(zhuǎn)入TAR。同樣主設(shè)備在LPC_LAD[3:0]上驅(qū)動1111b,下一個周期TAR1總線控制權(quán)交給從設(shè)備CPLD,CPLD產(chǎn)生片選CPU_CS_N和CPU_READ的高電平讀有效信號。在SYNC狀態(tài)CPLD檢測MAC接口的CPU_RDY_N信號,不斷向主設(shè)備發(fā)送長等待信息0110b,直到CPU_RDY_N有效,數(shù)據(jù)已經(jīng)送到MAC接口的16位數(shù)據(jù)總線上并存入CPLD的臨時寄存器中。在READ狀態(tài),CPLD將從MAC接口讀到的低八位數(shù)據(jù)從臨時寄存器分兩個時鐘周期送到LPC總線,READ1狀態(tài),傳輸高八位數(shù)據(jù)。讀操作同樣啟動計數(shù)器,計數(shù)256個時鐘周期,防止主設(shè)備長時間一直處于等待狀態(tài),沒有得到響應(yīng)而掛死。
將LPC總線時序轉(zhuǎn)換成MAC芯片的CPU接口訪問時序可以由glue logic(膠合邏輯)實現(xiàn),需要占用宏單元約300個,I/O口約60個左右,可選用Xilinx XCR3512XL-10,Lattic LC4512V-75F256C或其它型號CPLD。
對于需要具有Ready信號表示訪問結(jié)束的外圍設(shè)備,本發(fā)明通過長等待狀態(tài)實現(xiàn)了到LPC接口總線時序轉(zhuǎn)換的解決方案,對于訪問時長不固定的外圍設(shè)備能夠有效提高訪問效率。由于一般較復(fù)雜單板都會在設(shè)計時加一片可編程器件CPLD,本發(fā)明可以在其中的glue logic里再加入時序轉(zhuǎn)換,邏輯設(shè)計靈活簡單,附加成本低。
以上所述的本發(fā)明實施方式,并不構(gòu)成對本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的權(quán)利要求保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種外圍設(shè)備的低管腳數(shù)LPC總線接口時序轉(zhuǎn)換方法,其特征在于,包括以下步驟在外圍設(shè)備執(zhí)行訪問操作時將LPC總線保持為長等待狀態(tài);在外圍設(shè)備完成訪問操作后,結(jié)束長等待狀態(tài),驅(qū)動LPC總線進(jìn)行下一個時鐘域的操作。
2.如權(quán)利要求1所述外圍設(shè)備的LPC總線接口時序轉(zhuǎn)換方法,其特征在于,所述方法還包括當(dāng)長等待狀態(tài)的持續(xù)時間超過預(yù)定閾值時,結(jié)束長等待狀態(tài)同時向LPC總線發(fā)送錯誤信息。
3.如權(quán)利要求2所述外圍設(shè)備的LPC總線接口時序轉(zhuǎn)換方法,其特征在于所述長等待狀態(tài)的持續(xù)時間通過統(tǒng)計長等待狀態(tài)經(jīng)過的時鐘周期得到。
4.如權(quán)利要求1至3任意一項所述外圍設(shè)備的LPC總線接口時序轉(zhuǎn)換方法,其特征在于,所述外圍設(shè)備完成訪問操作具體為外圍設(shè)備輸出表示訪問完成的指示。
5.如權(quán)利要求1至3任意一項所述外圍設(shè)備的LPC總線接口時序轉(zhuǎn)換方法,其特征在于,所述方法在外圍設(shè)備執(zhí)行訪問前還包括獲得LPC總線控制權(quán)。
6.一種將外圍設(shè)備接入LPC總線的接口轉(zhuǎn)換裝置,其特征在于,包括LPC接口、外設(shè)接口和訪問時序控制模塊,其中LPC接口和外設(shè)接口分別用來連接LPC總線和外圍設(shè)備;訪問時序控制模塊用來根據(jù)LPC總線的訪問時序進(jìn)行外圍設(shè)備的訪問操作,包括在通過外設(shè)接口輸出訪問操作指令后通過LPC接口輸出長等待狀態(tài),以及在從外設(shè)接口接收到訪問操作完成指示后結(jié)束長等待狀態(tài)。
7.如權(quán)利要求6所述將外圍設(shè)備接入LPC總線的接口轉(zhuǎn)換裝置,其特征在于所述LPC總線包括LPC時鐘信號;訪問時序控制模塊根據(jù)LPC時鐘信號統(tǒng)計長等待狀態(tài)的持續(xù)時間,在持續(xù)時間超過預(yù)定閾值時通過LPC接口輸出訪問錯誤信息并結(jié)束長等待狀態(tài)。
8.如權(quán)利要求6或7所述將外圍設(shè)備接入LPC總線的接口轉(zhuǎn)換裝置,其特征在于所述接口轉(zhuǎn)換裝置為復(fù)雜可編程邏輯設(shè)備CPLD或現(xiàn)場可編程門陣列FPGA。
9.一種采用LPC總線的輸入輸出I/O系統(tǒng),包括處理單元和外圍設(shè)備,其特征在于還包括接口轉(zhuǎn)換裝置,通過LPC總線連接處理單元并且連接外圍設(shè)備,用來將處理單元發(fā)起的LPC訪問周期轉(zhuǎn)換為外圍設(shè)備的訪問周期,其中LPC訪問周期中的等待SYNC時鐘域通過長等待狀態(tài)實現(xiàn),在接收到外圍設(shè)備訪問操作結(jié)果時結(jié)束SYNC時鐘域。
10.如權(quán)利要求9所述采用LPC總線的I/O系統(tǒng),其特征在于所述接口轉(zhuǎn)換裝置通過與LPC相異的總線與外圍設(shè)備連接。
全文摘要
本發(fā)明公開了一種外圍設(shè)備的LPC總線接口時序轉(zhuǎn)換方法,包括在外圍設(shè)備執(zhí)行訪問操作時將LPC總線保持為長等待狀態(tài);在外圍設(shè)備完成訪問操作后,結(jié)束長等待狀態(tài),驅(qū)動LPC總線進(jìn)行下一個時鐘域的操作。本發(fā)明使每次的等待時長正好符合外圍設(shè)備的訪問時長,提高了對外圍設(shè)備的訪問效率,同時能夠避免外圍設(shè)備的訪問操作錯誤時長時間占用總線。本發(fā)明可以在CPLD中的glue logic中實現(xiàn),邏輯設(shè)計靈活簡單,附加成本低。
文檔編號G06F13/20GK1818893SQ20061006483
公開日2006年8月16日 申請日期2006年3月14日 優(yōu)先權(quán)日2006年3月14日
發(fā)明者陳軍 申請人:杭州華為三康技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1