SRAM、TCAM


SRAM、TCAM

  靜態隨機存取存儲器(Static Random-Access Memory,SRAM)是隨機存取存儲器的一種。所謂的“靜態”,是指這種存儲器只要保持通電,里面儲存的數據就可以恆常保持。相對之下,動態隨機存取存儲器(DRAM)里面所儲存的數據就需要周期性地更新。然而,當電力供應停止時,SRAM儲存的數據還是會消失(被稱為volatile memory),這與在斷電后還能儲存資料的ROM或閃存是不同的。SRAM不需要刷新電路即能保存它內部存儲的數據。而DRAM(Dynamic Random Access Memory)每隔一段時間,要刷新充電一次,否則內部的數據即會消失,因此SRAM具有較高的性能,但是SRAM也有它的缺點,即它的集成度較低,功耗較DRAM大 [1] ,相同容量的DRAM內存可以設計為較小的體積,但是SRAM卻需要很大的體積。同樣面積的硅片可以做出更大容量的DRAM,因此SRAM顯得更貴。SRAM主要用於二級高速緩存(Level2 Cache)。它利用晶體管來存儲數據。與DRAM相比,SRAM的速度快,但在相同面積中SRAM的容量要比其他類型的內存小。


  TCAM (ternary content addressable memory)是一種三態內容尋址存儲器,主要用於快速查找ACL、路由等表項。特點:

  1. TCAM 表內所有條目都可以並行訪問,比如,如果你有100條ACL,TCAM能一次就能對比這100條ACL進行對比操作,過去如果有100條ACL的話,需要第一條ACL對比完后再對比第二條,然后第三條,直至N條,效率很明顯沒有TCAM高。
  2. TCAM成本比較高,存儲空間的單位價格高於普通的sram,而且耗能也遠遠高於sram

  相關用途主要有:

  1. Ethernet Switching設備中的二層MAC地址、ARP/RARP解析和三層IP路由表項的存儲和查找;
  2. Emerging Protocols and functions方面的MPLS label表項的存儲和查找;

  應用:
  傳統的表項查找方法有很多,主要有:線型查找法、二叉樹查找法、哈希表查找等,這些查找方法都是基於SRAM的軟件查找方法,共同特點是查找速度慢。線型查找法需要遍歷表中的所有表項;二叉樹查找法需要遍歷樹中大多數節點,而且查找速度受樹的深度影響較大;哈希表查找法是軟件查找中較快的一種方法,它是根據設定的哈希函數H(key)和處理沖突方法將一組關鍵字映象到一個有限的地址區間上,並以關鍵字在地址區間中的象作為記錄在表中的存儲位置,這種表稱為哈希表或散列,所得存儲位置稱為哈希地址或散列地址。雖然哈希表查找法相對來說比較快,但還是滿足不了高速實時通信系統(如40G/100G POS)的極速查找需求。 基於硬件的TCAM查找法正是在這種背景下提出的,用此方法進行查找時,整個表項空間的所有數據在同一時刻被查詢,查找速度不受表項空間數據大小影響,每個時鍾周期完成一次查找,平均查找速度是基於SRAM算法查找的6倍,最好情況下,能達到128倍。
image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM