一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于硬件DMA的快速刷表方法与流程

2022-06-29 23:24:46 来源:中国专利 TAG:
一种基于硬件dma的快速刷表方法
技术领域
:1.本发明涉及网络交换相关
技术领域
:,尤其涉及一种基于硬件dma的快速刷表方法,适合主机和交换机之间快速刷表的场景,加速网络设备的初始化以达到快速启动。
背景技术
::2.随着网络的快速发展,承载网的重要性不言而喻,伴随5g通信技术的商用,承载网能否满足5g网络的要求至关重要,它将影响5g商用进程,承载网需要支持不同的场景,为用户提供快速、安全、低延迟的服务;以太网交换芯片旨在满足以太网报文传输接入/汇聚网络需求,需要支持多种场景和业务,大量场景业务的支持必然需要一个庞大的表项作为支撑,设备在上电后需要配置这些表项,如果通过cpu来配置,需要时间较长,而且由于每个业务对应表项的位宽不同,需要进行掩码操作,增加cpu的负担,导致配置时间更长。3.由于以太网交换芯片需要处理承载网中的所有数据转发,支持多种业务报文,例如l2、l3、mpls等等,客户机在进行通信过程中,报文在网络中传输由于业务类型多样且发往不同的目的地,需要在传输中不断匹配修改报文描述符等信息,这样需要庞大的表项支撑描述符的灵活匹配修改,每种业务含有不同的功能,每个功能都有相应的表项,所以表项在芯片中的分配并不是一整张大表,而是由分散在各个模块中的小表构成,而芯片的定位不同,这些支持的表项个数从几百到上千也不相同,如此多且分散的表项,如果上电用cpu进行初始化配置,会占用大量的cpu带宽且操作时间较久;而且通常表项ram的配置方式有两种,直接寄存器方式和间接寄存器方式,两种都会用到,其中间接方式使用更多,采用间接配置各个ram表项的方式存在时延大、操作寄存器次数多等缺点,对于大容量路由表的快速下发需求不能很好的支持,下表速度慢,导致路由收敛慢。4.图4是传统实现的配表实例示意图。传统配表方式通过cpu直接寄存器或者间接寄存器访问的方式依次配置各个模块中的表项ram,该方式cpu负载较重,操作复杂且耗时较长。技术实现要素:5.本发明提供了一种基于硬件dma的快速刷表方法,可以减少cpu的负担,且可以通过设置灵活配置64bit~512bit任意位宽的表项,由于采用纯硬件的方式,不需要cpu的干预,释放了cpu的资源,大大节省了刷表时间。6.为了实现本发明的目的,所采用的技术方案是,一种基于硬件dma的快速刷表方法,包括:7.1)在内存中构建描述符空间和数据空间,在描述符空间中填入描述符表项,在数据空间中以报文的方式填入数据表项,描述符表项中存储着数据表项的信息;8.2)将描述符表项的索引地址告知dma,dam通过索引地址发起读操作获取描述符表项,根据描述符表项中的信息提取对应的数据表项报文;9.3)解析数据表项报文,得到配置信息,将配置信息重组并通过配置接口写入相应的表项ram中完成表项的配置。10.作为本发明的优化方案,描述符表项包括数据表项报文的地址、数据表项报文的长度和用以表示描述符是否使用的标记位。11.作为本发明的优化方案,在步骤3)中,得到配置信息的同时更新标记位表示为该描述符表项已使用。12.作为本发明的优化方案,数据表项还包括表征数据表项是离散表或连续表的标志位,离散表配置有相应的掩码标记,连续表包括连续的条目数。13.作为本发明的优化方案,数据表项还包括表征数据表项是离散表或连续表的标志位,离散表配置有相应的掩码标记,连续表包括连续的条目数。14.作为本发明的优化方案,基于硬件dma的快速刷表方法支持需配置表项ram的位宽为64bit~512bit灵活可配。15.本发明具有积极的效果:1)本发明利用dma的方式,灵活配置表项接口带宽,达到快速刷表的目的,解决了网络芯片上电初始化时间较长的缺点;16.2)本发明能够解决以太网芯片初始化下表慢的问题,由于大量的寄存器间接访问会浪费cpu的带宽,影响cpu的性能,使用dma的方式能卸载cpu的负载;17.3)在表项条目数多时,使用dma方式可以大大减少寄存器操作次数,从而降低配表时延,大大缩短了配表等待时间;18.4)支持离散条目的配置,通过掩码的方式掩除不想配置的表项条目;19.5)本发明下表方式灵活简单,适用于绝大部分配表场景。附图说明20.下面结合附图和具体实施方式对本发明作进一步详细的说明。21.图1是本发明的刷表实例示意图;22.图2是描述符表项的数据结构图;23.图3是数据表项的数据结构图;24.图4是传统的配表实例示意图。具体实施方式25.如图1-3所示,本发明公开了一种基于硬件dma的快速刷表方法,dma刷表操作过程中需要两种表项,一种是数据表项,另一种是描述符表项,数据表项格式是由软硬件约定最终由软件维护,描述符表项由软硬件约定好且共同维护。26.数据表项:27.首先和软件约定好表项的内容格式,因为表项配置下发是以报文的形式下发下来的,所以需要有一定的帧头进行辅助报文的定界,可以使用4字节的同步头进行匹配同步,或者该头大小可以和软件沟通定义;28.其次需要表项的相关信息,由于检测到了同步头,才认为该报文是用于表项配置的相关报文,这时就可以获取配置表项的相关信息,而哪些信息是配表需要的呢,例如需要知道配置的是那个模块的哪些表项ram,以及其地址和表项写有效标记(这些内容仅是举例说明,不限于这些表项信息)。29.然后需要知道配置的表项是离散表还是连续表,离散表项还要配置相应的掩码标记,而连续条目需要知道配置多少个连续条目,本发明根据需要暂定最大为512个,该值都可根据芯片规格自行定义修改。30.最后就要配置表项的内容,每个表项ram的位宽都不一样,所以这里支持64bit~512bit位宽灵活可调。不同表项的数据位宽不同,所以对应存储表项的ram位宽也不相同,因而配置接口需要适配各种表项位宽,这里做灵活可配加掩码的方式,这里只是举例按照64~512可配,但不局限于该位宽,具体需要根据当前芯片规格的最大最小表项来定。31.如图3所示,table_info[47:40]:ram_id,即最大支持256个表项条目;table_info[39:32]:block_id,即最大支持256个业务模块,即独立的表项(独立的表项指每个业务模块对应一个表项配置,其中都包含ram_id,ram_addr,标记,长度,下发数量等信息,每个业务模块之间独立运行,通过芯片规格中支持的业务模块数量进行相应的设置可以增加配表的并行性和离散性,从而实现更快更精准的操作)。table_info[31:13]:ram_addr,ram的地址。table_info[12]:flag标记,表示读或写。table_info[11:9]:width,表项长度,单位64b,0:64b,1:128b,…7:512b。table_info[8:0]:num,即一次下发表项数量,最大支持512个。[0032]描述符表项:[0033]描述符表项包括数据表项报文的地址、数据表项报文的长度和用以表示描述符是否使用的标记位、数据表项报文的首尾标记,描述符表项是否有效等等。[0034]基于硬件dma的快速刷表方法,包括如下步骤:[0035]1)按照约定好的格式,在内存(泛指cpu的内存空间,可以是ddr,irom,iram等和cpu总线相连,cpu可以通过总线发出读写命令,可以看做是若干存储单元组成的逻辑存储器)中构建描述符空间和数据空间,在描述符空间中填入描述符表项,在数据空间中以报文的方式填入数据表项,描述符表项中存储着数据表项的信息;[0036]2)将描述符表项的索引地址告知dma,dam通过索引地址发起读操作获取描述符表项,根据描述符表项中的信息(报文地址和报文长度)提取对应的数据表项报文,如图2所示,描述符表项包括数据表项报文的地址、数据表项报文的长度和用以表示描述符是否使用的标记位(可重复使用,规定0为未使用,1为使用);[0037]3)按照约定好的表项报文格式,解析数据表项报文,得到配置信息,同时更新描述符表项中的标记位为1,表示该内容已经使用。将配置信息重组并通过配置接口写入相应的表项ram中完成表项的配置。根据上面解析后的配置信息,可以得到需配置表项ram的id编号、位宽、条目数、连续或者离散、内容等,将解析后的内容重组并通过配置接口写入相应的表项ram中完成表项配置,可变的位宽以及条目数能够适应不同规格的ram表。[0038]通过以上的三步操作,可以实现业务的快速刷表。[0039]本发明是利用dam的方式,可同时操作多个模块的多个表项配置,减轻了cpu的负载,降低了操作复杂度,且大大节省了配表时延。以前的表项配置是软件通过间接的方式(多次直接)进行操作,且需要至少三次直接操作(写地址,写数据,写命令)才能写入一个表项条目,如果表项数据位宽很大,需要更多次的直接操作,全程需要cpu的参与,表项的条目越多,需要的操作越复杂,cpu负载重且耗时长。而本发明刷表是通过dam下发报文的方式,cpu只需要将配置报文放入内存中,dma会读取报文解析重组可到配置信息,支持的位宽更宽,一次可配的条目更多,中间过程不需要cpu参与,完全的是硬件操作,降低了cpu的负载,且耗时很短。采用dma方式,可以不需要操作单个寄存器,可以将表项的内容,表项地址,表id号,写请求等内容组装成包格式,通过pcie的dma写方式下发到dma缓存,并配入各个表项。[0040]以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献