CN103188174B - Atm多业务接入交换机中线速处理信元的方法和装置 - Google Patents

Atm多业务接入交换机中线速处理信元的方法和装置 Download PDF

Info

Publication number
CN103188174B
CN103188174B CN201110459962.XA CN201110459962A CN103188174B CN 103188174 B CN103188174 B CN 103188174B CN 201110459962 A CN201110459962 A CN 201110459962A CN 103188174 B CN103188174 B CN 103188174B
Authority
CN
China
Prior art keywords
vpi
vci
state machine
cell
fifo queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110459962.XA
Other languages
English (en)
Other versions
CN103188174A (zh
Inventor
王彦珍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd
Original Assignee
BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd filed Critical BEIJING DATANG GOHIGH SOFTWARE TECHNOLOGY Co Ltd
Priority to CN201110459962.XA priority Critical patent/CN103188174B/zh
Publication of CN103188174A publication Critical patent/CN103188174A/zh
Application granted granted Critical
Publication of CN103188174B publication Critical patent/CN103188174B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及一种ATM多业务接入交换机中线速处理信元的方法和装置,装置基于FPGA实现,包括入进转换VPI/VCI状态机与外出转换VPI/VCI状态机;每个物理端口的信元进方向设有入进接收FIFO队列与入进发送FIFO队列,信元出方向设有外出发送FIFO队列与外出接收FIFO队列;入进转换VPI/VCI状态机从不为空的入进接收FIFO队列中读取信元,并将经转换后的信元写入入进发送FIFO队列;外出转换VPI/VCI状态机从不为空的外出接收FIFO队列中读取信元,并将经转换后的信元写入外出发送FIFO队列。使用本发明的ATM交换机能够线速处理信元,提供数据的处理速率和吞吐量。

Description

ATM多业务接入交换机中线速处理信元的方法和装置
技术领域
本发明涉及一种在ATM多业务接入交换机中线速处理信元的方法和装置,属于ATM交换技术领域。
背景技术
ATM多业务接入交换机主要由交换芯片和成帧芯片组成,以实现各个业务子卡和ATM上联端口之间ATM信元的交换。实际应用中,交换芯片存在以下限制条件:若交换芯片支持的逻辑端口数为PID,其占用位宽为NPID,VPI占用位宽为NVPI,VCI占用位宽为NVCI,则需满足:NPID+NVPI+NVCI=16bit,比如,交换芯片支持30个逻辑端口,就要有5bit用于端口基地址,而NVPI+NVCI仅剩余11bit。可见,上联口建虚路径连接VPC和虚信道连接VCC可用的虚路径标志VPI与虚信道标志VCI数值较小,无法满足用户任意配置的需要。同时ATM协议中有规定:在用户网络接口(UNI,User Network Interface)模式下VPI占用8bit,VCI占用16bit;在网络节点接口(NNI,Network Node Interface)模式下VPI占用12bit,VCI占用16bit。
通常,用户组建ATM网络时都希望在ATM协议允许的范围内任意配置VPI与VCI,但由于上述交换芯片的限制条件要求VPI与VCI二者的位宽之和等于16-NPID而小于16bit,所以交换芯片只能识别出数值较小的VPI和VCI。这样,当用户配置时输入的VPI和VCI值较大时,就无法建立连接。以一个155M的上联口下挂20个DSLAM为例,需要在上联口建立至少20条VPC与20条VCC,如果用户使用的VCI编号从100开始,VCI的位数需要7位(由于27=128>100),而由于交换芯片支持的VPI与VCI的位数总和为11位,所以留给VPI的位数仅剩4位,即最大只能建16条VPC,更加严重的是,如果此时用户配置的VPI值大于16,那么一条VPC也不能建立,显然这无法满足业务开展的需要。
为解决上述问题,可在外部VPI/VCI(用户从上联口输入的符合ATM协议的VPI/VCI)和内部VPI/VCI(交换芯片能识别的VPI/VCI)之间建立某种映射关系,以进行相互转换。现有的一些VPI/VCI转换方法存在以下不足:
1)仅从外部VPI/VCI转换到内部VPI/VCI,没有进行双向转换。
2)通过某种运算关系获得的映射关系固定。比如外部VPI占用12bit,外部VCI占用16bit,假设逻辑端口数占用5bit,内部VPI占用3bit,内部VCI占用8bit,则利用取余函数mod(*)获得的映射关系为:内部VPI=mod(外部VPI/23),内部VCI=mod(外部VCI/28)。这种映射关系使得从外部VPI/VCI到内部VPI/VCI的映射为多到1的映射,而从内部VPI/VCI到外部VPI/VCI的映射就是1到多的映射,实际转换时不知如何选择。
3)VPI/VCI割裂开进行映射导致外部VPI/VCI不能真正的实现任意配置。例如,假设内部VPI占用3bit,内部VCI占用8bit,以内部VPI=外部VPI=1,内部VCI=外部VCI=0~255建立了256条连接,此时若要重新开辟一个VPI通道,如外部VPI=2,则外部VCI也只能用先前已经映射过的256个外部VCI中的一个,用户还是不能任意配置VCI。
4)只考虑了建VCC的情况,没有考虑建VPC的情况。
5)没有考虑多个端口的内部VPI/VCI和外部VPI/VCI的映射。
6)没有考虑到交换芯片的NPID、NVPI、NVCI是可配置可改变的情况。
另外,用户希望所使用的ATM多业务接入交换机性能足够高,即ATM交换机对接收到的信元能够尽快地得到处理并转发出去,而尽量避免排队现象。
发明内容
有鉴于上述原因,本发明的目的在于提供一种ATM多业务接入交换机中线速处理信元的方法和装置,能够提高数据的处理速率和吞吐量。
为实现上述目的,本发明采用以下技术方案:
一种ATM多业务接入交换机中线速处理信元的装置,基于FPGA实现,装置上设有若干物理端口,FPGA的第一数据输入/输出端与交换芯片连接,第二数据输入/输出端与成帧芯片连接,该装置包括:
入进转换VPI/VCI状态机与外出转换VPI/VCI状态机;
每个所述物理端口的信元进方向设有入进接收FIFO队列与入进发送FIFO队列,信元出方向设有外出发送FIFO队列与外出接收FIFO队列;
该入进转换VPI/VCI状态机从不为空的该入进接收FIFO队列中读取信元,并将该信元经处理后写入该入进发送FIFO队列;该外出转换VPI/VCI状态机从不为空的该外出接收FIFO队列中读取信元,并将该信元经转换后写入该外出发送FIFO队列。
FPGA的第一数据输入/输出端通过交换芯片接口模块与交换芯片连接,第二数据输入/输出端通过成帧芯片接口模块与成帧芯片连接;第三数据输入/输出端通过CAM接口模块与CAM连接,该CAM中存储有内部VPI/VCI和外部VPI/VCI一一对应关系的映射表;第四数据输入/输出端通过CPU接口模块与CPU连接。
所述入进转换VPI/VCI状态机根据端口的数目包括0端口入进转换VPI/VCI子状态机,1端口入进转换VPI/VCI子状态机,……,n端口入进转换VPI/VCI子状态机;所述外出转换VPI/VCI状态机根据端口的数目包括0端口外出转换VPI/VCI子状态机,1端口外出转换VPI/VCI子状态机,……,n端口外出转换VPI/VCI子状态机。
所述CPU中还设有软件更新表项状态机,该状态机用于更新所述CAM中存储的映射表。
该装置还包括仲裁模块,该仲裁模块用于判断所述n端口入进转换VPI/VCI子状态机、所述n端口外出转换VPI/VCI子状态机及所述软件更新表项状态机查找所述CAM的优先级。
所述0端口入进转换VPI/VCI子状态机、所述0端口外出转换VPI/VCI子状态机、所述1端口入进转换VPI/VCI子状态机、所述1端口外出转换VPI/VCI子状态机……所述n端口入进转换VPI/VCI子状态机、所述n端口外出转换VPI/VCI子状态机及所述软件更新表项状态机查找所述CAM的优先级从高到低依次排列。
一种基于权利要求1至6中任意一项所述装置实现的ATM多业务接入交换机中线速处理信元的方法,其特征在于:
信元由所述成帧芯片进入FPGA后,先存于所述入进接收FIFO队列中,所述入进转换VPI/VCI状态机从所述入进接收FIFO队列中读出该信元,并将该信元经过查找所述CAM中的映射表进行转换后,写入所述入进发送FIFO队列中;
信元由所述交换芯片进入FPGA后,先存于所述外出接收FIFO队列中,所述外出转换VPI/VCI状态机从所述外出接收FIFO队列中读出该信元,并将该信元经过查找所述CAM中的映射表进行转换后,写入所述外出发送FIFO队列中。
进一步地:
信元由所述成帧芯片进入FPGA后,先存于所述入进接收FIFO队列中,所述入进转换VPI/VCI状态机从所述入进接收FIFO队列中读出该信元的信元头,并根据该信元头查找所述CAM中的映射表,查找结果作为转换后的信元头由所述入进转换VPI/VCI状态机写入所述入进发送FIFO队列中,最后所述入进转换VPI/VCI状态机从所述入进接收FIFO队列中读取出该信元的原始负载并将该原始负载写入所述入进发送FIFO队列中;
信元由所述交换芯片进入FPGA后,先存于所述外出接收FIFO队列中,所述外出转换VPI/VCI状态机从所述外出接收FIFO队列中读出该信元的信元头,并根据该信元头查找所述CAM中的映射表,查找结果作为转换后的信元头由所述外出转换VPI/VCI状态机写入所述外出发送FIFO队列中,最后所述外出转换VPI/VCI状态机从所述外出接收FIFO队列中读出该信元的原始负载并写入所述外出发送FIFO队列中。
本发明的优点在于:
1)入进/外出转换VPI/VCI状态机与入进/外出接收/发送FIFO队列的配合工作使得装置能够线速处理信元,大大地提高了数据处理速率及数据吞吐量。
2)通过在CAM中建立内部VPI/VCI与外部VPI/VCI一一对应关系的映射表,由FPGA查找该映射表进行内部VPI/VCI和外部VPI/VCI之间的相互转换,以较低的成本有效地解决了用户在使用ATM多业务接入交换机时VPI/VCI受限的问题,使用户可以在ATM协议允许范围内任意的配置VPI和VCI,方便了ATM网络的构建和管理。
3)根据用户建连接的情况,可动态建立和维护内部VPI/VCI和外部VPI/VCI一一对应关系的映射表,避免了预存静态映射关系表带来的CAM资源紧张的问题,降低了对CAM容量的要求,从而降低了成本。
4)内部VPI/VCI和外部VPI/VCI的对应关系是随机生成的,这种映射方法是根据所建连接的种类(VPC或VCC)给外部VPI/VCI分配内部VPI/VCI,保证了映射关系的一一对应,使得内部VPI/VCI和外部VPI/VCI可进行双向转换。
5)适用于多个物理端口的VPI/VCI的转换。
6)适用于交换芯片的NPID、NVPI、NVCI可配置可改变的情况;
附图说明
图1为本发明装置的一具体实施例的结构示意图;
图2为本发明中内部VPI/VCI与外部VPI/VCI建立、删除映射关系及相互转换的流程示意图;
图3为本发明的映射方法流程图;
具体实施方式
以下结合附图和实施例对本发明作进一步详细的说明。
为使说明更加清楚明了,附图中相同的元件使用相同的标号标识。
图1为本发明装置的一具体实施例的结构示意图。如图所示,本发明的ATM多业务接入交换机中线速处理信元的装置1是基于FPGA实现的。其中,FPGA的第一数据输入/输出端通过交换芯片接口模块6与交换芯片2连接,第二数据输入/输出端通过成帧芯片接口模块7与成帧芯片3连接,该交换芯片接口模块6和成帧芯片接口模块7用于完成ATM信元在交换芯片2和成帧芯片3之间的交换。FPGA的第三数据输入/输出端通过内容可寻址寄存器CAM(content addressable memory)接口模块8与CAM 4连接,在该CAM 4中存储有内部VPI/VCI与外部VPI/VCI一一对应关系的映射表,FPGA的第四数据输入/输出端通过CPU接口模块9与CPU5连接,用于建立和维护该存储于CAM中的映射表。本发明的装置上设有若干物理端口。
利用图1所示装置实现VPI/VCI转换的方法为:经由成帧芯片3输入的携带外部VPI/VCI的ATM信元,先经FPGA查询所述的内部VPI/VCI与外部VPI/VCI一一对应关系的映射表,然后FPGA将该ATM信元转换为携带相应的内部VPI/VCI的ATM信元后交由交换芯片2处理;而由交换芯片2输入的携带内部VPI/VCI的ATM信元,先经FPGA查询所述的内部VPI/VCI与外部VPI/VCI一一对应关系的映射表,然后FPGA将该ATM信元转换为携带相应的外部VPI/VCI的ATM信元后交由成帧芯片3处理。
具体的说:上联端口经由成帧芯片3输入的携带外部VPI/VCI的ATM信元,先由FPGA从该ATM信元的信元头中提取出外部VPI/VCI,然后根据该外部VPI/VCI查询存储于CAM中的内部VPI/VCI与外部VPI/VCI一一对应关系的映射表,以获取对应的内部VPI/VCI,找到后FPGA将原有的外部VPI/VCI转换为该获取到的对应的内部VPI/VCI后生成新的信元头,FPGA将该新的信元头与原有ATM信元的负载部分组合生成新的ATM信元后交由交换芯片2处理;
而由交换芯片2处理后输入的携带内部VPI/VCI的ATM信元同样先由FPGA从该信元的信元头中提取出内部VPI/VCI,然后根据该内部VPI/VCI查询存储于CAM中的内部VPI/VCI与外部VPI/VCI一一对应关系的映射表,以获取对应的外部VPI/VCI,找到后FPGA将原有的内部VPI/VCI转换为该对应的外部VPI/VCI后生成新的信元头,FPGA将该新的信元头与原有ATM信元的负载部分组合生成新的ATM信元后经由成帧芯片3发送至上联端口。
图2为本发明内部VPI/VCI与外部VPI/VCI映射关系建立、删除及相互转换的流程示意图,图中的CAM 4中存储有内部VPI/VCI和外部VPI/VCI一一对应关系的映射表。
如图所示,内部VPI/VCI和外部VPI/VCI相互转换的过程为:
20:FPGA收到成帧芯片3发来的信元后,提取出信元头中的外部VPI/VCI;
21:FPGA查询CAM中存储的映射表,将外部VPI或VPI/VCI转换为对应的内部VPI或VPI/VCI;
若连接是VPC,则内部VPI和外部VPI单独映射,只需进行内部VPI和外部VPI的相互转换,此处只需将外部VPI转换为对应的内部VPI,VCI保持不变;
若连接是VCC,则内部VPI与VCI和外部VPI与VCI捆绑起来映射,需要同时进行内部VPI与VCI和外部VPI与VCI的相互转换,此处需同时将外部VPI与VCI转换为对应的内部VPI与VCI。
22:FPGA将转换后的信元发送给交换芯片2。
步骤21中信元头中的外部VPI或VPI/VCI转换为对应的内部VPI或VPI/VCI后,FPGA将经转换后的携带内部VPI或VPI/VCI的信元头部与原有信元的负载部分组合生成新的信元,并将该新的信元发送至交换芯片2。
23:FPGA收到由交换芯片2发来的信元,提取出信元头中的内部VPI/VCI;
24:FPGA查询CAM中存储的映射表,将内部VPI或VPI/VCI转换为对应的外部VPI或VPI/VCI;
若连接是VPC,只需将内部VPI转换为对应的外部VPI,VCI保持原样;若连接是VCC,需同时将内部VPI与VCI转换为对应的外部VPI与VCI。
25:将转换后的信元发送给成帧芯片3。
步骤24中信元头中的内部VPI或VPI/VCI转换为对应的外部VPI或VPI/VCI后,FPGA将经转换后的携带外部VPI或VPI/VCI的信元头部与原有信元的负载部分组合生成新的信元,并将该新的信元发送至成帧芯片3。
如图所示,内部VPI/VCI与外部VPI/VCI映射关系建立的过程为:
200:未建连接;
210:用户欲建立连接;
此时,用户需要输入:欲建连接VPC或是VCC以及不同端口对应的VPI、VCI。
220:首先判断当前已建连接数是否已达最大连接数,若是则此时无法再建立新的连接返回步骤200,若否则执行步骤230;
需要注意的是,虽然通过本发明可以实现ATM协议允许范围内用户任意的配置VPI和VCI,但是总的连接数是保持不变的。
230:判断连接是VPC还是VCC,若是VPC则执行步骤240,若是VCC则执行步骤241;
240:判断该端口该VPI是否已被占用,若已被占用则返回步骤200,若未被占用则执行步骤250;
即,要判断用户所配置的端口和输入的VPI是否已被占用。
250:软件在内存中建连接,分配内部VPI,并在CAM 4中存储的映射表中添加相应的VPI表项。
CAM中存储的映射表的数据格式如下(以端口0和端口1为例):
本实施例中的CAM为通用CAM芯片,8K的深度可以满足两个上联端口,每个端口最多4K条连接,支持级联扩展深度。数据总线宽度32bit,除数据线外还设有专门的地址/控制输入总线(AC Bus,13bit)和匹配结果输出总线(AABus,13bit),处理速度更快,数据吞吐量更高。
如上表所示,所述映射表包括CAM地址(12~0bit)和CAM内容(63~0bit),64bit的CAM内容作为利用外部VPI/VCI查找所述映射表以获取内部VPI/VCI的索引,通过屏蔽寄存器可对该64bit逐位进行屏蔽:屏蔽寄存器的某位为1表示需要屏蔽该位;若为0则不屏蔽该位。13bit的CAM地址作为利用内部VPI/VCI查找所述映射表以获取外部VPI/VCI的索引。
64bit索引中使用低30bit其它位保留,低30bit中15~0bit存放外部VCI,27~16bit存放外部VPI,第28bit存放端口号,第29bit存放VPC标志位,如果连接是VPC,该VPC标志位为1,如果连接是VCC,该VPC标志位为0。当已知外部VPI/VCI,欲查询内部VPI/VCI时,使用该64bit索引查找CAM中存储的所述映射表。具体地说:若连接是VPC,索引由1&端口号&外部VPI&0x0构成,即第29bitVPC标志位为1,第28bit端口号和27~16bit外部VPI就是用户输入的值,对于连接VPC,15~0bit外部VCI忽略用户输入的外部VCI值,恒为0x0;若连接是VCC,索引由0&端口号&外部VPI&外部VCI构成,即第29bitVPC标志位为0,第28bit端口号、27~16bit外部VPI及15~0bit外部VCI就是用户输入的值。这里要强调一点,如果连接是VPC,仅需关注VPI而无需关心VCI,此时,外部VCI和内部VCI在所述映射表中都设置成0x0。
CAM地址(12~0bit)用于存放端口号、内部VPI及内部VCI。当已知内部VPI/VCI,欲查询外部VPI/VCI时,需读该CAM地址,具体地说:若连接是VPC,用端口号&内部VPI&0x0组成CAM地址,若连接是VCC,用端口号&内部VPI&内部VCI组成CAM地址,同时读出CAM芯片专用的VB信号(该信号用于指示表项是否有效),如果该VB信号为1,说明该地址对应存储的表项有效,如果该VB信号为0,说明该地址对应存储的表项无效。本实施例中只有两个端口:端口0和端口1,该两个端口各自的内部VPI位宽分别为nvpi和NVPI,各自的内部VCI位宽分别为nvci和NVCI,即各端口的VPI/VCI的位宽可设成不同的值。
用户欲建立连接VPC时,需输入端口号和VPI/VCI,及所建连接为VPC,软件接收到上述数据后,先用索引(端口号&外部VPI)配合屏蔽寄存器查询CAM中存储的映射表以确定该输入的VPI是否被某VPC或VCC占用。若有匹配项,说明该VPI已被占用,此VPC不允许建立;若无匹配项,说明没有连接用过此VPI,软件给该外部VPI分配内部VPI,并向CAM地址(端口号&内部VPI&0x0)写入添加的表项,表项内容为:VPC置1,端口和外部VPI分别对应用户输入的值,外部VCI写入0x0,并将VB信号置1以表示该表项有效,到此完成了添加VPC的工作。
例如,若用户设置的npid为5,nvpi为3,nvci为8。用户输入端口号为0,外部VPI为3,外部VCI为1,所建连接为VPC。软件接收到上述数据后,先用索引0b0000000000011配合屏蔽寄存器0xFFFFFFFFD000FFFF查询CAM中存储的映射表以确定该输入的VPI是否被某VPC或VCC占用。若有匹配项,说明该VPI已被占用,此VPC不允许建立;若无匹配项,软件给该外部VPI分配内部VPI假设为7,并向CAM地址0b011100000000写入添加的表项:0x0000000020030000,并将该表项对应的VB信号置1,即完成了添加该条VPC的工作。
241:判断该端口该VPI是否已被某条VPC占用,若已被占用则返回步骤200,若未被占用则执行步骤251;
即,要判断用户所配置的端口和输入的VPI是否已被VPC占用。
251:判断该端口该VPI/VCI是否已被某VCC占用,若已被占用则返回步骤200,若未被占用则执行步骤261;
即,要判断所配置的端口和输入的VPI/VCI是否已被某VCC占用。
261:软件在内存中建连接,分配内部VPI/VCI,并在CAM 4中存储的映射表中添加相应的VPI/VCI表项。
用户欲建立连接VCC时,需输入VPI/VCI,及所建连接为VCC,软件接收到上述数据后,先用索引(1&端口号&外部VPI&0x0)查CAM中存储的映射表以确定该输入的VPI是否被某VPC占用。若有匹配项,说明VPI已被某VPC占用,此VCC不允许建立;若无匹配项,说明没有VPC用过此VPI,软件再用索引(0&端口号&外部VPI&外部VCI)查该映射表,若有匹配项,说明VPI/VCI已被用过,此连接不允许建立;若没匹配项,软件给该外部VPI/VCI分配内部VPI/VCI,并向CAM地址(端口号&内部VPI&内部VCI)写入添加的表项,表项内容为:VPC置0,端口和外部VPI/VCI分别对应用户输入的值,并将该表项对应的VB信号置1,即完成了添加该条VCC的工作。
例如,若用户设置的npid为5,nvpi为3,nvci为8,即用户输入端口号为0,外部VPI为3,外部VCI为1,所建连接为VCC。软件接收到上述数据后,先用索引0x20030000查询CAM中存储的映射表以确定该输入的VPI是否被某VPC占用。若有匹配项,说明VPI已被某VPC占用,此VCC不允许建立;若无匹配项,说明没有VPC用过此VPI,软件再用索引0x00030001查该映射表,若有匹配项,说明VPI/VCI已被用过,此连接不允许建立;若没匹配项,软件给该外部VPI/VCI分配内部VPI/VCI假设为7/2,并向CAM地址0b011100000010写入添加的表项:0x0000000000030001,并将该表项对应的VB信号置1,即完成了添加该条VCC的工作。
如图所示,内部VPI/VCI与外部VPI/VCI映射关系删除的过程为:
270:用户删除某连接;
280:判断删除的是VPC还是VCC,若是VPC则执行步骤290,若是VCC则执行步骤291;
290:软件在内存中删除该连接,并查询CAM 4中存储的映射表,并删除相应的VPI表项。
即,查询CAM中存储的映射表,根据用户欲删除的VPC对应的外部VPI删除相应的VPI表项。
291:软件在内存中删除该连接,并查询CAM 5中存储的映射表,并删除相应的VPI/VCI表项。
即,查询CAM中存储的映射表,根据用户欲删除的VCC对应的外部VPI/VCI删除相应的VPI/VCI表项。
用户删除连接时,若是VPC,先用索引(1&端口号&外部VPI&0x0)查CAM中存储的映射表以找到匹配的VPI表项,再通过将VB信号置0将匹配项的有效位复位;若是VCC,则先用索引(0&端口号&外部VPI&外部VCI)查CAM中存储的映射表以找到匹配的VPI/VCI项,再通过将VB信号置0将匹配项的有效位复位。
例如,用户删除一个VPC,该VPC的端口为0,外部VPI为3,先用索引0x20030000查CAM中存储的映射表以找到匹配的VPI表项,再将该匹配项对应的VB信号置0即删掉该表项。用户删除一个VCC,该VCC的端口为0,外部VPI/VCI为3/1,则先用索引0x00030001查找CAM中存储的映射表以找到匹配的VPI/VCI项,再将该匹配项对应的VB信号置0即删掉该表项。
为了保证内部VPI/VCI与外部VPI/VCI之间是一一对应的关系,所述映射表中内部VPI/VCI和外部VPI/VCI的对应关系是随机生成的,准确的说,内部VPI/VCI是根据连接类型和外部VPI/VCI随机分配的。具体的说,首先需要设置一个存放有待分配的内部VPI的VPI-FIFO队列,及若干存放有待分配的内部VCI的VCI-FIFO队列,且满足每个该VCI-FIFO队列对应一个该内部VPI;用户建连接时,若连接是VPC,则根据外部VPI从VPI-FIFO队列中读取数值以分配到对应的内部VPI;若连接是VCC,则根据外部VPI从VPI-FIFO队列中读取数值以分配到对应的内部VPI,再从该对应的内部VPI所对应的VCI-FIFO队列中读取数值以分配到对应的内部VCI。图3为本发明的映射方法流程图。如图所示,
建立连接时:
300:用户设置NPID、NVPI及NVCI;
用户建连接时,需要输入如下信息:所建连接是VPC还是VCC;某个端口的VPI/VCI,比如A端口(假设为上联端口0)的VPI/VCI,B端口(假设为上联端口1)的VPI/VCI。
310:初始化;
具体为:软件设计1个VPI-FIFO队列和2NVPI个VCI-FIFO队列。其中,VPI-FIFO队列中写入2NVPI个数,大小从0到2NVPI-1,作为可分配的内部VPI;VCI-FIFO队列中写入2NVCI个数,大小从0到2NVCI-1,作为可分配的内部VCI,且需满足每个VCI-FIFO队列对应一个VPI;同时,设置变量NUM用于统计VPI-FIFO队列中VPI的个数,设置变量NUMVPI用于统计VPI对应的VCI-FIFO队列中VCI的个数,以及设置寄存器VCCuseVPI。
320:未建连接;
330:判断所建连接为VPC还是VCC,若是VPC则执行步骤340,若是VCC则执行步骤341;
340:判断NUM值是否为0,若NUM等于0则返回步骤320,若NUM不等于0则执行步骤350;
350:读VPI-FIFO队列,用读取到的数值作为此次分配的内部VPI,同时NUM值减1。
341:判断寄存器VCCuseVPI是否有效,若无效则执行步骤351,若有效则执行步骤352;
即,读取寄存器VCCuseVPI的有效位,若有效位置位表示有效,若有效位为0表示无效。
351:判断NUM值是否为0,若NUM等于0则返回步骤320,若NUM不等于0,则执行步骤361;
361:读VPI-FIFO队列,用读取到的数值作为此次分配的内部VPI,并将该数值写入寄存器VCCuseVPI,该寄存器有效位置位,同时NUM值减1;
371:读步骤361中取得的内部VPI对应的VCI-FIFO队列,用读到的数值作为此次分配的内部VCI,同时将NUMVPI值减1。
352:读取寄存器VCCuseVPI中保存的VPI值作为此次分配的内部VPI;
362:读步骤352中取得的内部VPI对应的VCI-FIFO队列,用读取到的数值作为此次分配的内部VCI,同时NUMVPI值减1;
372:判断NUMVPI值是否为0,若为0则执行步骤382;
382:复位寄存器VCCuseVPI的有效位,即将该位置0。
删除连接时:
390:用户删除连接;
400:判断删除的连接是VPC还是VCC,若是VPC则执行步骤410,若是VCC则执行步骤411;
410:将该删除的VPC对应的内部VPI值写入VPI-FIFO队列,同时NUM值加1。
411:将该删除的VCC对应的内部VCI值写入对应的内部VPI所对应的VCI-FIFO队列,同时NUMVPI值加1;
421:判断NUMVPI值是否等于2NVCI,若等于则执行步骤431;
431:将该删除的VCC对应的内部VPI值写入VPI-FIFO队列,同时变量NUM值加1,并复位寄存器VCCuseVPI的有效位,即将该位置0。
如此一来,当连接是VPC时,通过读VPI-FIFO队列可获取内部VPI,即对于VPC,内部VPI和外部VPI单独作映射;当连接是VCC时,通过先读VPI-FIFO获取内部VPI,再读该内部VPI对应的VCI-FIFO队列以获取对应的内部VCI,并将该内部VPI用寄存器VCCuseVPI记录下来以供下个连接VCC分配VCI使用,即对于VCC,则内部VPI与VCI和外部VPI与VCI捆绑起来作映射。上述过程实现了根据连接类型VPI和VCI的随机分配,以及内部VPI/VCI和外部VPI/VCI的一一对应。
需要注意的是,上述VPI-FIFO队列和VCI-FIFO队列的大小不是无限的,而是受到NVPI和NVCI的制约,即用户虽然可任意配置NVPI和NVCI,但前提条件是在ATM协议允许的范围内,而且,无论内部VPI/VCI和外部VPI/VCI是否建立映射关系,交换机设备所支持的总的连接数保持不变。
以背景技术中提到的连接受限实际示例来说,若上联端口需要建20条VPC与20条VCC,此时该端口支持的VPI与VCI的bit数总和为11,用户使用的VCI从100开始。首先要保证能建20条VPC,这样VPI的bit数分配为5(25=32>20),VCI的bit数就为6。20条VPC建立后还剩25-20=12个VPI可用于建VCC,理论上用户共可建12×26=768条VCC。假如对内部VPI/VCI和外部VPI/VCI不进行映射和转换,则用户建连接时输入的VPI数值必须小于32,输入的VCI数值必须小于64,并且在建了20条VPC后再建VCC,只能用12个VPI,每个VPI最多64个VCI来组合VPI/VCI,用户使用的VCI想要从100开始根本是不可能的。而通过本发明的方法和装置,由FPGA将外部VPI/VCI转换为内部VPI/VCI,且二者一一对应,用户建连接时不再受VPI数值小于32,VCI数值小于64的限制,可以在ATM协议允许范围内任意设定,同时,用户建VCC时也不受12个VPI,每个VPI最多64个VCI的限制,因为用户任意配置的768个相异的外部VPI/VCI组合会被映射成交换芯片可以识别的12个内部VPI,每个VPI最多64个内部VCI的组合,如以下表格所示。
外部VPI(8bit) 外部VCI(16bit) 内部VPI(5bit) 内部VCI(6bit)
200(VPC) 0
201(VPC) 1
... ...
219(VPC) 19
0~63 100 20 0~63
64~127 100 21 0~63
128 200~263 22 0~63
128 264~327 23 0~63
128 100 24 0
... ... ... ...
如图1所示,为了实现FPGA能够线速处理信元,即在下一个信元到来前完成当前信元VPI/VCI的查映射表及转换工作,本发明的装置,于每个物理端口的信元进方向设置了入进接收FIFO队列10和入进发送FIFO队列11,信元出方向设置了外出接收FIFO队列13和外出发送FIFO队列12,用于实现状态机控制的信元的线速存储转发;FPGA中还设置了入进转换VPI/VCI状态机14和外出转换VPI/VCI状态机15以配合上述各FIFO队列对信元的线速存储转发。
以图1所示具体实施例中两个物理端口为例,信元由成帧芯片3进入FPGA后,先分别存于端口0和端口1的入进接收FIFO队列10中,然后FPGA从入进接收FIFO队列10中读出该信元的信元头,得到该信元的外部VPI和VCI;之后,利用索引(1&端口号&外部VPI&0x0)查询CAM 4中存储的映射表,若有匹配的表项,说明是VPC,根据该匹配的表项在CAM 4中的地址(CAM的AA Bus输出的数据)提取出对应的内部VPI,用该内部VPI更换信元头中的外部VPI;若无匹配的表项,再用索引(0&端口号&外部VPI&外部VCI)重新查询CAM 4中存储的映射表,若有匹配的表项,说明是VCC,根据该匹配的表项在CAM 4中的地址(CAM的AA Bus输出的数据)提取出对应的内部VPI/VCI,用该内部VPI/VCI更换信元头中的外部VPI/VCI,若无匹配的表项,则丢弃该信元。
FPGA将更换过VPI/VCI(外部VPI/VCI转换为内部VPI/VCI)的信元头和从入进接收FIFO队列10中读出的原有信元的负载部分组合生成新的信元写入入进发送FIFO队列11中,待交换芯片2轮询端口0和端口1时,就把该经过转换的新的信元发送到交换芯片2进行交换。
同样,在信元由交换芯片2交换到成帧芯片3的端口0和端口1前,先进入FPGA,将内部VPI/VCI转换为外部VPI/VCI后再送到成帧芯片3。但要注意的是,此时,FPGA转换VPI/VCI的过程与前述查映射表及转换的过程有所不同。具体为:
信元经交换芯片2进入FPGA,分别存于端口0和端口1的外出接收FIFO队列13中,然后FPGA从外出接收FIFO队列13中读取出该信元的信元头,以得到该信元的内部VPI/VCI;
之后,FPGA访问CAM地址(端口号&内部VPI/0x0),同时读CAM芯片的VB信号,若VB为1,且映射表对应表项中的VPC为1,说明是VPC,用该对应表项中的外部VPI更换信元头中的内部VPI;若VB为1,且对应表项中的VPC为0(如果内部VCI为0x0,可能会出现这种情况),说明是VCC,用对应表项中的外部VPI/VCI更换信元头中的内部VPI/VCI;若VB为0,说明表项无效,再重新访问CAM的地址(端口号&内部VPI/内部VCI),同时读VB信号,若VB为1,且对应表项中的VPC为0,说明是VCC,用该对应表项中的外部VPI/VCI更换信元头中的内部VPI/VCI。其他情况下将该信元丢弃。
FPGA将更换过VPI/VCI(内部VPI/VCI转换为外部VPI/VCI)的信元头和从外出接收FIFO队列13中读出的原有信元的负载部分组合生成新的信元写入外出发送FIFO队列12中,待成帧芯片3轮询到端口0和端口1时,在合适的时候就把该经过转换的新的信元发送到成帧芯片3相应的端口。
下面详细描述本实施例中入进/外出转换VPI/VCI状态机控制的信元的存储转发的过程,并分析了信元能否线速通过FPGA。
所述入进转换VPI/VCI状态机14包括0端口入进转换VPI/VCI子状态机、1端口入进转换VPI/VCI子状态机,……n端口入进转换VPI/VCI子状态机,该些子状态机工作过程完全一样,只是对应的端口不同;所述外出转换VPI/VCI状态机15包括0端口外出转换VPI/VCI子状态机、1端口外出转换VPI/VCI子状态机,……n端口外出转换VPI/VCI子状态机,该些子状态机的工作过程也完全一样,仅仅是对应的端口不同,上述子状态机工作时都会查CAM中存储的映射表,且n的数目取决于端口的数目。如图1,CPU 5中还设有软件更新表项状态机,该状态机也需要频繁地访问CAM以即时更新映射表。本实施例中,由于仅以两个端口为例,所以入进转换VPI/VCI状态机14包括0端口入进转换VPI/VCI子状态机和1端口入进转换VPI/VCI子状态机,外出转换VPI/VCI状态机15包括0端口外出转换VPI/VCI子状态机和1端口外出转换VPI/VCI子状态机。
ATM信元是固定长度的分组,共有53个字节,分为2个部分:前面5个字节为信头,主要完成寻址的功能(包含端口号、VPI、VCI等信息),后面48个字节为信息段,用于装载来自不同用户,不同业务的信息。
下面分析信元能否线速通过FPGA。一个上联口是155Mbps,因此最快2.6us(53*8/(155*1024*1024))来一个信元。FPGA的UTOPIA接口工作时钟是50MHz,FPGA用这个时钟查表,一拍为20ns。因此需要在130拍(2.6us/20ns=130clk)内完成对一个信元的处理才行。
以CAM芯片的比较周期和其他访问周期都是40ns为例分析,由于0端口入进查表、0端口外出查表、1端口入进查表、1端口外出查表及软件更新表项都要操作CAM,当一个对象操作CAM时,其他对象如果要查表或更新表项只能等他操作完后才能操作。入进查表是1~2个查找CAM操作,要占用CAM 4~8拍(查找一次CAM用4拍,第1拍FPGA给出比较数和控制信号,第2拍等待,第3拍CAM输出结果,第4拍FPGA取结果);外出查表是1~2个读CAM操作,要占用CAM 4~8拍(读一次CAM用4拍,第1拍FPGA给出地址和控制信号,第2拍等待,第3拍CAM输出数据,第4拍FPGA读取数据);软件更新表项的操作包括查找和写CAM两步(1~2个查找+1个写CAM),要占用CAM 8~12拍(写一次CAM用4拍,第1拍FPGA给出地址、数据和控制信号,第2拍等待,第3拍CAM输出满标志,第4拍FPGA读取满标志)。
入进转换VPI/VCI状态机14工作过程:
以0端口入进查表为例分析:只要0端口入进接收FIFO队列有存放一个信元的空间,从成帧芯片的0端口来的信元就可以进入0端口入进接收FIFO队列,只要该FIFO不空,FPGA的0端口入进转换VPI/VCI子状态机就开始读信元。假设该子状态机从入进接收FIFO队列读出信元头h1算第一拍...第四拍读出h4,得到查表索引要素(端口号&外部VPI&外部VCI),之后该子状态机利用该查表索引要素查找CAM中的映射表,第5拍可得到查映射表索引(1&端口号&外部VPI&0x0)和控制信号,第6拍等待,第7拍得到查表结果,第8拍根据查表结果判定是否进行第二次查找:若有匹配项,说明是VPC,根据查表结果重组信元头;若无匹配项,还需第二次查找,第9拍读出第二次查映射表索引(0&端口号&外部VPI&外部VCI)和控制信号,第10拍等待,第11拍得到第二次查表结果,第12拍根据查表结果判定是否丢弃该信元:若有匹配项,说明是VCC,根据查表结果重组信元头H1、H2、H3、H4,若无匹配项,丢弃该信元。第13拍该子状态机往0端口入进发送FIFO队列写H1...第16拍该子状态机往0端口入进发送FIFO队列写H4,同时从0端口入进接收FIFO队列读出信元头h5,第17拍该子状态机往0端口入进发送FIFO队列写h5,同时从0端口入进接收FIFO队列读出信元负载d1...第64拍该子状态机往0端口入进发送FIFO队列写d47,同时从0端口入进接收FIFO队列读出信元负载d48,第65拍该状态机往0端口入进发送FIFO队列写d48。入进发送FIFO队列保存多于一个信元时就会在交换芯片轮询到它时有效UTOPIA接口的clav信号,声明自己有信元要发,从而将信元发出。
外出转换VPI/VCI状态机15工作过程:
以0端口外出查表为例分析:只要0端口外出接收FIFO队列有存放一个信元的空间,从交换芯片来的信元就可以进入0端口外出接收FIFO队列,只要该FIFO不空,FPGA的0端口外出转换VPI/VCI子状态机就开始读信元。假设0端口外出转换VPI/VCI子状态机从外出接收FIFO队列读出信元头h1算第一拍...第四拍读出h4,得到查表索引要素(端口号&内部VPI&内部VCI),之后该子状态机利用该查表索引要素查找CAM中的映射表,第5拍得到CAM地址(端口号&内部VPI&0x0)和控制信号,第6拍等待,第7拍读出CAM输出数据和VB信号,第8拍根据VB信号值决定是否需要再次读CAM:若VB为1,用读到的数据重组信元头;若VB为0,还需再次读CAM,第9拍给出第二次读CAM地址(端口号&内部VPI&内部VCI)和控制信号,第10拍等待,第11拍读出CAM输出数据和VB,第12拍根据VB信号值决定是否丢弃信元:若VB为1,用读到的数据重组信元头;若VB为0,丢弃该信元。第13拍该子状态机往0端口外出发送FIFO队列写H1...第16拍该子状态机往0端口外出发送FIFO队列写H4,同时从0端口外出接收FIFO队列读出信元头h5,第17拍该状态机往0端口外出发送FIFO写h5,同时从0端口外出接收FIFO队列读出信元负载d1...第64拍该状态机往0端口外出发送FIFO队列写d47,同时从0端口外出接收FIFO队列读出信元负载d48,第65拍该子状态机往0端口外出发送FIFO队列写d48。外出发送FIFO队列保存多于一个信元时就会轮询成帧芯片,从而将信元发出。
设定0端口入进查表、0端口外出查表、1端口入进查表、1端口外出查表及软件更新表项占用CAM的优先级由高到低,即0端口入进查表优先级最高(优先级1),软件更新表项优先级最低(优先级5)。0端口入进转换VPI/VCI子状态机、1端口入进转换VPI/VCI子状态机、0端口外出转换VPI/VCI子状态机、1端口外出转换VPI/VCI子状态机及软件更新表项状态机分别维护各自的2bit标志位:即等待位和占用位。当某个子状态机或状态机需要用CAM时就置位自己的等待位;当CAM空闲时,用于判断优先级高低的仲裁模块按优先级从高到低轮询等待位,如果高优先级的子状态机处于等待状态,就将该子状态机的占用位置位,同时复位其等待位,等该子状态机用完CAM自动复位其占用位。
分析最糟糕情况下,信元能否线速通过FPGA:1端口外出转换VPI/VCI子状态机(优先级4)要用CAM,就向仲裁模块提出申请时,另外三个高优先级子状态机已经在排队等候或刚开始用CAM,1端口外出转换VPI/VCI子状态机得等候最多8+8+8=24拍才能操作CAM。这时,1端口外出转换VPI/VCI子状态机最多需65+24=89拍能处理完一个信元,因下一个信元在130拍之后才到达,因此可以保证信元线速通过FPGA。
软件更新表项状态机使用CAM的优先级最低,只有这样才能避免更新大量表项时长期占用CAM,而其他子状态机只能长时间等待的情况,从而保证信元线速通过FPGA。这样一来,在0端口入进转换VPI/VCI子状态机、1端口入进转换VPI/VCI子状态机、0端口外出转换VPI/VCI子状态机和1端口外出转换VPI/VCI子状态机都全速进行时,软件更新表项状态机的工作可能会被迫分多次进行,每次只更新几个表项。查表全速进行时,130拍中四个子状态机最多使用CAM 8+8+8+8=32拍,软件更新表项状态机最少可用130-32=98拍,可更新最少98/12=8条表项。
本发明通过在CAM中建立和维护内部VPI/VCI和外部VPI/VCI一一对应关系的映射表,可实现在ATM协议允许的范围内,用户任意配置VPI、VCI,解决了用户在使用ATM多业务接入交换机时VPI/VCI受限的问题,同时动态的建立和维护该映射表也节约了开发成本,入进及外出转换状态机与入进及外出FIFO的配合工作使得信元能够线速通过装置,大大地提高了数据处理速率。
以上所述是本发明的较佳实施例及其所运用的技术原理,对于本领域的技术人员来说,在不背离本发明的精神和范围的情况下,任何基于本发明技术方案基础上的等效变换、简单替换等显而易见的改变,均属于本发明保护范围之内。

