CN109240980A - 具有多个高速串行访存通道的访存密集型算法加速芯片 - Google Patents
具有多个高速串行访存通道的访存密集型算法加速芯片 Download PDFInfo
- Publication number
- CN109240980A CN109240980A CN201810673255.2A CN201810673255A CN109240980A CN 109240980 A CN109240980 A CN 109240980A CN 201810673255 A CN201810673255 A CN 201810673255A CN 109240980 A CN109240980 A CN 109240980A
- Authority
- CN
- China
- Prior art keywords
- high speed
- memory access
- chip
- speed serialization
- module
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
- G06F15/17368—Indirect interconnection networks non hierarchical topologies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Memory System (AREA)
Abstract
本发明涉及计算机系统结构与集成电路设计领域,公开了一种具有多个高速串行访存通道的访存密集型算法加速芯片,包括若干个执行算法中数据处理操作的算法计算内核及若干个高速串行访存通道,还包括片上互连网络模块,算法计算内核与高速串行访存通道之间通过片上互连网络模块互连,高速串行访存通道连有片外存储器芯片,片上互连网络模块的实现方式包括单总线、多总线、环形网络、二维网格或交叉开关。本发明具有多个高速串行访存通道的访存密集型算法加速芯片,可以根据算法处理需求灵活扩展高速串行访存通道个数从而扩展访存带宽,支持各种地址映射方式,且支持算法加速芯片之间的数据直接传输,为整机系统架构设计提供了更好的灵活性。
Description
技术领域
本发明涉及计算机系统结构与集成电路设计领域,具体涉及一种具有多个高速串行访存通道的访存密集型算法加速芯片。
背景技术
在各种不同类型的算法中,有大量的算法属于访存密集型算法,也就是算法执行过程中访存操作所占的比重更高,访存性能很大程度上决定了算法运行时性能。特别是对于那种访存模式不规则的算法,也就是那种访存局部性很差的算法,Cache(高速缓存)在算法执行过程中不能起到有效的加速作用。在这种情况下,访存带宽和延时对于算法运行时性能起到决定性作用。
当前,为提高存储系统的性能,业界推出了多种不同技术路线的新型存储技术,比如DDR4/DDR5、GDDR5、HMC(Hybrid Memory Cube)、HBM(High Bandwidth Memory)等。虽然各种新型存储技术能够提高越来越高的访存带宽,但是依然存在两个方面的不足。一是这些存储技术的带宽提高受限,它们采用多位并行的接口总线,进一步提高带宽的主要方式是采用更宽的接口总线或者提高接口速率,但是多位并行绑定传输对于信号完整性要求较高,更宽更高速率的接口实现难度越来越大,主处理器如果要进一步提高访存带宽,必须集成更多的访存接口,受限于芯片尺寸和管脚数量,宽总线类型访存接口的集成数量难以大幅提升;二是新型存储技术的实现成本较高,如先进的HBM技术的工程费用就高达上千万美元;三是上述各种新型存储技术本身不具有共享使用模式,或者共享的粒度很低,比如DDR4/DDR5、GDDR5、以及HBM存储介质都只能被与之直接相连的主控芯片访问,不能实现多个主控芯片的直接共享访问;HMC虽然能够连接多个主控芯片,但是不支持超过4个以上的主控芯片共享使用。上述各种新型存储技术的弱共享使用特性一定程度上更加使得采用新型存储的成本更高,而受制于存储技术,算法加速芯片的访存带宽及互相之间的数据传输也受到了极大的影响,导致系统架构设计复杂。
发明内容
本发明的目的就是针对上述技术的不足,提供一种具有多个高速串行访存通道的访存密集型算法加速芯片,可以根据算法处理需求灵活扩展高速串行访存通道个数从而扩展访存带宽,支持各种地址映射方式,且高速串行访存通道能够支持算法加速芯片之间的数据直接传输,为整机系统架构设计提供了更好的灵活性。
为实现上述目的,本发明所设计的具有多个高速串行访存通道的访存密集型算法加速芯片,包括若干个执行算法中数据处理操作的算法计算内核及若干个高速串行访存通道,还包括片上互连网络模块,所述算法计算内核与所述高速串行访存通道之间通过所述片上互连网络模块互连,所述高速串行访存通道连有片外存储器芯片,所述片上互连网络模块的实现方式包括单总线、多总线、环形网络、二维网格或交叉开关。
优选地,所述算法计算内核与所述高速串行访存通道数量相等,所述高速串行访存通道与所述算法计算内核一一对应紧耦合连接,所述算法计算内核均与所述片上互连网络模块连通。
优选地,所述高速串行访存通道与所述算法计算内核松耦合,所述算法计算内核均与所述片上互连网络模块连通,所述高速串行访存通道均与所述片上互连网络模块连通。
优选地,所述高速串行访存通道与片外存储器芯片的连通方式为一对一、一对多、多对一或者多对多中的一种或多种,访存密集型算法加速芯片所具有的聚合访存带宽为所有高速串行访存通道的总带宽。
优选地,所述片上互连网络模块为8n端口高阶交叉开关,n为自然数,由第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关、第四4n端口交叉开关、第五4n端口交叉开关和第六4n端口交叉开关级联而成,其中所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关的其中2n个端口均与所述算法计算内核或高速串行访存通道连接,所述第五4n端口交叉开关和第六4n端口交叉开关与所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关交换级联,所述第五4n端口交叉开关分别与所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关的其中2n个端口互连,所述第六4n端口交叉开关分别与所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关的另外2n个端口互连,所述端口均为双向端口。
优选地,所述算法计算内核内设置有地址译码器,所述地址译码器判断所述算法计算内核需要访问的内存地址所对应的高速串行访存通道ID号,完成地址译码后将访存请求发送至指定的高速串行访存通道,如果去往的目标片外存储器芯片存在超过一个高速串行访存通道,采取轮转方式从多个可选高速串行访存通道中选取一个发出访存请求。
优选地,所述访存密集型算法加速芯片之间通过所述高速串行访存通道连通,实现芯片间的数据直接传输,无需经过片外存储器芯片中转。
优选地,所述片外存储器芯片包括片上存储器及若干个高速串行访问通道,所述片上存储器包括若干个可并行访问的存储子块,所述存储子块和所述高速串行访问通道之间通过所述片上互连网络模块互连。
优选地,所述存储子块与所述高速串行访问通道数量相等,所述高速串行访问通道与所述存储子块一一对应紧耦合连接,所述存储子块通过所述片上互连网络模块互连,所述存储子块包括存储体,所述存储体上与存储体BIST逻辑模块和通道访问控制逻辑模块相连,所述通道访问控制逻辑模块分别通过RX模块和TX模块与所述高速串行访问通道通信,所述通道访问控制逻辑模块通过片上互连网络接口逻辑模块与所述片上互连网络模块互连,其中,所述RX模块解析来自所述高速串行访问通道的串行数据流,将其转换为有效的读请求和写请求,并转发给所述通道访问控制逻辑模块,所述TX模块处理来自所述通道访问控制逻辑模块转发的响应报文或者请求报文,并将报文转换为所述高速串行访问通道上的数据流,所述通道访问控制逻辑模块接收到来自所述RX模块的访存读写请求报文之后,判断访存地址是否属于所述通道访问控制逻辑模块所在的存储子块,如果属于所述通道访问控制逻辑模块所在的存储子块,则直接读写与所述通道访问控制逻辑模块直连的存储体,所述存储体返回读数据或写响应之后所述通道访问控制逻辑模块将结果打包成响应报文,并发送至所述TX模块;如果不属于所述通道访问控制逻辑模块所在的存储子块,则将该访存读写请求转发至所述片上互连网络接口逻辑模块,所述通道访问控制逻辑模块同时也需要接收所述片上互连网络接口逻辑模块转发的来自其它高速串行访问通道的访存读写请求,在处理完访存读写请求之后再将响应返还至所述片上互连网络接口逻辑模块。
优选地,所述高速串行访问通道与所述存储子块松耦合,所述存储子块均与所述片上互连网络模块连通,所述高速串行访问通道均通过访问通道模块与所述片上互连网络模块连通,所述访问通道模块包括通道访问控制逻辑模块,所述通道访问控制逻辑模块分别通过RX模块和TX模块与所述高速串行访问通道通信,所述通道访问控制逻辑模块通过片上互连网络接口逻辑模块与所述片上互连网络模块互连,其中,所述RX模块解析来自所述高速串行访问通道的串行数据流,将其转换为有效的读请求和写请求,并转发给所述通道访问控制逻辑模块,所述TX模块处理来自所述通道访问控制逻辑模块转发的响应报文或者请求报文,并将报文转换为所述高速串行访问通道上的数据流,所述通道访问控制逻辑模块接收到来自所述RX模块的访存读写请求报文之后,将该访存读写请求转发至所述片上互连网络接口逻辑模块,并通过所述片上互连网络接口逻辑模块接收所述片上互连网络模块发来的响应报文或者请求报文,所述存储子块包括存储体,所述存储体上连有存储体BIST逻辑模块和存储体控制逻辑模块,所述存储体控制逻辑模块通过片上互连网络接口逻辑模块与所述片上互连网络模块互连。
本发明与现有技术相比,具有以下优点:
1、通过高速串行访存通道连接片外存储器芯片,可以根据算法处理需求灵活扩展高速串行访存通道个数从而扩展访存带宽,并不会造成芯片管脚数量的大幅增长,例如64个30Gbps的高速串行访存通道可以提供高达480GB/s的双向访存带宽;
2、芯片结构规则,物理可实现性好;
3、通过地址译码器,可以灵活支持各种地址映射方式;
4、高速串行访存通道可以用于两个访存密集型算法加速芯片间的直连接口,实现数据直接传输,为整机系统架构设计提供了更好的灵活性。
附图说明
图1为本发明具有多个高速串行访存通道的访存密集型算法加速芯片高速串行访存通道与算法计算内核紧耦合的结构示意图;
图2为本发明具有多个高速串行访存通道的访存密集型算法加速芯片高速串行访存通道与算法计算内核松耦合的结构示意图;
图3为图1中片上互连网络模块的结构示意图;
图4为本发明具有多个高速串行访存通道的访存密集型算法加速芯片算法计算内核中地址译码器的地址译码表结构图;
图5为将高速串行访存通道作为访存密集型算法加速芯片之间直连接口的芯片互连方式示意图;
图6为与本发明连接的片外存储器芯片中高速串行访问通道与存储子块紧耦合的结构示意图;
图7为图6中存储子块的结构示意图;
图8为与本发明连接的片外存储器芯片中高速串行访问通道与存储子块松耦合的结构示意图;
图9为图8中访问通道模块的结构示意图;
图10为图8中存储子块的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步的详细说明。
实施例一
如图1所示,一种具有多个高速串行访存通道的访存密集型算法加速芯片,包括32个执行算法中数据处理操作的算法计算内核及32个高速串行访存通道,还包括片上互连网络模块,算法计算内核与高速串行访存通道之间通过片上互连网络模块互连,高速串行访存通道连有片外存储器芯片。本实施例中,高速串行访存通道与算法计算内核一一对应紧耦合连接,32个算法计算内核均与片上互连网络模块连通,通过片上互连网络模块,任意的算法计算内核可以通过任意的高速串行访存通道访问储存器芯片。本实施例中,算法计算内核负责执行算法中数据处理操作,可以是特定算法的专用加速部件,也可以是通用处理器内核,算法计算内核可以完全同构,也可以根据需要实现为不同的硬件逻辑。
本实施例中,高速串行访存通道与片外存储器芯片的连通方式为一对一,在其它实施例中,可以为一对多、多对一或者多对多中的一种或多种,访存密集型算法加速芯片所具有的聚合访存带宽为所有高速串行访存通道的总带宽。
本实施例中片上互连网络模块具有关键作用,负责算法计算内核和高速串行访存通道之间的数据传输,也就是将算法计算内核的访存请求转发到正确的目标高速串行访存通道,并将高速串行访存通道返回的响应转发给发出访存请求的源算法计算内核;在多个并发的数据传输不存在路径冲突的情况下,可以同时进行数据传输。片上互连网络模块可以采用单总线、多总线、环形网络、二维网格、以及高阶交叉开关等不同方式实现,本实施例中为支持32个互连端口的片上高阶交叉开关,其结构如附图4所示,共由6个16端口交叉开关组合而成,其中第一16端口交叉开关、第二16端口交叉开关、第三16端口交叉开关、第四16端口交叉开关分别使用8个端口连接算法计算内核或者高速串行访存通道,第五16端口交叉开关和第六16端口交叉开关各使用4个端口连接第一16端口交叉开关、第二16端口交叉开关、第三16端口交叉开关以及第四16端口交叉开关;这种组合方式能够保持带宽平衡,最大限度避免拥塞。当算法计算内核个数不等于32时,片上互连网络模块的实现方式与上述32端口的片上交叉开关实现方式基本类似,本发明在此不一一列举。
另外,为使算法计算内核能够通过正确的高速串行访存通道访问片外存储器芯片,算法计算内核内设置有地址译码器,该地址译码器的主要作用就是根据访存地址来确定需要通过哪个高速串行访存通道来访问指定内存地址。地址译码器逻辑的核心是如附图4所示的地址译码表,在该地址译码表中,共有4个位域:序号、有效标志位、地址范围、访存通道号,其中序号为每个地址译码表项的编号;有效标志位表示某个地址译码表项是否有效,只有标志位为1才参与地址译码;地址范围又分为起始地址和地址上界两个子位域,起始地址表示某个地址译码表项所界定的地址范围的起始地址,地址上界表示地址范围的上限地址;访存通道号表示某个地址译码表项所指定的地址范围需要通过哪些高速串行访存通道访问,需要指出的是某个地址范围对应的高速串行访存通道可以多于1个,也就是可以通过多个高速串行访存通道去访问同一段地址空间。如附图4所示,地址译码表共x项,x为大于或等于1的整数;每个地址译码表项的序号分别为1、2、…、x,有效标志位分别为v1、v2、…、vx,有效标志位的值为1或0;每个地址译码表项的起始地址分别为R1_BASE、R2_BASE、…、Rx_BASE;每个地址译码表项的地址上界分别为R1_UPPER、R2_UPPER、…、Rx_UPPER;每个地址译码表项对应的高速串行访存通道号分别为R1_S1、…、R1_Sm1、R2_S1、…、R2_Sm2、…、Rx_S1、…、Rx_Smx,其中m1、m2、…、mx分别表示各地址译码表项对应的访存通道个数,均为大于或等于1的整数。如果某个地址译码表项对应的访存通道数量多于1个,则地址译码器逻辑从多个访存通道中以轮转调度方式选取一个访存通道作为本次访存请求的传输通道。
本实施例中,片外存储器芯片包括片上存储器及若干个高速串行访问通道,片上存储器包括若干个可并行访问的存储子块,存储子块和高速串行访问通道之间通过片上互连网络模块互连,如图6所示,存储子块与高速串行访问通道数量相等,高速串行访问通道与存储子块一一对应紧耦合连接,存储子块通过片上互连网络模块互连,如图7所示,存储子块包括存储体,存储体上与存储体BIST逻辑模块和通道访问控制逻辑模块相连,通道访问控制逻辑模块分别通过RX模块和TX模块与高速串行访问通道通信,通道访问控制逻辑模块通过片上互连网络接口逻辑模块与片上互连网络模块互连,其中,RX模块解析来自高速串行访问通道的串行数据流,将其转换为有效的读请求和写请求,并转发给通道访问控制逻辑模块,TX模块处理来自通道访问控制逻辑模块转发的响应报文或者请求报文,并将报文转换为高速串行访问通道上的数据流,通道访问控制逻辑模块接收到来自RX模块的访存读写请求报文之后,判断访存地址是否属于通道访问控制逻辑模块所在的存储子块,如果属于通道访问控制逻辑模块所在的存储子块,则直接读写与通道访问控制逻辑模块直连的存储体,存储体返回读数据或写响应之后通道访问控制逻辑模块将结果打包成响应报文,并发送至TX模块;如果不属于通道访问控制逻辑模块所在的存储子块,则将该访存读写请求转发至片上互连网络接口逻辑模块,通道访问控制逻辑模块同时也需要接收片上互连网络接口逻辑模块转发的来自其它高速串行访问通道的访存读写请求,在处理完访存读写请求之后再将响应返还至片上互连网络接口逻辑模块。
实施例二
如图2所示,一种具有多个高速串行访存通道的访存密集型算法加速芯片,包括16个执行算法中数据处理操作的算法计算内核及15个高速串行访存通道,还包括片上互连网络模块,算法计算内核与高速串行访存通道之间通过片上互连网络模块互连,高速串行访存通道连有片外存储器芯片。本实施例中,高速串行访存通道与算法计算内核松耦合,16个算法计算内核均与片上互连网络模块连通,15个高速串行访存通道均与片上互连网络模块连通,通过片上互连网络模块,任意的算法计算内核可以通过任意的高速串行访存通道访问储存器芯片。本实施例中,算法计算内核负责执行算法中数据处理操作,可以是特定算法的专用加速部件,也可以是通用处理器内核,算法计算内核可以完全同构,也可以根据需要实现为不同的硬件逻辑。
本实施例中,高速串行访存通道与片外存储器芯片的连通方式为一对一,在其它实施例中,可以为一对多、多对一或者多对多中的一种或多种,访存密集型算法加速芯片所具有的聚合访存带宽为所有高速串行访存通道的总带宽。
本实施例中片上互连网络模块具有关键作用,负责算法计算内核和高速串行访存通道之间的数据传输,也就是将算法计算内核的访存请求转发到正确的目标高速串行访存通道,并将高速串行访存通道返回的响应转发给发出访存请求的源算法计算内核;在多个并发的数据传输不存在路径冲突的情况下,可以同时进行数据传输。片上互连网络模块可以采用单总线、多总线、环形网络、二维网格、以及高阶交叉开关等不同方式实现,本实施例中为支持32个互连端口的片上高阶交叉开关,其结构如附图4所示,共由6个16端口交叉开关组合而成,其中第一16端口交叉开关、第二16端口交叉开关、第三16端口交叉开关、第四16端口交叉开关分别使用8个端口连接算法计算内核或者高速串行访存通道,第五16端口交叉开关和第六16端口交叉开关各使用4个端口连接第一16端口交叉开关、第二16端口交叉开关、第三16端口交叉开关以及第四16端口交叉开关;这种组合方式能够保持带宽平衡,最大限度避免拥塞。当算法计算内核和高速串行访存通道的个数总和不等于32时,片上互连网络模块的实现方式与上述32端口的片上交叉开关实现方式基本类似,本发明在此不一一列举。
另外,为使算法计算内核能够通过正确的高速串行访存通道访问片外存储器芯片,算法计算内核内设置有地址译码器,该地址译码器的主要作用就是根据访存地址来确定需要通过哪个高速串行访存通道来访问指定内存地址。地址译码器逻辑的核心是如附图4所示的地址译码表,在该地址译码表中,共有4个位域:序号、有效标志位、地址范围、访存通道号,其中序号为每个地址译码表项的编号;有效标志位表示某个地址译码表项是否有效,只有标志位为1才参与地址译码;地址范围又分为起始地址和地址上界两个子位域,起始地址表示某个地址译码表项所界定的地址范围的起始地址,地址上界表示地址范围的上限地址;访存通道号表示某个地址译码表项所指定的地址范围需要通过哪些高速串行访存通道访问,需要指出的是某个地址范围对应的高速串行访存通道可以多于1个,也就是可以通过多个高速串行访存通道去访问同一段地址空间。如附图4所示,地址译码表共x项,x为大于或等于1的整数;每个地址译码表项的序号分别为1、2、…、x,有效标志位分别为v1、v2、…、vx,有效标志位的值为1或0;每个地址译码表项的起始地址分别为R1_BASE、R2_BASE、…、Rx_BASE;每个地址译码表项的地址上界分别为R1_UPPER、R2_UPPER、…、Rx_UPPER;每个地址译码表项对应的高速串行访存通道号分别为R1_S1、…、R1_Sm1、R2_S1、…、R2_Sm2、…、Rx_S1、…、Rx_Smx,其中m1、m2、…、mx分别表示各地址译码表项对应的访存通道个数,均为大于或等于1的整数。如果某个地址译码表项对应的访存通道数量多于1个,则地址译码器逻辑从多个访存通道中以轮转调度方式选取一个访存通道作为本次访存请求的传输通道。
本实施例中,片外存储器芯片包括片上存储器及若干个高速串行访问通道,片上存储器包括若干个可并行访问的存储子块,存储子块和高速串行访问通道之间通过片上互连网络模块互连,如图8所示,高速串行访问通道与存储子块松耦合,存储子块均与片上互连网络模块连通,高速串行访问通道均通过访问通道模块与片上互连网络模块连通,如图9所示,访问通道模块包括通道访问控制逻辑模块,通道访问控制逻辑模块分别通过RX模块和TX模块与高速串行访问通道通信,通道访问控制逻辑模块通过片上互连网络接口逻辑模块与片上互连网络模块互连,其中,RX模块解析来自高速串行访问通道的串行数据流,将其转换为有效的读请求和写请求,并转发给通道访问控制逻辑模块,TX模块处理来自通道访问控制逻辑模块转发的响应报文或者请求报文,并将报文转换为高速串行访问通道上的数据流,通道访问控制逻辑模块接收到来自RX模块的访存读写请求报文之后,将该访存读写请求转发至片上互连网络接口逻辑模块,并通过片上互连网络接口逻辑模块接收片上互连网络模块发来的响应报文或者请求报文,如图10所示,存储子块包括存储体,存储体上连有存储体BIST逻辑模块和存储体控制逻辑模块,存储体控制逻辑模块通过片上互连网络接口逻辑模块与片上互连网络模块互连。
另外,本发明所提出的具有多个高速串行访存通道的访存密集型算法加速芯片,高速串行访存通道除了用于连接片外存储器芯片之外,还可以用于两颗访存密集型算法加速芯片之间的直接互连,也就是两颗访存密集型算法加速芯片之间通过高速串行访存通道实现直接的数据传输。这种使用模式在系统中需要多颗访存密集型算法加速芯片协同计算时能够以更有效的方式实现数据交换,适合于两颗访存密集型算法加速芯片之间进行流水处理,不需要通过片外存储器芯片进行数据中转,减少了数据移动和功耗开销。这种将高速串行访存通道作为访存密集型算法加速芯片之间直连通道的使用模式的系统结构如附图5所示,访存密集型算法加速芯片1和访存密集型算法加速芯片2之间通过d个高速串行访存通道直连,其中d为大于或等于1的整数,每颗访存密集型算法加速芯片除了用于直连的d个高速串行访存通道之外的高速串行访存通道可以连接片外存储器芯片,也可以用于连接其它的访存密集型算法加速芯片,因此这种使用模式为整体系统结构的设计提供了非常灵活的技术支撑。
Claims (10)
1.一种具有多个高速串行访存通道的访存密集型算法加速芯片,包括若干个执行算法中数据处理操作的算法计算内核及若干个高速串行访存通道,其特征在于:还包括片上互连网络模块,所述算法计算内核与所述高速串行访存通道之间均与所述片上互连网络模块连通,所述高速串行访存通道连有片外存储器芯片,所述片上互连网络模块的实现方式包括单总线、多总线、环形网络、二维网格或交叉开关。
2.根据权利要求1所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述算法计算内核与所述高速串行访存通道数量相等,所述高速串行访存通道与所述算法计算内核一一对应紧耦合连接,所述算法计算内核均与所述片上互连网络模块连通。
3.根据权利要求1所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述高速串行访存通道与所述算法计算内核松耦合,所述算法计算内核均与所述片上互连网络模块连通,所述高速串行访存通道均与所述片上互连网络模块连通。
4.根据权利要求1所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述高速串行访存通道与片外存储器芯片的连通方式为一对一、一对多、多对一或者多对多中的一种或多种。
5.根据权利要求1所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述片上互连网络模块为8n端口高阶交叉开关,n为自然数,由第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关、第四4n端口交叉开关、第五4n端口交叉开关和第六4n端口交叉开关级联而成,其中所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关的其中2n个端口均与所述算法计算内核或高速串行访存通道连接,所述第五4n端口交叉开关和第六4n端口交叉开关与所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关交换级联,所述第五4n端口交叉开关分别与所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关的其中2n个端口互连,所述第六4n端口交叉开关分别与所述第一4n端口交叉开关、第二4n端口交叉开关、第三4n端口交叉开关和第四4n端口交叉开关的另外2n个端口互连,所述端口均为双向端口。
6.根据权利要求1所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述算法计算内核内设置有地址译码器,所述地址译码器判断所述算法计算内核需要访问的内存地址所对应的高速串行访存通道ID号,完成地址译码后将访存请求发送至指定的高速串行访存通道,如果去往的目标片外存储器芯片存在超过一个高速串行访存通道,采取轮转方式从多个可选高速串行访存通道中选取一个发出访存请求。
7.根据权利要求1所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述访存密集型算法加速芯片之间通过所述高速串行访存通道连通。
8.根据权利要求1所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述片外存储器芯片包括片上存储器及若干个高速串行访问通道,所述片上存储器包括若干个可并行访问的存储子块,所述存储子块和所述高速串行访问通道之间通过所述片上互连网络模块互连。
9.根据权利要求8所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述存储子块与所述高速串行访问通道数量相等,所述高速串行访问通道与所述存储子块一一对应紧耦合连接,所述存储子块通过所述片上互连网络模块互连,所述存储子块包括存储体,所述存储体上与存储体BIST逻辑模块和通道访问控制逻辑模块相连,所述通道访问控制逻辑模块分别通过RX模块和TX模块与所述高速串行访问通道通信,所述通道访问控制逻辑模块通过片上互连网络接口逻辑模块与所述片上互连网络模块互连,其中,所述RX模块解析来自所述高速串行访问通道的串行数据流,将其转换为有效的读请求和写请求,并转发给所述通道访问控制逻辑模块,所述TX模块处理来自所述通道访问控制逻辑模块转发的响应报文或者请求报文,并将报文转换为所述高速串行访问通道上的数据流,所述通道访问控制逻辑模块接收到来自所述RX模块的访存读写请求报文之后,判断访存地址是否属于所述通道访问控制逻辑模块所在的存储子块,如果属于所述通道访问控制逻辑模块所在的存储子块,则直接读写与所述通道访问控制逻辑模块直连的存储体,所述存储体返回读数据或写响应之后所述通道访问控制逻辑模块将结果打包成响应报文,并发送至所述TX模块;如果不属于所述通道访问控制逻辑模块所在的存储子块,则将该访存读写请求转发至所述片上互连网络接口逻辑模块,所述通道访问控制逻辑模块同时也需要接收所述片上互连网络接口逻辑模块转发的来自其它高速串行访问通道的访存读写请求,在处理完访存读写请求之后再将响应返还至所述片上互连网络接口逻辑模块。
10.根据权利要求8所述具有多个高速串行访存通道的访存密集型算法加速芯片,其特征在于:所述高速串行访问通道与所述存储子块松耦合,所述存储子块均与所述片上互连网络模块连通,所述高速串行访问通道均通过访问通道模块与所述片上互连网络模块连通,所述访问通道模块包括通道访问控制逻辑模块,所述通道访问控制逻辑模块分别通过RX模块和TX模块与所述高速串行访问通道通信,所述通道访问控制逻辑模块通过片上互连网络接口逻辑模块与所述片上互连网络模块互连,其中,所述RX模块解析来自所述高速串行访问通道的串行数据流,将其转换为有效的读请求和写请求,并转发给所述通道访问控制逻辑模块,所述TX模块处理来自所述通道访问控制逻辑模块转发的响应报文或者请求报文,并将报文转换为所述高速串行访问通道上的数据流,所述通道访问控制逻辑模块接收到来自所述RX模块的访存读写请求报文之后,将该访存读写请求转发至所述片上互连网络接口逻辑模块,并通过所述片上互连网络接口逻辑模块接收所述片上互连网络模块发来的响应报文或者请求报文,所述存储子块包括存储体,所述存储体上连有存储体BIST逻辑模块和存储体控制逻辑模块,所述存储体控制逻辑模块通过片上互连网络接口逻辑模块与所述片上互连网络模块互连。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810673255.2A CN109240980A (zh) | 2018-06-26 | 2018-06-26 | 具有多个高速串行访存通道的访存密集型算法加速芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810673255.2A CN109240980A (zh) | 2018-06-26 | 2018-06-26 | 具有多个高速串行访存通道的访存密集型算法加速芯片 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109240980A true CN109240980A (zh) | 2019-01-18 |
Family
ID=65072011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810673255.2A Pending CN109240980A (zh) | 2018-06-26 | 2018-06-26 | 具有多个高速串行访存通道的访存密集型算法加速芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109240980A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112231254A (zh) * | 2020-09-22 | 2021-01-15 | 深圳云天励飞技术股份有限公司 | 存储器仲裁方法及存储器控制器 |
CN112286720A (zh) * | 2020-10-28 | 2021-01-29 | 四川效率源信息安全技术股份有限公司 | Sm2246en主控的固态硬盘启用trim命令后提取被删除数据的方法 |
CN112699077A (zh) * | 2020-12-30 | 2021-04-23 | 上海安路信息科技股份有限公司 | Fpga芯片及fpga子芯片的互联方法 |
WO2021082990A1 (zh) * | 2019-10-31 | 2021-05-06 | 中兴通讯股份有限公司 | 基于pcie总线的多芯片互联系统 |
WO2022178675A1 (zh) * | 2021-02-23 | 2022-09-01 | 华为技术有限公司 | 一种互联系统、数据传输方法以及芯片 |
CN115794732A (zh) * | 2023-01-29 | 2023-03-14 | 北京超摩科技有限公司 | 一种基于芯粒的片上网络和封装上网络分层互连系统 |
TWI802275B (zh) * | 2022-02-16 | 2023-05-11 | 昱文 李 | 晶片系統架構 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070226456A1 (en) * | 2006-03-21 | 2007-09-27 | Mark Shaw | System and method for employing multiple processors in a computer system |
CN103081434A (zh) * | 2010-08-24 | 2013-05-01 | 华为技术有限公司 | 智能存储器 |
CN104008084A (zh) * | 2014-06-02 | 2014-08-27 | 复旦大学 | 一种可拓展的2.5d多核处理器架构 |
CN105378690A (zh) * | 2013-04-30 | 2016-03-02 | 惠普发展公司,有限责任合伙企业 | 存储器节点差错校正 |
-
2018
- 2018-06-26 CN CN201810673255.2A patent/CN109240980A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070226456A1 (en) * | 2006-03-21 | 2007-09-27 | Mark Shaw | System and method for employing multiple processors in a computer system |
CN103081434A (zh) * | 2010-08-24 | 2013-05-01 | 华为技术有限公司 | 智能存储器 |
CN105378690A (zh) * | 2013-04-30 | 2016-03-02 | 惠普发展公司,有限责任合伙企业 | 存储器节点差错校正 |
CN104008084A (zh) * | 2014-06-02 | 2014-08-27 | 复旦大学 | 一种可拓展的2.5d多核处理器架构 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021082990A1 (zh) * | 2019-10-31 | 2021-05-06 | 中兴通讯股份有限公司 | 基于pcie总线的多芯片互联系统 |
CN112231254A (zh) * | 2020-09-22 | 2021-01-15 | 深圳云天励飞技术股份有限公司 | 存储器仲裁方法及存储器控制器 |
CN112231254B (zh) * | 2020-09-22 | 2022-04-26 | 深圳云天励飞技术股份有限公司 | 存储器仲裁方法及存储器控制器 |
CN112286720A (zh) * | 2020-10-28 | 2021-01-29 | 四川效率源信息安全技术股份有限公司 | Sm2246en主控的固态硬盘启用trim命令后提取被删除数据的方法 |
CN112286720B (zh) * | 2020-10-28 | 2023-08-01 | 四川效率源信息安全技术股份有限公司 | Sm2246en主控的固态硬盘启用trim命令后提取被删除数据的方法 |
CN112699077A (zh) * | 2020-12-30 | 2021-04-23 | 上海安路信息科技股份有限公司 | Fpga芯片及fpga子芯片的互联方法 |
CN112699077B (zh) * | 2020-12-30 | 2024-03-29 | 上海安路信息科技股份有限公司 | Fpga芯片及fpga子芯片的互联方法 |
WO2022178675A1 (zh) * | 2021-02-23 | 2022-09-01 | 华为技术有限公司 | 一种互联系统、数据传输方法以及芯片 |
TWI802275B (zh) * | 2022-02-16 | 2023-05-11 | 昱文 李 | 晶片系統架構 |
CN115794732A (zh) * | 2023-01-29 | 2023-03-14 | 北京超摩科技有限公司 | 一种基于芯粒的片上网络和封装上网络分层互连系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109240980A (zh) | 具有多个高速串行访存通道的访存密集型算法加速芯片 | |
US10062422B2 (en) | Various methods and apparatus for configurable mapping of address regions onto one or more aggregate targets | |
US20220156213A1 (en) | Independent control of multiple concurrent application graphs in a reconfigurable data processor | |
CN109086228B (zh) | 具有多个独立访问通道的高速存储器芯片 | |
CN108111930B (zh) | 基于高密度存储器的多裸片高阶光交换结构 | |
US20090003344A1 (en) | Asyncronous broadcast for ordered delivery between compute nodes in a parallel computing system where packet header space is limited | |
CN103246625B (zh) | 一种数据与地址共用引脚自适应调整访存粒度的方法 | |
JP7389231B2 (ja) | 同期ネットワーク | |
CN109302357B (zh) | 一种面向深度学习可重构处理器的片上互联结构 | |
US11641326B2 (en) | Shared memory mesh for switching | |
CN101873253A (zh) | 带缓冲的纵横式交换机系统 | |
CN104106115B (zh) | 无竞争的存储器配置 | |
CN102866980B (zh) | 用于多核微处理器片上互连网络的网络通信胞元 | |
CN114564434B (zh) | 一种通用多核类脑处理器、加速卡及计算机设备 | |
Mora et al. | Towards an efficient switch architecture for high-radix switches | |
US20240020261A1 (en) | Peer-to-peer route through in a reconfigurable computing system | |
CN106919368B (zh) | 一种流式数据流图关键路径的加速方法、加速系统、装置及芯片 | |
García-Vidal et al. | A DRAM/SRAM memory scheme for fast packet buffers | |
Puente et al. | On the design of a high-performance adaptive router for CC-NUMA multiprocessors | |
Mondinelli et al. | A 0.13/spl mu/m 1Gb/s/channel store-and-forward network on-chip | |
CN104298617B (zh) | 一种numa平台中非核部件数据流缓冲管理的优化方法及系统 | |
CN109144943A (zh) | 基于高速串行通道互连的计算芯片与存储器芯片组合系统 | |
US20230161725A1 (en) | Smart scalable design for a crossbar | |
Hanyu et al. | Accurate and high-speed asynchronous network-on-chip simulation using physical wire-delay information | |
Rengasamy et al. | Using packet information for efficient communication in NoCs |
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 | ||
CB03 | Change of inventor or designer information |
Inventor after: Tong Yuanman Inventor after: Liu Yao Inventor after: Tong Qiaoling Inventor before: Tong Yuanman Inventor before: Lu Hongyi Inventor before: Liu Yao Inventor before: Tong Qiaoling |
|
CB03 | Change of inventor or designer information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190118 |
|
RJ01 | Rejection of invention patent application after publication |