[发明专利]基于FPGA的通用矩阵浮点乘法器无效
申请号: | 201010139877.0 | 申请日: | 2010-04-07 |
公开(公告)号: | CN101794210A | 公开(公告)日: | 2010-08-04 |
发明(设计)人: | 杨楠;兰建;韩慧婷;王立禾;李德伟;席裕庚 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F7/57 | 分类号: | G06F7/57 |
代理公司: | 上海交达专利事务所 31201 | 代理人: | 王锡麟;王桂忠 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 fpga 通用 矩阵 浮点 乘法器 | ||
技术领域
本发明涉及的是一种微处理器技术领域的乘法器,具体是一种基于FPGA(Field-Programmable Gate Array的缩写,现场可编程门阵列)的通用矩阵浮点乘法器。
背景技术
矩阵乘法操作是科学计算中的一个基本操作,在工业控制、模式识别、数字信号处理等领域广泛存在,特别是在便携式设备中,经常涉及模式识别、图像处理的操作,这些操作都是有大量的矩阵运算来完成的,而便携式设备通常计算配置较低,矩阵乘法也就称为计算过程中最为耗时的关键操作。矩阵乘法的时间复杂度较高,通常为O(N3),其计算性能直接影响系统的整体性能。
以前的矩阵乘法器通常采用通用数字信号处理器(Digital Signal Processor,DSP)实现。DSP具有技术成熟,实现工具完善、编程简单等优点,但由于其内部结构的限制,在进行计算时经常会出现缓存(Cache Miss)扑空等现象,影响计算性能。基于DSP技术的涉及通常持续时间只能维持在其峰值计算性能的10%~33%,无法取得很高的计算性能。
近年来的FPGA技术取得了飞速发展,已经从最初只能面向纯逻辑代替的应用转变为能够面向复杂的计算密集型应用。最新的FPGA器件,不仅逻辑资源门极其丰富,而且还包括了大量面向高计算性能的DSP单元、块状RAM(Block RAM,BRAM)等。同时为方便FPGA的调试,各FPGA厂商还提供了各种片内逻辑分析工具(如Xilinx公司的ChipScope),在软硬件上均保证了FPGA实现高性能计算的可能性。
经对现有文献检索发现,中国专利申请号为:200710069954.8,名称为:基于单FPGA的矩阵乘法器装置,该技术包括P2个计算单元PE,由P2个计算单元PE排列形成的P行×P列的PE阵列,数据输入输出接口和数据预处理单元。但是该技术逻辑资源消耗太高,每一个浮点向量乘法器单元要消耗多个DSP48和FIFO单元,对于芯片要求太高,导致成本增加,且不利于实际应用。
发明内容
本发明的目的在于克服现有技术的上述不足,提供一种基于FPGA的通用矩阵浮点乘法器。本发明采用并行流水线结构,可以进行任意维数的矩阵浮点乘法运算,并且多个矩阵浮点乘法器可以并行工作,进一步提高计算效率和计算精度。
本发明是通过以下技术方案实现的:
本发明包括:若干并行的矩阵浮点乘法器,每个矩阵浮点乘法器包括:控制管理模块、运算模块和存储模块,其中:控制管理模块与运算模块相连传输累加器清零信号,控制管理模块与存储模块相连传输数据地址信号和结果有效信号,运算模块与存储模块相连传输待运算数据信号和运算结果信号。
所述的控制管理模块生成控制信号以控制运算模块和存储模块,该模块包括:数据地址控制子模块、结果有效控制子模块和累加器清零控制子模块,其中:数据地址控制子模块与存储模块相连传输数据地址控制信号,结果有效控制子模块与存储模块相连传输结果有效信号,累加器清零控制子模块与运算模块相连传输累加器清零信号。
所述的运算模块执行矩阵数据的乘法和累加操作,该模块包括:乘法器、浮点-定点转换器、累加器和定点-浮点转换器,其中:乘法器与存储模块相连传输待运算数据信号,累加器与控制管理模块相连传输累加器清零信号,乘法器与浮点-定点转换器相连传输浮点乘法信号,浮点-定点转换器与累加器相连传输定点乘法信号,累加器与定点-浮点转换器相连传输浮点累加信号,定点-浮点转换器与存储模块相连传输运算结果信号。
所述的存储模块缓存待运算矩阵的数据和结果矩阵的数据,并提供总线访问接口使外部其他设备与本发明装置进行数据交换,该模块包括:乘数矩阵存储单元、被乘数矩阵存储单元、结果矩阵存储单元、总线数据接口和内部数据接口,其中:乘数矩阵存储单元与控制管理模块相连传输乘数地址信号,被乘数矩阵存储单元与控制管理模块相连传输被乘数地址信号,结果矩阵存储单元与控制管理模块相连传输结果有效信号,乘数矩阵存储单元分别与总线数据接口和内部数据接口相连传输待运算的乘数信息,被乘数矩阵存储单元分别与总线数据接口和内部数据接口相连传输待运算的被乘数信息,结果矩阵存储单元分别与总线数据接口和内部数据接口相连传输运算结果信息,总线数据接口与外部其他设备相连传输待运算的乘数信息、待运算的被乘数信息和运算结果信息,内部数据接口与运算模块相连传输待运算的乘数信息、待运算的被乘数信息和运算结果信息。
本发明的工作过程:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010139877.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:自适应的统一电力市场交易方法
- 下一篇:液晶显示器的散热结构