Claims (5)

1.一种ATM多业务接入交换机中线速处理信元的装置,基于FPGA实现,装置上设有若干物理端口,FPGA的第一数据输入/输出端与交换芯片连接,第二数据输入/输出端与成帧芯片连接,其特征在于,该装置包括:
入进转换VPI/VCI状态机与外出转换VPI/VCI状态机;
每个所述物理端口的信元进方向设有入进接收FIFO队列与入进发送FIFO队列,信元出方向设有外出发送FIFO队列与外出接收FIFO队列;
该入进转换VPI/VCI状态机从不为空的该入进接收FIFO队列中读取信元,并将该信元经处理后写入该入进发送FIFO队列;该外出转换VPI/VCI状态机从不为空的该外出接收FIFO队列中读取信元,并将该信元经转换后写入该外出发送FIFO队列;
该入进转换VPI/VCI状态机根据端口的数目包括0端口入进转换VPI/VCI子状态机,1端口入进转换VPI/VCI子状态机,……,n端口入进转换VPI/VCI子状态机;该外出转换VPI/VCI状态机根据端口的数目包括0端口外出转换VPI/VCI子状态机,1端口外出转换VPI/VCI子状态机,……,n端口外出转换VPI/VCI子状态机;
该FPGA的第三数据输入/输出端与CAM连接,该CAM中存储有内部VPI/VCI和外部VPI/VCI一一对应关系的映射表,该FPGA的第四数据输入/输出端与CPU连接,该CPU中设有软件更新表项状态机,该状态机用于更新该CAM中存储的映射表;
仲裁模块,用于判断该n端口入进转换VPI/VCI子状态机、n端口外出转换VPI/VCI子状态机及该软件更新表项状态机查找该CAM的优先级。
2.如权利要求1所述的ATM多业务接入交换机中线速处理信元的装置,其特征在于:FPGA的第一数据输入/输出端通过交换芯片接口模块与交换芯片连接,第二数据输入/输出端通过成帧芯片接口模块与成帧芯片连接;第三数据输入/输出端通过CAM接口模块与CAM连接,第四数据输入/输出端通过CPU接口模块与CPU连接。
3.如权利要求2所述的ATM多业务接入交换机中线速处理信元的装置,其特征在于,所述0端口入进转换VPI/VCI子状态机、所述0端口外出转换VPI/VCI子状态机、所述1端口入进转换VPI/VCI子状态机、所述1端口外出转换VPI/VCI子状态机……所述n端口入进转换VPI/VCI子状态机、所述n端口外出转换VPI/VCI子状态机及所述软件更新表项状态机查找所述CAM的优先级从高到低依次排列。
4.一种基于权利要求1至3中任意一项所述装置实现的ATM多业务接入交换机中线速处理信元的方法,其特征在于:
信元由所述成帧芯片进入FPGA后,先存于所述入进接收FIFO队列中,所述入进转换VPI/VCI状态机从所述入进接收FIFO队列中读出该信元,并将该信元经过查找所述CAM中的映射表进行转换后,写入所述入进发送FIFO队列中;
信元由所述交换芯片进入FPGA后,先存于所述外出接收FIFO队列中,所述外出转换VPI/VCI状态机从所述外出接收FIFO队列中读出该信元,并将该信元经过查找所述CAM中的映射表进行转换后,写入所述外出发送FIFO队列中。
5.如权利要求4所述的ATM多业务接入交换机中线速处理信元的方法,其特征在于:
信元由所述成帧芯片进入FPGA后,先存于所述入进接收FIFO队列中,所述入进转换VPI/VCI状态机从所述入进接收FIFO队列中读出该信元的信元头,并根据该信元头查找所述CAM中的映射表,查找结果作为转换后的信元头由所述入进转换VPI/VCI状态机写入所述入进发送FIFO队列中,最后所述入进转换VPI/VCI状态机从所述入进接收FIFO队列中读取出该信元的原始负载并将该原始负载写入所述入进发送FIFO队列中;
信元由所述交换芯片进入FPGA后,先存于所述外出接收FIFO队列中,所述外出转换VPI/VCI状态机从所述外出接收FIFO队列中读出该信元的信元头,并根据该信元头查找所述CAM中的映射表,查找结果作为转换后的信元头由所述外出转换VPI/VCI状态机写入所述外出发送FIFO队列中,最后所述外出转换VPI/VCI状态机从所述外出接收FIFO队列中读出该信元的原始负载并写入所述外出发送FIFO队列中。
CN201110459962.XA 2011-12-31 2011-12-31 Atm多业务接入交换机中线速处理信元的方法和装置 Active CN103188174B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110459962.XA CN103188174B (zh) 2011-12-31 2011-12-31 Atm多业务接入交换机中线速处理信元的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110459962.XA CN103188174B (zh) 2011-12-31 2011-12-31 Atm多业务接入交换机中线速处理信元的方法和装置

