欢迎来到天天文库
浏览记录
ID:10660108
大小:56.00 KB
页数:5页
时间:2018-07-07
《内容可寻址存储器cam在交换机中的应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、内容可寻址存储器CAM在交换机中的应用
2、第1内容加载中...摘要:介绍了内容可寻址存储器CAMMCM69C233的特点及使用。通过某交换机应用表明,可大幅度提高数据检索速度,增强系统可靠性。关键词:CAM数据检索嵌入式实时控制系统MACRTOS内容可寻址存储器CAM(ContentAddressableMemory是一种特殊的存储阵列。它具有将输入数据与CAM中存储的所有数据项同时进行比较,迅速判断输入数据是否与CAM中存储的数据项相匹配,并给出数据项对应地址和匹配信息的特点,因而被广泛地应用于通信、模式识别等领域。
3、在某型号交换机的设计中,笔者应用MOTOROLA公司的CAM芯片——MCM69C233实现数据检索功能,既提高了系统资源的利用率,又保障了系统性能,大大缩短开发周期。1MCM69C233功能简述CAM是一种基于RAM技术的存储器,数据项存储在CAM内部的阵列中。每个数据项的位数叫字宽,阵列内所有数据项的条数叫做CAM的深度,CAM的容量通过字宽和深度来表征。MCM69C233可存储4096条宽度为64位的数据项。图1所示为MCM69C233的结构框图。MCM69C233有两个数据端口:控制端口(ControlPort)
4、和匹配端口(MatchPort)。控制端口用于CAM表(CAMTable)的操作,除用于数据项的增加/删除、校验、统计外,还可以读取芯片内部状态寄存器的信息。数据的检索通过匹配端口完成。尽管基于RAM技术,CAM的存储机制却与RAM大相径庭。如图1所示,MCM69C233没有用于确定内容存储地址的地址总线,地址线A0~A2用于对片内控制寄存器的寻址。在写CAM模式下,MCM69C233从控制端口数据线DQ0~DQ15读取需要写入的数据项,数据项的存储地址由芯片内部逻辑控制。用户可对MCM69C233的匹配规则进行编程,
5、在读CAM模式(查找匹配)时,MCM69C233直接从匹配口数据线MQ0~MQ31读入数据,并按照预先定义的匹配规则将输入数据项与阵列中的所有数据项进行并行比较。如果数据项存在,匹配口输出该数据项的索引值,且MS为0;如果数据项不存在,MS为1。由于比较过程只需一个时钟周期,所以速度极快。MCM69C233的最长匹配时间为210ns。MCM69C233有两种工作模式:ATM模式和基本模式。ATM模式主要用于ATM交换机中对ATM信元的处理。基本模式的应用十分灵活,由于匹配规则可编程,用户可根据不同的应用场合实现检索功能
6、。2应用实例2.1设计要求某型号交换机根据产品定义用于ATM网络和基于以态网的城域网E-MAN(EthernetMetropolitanAreaNetwork)的连接。其ATM端口工作速率为155Mbps,以太网端口工作速率为100Mbps。系统数据流如图2所示。利用硬件进行数据检索,通常采用两种策略一种是利用FPGA或CPLD等可编程逻辑器件定制数据检索单元。本系统两种地址的数据结构并不复杂,定制简单数据结构的检索单元体现不了可编程逻辑器件功能强大、灵活性强等优越性,并且这类器件的开发难度相对较大,完成后还需要相当
7、长一段时间进行测试。另一种策略是选择CAM实现数据检索。两者比较,本系统采用CAM。根据系统设计,本交换机采用两块CAM实现数据检索功能,MAC-CAM用于以太网帧的MAC地址检索,ATM-CAM用于ATM信元的VPI/VCI检索,如图2所示。2.2检索算法设计下面根据系统设计方案,以MAC-VP/VC表为例说明以太网侧数据检索功能的实现。如图3所示,MAC-VP/VC表由硬件、软件两个子模块构成。MAC-CAM表实现MAC地址到偏移地址的查询,这部分由硬件实现;RAM表实现偏移地址到配置信息的查询,这部分由软件实现;
8、两者通过偏移地址耦合。本系统将每一个VP/VC认为是一个用户端口,VP/VC的值保存在用户端口域。当进行MAC地址检索时,CPU首先以MAC地址为关键字通过MAC-CAM表的检索得到对应的偏移地址a,然后再根据公式(1)得到RAM表中该MAC地址的存储位置,并由此地址获得相关配置信息。RAM表中标志域1、标志域2分别表示用户MAC地址的状态信息,限于篇幅这里不详述了。RAM地址=基地址+a×b(1)公式(1)中,基地址是RAM表的起始地址;a是通过MAC-CAM表查询得到的偏移量,即MAC地址的索引值;b表示RAM表中
9、的一个表项的宽度为多少字节。与MAC-VP/VC表的实现基本相同,VPI/VCI通道表的实现也分为两部分,一部分由硬件CAM实现,另一部分由软件实现。执行VPI/VCI检索时,CPU先通过CAM得到某VPI/VCI的偏移地址,然后再根据该偏移地址得到RAM表中保存的具体配置。正是通过MAC-VP/VC表和VPI/VCI通道表,本系
此文档下载收益归作者所有