CN209543343U - Big data operation acceleration system - Google Patents
Big data operation acceleration system Download PDFInfo
- Publication number
- CN209543343U CN209543343U CN201821775398.6U CN201821775398U CN209543343U CN 209543343 U CN209543343 U CN 209543343U CN 201821775398 U CN201821775398 U CN 201821775398U CN 209543343 U CN209543343 U CN 209543343U
- Authority
- CN
- China
- Prior art keywords
- data
- computing
- storage
- chips
- chip
- 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
Landscapes
- Advance Control (AREA)
Abstract
Description
技术领域technical field
本实用新型实施例涉及集成电路领域,特别是涉及一种大数据运算加速系统。The embodiment of the utility model relates to the field of integrated circuits, in particular to a big data operation acceleration system.
背景技术Background technique
专用集成电路(Application Specific Integrated Circuits,ASIC)是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。ASIC的特点是面向特定用户的需求,ASIC在批量生产时与通用集成电路相比具有体积更小、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点。Application Specific Integrated Circuits (ASIC) refers to integrated circuits designed and manufactured in response to specific user requirements and the needs of specific electronic systems. The characteristic of ASIC is that it is oriented to the needs of specific users. Compared with general-purpose integrated circuits, ASIC has the advantages of smaller size, lower power consumption, improved reliability, improved performance, enhanced confidentiality, and reduced cost when mass-produced.
随着科技的发展,越来越多的领域,比如人工智能、安全运算等都涉及大运算量的特定计算。针对特定运算,ASIC芯片可以发挥其运算快,功耗小等特定。同时,对于这些大运算量领域,为了提高数据的处理速度和处理能力,通常需要控制N个运算芯片同时进行工作。随着数据精度的不断提升,人工智能、安全运算等领域需要对越来越大的数据进行运算,为了存储数据一般需要给ASIC芯片配置多个存储单元,例如一块ASIC芯片要配置4块2G内存;这样N个运算芯片同时工作时,就需要4N块2NG内存。但是,在多运算芯片同时工作时,数据存储量不会超过2个G,这样就造成了存储单元的浪费,提高了系统成本。With the development of science and technology, more and more fields, such as artificial intelligence, security computing, etc., involve specific calculations with large amounts of calculations. For specific calculations, ASIC chips can take advantage of their specific features such as fast calculations and low power consumption. At the same time, in order to improve the data processing speed and processing capacity for these fields with a large amount of computation, it is usually necessary to control N computing chips to work at the same time. With the continuous improvement of data accuracy, artificial intelligence, security computing and other fields need to calculate more and more large data. In order to store data, it is generally necessary to configure multiple storage units for ASIC chips. For example, an ASIC chip needs to be configured with four pieces of 2G memory. ; In this way, when N computing chips work at the same time, 4N pieces of 2NG memory are needed. However, when multiple computing chips work at the same time, the data storage capacity will not exceed 2 G, which causes waste of storage units and increases system cost.
实用新型内容Utility model content
本实用新型实施例提供一种大数据运算加速系统,将2个以上ASIC运算芯片通过总线分别和2个以上存储单元相连,所述运算芯片通过所述存储单元进行数据交换,这样不仅减少了存储单元的数量,也减少了ASIC运算芯片之间的连接线,简化了系统构造,并且每个ASIC运算芯片分别与多个存储单元连接,不会造成使用总线方式而发生冲突,也不用为每个ASIC运算芯片设置Cache。The embodiment of the utility model provides a big data operation acceleration system, in which two or more ASIC operation chips are respectively connected to two or more storage units through a bus, and the operation chips perform data exchange through the storage units, which not only reduces storage The number of units also reduces the connection lines between ASIC computing chips, simplifies the system structure, and each ASIC computing chip is connected to multiple storage units, which will not cause conflicts in the use of bus methods, and does not need to be used for each The ASIC computing chip sets the Cache.
为达到上述目的,根据本实施例的第一方面提供一种大数据运算加速系统,包括2个以上运算芯片和2个以上存储单元;所述运算芯片包括至少一个第一数据接口(130)和2个以上第二数据接口(150、151、152、153),所述存储单元包括2个以上第二数据接口(250、251、252、253);所述运算芯片的每个第二数据接口(150、151、152、153)通过总线与所述存储单元的每个第二数据接口(250、251、252、253)一一对应连接,用于传输数据或者控制指令;所述2个以上运算芯片的每个至少一个第一数据接口(130)通过总线相连接,用于传输控制指令。In order to achieve the above object, according to the first aspect of this embodiment, a big data computing acceleration system is provided, including more than 2 computing chips and more than 2 storage units; the computing chip includes at least one first data interface (130) and More than two second data interfaces (150, 151, 152, 153), the storage unit includes more than two second data interfaces (250, 251, 252, 253); each second data interface of the computing chip (150, 151, 152, 153) are connected to each second data interface (250, 251, 252, 253) of the storage unit in one-to-one correspondence through the bus, and are used to transmit data or control instructions; the two or more Each at least one first data interface (130) of the computing chip is connected through a bus for transmitting control instructions.
本实用新型实施例通过将大数据运算加速系统中多个运算芯片分别和每个内存单元相连,达到了节省内存单元数量的技术效果,降低了系统成本也减少了ASIC运算芯片之间的连接线,简化了系统构造,并且每个ASIC运算芯片分别与多个存储单元连接,不会造成使用总线方式而发生冲突,也不用为每个ASIC运算芯片设置Cache。The embodiment of the utility model achieves the technical effect of saving the number of memory units by connecting multiple computing chips in the big data computing acceleration system to each memory unit, reduces the system cost and reduces the connection lines between ASIC computing chips , which simplifies the system structure, and each ASIC computing chip is connected to multiple storage units separately, which will not cause conflicts due to the way of using the bus, and there is no need to set a Cache for each ASIC computing chip.
附图说明Description of drawings
为了更清楚地说明本实用新型实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是示例性的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the accompanying drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description These are merely exemplary embodiments, and those skilled in the art can also obtain other drawings based on these drawings without creative effort.
图1为本实用新型第一实施例提供的大数据运算加速系统的结构示意图;Fig. 1 is a schematic structural diagram of the big data operation acceleration system provided by the first embodiment of the present invention;
图2a为本实用新型第一实施例提供的运算芯片的结构示意图;Fig. 2a is a schematic structural diagram of the computing chip provided by the first embodiment of the present invention;
图2b为本实用新型第一实施例提供的运算芯片的信号流程示意图;Fig. 2b is a schematic diagram of the signal flow of the computing chip provided by the first embodiment of the present invention;
图3a为本实用新型第二实施例提供的运算芯片的结构示意图;Fig. 3a is a schematic structural diagram of the computing chip provided by the second embodiment of the present invention;
图3b为本实用新型第二实施例提供的运算芯片的信号流程示意图;Fig. 3b is a schematic diagram of the signal flow of the computing chip provided by the second embodiment of the present invention;
图4a为本实用新型第三实施例提供的存储单元的结构示意图;Fig. 4a is a schematic structural diagram of the storage unit provided by the third embodiment of the present invention;
图4b为本实用新型第三实施例提供的存储单元的信号流程示意图;Fig. 4b is a schematic diagram of the signal flow of the storage unit provided by the third embodiment of the present invention;
图5为本实用新型第四实施例提供的大数据运算加速系统的连接结构示意图;5 is a schematic diagram of the connection structure of the big data operation acceleration system provided by the fourth embodiment of the present invention;
图6为本实用新型第五实施例提供的数据结构示意图。Fig. 6 is a schematic diagram of the data structure provided by the fifth embodiment of the present invention.
具体实施方式Detailed ways
下面将基于附图具体说明本实施例的示例性实施方式,应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本实用新型,而并非以任何方式限制本实用新型的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。The exemplary implementations of this embodiment will be described in detail below based on the accompanying drawings. It should be understood that these implementations are given only to enable those skilled in the art to better understand and realize the present utility model, rather than to limit the present invention in any way. Scope of utility model. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
此外,需要说明书的是,各附图中的上、下、左、右的各方向仅是以特定的实施方式进行的例示,本领域技术人员能够根据实际需要将附图中所示的各构件的一部分或全部改变方向来应用,而不会影响各构件或系统整体实现其功能,这种改变了方向的技术方案仍属于本实用新型的保护范围。In addition, it should be noted that the directions of up, down, left, and right in the drawings are only examples of specific implementations, and those skilled in the art can adjust the components shown in the drawings according to actual needs. A part or all of them can be applied by changing the direction without affecting the function of each component or the system as a whole. This technical solution with changed direction still belongs to the protection scope of the present utility model.
多核芯片是具体化在单个大规模集成半导体芯片上的多处理系统。典型地,两个或更多芯片核心可以被具体化在多核芯片上,由总线(也可以在相同的多核芯片上形成该总线)进行互连。可以有从两个芯片核心到许多芯片核心被具体化在相同的多核芯片上,在芯片核心的数量中的上限仅由制造能力和性能约束来限制。多核芯片可以具有应用,该应用包含在多媒体和信号处理算法(诸如,视频编码/解码、2D/3D图形、音频和语音处理、图像处理、电话、语音识别和声音合成、加密处理)中执行的专门的算术和/或逻辑操作。A multi-core chip is a multi-processing system embodied on a single large-scale integrated semiconductor chip. Typically, two or more chip cores may be embodied on a multi-core chip, interconnected by a bus (which may also be formed on the same multi-core chip). There can be anywhere from two chip cores to many chip cores embodied on the same multi-core chip, the upper limit in the number of chip cores being limited only by manufacturing capabilities and performance constraints. Multi-core chips can have applications that include execution in multimedia and signal processing algorithms such as video encoding/decoding, 2D/3D graphics, audio and speech processing, image processing, telephony, speech recognition and sound synthesis, encryption processing specialized arithmetic and/or logical operations.
虽然在背景技术中仅仅提到了ASIC专用集成电路,但是实施例中的具体布线实现方式可以应用到具有多核芯片CPU、GPU、FPGA等中。在本实施例中多个内核可以是相同内核,也可以是不同内核。Although only an ASIC is mentioned in the background art, the specific wiring implementation in the embodiment can be applied to a multi-core chip such as a CPU, GPU, or FPGA. In this embodiment, the multiple cores may be the same core or different cores.
为了方便说明,以下将以图1中存在的4个运算芯片和4个存储单元的大数据运算加速系统为例进行说明,而本领域技术人员可知,这里选择4个运算芯片和4个存储单元为例,只是示例性的说明,运算芯片个数可以是N,其中N为大于或等于2的正整数,例如,N可以是6、10、12等等。存储单元个数可以是M,其中M为大于或等于2的正整数,例如,M可以是6、9、12等等。在实施例中N和M可以相等,也可以不相等。在本实施例中多个运算芯片可以是相同的运算芯片,也可以是不同的运算芯片。For the convenience of explanation, the big data operation acceleration system with 4 computing chips and 4 storage units in Fig. 1 will be used as an example to illustrate, and those skilled in the art know that 4 computing chips and 4 storage units are selected here As an example, it is just an exemplary description, the number of computing chips may be N, where N is a positive integer greater than or equal to 2, for example, N may be 6, 10, 12 and so on. The number of storage units may be M, where M is a positive integer greater than or equal to 2, for example, M may be 6, 9, 12 and so on. In an embodiment, N and M may or may not be equal. In this embodiment, the multiple computing chips may be the same computing chip, or may be different computing chips.
图1为本实用新型第一实施例提供的大数据运算加速系统的结构示意图。在图1所示的实施例中,以大数据运算加速系统包括四个运算芯片和4个存储单元为例进行说明。请参见图1,大数据运算加速系统包括4个运算芯片(10、11、12、13)和4个存储单元(20、21、22、23);每个运算芯片和所有存储单元相连,可选的,运算芯片和存储单元之间可以通过总线连接,也可以通过数据线连接。所述运算芯片通过所述存储单元进行数据交换,运算芯片之间不直接交换数据;运算芯片之间发送控制指令。FIG. 1 is a schematic structural diagram of a big data operation acceleration system provided by the first embodiment of the present invention. In the embodiment shown in FIG. 1 , the big data operation acceleration system includes four operation chips and four storage units as an example for description. Please refer to Figure 1, the big data computing acceleration system includes 4 computing chips (10, 11, 12, 13) and 4 storage units (20, 21, 22, 23); Optionally, the computing chip and the storage unit may be connected through a bus or through a data line. The computing chips exchange data through the storage unit, and the computing chips do not directly exchange data; the computing chips send control instructions.
每个存储单元中设置专有存储区域和共享存储区域;所述专有存储区域用于存储一个运算芯片的临时运算结果,该临时运算结果为所述一个运算芯片继续利用的中间计算结果,而其他运算芯片不会使用的中间计算结果。所述共享存储区域用于存储运算芯片的数据运算结果,数据运算结果被其他运算芯片使用,或者需要向外部进行反馈传输。当然,为了方便管理也可以不对存储单元进行划分。这里存储单元可能为双倍数据速率(DualData Rate,DDR)、串行双倍数据速率(serial Dual Data Rate,SDDR)、DDR2、DDR3、DDR4、图形用双倍数据速率(Graphics Double Data Rate,GDDR)5、GDDR6、混合内存立方体(HybridMemory Cube,HMC)、高带宽内存(High Band Memory,HBM)等高速外部存储器。在这里存储单元优选的选择DDR系列内存,DDR内存即双倍速率同步动态随机存储器。DDR运用了同步电路,使指定地址、数据的输送和输出主要步骤既独立执行,又保持与CPU完全同步;DDR使用了延时锁定回路(Delay Locked Loop,DL)提供一个数据滤波信号技术,当数据有效时,存储控制器可使用这个数据滤波信号来精确定位数据,每16次输出一次,并重新同步来自不同存储器模块的数据。DDR内存的频率可以用工作频率和等效频率两种方式表示,工作频率是内存颗粒实际的工作频率,但是由于DDR内存可以在脉冲的上升和下降沿都传输数据,因此传输数据的等效频率是工作频率的两倍。DDR2内存是由电子设备工程联合委员会(JointElectron Device Engineering Council,JEDEC)进行开发的新生代内存技术标准,DDR2内存每个时钟能够以4倍外部总线的速度读/写数据,并且能够以内部控制总线4倍的速度运行。DDR3、DDR4、GDDR5、GDDR6、HMC、HBM内存都是现有技术,这里就不详细介绍。A dedicated storage area and a shared storage area are set in each storage unit; the dedicated storage area is used to store a temporary calculation result of an operation chip, and the temporary operation result is an intermediate calculation result that the one operation chip continues to use, and Intermediate calculation results that are not used by other computing chips. The shared storage area is used to store data operation results of the operation chip, and the data operation results are used by other operation chips, or need to be fed back and transmitted to the outside. Of course, for the convenience of management, the storage units may not be divided. Here the storage unit may be Double Data Rate (DDR), Serial Double Data Rate (SDDR), DDR2, DDR3, DDR4, Graphics Double Data Rate (GDDR) ) 5. GDDR6, Hybrid Memory Cube (HMC), High Band Memory (HBM) and other high-speed external memory. Here, the storage unit preferably selects a DDR series memory, and the DDR memory is a double-rate synchronous dynamic random access memory. DDR uses a synchronous circuit, so that the main steps of specified address, data transmission and output are executed independently, and are fully synchronized with the CPU; DDR uses a delay locked loop (Delay Locked Loop, DL) to provide a data filtering signal technology, when The memory controller can use this data filter signal to pinpoint data when data is valid, output every 16th, and resynchronize data from different memory modules. The frequency of DDR memory can be expressed in two ways: operating frequency and equivalent frequency. The operating frequency is the actual operating frequency of the memory particles. However, since DDR memory can transmit data at both rising and falling edges of the pulse, the equivalent frequency of transmitting data is twice the operating frequency. DDR2 memory is a new generation memory technology standard developed by the Joint Electron Device Engineering Council (JEDEC). DDR2 memory can read/write data at 4 times the speed of the external bus per clock, and can internally control the bus. Runs at 4x speed. DDR3, DDR4, GDDR5, GDDR6, HMC, and HBM memory are all existing technologies, so I won’t introduce them in detail here.
将4个ASIC运算芯片通过总线分别和4个存储单元相连,所述运算芯片通过所述存储单元进行数据交换,这样不仅减少了存储单元的数量,也减少了ASIC运算芯片之间的连接线,简化了系统构造,并且每个ASIC运算芯片分别与多个存储单元连接,不会造成使用总线方式而发生冲突,也不用为每个ASIC运算芯片设置Cache。The four ASIC computing chips are respectively connected to the four storage units through the bus, and the computing chips exchange data through the storage units, which not only reduces the number of storage units, but also reduces the connection lines between the ASIC computing chips, The system structure is simplified, and each ASIC computing chip is connected to multiple storage units, which will not cause conflicts in the way of using the bus, and there is no need to set a Cache for each ASIC computing chip.
图2a为本实用新型第一实施例提供的运算芯片的结构示意图。在图2a中,以运算芯片具有4个内核为例进行说明。而本领域技术人员可知,这里选择4个内核为例,只是示例性的说明,运算芯片内核的个数可以是Q,其中Q为大于等于2的正整数,例如可以是6、10、12等等。在本实施例中运算芯片内核可以是具有相同功能的内核,也可以是不同功能的内核。Fig. 2a is a schematic structural diagram of the computing chip provided by the first embodiment of the present invention. In FIG. 2a , the computing chip has 4 cores as an example for illustration. Those skilled in the art know that the selection of 4 cores as an example here is only an exemplary illustration. The number of cores in the computing chip can be Q, where Q is a positive integer greater than or equal to 2, such as 6, 10, 12, etc. Wait. In this embodiment, the computing chip cores may be cores with the same function, or cores with different functions.
4个内核的运算芯片(10)包括4个内核core(110、111、112、113)、一个路由单元(120)、一个数据交换控制单元(130)和4个serdes接口(150、151、152、153)。一个数据交换控制单元、4个serdes接口通过总线分别与路由单元相连,路由单元再和每个内核core相连。数据交换控制单元可以采用多种协议进行实现,例如,通用异步收发传输器(UniversalAsynchronous Receiver/Transmitter,UART),串行外设接口(Serial PeripheralInterface,SPI),高速串行计算机扩展总线标准(peripheral component interconnectexpress,PCIE),串行器/解串器(SERializer/DESerializer,SERDES),通用串行总线(Universal Serial Bus,USB)等,在本实施方式中数据交换控制单元为UART控制单元(130)。通用异步收发传输器通常称作UART,是一种异步收发传输器,它将要传输的资料在串行通信与并行通信之间加以转换,UART通常被集成于各种通讯接口的连结上。但是这里只是以UART协议为例进行说,也可以采用其他协议。UART控制单元(130)可以接受外部数据或者控制指令,向其他芯片发送控制指令,从其他芯片接受控制指令,以及向外部反馈运算结果或者中间数据等。The computing chip (10) with 4 cores includes 4 cores (110, 111, 112, 113), a routing unit (120), a data exchange control unit (130) and 4 serdes interfaces (150, 151, 152 , 153). A data exchange control unit and 4 serdes interfaces are respectively connected to the routing unit through the bus, and the routing unit is connected to each core core. The data exchange control unit can be implemented using a variety of protocols, for example, Universal Asynchronous Receiver/Transmitter (UART), Serial Peripheral Interface (Serial Peripheral Interface, SPI), high-speed serial computer expansion bus standard (peripheral component interconnectexpress, PCIE), serializer/deserializer (SERializer/DESerializer, SERDES), Universal Serial Bus (Universal Serial Bus, USB), etc., in this embodiment, the data exchange control unit is a UART control unit (130). The Universal Asynchronous Receiver Transmitter is usually called UART, which is an asynchronous transceiver that converts the data to be transmitted between serial communication and parallel communication. UART is usually integrated on the connection of various communication interfaces. But here we just take the UART protocol as an example, and other protocols can also be used. The UART control unit (130) can receive external data or control instructions, send control instructions to other chips, receive control instructions from other chips, and feed back operation results or intermediate data to the outside.
serdes是一种主流的时分多路复用(Time Division Multiplexing,TDM)、点对点(Point to Point,P2P)的串行通信技术。即在发送端多路低速并行信号被转换成高速串行信号,经过传输媒体(光缆或铜线),最后在接收端高速串行信号重新转换成低速并行信号。这种点对点的串行通信技术充分利用传输媒体的信道容量,减少所需的传输信道和器件引脚数目,提升信号的传输速度,从而大大降低通信成本。当然,这里也可以采用其他的通信接口代替serdes接口,例如:同步串行接口(Synchronous Serial Interface,SSI)、UATR。芯片和存储单元之间通过serdes接口和传输线进行数据和控制指令传输。Serdes is a mainstream time division multiplexing (Time Division Multiplexing, TDM), point-to-point (Point to Point, P2P) serial communication technology. That is, at the sending end, multiple low-speed parallel signals are converted into high-speed serial signals, passed through the transmission medium (optical cable or copper wire), and finally the high-speed serial signals are re-converted into low-speed parallel signals at the receiving end. This point-to-point serial communication technology makes full use of the channel capacity of the transmission medium, reduces the number of required transmission channels and device pins, increases the transmission speed of signals, and thus greatly reduces communication costs. Of course, other communication interfaces may also be used here instead of the serdes interface, for example: Synchronous Serial Interface (Synchronous Serial Interface, SSI), UATR. Data and control instructions are transmitted between the chip and the storage unit through the serdes interface and the transmission line.
内核core的主要功能是执行外部或者内部控制指令、执行数据计算以及数据的存储控制等功能。The main function of the kernel core is to execute external or internal control instructions, perform data calculation, and data storage control.
路由单元用于向内核core(110、111、112、113)发送数据或者控制指令,并且接受内核core(110、111、112、113)发送数据或者控制指令,实现内核core之间的通信。接受内部或者外部控制指令通过serdes接口向存储单元写入数据、读取数据或者向内存单元发送控制指令;如果内部或者外部控制指令用于控制其他芯片的控制指令,则路由单元将控制指令发送给UART控制单元(130),由UART控制单元(130)向其他芯片发送;如果需要向其他芯片发送数据时,路由单元通过serdes接口向存储单元传输数据,其他芯片通过存储单元获取数据;如果需要从其他芯片接受数据时,路由单元通过serdes接口从存储单元获取数据。路由单元以及通过UART控制单元(130)接受外部控制指令,向各个内核core(110、111、112、113)发送控制指令;通过UART控制单元(130)接受外部数据,根据外部数据地址将外部数据发送给内核core(110、111、112、113)或者存储单元。所述的内部数据或者内部控制指令是指芯片自身产生的数据或者控制指令,所述外部数据或者外部控制指令是指芯片外部产生的数据或者控制指令,例如外部主机、外部网络发送的数据或者控制指令。The routing unit is used to send data or control instructions to the core cores (110, 111, 112, 113), and accept data or control instructions sent by the core cores (110, 111, 112, 113), so as to realize communication between the core cores. Accept internal or external control commands to write data to the storage unit, read data or send control commands to the memory unit through the serdes interface; if the internal or external control commands are used to control the control commands of other chips, the routing unit sends the control commands to The UART control unit (130) is sent to other chips by the UART control unit (130); if it is necessary to send data to other chips, the routing unit transmits data to the storage unit through the serdes interface, and other chips obtain data through the storage unit; When other chips receive data, the routing unit obtains data from the storage unit through the serdes interface. The routing unit receives external control instructions through the UART control unit (130), and sends control instructions to each core core (110, 111, 112, 113); receives external data through the UART control unit (130), and transfers the external data according to the external data address Send to the kernel core (110, 111, 112, 113) or storage unit. The internal data or internal control instructions refer to data or control instructions generated by the chip itself, and the external data or external control instructions refer to data or control instructions generated outside the chip, such as data or control instructions sent by an external host or an external network. instruction.
图2b为本实用新型第一实施例提供的运算芯片的信号流程示意图。在图2b中,以运算芯片具有4个内核为例进行说明。请参见图2b,所述UART接口(130)用于获取芯片外部数据或者控制指令,路由单元(120)根据数据或者控制指令地址将数据或者控制指令发送给内核core,或者路由单元(120)通过serdes接口发送给serdes接口连接的存储单元。如果外部控制指令的目的地址指向其他芯片,则路由单元将控制指令发送给UART控制单元(130),由UART控制单元(130)向其他芯片发送。UART接口(130)根据外部控制指令或者内部控制指令将运算结果发送给外部,运算结果可以从运算芯片的内核core获取,也可以通过serdes接口获取serdes接口连接的存储单元获取。这里所述的外部可以是指外部主机、外部网络或者外部平台等。外部主机能通过UART控制单元初始化配置存储单元参数,对多个存储颗粒进行统一编址。Fig. 2b is a schematic diagram of the signal flow of the computing chip provided by the first embodiment of the present invention. In FIG. 2b , it is illustrated by taking the computing chip with 4 cores as an example. Please refer to Fig. 2 b, the UART interface (130) is used to obtain chip external data or control instruction, routing unit (120) sends data or control instruction to core core according to data or control instruction address, or routing unit (120) passes The serdes interface sends to the storage unit connected to the serdes interface. If the destination address of the external control command points to other chips, the routing unit sends the control command to the UART control unit (130), and the UART control unit (130) sends it to other chips. The UART interface (130) sends the calculation result to the outside according to the external control command or the internal control command. The calculation result can be obtained from the core core of the calculation chip, or can be obtained through the serdes interface to obtain the storage unit connected to the serdes interface. The external mentioned here may refer to an external host, an external network, or an external platform. The external host can initialize and configure the parameters of the storage unit through the UART control unit, and uniformly address multiple storage particles.
内核core可以向路由单元发送获取或者写入数据的控制指令,控制指令中携带数据地址,路由单元根据地址通过serdes接口向存储单元读取或者写入数据。内核core也可以根据地址通过路由单元向其他内核core发送数据或者控制指令,并且通过路由单元从其他内核core获取数据或者控制指令。内核core根据获取的数据进行计算,并将计算结果存储到存储单元中。每个存储单元中设置专有存储区域和共享存储区域;所述专有存储区域用于存储一个运算芯片的临时运算结果,该临时运算结果为所述一个运算芯片继续利用的中间计算结果,而其他运算芯片不会使用的中间计算结果;所述共享存储区域用于存储运算芯片的数据运算结果,数据运算结果被其他运算芯片使用,或者需要向外部进行反馈传输。如果内核core产生的控制指令用于控制其他芯片的操作,则路由单元将控制指令发送给UART控制单元(130),由UART控制单元(130)向其他芯片发送。如果内核core产生的控制指令用于控制存储单元,则路由单元通过serdes接口向存储单元发送控制指令。The kernel core can send a control instruction to acquire or write data to the routing unit, and the control instruction carries a data address, and the routing unit reads or writes data to the storage unit through the serdes interface according to the address. The core core can also send data or control instructions to other core cores through the routing unit according to the address, and obtain data or control instructions from other core cores through the routing unit. The kernel core performs calculations based on the acquired data, and stores the calculation results in the storage unit. A dedicated storage area and a shared storage area are set in each storage unit; the dedicated storage area is used to store a temporary calculation result of an operation chip, and the temporary operation result is an intermediate calculation result that the one operation chip continues to use, and The intermediate calculation results that will not be used by other computing chips; the shared storage area is used to store the data computing results of the computing chips, and the data computing results are used by other computing chips, or need to be fed back and transmitted to the outside. If the control instruction generated by the core is used to control the operation of other chips, the routing unit sends the control instruction to the UART control unit (130), and the UART control unit (130) sends it to other chips. If the control instruction generated by the kernel core is used to control the storage unit, the routing unit sends the control instruction to the storage unit through the serdes interface.
图3a为本实用新型第二实施例提供的运算芯片的结构示意图。在图3a中,以运算芯片具有4个内核为例进行说明。根据图3a所示可知,4个内核的运算芯片包括4个内核core(110、111、112、113)、一个路由单元(120)、一个UART控制单元(130)和4个serdes接口(150、151、152、153)。每个serdes接口连接一个内核core,4个内核core连接于路由单元,所述UART控制单元(130)连接于内核core(110)。Fig. 3a is a schematic structural diagram of the computing chip provided by the second embodiment of the present invention. In FIG. 3 a , the computing chip has 4 cores as an example for illustration. According to Fig. 3a, it can be seen that the computing chip with 4 cores includes 4 core cores (110, 111, 112, 113), a routing unit (120), a UART control unit (130) and 4 serdes interfaces (150, 151, 152, 153). Each serdes interface is connected to one core core, four core cores are connected to the routing unit, and the UART control unit (130) is connected to the core core (110).
图3b为本实用新型第二实施例提供的运算芯片的信号流程示意图。在图3b中,以运算芯片具有4个内核为例进行说明。请参见图3b,所述UART控制单元(130)用于获取芯片外部数据或者控制指令,将外部数据或者控制指令传输给和UART控制单元连接的内核core(110)。内核core(110)将外部数据或者控制指令传输给路由单元(120),路由单元根据数据或者控制指令地址将数据或者控制指令发送给数据地址对应的内核core(111、112、113)。如果数据或者控制指令的目的地址为本运算芯片的内核core,则路由单元将数据或者控制指令发送给内核core(110、111、112、113)。如果数据或控制指令的目的地址为存储单元,再由内核core(111、112、113)通过serdes接口(151、152、153)发送给对应的存储单元。内核core(110)也可以直接将数据或者控制指令通过自身连接的serdes接口(150)发送给对应的存储单元。在这种情况下,路由单元存储所有存储单元地址所对应的serdes接口。如果数据或者控制指令的目的地址为其他运算芯片,则数据由内核core(111、112、113)通过serdes接口(151、152、153)发送给对应的存储单元;控制指令通过UART控制单元发送给其他运算芯片。内核core根据外部控制指令或者内部控制指令将运算结果或者中间数据反馈给外部时,内核core从serdes接口从存储单元获取运算结果或者中间数据,将运算结果或者中间数据发送给路由单元,路由单元将运算结果或者中间数据发送给UART控制单元连接的内核core(110),最后通过UART控制单元将运算结果或者中间数据发送给外部。如果是由UART控制单元连接的内核core所对应的serdes接口获得运算结果或者中间数据,这时就直接通过UART控制单元将运算结果或者中间数据发送给外部。这里所述的外部可以是指外部主机、外部网络或者外部平台等。外部主机能通过UART控制单元初始化配置存储单元参数,对多个存储单元进行统一编址。Fig. 3b is a schematic diagram of the signal flow of the computing chip provided by the second embodiment of the present invention. In FIG. 3b , it is illustrated by taking the computing chip with 4 cores as an example. Please refer to Fig. 3b, the UART control unit (130) is used to obtain chip external data or control instructions, and transmit the external data or control instructions to the core core (110) connected to the UART control unit. The core core (110) transmits external data or control instructions to the routing unit (120), and the routing unit sends the data or control instructions to the core cores (111, 112, 113) corresponding to the data address according to the data or control instruction address. If the destination address of the data or control instruction is the core core of the computing chip, the routing unit sends the data or control instruction to the core core (110, 111, 112, 113). If the destination address of the data or control instruction is a storage unit, the kernel core (111, 112, 113) sends it to the corresponding storage unit through the serdes interface (151, 152, 153). The kernel core (110) can also directly send data or control instructions to the corresponding storage unit through the serdes interface (150) connected to itself. In this case, the routing unit stores the serdes interfaces corresponding to all storage unit addresses. If the destination address of the data or control instruction is another computing chip, the data is sent to the corresponding storage unit by the kernel core (111, 112, 113) through the serdes interface (151, 152, 153); the control instruction is sent to the corresponding storage unit through the UART control unit. Other computing chips. When the kernel core feeds back the operation result or intermediate data to the outside according to the external control instruction or internal control instruction, the kernel core obtains the operation result or intermediate data from the storage unit through the serdes interface, and sends the operation result or intermediate data to the routing unit, and the routing unit will The operation result or intermediate data is sent to the core (110) connected to the UART control unit, and finally the operation result or intermediate data is sent to the outside through the UART control unit. If the operation result or intermediate data is obtained by the serdes interface corresponding to the core core connected to the UART control unit, then the operation result or intermediate data is directly sent to the outside through the UART control unit. The external mentioned here may refer to an external host, an external network, or an external platform. The external host can initialize and configure storage unit parameters through the UART control unit, and uniformly address multiple storage units.
内核core可以向路由单元发送控制指令,路由单元根据控制指令的地址向其他内核core、其他芯片或者存储单元发送控制指令,其他内核core、其他芯片或者存储单元接受控制指令后,执行相应的操作。内核core向其他内核core发送控制指令或者数据时,通过路由单元直接转发。内核core向其他芯片发送控制指令通过UART控制单元发送。内核core向存储单元发送控制指令时,路由单元根据地址查询地址所对应的serdes接口,将控制指令发送给serdes接口对应的内核core,再由内核core发送给对应的serdes接口,serdes接口向存储单元发送控制指令。内核core向其他芯片或者存储单元发送数据时,路由单元根据地址查询地址所对应的serdes接口,将控制指令发送给serdes接口对应的内核core,再由内核core发送给对应的serdes接口,serdes接口向存储单元发送数据。其他芯片在通过存储单元获取数据。内核core从内存单元获取数据时,读取控制指令中携带数据地址,路由单元根据地址查询地址所对应的serdes接口,将控制指令发送给serdes接口对应的内核core,再由内核core发送给对应的serdes接口,serdes接口向存储单元发送读取控制指令,指令中携带目的地址和源地址。serdes接口从存储单元获取数据后,将数据发送给serdes接口对应的内核core,内核core将包括源地址和目的地址的数据包发送给路由单元,路由单元根据目的地址将所述数据包发送给对应的内核core。如果内核core发现该目的地址为其自身地址的话,则内核core获取数据进行处理。并且内核core也可以通过路由单元向其他内核core发送数据或者命令,并且通过路由单元从其他内核core获取数据或者命令。内核core根据获取的数据进行计算,并将计算结果存储到存储单元中。每个存储单元中设置专有存储区域和共享存储区域;所述专有存储区域用于存储一个运算芯片的临时运算结果,该临时运算结果为所述一个运算芯片继续利用的中间计算结果,而其他运算芯片不会使用的中间计算结果;所述共享存储区域用于存储运算芯片的运算数据结果,该运算数据结果被其他运算芯片使用,或者需要向外部进行反馈传输。The core core can send control instructions to the routing unit, and the routing unit sends control instructions to other core cores, other chips or storage units according to the address of the control instruction. After receiving the control instructions, other core cores, other chips or storage units perform corresponding operations. When the kernel core sends control instructions or data to other kernel cores, it is directly forwarded through the routing unit. The kernel core sends control commands to other chips through the UART control unit. When the kernel core sends a control instruction to the storage unit, the routing unit queries the corresponding serdes interface of the address according to the address, sends the control instruction to the kernel core corresponding to the serdes interface, and then the kernel core sends it to the corresponding serdes interface, and the serdes interface sends the instruction to the storage unit Send control commands. When the core core sends data to other chips or storage units, the routing unit queries the serdes interface corresponding to the address according to the address, sends the control command to the core core corresponding to the serdes interface, and then the core core sends it to the corresponding serdes interface, and the serdes interface sends the control command to the corresponding serdes interface. The storage unit sends data. Other chips are acquiring data through memory cells. When the kernel core obtains data from the memory unit, it reads the data address in the control instruction, and the routing unit queries the serdes interface corresponding to the address according to the address, sends the control instruction to the kernel core corresponding to the serdes interface, and then the kernel core sends it to the corresponding The serdes interface, the serdes interface sends a read control command to the storage unit, and the command carries a destination address and a source address. After the serdes interface acquires data from the storage unit, it sends the data to the kernel core corresponding to the serdes interface. The kernel core sends the data packet including the source address and the destination address to the routing unit, and the routing unit sends the data packet to the corresponding data packet according to the destination address. The kernel core. If the kernel core finds that the destination address is its own address, the kernel core obtains the data for processing. And the core core can also send data or commands to other core cores through the routing unit, and obtain data or commands from other core cores through the routing unit. The kernel core performs calculations based on the acquired data, and stores the calculation results in the storage unit. A dedicated storage area and a shared storage area are set in each storage unit; the dedicated storage area is used to store a temporary calculation result of an operation chip, and the temporary operation result is an intermediate calculation result that the one operation chip continues to use, and The intermediate calculation results that will not be used by other computing chips; the shared storage area is used to store the computing data results of the computing chips, which are used by other computing chips or need to be fed back and transmitted to the outside.
图4a为本实用新型第三实施例提供的存储单元的结构示意图。在图4a中,以存储单元与具有4个内核的运算芯片对应为例进行说明,即,在图4a中,存储单元与第一实施例所示的运算芯片对应。请参见图4a,存储单元(20)包括C个存储器,这里以C=4为例进行说明,当然其中C为大于等于2的正整数,例如可以是6、10、12等等;存储器(240、241、242、243)包括存储控制器(220、221、222、223)和存储颗粒(210、211、212、213);存储控制器用于根据指令向存储颗粒写入或者读取数据,存储颗粒用于存储数据。存储单元(20)进一步包括一个路由单元(230)4个serdes接口(250、251、252、253)。4个serdes接口通过总线分别与路由单元相连,路由单元再和每个存储器相连。Fig. 4a is a schematic structural diagram of the storage unit provided by the third embodiment of the present invention. In FIG. 4 a , it is described as an example that the storage unit corresponds to the computing chip with 4 cores, that is, in FIG. 4 a , the storage unit corresponds to the computing chip shown in the first embodiment. See also Fig. 4 a, storage unit (20) comprises C storage memory, illustrate with C=4 as example here, certainly wherein C is the positive integer greater than or equal to 2, for example can be 6,10,12 etc.; Storage (240 , 241, 242, 243) include a storage controller (220, 221, 222, 223) and storage particles (210, 211, 212, 213); the storage controller is used to write or read data to the storage particles according to instructions, and store Granules are used to store data. The storage unit (20) further includes a routing unit (230) and four serdes interfaces (250, 251, 252, 253). The four serdes interfaces are respectively connected to the routing unit through the bus, and the routing unit is connected to each memory.
图4b为本实用新型第三实施例提供的存储单元的信号流程示意图。在图4b中,以存储单元与具有4个内核的运算芯片对应为例进行说明,即,在图4b中,存储单元与第一实施例所示的运算芯片对应。请参见图4b,存储单元(20)通过serdes接口(250、251、252、253)接受控制指令,将控制指令发送给路由单元(230),路由单元根据控制指令中的地址,将控制指令发送给相应的存储器(240、241、242、243),存储控制器(220、221、222、223)根据控制指令执行相关操作。例如根据初始化配置存储器参数,对多个存储颗粒进行统一编址;或者根据重置指令,对存储颗粒进行重置复位;写入指令或者读出指令等操作。通过serdes接口(250、251、252、253)接受运算芯片发送的获取数据指令,指令中携带要获取数据的地址,路由单元根据地址向存储器发送获取数据指令,存储控制器根据获取数据指令从存储颗粒中获取数据,根据源地址将数据通过serdes接口发送给需求数据的运算芯片。通过serdes接口(250、251、252、253)接受运算芯片发送的写入数据指令和数据,指令中携带要写入数据的地址,路由单元根据地址向存储器发送写入数据指令和数据,存储控制器根据写入数据指令向存储颗粒写入数据。写入数据指令和数据可以是同步传输,也可以是异步传输。每个存储单元中设置专有存储区域和共享存储区域;所述专有存储区域用于存储一个运算芯片的临时运算结果,该临时运算结果为所述一个运算芯片继续利用的中间计算结果,而其他运算芯片不会使用的中间计算结果;所述共享存储区域用于存储运算芯片的运算数据结果,该运算数据结果被其他运算芯片使用,或者需要向外部进行反馈传输。Fig. 4b is a schematic diagram of the signal flow of the storage unit provided by the third embodiment of the present invention. In FIG. 4b , it is described as an example that the storage unit corresponds to the computing chip with 4 cores, that is, in FIG. 4b , the storage unit corresponds to the computing chip shown in the first embodiment. Please refer to Fig. 4b, the storage unit (20) receives the control command through the serdes interface (250, 251, 252, 253), and sends the control command to the routing unit (230), and the routing unit sends the control command according to the address in the control command For the corresponding storage (240, 241, 242, 243), the storage controller (220, 221, 222, 223) performs related operations according to the control instruction. For example, perform unified addressing on multiple storage particles according to the initial configuration memory parameters; or reset and reset the storage particles according to the reset instruction; write instructions or read instructions and other operations. The data acquisition instruction sent by the computing chip is accepted through the serdes interface (250, 251, 252, 253). The instruction carries the address of the data to be obtained. The routing unit sends the data acquisition instruction to the memory according to the address. The data is obtained from the granule, and the data is sent to the computing chip that requires the data through the serdes interface according to the source address. The write data instruction and data sent by the computing chip are accepted through the serdes interface (250, 251, 252, 253). The instruction carries the address of the data to be written, and the routing unit sends the write data instruction and data to the memory according to the address, and the storage control The device writes data into the storage particles according to the write data instruction. Write data instruction and data can be transmitted synchronously or asynchronously. A dedicated storage area and a shared storage area are set in each storage unit; the dedicated storage area is used to store a temporary calculation result of an operation chip, and the temporary operation result is an intermediate calculation result that the one operation chip continues to use, and The intermediate calculation results that will not be used by other computing chips; the shared storage area is used to store the computing data results of the computing chips, which are used by other computing chips or need to be fed back and transmitted to the outside.
图5为本实用新型第四实施例提供的大数据运算加速系统的连接结构示意图。在图5中,以大数据运算加速系统具有4个运算芯片和4个存储单元为例进行说明。请参见图5,大数据运算加速系统包括4个运算芯片(10、11、12、13)和4个存储单元(20、21、22、23)。运算芯片的结构可是第一实施例和第二实施例所公开的芯片结构,当然运算芯片也可以是本领域技术人员针对第一和第二实施例进行的等同改进的芯片结构,这些等同改进的芯片结构也在本实施例保护的范围。存储单元的结构可是第三实施例所公开的存储单元结构,当然存储单元也可以是本领域技术人员针对第三实施例进行的等同改进的存储单元结构,这些等同改进的存储单元结构也在本实施例保护的范围。在大数据运算加速系统中运算芯片(10)的UART控制单元(130)和外部主机相连,每个芯片(10、11、12、13)的UART控制单元(130)通过总线相连。芯片(10、11、12、13)的每一个serdes接口(150、151、152、153)连接一个存储单元(20、21、22、23)的serdes接口(250、251、252、253),进而实现每个运算芯片通过总线和所有存储单元相连,所述运算芯片通过所述存储单元进行数据交换,运算芯片之间不直接交换数据。运算芯片和存储单元内部和外部信号流程在第一、第二和第三实施例中已经详细说明了,这里就不再次进行描述。Fig. 5 is a schematic diagram of the connection structure of the big data operation acceleration system provided by the fourth embodiment of the present invention. In FIG. 5 , the big data computing acceleration system has 4 computing chips and 4 storage units as an example for illustration. Please refer to FIG. 5 , the big data computing acceleration system includes 4 computing chips (10, 11, 12, 13) and 4 storage units (20, 21, 22, 23). The structure of the computing chip can be the chip structure disclosed in the first embodiment and the second embodiment. Of course, the computing chip can also be an equivalently improved chip structure made by those skilled in the art for the first and second embodiments. These equivalently improved The chip structure is also within the protection scope of this embodiment. The structure of the storage unit can be the storage unit structure disclosed in the third embodiment. Of course, the storage unit can also be the storage unit structure equivalently improved by those skilled in the art for the third embodiment. These equivalently improved storage unit structures are also described in this paper. The scope of protection of the embodiment. In the big data operation acceleration system, the UART control unit (130) of the operation chip (10) is connected to an external host, and the UART control unit (130) of each chip (10, 11, 12, 13) is connected through a bus. Each serdes interface (150, 151, 152, 153) of the chip (10, 11, 12, 13) is connected to a serdes interface (250, 251, 252, 253) of a storage unit (20, 21, 22, 23), Furthermore, each computing chip is connected to all storage units through a bus, and the computing chips perform data exchange through the storage units, and data is not directly exchanged between computing chips. The internal and external signal flows of the computing chip and the storage unit have been described in detail in the first, second and third embodiments, and will not be described again here.
可选的,在图5所示的实施例中,可以将任意一个运算芯片中的UART控制单元(130)与外部主机连接,其它运算芯片中的UART控制单元(130)依次连接。与外部主机连接的运算芯片可以通过UART控制单元(130)接收外部主机的控制指令,并将控制指令发送给其它的运算芯片。Optionally, in the embodiment shown in FIG. 5, the UART control unit (130) in any computing chip can be connected to an external host, and the UART control units (130) in other computing chips are connected sequentially. The computing chip connected with the external host can receive the control instruction of the external host through the UART control unit (130), and send the control instruction to other computing chips.
例如,运算芯片10中的UART控制单元(130)可以与外部主机连接,运算芯片11中的UART控制单元(130)与运算芯片10中的UART控制单元(130)连接,运算芯片12中的UART控制单元(130)与运算芯片11中的UART控制单元(130)连接,运算芯片1,3中的UART控制单元(130)与运算芯片12中的UART控制单元(130)连接。For example, the UART control unit (130) in the computing chip 10 can be connected with an external host, the UART control unit (130) in the computing chip 11 is connected with the UART control unit (130) in the computing chip 10, and the UART in the computing chip 12 The control unit (130) is connected with the UART control unit (130) in the operation chip 11, and the UART control units (130) in the operation chips 1 and 3 are connected with the UART control unit (130) in the operation chip 12.
可选的,还可以将每个运算芯片12中的UART控制单元(130)分别与外部主机连接。Optionally, the UART control unit (130) in each computing chip 12 can also be connected to an external host respectively.
该系统应用到人工智能领域中,运算芯片(10)的UART控制单元(130)将外部主机发送的图片数据或者视频数据通过serdes接口(150、151、152、153)存储到存储单元(20、21、22、23)中,运算芯片(10、11、12、13)产生神经网络的数学模型,该数学模型也可以由外部主机通过serdes接口(150、151、152、153)存储到存储单元(20、21、22、23),由各个运算芯片(10、11、12、13)读取。在运算芯片(10)上运行神经网络第一层数学模型,运算芯片(10)通过serdes接口从存储单元(20、21、22、23)读取数据进行运算,并将运算结果通过serdes接口存储到存储单元(20、21、22、23)中的至少一个存储单元。运算芯片(10)通过UART控制单元(130)向运算芯片(20)发送控制指令,启动运算芯片(20)进行运算。在运算芯片(20)上运行神经网络第二层数学模型,运算芯片(20)通过serdes接口从存储单元(20、21、22、23)读取数据进行运算,并将运算结果通过serdes接口存储到存储单元(20、21、22、23)中的至少一个存储单元。每一个芯片执行神经网络中的一层,通过serdes接口从存储单元(20、21、22、23)获取数据进行运算,只到神经网络最后一层计算出运算结果。运算芯片(10)通过serdes接口从存储单元(20、21、22、23)获取运算结果,通过UART控制单元(130)反馈给外部主机。The system is applied to the field of artificial intelligence. The UART control unit (130) of the computing chip (10) stores the image data or video data sent by the external host to the storage unit (20, 153) through the serdes interface (150, 151, 152, 153). 21, 22, 23), the arithmetic chip (10, 11, 12, 13) generates the mathematical model of the neural network, and the mathematical model can also be stored in the storage unit by the external host through the serdes interface (150, 151, 152, 153) (20, 21, 22, 23), read by each computing chip (10, 11, 12, 13). Running the first-layer mathematical model of the neural network on the computing chip (10), the computing chip (10) reads data from the storage unit (20, 21, 22, 23) through the serdes interface to perform calculations, and stores the calculation results through the serdes interface to at least one of the storage units (20, 21, 22, 23). The computing chip (10) sends a control instruction to the computing chip (20) through the UART control unit (130), and starts the computing chip (20) to perform computing. Run the second-layer mathematical model of the neural network on the computing chip (20), the computing chip (20) reads data from the storage unit (20, 21, 22, 23) through the serdes interface to perform calculations, and stores the calculation results through the serdes interface to at least one of the storage units (20, 21, 22, 23). Each chip executes one layer of the neural network, obtains data from the storage unit (20, 21, 22, 23) through the serdes interface for calculation, and only calculates the calculation result at the last layer of the neural network. The computing chip (10) obtains computing results from the storage units (20, 21, 22, 23) through the serdes interface, and feeds back to the external host through the UART control unit (130).
该系统应用到加密数字货币领域中,运算芯片(10)的UART控制单元(130)将外部主机发送的区块信息存储到存储单元(20、21、22、23)中的至少一个存储单元。外部主机通过运算芯片(10、11、12、13)UART控制单元(130)向4个运算芯片(10、11、12、13)发送控制指令进行数据运算,4个运算芯片(10、11、12、13)启动运算操作。当然也可以外部主机向一个运算芯片(10)UART控制单元(130)发送控制指令进行数据运算,运算芯片(10)依次向其他3个运算芯片(11、12、13)发送控制指令进行数据运算,4个运算芯片(10、11、12、13)启动运算操作。也可以外部主机向一个运算芯片(10)UART控制单元(130)发送控制指令进行数据运算,第一运算芯片(10)向第二运算芯片(11)发送控制指令进行数据运算,第二运算芯片(11)向第三运算芯片(12)发送控制指令进行数据运算,第三运算芯片(12)向第四运算芯片(13)发送控制指令进行数据运算,4个运算芯片(10、11、12、13)启动运算操作。4个运算芯片(10、11、12、13)通过serdes接口从存储单元中读取区块信息数据,4个运算芯片(10、11、12、13)同时进行工作量证明运算,运算芯片(10)从存储单元(20、21、22、23)获取运算结果,通过UART控制单元(130)反馈给外部主机。The system is applied to the field of encrypted digital currency, and the UART control unit (130) of the computing chip (10) stores block information sent by an external host into at least one storage unit (20, 21, 22, 23). The external host sends control instructions to the four computing chips (10, 11, 12, 13) through the computing chips (10, 11, 12, 13) and the UART control unit (130) to perform data computing, and the four computing chips (10, 11, 12, 13) Start the computing operation. Of course, an external host can also send control instructions to a computing chip (10) UART control unit (130) to perform data calculations, and the computing chip (10) sends control commands to other 3 computing chips (11, 12, 13) in turn to perform data calculations , 4 computing chips (10, 11, 12, 13) start computing operations. It is also possible for an external host to send a control command to a computing chip (10) UART control unit (130) to perform data calculation, and the first computing chip (10) sends a control command to the second computing chip (11) to perform data computing, and the second computing chip (11) send control instruction to the 3rd operation chip (12) and carry out data operation, the 3rd operation chip (12) sends control instruction to the 4th operation chip (13) and carry out data operation, 4 operation chips (10,11,12 , 13) Start the computing operation. The 4 computing chips (10, 11, 12, 13) read the block information data from the storage unit through the serdes interface, and the 4 computing chips (10, 11, 12, 13) perform the workload proof calculation at the same time, and the computing chips ( 10) Obtain the operation result from the storage unit (20, 21, 22, 23), and feed it back to the external host through the UART control unit (130).
上述实施例中所述运算芯片和所述存储单元数量都是相等的,这时所述存储单元的第二数据接口个数与所述运算芯片的第二数据接口个数都为存储单元的数量。In the above-mentioned embodiment, the numbers of the operation chip and the storage unit are equal, and at this moment, the number of the second data interface of the storage unit and the number of the second data interface of the operation chip are both the number of the storage unit .
但是,本领域技术人员可知,所述运算芯片和所述存储单元数量也可以是不相等,这时所述存储单元的第二数据接口个数为运算芯片的数量,所述运算芯片的第二数据接口个数为存储单元的数量。例如运算芯片为4个,存储单元为5个,这时在运算芯片上设置5个第二数据接口,在存储单元上设置4个第二数据接口。However, those skilled in the art know that the numbers of the computing chips and the storage units may also be unequal. At this time, the number of the second data interfaces of the storage units is the number of computing chips, and the number of the second data interfaces of the computing chips is equal to that of the computing chips. The number of data interfaces is the number of storage units. For example, there are 4 computing chips and 5 storage units. At this time, 5 second data interfaces are set on the computing chips, and 4 second data interfaces are set on the storage units.
总线可以采用集中式仲裁总线结构,或者环线拓扑总线结构,总线技术为本领域的常用技术,因此在这里就不详细介绍。The bus can adopt a centralized arbitration bus structure or a ring topology bus structure. The bus technology is a common technology in this field, so it will not be introduced in detail here.
图6为本实用新型第五实施例提供的数据结构示意图。这里所说的数据为命令数据、数值数据、字符数据等多种数据。数据格式具体包括有效位valid、目的地址dst id、源地址src id和data数据。内核可以通过有效位valid来判断该数据包是命令还是数值,这里可以假定0代表数值,1代表命令。内核会根据数据结构判断目的地址、源地址和数据类型。从指令运行时序上来看,本实施例中采用传统的六级流水线结构,分别为取指、译码、执行、访存、对齐和写回级。从指令集架构上来看,可以采取精简指令集架构。按照精简指令集架构的通用设计方法,本实用新型指令集可以按功能分为寄存器-寄存器型指令,寄存器-立即数指令,跳转指令,访存指令、控制指令和核间通信指令。Fig. 6 is a schematic diagram of the data structure provided by the fifth embodiment of the present invention. The data mentioned here refers to various types of data such as command data, numerical data, and character data. The data format specifically includes valid bit valid, destination address dst id, source address src id and data data. The kernel can judge whether the data packet is a command or a value through the effective bit valid. Here, it can be assumed that 0 represents a value and 1 represents a command. The kernel will judge the destination address, source address and data type according to the data structure. From the point of view of instruction execution time sequence, a traditional six-stage pipeline structure is adopted in this embodiment, which are instruction fetch, decoding, execution, memory access, alignment, and write-back stages. From the point of view of the instruction set architecture, a reduced instruction set architecture can be adopted. According to the general design method of simplifying the instruction set architecture, the instruction set of the utility model can be divided into register-register type instructions, register-immediate data instructions, jump instructions, memory access instructions, control instructions and inter-core communication instructions according to functions.
使用本文中提供的描述,可以通过使用标准的编程和/或工程技术将实施例实现成机器、过程或制造品以产生编程软件、固件、硬件或其任何组合。Using the description provided herein, an embodiment can be implemented as a machine, process or article of manufacture by using standard programming and/or engineering techniques to produce programmed software, firmware, hardware, or any combination thereof.
可以将任何生成的程序(多个)(具有计算机可读程序代码)具体化在一个或多个计算机可使用的介质上,诸如驻留存储设备、智能卡或其它可移动存储设备,或传送设备,从而根据实施例来制作计算机程序产品和制造品。照此,如本文中使用的术语“制造品”和“计算机程序产品”旨在涵盖永久性地或临时性地存在在任何计算机可以使用的非短暂性的介质上的计算机程序。Any generated program(s) (with computer-readable program code) may be embodied on one or more computer-usable media, such as a resident storage device, a smart card or other removable storage device, or a transmission device, Computer program products and articles of manufacture are thus made according to the embodiments. As such, the terms "article of manufacture" and "computer program product" as used herein are intended to cover a computer program that exists either permanently or temporarily on any computer-usable, non-transitory medium.
如上所指出的,存储器/存储设备包含但不限制于磁盘、光盘、可移动存储设备(诸如智能卡、订户身份模块(Subscriber Identification Module,SIM)、无线标识模块(Wireless Identification Module,WIM))、半导体存储器(诸如随机存取存储器(RandomAccess Memory,RAM)、只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read Only Memory,PROM))等。传送介质包含但不限于经由无线通信网络、互联网、内部网、基于电话/调制解调器的网络通信、硬连线/电缆通信网络、卫星通信以及其它固定或移动网络系统/通信链路的传输。As noted above, memory/storage devices include, but are not limited to, magnetic disks, optical disks, removable storage devices (such as smart cards, Subscriber Identification Modules (SIMs), Wireless Identification Modules (WIMs)), semiconductor Memory (such as Random Access Memory (Random Access Memory, RAM), Read Only Memory (Read Only Memory, ROM), Programmable Read Only Memory (Programmable Read Only Memory, PROM)) and the like. Transmission media includes, but is not limited to, transmission via wireless communications networks, the Internet, intranets, telephone/modem based network communications, hardwired/cable communications networks, satellite communications, and other fixed or mobile network systems/communication links.
虽然已经公开了特定的示例实施例,但是本领域的技术人员将理解的是,在不背离本实用新型的精神和范围的情况下,能够对特定示例实施例进行改变。Although specific example embodiments have been disclosed, those skilled in the art will appreciate that changes can be made to the specific example embodiments without departing from the spirit and scope of the invention.
以上参考附图,基于实施方式说明了本实用新型,但本实用新型并非限定于上述的实施方式,根据布局需要等将各实施方式及各变形例的部分构成适当组合或置换后的方案,也包含在本实用新型的范围内。另外,还可以基于本领域技术人员的知识适当重组各实施方式的组合和处理顺序,或者对各实施方式施加各种设计变更等变形,被施加了这样的变形的实施方式也可能包含在本实用新型的范围内。Above, with reference to the accompanying drawings, the present utility model has been described based on the embodiment, but the present utility model is not limited to the above-mentioned embodiment, and the parts of each embodiment and each modified example may be appropriately combined or replaced according to the layout requirements, etc. included in the scope of the present utility model. In addition, based on the knowledge of those skilled in the art, the combination and processing order of each embodiment may be appropriately reorganized, or modifications such as various design changes may be added to each embodiment, and embodiments with such modifications may also be included in the present application. new range.
本实用新型虽然已详细描述了各种概念,但本领域技术人员可以理解,对于那些概念的各种修改和替代在本实用新型公开的整体教导的精神下是可以实现的。本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本实用新型。可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本实用新型的范围,本实用新型的范围由所附权利要求书及其等同方案的全部范围来决定。Although the utility model has described various concepts in detail, those skilled in the art can understand that various modifications and substitutions to those concepts can be realized under the spirit of the overall teaching disclosed in the utility model. Those skilled in the art can implement the invention set forth in the claims without undue experimentation using ordinary techniques. It is to be understood that the specific concepts disclosed are illustrative only and are not intended to limit the scope of the present invention, which is to be determined by the appended claims and their full scope of equivalents.
Claims (33)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201821775398.6U CN209543343U (en) | 2018-10-30 | 2018-10-30 | Big data operation acceleration system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201821775398.6U CN209543343U (en) | 2018-10-30 | 2018-10-30 | Big data operation acceleration system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN209543343U true CN209543343U (en) | 2019-10-25 |
Family
ID=68247663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201821775398.6U Active CN209543343U (en) | 2018-10-30 | 2018-10-30 | Big data operation acceleration system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN209543343U (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024016661A1 (en) * | 2022-07-18 | 2024-01-25 | 声龙(新加坡)私人有限公司 | Proof-of-work chip and electronic device |
-
2018
- 2018-10-30 CN CN201821775398.6U patent/CN209543343U/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024016661A1 (en) * | 2022-07-18 | 2024-01-25 | 声龙(新加坡)私人有限公司 | Proof-of-work chip and electronic device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108536642B (en) | Big data computing acceleration systems and chips | |
US7155554B2 (en) | Methods and apparatuses for generating a single request for block transactions over a communication fabric | |
CN102760111B (en) | FPGA-based (Field Programmable Gate Array) extended multi-serial port device and data receiving-transmitting method thereof | |
CN101859289B (en) | Method for accessing external memory using off-chip memory access controller | |
WO2020087276A1 (en) | Big data operation acceleration system and chip | |
US7277975B2 (en) | Methods and apparatuses for decoupling a request from one or more solicited responses | |
CN209149287U (en) | Big data computing acceleration system | |
CN103714026A (en) | Memorizer access method and device supporting original-address data exchange | |
CN209560543U (en) | Big Data Computing Chip | |
CN103714044A (en) | Efficient matrix transposition cluster and transposition method based on network-on-chip | |
CN209784995U (en) | Big Data Operation Acceleration System and Chip | |
CN104699641A (en) | EDMA (enhanced direct memory access) controller concurrent control method in multinuclear DSP (digital signal processor) system | |
CN115129657B (en) | Programmable logic resource expansion device and server | |
CN209543343U (en) | Big data operation acceleration system | |
CN104598406A (en) | Expansion function unit and computing equipment expansion system and expansion method | |
CN111506461B (en) | Back pressure module based on bus and used for testing and implementation method thereof | |
CN118606259B (en) | A bridge chip, multi-chip communication method and system | |
CN112740193B (en) | Method for executing calculations by big data calculation acceleration system | |
CN118426976B (en) | Memory expansion system, access method and device, medium and computer program product | |
CN204390227U (en) | Computing equipment expanding unit and extendible computing system | |
WO2020087278A1 (en) | Big data computing acceleration system and method | |
CN208298179U (en) | Big data operation acceleration system and chip | |
WO2020087239A1 (en) | Big data computing acceleration system | |
CN204496486U (en) | Expanded function unit and computing equipment expanding system | |
WO2020087243A1 (en) | Big data computing chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210809 Address after: 100192 Building No. 25, No. 1 Hospital, Baosheng South Road, Haidian District, Beijing, No. 301 Patentee after: SUANFENG TECHNOLOGY (BEIJING) Co.,Ltd. Address before: 100192 2nd Floor, Building 25, No. 1 Hospital, Baosheng South Road, Haidian District, Beijing Patentee before: BITMAIN TECHNOLOGIES Inc. |
|
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220302 Address after: Room 501-1, unit 4, floor 5, building 2, yard 9, FengHao East Road, Haidian District, Beijing 100089 Patentee after: Beijing suneng Technology Co.,Ltd. Address before: 100192 Building No. 25, No. 1 Hospital, Baosheng South Road, Haidian District, Beijing, No. 301 Patentee before: SUANFENG TECHNOLOGY (BEIJING) CO.,LTD. |
|
TR01 | Transfer of patent right |