CN117687953A - 一种支持动态分配的运算单元结构 - Google Patents
一种支持动态分配的运算单元结构 Download PDFInfo
- Publication number
- CN117687953A CN117687953A CN202311162611.1A CN202311162611A CN117687953A CN 117687953 A CN117687953 A CN 117687953A CN 202311162611 A CN202311162611 A CN 202311162611A CN 117687953 A CN117687953 A CN 117687953A
- Authority
- CN
- China
- Prior art keywords
- operation units
- acceleration module
- module
- operation unit
- acceleration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000001133 acceleration Effects 0.000 claims abstract description 46
- 238000001914 filtration Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
本发明公开了一种支持动态分配的运算单元结构,涉及运算芯片技术领域,包括:共享运算单元模块,设置有寄存器和N个运算单元;寄存器用于对已占用的运算单元数量进行判断;加速模块,通过MUX与N个运算单元相连接;加速模块调用运算单元进行工作前,先读取寄存器对已占用的运算单元数量进行判断,随后根据自身需要的运算速度以及共享运算单元模块中空闲的运算单元数量,动态的调用运算单元进行运算。本发明通过该运算单元结构,可以动态的调整运算单元数量,对运算单元进行资源分配,解决了加速器中单一运算单元结构速度慢的同时,相对于多运算单元结构有效降低了芯片面积以及功耗。
Description
技术领域
本发明涉及运算芯片技术领域,更具体地说,它涉及一种支持动态分配的运算单元结构。
背景技术
现有SOC芯片中,为了最大程度的提高CPU运行效率,往往使用多种运算加速模块进行运算加速,其中最为主流的是使用FIR(有限长单位冲激响应)、I IR(无限长单位冲激响应)滤波加速模块以及FFT(快速傅里叶变换)模块等。通过使用这些运算加速模块定向的进行加速运算,可以节省CPU计算的时间,提高SOC芯片的工作效率,然而这些模块中的运算单元往往会带来额外的面积功耗上的开销。因此速度以及面积功耗的折中是一个很重要的研究方向,主流SOC芯片结构如图1所示。
目前的主流SOC运算芯片中,加速模块的主要结构有以下两种:
1、每个加速模块采用一个运算单元进行运算,该结构由于运算单元数量少,面积以及功耗较小,但处理速度慢,对速度要求高的应用并不适用。
2、每个加速模块采用多个运算单元进行运算,该结构运算单元数量多,处理速度快,但芯片总体上的面积以及功耗是一个挑战。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种支持动态分配的运算单元结构,通过调整运算单元数量,解决了加速器中单一运算单元结构速度慢的同时,相对于多运算单元结构有效降低了芯片面积以及功耗的问题。
为实现上述目的,本发明提供了如下技术方案:一种支持动态分配的运算单元结构,包括共享运算单元模块,所述共享运算单元模块中设置有寄存器和N个运算单元;
寄存器用于对已占用的运算单元数量进行判断;
各个所述运算单元均通过MUX与加速模块相连接;
加速模块调用运算单元进行工作前,先读取寄存器对已占用的运算单元数量进行判断,随后根据自身需要的运算速度以及共享运算单元模块中空闲的运算单元数量,动态的调用运算单元进行运算。
进一步的,先进行工作的加速模块具有使用运算单元的优先权,可以使用尽量多的运算单元进行运算,后进行工作的加速模块只能从剩余空闲的运算单元进行选择。
进一步的,所述加速模块包括FIR/IIR加速模块和FFT加速模块;
FIR/IIR加速模块包括FIR滤波模块和IIR滤波器。
进一步的,所述FIR/IIR加速模块和FFT加速模块内均包含至少一个运算单元,该运算单元用于专用加速运算。
进一步的,所述FIR/IIR加速模块和FFT加速模块的各个运算单元均通过MUX连接到共享运算单元模块中,进而动态的分配运算单元。
与现有技术相比,本发明具备以下有益效果:
本发明通过该运算单元结构,可以动态的调整运算单元数量,对运算单元进行资源分配,解决了加速器中单一运算单元结构速度慢的同时,相对于多运算单元结构有效降低了芯片面积以及功耗。
附图说明
图1为现有技术的SOC芯片结构示意图;
图2为本发明一种支持动态分配的运算单元结构的结构示意图。
图3为本发明一种支持动态分配的运算单元结构的FIR/IIR加速模块加速器同时工作时序图。
具体实施方式
参照图2所示,一种支持动态分配的运算单元结构,包括共享运算单元模块,所述共享运算单元模块中设置有8个运算单元Ⅰ和寄存器;
寄存器用于对已占用的运算单元数量进行判断;
各个所述运算单元Ⅰ均通过MUX与加速模块相连接,所述加速模块包括FIR/IIR加速模块和FFT加速模块;
FIR/IIR加速模块所能支持的运算单元数量为A(A≥1,A≤4),FFT加速单元所能支持的运算单元数量为B(B≥1,B≤8),则FIR/IIR加速模块加速器同时工作的步骤说明如下,时序如图3所示:
包括以下步骤:
步骤一:系统初始化后,CPU访问共享运算单元模块中的寄存器,此时由于没有共享运算单元进行工作,CPU读到的寄存器数量状态为8;
步骤二:CPU配置共享运算单元中的寄存器,将3个运算单元的输入切到FIR滤波加速器,此时加上FIR滤波模块中默认存在1个专用的运算单元,FIR滤波功能总共使用的运算单元数量为4个;
步骤三:CPU控制4个运算单元进行FIR滤波加速;
步骤四:FFT加速器请求工作,CPU访问共享运算单元中的寄存器,确认可以工作的数量为8-3=5个;
步骤五:CPU配置共享运算单元中的寄存器,将其余空闲的5个运算单元输入切到FFT加速器,此时由于FFT加速模块中默认存在1个专用的运算单元,可用于FFT变换的运算单元数量为5+1=6个;
步骤六:同时进行6个运算单元的FFT变换以及4个运算单元的FIR滤波;
步骤七:完成FIR滤波,此时CPU读取状态寄存器,并将FIR滤波模块释放的3个运算单元中的2个切换到FFT加速器接口,使用8个运算单元进行FFT加速。
步骤八:完成FFT运算。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本模板的保护范围。
Claims (5)
1.一种支持动态分配的运算单元结构,其特征在于,包括:
共享运算单元模块,设置有寄存器和N个运算单元;
寄存器用于对已占用的运算单元数量进行判断;
加速模块,通过MUX与N个运算单元相连接;
加速模块调用运算单元进行工作前,先读取寄存器对已占用的运算单元数量进行判断,随后根据自身需要的运算速度以及共享运算单元模块中空闲的运算单元数量,动态的调用运算单元进行运算。
2.根据权利要求1所述的一种支持动态分配的运算单元结构,其特征在于,先进行工作的加速模块具有使用运算单元的优先权,后进行工作的加速模块从剩余空闲的运算单元进行选择。
3.根据权利要求2所述的一种支持动态分配的运算单元结构,其特征在于,所述加速模块包括FIR/IIR加速模块和FFT加速模块;
FIR/IIR加速模块包括FIR滤波模块和IIR滤波器。
4.根据权利要求3所述的一种支持动态分配的运算单元结构,其特征在于,所述FIR/IIR加速模块和FFT加速模块内均包含至少一个运算单元。
5.根据权利要求4所述的一种支持动态分配的运算单元结构,其特征在于,所述FIR/IIR加速模块和FFT加速模块的各个运算单元均通过MUX连接到共享运算单元模块中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311162611.1A CN117687953A (zh) | 2023-09-11 | 2023-09-11 | 一种支持动态分配的运算单元结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311162611.1A CN117687953A (zh) | 2023-09-11 | 2023-09-11 | 一种支持动态分配的运算单元结构 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117687953A true CN117687953A (zh) | 2024-03-12 |
Family
ID=90125150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311162611.1A Pending CN117687953A (zh) | 2023-09-11 | 2023-09-11 | 一种支持动态分配的运算单元结构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117687953A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63196869A (ja) * | 1987-02-12 | 1988-08-15 | Yokogawa Electric Corp | Fftアナライザのズ−ミング装置 |
JP2006155223A (ja) * | 2004-11-29 | 2006-06-15 | Matsushita Electric Ind Co Ltd | データ処理装置 |
CN105260333A (zh) * | 2015-09-24 | 2016-01-20 | 福州瑞芯微电子股份有限公司 | 音频信号的加速处理方法及装置 |
CN109343964A (zh) * | 2018-10-31 | 2019-02-15 | 邵榆涵 | 基于局域网的数据协同处理方法 |
CN110597627A (zh) * | 2019-08-24 | 2019-12-20 | 中国电子科技集团公司第十五研究所 | 基于虚拟fpga的数据库运算加速装置及加速方法 |
CN113515240A (zh) * | 2021-09-03 | 2021-10-19 | 西安紫光国芯半导体有限公司 | 一种芯片计算器件及计算系统 |
CN114868108A (zh) * | 2019-11-27 | 2022-08-05 | 亚马逊技术有限公司 | 组合多个整数和浮点数据类型的脉动阵列部件 |
CN115934303A (zh) * | 2021-08-06 | 2023-04-07 | 上海擎感智能科技有限公司 | 共享式运算方法及共享式运算装置 |
-
2023
- 2023-09-11 CN CN202311162611.1A patent/CN117687953A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63196869A (ja) * | 1987-02-12 | 1988-08-15 | Yokogawa Electric Corp | Fftアナライザのズ−ミング装置 |
JP2006155223A (ja) * | 2004-11-29 | 2006-06-15 | Matsushita Electric Ind Co Ltd | データ処理装置 |
CN105260333A (zh) * | 2015-09-24 | 2016-01-20 | 福州瑞芯微电子股份有限公司 | 音频信号的加速处理方法及装置 |
CN109343964A (zh) * | 2018-10-31 | 2019-02-15 | 邵榆涵 | 基于局域网的数据协同处理方法 |
CN110597627A (zh) * | 2019-08-24 | 2019-12-20 | 中国电子科技集团公司第十五研究所 | 基于虚拟fpga的数据库运算加速装置及加速方法 |
CN114868108A (zh) * | 2019-11-27 | 2022-08-05 | 亚马逊技术有限公司 | 组合多个整数和浮点数据类型的脉动阵列部件 |
CN115934303A (zh) * | 2021-08-06 | 2023-04-07 | 上海擎感智能科技有限公司 | 共享式运算方法及共享式运算装置 |
CN113515240A (zh) * | 2021-09-03 | 2021-10-19 | 西安紫光国芯半导体有限公司 | 一种芯片计算器件及计算系统 |
Non-Patent Citations (2)
Title |
---|
IETHE, B. AND MICHALIK 等: "Reconfigurable system-on-chip data processing units for space imaging instruments", PROCEEDINGS OF THE CONFERENCE ON DESIGN, AUTOMATION AND TEST IN EUROPE, vol. 2007, 16 April 2007 (2007-04-16) * |
郑伟, 姚庆栋, 张明, 蒋志迪, 李东晓, 赖莉亚, 周莉: "一种支持SIMD指令的低功耗分裂式ALU设计", 计算机工程, vol. 30, no. 17, 5 May 2005 (2005-05-05) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7353516B2 (en) | Data flow control for adaptive integrated circuitry | |
US7325123B2 (en) | Hierarchical interconnect for configuring separate interconnects for each group of fixed and diverse computational elements | |
CN110751280A (zh) | 一种应用于卷积神经网络的可配置卷积加速器 | |
CN108416433B (zh) | 一种基于异步事件的神经网络异构加速方法和系统 | |
CN113114593B (zh) | 一种片上网络中双信道路由器及其路由方法 | |
EP1882956A1 (en) | Test device, test method, and test control program | |
KR100959136B1 (ko) | 직접 메모리 접근 제어기 및 직접 메모리 접근 채널의데이터 전송 방법 | |
CN111597038B (zh) | 一种超级计算机i/o转发结点轮询映射方法 | |
CN106572500B (zh) | 一种c-ran中硬件加速器的调度方法 | |
CN112418396A (zh) | 一种基于fpga的稀疏激活感知型神经网络加速器 | |
KR20180018729A (ko) | 집적 회로 입력들 및 출력들 | |
CN117687953A (zh) | 一种支持动态分配的运算单元结构 | |
CN107132903B (zh) | 一种节能管理实现方法、装置及网络设备 | |
Torrellas et al. | The performance of the cedar multistage switching network | |
WO2009067161A1 (en) | Method and apparatus for performing complex calculations in a multiprocessor array | |
CN1851652A (zh) | 嵌入式sram操作系统进程优先级轮转调度的实现方法 | |
CN101030184A (zh) | 一种动态改变dma外围设备数据传输申请优先级的方法 | |
US7370158B2 (en) | SIMD process with multi-port memory unit comprising single-port memories | |
JP6236996B2 (ja) | 情報処理装置および情報処理装置の制御方法 | |
US7856527B2 (en) | Raid system and data transfer method in raid system | |
CN108196849A (zh) | 一种低延迟指令调度器 | |
JPH10283304A (ja) | 割り込み要求を処理する方法及びシステム | |
CN115330587A (zh) | 图形处理器的分布式存储互联结构、显卡及访存方法 | |
CN112486905B (zh) | 可重构异构化pea互连方法 | |
EP2793141B1 (en) | Engine control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |