CN1642116A - 异步传输模式反向复用的测试方法及设备 - Google Patents
异步传输模式反向复用的测试方法及设备 Download PDFInfo
- Publication number
- CN1642116A CN1642116A CN 200410002139 CN200410002139A CN1642116A CN 1642116 A CN1642116 A CN 1642116A CN 200410002139 CN200410002139 CN 200410002139 CN 200410002139 A CN200410002139 A CN 200410002139A CN 1642116 A CN1642116 A CN 1642116A
- Authority
- CN
- China
- Prior art keywords
- cell
- ima
- module
- atm
- interface
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种异步传输模式反向复用的测试方法及设备,其中方法为:产生用于测试的数据包并写入缓存;形成数据包的描述信息,根据描述信息从缓存中读取数据包并封装为AAL层的CS格式数据包;依据描述信息将数据包封装为ATM层的信元并发送至IMA处理器;由IMA处理器将信元流分配到多个物理链路上发送到被测对象,并获取AAL层、ATM层和IMA处理器的测试数据;和/或,接收被测对象发送来的信元;由IMA处理器将多个物理链路的信元组合成信元流;接收IMA处理器输出的信元流并根据信元在物理链路中的顺序将链路包的信元依次存入缓存中;读取所述链路包的描述信息;根据所述描述信息从缓存中读取数据内容,并从AAL层、ATM层和IMA处理器获取测试数据。
Description
技术领域
本发明涉及异步传输模式(ATM)技术,尤其涉及一种异步传输模式反向复用(Inverse Multiplexing for ATM,IMA)的测试方法及设备。
背景技术
ATM适配层(ATM Adaptation Layer,AAL层)位于ATM的上层,这一层是和业务相关的。针对不同的业务,其处理方法不尽相同,但都要将上层传来的信息分割层48字节长的ATM-SDU,然后传给ATM层,同时,将ATM层传来的ATM-SDU组装,恢复再传给上层。由于上层信息种类繁多,AAL层处理比较复杂,所以分了两个子层:会聚子层(CS)和拆装子层(SAR)。SAR层的主要功能是将各类业务处理成ATM层所需的固定长度分组,以及将ATM层的固定成长度分组恢复成原先的格式。CS主要进行与各类业务密切相关的处理,如时延、时延抖动、丢失、定时等。
ATM反向复用(Inverse Multiplexing for ATM)技术是将ATM集合信元流分接到多个低速链路上,在远端再将多个低速链路复接在一起恢复成原来的集成信元流,使多个低速链路灵活方便地复用起来,它是支持高速ATM信元流的一种实用方法。ATM反向复用技术包括复用和解复用ATM信元。完成反向复用和解复用的功能组称为IMA组。在发送方向上,从ATM层接收到的信元流以信元为基础,被分配到IMA组中的多个物理链路上。而在接收端,从不同物理链路上接收到的信元,以信元为基础,被重新组合成与初始信元流一样的信元流。
目前采用基于IMA的测试设备来测试通信设备的IMA功能,但这种测试设备需要使用结构复杂和价格昂贵的IMA模块,而且灵活性差和很难进行二次开发。
发明内容
本发明提供一种异步传输模式反向复用(IMA)的测试方法及设备,以解决现有技术存在成本高和灵活性差的问题。
本发明提供下述技术方案:
一种异步传输模式反向复用(IMA)的测试方法,该方法根据被测对象配置测试设备中的AAL层、ATM层和IMA处理器参数,并进行以下的下行数据测试步骤和/或上行数据测试步骤:
下行数据测试步骤包括:
A、产生用于测试的数据包并写入缓存;
B、形成所述数据包的描述信息;
C、根据描述信息从缓存中读取数据包并封装为AAL层的会聚子层(CS)格式的数据包;
D、依据所述描述信息将CS格式的数据包封装为ATM层的信元,并发送至IMA处理器;
E、由IMA处理器将信元流分配到多个物理链路上发送到被测对象,并获取AAL层、ATM层和IMA处理器的测试数据;
上行数据步骤包括步骤:
(1)、接收被测对象发送来的信元;
(2)、由IMA处理器将多个物理链路的信元组合成信元流;
(3)、接收IMA处理器输出的信元流,并根据信元在物理链路中的顺序将链路包的信元依次存入缓存中;
(4)、读取所述链路包的描述信息;
(5)、根据所述描述信息从缓存中读取数据内容,并从AAL层、ATM层和IMA处理器获取测试数据。
一种异步传输模块适配层(AAL)和ATM层处理模块,用于在数据和ATM信元之间进行转换;该模块包括:接口控制单元、下行数据处理单元和上行数据处理单元;所述接口控制单元与所述控制小系统连接,用于接收配置和命令,并向控制小系统提供测试结果数据;下行数据处理单元:在接口控制单元的控制下将测试数据转换为ATM信元输出至IMA模块;上行数据处理单元:将从IMA模块发送来的ATM信元转换后输出给接口控制单元。
其中:
所述接口控制单元包括:处理器(CPU)接口子模块,通过总线与连接控制小系统的处理器连接;寄存器接口子模块,与处理器接口了模块连接,通过该子模块进行参数配置;CPU发包子模块,在处理器控制下发送下行数据包的描述信息;CPU收包子模块,接收上行数据包的描述信息并提供给处理器;错误包存放接口子模块,将错误包的错误信息和整个包的内容存到存储器的特定单元。
所述下行数据处理单元包括:下行空闲缓冲区管理子模块,用于为下行数据分配缓冲区;下行存储器接口子模块,微处理器通过该子模块将下行数据写入缓冲区;读包缓冲区控制子模块,通过下行存储器接口子模块从缓冲读取待发送的数据包;会聚子层封装处理子模块,是把ATM信元的有效载荷按照适配规则封装为用户数据包。分段子模块,将数据包拆装为ATM信元载荷并封装为ATM信元;发送接口子模块,将分段子模块传送来的ATM信元按地址写入队列;
所述上行数据处理单元包括:接收接口子模块,用于接收IMA处理器传送来的ATM信元;包重组子模块,将接收接口子模块输出的ATM信元按顺序存入上行缓冲区;上行空闲缓冲区管理子模块,用于接收数据与和管理接口的缓冲区;查表接口子模块,接收过程根据接收的ATM信元的VPI、VCI查表,把信元重组为对应的数据包。
一种异步传输模式反向复用(IMA)测试设备,包括:异步传输模块适配层(AAL)和ATM层处理模块、IMA处理模块、E1/T1接口模块和控制小系统;所述控制小系统包括微处理器,并通过总线与AAL-ATM层处理模块、IMA处理模块和E1/T1接口模块连接,用于配置参数和获取测试数据;所述AAL-ATM层处理模块通过ATM层与物理层间的标准接口(UTOPIA)与所述IMA模块连接,将控制小系统产生的测试数据转换为ATM信元输出至IMA模块,以及将从IMA模块发送来的ATM信元转换后输出给控制小系统;所述IMA处理模块通过脉冲编码(PCM)接口与所述E1/T1接口模块连接,将AAL-ATM层处理模块输出的信元分配到IMA组中的多个物理链路上并通过PCM接口输出至E1/T1接口模块,以及将多个物理链路的信元重新组合为信元流并输出至AAL-ATM层处理模块;所述E1/T1接口模块通过E1/T1链路将IMA输出的信元输出至被测对象,以及将从E1/T1链路接收的信元通过PCM接口发送至IMA处理模块。
本发明由于采用软件配置AAL层协议和业务,用逻辑实现AAL层和ATM层的功能,所以具有很大的灵活性;用户可以在此基础上作二次开发,完成特殊的测试功能;支持对各协议层的统计和告警,而且成本低廉,可以很容易实现E1/T1链路数的扩充。
附图说明
图1为本发明的系统框图;
图2A、图2B为AAL层和ATM层处理模块结构图;
图3为测试设备发送测试数据的流程图;
图4为测试设备接收测试数据的流程图。
具体实施方式
参阅图1所示,测试设备包括异步传输模块适配层(AAL)-ATM层处理模块、IMA处理模块、E1/T1接口模块和控制小系统。控制小系统包括微处理器,通过总线与AAL-ATM层处理模块、IMA处理模块和E1/T1接口模块连接,用于配置参数和获取测试数据;AAL-ATM层处理模块通过ATM层与物理层间的标准接口(UTOPIA)与所述IMA模块连接,将控制小系统发送来的信息转换为ATM信元输出至IMA模块,以及将从IMA模块发送来的ATM信元转换后输出给控制小系统;IMA处理模块通过脉冲编码(PCM)接口与所述E1/T1接口模块连接,将AAL-ATM层处理模块输出的信元分配到IMA组中的多个物理链路上并通过PCM接口输出至E1/T1接口模块,以及将多个物理链路的信元重新组合为信元流并输出至AAL-ATM层处理模块;E1/T1接口模块通过E1/T1链路将IMA输出的信元输出至被测对象,以及将从E1/T1链路接收的信元通过PCM接口发送至IMA处理模块。
在AAL-ATM层处理模块中,AAL层实现将上层传来的信息分割成48字节长的ATM业务数据单元,然后传给ATM层;同时,将ATM层传来的ATM业务数据单元组装,再传给上层。AAL层支持的专用业务(如传递信令、IP数据等),由CPU完成,这样做可以灵活配置上层协议和业务。
IMA模块由一片IMA专用芯片和SRAM组成。上电初始化自检完成后,CPU响应命令行发出的配置指令完成对IMA专用芯片的业务配置。包括增加IMA组,对每一IMA组添加IMA链路,针对每一IMA链路选择是否设置绕码以及选择E1还是T1模式。同时在业务运行时支持:实时查询IMA组状态;添加或者删除IMA组;查询IMA链路状态;添加或者删除IMA链路;阻塞、解阻塞、软复位IMA组状态机;实时IMA层地统计和告警上报;基于IMA组的IMA控制信元地跟踪诊断;设置UTOPIA环回、线路环回或串行链路环回。
IMA专用芯片实现以下功能:
1、产生新的信元头差错控制字节;
2、提供信元定界;
3、产生和插入IMA控制信元、填充信元;
4、提供IMA帧同步;
5、用外部的异步SRAM进行ATM信元的排序,最大可处理226ms的E1线路延时或279ms的T1线路延时;
6、实现IMA层的环回诊断测试;
7、与ATM层模块间的接口为标准UTOPIA L2,与E1/T1成帧芯片间为PCM接口。
在上行方向,从E1/T1接口提取ATM信元并进行IMA解复用后通过UTOPIA L2总线发送到上层;在下行方向,从UTOPIA L2总线接收ATM信元进行IMA反向复用分发到不同的E1/T1链路进行传输。
E1/T1接口选用2片E1/T1成帧芯片(每片出4路E1/T1),实现8路E1/T1信号收发。采用硬件兼容的芯片可以很方便的扩展到32路E1/T1。该模块实现以下功能:
1、物理链路层地统计和告警上报;
2、输出E1/T1波型可编程,实现同一电路的T1/E1兼容;
3、提供远端环回、负载环回、本地环回和单通道环回诊断测试功能
参阅图2A所示,AAL-ATM层处理模块包括:接口控制单元、下行数据处理单元和上行数据处理单元。
接口控制单元与所述控制小系统连接,用于接收配置和命令,并向控制小系统提供测试结果数据;下行数据处理单元:在接口控制单元的控制下将测试数据转换为ATM信元输出至IMA模块;上行数据处理单元:将从IMA模块发送来的ATM信元转换后输出给接口控制单元。
接口控制单元、下行数据处理单元和上行数据处理单元包括的子模块如图2B所示。其中:
CPU接口子模块(CPU_IF):是CPU接口,是一个CPU的局部总线,包括地址线、数据线和控制线;
寄存器接口子模块(HOST_REG):CPU的配置均需通过该模块,它完成对FPGA和FPGA外围存储器的读写。CPU_IF和逻辑间的操作是通过寄存器接口了模块来管理的。具体包括如下功能:
1、向逻辑配置一些静态寄存器作为系统参数;
2、同时,将逻辑中的一些重要寄存器集中映射到一片指定的地址空间;
3、提供CPURX、CPUTX、CPURX_ERR和CPU_IF的接口;
4、提供CPU对SDRAM、SSRAM操作时分配和释放地址。
CPU发包子模块(CPU_TX):CPU控制发包模块,包括发包控制寄存器和发包缓存等。
CPU收包子模块(CPU_RX):CPU接收包模块,主要处理接收包直传给CPU的情况;
下行存储器接口子模块(Down SDRAM_BIU):该部分完成内部逻辑对外挂SDRAM的读取数据功能和CPU对SDRAM的写数据功能;
CS层封装处理子模块(CPCS_PROCESS):该模块是下行的主要逻辑功能模块。CPCS_PROCESS模块根据从CPU_TX模块接收到的包描述信息中的地址信息和包长度信息,通过RBC模块读取当前要发送的数据包内容(RBC模块也需要通过Down SDRAM_BIU模块读取SDRAM的包数据),并对读出来的包数据进行CRC32校验计算,同时根据包的长度信息计算要填充的字节数;读取完一个包后,CPCS_PROCESS模块需要向EFBM模块申请释放该包所占的缓冲区。最后把CRC32计算出来的最后结果、填充字节、CPCS-UU、CPI、包载荷长度值等添加到包末尾,封装成AAL5的CPCS包格式,发送到SEG模块,并把VPI/VCI、CLP、CI值也一起告诉SEG模块。
为了适应测试要求,发送方向增加故意制造错误包的功能。由CPU在启动逻辑发送前先初始化逻辑,告诉逻辑需要制造的错误类型。CPCS_PORCESS逻辑把从CPU收到的包按该要求发送该种类型的错误包,直到CPU命令发送停止;
读包缓冲区控制子模块(RBC):该模块是CPCS_PROCESS和DownSDRAM_BIU之间的连接通道,向CPCS_PROCESS提供了一个包级的从SDRAM中读取数据的接口。CPCS_PROCESS把需要从SDRAM中读取的包数据的长度、基地址送给RBC模块,RBC模块从SDRAM中读取数据(要分多次读,才能读完,具体由RBC处理),并写入RBC FIFO,通过一些握手信号和CPCS_PROCESS模块配合,保证数据的正确性和完整性;
分段子模块(SEG):SEG模块把从CPCS_PROCESS模块的FIFO接收到的包数据按48Bytes为单位拆装成ATM信元载荷格式,并根据包描述信息给拆装后的ATM信元载荷添加上ATM信元头(包括VPI/VCI值、CLP值等),如果该信元是当前包的最后一个信元,则把ATM信元头的PTI最低位置为1,否则PTI最低位置为0。SEG把封装好的ATM信元(格式按与接口FPGA的信元格式)写到SEG模块的FIFO中(16位),该FIFO是信元级的握手。TX_IF模块发现SEG模块的FIFO非空(至少有一个信元),则读取信元,并由TX_IF模块按照分析FPGA和接口FPGA的接口信号和时序要求把信元发送到接口。SEG模块完成了一个包的处理后,对发送包的计数进行累加1;
发送接口子模块(TX_IF):该模块主要是完成从FPGA到接口的发送信元接口时序适配。具体时序请参考前面的外部接口部分描述。TX_IF模块发现SEG模块的FIFO非空(至少有一个信元),则读取信元,并由TX_IF模块按照FPGA和外部接口信号和时序要求把信元发送出去;
接收接口子模块(RX_IF):该模块主要是完成从外部接口到FPGA的接收信元接口时序适配。RX_IF模块把收到的信元数据(包括信元头标志SOC)直接写进RX_IF模块的FIFO,该FIFO是信元级的握手,数据宽度是17位(16位数据线+SOC信元开始标志);当RSM模块发现RX_IF模块的FIFO为非空(至少有一个信元)而且需要新接收处理一个包,则开始读取信元;
包重组子模块(RSM):由于在收完一个连接包的所有信元前,会接收到其他连接的包信元数据。故RSM模块需要提取收到的信元的VPI/VCI,查找HASH表,得出索引VCC_INDEX,根据该VCC_INDEX查找该信元对应的连接表信息(存放在外围SSRAM内)。根据连接表的信息可以判断当前的连接是否为有效的连接,如果不是有效的连接,则掉去该信元,不做任何处理。如果是有效的连接,则判断当前的信元是否为该连接的第一个信元(该包的第一个信元),如果是则向IFBM模块申请SDRAM缓冲区;如果不是第一个信元,则从连接表信息中可获取当前信元的SDRAM缓冲区存放位置、CRC32初始值、信元计数值。RSM模块把信元载荷同时写到SDRAM缓冲区和存放错误包的SSRAM内,并对该信元载荷数据进行CRC32计算。一个信元处理完成后,把新的CRC32计算值、下一个信元在SDRAM的缓冲区地址、当前信元计数等信息回写到连接表信息中,进行更新。
当接收到某一个连接包的最后一个信元,RSM模块提取收到的包尾信息,判断收到的CRC描述值是否与逻辑计算的CRC32值相同,并同时判断CPI的值、LENGTH字段(长度描述字段)值、包填充字段长度是否有错误。如果任何一项有错误,都会则直接向IFBM模块申请释放该包所占的SDRAM缓冲区。
对于错误包存放的SSRAM缓冲区的管理,是固定分配32个缓冲块,每一个大小为64K,地址已经固定好(包的ID号就是包的基地址)。每一片SSRAM(512Kx16)有16个缓冲块,用两片的这样的SSRAM。下次来的包可以覆盖SSRAM中的原来占的正确的包的存放空间;但前面收到的错误包所占的缓冲区不能再存放当前包,需要用另外的缓冲区。目前测试仪最多只能存放32个错误包,供CPU读取分析。出现多于32个的错误包将不再存放。
RSM模块还需要对收到的包和各种错误类别的包进行计数,供CPU读取。
当RSM模块重组完一条连接的一个完整且正确无误的包后,把该包描述信息(包括VPI/VCI、CLP、CI、CPCS-UU、包长度、包存放的SDRAM缓冲区地址)写到CPU_RX队列中,并中断CPU,CPU通过CPU_RX读取该包的描述信息,根据包在SDRAM缓冲区的地址和长度信息,通过Up SDRAM_BIU接口模块直接从上行SDRAM相应的缓冲空间读取数据包内容,读完后向IFBM模块申请释放该包所占的SDRAM缓冲区。
如果CPU需要读取错误包载荷进行分析,需要先停止发送和接收,读取错误包ID,根据错误包ID,可以读取错误包在SSRAM的存放位置(包的ID号就是包的基地址)和包长度,再通过SSRAM_BIU2模块直接读取错误包载荷;
上行、下行空闲缓冲区管理子模块(FBM):EFBM和IFBM由于在功能和实现方法上是一样的,故放在一起描述,我们可以称为FBM模块。以下的FBM代表IFBM或EFBM。
FBM管理上(或下)行的空闲缓存,用于管理多个模块共享的缓存空间,提供多个模块各自的缓存块分配和释放接口。按照固定长度分配缓存块,维护每个缓存块的空闲标志,按照接口模块的请求进行缓存块的分配和释放。
由于逻辑的错误,以及其他一些无法预知的原因,被分配的缓存块可能会得不到释放,这样可能会造成整个缓存区被耗尽或接近耗尽,从而影响系统的性能。为了能在这种情况下恢复回来,IFBM、EFBM模块提供了双缓存区切换机制;
上行存储器接口模块(Up SDRAM_BIU):该部分完成内部逻辑对外挂SDRAM的写数据功能和CPU对SDRAM的读数据功能;
查表接口模块(SSRAM_BIU1):通过该部分实现内部逻辑对外部存放连接表的SSRAM的读写功能,即完成逻辑对连接表的操作。另外,提供接口给CPU读写,便于CPU进行读写诊断测试;
错误包存放接口模块(SSRAM_BIU2):该部分完成内部逻辑对外挂SSRAM的写错误包数据功能和CPU对SSRAM的读错误包数据功能;
在测试前,由终端配置测试数据,CPU把数据配置到发送FPGA外的RAM里,同时CPU还要配置AAL层的适配信息和ATM的VPI、VCI,以及与IMA组的对应关系。当然IMA组的信息和IMA模式也都是由CPU配置的。
参阅图3所示,下行(发送测试数据)方向数据处理流程如下:
步骤10:产生用于测试的数据包并写入缓存;
步骤20:形成所述数据包的描述信息;
步骤30:根据描述信息从缓存中读取数据包并封装为AAL层的会聚子层(CS)格式的数据包;
步骤40:依据所述描述信息将CS格式的数据包封装为ATM层的信元,并发送至IMA处理器;
步骤50:由IMA处理器将信元流分配到多个物理链路上发送到被测对象
步骤60:获取AAL层、ATM层和IMA处理器的测试数据
下面结合附图2对上述流程进行详细说明:
CPU若想发送数据包(最大包长为64K Bytes),则CPU需要先向EFBM模块申请SDRAM缓冲区,EFBM模块如果还有缓冲区可以分配的话,则向CPU响应返回分配的SDRAM缓冲区地址。CPU获取该地址后,通过逻辑DownSDRAM_BIU接口模块直接向下行SDRAM相应的缓冲空间写要发送的数据包内容,写完后,CPU通过CPU_TX模块把该包的描述信息(包括包在SDRAM的存放地址、包的长度、VPI/VCI值,CLP值)发送给CPCS_PROCESS模块。
CPCS_PROCESS模块根据接收到的包描述信息中的地址信息和包长度信息,通过RBC模块读取当前要发送的数据包内容(RBC模块也需要通过DownSDRAM_BIU模块读取SDRAM的包数据),并对读出来的包数据进行CRC32校验计算,同时根据包的长度信息计算要填充的字节数;读取完一个包后,CPCS_PROCESS模块需要告诉EFBM模块释放该包所占的缓冲区。最后封装成AAL层的CS包格式,发送到SEG模块,并同时把VPI/VCI、CLP值也一起告诉SEG模块。SEG模块把接收到的包按48Bytes为单位拆装成ATM信元载荷,并添加上ATM信元头的VPI/VCI值、CLP值,如果该信元是当前包的最后一个信元,则把ATM信元头的PTI最低位置为1,否则PTI最低位置为0。SEG把封装好的ATM信元发送到TX_IF模块。
TX_IF模块根据发送信元的VPI/VCI值查找链路表得到发送地址,然后根据地址写入相应的FIFO。一个发送地址对应一个发送FIFO,FIFO深度为4个ATM信元。目前支持8个轮询地址,可以很方便地扩充。轮询对端IMA处理器,通过UTOPIA L2总线发送ATM信元。TX_CNT模块完成对已发送的包进行计数,供CPU读取。
在下行过程,CPU读取AAL层的发送包数,ATM层发送的信元数和IMA幀数,这些数值在测试仪数据接收时要同接收数据的对应值进行比较,通过比较结果来分析被测对象的好坏。
参阅图4所示,上行(接收测试数据)方向数据处理流程如下:
步骤100:接收被测对象发送来的信元;
步骤110:由IMA处理器将多个物理链路的信元组合成信元流;
步骤120:接收IMA处理器输出的信元流,并根据信元在物理链路中的顺序将一个链路包的信元依次存入缓存中;
步骤130:读取所述链路包的描述信息;
步骤140:根据所述描述信息从缓存中读取数据内容,
步骤150:并从AAL层、ATM层和IMA处理器获取测试数据
下面结合附图2对上述流程进行详细说明:
线路上的ATM信元通过RX_IF模块的UTOPIA L2总线接收缓存后送到RSM模块。由于在收完一个连接包的所有信元前,会接收到其他连接的信元。故RSM模块需要提取收到的信元的VPI/VCI,查找索引表,得出索引VCC_INDEX,根据该VCC_INDEX查找该信元对应的链路表信息。根据链路表的信息可以判断当前的链路是否为有效的链路,如果不是有效的链路,则丢弃该信元,不做任何处理;如果是有效的链路,则判断当前的信元是否为该链路的第一个信元(该包的第一个信元),如果是则向IFBM模块申请SDRAM缓冲区,如果不是第一个信元则从链路表信息中可得知当前信元的SDRAM缓冲区存放位置、CRC32初始值、信元计数值。RSM模块把信元同时写到SDRAM缓冲区和存放错误包的SSRAM内,并对该信元载荷数据进行CRC32计算。一个信元处理完成后,把CRC32值、下一个信元的缓冲的地址、当前信元计数等信息回写到链路表中进行更新。
接收完某一个链路包的最后一个信元后,RSM模块判断收到的CRC描述值是否与计算的CRC32值相同,并同时判断其他信息域是否有错误。如果任何一项有错误,都会则直接向IFBM模块申请释放该包所占的SDRAM缓冲区。目前最多能存放32个错误包,供CPU读取。RSM模块收到正确无误的包后,中断CPU,CPU通过CPU_RX模块读取该包的描述信息,CPU根据包在SDRAM缓冲区的地址和长度信息,通过Up SDRAM_BIU接口模块直接从上行SDRAM相应的缓冲空间读取数据包内容,读完后向IFBM模块申请释放该包所占的SDRAM缓冲区。至此,一个包的接收完毕。如果CPU要读取错误包的载荷,需要先停止发送和接收,读取错误包信息,根据错误包信息,读取错误包在SSRAM的存放位置和包长度,再通过SSRAM_BIU2模块直接读取。
CPU可以读取捕捉到的数据(存放在接收RAM里)。另外,CPU要读取AAL层的包统计计数值,和ATM层的信元计数值,以及IMA的幀计数值,同时接收还统计各层次错误的计数值和错误类型。CPU得到这些统计值并上报终端软件。
本发明的测试数据按AAL层、ATM层等分别进行控制产生,这样各层的数据独立,可进行灵活的测试数据产生;IMA模块独立于测试数据产生和分析功能模块,采用专门的芯片实现的,因此测试仪可以基于数据产生和分析模块构建其他功能的ATM测试仪(如ATM协议分析仪)。
Claims (16)
1、一种异步传输模式反向复用(IMA)的测试方法,其特征在于,根据被测对象配置测试设备中的AAL层、ATM层和IMA处理器参数,并进行以下的下行数据测试步骤和/或上行数据测试步骤:
下行数据测试步骤包括:
A、产生用于测试的数据包并写入缓存;
B、形成所述数据包的描述信息;
C、根据描述信息从缓存中读取数据包并封装为AAL层的会聚子层(CS)格式的数据包;
D、依据所述描述信息将CS格式的数据包封装为ATM层的信元,并发送至IMA处理器;
E、由IMA处理器将信元流分配到多个物理链路上发送到被测对象,并获取AAL层、ATM层和IMA处理器的测试数据;
上行数据步骤包括步骤:
(1)、接收被测对象发送来的信元;
(2)、由IMA处理器将多个物理链路的信元组合成信元流;
(3)、接收IMA处理器输出的信元流,并根据信元在物理链路中的顺序将链路包的信元依次存入缓存中;
(4)、读取所述链路包的描述信息;
(5)、根据所述描述信息从缓存中读取数据内容,并从AAL层、ATM层和IMA处理器获取测试数据。
2、如权利要求1所述的方法,其特征在于,步骤C包括:
根据描述信息中的地址信息和长度信息,从缓存中读取数据包内容;
对读取的数据进行校验计算和计算需要填充的字节数;
将读出的一个数据包封装为CS格式并释放相应的缓存。
3、如权利要求1所述的方法,其特征在于,步骤D包括:
将CS格式的数据包按48字节为单位拆分为ATM信元载荷;
在所述ATM信元载荷中加入信元头并封装成ATM信元;
根据信元的虚通道标识/虚通路标识(VPI/VCI)得到发送地址,并根据该地址将ATM信元写入先进先出队列(FIFO);
轮询IMA处理器,并向IMA处理器发送队列中的ATM信元。
4、如权利要求3所述的方法,其特征在于,每一个发送地址对应一个FIFO。
5、如权利要求1所述的方法,其特征在于,步骤E中所述AAL层、ATM层和IMA处理器的测试数据是指AAL层发送的数据包数、ATM层发送的信元数和IMA处理器的帧数。
6、如权利要求1所述的方法,其特征在于,在下行数据测试中,根据预先配置的产生错误数据包的类型故意制造相应的错误数据包,以满足测试要求。
7、如权利要求1所述的方法,其特征在于,步骤(3)包括:
接收信元并根据该信元的VPI/VCI查找到该信元对应的链路表信息;
根据链路表中的信息将信元写入相应的缓存,并计算校验数据和计数;
将下一信元的缓存地址、校验数据和计数写回链路表。
8、如权利要求7所述的方法,其特征在于,将信元写入缓存前先根据链路表信息判断当前的链路是否为有效链路,如果不是则丢弃所述信元。
9、如权利要求7或8所述的方法,其特征在于,当接收完一个链路包的最后一个信元时,将收到的该包的校验数据与计算得到的校验数据进行比较,如果两者不同则释放该链路包占用的缓存。
10、如权利要求1所述的方法,其特征在于,步骤(3)中,将接收的信元同时存入存放当前信元的缓存和存放错误包的缓存中。
11、如权利要求1所述的方法,其特征在于,步骤(5)中,处理器获取测试数据包括从缓存中获取接收的数据内容、读取AAL层的包统计计数值、ATM层的信元计数值和IMA的帧计数值。
12、一种异步传输模块适配层(AAL)和ATM层处理模块,用于进行数据与ATM信元之间的转换;其特征在于包括:接口控制单元、下行数据处理单元和上行数据处理单元;
所述接口控制单元与所述控制小系统连接,用于接收配置和命令,并向控制小系统提供测试结果数据;
下行数据处理单元:在接口控制单元的控制下将测试数据转换为ATM信元输出至IMA模块;
上行数据处理单元:将从IMA模块发送来的ATM信元转换后输出给接口控制单元。
13、如权利要求12所述的处理模块,其特征在于,所述接口控制单元包括:
处理器(CPU)接口子模块,通过总线与连接控制小系统的处理器连接;
寄存器接口子模块,与处理器接口了模块连接,通过该子模块进行参数配置;
CPU发包子模块,在处理器控制下发送下行数据包的描述信息;
CPU收包子模块,接收上行数据包的描述信息并提供给处理器;
错误包存放接口子模块,将错误包的错误信息和整个包的内容存到存储器的特定单元。
14、如权利要求12所述的处理模块,其特征在于,所述下行数据处理单元包括:
下行空闲缓冲区管理子模块,用于为下行数据分配缓冲区;
下行存储器接口子模块,微处理器通过该子模块将下行数据写入缓冲区;
读包缓冲区控制子模块,通过下行存储器接口子模块从缓冲读取待发送的数据包;
会聚子层封装处理子模块,是把ATM信元的有效载荷按照适配规则封装为用户数据包。
分段子模块,将数据包拆装为ATM信元载荷并封装为ATM信元;
发送接口子模块,将分段子模块传送来的ATM信元按地址写入队列;
15、如权利要求12、13或14所述的处理模块,其特征在于,所述上行数据处理单元包括:
接收接口子模块,用于接收IMA处理器传送来的ATM信元;
包重组子模块,将接收接口子模块输出的ATM信元按顺序存入上行缓冲区;
上行空闲缓冲区管理子模块,用于接收数据与和管理接口的缓冲区;
查表接口子模块,接收过程根据接收的ATM信元的VPI、VCI查表,把信元重组为对应的数据包。
16、一种异步传输模式反向复用(IMA)测试设备,其特征在于包括:异步传输模块适配层(AAL)-ATM层处理模块、IMA处理模块、E1/T1接口模块和控制小系统;
所述控制小系统包括微处理器,并通过总线与AAL-ATM层处理模块、IMA处理模块和E1/T1接口模块连接,用于配置参数和获取测试数据;
所述AAL-ATM层处理模块通过ATM层与物理层间的标准接口(UTOPIA)与所述IMA模块连接,将控制小系统产生的测试数据转换为ATM信元输出至IMA模块,以及将从IMA模块发送来的ATM信元转换后输出给控制小系统;
所述IMA处理模块通过脉冲编码(PCM)接口与所述E1/T1接口模块连接,将AAL-ATM层处理模块输出的信元分配到IMA组中的多个物理链路上并通过PCM接口输出至E1/T1接口模块,以及将多个物理链路的信元重新组合为信元流并输出至AAL-ATM层处理模块;
所述E1/T1接口模块通过E1/T1链路将IMA输出的信元输出至被测对象,以及将从E1/T1链路接收的信元通过PCM接口发送至IMA处理模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100021396A CN100403700C (zh) | 2004-01-05 | 2004-01-05 | 异步传输模式反向复用的测试方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100021396A CN100403700C (zh) | 2004-01-05 | 2004-01-05 | 异步传输模式反向复用的测试方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1642116A true CN1642116A (zh) | 2005-07-20 |
CN100403700C CN100403700C (zh) | 2008-07-16 |
Family
ID=34867291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100021396A Expired - Fee Related CN100403700C (zh) | 2004-01-05 | 2004-01-05 | 异步传输模式反向复用的测试方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100403700C (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009009918A1 (en) * | 2007-07-13 | 2009-01-22 | Thomson Licensing | Data transmission and encapsulation |
CN101489324B (zh) * | 2009-03-03 | 2011-01-05 | 华为技术有限公司 | 建立链路的方法和装置 |
CN101621419B (zh) * | 2008-07-01 | 2011-12-14 | 大唐移动通信设备有限公司 | 可重用测试消息适配方法及系统 |
CN102420734A (zh) * | 2011-12-13 | 2012-04-18 | 北京交控科技有限公司 | 一种can总线拓扑结构实现系统 |
CN103178998A (zh) * | 2013-03-20 | 2013-06-26 | 中国人民解放军91404部队 | 一种测控数据传输方法和装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3819438B2 (ja) * | 1996-08-16 | 2006-09-06 | ノーテル・ネットワークス・リミテッド | ディジタル・データの逆多重化 |
KR100251779B1 (ko) * | 1997-07-25 | 2000-04-15 | 윤종용 | 피디에이취망과 에이티엠망 사이의 인터페이스 장치 |
CN1211864A (zh) * | 1997-08-20 | 1999-03-24 | 大宇通信株式会社 | 异步传送模式系统 |
US6205152B1 (en) * | 1997-12-31 | 2001-03-20 | Samsung Electronics Co., Ltd. | Frame relay-to-ATM interface circuit and method of operation |
JP3206537B2 (ja) * | 1998-02-09 | 2001-09-10 | 日本電気株式会社 | Atm通信装置の制御方法、atm通信装置及びその記録媒体 |
KR100304941B1 (ko) * | 1999-09-17 | 2001-11-07 | 서평원 | 다중 가상 채널을 지원하는 aal-2 처리 장치 |
KR100364745B1 (ko) * | 2000-12-19 | 2002-12-16 | 엘지전자 주식회사 | 입력 및 출력, 타임 큐(Queue)를 갖는 AAL2스위치 방법 및 시스템 |
-
2004
- 2004-01-05 CN CNB2004100021396A patent/CN100403700C/zh not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009009918A1 (en) * | 2007-07-13 | 2009-01-22 | Thomson Licensing | Data transmission and encapsulation |
CN101621419B (zh) * | 2008-07-01 | 2011-12-14 | 大唐移动通信设备有限公司 | 可重用测试消息适配方法及系统 |
CN101489324B (zh) * | 2009-03-03 | 2011-01-05 | 华为技术有限公司 | 建立链路的方法和装置 |
CN102420734A (zh) * | 2011-12-13 | 2012-04-18 | 北京交控科技有限公司 | 一种can总线拓扑结构实现系统 |
CN103178998A (zh) * | 2013-03-20 | 2013-06-26 | 中国人民解放军91404部队 | 一种测控数据传输方法和装置 |
CN103178998B (zh) * | 2013-03-20 | 2015-09-30 | 中国人民解放军91404部队 | 一种测控数据传输方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN100403700C (zh) | 2008-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140036681A1 (en) | Traffic generator with priority flow control | |
CN102065569B (zh) | 一种适用于wlan的以太网mac子层控制器 | |
CN102185833B (zh) | 一种基于fpga的fc i/o并行处理方法 | |
CN1442027A (zh) | 没有回声消除的ip语音通信 | |
CN108123894B (zh) | 一种基于Intel万兆网卡实现采样数据流低延迟传输的方法 | |
CN112272130B (zh) | 半导体测试机通信总线系统 | |
US6760333B1 (en) | Hybrid digital subscriber loop and voice-band universal serial bus modem | |
CN106598889A (zh) | 一种基于fpga夹层板的sata主控器 | |
CN109408424B (zh) | 一种基于PCIe接口的SpaceFibre总线数据采集方法 | |
US6804243B1 (en) | Hardware acceleration for segmentation of message packets in a universal serial bus peripheral device | |
CN100486224C (zh) | 一种基于fpga实现atm网络流量控制的装置及方法 | |
US7215670B1 (en) | Hardware acceleration for reassembly of message packets in a universal serial bus peripheral device | |
CN1642116A (zh) | 异步传输模式反向复用的测试方法及设备 | |
CN108614792A (zh) | 1394事务层数据包存储管理方法及电路 | |
CN100499516C (zh) | 分组交换设备流量监测查询方法及线卡采集器 | |
CN101064697A (zh) | 一种实现异步传输模式网络服务质量控制的装置和方法 | |
CN117331881A (zh) | 一种适用于宇航chiplet互联协议的数据传输系统 | |
CN104598430A (zh) | 一种cpu互联扩展系统的网络接口互联设计与控制系统 | |
CN116074253B (zh) | 一种报文链式转发方法及装置 | |
US20040066748A1 (en) | Method and apparatus for testing a data network | |
CN1917519B (zh) | 高级数据链路控制协议串行数据的并行传输方法及其系统 | |
Ciaccio et al. | Exploiting gigabit ethernet capacity for cluster applications | |
CN1738224A (zh) | Tdm数据与帧格式转换的电路及方法、传输交换系统及方法 | |
CN1529476A (zh) | 以太网与atm层对接数据转换校验装置及方法 | |
Varada et al. | Data flow and buffer management in multi-channel data link controller |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080716 Termination date: 20160105 |
|
EXPY | Termination of patent right or utility model |