專利名稱:一種片上總線系統(tǒng)的制作方法
技術(shù)領域:
本發(fā)明屬于集成電路設計領域,尤其涉及一種片上總線系統(tǒng)。
技術(shù)背景目前, 一個嵌入式硬件系統(tǒng)(片上系統(tǒng))通常由微處理器模塊、總線和各 種設備模塊組成。其中微處理器模塊是整個系統(tǒng)的控制核心,它控制整個系統(tǒng) 實時工作;總線是各個模塊相互連接的橋梁,是系統(tǒng)內(nèi)部信息傳遞的公共通路。 微處理器模塊和各種設備模塊通過總線連接在一起,構(gòu)成一個完整的嵌入式系 統(tǒng)。微處理器是嵌入式系統(tǒng)的核心部分,是整個系統(tǒng)的核心控制單元,從低端 的4位、8位微處理器到高端的32位ARM系列,這些微處理器在嵌入式系統(tǒng) 中都有廣泛應用。總線信息通常分為控制信息和數(shù)據(jù)信息兩種,控制信息為各個設備間相互 控制的信號, 一般數(shù)據(jù)量較少,而數(shù)據(jù)信息為各個設備間傳遞的數(shù)據(jù)信號,--般數(shù)據(jù)量較大。在通常嵌入式硬件系統(tǒng)中,只有一條總線,微處理器模塊、可 編程總線仲裁模塊、中斷控制模塊、直接存儲控制模塊、和其它各種設備模塊 以設備接口形式接入總線組成片上系統(tǒng),如圖1所示。在該系統(tǒng)中,中斷控制 模塊和微處理器模塊相連,微處理器模塊通過總線和其它各種設備模塊交互控 制信息和數(shù)據(jù)信息,可編程總線仲裁模塊、直接存儲控制模塊以及其它各種設 備模塊也通過總線來傳輸數(shù)據(jù)信息??删幊炭偩€仲裁模塊,控制總線信息傳輸, 它響應主設備的信息傳輸請求,建立主從設備間的總線連接;直接存儲控制模 塊,可以直接同設備模塊進行大批量數(shù)據(jù)信息傳輸,以提升傳輸效率;中斷控 制模塊接收和鎖定各設備模塊中斷,并按優(yōu)先級排序后向^^處理器申請中斷, 以實現(xiàn)系統(tǒng)實時控制。控制信息和數(shù)據(jù)信息由總線分時復用傳輸,由同一個設 備接口接入總線;主設備可以發(fā)起總線傳輸請求,從設備接收請求并響應,主 從設備由設計者根據(jù)應用而定。在圖1中,設備接口 Al所接設備為主設備a,設備接口 Bl所接設備為從 設備x,設備接口 A2所接設備為主設備b,設備接口 B2所接設備為從設備y, 工作流程如下步驟SU0:主設備a向可編程總線仲裁模塊發(fā)出請求,請求對從設備x 進行數(shù)據(jù)傳輸;步驟S111:從設備x空閑,可編程總線仲裁模塊響應主設備a請求,建 立主設備a和從設備x之間的數(shù)據(jù)連接;步驟S112:開始數(shù)據(jù)傳輸a—X;步驟S113:主設備b向可編程總線仲裁模塊發(fā)出請求,請求對從設備y 進行數(shù)據(jù)傳輸;步驟S114:由于總線繁忙,而主設備b發(fā)出的請求不高于主設備a發(fā)出的請求,所以主設備b等待;步驟S115:微處理器接到中斷請求,暫停數(shù)據(jù)傳輸a—x,暫時斷開主設 備a和從設備X之間的總線連接;步驟S116:微處理器獲得總線控制權(quán),通過總線處理中斷事件; 步驟S117:中斷處理完成,清除中斷; 步驟S118:繼續(xù)數(shù)據(jù)傳輸a —X; 步驟S119:數(shù)據(jù)傳輸a — X完成;步驟S120:可編程總線仲裁模塊斷開主設備a和從設備x之間的總線連接;步驟S12h主設備a數(shù)據(jù)傳輸完成;步驟S122:可編程總線仲裁模塊響應主設備b請求,建立主設備b和從設備y之間的數(shù)據(jù)連接;步驟S123:開始數(shù)據(jù)傳輸b—y; 步驟S124:數(shù)據(jù)傳輸b—y完成;步驟S125:可編程總線仲裁模塊斷開主設備b和從設備y之間的總線連接;步驟S126:主設備b數(shù)據(jù)傳輸完成。從上述步驟可以看出,在圖1的系統(tǒng)中,在同一時間,只有一個主設備和 一個從設備進行數(shù)據(jù)傳輸,總線利用率低。同時,微處理器在處理中斷請求時將和設備競爭總線。圖1中系統(tǒng)性能的提升主要通過采用更高端的微處理器以及提高總線頻 率來實現(xiàn)。當需要大批量數(shù)據(jù)傳輸,尤其是多個設備同時有大批量數(shù)據(jù)傳輸要 求時,總線負荷大幅度增加,如果總線性能不能有效提高,保證設備要求的最 低傳送時間,將導致系統(tǒng)不能正常工作。但是,高端微處理器會占用較多的片上資源,增加系統(tǒng)成本、研發(fā)成本(研 發(fā)或者購買授權(quán))以及后期應用開發(fā)成本,同時總線頻率提升過高時,系統(tǒng)功 耗會大幅度增加。所以,迫切需要一種既能滿足大批量數(shù)據(jù)傳輸要求,又不會大幅度增加成 本和功耗的嵌入式硬件系統(tǒng)。發(fā)明內(nèi)容本發(fā)明提供了一種片上系統(tǒng)和信息傳輸及控制方法,旨在解決現(xiàn)有技術(shù)中 不能實現(xiàn)多個設備之間的同時高速數(shù)據(jù)傳輸、提升系統(tǒng)或者總線性能導致成本 和功耗大幅度增加的問題,提供了一種低成本、低功耗、高性能、易開發(fā)的片 上系統(tǒng)和高效的信息傳輸及控制方法。為了實現(xiàn)上述目的,本發(fā)明提供了一種片上系統(tǒng),包括微處理器模塊、可 編程交叉總線仲裁模塊、中斷控制模塊、直接存儲控制模塊,其特點在于,還 包括控制總線和數(shù)據(jù)總線,所述控制總線與所述微處理器模塊、所述可編程交叉總線仲裁模塊、所述 中斷控制模塊以及所述直接存儲控制模塊相連,用于傳輸系統(tǒng)控制信息;所述數(shù)據(jù)總線與所述可編程交叉總線仲裁模塊、所述中斷控制模塊以及所 述直接存儲控制模塊相連,用于傳輸數(shù)據(jù)信息;所述控制總線和所述數(shù)據(jù)總線在物理上分開并且相互獨立。上述的系統(tǒng),其特點在于,還包括數(shù)據(jù)總線/控制總線轉(zhuǎn)換橋接模塊,與 所述數(shù)據(jù)總線和所述控制總線相連,用于所述微處理器模塊通過所述控制總線 訪問所述數(shù)據(jù)總線。上述的系統(tǒng),其特點在于,所述系統(tǒng)進一步包括至少一個設備接口模塊, 所述設備接口模塊與所述數(shù)據(jù)總線和所述控制總線相連,用于連接外部設備。上述的系統(tǒng),其特點在于,所述設備接口包括一個控制接口和至少一個數(shù)據(jù)接口。上述的系統(tǒng),其特點在于,所述微處理器模塊是8051微處理器。上述的系統(tǒng),其特點在于,所述數(shù)據(jù)總線是高速交叉數(shù)據(jù)總線。 為了實現(xiàn)上述目的,本發(fā)明又提供了一種信息傳輸及控制方法,包括數(shù)據(jù)信息傳輸步驟,包括步驟11,可編程總線仲裁模塊通過數(shù)據(jù)總線接收到目標設備的總線連接 請求;步驟12,如果所述目標設備空閑,所述可編程總線仲裁模塊響應所述總 線連接請求,在所述數(shù)據(jù)總線上建立所述總線連接,否則將所述請求放入排隊 列表,直到所述目標設備空閑再建立所述總線連接;步驟13,通過所述數(shù)據(jù)總線上的所述總線連接傳輸數(shù)據(jù)信息;步驟14,傳輸完成,斷開所述數(shù)據(jù)總線上的所述總線連接;控制信息傳輸步驟,包括步驟21,微處理器模塊通過控制總線接收系統(tǒng)請求信息; 步驟22,所述微處理器模塊和中斷控制模塊處理所述系統(tǒng)請求信息; 步驟23,所述微處理器通過所述控制總線發(fā)送所述系統(tǒng)請求的響應。 上述的方法,其特點在于,還包括跨線訪問步驟,數(shù)據(jù)總線/控制總線轉(zhuǎn)換橋接模塊接收所述數(shù)據(jù)總線上的信息,并通過所述控制總線將其發(fā)送至所述微處理器模塊。上述的方法,其特點在于,所述總線連接設計為一個或者多個,所述系統(tǒng) 請求信息包括中斷請求信息。上述的方法,其特點在于,所述數(shù)據(jù)總線設計為高速交叉數(shù)據(jù)總線。 本發(fā)明提供的片上系統(tǒng)和方法采用8051微處理器,面積較高端微處理器 小很多,可以節(jié)約片上資源,降低研發(fā)成本,同時兩條不同總線的設計既優(yōu)化 了系統(tǒng)控制,使低性能的8051微處理器就能滿足整個系統(tǒng)控制,又能夠保證 同一時刻多個設備之間的高速數(shù)據(jù)傳輸,相對較低的總線頻率又使系統(tǒng)的功耗 控制在合理范圍內(nèi)。
圖1是現(xiàn)有技術(shù)的片上系統(tǒng)結(jié)構(gòu)框圖;圖2是本發(fā)明的片上系統(tǒng)結(jié)構(gòu)框圖;圖3是本發(fā)明中數(shù)據(jù)總線中的數(shù)據(jù)傳輸工作時序圖;圖4是本發(fā)明中斷控制工作時序圖。
具體實施方式
圖2所示為本發(fā)明的片上系統(tǒng)結(jié)構(gòu)框圖,包括8051微處理器模塊、可編 程交叉總線仲裁模塊、中斷控制模塊、直接存儲控制模塊、系統(tǒng)控制總線和高 速交叉數(shù)據(jù)總線,以及其它設備模塊以設備接口模塊Al至An、 Bl至Bn形 式描述。其中8051微處理器和中斷控制模塊相連,8051微處理器、可編程交 叉總線仲裁模塊、中斷控制模塊、直接存儲控制模塊,以及設備接口模塊A1 至An、 Bl至Bn中的控制接口與系統(tǒng)控制總線相連,而可編程交叉總線仲裁 模塊、中斷控制模塊、直接存儲控制模塊,以及設備接口模塊Al至An、 Bl 至Bn中的數(shù)據(jù)接口與高速交叉數(shù)據(jù)總線相連。系統(tǒng)控制總線,為一條普通總 線,它結(jié)構(gòu)簡單,操作簡便,易于8051微處理器控制,高速交叉數(shù)據(jù)總線可 同時進行多路主/從設備間的數(shù)據(jù)傳輸,兩條總線分開、相互獨立放置,并且 各自傳輸不同的信息,高速交叉數(shù)據(jù)總線傳輸數(shù)據(jù)以及數(shù)據(jù)傳輸前總線建立、 傳輸后總線斷開相關的請求、響應信息,系統(tǒng)控制總線傳輸與系統(tǒng)控制相關的 信息,比如寄存器狀態(tài)和中斷信息等等。另外系統(tǒng)還包括數(shù)據(jù)總線/控制總線 轉(zhuǎn)換橋接模塊,當8051微處理器需要訪問數(shù)據(jù)總線時,該模塊能簡單有效的 完成數(shù)據(jù)總線和控制總線之間的轉(zhuǎn)換,實現(xiàn)跨總線的信息傳遞。如圖2所示,該片上系統(tǒng)根據(jù)兩條總線可以大致劃分為兩個部分8051 微處理器、系統(tǒng)控制總線、各設備控制接口、中斷控制模塊為該片上系統(tǒng)控制 部分;高速交叉數(shù)據(jù)總線、可編程交叉總線仲裁模塊、直接存儲控制模塊、各 設備數(shù)據(jù)接口為該片上系統(tǒng)的數(shù)據(jù)傳輸部分。下面的示例中,設備接口 Al所接設備為主設備a,設備接口 A2所接設 備為主設備b,設備接口 A3所接設備為主設備c,設備接口B1所接設備為從 設備x,設備接口B2所接設備為從設備y,所接設備沒有示出。數(shù)據(jù)信息傳輸部分工作流程為步驟S210:主設備a向可編程交叉總線仲裁模塊發(fā)出請求,請求對從設 備x進行數(shù)據(jù)傳輸;步驟S211:從設備X空閑,可編程交叉總線仲裁模塊響應主設備a請求, 建立主設備a和從設備X之間數(shù)據(jù)連接;步驟S212:開始數(shù)據(jù)傳輸a—x;步驟S213:主設備b和主設備c同時向可編程交叉總線仲裁模塊發(fā)出請求,請求對從設備y進行數(shù)據(jù)傳輸;步驟S214:從設備y空閑,因主設備b優(yōu)先級較主設備c高,仲裁模塊 響應主設備b請求,建立主設備b和從設備y之間的數(shù)據(jù)連接;步驟S215:開始數(shù)據(jù)傳輸b—y;步驟S216:數(shù)據(jù)傳輸b—y完成;步驟S217:可編程交叉總線仲裁模塊斷開主設備b和從設備y總線連接; 步驟S218:主設備b數(shù)據(jù)傳輸請求任務完成;步驟S219:可編程交叉總線仲裁模塊響應主設備c請求,建立主設備c 和從設備y之間的數(shù)據(jù)連接;步驟S220:數(shù)據(jù)傳輸c一y完成;步驟S221:可編程交叉總線仲裁模塊斷開主設備c和從設備y之間的總 線連接;步驟S222:主設備C數(shù)據(jù)傳輸請求任務完成; 步驟S223:數(shù)據(jù)傳輸a—x完成;步驟S224:可編程交叉總線仲裁模塊斷開主設備a和從設備x之間的總 線連接;步驟S225:主設備a數(shù)據(jù)傳輸請求任務完成。上述的流程中,主設備通過仲裁模塊向從設備發(fā)出數(shù)據(jù)傳輸申請,如果該 從設備空閑,仲裁模塊立刻響應主設備申請并建立該主設備和該從設備間數(shù)據(jù)連接,直至數(shù)據(jù)傳輸完成;若該從設備已經(jīng)與其它主設備建立連接,仲裁模塊不會響應主設備,主設備可以取消該次請求或者等從設備空閑后仲裁模塊發(fā)出 響應再進行數(shù)據(jù)傳輸。同一時刻多個不同的主設備可以和多個不同的空閑從設 備建立數(shù)據(jù)傳輸,若有不同主設備對同一從設備進行數(shù)據(jù)傳輸請求,將按可編 程交叉總線仲裁模塊設定優(yōu)先級順序排序,優(yōu)先級較高的設備將獲得總線使用 權(quán)。上述數(shù)據(jù)傳輸流程將在高速交叉數(shù)據(jù)總線中實現(xiàn),總線時序如圖3所示,9各請求信號和響應信號時序如下1、 主設備a向可編程交叉總線仲裁模塊發(fā)出請求,請求對從設備X進行 數(shù)據(jù)傳輸;2、 從設備x空閑,可編程交叉總線仲裁模塊響應主設備a請求,建立主 設備a和從設備x之間數(shù)據(jù)連接;3、 開始數(shù)據(jù)傳輸a—x;4、 數(shù)據(jù)傳輸a—x完成;5、 可編程交叉總線仲裁模塊斷開主設備a和從設備x之間的總線連接;6、 主設備a數(shù)據(jù)傳輸請求任務完成;7、 主設備b和主設備c同時向可編程交叉總線仲裁模塊發(fā)出請求,請求 對從設備y進行數(shù)據(jù)傳輸;8、 從設備y空閑,因主設備b優(yōu)先級較主設備c高,仲裁模塊響應主設 備b請求,建立主設備b和從設備y之間的數(shù)據(jù)連接;9、 開始數(shù)據(jù)傳輸b—y,此時,數(shù)據(jù)傳輸a—x和b—y同時進行;10、 數(shù)據(jù)傳輸b—y完成;11、 可編程交叉總線仲裁模塊斷開主設備b和從設備y總線連接;12、 主設備b數(shù)據(jù)傳輸請求任務完成;13、 主設備c和主設備b同時向可編程交叉總線仲裁模塊發(fā)出請求,請求 對從設備y進行數(shù)據(jù)傳輸;14、 因主設備c優(yōu)先級較主設備b低,待數(shù)據(jù)傳輸b—y結(jié)束后,可編程 交叉總線仲裁模塊響應主設備c請求,建立主設備c和從設備y之間的數(shù)據(jù)連 接;15、 開始數(shù)據(jù)傳輸c一y,此時,數(shù)據(jù)傳輸a—x和c一y同時進行;16、 數(shù)據(jù)傳輸c一y完成;17、 可編程交叉總線仲裁模塊斷開主設備c和從設備y之間的總線連接;18、 主設備c數(shù)據(jù)傳輸請求任務完成。 系統(tǒng)中斷控制處理流程如下步驟S310: 8051微處理器收到中斷請求;步驟S31h 8051響應中斷請求后,通過系統(tǒng)控制總線處理中斷事件; 步驟S312: 8051微處理器通過系統(tǒng)控制總線清除中斷請求。上述流程的總線時序如圖4所示,其中中斷1優(yōu)先級高于中斷2,各工作 時序如下1、 中斷1和中斷2同時發(fā)出請求;2、 中斷控制模塊鎖定中斷1和中斷2請求;3、 由于中斷1優(yōu)先級高于中斷2,中斷控制模塊優(yōu)先向8051微處理器申 請中斷1請求,8051微處理器響應后進入中斷1處理程序,通過系統(tǒng)控制總 線對中斷事件1進行實時處理;4、 由于中斷2己有請求被鎖定且未清除,該次請求被忽略;5、 中斷l(xiāng)處理完成,8051微處理器通過系統(tǒng)控制總線清除中斷1;6、 中斷控制模塊解除中斷1鎖定;7、 中斷1處理完成,中斷控制模塊向8051微處理器申請中斷2請求,8051 微處理器響應后進入中斷2處理程序,通過系統(tǒng)控制總線對中斷事件2進行實 時處理;8、 中斷2處理完成,8051微處理器清除中斷2;9、 中斷控制模塊解除中斷2鎖定。當然,本發(fā)明還可有其它多種實施例,在不背離本發(fā)明精神及其實質(zhì)的情 況下,熟悉本領域的普通技術(shù)人員當可根據(jù)本發(fā)明做出各種相應的改變和變 形,但這些相應的改變和變形都應屬于本發(fā)明所附的權(quán)利要求的保護范圍。
權(quán)利要求
1. 一種片上系統(tǒng),包括微處理器模塊、可編程交叉總線仲裁模塊、中斷控制模塊、直接存儲控制模塊,其特征在于,還包括控制總線和數(shù)據(jù)總線,所述控制總線與所述微處理器模塊、所述可編程交叉總線仲裁模塊、所述中斷控制模塊以及所述直接存儲控制模塊相連,用于傳輸系統(tǒng)控制信息;所述數(shù)據(jù)總線與所述可編程交叉總線仲裁模塊、所述中斷控制模塊以及所述直接存儲控制模塊相連,用于傳輸數(shù)據(jù)信息;所述控制總線和所述數(shù)據(jù)總線在物理上分開并且相互獨立。
2、 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,還包括數(shù)據(jù)總線/控制總線 轉(zhuǎn)換橋接模塊,與所述數(shù)據(jù)總線和所述控制總線相連,用于所述微處理器模塊 通過所述控制總線訪問所述數(shù)據(jù)總線。
3、 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述系統(tǒng)進一步包括至少 一個設備接口模塊,所述設備接口模塊與所述數(shù)據(jù)總線和所述控制總線相連, 用于連接外部設備。
4、 根據(jù)權(quán)利要求3所述的系統(tǒng),其特征在于,所述設備接口包括一個控 制接口和至少一個數(shù)據(jù)接口。
5、 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述微處理器模塊是8051 微處理器。
6、 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述數(shù)據(jù)總線是高速交叉 數(shù)據(jù)總線。
7、 一種如權(quán)利要求1所述的片上系統(tǒng)的信息傳輸及控制方法,其特征在 于,包括數(shù)據(jù)信息傳輸步驟,包括步驟11,可編程總線仲裁模塊通過數(shù)據(jù)總線接收到目標設備的總線連接 請求;步驟12,如果所述目標設備空閑,所述可編程總線仲裁模塊響應所述總 線連接請求,在所述數(shù)據(jù)總線上建立所述總線連接,否則將所述請求放入排隊 列表,直到所述目標設備空閑再建立所述總線連接;步驟13,通過所述數(shù)據(jù)總線上的所述總線連接傳輸數(shù)據(jù)信息;步驟14,傳輸完成,斷開所述數(shù)據(jù)總線上的所述總線連接; 控制信息傳輸步驟,包括步驟21,微處理器模塊通過控制總線接收系統(tǒng)請求信息;步驟22,所述微處理器模塊和中斷控制模塊處理所述系統(tǒng)請求信息;步驟23,所述微處理器通過所述控制總線發(fā)送所述系統(tǒng)請求的響應。
8、 根據(jù)權(quán)利要求7所述的方法,其特征在于,還包括跨線訪問步驟,數(shù)據(jù)總線/控制總線轉(zhuǎn)換橋接模塊接收所述數(shù)據(jù)總線上的信息,并通過所述控制 總線將其發(fā)送至所述微處理器模塊。
9、 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述總線連接設計為一個或者多個,所述系統(tǒng)請求信息包括中斷請求信息。
10、 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述數(shù)據(jù)總線設計為高速 交叉數(shù)據(jù)總線。
全文摘要
本發(fā)明提供了一種片上系統(tǒng),包括微處理器模塊、可編程交叉總線仲裁模塊、中斷控制模塊、直接存儲控制模塊,還包括控制總線和數(shù)據(jù)總線,所述控制總線與所述微處理器模塊、所述可編程交叉總線仲裁模塊、所述中斷控制模塊以及所述直接存儲控制模塊相連,用于傳輸系統(tǒng)控制信息;所述數(shù)據(jù)總線與所述可編程交叉總線仲裁模塊、所述中斷控制模塊以及所述直接存儲控制模塊相連,用于傳輸數(shù)據(jù)信息;所述控制總線和所述數(shù)據(jù)總線在物理上分開并且相互獨立。本發(fā)明提供的片上系統(tǒng)節(jié)約了片上資源,降低了研發(fā)成本,又能夠保證同一時刻多個設備之間的高速數(shù)據(jù)傳輸,相對較低的總線頻率使系統(tǒng)的功耗控制在合理范圍內(nèi)。
文檔編號G06F13/40GK101281511SQ20071006507
公開日2008年10月8日 申請日期2007年4月2日 優(yōu)先權(quán)日2007年4月2日
發(fā)明者劉貴勇 申請人:成都方程式電子有限公司