Publications (2)

Publication Number Publication Date
CN103188174A CN103188174A (zh) 2013-07-03
CN103188174B true CN103188174B (zh) 2017-02-08

Family

ID=48679145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110459962.XA Active CN103188174B (zh) 2011-12-31 2011-12-31 Atm多业务接入交换机中线速处理信元的方法和装置

Country Status (1)

Country Link
CN (1) CN103188174B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107426347B (zh) * 2017-07-25 2021-03-19 深圳市中航比特通讯技术有限公司 一种三层网络接口装置及映射方法
EP4213446A4 (en) * 2020-10-14 2024-01-24 Huawei Tech Co Ltd WIFI CHIP, WIFI DEVICE AND QUEUE PLANNING METHOD

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020011513A (ko) * 2000-08-02 2002-02-09 서평원 스위칭 자원의 제한적인 사용을 제거한 에이티엠 스위칭시스템 및 그 데이터 처리방법
CN1728691A (zh) * 2004-07-26 2006-02-01 华为技术有限公司 Atm数据与帧格式转换的电路、方法及传输交换系统及方法
CN200980088Y (zh) * 2006-12-07 2007-11-21 大唐移动通信设备有限公司 异步转移模式中的信元变换装置和系统
US7382785B2 (en) * 2003-02-21 2008-06-03 At&T Knowledge Ventures, L.P. Extended virtual user-to-network interface with ATM network
CN101465795A (zh) * 2007-12-19 2009-06-24 大唐移动通信设备有限公司 一种信元的入口虚链接表索引查找方法及装置
CN101488834A (zh) * 2009-01-20 2009-07-22 重庆邮电大学 一种基于fpga的3g链路atm信元识别重组处理系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7212536B2 (en) * 2001-12-27 2007-05-01 Alcatel-Lucent Canada Inc. User priority mapping in bridged VLANS

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020011513A (ko) * 2000-08-02 2002-02-09 서평원 스위칭 자원의 제한적인 사용을 제거한 에이티엠 스위칭시스템 및 그 데이터 처리방법
US7382785B2 (en) * 2003-02-21 2008-06-03 At&T Knowledge Ventures, L.P. Extended virtual user-to-network interface with ATM network
CN1728691A (zh) * 2004-07-26 2006-02-01 华为技术有限公司 Atm数据与帧格式转换的电路、方法及传输交换系统及方法
CN200980088Y (zh) * 2006-12-07 2007-11-21 大唐移动通信设备有限公司 异步转移模式中的信元变换装置和系统
CN101465795A (zh) * 2007-12-19 2009-06-24 大唐移动通信设备有限公司 一种信元的入口虚链接表索引查找方法及装置
CN101488834A (zh) * 2009-01-20 2009-07-22 重庆邮电大学 一种基于fpga的3g链路atm信元识别重组处理系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于信元的地址映射算法;王琳珠;单忞;《工业仪表与自动化装置》;20071205(第6期);全文 *

