基于SRAM的核心路由器交換矩陣輸入端口設(shè)計
從線卡傳輸?shù)浇粨Q網(wǎng)絡(luò)輸入端口的數(shù)據(jù)包有著固定的長度,它的長度共有72位,包括6位的包頭和66位的包數(shù)據(jù)。其中包頭的前3位是源地址,后3位是目的地址。當(dāng)報文控制器接收到從線卡傳輸來的72位的數(shù)據(jù)包時,便將其存入SRAM中的空地址中,F(xiàn)IFO寄存器是專門用來存放SRAM中的空地址,報文控制器根據(jù)FIFO寄存器的空地址將數(shù)據(jù)包存入到SRAM中,同時更新SRAM地址鏈接表和VOQ尾指針寄存器,以便接收下一個數(shù)據(jù)包。當(dāng)需要從SRAM中讀取數(shù)據(jù)包時,首先根據(jù)VOQ頭指針寄存器找到SRAM地址鏈接表,SRAM地址鏈接表中存放的是數(shù)據(jù)包在SRAM中的地址,然后根據(jù)SRAM地址鏈接表找到需要從SRAM中讀取的數(shù)據(jù)包的地址,從而讀取所需要的數(shù)據(jù),同時更新VOQ頭指針寄存器和SRAM地址鏈接表。
由于報文的頭尾標(biāo)志用2 b定義,因此具有很好的故障恢復(fù)能力。例如因此硬件傳輸時受到外界干擾,10標(biāo)志變成n,這時不需任何例外處理,帶來的危害僅僅影響連續(xù)的兩個報文(兩個報文合并成一個)。
4 SRAM讀寫測試
交換矩陣輸入端口的設(shè)計取決于能否根據(jù)輸入端口中FIFO寄存器中的空的SRAM的地址和SRAM地址鏈接表準(zhǔn)確地讀取SRAM中的數(shù)據(jù)報文。該輸入端口設(shè)計以Atera DE-115開發(fā)板上的SRAM芯片為基礎(chǔ),編寫SRAM的仿真模型,該芯片的存儲容量為2 MB,并在Modelsim中完成了對設(shè)計的驗證。仿真結(jié)果如圖4所示。本文引用地址:http://butianyuan.cn/article/153526.htm
5 結(jié)語
本文設(shè)計了一個基于SRAM的交換矩陣的輸入端口,該設(shè)計有效的消除了輸入排隊鏈頭阻塞的問題,極大地提高交換開關(guān)的利用率,將輸入端口數(shù)據(jù)報文存放在片外SRAM中,可以顯著降低交換芯片的面積,提高虛擬隊列中數(shù)據(jù)報文的讀取速度,并在Altera開發(fā)板上完成了驗證,系統(tǒng)性能穩(wěn)定,具有很好的應(yīng)用前景與研究意義。
評論