CN106375249A - 交换芯片数据架构、其控制方法及控制系统 - Google Patents

交换芯片数据架构、其控制方法及控制系统 Download PDF

Info

Publication number
CN106375249A
CN106375249A CN201610842213.8A CN201610842213A CN106375249A CN 106375249 A CN106375249 A CN 106375249A CN 201610842213 A CN201610842213 A CN 201610842213A CN 106375249 A CN106375249 A CN 106375249A
Authority
CN
China
Prior art keywords
pointer
information
write
memorizer
enable
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
Application number
CN201610842213.8A
Other languages
English (en)
Other versions
CN106375249B (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.)
Suzhou Centec Communications Co Ltd
Original Assignee
Centec Networks Suzhou 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 Centec Networks Suzhou Co Ltd filed Critical Centec Networks Suzhou Co Ltd
Priority to CN201610842213.8A priority Critical patent/CN106375249B/zh
Publication of CN106375249A publication Critical patent/CN106375249A/zh
Application granted granted Critical
Publication of CN106375249B publication Critical patent/CN106375249B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/109Integrated on microchip, e.g. switch-on-chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供的一种交换芯片数据架构、其控制方法及控制系统,所述交换芯片数据架构包括:多个独立维护的存储单元,所述存储单元包括:信息存储器、空闲指针存储器、指针信息存储器、尾指针存储器、头指针存储器、首信息指针存储器、空指示标志向量寄存器、首信息标志向量寄存器;其中,所述空指示标志向量寄存器的宽度以及所述首信息标志向量寄存器的宽度均等于队列的个数。本发明的交换芯片数据架构、其控制方法及控制系统,减少了存储器端口的数量,降低了控制逻辑复杂度,节省了芯片面积,并利于芯片后端实现。

Description

