[发明专利]基于P4语言实现的可编程硬件逻辑架构和逻辑实现方法在审
申请号: | 202110194062.0 | 申请日: | 2021-02-20 |
公开(公告)号: | CN113157254A | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 朱珂;陈德沅;王盼;汪欣;刘长江;李庆龙;夏云飞;王晓雪;李晓洁;王永胜 | 申请(专利权)人: | 井芯微电子技术(天津)有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 北京植德律师事务所 11780 | 代理人: | 唐华东 |
地址: | 300457 天津市滨海新区经济技术开发区*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 p4 语言 实现 可编程 硬件 逻辑 架构 方法 | ||
本发明公开了一种基于P4语言实现的可编程硬件逻辑架构和逻辑实现方法。所述可编程硬件逻辑架构包括:报文接收模块、数据缓存模块、报文发送模块和可编程逻辑单元;所述可编程逻辑单元进一步包括:提取指令存储模块、提取数据模块、匹配模块、动作指令存储模块和动作模块。本发明的可编程硬件逻辑架构,允许用户使用P4语言对采用该架构的芯片进行二次开发,将任意网络报文进行识别,任意位域进行赋值、移位、常用ALU操作,增加芯片的使用场景。采用本发明的可编程硬件逻辑架构,不用为每个新项目整体重新编写代码,有利于提升硬件代码开发效率。
技术领域
本公开涉及可编程硬件技术领域,具体涉及一种基于P4语言实现的可编程硬件逻辑架构和逻辑实现方法。
背景技术
随着现代通信技术的发展,不同网络之间实现高速实时通信的需求越来越复杂。有时需要根据实际的互联网络对网络协议报文做控制平面处理,传统交换芯片流片后无法支持用户对网络协议控制平面定制化处理,即无法进行二次开发操作。
斯坦福大学的Nick McKeown教授为了充分解放数据平面的编程能力,于2014年首次设计并提出了数据平面特定领域编程语言P4,经提出就得到了学术界和工业界的广泛关注和认可。工业界纷纷跟进并着手研制了一系列高性能的可编程硬件。一方面基于可编程硬件的可定制化特性能够快速实现和验证一些新型的网络架构、功能和协议,极大加速了网络演进和创新;另一方面基于可编程硬件的高性能特性,传统上由灵活但低性能的中间件实现的一些比如防火墙,负载均衡等较为简单的网络功能可以卸载到可编程数据平面上实现来获取可观的性能提升。
发明内容
本发明主要解决的技术问题是,提供一种基于P4语言实现的可编程硬件逻辑架构,允许用户使用P4语言对采用该种架构的芯片进行二次开发,增加芯片的使用场景。本发明还提供一种可编程硬件的逻辑实现方法。
第一方面,本公开提供了一种基于P4语言实现的可编程硬件逻辑架构,包括:报文接收模块、数据缓存模块、报文发送模块和可编程逻辑单元;所述可编程逻辑单元包括:提取指令存储模块、提取数据模块、匹配模块、动作指令存储模块和动作模块;其中,所述报文接收模块,用于接收报文,识别报文是否有效,将有效的报文存入所述数据缓存模块,以及,根据接收的报文生成描述符并输出给所述可编程逻辑单元,所述描述符中包括约定的部分报文信息和提取指令的存储地址;所述数据缓存模块,用于缓存所述报文接收模块存入的报文,以及,将缓存的报文提供给所述报文发送模块;所述提取数据模块,用于根据所述描述符携带的存储地址,从所述提取指令存储模块中获取提取指令,根据获取的提取指令,从所述描述符中提取指定位置的数据,将得到的提取数据输出给所述匹配模块;所述匹配模块,用于将所述提取数据与存储的匹配数据进行比较,根据比较结果输出动作指令的存储地址给所述动作模块;所述动作模块,用于根据收到的存储地址,从所述动作指令存储模块中获取动作指令,根据获取的动作指令,对所述描述符进行相应的修改,将修改后的描述符输出给所述报文发送模块;所述报文发送模块,用于从所述数据缓存模块获取报文,从所述动作模块获取修改后的描述符,将修改后的描述符与报文进行拼包处理后输出。
在一些可选的实现方式中,所述报文接收模块具体用于:当同时接收到入口数据报文和环回数据报文时,对环回数据报文优先处理。
在一些可选的实现方式中,所述约定的部分报文信息是指报文头部信息。
在一些可选的实现方式中,所述报文发送模块,具体用于将拼包处理后的报文输出给下级模块,或者,作为环回数据报文重新输出给所述报文接收模块。
在一些可选的实现方式中,所述提取数据模块,具体采用寄存器提取方式和/或立即数提取方式,从所述描述符中提取指定位置的数据。
在一些可选的实现方式中,所述匹配模块采用二维数组结构的寄存器保存匹配数据。
在一些可选的实现方式中,所述动作模块具体用于通过赋值、移位或者算术逻辑单元ALU操作对描述符进行修改。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于井芯微电子技术(天津)有限公司,未经井芯微电子技术(天津)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110194062.0/2.html,转载请声明来源钻瓜专利网。