使用QDR-IV設計高性能網(wǎng)絡(luò )系統——第一部分
流媒體視頻、云服務(wù)和移動(dòng)數據推動(dòng)了全球網(wǎng)絡(luò )流量的持續增長(cháng)。為了支持這種增長(cháng),網(wǎng)絡(luò )系統必須提供更快的線(xiàn)路速率和每秒處理數百萬(wàn)個(gè)數據包的性能。在網(wǎng)絡(luò )系統中,數據包的到達順序是隨機的,且每個(gè)數據包的處理需要好幾個(gè)存儲動(dòng)作。數據包流量需要每秒鐘訪(fǎng)問(wèn)數億萬(wàn)次存儲器,才能在轉發(fā)表中找到路徑或完成數據統計。
本文引用地址:http://dyxdggzs.com/article/201702/344317.htm數據包速率與隨機存儲器訪(fǎng)問(wèn)速率成正比。如今的網(wǎng)絡(luò )設備需要具有很高的隨機訪(fǎng)問(wèn)速率(RTR)性能和高帶寬才能跟上如今高速增長(cháng)的網(wǎng)絡(luò )流量。其中,RTR是衡量存儲器可以執行的完全隨機存儲(讀或寫(xiě))的次數,即隨機存儲速率。該度量值與存取處理過(guò)程的處理位數無(wú)關(guān)。RTR是以百萬(wàn)次/每秒(MT/s)為單位計量的。
相比于高性能網(wǎng)絡(luò )系統需要處理的隨機流量的速率,當今高性能DRAM能夠處理的要少一些。QDR-IV SRAM旨在提供同類(lèi)最佳的RTR性能,以滿(mǎn)足苛刻的網(wǎng)絡(luò )功能要求。圖1量化了QDR-IV相比于其它類(lèi)型的存儲器在RTR性能方面的優(yōu)勢。即使與最高性能的存儲器相比,QDR-IV仍能提供兩倍于后者的RTR性能,因此,它是那些需要執行要求苛刻的操作-如更新統計數據、跟蹤數據流狀態(tài)、調度數據包、進(jìn)行表查詢(xún)-的高性能網(wǎng)絡(luò )系統的理想選擇。
在本系列的第一部分中,我們將探討兩種類(lèi)型的QDR-IV存儲器、時(shí)鐘、讀/寫(xiě)操作和分組操作。

不同類(lèi)型的QDR-IV:XP和HP
QDR-IV 有兩種類(lèi)型。HP在較低頻率下工作,而且不使用分組操作。 XP面向最高性能的應用,可以使用分組操作方案,并在較高頻率下工作。
QDR-IV的讀寫(xiě)時(shí)延由運行速度決定。表1 定義了工作模式和每個(gè)模式所支持的頻率。
QDR-IV SRAM具有兩個(gè)端口,即端口A(yíng)和端口B。由于可以獨立訪(fǎng)問(wèn)這兩個(gè)端口,所以對存儲器陣列進(jìn)行的任何讀/寫(xiě)訪(fǎng)問(wèn)組合均可得到最大的隨機數據傳輸速率。在QDR-IV中,對每個(gè)端口進(jìn)行訪(fǎng)問(wèn)時(shí)需要使用雙倍數據速率的通用地址總線(xiàn)(A)。端口A(yíng)的地址在輸入時(shí)鐘(CK)的上升沿上被鎖存,而端口B的地址在輸入時(shí)鐘(CK)的下降沿上或在CK#的上升沿上被鎖存??刂菩盘?LDA#、LDB#、RWA#和RWB#)以單倍數據速率(SDR)工作,并用于確定執行讀操作還是寫(xiě)操作。兩個(gè)數據端口(DQA和DQB)均配備了雙倍數據速率(DDR)接口。該器件具有2字突發(fā)的架構。器件的數據總線(xiàn)帶寬為 × 18或 × 36。
QDR-IV SRAM包括指定為端口A(yíng)和端口B的兩個(gè)端口。因為對兩個(gè)端口的訪(fǎng)問(wèn)是獨立的,所以對于對存儲器陣列的讀/寫(xiě)訪(fǎng)問(wèn)的任何組合,隨機事務(wù)速率被最大化。 對每個(gè)端口的訪(fǎng)問(wèn)是通過(guò)以雙倍數據速率(即時(shí)鐘的兩個(gè)邊沿)運行的公共地址總線(xiàn)(A)。 端口A(yíng)的地址在輸入時(shí)鐘(CK)的上升沿鎖存,端口B的地址在CK的下降沿或CK#的上升沿鎖存。 控制信號(LDA#,LDB#,RWA#和RWB#)以單數據速率(SDR)運行,它們決定是執行讀操作還是寫(xiě)操作。 兩個(gè)數據端口(DQA和DQB)都配有雙倍數據速率(DDR)接口。 該器件采用2字突發(fā)架構。 它提供×18和×36數據總線(xiàn)寬度。
QDR-IV XP SRAM器件具有一個(gè)組切換選項。分組操作一節描述了如何使用組切換,讓器件能夠以更高的頻率和RTR工作。
時(shí)鐘信號說(shuō)明
CK/CK#時(shí)鐘與以下地址和控制引腳相關(guān)聯(lián):An-A0、AINV、LDA#、LDB#、RWA#以及RWB#。CK/CK#時(shí)鐘與地址和控制信號中心對齊。
DKA/DKA#和DKB/DKB#是與輸入寫(xiě)數據相關(guān)聯(lián)的輸入時(shí)鐘。這些時(shí)鐘與輸入寫(xiě)數據中心對齊。
根據QDR-IV SRAM器件的數據總線(xiàn)寬度配置,表2顯示了輸入時(shí)鐘與輸入寫(xiě)數據之間的關(guān)系。為了確保指令和數據周期的正確時(shí)序,并確保正確的數據總線(xiàn)返回時(shí)間,DKA/DKA#和DKB/DKB#時(shí)鐘必須符合各自數據表中給出的CK?to?DKx斜率 (tCKDK)。