交换芯片数据架构、其控制方法及控制系统
技术领域
本发明涉及网络通信领域,尤其涉及一种交换芯片数据架构、其控制方法及控制系统。
背景技术
近年来,随着智能手机和移动互联网的普及,以及大数据、云计算的出现和运用,互联网迎来了加速度裂变式的新一轮革命;这场变革加速了核心交换机特别是数据中心交换机的端口带宽的演进,出现了10Gbps、40Gbps、100Gbps等许多高速端口,从而对交换机芯片内部处理带宽提出了严峻的要求;同时,随着互联网应用范围的不断扩大,支持的服务类型越来越多,从而要求核心交换芯片满足不同层次的QoS需求(QoS为Quality of Service的简称,中文译文为:服务质量)。为此,交换芯片往往需要将报文分发到多个队列进行调度处理。
图1所示为一般队列管理逻辑的结构图;为了满足出端口的高带宽,队列信息存储逻辑需要对不同队列的报文信息(以下简称信息)进行高速存取;一般采用链表的方式灵活地为不同队列分配存储器的存储地址;每个队列维护一个链表;要实现信息的高速存取,需要采用流水线的架构,同时必须保证在芯片的每个时钟周期都能同时读写信息。
结合图2所示, 现有技术中,一种交换芯片数据架构图,包括:信息存储器,用于存储经过所述交换芯片的报文的转发信息;空闲指针存储器,用于存储信息存储器中未被使用的指针;指针信息存储器,用于存储各个相互链接的指针;以及队列链表存储器,用于存储各个队列的链表信息,包括:头指针信息、尾指针信息以及空指示标志;其中,所述指针信息存储器与信息存储器的条目相等;所述链接表示:信息存储器中存储属于同一个队列在时间顺序上相邻的两个信息的任意地址之间所构成的逻辑联系,所述链表表示,信息存储器中相互链接的所有地址所组成数据结构,一个链表地址所存储的信息属于同一个队列;信息表示:固定长度的一段数据,可以分成多个字段,包含与报文转发相关的某些处理信息;指针表示,信息在存储器中的存储地址;头指针表示当前队列中最早存入信息存储器,即下一个即将被读出的信息所在的地址;尾指针表示当前队列最后存入信息存储器的地址;空指示标志:若其对应的队列标识为使能,则表示所述队列没有信息存储在信息存储器中;反之,表示一个队列有信息存储在信息存储器中。
针对现有技术的交换芯片的数据架构,读写过程中,均需要访问队列链表存储器,并对其相应的参数进行修改。对于现有的交换芯片数据架构,要满足同一个时钟周期同时执行1个入队列信息存储和1个出队列信息读取的操作,需要同时对队列链表存储器执行2次读操作和2次写操作;因此,队列链表存储器需要2个读端口和2个写端口,即要设计成2读2写的存储器,进一步的,如果要满足同一个时钟周期同时执行2个入队列信息存储和2个出队列读取的操作,由于需要同时对队列链表存储器执行4次读操作和4次写操作,如此,需要4读4写的存储器才能满足需求,现今的工艺还没有4读4写的存储器,只能采用特殊存储结构,其控制逻辑更为复杂,同时,相比2读2写的存储器面积会更大,同时也会带来后端布局布线拥塞的问题。
发明内容
为解决上述技术问题,本发明的目的在于提供一种交换芯片数据架构、其控制方法及控制系统。
为实现上述发明目的之一,本发明一实施方式提供的交换芯片数据架构包括:信息存储器,用于存储经过所述交换芯片的报文的转发信息;
空闲指针存储器,用于存储所述信息存储器中未被使用的地址;
指针信息存储器,用于存储各个相互链接的指针;
尾指针存储器,用于存储队列的尾指针;
头指针存储器,用于存储对转发信息执行读取操作时所维护的队列头指针;
首信息指针存储器,用于存储转发信息写入所述交换芯片过程中所维护队列的首信息指针;
空指示标志向量寄存器,用于维护每个队列的空指示标志;
首信息标志向量寄存器,用于记录每个队列的首信息是否有效;
其中,所述空指示标志向量寄存器的宽度以及所述首信息标志向量寄存器的宽度均等于队列的个数。为实现上述发明目的之一,本发明一实施方式提供的交换芯片数据架构的控制方法包括:转发信息写入所述交换芯片过程中,
获取转发信息的输入队列号及所述输入队列号对应的信息;
查询所述空闲指针存储器,获取空闲指针作为写指针;
将所述转发信息写入所述信息存储器对应所述写指针的地址中;
依据所述输入队列号调取所述空指示标志向量寄存器中相应的使能标识,
根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数。
作为本发明一实施方式的进一步改进,“根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数”具体包括:
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为使能状态,
则将首信息标志向量寄存器中对应当前输入队列的使能标识修改为使能,将写指针写入至首信息指针存储器对应当前输入队列号的地址中,并将所述空指示标志向量寄存器对应的当前输入队列号的使能标识修改为非使能;
同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中;
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为非使能状态,
则依据所述输入队列号调取其在所述尾指针存储器中对应尾指针的地址;
将所述写指针写入所述指针信息寄存器对应所述尾指针的地址中;同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中。
为实现上述发明目的之一,本发明一实施方式提供的交换芯片数据架构的控制方法包括:所述方法包括:
转发信息从所述交换芯片读出过程中,
获取转发信息的输出队列号及所述输出队列号对应的信息;
实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针;
调取所述信息存储器对应所述读指针中的转发信息,并释放所述读指针。
作为本发明一实施方式的进一步改进,“实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针”具体包括:
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为使能状态,
则依据所述输出队列号调取其所在首信息指针寄存器中对应的首信息指针作为读指针,并将所述首信息标志向量寄存器对应的当前输出队列号的使能标识修改为非使能;
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为非使能状态,
则依据所述输出队列号调取其所在头指针存储器中对应的队列头指针作为读指针。
作为本发明一实施方式的进一步改进,转发信息从所述交换芯片读出过程中,所述方法还包括:
每次获取所述读指针后,依据所述输出队列号调取其在所述尾指针存储器中的对应尾指针;
判断所述尾指针和所述读指针是否相同,
若是,将所述空指示标志向量寄存器对应的当前输出队列号的使能标识修改为使能;
若否,依据所述读指针从所述指针信息存储器读取与当前所述读指针相邻的下一个读指针;
将获得的下一读指针写入至所述头指针存储器对应的当前输出队列号中。
为实现上述发明目的之一,本发明一实施方式提供的交换芯片数据架构的控制系统包括:所述系统包括:
存储模块,用于存储各个存储单元;
输入数据获取模块,用于将转发信息写入所述交换芯片过程中,获取转发信息的输入队列号及所述输入队列号对应的信息;
输入数据查询处理模块,用于查询所述空闲指针存储器,获取空闲指针作为写指针;
将所述转发信息写入所述信息存储器对应所述写指针的地址中;
依据所述输入队列号调取所述空指示标志向量寄存器中相应的使能标识,
根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数。
作为本发明一实施方式的进一步改进,所述输入数据查询处理模块具体用于:
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为使能状态,
则将首信息标志向量寄存器中对应当前输入队列的使能标识修改为使能,将写指针写入至首信息指针存储器对应当前输入队列号的地址中,并将所述空指示标志向量寄存器对应的当前输入队列号的使能标识修改为非使能;
同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中;
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为非使能状态,
则依据所述输入队列号调取其在所述尾指针存储器中对应尾指针的地址;
将所述写指针写入所述指针信息寄存器对应所述尾指针的地址中;同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中。
为实现上述发明目的之一,本发明一实施方式提供的交换芯片数据架构的控制系统包括:所述系统包括:
存储模块,用于存储各个存储单元;
输出数据获取模块,用于将转发信息从所述交换芯片读出过程中,
获取转发信息的输出队列号及所述输出队列号对应的信息;
输出数据查询处理模块,用于实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针;
调取所述信息存储器对应所述读指针中的转发信息,并释放所述读指针。
作为本发明一实施方式的进一步改进,所述输出数据查询处理模块具体用于:
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为使能状态,
则依据所述输出队列号调取其所在首信息指针寄存器中对应的首信息指针作为读指针,并将所述首信息标志向量寄存器对应的当前输出队列号的使能标识修改为非使能;
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为非使能状态,
则依据所述输出队列号调取其所在头指针存储器中对应的队列头指针作为读指针。
作为本发明一实施方式的进一步改进,所述输出数据查询处理模块还用于:
每次获取所述读指针后,依据所述输出队列号调取其在所述尾指针存储器中的对应尾指针;
判断所述尾指针和所述读指针是否相同,
若是,将所述空指示标志向量寄存器对应的当前输出队列号的使能标识修改为使能;
若否,依据所述读指针从所述指针信息存储器读取与当前所述读指针相邻的下一个读指针;
将获得的下一读指针写入至所述头指针存储器对应的当前输出队列号中。
与现有技术相比,本发明的交换芯片数据架构、其控制方法及控制系统,通过对头指针、尾指针、首信息指针、空指示标志、首信息标志分别维护,减少了存储器端口的数量,降低了控制逻辑复杂度,节省了芯片面积,并利于芯片后端实现。
附图说明
图1是现有技术中队列管理的结构图;
图2是现有技术中交换芯片数据架构图;
图3是本发明一实施方式中交换芯片数据架构图;
图4是本发明一实施方式转发信息写入所述交换芯片数据架构的流程示意图;
图5是本发明一实施方式转发信息从所述交换芯片数据架构读出的流程示意图;
图6是本发明一实施方式中换芯片数据架构的控制系统的模块示意图。
具体实施方式
以下将结合附图所示的各实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
如图3所示,本发明的交换芯片数据架构包括:多个独立维护的存储单元,所述存储单元包括:信息存储器10,用于存储经过所述交换芯片的报文的转发信息;空闲指针存储器11,用于存储所述信息存储器中未被使用的指针;指针信息存储器12,用于存储各个相互链接的指针;尾指针存储器13,用于存储队列的尾指针;头指针存储器14,用于存储对转发信息执行读取操作时所维护的队列头指针;首信息指针存储器15,用于存储转发信息写入所述交换芯片过程中所维护队列的首信息指针;空指示标志向量寄存器16,用于维护每个队列的空指示标志;首信息标志向量寄存器17,用于记录每个队列的首信息是否有效;其中,所述空指示标志向量寄存器的宽度以及所述首信息标志向量寄存器的宽度均等于队列的个数。
如上所述交换芯片数据架构,若需要满足在一个时钟周期同时对一个转发信息进行写入和一个转发信息进行读出的要求,首信息指针存储器仅需设计为1读1写,尾指针存储器设计为2读1写、头指针存储器设计为1读1写即可以满足需求,如此,避免了使用2读2写的存储器,减少了端口数目,节省了芯片面积;进一步的,若需要满足在一个时钟周期同时对2个转发信息进行写入和2个转发信息进行读出,仅需要对上述存储器进行扩展,将首信息指针存储器扩展为2读2写,尾指针存储器扩展为4读2写、头指针存储器扩展为2读2写即可以满足需求,相应的,由于避免了4读4写操作,以上数据结构都可以用存储器实现。所述存储器为芯片中用来存储数据的部件,一般用RAM(随机访问存储器)实现,因为RAM的密度比寄存器阵列高,而且后端提前优化,没有布局布线拥塞的问题。
结合图4所示,本发明一实施方式中提供的交换芯片数据架构的控制方法,所述方法包括:
S1、转发信息写入所述交换芯片过程中,
获取转发信息的输入队列号及所述输入队列号对应的信息。
数据报文通过所述交换芯片转发过程中,根据事先设定的规则,会选择交换机的其中一个通道进行转发并生成转发信息,对应每个通道均具有相应的队列号,同时,对于每一个报文,其自身也会携带相应的信息,例如:源地址、目标地址、转发路径、报头、报尾等。
S2、查询所述空闲指针存储器,获取空闲指针作为写指针,同时将读指针随读操作进行累加。
所述空闲指针的提取,可以按序提取,也可以按照一定的规则进行提取,在此不做详细赘述。
S3、将所述转发信息写入所述信息存储器对应所述写指针的地址中;
所述转发信息写入过程中,若其包含若干数据段,则各个数据段依次写入所述信息存储器中,同时,依据各个数据段的属性修改其他存储单元的参数,以下将会描述。
S4、依据所述输入队列号调取所述空指示标志向量寄存器中相应的使能标识,根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数。
本发明一实施方式中,所述步骤S4具体包括:
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为使能状态,
则将首信息标志向量寄存器中对应当前输入队列的使能标识修改为使能,将写指针写入至首信息指针存储器对应当前输入队列号的地址中,并将所述空指示标志向量寄存器对应的当前输入队列号的使能标识修改为非使能;
同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中;
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为非使能状态,
则依据所述输入队列号调取其在所述尾指针存储器中对应尾指针的地址;
将所述写指针写入所述指针信息寄存器对应所述尾指针的地址中;同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中。
本发明一具体实施方式中,所述使能和非使能以二进制数字“1”和“0”进行区分,即,当其标志位为“1”时,表示使能,当其标志位为“0”时,表示非使能,在此不做详细赘述。
结合图5所示,进一步的,所述方法还包括:
P1、转发信息从所述交换芯片读出过程中,
获取转发信息的输出队列号及所述输出队列号对应的信息;
P2、实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针;
本发明一实施方式中,所述步骤P2具体包括:
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为使能状态,
则依据所述输出队列号调取其所在首信息指针寄存器中对应的首信息指针作为读指针,并将所述首信息标志向量寄存器对应的当前输出队列号的使能标识修改为非使能;
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为非使能状态,
则依据所述输出队列号调取其所在头指针存储器中对应的队列头指针作为读指针。
P3、调取所述信息存储器中对应所述读指针中的转发信息,并释放所述读指针。
释放所述读地址的方法为:将所述读指针写入空闲指针存储器,写指针随写操作累加。
进一步的,所述交换芯片读出过程中,所述方法还包括:
每次获取所述读地址后,均依据所述输出队列号调取其在所述尾指针存储器中的对应尾指针;
判断所述尾指针和所述读指针是否相同,
若是,将所述空指示标志向量寄存器对应的当前输出队列号的使能标识修改为使能;
若否,依据所述读指针从所述指针信息存储器读取与当前所述读地址相邻的下一个读指针;
将获得的下一读指针写入至所述头指针存储器对应的当前输出队列号中。
结合图6所示,本发明一实施方式中,交换芯片数据架构的控制系统包括:存储模块100、输入数据获取模块200、输入数据查询处理模块300、输出数据获取模块400、输出数据查询处理模块500。
存储模块100,用于存储各个存储单元,所述存储单元结合图3及上述内容所示,在此不做继续赘述。
输入数据获取模块200用于将转发信息写入所述交换芯片过程中,
获取转发信息的输入队列号及所述输入队列号对应的信息。
报文通过所述交换芯片转发过程中,根据事先设定的规则,会选择交换机的其中一个通道进行转发并生成转发信息,对应每个通道均具有相应的队列号,同时,对于每一个报文,其自身也会携带相应的信息,例如:源地址、目标地址、转发路径、报头、报尾等。
输入数据查询处理模块300用于查询所述空闲指针存储器,获取空闲指针作为写指针,同时将读指针随读操作进行累加。
所述空闲指针的提取,可以按序提取,也可以按照一定的规则进行提取,在此不做详细赘述。
进一步的,输入数据查询处理模块300还用于将所述转发信息写入所述信息存储器对应所述写指针的地址中;
所述转发信息写入过程中,若其包含若干数据段,则各个数据段依次写入所述信息存储器中,同时,依据各个数据段的属性修改其他存储单元的参数,以下将会描述。
进一步的,输入数据查询处理模块300还用于依据所述输入队列号调取所述空指示标志向量寄存器中相应的使能标识,根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数。
本发明一实施方式中,所述数据查询处理模块300具体用于:
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为使能状态,
则将首信息标志向量寄存器中对应当前输入队列的使能标识修改为使能,将写指针写入至首信息指针存储器对应当前输入队列号的地址中,并将所述空指示标志向量寄存器对应的当前输入队列号的使能标识修改为非使能;
同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中;
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为非使能状态,
则依据所述输入队列号调取其在所述尾指针存储器中对应尾指针的地址;
将所述写指针写入所述指针信息寄存器对应所述尾指针的地址中;同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中。
本发明一具体实施方式中,所述使能和非使能以二进制数字“1”和“0”进行区分,即,当其标志位为“1”时,表示使能,当其标志位为“0”时,表示非使能,在此不做详细赘述。
输出数据获取模块400用于将转发信息从所述交换芯片读出过程中,
获取转发信息的输出队列号及所述输出队列号对应的信息;
输出数据查询处理模块500用于实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针;
本发明一实施方式中,所述输出数据查询处理模块500具体用于:
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为使能状态,
则依据所述输出队列号调取其所在首信息指针寄存器中对应的首信息指针作为读指针,并将所述首信息标志向量寄存器对应的当前输出队列号的使能标识修改为非使能;
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为非使能状态,
则依据所述输出队列号调取其所在头指针存储器中对应的队列头指针作为读指针。
输出数据查询处理模块500还用于调取所述信息存储器中对应所述读指针中的转发信息,并释放所述读指针。
释放所述读地址的方法为:将所述读指针写入空闲指针存储器,写指针随写操作累加。
进一步的,所述交换芯片读出过程中输出数据查询处理模块500还用于在每次获取所述读地址后,均依据所述输出队列号调取其在所述尾指针存储器中的对应尾指针;
判断所述尾指针和所述读指针是否相同,
若是,将所述空指示标志向量寄存器对应的当前输出队列号的使能标识修改为使能;
若否,依据所述读指针从所述指针信息存储器读取与当前所述读地址相邻的下一个读指针;
将获得的下一读指针写入至所述头指针存储器对应的当前输出队列号中。
综上所述,本发明的交换芯片数据架构、其控制方法及控制系统,通过对头指针、尾指针、首信息指针、空指示标志、首信息标志分别维护,减少了存储器端口的数量,降低了控制逻辑复杂度,节省了芯片面积,并利于芯片后端实现。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

