基于Soc与FPGA的芯片间数据交互系统和方法与流程

文档序号:29806481发布日期:2022-04-23 22:14阅读:402来源:国知局
基于Soc与FPGA的芯片间数据交互系统和方法与流程
基于soc与fpga的芯片间数据交互系统和方法
技术领域
1.本发明涉及数据交互技术领域,具体地,涉及一种基于soc与fpga的芯片间数据交互系统和方法。


背景技术:

2.由于大数据时代的到来,对数据的处理有很大的要求,目前主要由znyq soc或纯fpga芯片来进行处理,处理能力有一定的限制。因此在此现状上采用zynq soc加上多个纯fpga芯片的方式来提高对数据的处理能力。
3.专利文献cn103488607a(申请号:cn201310404188.1)公开了一种嵌入式linux平台下soc处理器与fpga芯片的通信系统、方法。该方案中所采取的大部分皆为soc与fpga芯片的内部模块通过外部引脚直连,未在接口部分进行设计,数据交互的方式以及内容单一,控制逻辑单一。


技术实现要素:

4.针对现有技术中的缺陷,本发明的目的是提供一种基于soc与fpga的芯片间数据交互系统和方法。
5.根据本发明提供的基于soc与fpga的芯片间数据交互系统,包括:
6.电源管理模块:进行fpga的上下电控制、风扇电源和速度等级控制,以及节点状态查询;
7.位流文件加载模块:根据查询的节点状态,获取fpga加载状态和位流文件md5值,并进行位流文件加载管理;
8.数据通道处理模块:进行数据通道复位、数据通道读和数据通道写。
9.优选的,将纯fpga芯片的电源控制引脚与zynq soc引脚相连,当有任务需要进行处理时,将zynq soc对应的引脚拉高,实现上电;当任务处理结束时,对应引脚拉低,实现下电;
10.通过pwm波控制风扇,由系统时钟分频,通过改变其占空比得到不同的pwm波,从而对风扇的速度进行控制,根据芯片发热情况进行风扇速度控制;
11.所述节点状态查询是指,对各个节点的电源接通状态、空闲繁忙状态进行查询,当有任务分发时,查询各个节点状态,并进行相应操作。
12.优选的,当有任务分发时,查询各个节点状态,若为空闲,则根据不同的任务加载不同的位流文件;若位流文件加载成功,返回值为true,加载成功后,各节点开始处理任务;若加载不成功,则进行报错,提示位流文件加载失败;
13.所述位流文件md5值,用于判断当前各节点加载的位流文件。
14.优选的,将纯fpga芯片的复位引脚与zynq soc引脚相连,当任务结束时将各个节点复位。
15.优选的,所述数据通道复位是指,对数据通道逻辑进行复位,在数据传输之前进行
复位操作;
16.所述数据通道读是指,通过读通道从各个节点读取处理之后的数据;
17.所述数据通道写是指,通过写通道给各个节点写入数据。
18.根据本发明提供的基于soc与fpga的芯片间数据交互方法,包括:
19.电源管理步骤:进行fpga的上下电控制、风扇电源和速度等级控制,以及节点状态查询;
20.位流文件加载步骤:根据查询的节点状态,获取fpga加载状态和位流文件md5值,并进行位流文件加载管理;
21.数据通道处理步骤:进行数据通道复位、数据通道读和数据通道写。
22.优选的,将纯fpga芯片的电源控制引脚与zynq soc引脚相连,当有任务需要进行处理时,将zynq soc对应的引脚拉高,实现上电;当任务处理结束时,对应引脚拉低,实现下电;
23.通过pwm波控制风扇,由系统时钟分频,通过改变其占空比得到不同的pwm波,从而对风扇的速度进行控制,根据芯片发热情况进行风扇速度控制;
24.所述节点状态查询是指,对各个节点的电源接通状态、空闲繁忙状态进行查询,当有任务分发时,查询各个节点状态,并进行相应操作。
25.优选的,当有任务分发时,查询各个节点状态,若为空闲,则根据不同的任务加载不同的位流文件;若位流文件加载成功,返回值为true,加载成功后,各节点开始处理任务;若加载不成功,则进行报错,提示位流文件加载失败;
26.所述位流文件md5值,用于判断当前各节点加载的位流文件。
27.优选的,将纯fpga芯片的复位引脚与zynq soc引脚相连,当任务结束时将各个节点复位。
28.优选的,所述数据通道复位是指,对数据通道逻辑进行复位,在数据传输之前进行复位操作;
29.所述数据通道读是指,通过读通道从各个节点读取处理之后的数据;
30.所述数据通道写是指,通过写通道给各个节点写入数据。
31.与现有技术相比,本发明具有如下的有益效果:
32.(1)fpga相比于soc算力性能更加强悍,所以采用soc+fpga的结构,可将对算力要求高的部分,分配给fpga计算,性能得到大大提升;
33.(2)本发明提供的数据交互方式比较全面地满足了soc与fpga的接口需求,完全可实现两者间的数据交互。
附图说明
34.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
35.图1为本发明数据交互示意图。
具体实施方式
36.下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术
7030作为管理芯片,负责数据分发,位流文件加载,数据读取等操作。k325t作为计算芯片,实现加密算法。
63.根据本发明提供的基于soc与fpga的芯片间数据交互方法,包括:电源管理步骤:进行fpga的上下电控制、风扇电源和速度等级控制,以及节点状态查询;位流文件加载步骤:根据查询的节点状态,获取fpga加载状态和位流文件md5值,并进行位流文件加载管理;数据通道处理步骤:进行数据通道复位、数据通道读和数据通道写。
64.将纯fpga芯片的电源控制引脚与zynq soc引脚相连,当有任务需要进行处理时,将zynq soc对应的引脚拉高,实现上电;当任务处理结束时,对应引脚拉低,实现下电;通过pwm波控制风扇,由系统时钟分频,通过改变其占空比得到不同的pwm波,从而对风扇的速度进行控制,根据芯片发热情况进行风扇速度控制;所述节点状态查询是指,对各个节点的电源接通状态、空闲繁忙状态进行查询,当有任务分发时,查询各个节点状态,并进行相应操作。当有任务分发时,查询各个节点状态,若为空闲,则根据不同的任务加载不同的位流文件;若位流文件加载成功,返回值为true,加载成功后,各节点开始处理任务;若加载不成功,则进行报错,提示位流文件加载失败;所述位流文件md5值,用于判断当前各节点加载的位流文件。将纯fpga芯片的复位引脚与zynq soc引脚相连,当任务结束时将各个节点复位。所述数据通道复位是指,对数据通道逻辑进行复位,在数据传输之前进行复位操作;所述数据通道读是指,通过读通道从各个节点读取处理之后的数据;所述数据通道写是指,通过写通道给各个节点写入数据。
65.本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
66.以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本技术的实施例和实施例中的特征可以任意相互组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1