内容可寻址存储器CAM在交换机中的应用
摘要:介绍了内容可寻址存储器CAM MCM69C233的特点及使用。通过某交换机应用表明,可大幅度提高数据检索速度,增强系统可靠性。
关键词:CAM 数据检索 嵌入式实时控制系统 MAC RTOS
内容可寻址存储器CAM(Content Addressable Memory?是一种特殊的存储阵列。它具有将输入数据与CAM中存储的所有数据项同时进行比较,迅速判断输入数据是否与CAM中存储的数据项相匹配,并给出数据项对应地址和匹配信息的特点,因而被广泛地应用于通信、模式识别等领域。在某型号交换机的设计中,笔者应用MOTOROLA公司的CAM芯片——MCM69C233实现数据检索功能,既提高了系统资源的利用率,又保障了系统性能,大大缩短开发周期。
1 MCM69C233功能简述
CAM是一种基于RAM技术的存储器,数据项存储在CAM内部的阵列中。每个数据项的位数叫字宽,阵列内所有数据项的条数叫做CAM的深度,CAM的容量通过字宽和深度来表征。MCM69C233可存储4096条宽度为64 位的数据项。图1所示为MCM69C233的结构框图。
MCM69C233有两个数据端口:控制端口(Control Port)和匹配端口(Match Port)。控制端口用于CAM表(CAM Table)的操作,除用于数据项的增加/删除、校验、统计外,还可以读取芯片内部状态寄存器的信息。数据的检索通过匹配端口完成。尽管基于RAM技术,CAM的存储机制却与RAM大相径庭。如图1所示,MCM69C233没有用于确定内容存储地址的地址总线,地址线A0~A2用于对片内控制寄存器的寻址。在写CAM模式下,MCM69C233从控制端口数据线DQ0~DQ15读取需要写入的数据项,数据项的存储地址由芯片内部逻辑控制。
用户可对MCM69C233的匹配规则进行编程,在读CAM模式(查找匹配)时,MCM69C233直接从匹配口数据线MQ0~MQ31读入数据,并按照预先定义的匹配规则将输入数据项与阵列中的所有数据项进行并行比较。如果数据项存在,匹配口输出该数据项的索引值,且MS为0;如果数据项不存在,MS为1。由于比较过程只需一个时钟周期,所以速度极快。MCM69C233的最长匹配时间为210ns。
MCM69C233有两种工作模式:ATM模式和基本模式。ATM模式主要用于ATM交换机中对ATM信元的处理。基本模式的应用十分灵活,由于匹配规则可编程,用户可根据不同的应用场合实现检索功能。
2 应用实例
2.1 设计要求
某型号交换机根据产品定义用于ATM网络和基于以态网的城域网E-MAN(Ethernet Metropolitan Area Network)的连接。其ATM端口工作速率为155Mbps,以太网端口工作速率为100Mbps。系统数据流如图2所示。
图2 交换机系统数据流图
上行方向,交换机首先在系统内嵌的VP/VC通道表内检查每一个ATM信元内的虚通路值/虚链接值VPI/VCI(Virtual Pa
[1] [2] [3] [4] [5]