CAM 是Content Addressable Memory的缩写,即“内容寻址存储器”的意思,它是在传统的存储技术的基础上实现的联想记忆存储器,关于 CAM 的基本操作有三种: 1)
写操作:输入地址和数据,将数据写到指定的地址上,写入速度与 RAM相同; 2)
读操作:输入地址,返回该地址上的数据,读取速度与 RAM 相同; 3)
查找操作:输入待查数据,返回该数据被存储的地址
这也是CAM 的最主要用途,它能够从巨大的数据库中进行快速查找,并且返回最佳的匹配地址,最快查找速度能达到每秒一亿次以上
TCAM 是Ternary Content Addressable Memory的缩写,即“三态内容寻址存储器”的意思,它是从 CAM 的基础上发展而来的
一般的CAM 存储器中每个 bit 位的状态只有两个,“0”或“1”,而 TCAM 中每个 bit 位有三种状态,除掉“0”和“1”外,还有一个“don’t care”状态,所以称为“三态”,它是通过掩码来实现的,正是TCAM 的这个第三种状态特征使其既能进行精确匹配查找,又能进行模糊匹配查找,而 CAM 没有第三种状态,所以只能进行精确匹配查找
TCAM 器件的生产厂商主要有 Cypress、IDT 和 Netlogic 三家
这三家分别将TCAM 器件称作 Network Search Engine(NSE) 、Network Search Accelerator(NSA)和 Knowledge-based Processor(KBP)
TCAM 器件在通信领域种有非常广泛的应用,主要有: 1)
ATM Switching 设备中的VCI/VPI 转发和 ATM-to-MPLS or ATM-to-TCP-Flow 地址映射表项的存储和查找; 2)
Ethernet Switching 设备中的二层 MAC