Also Published As

Publication number Publication date
CN103188174A (zh) 2013-07-03

Similar Documents

Publication Publication Date Title
CN101252536B (zh) 路由器多队列数据包缓存管理与输出队列调度系统
AU632840B2 (en) An atm switching element for transmitting variable length cells
JP3035868B2 (ja) Atm交換のための方法および装置
US20030227925A1 (en) Packet processing device
CN100407701C (zh) 一种网络处理器
CN101873253A (zh) 带缓冲的纵横式交换机系统
KR19980063448A (ko) 라인 어댑터에 대한 부착을 허용하는 분산 엘리먼트를 구비하고 멀티캐스팅 능력을 가진 스위칭 시스템
CN104636085B (zh) 一种片上网络消息缓冲区的存储管理模块
CN109861931B (zh) 一种高速以太网交换芯片的存储冗余系统
US6324164B1 (en) Asynchronous transfer mode (A.T.M.) protocol adapter for a high speed cell switching system
CN101499956A (zh) 分级缓冲区管理系统及方法
CN103188174B (zh) Atm多业务接入交换机中线速处理信元的方法和装置
KR100387048B1 (ko) 중저속 가입자 멀티 캐스팅 구현 방법 및 장치
CN104486258B (zh) 一种基于交换通道的交换电路
CN103188170B (zh) Atm多业务接入交换机中vpi/vci转换的方法和装置
CN101043437B (zh) 一种快速发送操作、管理和维护信元的方法和装置
US8670454B2 (en) Dynamic assignment of data to switch-ingress buffers
CN100591036C (zh) 一种实现异步传输模式适配层功能的装置
CN110336756A (zh) 具有端口汇聚功能的Crossbar流量反压控制方法
Kumar et al. A shared-buffer direct-access (SBDA) switch architecture for ATM-based networks
US20030099261A1 (en) Multi-link segmentation and reassembly sublayer for bonding asynchronous transfer mode permanent virtual circuits
US6356552B1 (en) Method by which sets of values representing various parameters can be allocated to addresses
CN103188170A (zh) Atm多业务接入交换机中vpi/vci转换的方法和装置
Kumar et al. On Design of a Shared-Buffer based ATM Switch for Broadband ISDN
CN100425035C (zh) 基于变长包的交换系统及交换方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant