目前關(guān)于物聯(lián)卡路由器的研究主要分為兩類(lèi):基于丟包的物聯(lián)卡路由器和基于偏轉(zhuǎn)路由的物聯(lián)卡路由器。物聯(lián)卡路由器的特點(diǎn)決定了其必須采用相應(yīng)的機(jī)制處理多個(gè)包競(jìng)爭(zhēng)同一個(gè)路由端口的情況。基于丟包的物聯(lián)卡路由器采用丟包的方式處理競(jìng)爭(zhēng),而基于偏轉(zhuǎn)路由的物聯(lián)卡路由器則采用繞道路由的方式處理競(jìng)爭(zhēng)?;趤G包的物聯(lián)卡路由器中的丟包降低了路由器的性能,并且需要額外的重傳機(jī)制處理丟包的情況,增加了路由器的設(shè)計(jì)復(fù)雜度。
基于偏轉(zhuǎn)路由的物聯(lián)卡路由器克服了基于丟包的物聯(lián)卡路由器的不足,不存在丟包的情況,但是其面臨的一個(gè)最大問(wèn)題是活鎖避免。傳統(tǒng)的基于偏轉(zhuǎn)路由的物聯(lián)卡路由器按包在網(wǎng)絡(luò)中所待時(shí)間的長(zhǎng)短對(duì)包進(jìn)行優(yōu)先級(jí)排序,按優(yōu)先級(jí)從高到低的順序進(jìn)行輸出端口分配,能夠有效避免活鎖。但是,按優(yōu)先級(jí)逐個(gè)分配輸出端口的串行結(jié)構(gòu)邏輯級(jí)數(shù)多,成為物聯(lián)卡路由器的關(guān)鍵路徑,限制了路由器實(shí)現(xiàn)的時(shí)鐘頻率。
為此,針對(duì)上述兩種物聯(lián)卡路由器存在的不足,對(duì)物聯(lián)卡路由器的微體系結(jié)構(gòu)進(jìn)行優(yōu)化設(shè)計(jì),提高路由器的性能,對(duì)設(shè)計(jì)未來(lái)大規(guī)模多核SoC的高性能片上互連具有重要意義。此外,三維片上網(wǎng)絡(luò)已在國(guó)際上引起學(xué)術(shù)界和產(chǎn)業(yè)界的廣泛關(guān)注,在未來(lái)幾年內(nèi)將成為NoC一個(gè)重要的研究方向。在三維片上網(wǎng)絡(luò)中采用傳統(tǒng)的基于偏轉(zhuǎn)路由的物聯(lián)卡路由器,端口的增加將會(huì)導(dǎo)致按優(yōu)先級(jí)進(jìn)行輸出端口分配的串行結(jié)構(gòu)邏輯級(jí)數(shù)進(jìn)一步增加。因此,本文分別針對(duì)二維和三維片上網(wǎng)絡(luò)對(duì)基于偏轉(zhuǎn)路由的物聯(lián)卡路由器微體系結(jié)構(gòu)進(jìn)行優(yōu)化設(shè)計(jì)以提高其實(shí)現(xiàn)頻率。
國(guó)內(nèi)最大的物聯(lián)卡交易平臺(tái):物聯(lián)卡之家(m.linhoocis.cn)指出,在物聯(lián)卡路由器中,由于不存在緩沖器,可以降低軟錯(cuò)誤出現(xiàn)的概率。通常故障在芯片上隨機(jī)出現(xiàn),因此面積大的邏輯往往比面積小的邏輯更容易出錯(cuò)。隨著集成電路面積的增加,可靠性按照指數(shù)率惡化。與有緩沖路由器相比,物聯(lián)卡路由器的面積大大降低,使其在應(yīng)對(duì)故障方面具有先天優(yōu)勢(shì)。
在物聯(lián)卡路由器線(xiàn)卡所嵌入的物理芯片中,網(wǎng)絡(luò)處理器芯片和業(yè)務(wù)量管理器芯片是數(shù)據(jù)平面處理的兩大功能芯片。其中網(wǎng)絡(luò)處理器芯片的主要功能包括路由查找、數(shù)據(jù)包分類(lèi)、數(shù)據(jù)包修改等,業(yè)務(wù)量管理器芯片的主要功能則包括擁塞控制、流量整形、數(shù)據(jù)包緩存和調(diào)度等。在線(xiàn)卡的輸入方向上,當(dāng)線(xiàn)卡接收到一個(gè)網(wǎng)絡(luò)數(shù)據(jù)包時(shí),它首先會(huì)把數(shù)據(jù)包發(fā)送給網(wǎng)絡(luò)處理器芯片進(jìn)行預(yù)處理,然后再將其發(fā)送給業(yè)務(wù)量管理器芯片進(jìn)行進(jìn)一步的排隊(duì)調(diào)度等操作。在物聯(lián)卡路由器中,路由器的存儲(chǔ)功能主要在業(yè)務(wù)量管理器芯片中實(shí)現(xiàn),因此業(yè)務(wù)量管理器芯片需要配置大容量的外部存儲(chǔ)器,以便在網(wǎng)絡(luò)發(fā)生擁塞時(shí)可以把數(shù)據(jù)包緩存在本地存儲(chǔ)器中,降低丟包率。
路由器的存儲(chǔ)模塊是一個(gè)十分重要的模塊,它直接影響到物聯(lián)網(wǎng)的性能以及穩(wěn)定性。隨著物聯(lián)網(wǎng)的發(fā)展,網(wǎng)絡(luò)的研究者和開(kāi)發(fā)者己經(jīng)不滿(mǎn)足于路由器存儲(chǔ)模塊的暫存數(shù)據(jù)包功能,而是希望進(jìn)一步挖掘路由器存儲(chǔ)模塊的數(shù)據(jù)緩存潛力,進(jìn)而提升網(wǎng)絡(luò)的服務(wù)質(zhì)量。因此,在未來(lái)物聯(lián)網(wǎng)體系結(jié)構(gòu)的研究中,研究者們己經(jīng)開(kāi)始更加注重挖掘存儲(chǔ)模塊的功能。如在以?xún)?nèi)容為中心的未來(lái)物聯(lián)網(wǎng)體系結(jié)構(gòu)的研究中,路由器的存儲(chǔ)模塊的功能有了新的定義:路由器可以對(duì)流經(jīng)它的數(shù)據(jù)包進(jìn)行緩存,當(dāng)再次接收到請(qǐng)求該數(shù)據(jù)包的請(qǐng)求時(shí),路由器可以直接從本地緩存中把需要的數(shù)據(jù)包讀取出來(lái),直接發(fā)送給請(qǐng)求者,而不需要把請(qǐng)求轉(zhuǎn)發(fā)給其他路由器或者服務(wù)器。這種新型的網(wǎng)絡(luò)體系結(jié)構(gòu)賦予了路由器存儲(chǔ)模塊一種新的使命,它不再是一個(gè)簡(jiǎn)單的buffer,而是網(wǎng)絡(luò)中的一級(jí)cache。