CN108572928B - 一种人工智能设备及存取方法 - Google Patents
一种人工智能设备及存取方法 Download PDFInfo
- Publication number
- CN108572928B CN108572928B CN201810203953.6A CN201810203953A CN108572928B CN 108572928 B CN108572928 B CN 108572928B CN 201810203953 A CN201810203953 A CN 201810203953A CN 108572928 B CN108572928 B CN 108572928B
- Authority
- CN
- China
- Prior art keywords
- level
- cache
- column
- chip
- line
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 11
- 239000000872 buffer Substances 0.000 claims abstract description 27
- 238000013473 artificial intelligence Methods 0.000 claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims description 10
- 239000000284 extract Substances 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 3
- 239000004065 semiconductor Substances 0.000 claims description 3
- 238000005265 energy consumption Methods 0.000 abstract description 5
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开一种人工智能设备,包括:一级片外行缓存及一级片外列缓存;至少一个二级行缓存,以松散方式读取一级片外行缓存的参数数据,每一二级行缓存为对应行的计算单元提供参数数据;至少一个二级列缓存,以松散方式读取一级片外列缓存的特征数据,每一二级列缓存为对应列的计算单元提供特征数据。采用两级缓存的模式,有效降低了内存能耗,并提高内部数据带宽,大大提高片外内存读取速度。
Description
技术领域
本发明涉及电子设备技术领域,尤其涉及一种人工智能设备及存取方法。
背景技术
技术的进展已经产生更小且功能更强大的计算装置。数据存储是人工智能微处理器的核心部件,其效率决定了微处理器的性能和功耗。在传统的微处理器架构中,通常使用高速缓存结构来保存最近使用的指令和数据,高速缓存成为了弥补片外内存带宽,降低片外内存访问延迟和功耗的关键。
为了满足人工智能的发展需要,需要进一步改善微处理的性能和功耗。
发明内容
本发明的目的在于,提出一种能够降低内存能耗,提高内部数据带宽的人工智能设备及存取方法。
为了实现上述目的,本发明所采用的技术方案为:
一种人工智能设备,包括:
一级片外行缓存及一级片外列缓存;
至少一个二级行缓存,以松散方式读取一级片外行缓存的参数数据,每一二级行缓存为对应行的计算单元提供参数数据;
至少一个二级列缓存,以松散方式读取一级片外列缓存的特征数据,每一二级列缓存为对应列的计算单元提供特征数据。
其中,所述一级片外行缓存、一级片外列缓存、二级行缓存、二级列缓存的寻址地址相互并列。
其中,一行逻辑电路控制二级行缓存,一列逻辑电路控制二级列缓存,所述行逻辑电路、列逻辑电路独立控制二级行缓存、二级列缓存读取数据。
其中,所述一级片外行缓存、一级片外列缓存为高速缓存。
其中,所述二级行缓存、二级列缓存为高速缓存。
其中,其集成于至少一个半导体裸片中。
本发明还公开一种人工智能设备的存取方法,包括如下步骤:
接收存取请求;
二级行缓存从一级片外行缓存中读取参数数据,二级列缓存从一级片外列缓存中读取特征数据;
计算单元从对应行的二级行缓存提取参数数据,从对应列的二级列缓存提取特征数据执行计算任务;
计算单元输出计算结果至二级行缓存及二级列缓存中;
依据先二级行缓存再二级列缓存的顺序将计算结果保存到一级片外行缓存、一级片外列缓存。
其中,还包括:二级行缓存和二级列缓存释放存储空间。
本发明的有益效果为:
采用两级缓存的模式,两级缓存地址空间互不重叠,,降低了二级缓存访问频次,降低了内存能耗,并提高内部数据带宽,大大提高内存使用率。
附图说明
图1为本发明人工智能设备的结构示意图。
具体实施方式
以下将结合附图所示的具体实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
参阅图1所述,本发明的一实施方式中提供一种人工智能设备,包括:
一级片外行缓存及一级片外列缓存;
至少一个二级行缓存,以松散方式读取一级片外行缓存的参数数据,每一二级行缓存为对应行的计算单元提供参数数据;
至少一个二级列缓存,以松散方式读取一级片外列缓存的特征数据,每一二级列缓存为对应列的计算单元提供特征数据。
上述实施方式中,所述一级片外缓存、一级片外列缓存存储所有数据,一级片外行缓存、一级片外列缓存可读可写。二级片内缓存包括一个及以上独立的二级行缓存,图1所示包括二级行缓存0、二级行缓存1……·二级行缓存m,还包括一个及以上独立的二级列缓存,图1所示包括二级列缓存0、二级列缓存1……·二级列缓存n。二级行缓存与二级列缓存只可读,每一二级行缓存为一行计算单元提供参数数据,每一二级列缓存为一列计算单元提供特征数据。二级行缓存、二级列缓存的数量可根据计算单元的行数量和列数量进行灵活扩展。
所述一级片外行缓存、一级片外列缓存、二级行缓存、二级列缓存的寻址地址相互并列。在该实施方式中,一级片外缓存、二级行缓存、二级列缓存的寻址地址空间不是重叠的,而是并列的两级缓存地址空间互不重叠,降低了二级缓存访问频次,降低了内存能耗,并提高内部数据带宽,大大提高内存使用率。一级片外行缓存、一级片外列缓存依据数据获取的顺序保存所有数据,二级行缓存、二级列缓存分别获取一级片外行缓存、一级片外列缓存的数据,并按照一定存储规则进行存储,所述一定存储规则依据具体的使用需求进行设定。
一行逻辑电路控制二级行缓存,一列逻辑电路控制二级列缓存,所述行逻辑电路、列逻辑电路独立控制二级行缓存、二级列缓存读取数据。二级行缓存、二级列缓存分别由各自的电路进行控制,互不干扰,相互独立工作。
所述一级片外行缓存、一级片外列缓存为高速缓存,所述二级行缓存、二级列缓存为高速缓存。采用高速缓存保存最近使用的指令和数据,成为了弥补片外缓存带宽,降低片外缓存访问延迟和功耗的关键。
上述实施方式所述的一种人工智能设备,其集成于至少一个半导体裸片中。所述人工智能设备制作成一集成芯片,满足现代设备小型化的需求。
本发明的一实施方式中还公开一种人工智能设备的存取方法,所述人工智能设备存取方法应用于以上实施方式所述的人工智能设备中,在以上实施方式中公开了所述人工智能设备包括至少一个及以上的二级行缓存,图1所示包括二级行缓存0、二级行缓存1……·二级行缓存m,还包括一个及以上独立的二级列缓存,图1所示包括二级列缓存0、二级列缓存1……·二级列缓存n,所述人工智能设备的存取方法包括如下步骤:
接收存取请求;
二级行缓存从一级片外行缓存中读取参数数据,二级列缓存从一级片外列缓存中读取特征数据;在该步骤中,先从二级行缓存0开始,根据人工智能使用的需求从一级片行外缓存中读取数据,并暂时存储。接着按照先二级行缓存,再二级列缓存的顺序,依次从一级片外行缓存、一级片外列缓存中获取参数数据以及特征数据,并存储;
计算单元从对应行的二级行缓存提取参数数据,从对应列的二级列缓存提取特征数据,执行计算任务;
计算单元输出计算结果至二级行缓存及二级列缓存中;
依据先二级行缓存再二级列缓存的顺序将计算结果保存到一级片外行缓存、一级片外列缓存中,所述计算结果依据数据存储的需求,既可以保存在一级片外行缓存也可以保存在一级片外列缓存中,一级行缓存与一级列缓存均用于保存计算结果。该步骤中,按照先二级行缓存,再二级列缓存的顺利依次把计算结果保存到一级片外行缓存、一级片外列缓存中,保存完毕后二级行缓存和二级列缓存释放存储空间,可被下一次数据覆盖。
上述实施方式,采用二级缓存的模式,有效降低了内存能耗,并提高内部数据带宽,大大提高片外内存读取速度。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
Claims (5)
1.一种人工智能设备,其特征在于,包括:
一级片外行缓存及一级片外列缓存;
至少一个二级行缓存,以松散方式读取一级片外行缓存的参数数据,每一二级行缓存为对应行的计算单元提供参数数据;
至少一个二级列缓存,以松散方式读取一级片外列缓存的特征数据,每一二级列缓存为对应列的计算单元提供特征数据;
所述一级片外行缓存、一级片外列缓存、二级行缓存、二级列缓存的寻址地址相互并列;
一行逻辑电路控制二级行缓存,一列逻辑电路控制二级列缓存,所述行逻辑电路、列逻辑电路独立控制二级行缓存、二级列缓存读取数据。
2.根据权利要求1所述的一种人工智能设备,其特征在于:
所述一级片外行缓存及一级片外列缓存为高速缓存。
3.根据权利要求1所述的一种人工智能设备,其特征在于:
所述二级行缓存、二级列缓存为高速缓存。
4.根据权利要求1所述的一种人工智能设备,其特征在于:其集成于
至少一个半导体裸片中。
5.一种人工智能设备的存取方法,其特征在于:包括如下步骤:
接收存取请求;
二级行缓存从一级片外行缓存中读取参数数据,二级列缓存从一级片外列缓存中读取特征数据;在该步骤中,先从二级行缓存0开始,根据人工智能使用的需求从一级片行外缓存中读取数据,并暂时存储;接着按照先二级行缓存,再二级列缓存的顺序,依次从一级片外行缓存、一级片外列缓存中获取参数数据以及特征数据,并存储;计算单元从对应行的二级行缓存提取参数数据,从对应列的二级列缓存提取特征数据,执行计算任务;计算单元输出计算结果至二级行缓存及二级列缓存中;依据先二级行缓存再二级列缓存的顺序将计算结果保存到一级片外行缓存、一级片外列缓存中,所述计算结果依据数据存储的需求,既可以保存在一级片外行缓存也可以保存在一级片外列缓存中,一级行缓存与一级列缓存均用于保存计算结果,该步骤中,按照先二级行缓存,再二级列缓存的顺利依次把计算结果保存到一级片外行缓存、一级片外列缓存中,保存完毕后二级行缓存和二级列缓存释放存储空间,可被下一次数据覆盖。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810203953.6A CN108572928B (zh) | 2018-03-13 | 2018-03-13 | 一种人工智能设备及存取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810203953.6A CN108572928B (zh) | 2018-03-13 | 2018-03-13 | 一种人工智能设备及存取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108572928A CN108572928A (zh) | 2018-09-25 |
CN108572928B true CN108572928B (zh) | 2024-02-02 |
Family
ID=63573891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810203953.6A Active CN108572928B (zh) | 2018-03-13 | 2018-03-13 | 一种人工智能设备及存取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108572928B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113032295B (zh) * | 2021-02-25 | 2022-08-16 | 西安电子科技大学 | 一种数据包二级缓存方法、系统及应用 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6085288A (en) * | 1997-04-14 | 2000-07-04 | International Business Machines Corporation | Dual cache directories with respective queue independently executing its content and allowing staggered write operations |
CN104391676A (zh) * | 2014-11-10 | 2015-03-04 | 中国航天科技集团公司第九研究院第七七一研究所 | 一种低成本高带宽的微处理器取指方法及其取指结构 |
CN107066239A (zh) * | 2017-03-01 | 2017-08-18 | 智擎信息系统(上海)有限公司 | 一种实现卷积神经网络前向计算的硬件结构 |
CN107277539A (zh) * | 2011-05-27 | 2017-10-20 | 寰发股份有限公司 | 减少用于上下文自适应熵解码中的行缓存的方法及装置 |
-
2018
- 2018-03-13 CN CN201810203953.6A patent/CN108572928B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6085288A (en) * | 1997-04-14 | 2000-07-04 | International Business Machines Corporation | Dual cache directories with respective queue independently executing its content and allowing staggered write operations |
CN107277539A (zh) * | 2011-05-27 | 2017-10-20 | 寰发股份有限公司 | 减少用于上下文自适应熵解码中的行缓存的方法及装置 |
CN104391676A (zh) * | 2014-11-10 | 2015-03-04 | 中国航天科技集团公司第九研究院第七七一研究所 | 一种低成本高带宽的微处理器取指方法及其取指结构 |
CN107066239A (zh) * | 2017-03-01 | 2017-08-18 | 智擎信息系统(上海)有限公司 | 一种实现卷积神经网络前向计算的硬件结构 |
Non-Patent Citations (1)
Title |
---|
CMP体系结构上非包含高速缓存的设计及性能分析;冯昊等;《计算机工程与设计》;20080416(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108572928A (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108171317B (zh) | 一种基于soc的数据复用卷积神经网络加速器 | |
CN107301455B (zh) | 用于卷积神经网络的混合立方体存储系统及加速计算方法 | |
US20040088489A1 (en) | Multi-port integrated cache | |
CN107656878B (zh) | 具有内存高速缓存管理器的高带宽存储器 | |
US20080229026A1 (en) | System and method for concurrently checking availability of data in extending memories | |
CN106856098B (zh) | 一种用于DRAM或eDRAM刷新的装置及其方法 | |
JP2018049381A (ja) | メモリ制御回路、メモリシステムおよびプロセッサシステム | |
CN110058816B (zh) | 一种基于ddr的高速多用户队列管理器及方法 | |
CN112506437A (zh) | 芯片、数据搬移方法和电子设备 | |
CN108572928B (zh) | 一种人工智能设备及存取方法 | |
US11494120B2 (en) | Adaptive memory transaction scheduling | |
CN100414518C (zh) | 改进的虚拟地址变换方法及其装置 | |
KR102355374B1 (ko) | 이종 메모리를 이용하여 메모리 주소 변환 테이블을 관리하는 메모리 관리 유닛 및 이의 메모리 주소 관리 방법 | |
US8533396B2 (en) | Memory elements for performing an allocation operation and related methods | |
JP2002351741A (ja) | 半導体集積回路装置 | |
CN106776360B (zh) | 一种芯片及电子设备 | |
CN116166186A (zh) | 一种基于双端口Sram的Cache控制器及工作方法 | |
US9817767B2 (en) | Semiconductor apparatus and operating method thereof | |
JP7177948B2 (ja) | 情報処理装置、及び情報処理方法 | |
CN113377684B (zh) | 数据写入系统与方法 | |
KR101967857B1 (ko) | 다중 캐시 메모리를 구비한 지능형 반도체 장치 및 지능형 반도체 장치에서의 메모리 접근 방법 | |
CN208298172U (zh) | 一种二级存储的微处理器 | |
JP2018049672A (ja) | メモリシステムおよびプロセッサシステム | |
US11094368B2 (en) | Memory, memory chip and memory data access method | |
Vudarapu et al. | Optimization of SDRAM memory controller for high-speed operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information |
Address after: 350015 New Continental Science Park No. 1 Rujiangxi Road, Mawei District, Fuzhou City, Fujian Province Applicant after: NEWLAND DIGITAL TECHNOLOGY Co.,Ltd. Address before: 350015 New Continental Science Park No. 1 Rujiangxi Road, Mawei District, Fuzhou City, Fujian Province Applicant before: Fujian Newland Computer Co.,Ltd. |
|
CB02 | Change of applicant information | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |