電路部分的第二主功能模塊;第一電路部分發(fā)出數(shù)據(jù)信號(hào),數(shù)據(jù)信號(hào)依次經(jīng)過第一數(shù)據(jù)緩沖器、數(shù)據(jù)復(fù)用模塊、第三數(shù)據(jù)緩沖器,第二電路部分的第二主功能模塊根據(jù)用戶總線控制器發(fā)出的地址和控制信號(hào)將第三數(shù)據(jù)緩沖器的數(shù)據(jù)寫入到第二電路部分的第二主功能模塊相應(yīng)地址。
[0031]優(yōu)選地,所述第二電路部分的第二主功能模塊經(jīng)由第二電路部分的第二互連接口控制器訪問外部存儲(chǔ)器包括:在讀操作中,第一電路部分發(fā)出地址和控制信號(hào)給譯碼器和旁路開關(guān)陣列,譯碼器對(duì)地址和控制信號(hào)進(jìn)行譯碼,解析出第一電路部分發(fā)出的指令為第二電路部分的第二主功能模塊對(duì)外部存儲(chǔ)器的讀操作,旁路開關(guān)陣列打開,同時(shí)地址和控制信號(hào)經(jīng)譯碼器譯碼后由用戶總線控制器發(fā)出地址和控制信號(hào)給第二電路部分的第二主功能模塊;外部存儲(chǔ)器根據(jù)接收到的地址和控制信號(hào)后,外部存儲(chǔ)器的相應(yīng)數(shù)據(jù)信號(hào)依次提供給第二數(shù)據(jù)緩沖器、數(shù)據(jù)復(fù)用模塊選擇、第三數(shù)據(jù)緩沖器,第二電路部分的第二主功能模塊讀取第三數(shù)據(jù)緩沖器緩存的數(shù)據(jù);在寫操作中,第一電路部分發(fā)出地址和控制信號(hào)給譯碼器和旁路開關(guān)陣列,譯碼器對(duì)地址和控制信號(hào)進(jìn)行譯碼,解析出第一電路部分發(fā)出的指令為第二電路部分的第二主功能模塊對(duì)外部存儲(chǔ)器的寫操作,旁路開關(guān)陣列打開,同時(shí)地址和控制信號(hào)經(jīng)譯碼器譯碼后由用戶總線控制器發(fā)出地址和控制信號(hào)給第二電路部分的第二主功能模塊;第二電路部分的第二主功能模塊根據(jù)用戶總線發(fā)出的地址和控制信號(hào)將數(shù)據(jù)依次提供給第三數(shù)據(jù)緩沖器、數(shù)據(jù)復(fù)用模塊、第二數(shù)據(jù)緩沖器,從而將第二電路部分的第二主功能模塊的數(shù)據(jù)寫入外部存儲(chǔ)器相應(yīng)地址。
[0032]根據(jù)本發(fā)明的片上系統(tǒng),其劃分準(zhǔn)則不再局限于設(shè)計(jì)過程中數(shù)字和模擬的劃分,轉(zhuǎn)而綜合考慮產(chǎn)品級(jí)的需求,將系統(tǒng)分為基礎(chǔ)部分和專用部分,具有明顯的去相關(guān)性特性,即基礎(chǔ)部分和專用部分可以獨(dú)立工作;同時(shí)基礎(chǔ)部分可以通用在多個(gè)產(chǎn)品系列,專用部分可以擁有獨(dú)立工作的能力,也可以作為基礎(chǔ)部分的補(bǔ)充應(yīng)用于某些專用場(chǎng)合,擺脫了傳統(tǒng)SOC系統(tǒng)的龐大、累贅、系統(tǒng)成本高、工藝升級(jí)昂貴,不具備經(jīng)濟(jì)適用的通用特性。另外,本發(fā)明還能使系統(tǒng)擁有SOC部分和ASIC/ASSP部分豐富的不同組合,讓系統(tǒng)產(chǎn)品更加豐富。
【附圖說明】
[0033]通過以下參照附圖對(duì)本發(fā)明實(shí)施例的描述,本發(fā)明的上述以及其他目的、特征和優(yōu)點(diǎn)將更為清楚,在附圖中:
[0034]圖1示出根據(jù)現(xiàn)有技術(shù)的片上系統(tǒng)及其外部存儲(chǔ)器的示意性框圖;
[0035]圖2示出根據(jù)本發(fā)明的片上系統(tǒng)及其外部存儲(chǔ)器的示意性框圖;
[0036]圖3a和3b分別示出根據(jù)本發(fā)明的片上系統(tǒng)兩個(gè)部分的示意性框圖;
[0037]圖4a和4b分別示出根據(jù)本發(fā)明的片上系統(tǒng)兩個(gè)部分的互連接口控制器的第一實(shí)施例的示意性框圖;
[0038]圖5a和5b分別示出根據(jù)本發(fā)明的片上系統(tǒng)兩個(gè)部分的互連接口控制器的第二實(shí)施例的示意性框圖;以及
[0039]圖6a和6b分別示出根據(jù)本發(fā)明的片上系統(tǒng)兩個(gè)部分的互連接口控制器的第三實(shí)施例的示意性框圖;以及
[0040]圖7示出根據(jù)本發(fā)明的實(shí)施例的片上系統(tǒng)的控制方法的流程圖。
【具體實(shí)施方式】
[0041]以下將參照附圖更詳細(xì)地描述本發(fā)明的各種實(shí)施例。在各個(gè)附圖中,相同的元件采用相同或類似的附圖標(biāo)記來表示。為了清楚起見,附圖中的各個(gè)部分沒有按比例繪制。
[0042]本發(fā)明可以各種形式呈現(xiàn),以下將描述其中一些示例。
[0043]圖2示出根據(jù)本發(fā)明的片上系統(tǒng)及其外部存儲(chǔ)器的示意性框圖。如圖所示,將SOC劃分為SOC-A和SOC-B兩個(gè)電路部分。SOC-A包括第一主功能模塊110和第一互連接口控制器150,SOC-B包括第二主功能模塊210和第二互連接口控制器230。
[0044]然而,與現(xiàn)有技術(shù)不同,SOC-A和SOC-B之間使用內(nèi)存總線連接。相應(yīng)地,第一互連接口控制器150和第二互連接口控制器230分別提供內(nèi)存接口。第二互連接口控制器230還提供用于連接外部存儲(chǔ)器300的內(nèi)存接口,從而不需要使用附加的存儲(chǔ)器控制器280。
[0045]作為一個(gè)優(yōu)選地實(shí)施例,SOC的兩個(gè)電路部分SOC-A和SOC-B共享同一外部存儲(chǔ)器300。外部存儲(chǔ)器300可以是同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器(SDRAM)。在進(jìn)一步優(yōu)選的實(shí)施例中,夕卜部存儲(chǔ)器300包括主存儲(chǔ)器和輔存儲(chǔ)器。輔存儲(chǔ)器是為了擴(kuò)展系統(tǒng)帶寬而附加的存儲(chǔ)器。
[0046]在上述優(yōu)選的實(shí)施例中,第一互連接口控制器150和第二互連接口控制器230分別提供SDRAM接口。由于片上系統(tǒng)的數(shù)據(jù)交互量較大,需要的傳輸帶寬較高,SDRAM接口可以滿足數(shù)據(jù)傳輸帶寬的需求。
[0047]在根據(jù)本發(fā)明的SOC中,由于SOC的兩部分SOC-A和SOC-B之間的互連兼容現(xiàn)有的內(nèi)存總線,因此兩部分的劃分不限于數(shù)字部分和邏輯部分,而是可以根據(jù)不同工藝/設(shè)計(jì)和市場(chǎng)定位的需求,任意地將SOC劃分為基礎(chǔ)部分SOC-A和專用部分S0C-B。
[0048]進(jìn)一步而言,SOC劃分成不同部分的基本準(zhǔn)則是依賴產(chǎn)品級(jí)的需求。SOC-A主要滿足產(chǎn)品級(jí)的基礎(chǔ)需求,例如可以包括各種通用處理器以及處理器系統(tǒng)所必須的一些功能模塊。另外,SOC-A還可以包括產(chǎn)品實(shí)現(xiàn)一些功能所依賴的部分部件,例如以支持處理器調(diào)試和工作的功能模塊如調(diào)試接口、中斷控制器、看門狗、定時(shí)器、串口、GP1等。SOC-B電路主要滿足產(chǎn)品級(jí)的專用需求,例如可以包括產(chǎn)品領(lǐng)域的專用電路部件ASIC或ASSP,比如CVBS視頻解碼器、ISP (影像信號(hào)處理器)、TOE (TCP卸載引擎)、USB接口芯片。
[0049]該SOC的兩部分SOC-A和SOC-B的物理實(shí)現(xiàn)可以是相同半導(dǎo)體管芯的不同區(qū)域和/或?qū)樱蛘呤欠庋b成一個(gè)半導(dǎo)體芯片的不同半導(dǎo)體管芯,或者是不同的半導(dǎo)體芯片。在相同半導(dǎo)體管芯中,位于不同區(qū)域和/或?qū)拥膬刹糠諷OC-A和SOC-B的物理連接可以經(jīng)由互連金屬實(shí)現(xiàn)。在一個(gè)半導(dǎo)體芯片內(nèi),位于不同半導(dǎo)體管芯中的兩部分SOC-A和SOC-B的物理連接可以經(jīng)由鍵合線或引線框?qū)崿F(xiàn)。位于不同半導(dǎo)體芯片中的SOC-A和SOC-B的物理連接可以經(jīng)由芯片引腳和外部的印刷電路板(PCB)實(shí)現(xiàn)。例如,第一部分SOC-A和第二部分SOC-B其中之一位于芯片上,而另一個(gè)位于可編程器件(例如FPGA,但不限于此)上,后續(xù)可以采用印刷板(PCB)等方式將二者連接起來。
[0050]圖3a和3b分別示出根據(jù)本發(fā)明的片上系統(tǒng)兩個(gè)部分的示意性框圖。SOC的第一部分SOC-A包括處理器111、核心設(shè)備112、基本設(shè)備113、鎖相環(huán)(PLL) 114和第一互連接口控制器150,SOC的第二部分SOC-B包括控制模塊211、專用設(shè)備212、輸入/輸出接口(I/O) 213、鎖相環(huán)(PLL) 214和第二互連接口控制器230。
[0051]正如上文所述,第一互連接口控制器150和第二互連接口控制器230分別提供內(nèi)存接口,使得SOC的第一部分SOC-A和第二部分SOC-B經(jīng)由內(nèi)存總線互連。
[0052]在第一部分SOC-A中,處理器111可以是各種具備某種指令集的計(jì)算或控制單元,例如單個(gè)或多個(gè)CPU、MPU、MCU或者DSP等通用處理器?;驹O(shè)備113是支持處理器調(diào)試和工作的基本設(shè)備,例如調(diào)試接口、中斷控制器、看門狗、定時(shí)器、串口、GP1等一些產(chǎn)品的基本功能。PLL 114向其他單元或模塊提供所需工作頻率的時(shí)鐘信號(hào)。
[0053]在第一部分SOC-A中,核心設(shè)備112是不同產(chǎn)品系列中的共性設(shè)備。以“監(jiān)控產(chǎn)品系列”和“機(jī)頂盒產(chǎn)品系列”為例,兩者之間具有很大的不同。例如,監(jiān)控產(chǎn)品需要支持多種大容量存儲(chǔ)接口(SATA、USB2.0/3.0,PCIe等)、影像信號(hào)處理器等,機(jī)頂盒產(chǎn)品需要支持多種視頻接口(HDM1、AV、S Video、VGA、DisplayPort、DVI)、音頻處理及編解碼等。雖然“監(jiān)控產(chǎn)品系列”和“機(jī)頂盒產(chǎn)品系列”之間的區(qū)別是很大的,但二者之間的共性也非常明顯,因此,在SOC通用部分SOC-A中,核心設(shè)備112可以包括但不限于二者的共性設(shè)備,例如支持視頻編解碼器以支持視頻的壓縮和播放(回放)、以太網(wǎng)網(wǎng)接口、eMMC/Flash接口、安全模塊、2D圖形加速等。
[0054]不同產(chǎn)品系列之間存在共性是普遍存在的現(xiàn)象,因此,本申請(qǐng)中所述的核心設(shè)備112僅僅指關(guān)注的不同產(chǎn)品系列中所具有的共性設(shè)備。在不同的產(chǎn)品系列中,不同產(chǎn)品系列之間的共性可能不同,也就是不同產(chǎn)品系列之間的共性并不局限于上述的關(guān)于“監(jiān)控產(chǎn)品系列”和“機(jī)頂盒產(chǎn)品系列”的例子。
[0055]應(yīng)當(dāng)注意,核心設(shè)備112是可選的。從設(shè)計(jì)者角度或產(chǎn)品規(guī)劃來講,可以認(rèn)為第一部分SOC-A具有基本設(shè)備113就夠了,不需要核心設(shè)備112。
[0056]在第二部分SOC-B中,控制模塊211可以作為SOC-B內(nèi)簡(jiǎn)單的事務(wù)處理或計(jì)算單元,用于向其他單元或模塊提所需的控制邏輯,進(jìn)行初始化和運(yùn)行控制。I/O模塊213是可選的,比如某些專用部件需要I/O支持,或者某些ADC/DAC單元也需要I/O支持。I/O模塊213包括可能需要的I/O資源的支持。PLL 214向其他單元或模塊提供所需工作頻率的時(shí)鐘信號(hào)。
[0057]在第二部分SOC-B中,專用設(shè)備212是主要的功能模塊,可以包含設(shè)計(jì)者或市場(chǎng)人員認(rèn)為的專用模塊。以“監(jiān)控產(chǎn)品系列”和“機(jī)頂盒產(chǎn)品系列”為例,專用設(shè)備212例如包括多種大容量存儲(chǔ)接口 (3八丁4、”82.0/3.0、?(:16等)、各種視頻接口 (HDM1、AV、S Video、VGA、DisplayPort、DVI)、CVBS視頻解碼器、ISP (影像信號(hào)處理器)、TOE (TCP卸載引擎),但不限于此。
[0058]圖4a和4b分別示出根據(jù)本發(fā)明的片上系統(tǒng)兩個(gè)部分的互連接口控制器的第一實(shí)施例的示意性框圖。如圖所示,第一互連接口控制器150包括事件調(diào)度模塊151、DMA與配置接口 152和時(shí)序發(fā)生器153,第二互連接口控制器230包括多個(gè)譯碼器2302、開關(guān)陣列2303、用戶總線控制器2306、數(shù)據(jù)利用