專利名稱:Cpu接口轉換系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及通信領域,尤其涉及一種CPU ^妻口轉換系統(tǒng)。
背景技術:
隨著數(shù)據(jù)通信技術的發(fā)展,特別是高帶寬高速度的數(shù)據(jù)通信技 術的出現(xiàn),在數(shù)據(jù)通信芯片設計上,大規(guī)模,高速度,高復雜度的 數(shù)據(jù)通信芯片設計層出不窮,由于芯片門類眾多,其接口多種多樣, 對于芯片的接口交互提出了很多的問題。特別是大規(guī)模的芯片,其 完成的邏輯功能既多又復雜,這樣一來就得-沒計出相應的4妻口轉換
FPGA ( Field Programmable Gate Array, 5見場可編禾呈門陣列, 一種可 編程的芯片)裝置來對芯片進4亍通信中介。而本發(fā)明中所涉及的裝 置是專門用來溝通芯片的CPU( Central processing unit,中央處理器)
接口 。
目前用于CPU接口轉換FPGA裝置的專利是基于一些特殊的 接口協(xié)議的。例如,已知一種專門實現(xiàn)由PS2接口協(xié)議與SPI接口 協(xié)議的轉換的方法,并且須另配置一個輔助芯片。又例如已知一種 技術,該技術是一個SDIO的總線控制器設計,是專門為這樣的 SDIO轉換到ATA +辦議或者其它CPU接口的裝置設計方法。而本發(fā) 明是一個通用的方法與裝置。
發(fā)明內(nèi)容
鑒于以上所述的一個或多個問題,本發(fā)明提出了一種CPU接口 轉換系統(tǒng),可以解決多芯片的CPU接口無法通訊問題。
根據(jù)本發(fā)明的CPU接口轉換系統(tǒng)包括主芯片102,用于將對 從芯片進行操作的請求發(fā)送給轉換模塊,其中,請求是寫請求或讀 請求,在請求是寫請求的情況下,還將用于寫入從芯片的第一數(shù)據(jù) 發(fā)送到轉換模塊;轉換模塊104,轉換模塊為現(xiàn)場可編程門陣列, 用于進行主芯片和從芯片之間的時域轉換,將來自主芯片的i青求和 第一數(shù)據(jù)轉換為適合于從芯片的格式并將轉換后的請求和第 一數(shù)據(jù) 發(fā)送給從芯片,以及用于將從從芯片讀出的第二凄大據(jù)轉換為適合于 主芯片的格式并將轉換后的第二數(shù)據(jù)發(fā)送給主芯片;以及從芯片 106,用于在請求是寫請求的情況下,寫入所接收到的第一數(shù)據(jù),以 及用于在請求是讀請求的情況下,讀出其上的第二數(shù)據(jù)并將第二數(shù) 據(jù)發(fā)送給轉換模塊。
其中,請求包括命令和地址。轉換才莫塊104包括主芯片寄存 器202,用于接收并存儲來自主芯片的命令、地址、第一數(shù)據(jù)、及 來自數(shù)據(jù)轉換模塊的轉換后的第二數(shù)據(jù),用于將命令發(fā)送給命令寄 存器,將地址發(fā)送給地址寄存器,將第一數(shù)據(jù)發(fā)送給數(shù)據(jù)轉換模塊, 以及用于將來自數(shù)據(jù)轉換模塊的轉換后的第二數(shù)據(jù)發(fā)送給主芯片, 還用于進4亍時域轉換;地址寄存器204,用于存4諸來自主芯片寄存 器的地址,并將地址發(fā)送給從芯片寄存器;命令寄存器206,用于 存儲來自主芯片寄存器的命令;數(shù)據(jù)轉換^^莫塊208,用于對來自主 芯片寄存器的第 一數(shù)據(jù)進行位寬轉換以將第一數(shù)據(jù)轉換為適合于從 芯片的格式,并將轉換后的第一數(shù)據(jù)發(fā)送給從芯片寄存器,以及用 于將來自從芯片寄存器的第二數(shù)據(jù)進行位寬轉換以將第二數(shù)據(jù)轉換 為適合于主芯片的格式,并將轉換后的第二數(shù)據(jù)發(fā)送給主芯片寄存 器;以及從芯片寄存器210,用于接收并緩存來自主芯片寄存器的地址和從從芯片的讀出的第二凄史據(jù),將第二數(shù)據(jù)發(fā)送給凄大據(jù)轉換才莫 塊,用于將地址發(fā)送紹^人芯片,以及用于進4亍時域轉換。
其中,數(shù)據(jù)轉換模塊208包括第一數(shù)據(jù)寄存器208-2,用于接 收來自主芯片寄存器的第一數(shù)據(jù)并將其發(fā)送給第一位寬轉換裝置; 第一位寬轉換裝置208-4,用于對來自第一數(shù)據(jù)寄存器的第一數(shù)據(jù) 進行位寬轉換以將第一數(shù)據(jù)轉換為適合于從芯片的格式,并將轉換 后的第一數(shù)據(jù)發(fā)送給從芯片寄存器;第二數(shù)據(jù)寄存器208-6,用于 接收來自從芯片寄存器的第二數(shù)據(jù)并將其發(fā)送給第二位寬轉換裝 置;以及第二位寬轉換裝置208-4,用于對來自第二數(shù)據(jù)寄存器的 第二數(shù)據(jù)進行位寬轉換以將第二數(shù)據(jù)轉換為適合于主芯片的^#式, 并將轉換后的第二數(shù)據(jù)發(fā)送給主芯片寄存器。
其中,在執(zhí)行命令之后清空命令寄存器。通過狀態(tài)機來監(jiān)視轉 換才莫塊的以下至少一種#:作狀態(tài)空閑狀態(tài)、寫地址狀態(tài)、寫tt據(jù) 狀態(tài)、寫命令狀態(tài)、及讀數(shù)據(jù)狀態(tài)。
通過本發(fā)明,引入了間接尋址的FPGA寄存器處理方式,使得 主從芯片無論是使用哪種CPU總線才莫式通信,都可以采用這一方案 來進行總線設計。是一種通用的設計方法,使得4反上設計難度大大 降低,減小芯片選型的難度。取得了基于FPGA的CPU接口轉換裝 置對于板級設計效率上的提高,可以拓寬芯片的選型面,節(jié)省了板 級邏輯設計的時間,解決了一些芯片CPU接口對接困難的問題,減 少了系統(tǒng)的軟硬件設計難度,提高了系統(tǒng)整體設計效率等等。
此處所說明的附圖用來才是供對本發(fā)明的進一步理解,構成本申 請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并 不構成對本發(fā)明的不當限定。在附圖中
圖1是根據(jù)本發(fā)明的實施例的CPU接口轉換系統(tǒng)的框圖2是根據(jù)本發(fā)明的實施例的FPGA寄存器(轉換模塊)的結 構的才匡圖3是根據(jù)本發(fā)明的實施例的CPU接口轉換系統(tǒng)進行讀操作的 流程圖4是根據(jù)本發(fā)明的實施例的CPU接口轉換系統(tǒng)進行寫操作的 流禾呈圖;以及
圖5是根據(jù)本發(fā)明的實施例的狀態(tài)轉移的示意圖。
具體實施例方式
下面參考附圖,詳細說明本發(fā)明的具體實施方式
。
圖1是根據(jù)本發(fā)明的實施例的CPU接口轉換系統(tǒng)的框圖。如圖 1所示,該系統(tǒng)包4舌
主芯片102,它主要是網(wǎng)絡處理器或者相關的CPU,由它主動 的發(fā)出讀寫其它芯片的請求。具體地,主芯片用于將對,人芯片進行 操作的請求發(fā)送給轉換模塊,其中,請求是寫請求或讀請求,在請 求是寫請求的情況下,還將用于寫入從芯片的第一數(shù)據(jù)發(fā)送到轉換模塊。
FPGA轉換模塊(轉換模塊)104,它是主芯片與從芯片溝通的 橋梁,把主芯片A發(fā)起的讀寫申請轉化為從芯片需要的格式,以及 進行時域的轉換。具體地,轉換才莫塊為現(xiàn)場可編程門陣列,用于進 行主芯片和從芯片之間的時域轉換,將來自主芯片的請求和第 一數(shù) 據(jù)轉換為適合于從芯片的格式并將轉換后的請求和第 一數(shù)據(jù)發(fā)送給
從芯片,以及用于將從從芯片讀出的第二數(shù)據(jù)轉換為適合于主芯片 的格式并將轉換后的第二數(shù)據(jù)發(fā)送給主芯片。
從芯片106,它是另一種處理器或者是轉發(fā)芯片,它被動的接 收主芯片的請求并作出相應的反映,主從芯片的接口類型不一定相 同,其運行的時鐘頻率也不一樣。從芯片,用于在請求是寫請求的 情況下,寫入所接收到的第一數(shù)據(jù),以及用于在請求是讀請求的情 況下,讀出其上的第二數(shù)據(jù)并將第二數(shù)據(jù)發(fā)送給轉換模塊。
圖2是根據(jù)本發(fā)明的實施例的FPGA轉換模塊(轉換模塊)的 結構的框圖。如圖2所示,轉換模塊104包括
主芯片寄存器202,用于接收并存儲來自主芯片的命令、地址、 第一數(shù)據(jù)、及來自數(shù)據(jù)轉換模塊的轉換后的第二數(shù)據(jù),用于將命令 發(fā)送給命令寄存器,將地址發(fā)送給地址寄存器,將第一數(shù)據(jù)發(fā)送給 數(shù)據(jù)轉換模塊,以及用于將來自數(shù)據(jù)轉換模塊的轉換后的第二數(shù)據(jù) 發(fā)送給主芯片,同時用來隔離時域。
地址寄存器204,用于存儲來自主芯片寄存器的地址,并將地 址發(fā)送給從芯片寄存器。
命令寄存器206,用于存儲來自主芯片寄存器的命令,指令一 經(jīng)FPGA沖丸4亍即,皮清空。
數(shù)據(jù)轉換模塊208,用于對來自主芯片寄存器的第一數(shù)據(jù)進行位 寬轉換以將第一數(shù)據(jù)轉換為適合于從芯片的格式,并將轉換后的第 一數(shù)據(jù)發(fā)送給從芯片寄存器,以及用于將來自從芯片寄存器的第二 數(shù)據(jù)進行位寬轉換以將第二數(shù)據(jù)轉換為適合于主芯片的格式,并將 轉換后的第二數(shù)據(jù)發(fā)送給主芯片寄存器。
從芯片寄存器210,用于接收并緩存來自主芯片寄存器的地址 和從從芯片的讀出的第二數(shù)據(jù),將第二數(shù)據(jù)發(fā)送給數(shù)據(jù)轉換模塊, 用于將地址發(fā)送給從芯片,以及用于隔離時域。
其中,數(shù)據(jù)轉換沖莫塊208包括
第一數(shù)據(jù)寄存器208-2,用于存儲來自主芯片寄存器的第一數(shù) 據(jù)并將其發(fā)送給第一位寬轉換裝置。
第一位寬轉換裝置208-4,用于對來自第一數(shù)據(jù)寄存器的第一 數(shù)據(jù)進行位寬轉換以將所述第一數(shù)據(jù)轉換為適合于從芯片的4各式并 將轉換后的第一數(shù)據(jù)發(fā)送給從芯片寄存器。
第二數(shù)據(jù)寄存器208-6,用于存儲來自從芯片寄存器的第二數(shù) 據(jù)并將其發(fā)送給第二位寬轉換裝置。
第二位寬轉換裝置208-8,用于對來自第二凄t據(jù)寄存器的第二 數(shù)據(jù)進行位寬轉換以將所述第二數(shù)據(jù)轉換為適合于主芯片的才各式并 將轉換后的第二數(shù)據(jù)發(fā)送給主芯片寄存器。
圖3是根據(jù)本發(fā)明的實施例的CPU接口轉換系統(tǒng)進行讀操作的 流程圖。如圖3所示,CPU接口轉換裝置進行讀操作包括以下步驟
步驟S302,由用戶從主芯片配置讀i青求,主芯片發(fā)讀請求全合轉 換模塊,即把讀地址送給轉換^^莫塊然后寫讀命令到轉換^^莫塊的命令 寄存器。
步驟S304,由轉換模塊將主芯片的請求轉存到寄存器中,然后 變換給乂人芯片。
步驟S306,從芯片按照轉換模塊給的請求執(zhí)行,執(zhí)行完成后把 轉換模塊中的命令寄存器清空,把讀出來的數(shù)據(jù)反饋回轉換模塊。
步驟S308,主芯片在發(fā)出讀請求之后按照協(xié)議規(guī)定的等待時間 之后從轉換模塊的數(shù)據(jù)寄存器中讀取從芯片反饋回來的數(shù)據(jù)。
圖4是根據(jù)本發(fā)明的實施例的CPU接口轉換系統(tǒng)進行寫操作的 流程圖。如圖4所示,CPU接口轉換裝置進行寫操作包括以下步驟
步驟S402,由用戶從主芯片配置寫請求,主芯片發(fā)寫請求給轉 換模塊,即把寫地址送給轉換模塊然后寫寫命令到轉換模塊的命令
寄存器。
步驟S404,由轉換模塊將主芯片的請求轉存到寄存器中,然后 變換給從芯片。
步驟S406,從芯片按照轉換模塊給的請求執(zhí)行寫命令,執(zhí)行完 畢之后把轉換模塊中的命令寄存器清空。
圖5是4艮據(jù)本發(fā)明的實施例的狀態(tài)轉移的示意圖。如圖5所示, 為根據(jù)本發(fā)明的實施例的狀態(tài)機。
空閑A1狀態(tài)這是狀態(tài)才幾空閑狀態(tài),不估文操作。
寫地址Bl狀態(tài)狀態(tài)機的寫FPGA地址狀態(tài),這時FPGA接 收主芯片來的讀寫數(shù)據(jù)的地址信號。
寫數(shù)據(jù)Cl狀態(tài)狀態(tài)機的寫FPGA數(shù)據(jù)寄存器狀態(tài),這時FPGA 接收主芯片來的寫數(shù)據(jù)。 寫命令D1狀態(tài)狀態(tài)機的寫FEGA命令寄存器狀態(tài),這時FPGA 接收主芯片的讀寫命令。 -接收到此命令之后FPGA就對從芯片執(zhí)行 相應的讀寫操作了。
讀數(shù)據(jù)El狀態(tài)這個是FPGA把從芯片送來的數(shù)據(jù)存進自己 的寄存器待主芯片讀取的狀態(tài)。
通過本發(fā)明,引入了間4妄尋址的FPGA寄存器處理方式,使得 主從芯片無論是使用哪種CPU總線才莫式通信,都可以采用這一方案 來進行總線設計。是一種通用的設計方法,使得板上設計難度大大 降低,減小芯片選型的難度。取得了基于FPGA的CPU接口轉換裝 置對于板級設計效率上的^是高,可以拓寬芯片的選型面,節(jié)省了板 級邏輯設計的時間,解決了一些芯片CPU接口對接困難的問題,減 少了系統(tǒng)的軟硬件設計難度,提高了系統(tǒng)整體設計效率等等。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明, 對于本4貞i或的4支術人員來i兌,本發(fā)明可以有名、種更改和變4匕。凡在 本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等, 均應包含在本發(fā)明的保護范圍之內(nèi)。
權利要求
1.一種CPU接口轉換系統(tǒng),其特征在于,所述系統(tǒng)包括主芯片,用于將對從芯片進行操作的請求發(fā)送給轉換模塊,其中,所述請求是寫請求或讀請求,在所述請求是所述寫請求的情況下,還將用于寫入從芯片的第一數(shù)據(jù)發(fā)送到所述轉換模塊;所述轉換模塊,所述轉換模塊為現(xiàn)場可編程門陣列,用于進行主芯片和從芯片之間的時域轉換,將來自所述主芯片的所述請求和所述第一數(shù)據(jù)轉換為適合于從芯片的格式并將轉換后的請求和第一數(shù)據(jù)發(fā)送給所述從芯片,以及用于將從所述從芯片讀出的第二數(shù)據(jù)轉換為適合于所述主芯片的格式并將轉換后的第二數(shù)據(jù)發(fā)送給所述主芯片;以及所述從芯片,用于在所述請求是所述寫請求的情況下,寫入所接收到的第一數(shù)據(jù),以及用于在所述請求是所述讀請求的情況下,讀出其上的所述第二數(shù)據(jù)并將所述第二數(shù)據(jù)發(fā)送給所述轉換模塊。
2. 根據(jù)權利要求1所述的CPU接口轉換系統(tǒng),其特征在于,所 述i青求包4舌命令和i也址。
3. 根據(jù)權利要求2所述的CPU接口轉換系統(tǒng),其特征在于,所 述轉換模塊包括主芯片寄存器,用于接收并存儲來自所述主芯片的所述命 令、所述地址、所述第一數(shù)據(jù)、及來自數(shù)據(jù)轉換模塊的所述轉 換后的第二數(shù)據(jù),用于將所述命令發(fā)送給命令寄存器,將所述 地址發(fā)送給地址寄存器,將所述第一數(shù)據(jù)發(fā)送給所述數(shù)據(jù)轉換模塊,以及用于將來自數(shù)據(jù)轉換才莫塊的所述轉換后的第二數(shù)據(jù)發(fā)送給所述主芯片,還用于進行時域轉換;所述地址寄存器,用于存儲來自所述主芯片寄存器的所述 地址,并將所述地址發(fā)送給乂人芯片寄存器;所述命令寄存器,用于存儲來自所述主芯片寄存器的所述 命令;數(shù)據(jù)轉換模塊,用于對來自所述主芯片寄存器的所述第一 數(shù)據(jù)進行位寬轉換以將所述第 一 數(shù)據(jù)轉換為適合于所述從芯 片的格式,并將所述轉換后的第一數(shù)據(jù)發(fā)送給從所述芯片寄存 器,以及用于將來自所述從芯片寄存器的所述第二數(shù)據(jù)進行位 寬轉換以將所述第二數(shù)據(jù)轉換為適合于所述主芯片的格式,并 將所述轉換后的第二數(shù)據(jù)發(fā)送給所述主芯片寄存器;以及所述從芯片寄存器,用于接收并緩存來自所述主芯片寄存 器的所述地址和從所述從芯片的讀出的所述第二數(shù)據(jù),將所述 第二數(shù)據(jù)發(fā)送給所述數(shù)據(jù)轉換模塊,用于將所述地址發(fā)送給所 述從芯片,以及用于進行時域轉換。
4. 根據(jù)權利要求3所述的CPU接口轉換系統(tǒng),其特征在于,所 述數(shù)據(jù)轉換模塊包括第一數(shù)據(jù)寄存器,用于接收來自所述主芯片寄存器的所述 第 一數(shù)據(jù)并將其發(fā)送給第 一位寬轉換裝置;所述第一位寬轉換裝置,用于對來自所述第一凄t據(jù)寄存器 的所述第 一 數(shù)據(jù)進行位寬轉換以將所述第 一 數(shù)據(jù)轉換為適合 于所述從芯片的才各式,并將所述轉換后的第一數(shù)據(jù)發(fā)送給/人所 述芯片寄存器;第二數(shù)據(jù)寄存器,用于接收來自所述從芯片寄存器的所述 第二數(shù)據(jù)并將其發(fā)送給第二位寬轉換裝置;以及 所述第二位寬轉換裝置,用于對來自所述第二數(shù)據(jù)寄存器 的所述第二數(shù)據(jù)進行位寬轉換以將所述第二數(shù)據(jù)轉換為適合 于所述主芯片的格式,并將轉換后的第二數(shù)據(jù)發(fā)送給所述主芯片寄存器。
5. 根據(jù)權利要求1至4中任一項所述的CPU接口轉換系統(tǒng),其 特征在于,在執(zhí)行所述命令之后清空所述命令寄存器。
6. 根據(jù)權利要求1至4中任一項所述的CPU接口轉換系統(tǒng),其 特征在于,通過狀態(tài)才幾來監(jiān)一見所述轉換才莫塊的以下至少一種操 作狀態(tài)空閑狀態(tài)、寫地址狀態(tài)、寫^t據(jù)狀態(tài)、寫命令狀態(tài)、 及讀數(shù)據(jù)狀態(tài)。
全文摘要
本發(fā)明提出了CPU接口轉換系統(tǒng),該系統(tǒng)包括主芯片,用于將對從芯片進行操作的請求發(fā)送給轉換模塊,其中,請求是寫請求或讀請求,在請求是寫請求的情況下,還將用于寫入從芯片的第一數(shù)據(jù)發(fā)送到轉換模塊;轉換模塊,轉換模塊為現(xiàn)場可編程門陣列,用于進行主芯片和從芯片之間的時域轉換,將來自主芯片的請求和第一數(shù)據(jù)轉換為適合于從芯片的格式并將轉換后的請求和第一數(shù)據(jù)發(fā)送給從芯片,以及用于將從從芯片讀出的第二數(shù)據(jù)轉換為適合于主芯片的格式并將轉換后的第二數(shù)據(jù)發(fā)送給主芯片;以及從芯片,用于在請求是寫請求的情況下,寫入所接收到的第一數(shù)據(jù),以及用于在請求是讀請求的情況下,讀出其上的第二數(shù)據(jù)并將第二數(shù)據(jù)發(fā)送給轉換模塊。
文檔編號G06F13/38GK101169770SQ20071016736
公開日2008年4月30日 申請日期2007年11月26日 優(yōu)先權日2007年11月26日
發(fā)明者劉一遠 申請人:中興通訊股份有限公司