Claims (11)

1.一种交换芯片数据架构,其特征在于,所述交换芯片数据架构包括:多个独立维护的存储单元,所述存储单元包括:
信息存储器,用于存储经过所述交换芯片的报文的转发信息;
空闲指针存储器,用于存储所述信息存储器中未被使用的指针;
指针信息存储器,用于存储各个相互链接的指针;
尾指针存储器,用于存储队列的尾指针;
头指针存储器,用于存储对转发信息执行读取操作时所维护的队列头指针;
首信息指针存储器,用于存储转发信息写入所述交换芯片过程中所维护队列的首信息指针;
空指示标志向量寄存器,用于维护每个队列的空指示标志;
首信息标志向量寄存器,用于记录每个队列的首信息是否有效;
其中,所述空指示标志向量寄存器的宽度以及所述首信息标志向量寄存器的宽度均等于队列的个数。
2.一种如权利要求1所述的交换芯片数据架构的控制方法,其特征在于,所述方法包括:
转发信息写入所述交换芯片过程中,
获取转发信息的输入队列号及所述输入队列号对应的信息;
查询所述空闲指针存储器,获取空闲指针作为写指针;
将所述转发信息写入所述信息存储器对应所述写指针的地址中;
依据所述输入队列号调取所述空指示标志向量寄存器中相应的使能标识,
根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数。
3.根据权利要求2所述的交换芯片数据架构的控制方法,其特征在于,“根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数”具体包括:
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为使能状态,
则将首信息标志向量寄存器中对应当前输入队列的使能标识修改为使能,将写指针写入至首信息指针存储器对应当前输入队列号的地址中,并将所述空指示标志向量寄存器对应的当前输入队列号的使能标识修改为非使能;
同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中;
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为非使能状态,
则依据所述输入队列号调取其在所述尾指针存储器中对应尾指针的地址;
将所述写指针写入所述指针信息寄存器对应所述尾指针的地址中;同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中。
4.一种如权利要求1所述的交换芯片数据架构的控制方法,所述方法包括:
转发信息从所述交换芯片读出过程中,
获取转发信息的输出队列号及所述输出队列号对应的信息;
实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针;
调取所述信息存储器对应所述读指针中的转发信息,并释放所述读指针。
5.根据权利要求4所述的交换芯片数据架构的控制方法,其特征在于,“实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针”具体包括:
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为使能状态,
则依据所述输出队列号调取其所在首信息指针寄存器中对应的首信息指针作为读指针,并将所述首信息标志向量寄存器对应的当前输出队列号的使能标识修改为非使能;
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为非使能状态,
则依据所述输出队列号调取其所在头指针存储器中对应的队列头指针作为读指针。
6.根据权利要求4或5所述的交换芯片数据架构的控制方法,转发信息从所述交换芯片读出过程中,所述方法还包括:
每次获取所述读指针后,依据所述输出队列号调取其在所述尾指针存储器中的对应尾指针;
判断所述尾指针和所述读指针是否相同,
若是,将所述空指示标志向量寄存器对应的当前输出队列号的使能标识修改为使能;
若否,依据所述读指针从所述指针信息存储器读取与当前所述读指针相邻的下一个读指针;
将获得的下一读指针写入至所述头指针存储器对应的当前输出队列号中。
7.一种如权利要求1所述的交换芯片数据架构的控制系统,其特征在于,所述系统包括:
存储模块,用于存储各个存储单元;
输入数据获取模块,用于将转发信息写入所述交换芯片过程中,获取转发信息的输入队列号及所述输入队列号对应的信息;
输入数据查询处理模块,用于查询所述空闲指针存储器,获取空闲指针作为写指针;
将所述转发信息写入所述信息存储器对应所述写指针的地址中;
依据所述输入队列号调取所述空指示标志向量寄存器中相应的使能标识,
根据所述空指示标志向量寄存器中相应的使能状态标识修改所述存储单元中的参数。
8.根据权利要求7所述的交换芯片数据架构的控制系统,其特征在于,所述输入数据查询处理模块具体用于:
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为使能状态,
则将首信息标志向量寄存器中对应当前输入队列的使能标识修改为使能,将写指针写入至首信息指针存储器对应当前输入队列号的地址中,并将所述空指示标志向量寄存器对应的当前输入队列号的使能标识修改为非使能;
同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中;
若所述空指示标志向量寄存器对应当前输入队列号的使能标识为非使能状态,
则依据所述输入队列号调取其在所述尾指针存储器中对应尾指针的地址;
将所述写指针写入所述指针信息寄存器对应所述尾指针的地址中;同时,将所述写指针写入所述尾指针寄存器对应当前输入队列号的地址中。
9.一种如权利要求1所述的交换芯片数据架构的控制系统,其特征在于,所述系统包括:
存储模块,用于存储各个存储单元;
输出数据获取模块,用于将转发信息从所述交换芯片读出过程中,
获取转发信息的输出队列号及所述输出队列号对应的信息;
输出数据查询处理模块,用于实时获取所述首信息标志向量寄存器对应当前输出队列的使能状态标识,并根据其读取当前输出队列号对应的读指针;
调取所述信息存储器对应所述读指针中的转发信息,并释放所述读指针。
10.根据权利要求9所述的交换芯片数据架构的控制系统,其特征在于,所述输出数据查询处理模块具体用于:
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为使能状态,
则依据所述输出队列号调取其所在首信息指针寄存器中对应的首信息指针作为读指针,并将所述首信息标志向量寄存器对应的当前输出队列号的使能标识修改为非使能;
若所述首信息标志向量寄存器对应当前输出队列号的使能标识为非使能状态,
则依据所述输出队列号调取其所在头指针存储器中对应的队列头指针作为读指针。
11.根据权利要求9或10所述的交换芯片数据架构的控制系统,其特征在于,所述输出数据查询处理模块还用于:
每次获取所述读指针后,依据所述输出队列号调取其在所述尾指针存储器中的对应尾指针;
判断所述尾指针和所述读指针是否相同,
若是,将所述空指示标志向量寄存器对应的当前输出队列号的使能标识修改为使能;
若否,依据所述读指针从所述指针信息存储器读取与当前所述读指针相邻的下一个读指针;
将获得的下一读指针写入至所述头指针存储器对应的当前输出队列号中。
CN201610842213.8A 2016-09-22 2016-09-22 交换芯片的控制方法及控制系统 Active CN106375249B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610842213.8A CN106375249B (zh) 2016-09-22 2016-09-22 交换芯片的控制方法及控制系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610842213.8A CN106375249B (zh) 2016-09-22 2016-09-22 交换芯片的控制方法及控制系统

