[發(fā)明專利]對(duì)片上多核系統(tǒng)中的高速接口進(jìn)行控制的方法及系統(tǒng)無效
| 申請(qǐng)?zhí)枺?/td> | 201210120096.6 | 申請(qǐng)日: | 2012-04-23 |
| 公開(公告)號(hào): | CN102662908A | 公開(公告)日: | 2012-09-12 |
| 發(fā)明(設(shè)計(jì))人: | 馬佩軍;余廣明;史江一;孫杰;邸志雄;李康;郝躍 | 申請(qǐng)(專利權(quán))人: | 西安電子科技大學(xué) |
| 主分類號(hào): | G06F15/167 | 分類號(hào): | G06F15/167;H04L12/56 |
| 代理公司: | 陜西電子工業(yè)專利中心 61205 | 代理人: | 王品華;朱紅星 |
| 地址: | 710071*** | 國省代碼: | 陜西;61 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 多核 系統(tǒng) 中的 高速 接口 進(jìn)行 控制 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明屬于通信設(shè)備技術(shù)領(lǐng)域,特別涉及高速接口的控制方法及系統(tǒng),可用于片上多核系統(tǒng)接收和發(fā)送數(shù)據(jù)。
背景技術(shù)
片上系統(tǒng)一般根據(jù)功能可分為三部分,分別是數(shù)據(jù)處理部分,數(shù)據(jù)存儲(chǔ)部分和數(shù)據(jù)交換接口部分,數(shù)據(jù)能否快速可靠的進(jìn)入片上系統(tǒng)進(jìn)而得到及時(shí)的處理,直接關(guān)系到系統(tǒng)的總體性能,例如在常見網(wǎng)絡(luò)處理器中,多個(gè)多線程包處理單元,通常稱為PE、通用的主處理器ARM、高速小容量靜態(tài)隨機(jī)存取存儲(chǔ)器SRAM、大容量動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器DRAM、數(shù)據(jù)交換接口單元構(gòu)成。通常考核網(wǎng)絡(luò)處理器的性能參數(shù)主要有主設(shè)備的平均等待時(shí)間和從設(shè)備的平均響應(yīng)時(shí)間、延遲、吞吐量和總線利用率。其中最重要的就是包的吞吐量。為了能夠快速的對(duì)外部設(shè)備的數(shù)據(jù)進(jìn)行處理和轉(zhuǎn)發(fā),包處理單元解析發(fā)往本設(shè)備的數(shù)據(jù)報(bào)文中的包頭信息,提取包目的地,服務(wù)分類等信息,通過查找轉(zhuǎn)發(fā)表確定數(shù)據(jù)報(bào)文的下一跳目的地址,進(jìn)而修改數(shù)據(jù)包并發(fā)往相應(yīng)網(wǎng)絡(luò)端口,實(shí)現(xiàn)對(duì)數(shù)據(jù)包的處理。圖1提供了一個(gè)傳統(tǒng)的網(wǎng)絡(luò)處理器體系結(jié)構(gòu)示意圖。該體系結(jié)構(gòu)包含的主設(shè)備有多個(gè)包處理單元101以及主處理器103,其主要負(fù)責(zé)異常情況的處理,以及多種共享的從設(shè)備資源,包括SRAM單元107、DRAM單元109、初始化模塊111和數(shù)據(jù)交換接口113。這些設(shè)備單元全部通過一組系統(tǒng)共享總線105相互連接,通常情況下網(wǎng)絡(luò)處理器芯片與外部的MAC設(shè)備115連接。來自MAC設(shè)備的單個(gè)數(shù)據(jù)包一般最大為1518Byte,數(shù)據(jù)流通過MAC層時(shí),數(shù)據(jù)包被切割為64Byte大小的微包,第一個(gè)微包是數(shù)據(jù)包中的第一個(gè)數(shù)據(jù)塊,接收到這個(gè)微包時(shí)接口設(shè)置SOP標(biāo)記,在接收到數(shù)據(jù)包中的最后一個(gè)微包時(shí),接口設(shè)置EOP標(biāo)記。如果外部的數(shù)據(jù)包小于微包的最小長度,則將其填充并將其表示成一個(gè)微包,這時(shí)接口既設(shè)置SOP標(biāo)記,又設(shè)置EOP標(biāo)記。數(shù)據(jù)微包可在SOP和EOP標(biāo)識(shí)下進(jìn)行重組,網(wǎng)絡(luò)數(shù)據(jù)處理單元會(huì)分配一個(gè)新的緩存給標(biāo)記有SOP的數(shù)據(jù)微包,SOP數(shù)據(jù)會(huì)放置在緩存的起始位置。對(duì)于沒有標(biāo)志SOP的數(shù)據(jù)包會(huì)被直接置于上一個(gè)微包之后,只有在完整的數(shù)據(jù)包接收后,才能知道它的長度。
在外接多個(gè)慢速M(fèi)AC時(shí),傳統(tǒng)的方法是采用端口的輪詢機(jī)制,在接收數(shù)據(jù)時(shí)通常是按照以下的步驟進(jìn)行的:
第一步:即高速包處理引擎線程在發(fā)出數(shù)據(jù)接收指令或數(shù)據(jù)發(fā)送指令前,首先需要通過數(shù)據(jù)交換接口獲取MAC設(shè)備的端口狀態(tài),即哪些端口已準(zhǔn)備好發(fā)送數(shù)據(jù),哪些端口已準(zhǔn)備好接收數(shù)據(jù),對(duì)于準(zhǔn)備好發(fā)送數(shù)據(jù)的端口,包處理單元才會(huì)發(fā)出接收請(qǐng)求。
第二步:接收控制器根據(jù)包處理單元的接受請(qǐng)求把相應(yīng)端口的數(shù)據(jù)放進(jìn)接收緩存里進(jìn)行下一步的處理,這個(gè)過程中由于每個(gè)線程負(fù)責(zé)的端口都不同,一個(gè)線程負(fù)責(zé)一個(gè)端口數(shù)據(jù)的接收,它們也是按照一定的順序進(jìn)行工作的,所以接收進(jìn)來的包的順序也沒有被打亂。
第三步:包處理單元將數(shù)據(jù)包的頭部信息更新后寫入DRAM存儲(chǔ)器以及通過查找表確定數(shù)據(jù)包將要發(fā)送的端口。
第四步:把數(shù)據(jù)包和控制信息寫入待發(fā)送的發(fā)送緩存單元,發(fā)送控制器在輪詢到所要發(fā)送的端口已經(jīng)準(zhǔn)備好接收數(shù)據(jù)時(shí),處理好的數(shù)據(jù)包能夠正確的發(fā)送出去。
以網(wǎng)絡(luò)處理器掛接7個(gè)1端口MAC設(shè)備為例,一個(gè)就緒輪詢周期包含12條指令,其中用兩條指令從7個(gè)MAC分別收集接收和發(fā)送就緒標(biāo)志,其他為空指令。此時(shí)輪詢時(shí)間僅占總時(shí)間的一小部分,大部分的時(shí)間都用在數(shù)據(jù)轉(zhuǎn)發(fā)上,這種輪詢方式在外接多個(gè)慢MAC時(shí)效率是非常高的。但是隨著外接MAC數(shù)量的減少,輪詢方式在數(shù)據(jù)轉(zhuǎn)發(fā)效率上會(huì)逐減,特別是外接兩個(gè)單端口千兆MAC,一個(gè)用于接收,另一個(gè)用于發(fā)送,這時(shí)兩條指令從兩個(gè)MAC分別收集接收和發(fā)送就緒標(biāo)志,其它為空指令,一個(gè)輪詢周期需要36個(gè)總線周期,在100MHz的頻率下輪詢時(shí)間為360ns,轉(zhuǎn)發(fā)兩個(gè)64字節(jié)的數(shù)據(jù)需要320ns。輪詢時(shí)間占總時(shí)間的約53%,時(shí)間都用在輪詢就緒標(biāo)志上去了,效率非常低,并且最高數(shù)據(jù)吞吐率僅為1.5Gbps,無法滿足用戶日益增長的對(duì)網(wǎng)絡(luò)處理器用于高速環(huán)境的需求。
發(fā)明內(nèi)容
本發(fā)明為了解決上述技術(shù)的不足,提出對(duì)片上多核系統(tǒng)中的高速接口進(jìn)行控制的方法及系統(tǒng),可以滿足用戶日益增長的對(duì)網(wǎng)絡(luò)處理器用于高速環(huán)境的需求。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于西安電子科技大學(xué),未經(jīng)西安電子科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210120096.6/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F15-00 通用數(shù)字計(jì)算機(jī)
G06F15-02 .通過鍵盤輸入的手動(dòng)操作,以及應(yīng)用機(jī)內(nèi)程序的計(jì)算,例如,袖珍計(jì)算器
G06F15-04 .在引入被處理的數(shù)據(jù)的同時(shí),進(jìn)行編制程序的,例如,在同一記錄載體上
G06F15-08 .應(yīng)用插接板編制程序的
G06F15-16 .兩個(gè)或多個(gè)數(shù)字計(jì)算機(jī)的組合,其中每臺(tái)至少具有一個(gè)運(yùn)算器、一個(gè)程序器及一個(gè)寄存器,例如,用于數(shù)個(gè)程序的同時(shí)處理
G06F15-18 .其中,根據(jù)計(jì)算機(jī)本身在一個(gè)完整的運(yùn)行期間內(nèi)所取得的經(jīng)驗(yàn)來改變程序的;學(xué)習(xí)機(jī)器