QKA/QKA#和QKB/QKB#是與讀取數據相關(guān)聯(lián)的輸出時(shí)鐘。這些時(shí)鐘與輸出讀取數據邊沿對齊。
QK/QK#是數據輸出時(shí)鐘,由內部鎖相環(huán)(PLL)生成。它與CK/CK#時(shí)鐘同步,并符合各自數據表中給出的CK?to?QKx斜率 (tCKQK)。
根據QDR-IV SRAM器件的數據總線(xiàn)帶寬的配置情況,表3顯示了輸出時(shí)鐘與讀取數據之間的關(guān)系。

讀/寫(xiě)操作
讀和寫(xiě)指令由控制輸入(LDA#、RWA#、LDB#和RWB#)和地址輸入驅動(dòng)。在輸入時(shí)鐘(CK)的上升沿上對端口A(yíng)控制輸入進(jìn)行采樣。在輸入時(shí)鐘的下降沿上對端口B控制輸入進(jìn)行采樣。
表4顯示的是端口A(yíng)和端口B的讀/寫(xiě)操作條件。

如圖2 和圖3 所示,對于QDR-IV HP SRAM,端口A(yíng)的讀取數據在CK的上升沿后整五個(gè)讀取延遲(RL)時(shí)鐘周期后才從DQA 引腳上輸出;對于QDR-IVXP SRAM,則需要八個(gè)讀延遲(RL)時(shí)鐘周期。CK信號的上升沿發(fā)生,同時(shí)讀取指令發(fā)出,經(jīng)過(guò)指定的RL時(shí)鐘周期后才可獲取數據。
對于QDR-IV HP SRAM,端口A(yíng)的寫(xiě)入數據在CK的上升沿后整三個(gè)寫(xiě)入延遲(WL)時(shí)鐘周期才傳輸至DQA 引腳;對于QDR-IV XP SRAM,則需要五個(gè)寫(xiě)延遲(WL) 時(shí)鐘周期。CK信號的上升沿發(fā)生,同時(shí)寫(xiě)入指令發(fā)出,經(jīng)過(guò)指定的RL時(shí)鐘周期后才可獲取數據。
對于QDR-IV HP SRAM,端口B的讀取數據在CK的上升沿后整五個(gè)RL 時(shí)鐘周期才從DQB引腳上輸出;對于QDR-IV XP SRAM,則需要八個(gè)RL 時(shí)鐘周期。CK信號的上升沿發(fā)生,同時(shí)讀取指令發(fā)出,經(jīng)過(guò)指定的RL時(shí)鐘周期后才可獲取數據。
對于QDR-IV HP SRAM,端口B的寫(xiě)入數據在CK的上升沿后整三個(gè)WL 時(shí)鐘周期才傳輸至DQB引腳;對于QDR-IV XP SRAM,則需要五個(gè)WL 時(shí)鐘周期。CK信號的上升沿發(fā)生,同時(shí)寫(xiě)入指令發(fā)出,經(jīng)過(guò)指定的RL時(shí)鐘周期后才可獲取數據。
QVLDA/QVLDB 信號表示相應端口上的有效輸出數據。在總線(xiàn)上驅動(dòng)第一個(gè)數據字的半周期前置位QVLDA 和QVLDB信號,并在總線(xiàn)上驅動(dòng)最后一個(gè)數據字的半周期前取消置位它們。最后數據字后的數據輸出是三態(tài)的。

旨在實(shí)現高速運行的分組操作
QDR-IV XP SRAM 的設計是為了支持頻率更高的八組模式(最大工作頻率 = 1066 MHz),而QDR-IV HP SRAM 則支持頻率較低的無(wú)分組模式(最大工作頻率 = 667 MHz)。
QDR-IV XP 中較低的三個(gè)地址引腳(A2、A1 和A0)選擇了在讀或寫(xiě)期間將要訪(fǎng)問(wèn)的組。唯一的分組限制是在每個(gè)時(shí)鐘周期內該組僅能被訪(fǎng)問(wèn)一次。QDR-IV XP SRAM 的組訪(fǎng)問(wèn)規則要求在端口B 上訪(fǎng)問(wèn)的組地址與在端口A(yíng) 上訪(fǎng)問(wèn)的組地址不相同。
如果不符合分組限制,那么由于在時(shí)鐘的上升沿時(shí)已經(jīng)對讀/寫(xiě)操作進(jìn)行采樣,在端口A(yíng) 上則不會(huì )限制讀/寫(xiě)操作,但會(huì )禁止端口B 上的讀/寫(xiě)操作。QDR-IV HP SRAM 并沒(méi)有任何分組限制。

QDR-IV XP SRAM 上的分組限制可作為某些應用的一個(gè)優(yōu)點(diǎn),在這些應用中,存儲器中的每一組都有不同的用途,并且都不能在同一個(gè)時(shí)鐘周期中被訪(fǎng)問(wèn)兩次。一個(gè)網(wǎng)絡(luò )路由器能夠在QDR-IV XP SRAM 的每一組內儲存不同的路由表便是一個(gè)實(shí)例。如果在同一個(gè)時(shí)鐘周期內特定的路由表僅能被訪(fǎng)問(wèn)一次,則有可能實(shí)現高TRT (隨機數據傳輸速率)。在該情況下,工作頻率為1066 MHz 時(shí),可獲得的最高隨機數據傳輸速率為2132 MT/s。
分組限制不會(huì )影響到數據傳輸速率的另一種情況是使用物理層上的多個(gè)端口進(jìn)行設計,通過(guò)每一個(gè)端口可以直接訪(fǎng)問(wèn)存儲器中一組。這些端口將被復用到QDR-IV XP SRAM 的端口A(yíng) 和端口B。在該設計中,因為每一個(gè)組都連接了物理層上不同的端口,因此任何一個(gè)組都不能在同一個(gè)時(shí)鐘周期內被訪(fǎng)問(wèn)兩次。
不過(guò),如果第一次訪(fǎng)問(wèn)某一組是通過(guò)當前時(shí)鐘周期的下降沿上端口B 進(jìn)行的,并且第二次訪(fǎng)問(wèn)則是通過(guò)下一個(gè)時(shí)鐘周期的上升沿上端口A(yíng) 進(jìn)行的,那么可以在一個(gè)時(shí)鐘周期內再次對同一組進(jìn)行訪(fǎng)問(wèn)。如圖6所示,在進(jìn)行寫(xiě)操作期間,端口B 和端口A(yíng) 都可以在一個(gè)時(shí)鐘周期內訪(fǎng)問(wèn)組Y。同樣,在進(jìn)行讀操作期間,端口B 和端口A(yíng) 可以在一個(gè)時(shí)鐘周期內訪(fǎng)問(wèn)組X。

評論