Publications (2)

Publication Number Publication Date
CN106375249A true CN106375249A (zh) 2017-02-01
CN106375249B CN106375249B (zh) 2019-10-01

Family

ID=57898046

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610842213.8A Active CN106375249B (zh) 2016-09-22 2016-09-22 交换芯片的控制方法及控制系统

Country Status (1)

Country Link
CN (1) CN106375249B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108459876A (zh) * 2017-02-20 2018-08-28 德克萨斯仪器股份有限公司 用于缩减面积的控制寄存器电路的方法与装置
CN110990308A (zh) * 2018-07-19 2020-04-10 意法半导体(格勒诺布尔2)公司 直接存储器存取
WO2022143678A1 (zh) * 2020-12-30 2022-07-07 苏州盛科通信股份有限公司 报文存储方法、报文出入队列方法及存储调度装置
CN114817091A (zh) * 2022-06-28 2022-07-29 井芯微电子技术(天津)有限公司 基于链表的fwft fifo系统、实现方法及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101009649A (zh) * 2006-01-24 2007-08-01 三星电子株式会社 网络处理器中的队列管理
CN102437929A (zh) * 2011-12-16 2012-05-02 华为技术有限公司 队列管理中的数据出队方法及装置
CN103309626A (zh) * 2013-07-03 2013-09-18 盛科网络(苏州)有限公司 实现网络芯片多读写端口存储器的方法及相应存储器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101009649A (zh) * 2006-01-24 2007-08-01 三星电子株式会社 网络处理器中的队列管理
CN102437929A (zh) * 2011-12-16 2012-05-02 华为技术有限公司 队列管理中的数据出队方法及装置
CN103309626A (zh) * 2013-07-03 2013-09-18 盛科网络(苏州)有限公司 实现网络芯片多读写端口存储器的方法及相应存储器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
樊金斗: "高速路由器中并行化调度器的体系结构", 《清华大学学报(自然科学版)》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108459876A (zh) * 2017-02-20 2018-08-28 德克萨斯仪器股份有限公司 用于缩减面积的控制寄存器电路的方法与装置
CN108459876B (zh) * 2017-02-20 2024-04-12 德克萨斯仪器股份有限公司 用于缩减面积的控制寄存器电路的方法与装置
CN110990308A (zh) * 2018-07-19 2020-04-10 意法半导体(格勒诺布尔2)公司 直接存储器存取
WO2022143678A1 (zh) * 2020-12-30 2022-07-07 苏州盛科通信股份有限公司 报文存储方法、报文出入队列方法及存储调度装置
CN114817091A (zh) * 2022-06-28 2022-07-29 井芯微电子技术(天津)有限公司 基于链表的fwft fifo系统、实现方法及设备

