基于fpga的可配置浮点向量范数求解ip核的制作方法

文档序号:9523953阅读:448来源:国知局
基于fpga的可配置浮点向量范数求解ip核的制作方法
【技术领域】
[0001] 本发明设及数字信号处理技术领域,特别是一种基于FPGA的可配置浮点向量范 数求解IP核。
【背景技术】
[0002] 浮点向量范数求解是数据规范化中的重要运算,其基本作用是在不改变同一向量 内部数据间关系的条件下,将向量数据子空间进行伸缩变换得到特定的子空间上的投影, 范数即是一组向量的伸缩量。子空间投影的方式对算法的收敛性有一定的影响。范数计 算在信号处理、机器学习、智能控制及图像处理领域都有着广泛的应用,比如支持向量机 (SVM)中的正则化计算、独立源分量分析(ICA)中的单位化计算等。
[0003] 在解决实际问题的过程中,实时处理大数据需要越来越高的处理能力,通用的处 理器及CPU已经不能满足当下的计算要求,而且通用的CPU处理器成本高,不适合小型的硬 件计算系统。因此,需要一种新型的硬件来完成运样的工作。
[0004] 当前在数字信号处理应用中已经有很多的硬件设计采用FPGA实现设计的运算模 块,并具有很成熟的技术,运充分证明了在使用FPGA实现硬件运算设计是可行的,并且应 用广泛。然而,当前的硬件运算设计多采用模块化设计,对于范数求解的模块设计缺乏可广 泛应用的成果。主要存在W下原因,多数硬件设计中的范数求解模块与其他运算模块联系 紧密,脱离系统模块后,不可独立应用,灵活性较差;多数硬件设计中的范数求解模块只针 对其设计系统,针对特定深度的数据,无法应用到其他的FPGA硬件系统中,可移植性差;多 数硬件设计中的范数求解模块只设及一种求解方法,无法应用于多种计算场合,可配置性 差;EDA第Ξ方提供的IP核库缺乏具有综合性能的浮点范数求解IP核。 阳0化]近年来,随着硬件嵌入式系统的迅猛发展,系统级设计W其软硬协同工作的优势 成为了邸A设计的主流技术。系统级设计区别于之前的FPGA系统级设计,它主要WIP核 为底层设计。然而,现有的硬件设计的底层抽象设计多停留在模块设计,具备通用性的浮点 范数求解IP核严重缺乏。
[0006] 综上所述,现有的浮点范数求解硬件实现具有W下缺陷:独立性弱,可移植性差, 可配置性差,不适合当下基于IP核的系统及设计。

【发明内容】