Also Published As

Publication number Publication date
CN106375249B (zh) 2019-10-01

Similar Documents

Publication Publication Date Title
CN103946803B (zh) 具有高效工作排队的处理器
CN101252536B (zh) 路由器多队列数据包缓存管理与输出队列调度系统
CN106375249A (zh) 交换芯片数据架构、其控制方法及控制系统
US7555579B2 (en) Implementing FIFOs in shared memory using linked lists and interleaved linked lists
US8135004B2 (en) Multi-plane cell switch fabric system
CN101873253A (zh) 带缓冲的纵横式交换机系统
CN106209679A (zh) 用于使用多个链接的存储器列表的方法及装置
CN104778025B (zh) 基于随机访问存储器的先入先出存储器的电路结构
CN105573711B (zh) 一种数据缓存方法及装置
CN106325758B (zh) 一种队列存储空间管理方法及装置
CN106537858B (zh) 一种队列管理的方法和装置
CN108234348A (zh) 一种队列操作中的处理方法及装置
EP3367622B1 (en) Data processing apparatus
US11677676B1 (en) Shared traffic manager
CN103914341A (zh) 数据队列出队管控方法和装置
CN102971997B (zh) 包括数据分段和数据描述分段的分组缓冲器
CN107729135A (zh) 按序进行并行数据处理的方法和装置
CN103297350B (zh) 一种信元交换系统的实现方法和交换设备
CN105099957A (zh) 一种基于软件查表的数据包转发方法
CN105260332A (zh) 一种对cpld数据包进行有序存储的方法及系统
CN106254270A (zh) 一种队列管理方法及装置
CN108090018A (zh) 数据交换方法及系统
US10846225B1 (en) Buffer read optimizations in a network device
CN110324204A (zh) 一种在fpga中实现的高速正则表达式匹配引擎及方法
CN104333516A (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
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 215000 unit 13 / 16, 4th floor, building B, No.5 Xinghan street, Suzhou Industrial Park, Jiangsu Province

Patentee after: Suzhou Shengke Communication Co.,Ltd.

Address before: Xinghan Street Industrial Park of Suzhou city in Jiangsu province 215021 B No. 5 Building 4 floor 13/16 unit

Patentee before: CENTEC NETWORKS (SU ZHOU) Co.,Ltd.

CP03 Change of name, title or address