[0007] 本发明的目的在于,提供一种基于FPGA的可配置浮点向量范数求解IP核,具有独 立性强、可移植性强、可配置性强、精度高的优点。
[0008] 本发明提供了一种一种基于FPGA的可配置浮点向量范数求解IP核,包括:
[0009] 一总线接口,用于系统与外部进行数据通信;
[0010] 一浮点向量范数求解电路,该浮点向量范数求解电路与总线接口连接,实现范数 求解。
[0011] 本发明的有益效果是:
[0012] 1、浮点向量1范数求解电路22、浮点向量2范数求解电路23及浮点向量无穷范数 求解电路24,可实现对任意深度的数据进行范数求解。
[0013] 2、将浮点向量1范数求解电路22、浮点向量2范数求解电路23及浮点向量无穷范 数求解电路24,采用FPGA选择性生成技术,具有节省资源的同时具备范数求解的多功能性 的特性。
[0014] 3、对浮点向量1范数求解电路22、浮点向量2范数求解电路23及浮点向量无穷范 数求解电路24,采用参数化设计技术,实现了用户可配置的功能。
[0015] 4、将基于FPGA的可配置浮点向量范数求解电路采用了IP核封装技术,提高了设 计的独立性和可移植性,使得基于FPGA的可配置范数求解IP核可W灵活应用到多种嵌入 式系统级设计环境中。
【附图说明】
[0016] 为进一步说明本发明的技术内容,W下结合附图及实施案例对本发明详细说明如 后,其中:
[0017] 图1为本发明基于FPGA的可配置浮点向量范数求解IP核的设计原理结构示意 图; 阳01引图2为本发明浮点乘累加电路内部数据调度图。
【具体实施方式】
[0019] 请参阅图1所示,本发明提供一种基于FPGA的可配置浮点向量范数求解IP核,包 括:
[0020] 一总线接口 10,用于系统与外部进行数据通信;所述总线接口 10包含输入总线接 口 11、输出总线接口 12和参数设置接口 13,分别用于数据输入、数据输出及参数设置;
[0021] 一浮点向量范数求解电路20,该浮点向量范数求解电路20与总线接口 10连接,实 现范数求解,所述浮点向量范数求解电路20包括: 阳02引一选择电路21;
[0023] 一浮点向量1范数求解电路22,其与选择电路21的一输出端连接;
[0024] 一浮点向量2范数求解电路23,其与选择电路21的另一输出端连接;
[0025] 一浮点向量无穷范数求解电路24,其与选择电路21的再一输出端连接; 阳026] -内部数据总线25,该内部数据总线25分别与浮点向量1范数求解电路22、浮点 向量2范数求解电路23和浮点向量无穷范数求解电路24的数据端连接。
[0027]其中浮点向量1范数求解电路22,包含浮点累加电路及其控制电路,实现浮点向 量1范数计算。
[002引其中浮点向量2范数求解电路23,包含浮点乘累加电路及其控制电路,实现浮点 向量2范数计算。
[0029] 其中浮点向量无穷范数求解电路24,包含最大浮点数求解电路及其控制电路,实 现浮点向量无穷范数计算。
[0030] 其中浮点向量1范数求解电路22中的浮点累加电路,包括一个浮点累加IP核,W 及浮点累加电路的内部控制电路,实现浮点数据累加计算。
[0031] 其中浮点向量2范数求解电路23中的浮点乘累加电路,包括一个浮点乘法IP核、 4个浮点加法IP核,W及浮点乘累加电路的控制电路,实现浮点数据乘累加计算。
[0032] 再参阅图1所示,其中浮点向量范数求解电路20与总线接口 10连接,通过将选择 控制参数P1与输入参数组P2连接到参数设置接口 13实现参数传输,通过输入总线接口 11、输出总线接口 12实现数据传输。
[003引其中选择控制参数P1为范数选择参数Normnum,控制实现选择电路21的选择功 能。当参Normnum设置为1时,浮点向量范数求解电路20内部选择性生成浮点向量1范 数求解电路22 ;当参数Normnum设置为2时,选择性生成浮点向量2范数求解电路23 ;当 Normnum设置为inf时,选择性产生浮点向量无穷范数求解电路24。
[0034] 其中输入参数组P2包括地址宽度参数、数据宽度参数,分别实现用户配置所发送 数据的地址宽度及数据宽度的功能。运一功能使得该总线接口可W灵活连接到不同场合的 应用电路中,从而提高了该IP核的可移植性。
[0035] 其中输入总线接口 11,包括时钟信号、复位信号、启动信号、读信号、读地址信号、 读数据信号W及数据深度信号。复位信号用于实现该IP核电路内部寄存器清零功能;启 动信号用于实现该IP核电路使能功能,可采用脉冲式启动和电平置位启动两种方式;读信 号、读地址信号、读数据信号组成标准的读数据接口,可实现与标准存储器之间直接进行无 缝数据读取;数据深度信号为32位无符号定点数据输入信号,用于输入要输入的数据个 数。数据深度信号的设定使该IP可W按预定的数据深度进行计算,从而使得该IP核计算 功能的灵活性大大提高。
[0036] 其中输出总线接口12包括输出有效信号W及输出数据信号。运两个信号具有同 步性;当输出有效信号置高时,输出数据有效;当输出有效信号置零时,输出数据无效。运 一功能便于该IP核灵活地应用到其他电路中,输出有效信号可作为下一级电路的控制信 号,使得下一级电路可W准确监测并控制接收该IP核的输出数据。
[0037] 此外,选择电路21采用状态机机制由脉冲式启动控制产生内部系统置位信号,通 过输出有效脉冲信号及系统复位信号控制系统内部使能信号置零。 阳03引 3、浮点向量1范数求解电路22,按如下公式求解浮点向量1范数:
[0039]
W40] 该浮点向量1范数求解电路22内部使用了XilinxIP库中的FloatingPointIP核生成了浮点累加IP核;其控制电路W增量方式产生读地址信号,并将读到的数据采用首 位置零的方式快速求绝对值,然后缓存到浮点累加IP核的输入端,之后由浮点累加IP核进 行累加运算。控制电路内部通过对比增量地址与数据深度信号,判断数据输入数量是否达 到设定的数据深度。当数据输入数量达到设定的数据深度时,内部使能信号置零,浮点累加 IP核数据输入有效信号置零,控制电路监测浮点累加IP核输出有效信号置零后,脉冲式置 位输出有效信号,同时将累加结果送到输出数据信号端。此时,选择电路21监测到输出有 效脉冲信号后,拉低浮点向量1范数求解电路22内部使能信号,结束该电路的计算工作。 [0041] 4、浮点向量2范数求解电路23,按如下公式求解浮点向量2范数:
[0042]
[0043] 该浮点向量2范数求
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1