WO2022088683A1 - 计算芯片、算力板和数据处理设备 - Google Patents

计算芯片、算力板和数据处理设备 Download PDF

Info

Publication number
WO2022088683A1
WO2022088683A1 PCT/CN2021/098781 CN2021098781W WO2022088683A1 WO 2022088683 A1 WO2022088683 A1 WO 2022088683A1 CN 2021098781 W CN2021098781 W CN 2021098781W WO 2022088683 A1 WO2022088683 A1 WO 2022088683A1
Authority
WO
WIPO (PCT)
Prior art keywords
logic circuit
combinational logic
computing chip
register
cell
Prior art date
Application number
PCT/CN2021/098781
Other languages
English (en)
French (fr)
Inventor
许超
范志军
薛可
杨作兴
Original Assignee
深圳比特微电子科技有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 深圳比特微电子科技有限公司 filed Critical 深圳比特微电子科技有限公司
Priority to KR1020237017734A priority Critical patent/KR102599118B1/ko
Priority to US17/633,084 priority patent/US11579875B2/en
Publication of WO2022088683A1 publication Critical patent/WO2022088683A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30079Pipeline control instructions, e.g. multicycle NOP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30029Logical and Boolean instructions, e.g. XOR, NOT
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/12Sizing, e.g. of transistors or gates

Definitions

  • the present disclosure relates to the field of chip technology, and in particular, to a computing chip, a computing power board, and a data processing device.
  • a computing chip can be designed based on a pipeline structure according to the characteristics of the algorithm. Specifically, the operation logic may be divided into several stages arranged in a pipeline structure, wherein each operation stage may have a similar functional design and operation structure.
  • various circuits or devices in the computing stage are usually designed to occupy a rectangular area in the computing chip, and the rectangular area is composed of several rows and columns of cell points, where the cell point refers to the smallest cell in the chip design. unit.
  • the space in some rectangular areas may not be fully utilized, that is, some cell points may not be used for any circuit or device. Therefore, the layout of the existing computing chip is not compact enough, resulting in a large space occupied by the computing chip or other devices including the computing chip.
  • the purpose of the present disclosure is to provide a computing chip, a computing power board and a data processing device.
  • a computing chip comprising a plurality of operation stages arranged in a pipeline structure, each operation stage comprising:
  • a first combinational logic circuit the first combinational logic circuit occupies a plurality of first cell points adjacent to each other, at least a part of the first cell points are located in a first incomplete column, and in the first incomplete column, the first The number of a cell point is less than the first preset number N1, wherein the first preset number N1 is the maximum number of cell points that each column in the computing chip can accommodate;
  • each register occupies a plurality of third cell points, and at least a part of the third cell points are located in the first incomplete column or the second incomplete column;
  • the first cell point, the second cell point and the third cell point occupy the same area on the computing chip.
  • At least another part of the first cell points is located in a first complete column, and in the first complete column, the number of the first cell points is equal to the first predetermined number N1.
  • the number of the first cell points is greater than or equal to the second predetermined number N2.
  • the number of first non-complete columns is equal to one in the same first combinational logic circuit.
  • the input terminal of the first combinational logic circuit is directly connected to the register, and the output terminal of the first combinational logic circuit is directly connected to the register.
  • the input end of the first combinational logic circuit is directly connected to the second combinational logic circuit, or the output end of the first combinational logic circuit is directly connected in the second combinational logic circuit.
  • the first combinational logic circuit includes an adder.
  • the second cell points exceeding the second preset number N2 are located in on the middle row or two rows of the computing chip.
  • the input terminal of the first second combinational logic circuit is directly connected to the register, and the output terminal of the last second combinational logic circuit is directly connected to the register .
  • the input terminal of at least one second combinational logic circuit is directly connected to the first combinational logic circuit, or the output terminal of at least one second combinational logic circuit is directly connected in the first combinational logic circuit.
  • the low-bit sub-register includes N0 first storage units and one first clock unit;
  • the high-bit sub-register includes N0 second storage units and a second clock unit;
  • first clock unit and the second clock unit are commonly connected to the same clock signal source.
  • the first clock unit and the second clock unit are located on the middle two rows of the computing chip.
  • the first bit number of the first combinational logic circuit is 2N0 or 2N0-1;
  • the second bit number of the second combinational logic circuit is less than or equal to 2NO.
  • the third digit of the register is 2N0.
  • a computing power board including one or more computing chips as described above.
  • a data processing device comprising one or more computing power boards as described above.
  • 1 is a schematic structural diagram of a computing chip
  • 2 is a schematic structural diagram of another computing chip
  • FIG. 3 is a schematic structural diagram of a computing chip according to an exemplary embodiment of the present disclosure.
  • FIG. 5 is a schematic structural diagram of a computing chip according to another exemplary embodiment of the present disclosure.
  • a computing chip is proposed. By changing the layout of circuits or devices in the computing chip, the computing chip is made more compact to reduce the space occupied by the computing chip.
  • the computing chip may include a plurality of operation stages arranged in a pipeline structure (the M-1th stage, the Mth stage, and the M+1th stage are shown in the figures, and the Schematic structure of the M stage).
  • the M-1th stage, the Mth stage, and the M+1th stage are shown in the figures, and the Schematic structure of the M stage.
  • data generally flows from left to right, that is, the data output from stage M-1 flows to stage M, and after processing at stage M, Data continues to flow to level M+1 for processing.
  • different operation stages can have similar functional designs and operation structures to implement corresponding algorithms.
  • each operation stage in the computing chip may include sequential logic circuits and combinational logic circuits.
  • the output at any time depends not only on the input signal at that time, but also on the original state of the sequential logic circuit; while in a combinational logic circuit, the output at any time depends only on the input at that time, which is different from the current state of the sequential logic circuit.
  • the original state of the combinational logic circuit is irrelevant.
  • the number of bits of sequential logic circuits and combinational logic circuits correspond to each other to facilitate the execution of algorithms. For example, the number of bits of a combinational logic circuit may be less than or equal to that of a sequential logic circuit.
  • each sequential logic circuit or combinational logic circuit may occupy an integer number of cell points in the computing chip.
  • each sequential logic circuit or combinational logic circuit is allocated several cell points arranged in a rectangular array, that is, for each sequential logic circuit or combinational logic circuit , which can occupy a rectangular area in a computing chip.
  • the sequential logic circuit may include a register 300
  • the combinational logic circuit may include a first combinational logic circuit 100 and a second combinational logic circuit 200
  • the first combinational logic circuit 100 An adder may be included
  • the second combinatorial logic circuit 200 may include other conventional logic circuits other than performing addition operations.
  • the first combinational logic circuit 100 may occupy a plurality of first cell points adjacent to each other
  • the second combinational logic circuit 200 may occupy one or more second cell points
  • the register 300 may occupy a plurality of third cells grid point.
  • the first cell point, second cell point, and third cell point here are intended to distinguish cell points belonging to different circuits or devices, but the first cell point, second cell point and The area occupied by the third cell point on the computing chip is the same.
  • the register 300 can be used to store the data output by the previous combinational logic circuit, and under the control of the clock signal, transmit the stored data to the subsequent combinational logic circuit at an appropriate time, so as to pending further processing.
  • the register 300 may be a multi-bit register, which may include a plurality of storage units and at least one clock unit, and each storage unit or clock unit may respectively occupy a plurality of third cell points and be arranged in on the same column in the compute chip.
  • the register 300 may be composed of several sub-registers with lower number of bits.
  • the register 300 may include a low-bit sub-register 310 and a high-bit sub-register 320 having an equal fourth number of bits N0 in order to achieve a balanced spatial arrangement. It can be understood that, when the fourth digits of the low-bit sub-register 310 and the high-bit sub-register 320 are both N0, the third digit of the register 300 formed by them is 2N0. In a specific example, N0 may be 4, 8, 16, or 32, and so on.
  • the low-bit sub-register 310 may include N0 first storage units and a first clock unit
  • the high-bit sub-register 320 may include N0 second storage units and a second clock unit
  • the first clock unit and the second clock unit The clock units may be commonly connected to the same clock signal source to synchronize all clocks in the same register 300 .
  • the first clock unit and the second clock unit may be arranged on the middle two rows of the computing chip, and the first clock unit and the second clock unit may be arranged toward the two sides of the computing chip respectively.
  • storage unit and a second storage unit may be arranged on the middle two rows of the computing chip, and the first clock unit and the second clock unit may be arranged toward the two sides of the computing chip respectively.
  • the maximum number of cell points that can be accommodated in each column in the chip is calculated, that is, the first preset number N1 can be determined according to the number of rows occupied by the register 300 .
  • N1 2N0+2.
  • a plurality of first storage units may be respectively located in the first row to the N0th row from top to bottom (from low bits to high bits) in the computing chip, and the first clock unit may be Located at row N0+1, the second clock unit may be located at row N0+2, and the plurality of second memory cells are located at row N0+3 to row 2N0+2, respectively.
  • the number of second cell points occupied by each second combinational logic circuit 200 described in the present disclosure is less than or equal to the first preset number N1.
  • the second combinational logic circuit 200 can also be defined in other manners, so that the number of the second cell points occupied by the second combinational logic circuit 200 is greater than the first preset number N1.
  • those skilled in the art can still adjust the layout of the second combinational logic circuit 200 or other circuits or devices in the computing chip according to the technical solutions described in the present disclosure, so as to make full use of the originally vacant cells point, making computing chips more compact.
  • one or more second combinational logic circuits 200 may be continuously arranged in the direction of data flow in the computing chip.
  • the input terminal of the first second combinational logic circuit 200 may be directly connected to the register 300, and the output terminal of the last second combinational logic circuit 200 may be directly connected to another register different from the aforementioned registers. 300.
  • the input terminal and/or the output terminal of the at least one second combinational logic circuit may also be directly connected to the first combinational logic circuit.
  • the input terminal of a certain corresponding second combinational logic circuit may be directly connected to the first combinational logic circuit in the previous operation stage, or the output terminal of a certain corresponding second combinational logic circuit may be connected to the next operation stage.
  • the first combinatorial logic circuits in an operational stage are directly connected.
  • the operations performed by the second combinational logic circuit 200 may be diverse, and accordingly, the number of second cell points that each second combinational logic circuit 200 needs to occupy may be different, and in some cases Next, the second cell points in the same second combinational logic circuit 200 may be discontinuously distributed. Therefore, the layout of the computing chip can be adjusted according to the second combinational logic circuit 200 in order to fully utilize the space.
  • one second combinational logic circuit 200 may be composed of several second combinational logic sub-circuits with lower number of bits.
  • a first combinational logic circuit 100 is further provided.
  • the input terminal of the first combinational logic circuit 100 can be directly connected to the register 300, and the output terminal of the first combinational logic circuit 100 can be directly connected to another register 300 different from the aforementioned register, so as to realize the data analysis corresponding processing.
  • the first digit of the first combinational logic circuit 100 may be 2N0 or 2N0-1.
  • the input terminal and/or the output terminal of the first combinational logic circuit may also be directly connected to the second combinational logic circuit to implement corresponding operations.
  • first combinational logic circuit 100 When the first combinational logic circuit 100 is an adder, due to functional requirements, a plurality of first cell points corresponding to the first combinational logic circuit 100 are usually adjacent to each other. These constraints need to be considered when adjusting the layout of various circuits or devices in order to fully utilize the space on the computing chip.
  • the first combinational logic circuit 100 , the second combinational logic circuit 200 and the register 300 respectively completely or substantially completely occupy all cell points in the corresponding rectangular area.
  • the second combinational logic circuit 200 there may be one or two vacant rows between the lower-order second combinational logic sub-circuit 210 and the higher-order second combinational logic sub-circuit 220, but this is very important for the computing chip.
  • the overall space utilization has little effect.
  • the second combinatorial logic circuit can be placed in the middle row or two rows that were previously vacant, so that the The second combinatorial logic circuit no longer needs to occupy a separate column in the computing chip, thus helping to reduce the total number of columns of cell points, thereby reducing the area of the computing chip required.
  • the middle second combinatorial logic circuit 200 occupies only half or less than half of the cell points in a column.
  • the second combinational logic subunits and/or subregisters on the right side of the grid point that were originally empty can be moved to the left one by one, and when moving to the first combinational logic circuit 100 , the Some of the first cell points in the first combinational logic circuit 100 are arranged to share the same column with the second combinational logic subunits or subregisters, thereby making full use of the space in the computing chip.
  • the first combinational logic circuit 100 at least a part of the first cell points are located in the first incomplete column, and in the first incomplete column, the number of the first cell points is less than the first preset number N1
  • the second combinational logic circuit 200 at least a part of the second cell points are located in the second incomplete column, and in the second incomplete column, the number of the second cell points is less than or equal to the second preset number N2 and in the register 300, at least a portion of the third cell points are located in the first incomplete column or the second incomplete column, that is, at least two of the first combinational logic circuit 100, the second combinational logic circuit 200, and the register 300 Cell points on the same column in a compute chip can be shared.
  • the number of first cell points occupied by the first combinational logic circuit 100 is relatively large, so at least another part of the first cell points are located in the first complete column. In the first complete column, The number of the first cell points is equal to the first preset number N1. At this time, the first combinational logic circuit 100 including both the first complete column and the first non-complete column will occupy an L-shaped area.
  • the number of bits of each second combinational logic subcircuit or each subregister is usually respectively Half of the number of bits of the second combinational logic circuit 200 and the register 300 (in some cases, the number of bits of the second combinational logic sub-circuit is less than half of the number of bits of the second combinational logic circuit 200), so a column may
  • the number of vacant cell points is generally greater than or equal to N2, and accordingly, in the first incomplete column, the number of first cell points may be greater than or equal to the second preset number N2.
  • the number of first incomplete columns may be equal to one, so as to avoid excessive first incomplete columns causing Count the increase in the total number of columns of cell points in the chip.
  • the number of second cell points occupied by the same second combinational logic circuit 200 may be greater than the second preset number N2, that is, more than half of the cell points in the same column are occupied .
  • the second cell points exceeding the second preset number N2 may be arranged on the middle row or two rows of the computing chip, so that at least half of the cell points in one column are arranged It is freed, so that the second combinational logic subcircuit and/or subregister originally on the right side can be moved to the left one by one without splitting the second combinational logic subcircuit and/or subregister, which helps To ensure the integrity of the circuit or device.
  • part of the first cell points in the first combinational logic circuit 100 can be arranged to share the same column with the second combinational logic sub-unit or sub-register, thereby making full use of the computing chip Space.
  • the layout is not limited to assigning a corresponding rectangular area to each of the first combinational logic circuit 100, the second combinational logic circuit 200 or the register 300, but the first cell point, the second cell point and the At least two of the three cell points belonging to different circuits or devices are arranged in the same column of the computing chip, which realizes full utilization of the area in the computing chip and improves the overall utilization rate.
  • a computing power board is also proposed, and the computing chip as described above can be included in the computing power board.
  • a computing power board may include one or more computing chips. Multiple computing chips can perform computing tasks in parallel.
  • a data processing device is also proposed, and the hash board as described above can be included in the data processing device.
  • the data processing device may include one or more computing power boards. Multiple computing boards can perform computing tasks in parallel, such as executing the SHA-256 algorithm.
  • the word "exemplary” means “serving as an example, instance, or illustration” rather than as a “model” to be exactly reproduced. Any implementation illustratively described herein is not necessarily to be construed as preferred or advantageous over other implementations. Furthermore, the present disclosure is not to be bound by any expressed or implied theory presented in the preceding technical field, background, brief summary or detailed description.
  • the word “substantially” is meant to encompass any minor variation due to design or manufacturing defects, tolerances of equipment or components, environmental influences, and/or other factors.
  • the word “substantially” also allows for differences from a perfect or ideal situation due to parasitics, noise, and other practical considerations that may exist in an actual implementation.
  • connection means that one element/node/feature is electrically, mechanically, logically or otherwise connected (or in communication) with another element/node/feature .
  • coupled means that one element/node/feature can be mechanically, electrically, logically or otherwise linked, directly or indirectly, with another element/node/feature to allow interaction, even though the two features may not be directly connected. That is, “coupled” is intended to encompass both direct and indirect coupling of elements or other features, including connections that utilize one or more intervening elements.
  • first,” “second,” and the like may also be used herein for reference purposes only, and are thus not intended to be limiting.
  • the terms “first,” “second,” and other such numerical terms referring to structures or elements do not imply a sequence or order unless the context clearly dictates otherwise.
  • providing is used broadly to encompass all ways of obtaining an object, thus “providing something” includes, but is not limited to, “purchasing,” “preparing/manufacturing,” “arranging/arranging,” “installing/ Assembly”, and/or “Order” objects, etc.

Abstract

一种计算芯片、算力板和数据处理设备。其中,计算芯片包括以流水线结构布置的多个运算级,每个运算级包括:第一组合逻辑电路(100),第一组合逻辑电路(100)占据彼此相邻的多个第一单元格点,至少一部分第一单元格点位于第一非完整列中;一个或多个第二组合逻辑电路(200),每个第二组合逻辑电路(200)占据一个或多个第二单元格点,至少一部分第二单元格点位于第二非完整列中;以及多个寄存器(300),每个寄存器(300)占据多个第三单元格点,至少一部分第三单元格点位于第一非完整列或第二非完整列中;其中,第一单元格点、第二单元格点和第三单元格点占据计算芯片上的相同的面积。

Description

计算芯片、算力板和数据处理设备
相关申请的交叉引用
[根据细则91更正 20.08.2021] 
本申请要求于2020年10月30日提交的中国专利申请第202011194830.4号的优先权,该申请的公开内容通过引用被全部合并于此。
技术领域
[根据细则91更正 20.08.2021] 
本公开涉及芯片技术领域,具体来说,涉及一种计算芯片、算力板和数据处理设备。
背景技术
在通常的数据处理设备中,可以根据算法的特点基于流水线结构来设计计算芯片。具体而言,可以将运算逻辑划分成若干级以流水线结构布置的运算级,其中每个运算级可以具有相似的功能设计和运算结构。
目前,运算级中的各种电路或器件通常被设计为占据计算芯片中的矩形区域,矩形区域由若干行数和列数的单元格点组成,其中,单元格点是指芯片设计中的最小单位。然而,由于电路或器件本身的特点,某些矩形区域中的空间可能并未被充分地利用,即某些单元格点可能并未被用于任何电路或器件。因此,现有的计算芯片的布局还不够紧凑,会导致计算芯片或包含该计算芯片的其它设备所占的空间较大。
发明内容
本公开的目的在于提供一种计算芯片、算力板和数据处理设备。
根据本公开的第一方面,提供了一种计算芯片,所述计算芯片包括以流水线结构布 置的多个运算级,每个运算级包括:
第一组合逻辑电路,所述第一组合逻辑电路占据彼此相邻的多个第一单元格点,至少一部分第一单元格点位于第一非完整列中,在第一非完整列中,第一单元格点的数目小于第一预设数目N1,其中,所述第一预设数目N1为所述计算芯片中的每一列能够容纳的最大单元格点数目;
一个或多个第二组合逻辑电路,每个第二组合逻辑电路占据一个或多个第二单元格点,至少一部分第二单元格点位于第二非完整列中,在第二非完整列中,第二单元格点的数目小于或等于第二预设数目N2,其中,N2=N1/2;以及
多个寄存器,每个寄存器占据多个第三单元格点,至少一部分第三单元格点位于第一非完整列或第二非完整列中;
其中,第一单元格点、第二单元格点和第三单元格点在所述计算芯片上占据相同的面积。
在一些实施例中,至少另一部分第一单元格点位于第一完整列中,在第一完整列中,第一单元格点的数目等于所述第一预设数目N1。
在一些实施例中,在第一非完整列中,第一单元格点的数目大于或等于所述第二预设数目N2。
在一些实施例中,在同一个第一组合逻辑电路中,第一非完整列的数目等于一。
在一些实施例中,在所述计算芯片中的数据流动方向上,所述第一组合逻辑电路的输入端直接连接于寄存器,且所述第一组合逻辑电路的输出端直接连接于寄存器。
在一些实施例中,在所述计算芯片中的数据流动方向上,所述第一组合逻辑电路的输入端直接连接于第二组合逻辑电路,或所述第一组合逻辑电路的输出端直接连接于第二组合逻辑电路。
在一些实施例中,第一组合逻辑电路包括加法器。
在一些实施例中,当同一个第二组合逻辑电路占据的第二单元格点的数目大于所述第二预设数目N2时,超出所述第二预设数目N2的第二单元格点位于所述计算芯片的中间一行或两行上。
在一些实施例中,至少一个第二组合逻辑电路占据位于同一个第二完整列中的第三预设数目N3的第二单元格点,其中,N3=N1-2。
在一些实施例中,在所述计算芯片中的数据流动方向上,最先的第二组合逻辑电路的输入端直接连接于寄存器,且最末的第二组合逻辑电路的输出端直接连接于寄存器。
在一些实施例中,在所述计算芯片中的数据流动方向上,至少一个第二组合逻辑电路的输入端直接连接于第一组合逻辑电路,或至少一个第二组合逻辑电路的输出端直接连接于第一组合逻辑电路。
在一些实施例中,每个寄存器包括具有相等的第四位数N0的低比特位子寄存器与高比特位子寄存器,其中,N0=(N1-2)/2。
在一些实施例中,所述低比特位子寄存器包括N0个第一存储单元和一个第一时钟单元;
所述高比特位子寄存器包括N0个第二存储单元和一个第二时钟单元;
其中,所述第一时钟单元和所述第二时钟单元共同连接于相同的时钟信号源。
在一些实施例中,第一时钟单元和第二时钟单元位于所述计算芯片的中间两行上。
在一些实施例中,所述第一组合逻辑电路的第一位数为2N0或2N0-1;
所述第二组合逻辑电路的第二位数小于或等于2NO;以及
所述寄存器的第三位数为2N0。
根据本公开的第二方面,还提供了一种算力板,所述算力板包括一个或多个如上所述的计算芯片。
根据本公开的第三方面,还提供了一种数据处理设备,所述数据处理设备包括一个或多个如上所述的算力板。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得更为清楚。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1是一种计算芯片的结构示意图;
图2是另一种计算芯片的结构示意图;
图3是根据本公开的一示例性实施例的计算芯片的结构示意图;
图4是又一种计算芯片的结构示意图;
图5是根据本公开的另一示例性实施例的计算芯片的结构示意图。
注意,在以下描述的实施例中,在一些情况中在不同的附图之间共同使用同一附图标记来表示相同部分或具有相同功能的部分,而省略其重复说明。在一些情况中,使用相似的标号和字母表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为了便于理解,在附图等中所示的各结构的位置、尺寸及范围等有时不表示实际的位置、尺寸及范围等。因此,本公开并不限于附图等所公开的位置、尺寸及范围等。
具体实施方式
下面将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。也就是说,本文中的结构及方法是以示例性的方式示出,来说明本公开中的结构和方法的不同实施例。本领域技术人员应当理解,这些示例仅仅以说明的方式来指示本公开的实施方式,而不是以穷尽的方式。此外,附图不必按比例绘制,一些特征可能被放大以示出一些具体部件的细节。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,并且为非限制性的。因此,示例性实施例的其它示例可以具有不同的值。
根据本公开的第一方面,提出了一种计算芯片,通过改变其中电路或器件的布局,使该计算芯片更加紧凑,以减小其占用的空间。
如图1至图5所示,计算芯片可以包括以流水线结构布置的多个运算级(图中所示为第M-1级、第M级和第M+1级,并具体示出了第M级的示意性结构)。在图1至图5的计算芯片中,数据大体上沿着从左到右的方向流动,也就是说,从第M-1级输出的数据流动到第M级,经第M级处理后,数据继续流动到第M+1级以待处理。在计算芯片中,不同的运算级可以具有相似的功能设计和运算结构,从而实现相应的算法。
如图1至图5所示,对于计算芯片中的每个运算级而言,其可以包括时序逻辑电路和组合逻辑电路。在时序逻辑电路中,任意时刻的输出不仅取决于当时的输入信号,还取决 于该时序逻辑电路原来的状态;而在组合逻辑电路中,任意时刻的输出仅仅取决于该时刻的输入,与该组合逻辑电路原来的状态无关。时序逻辑电路和组合逻辑电路的位数是彼此对应的,以方便执行算法。例如,组合逻辑电路的位数可以小于或等于时序逻辑电路的位数。
如上文中所述,在计算芯片中,芯片设计的最小单位可以被称为单元格点。可以理解的是,每个时序逻辑电路或组合逻辑电路可以占据计算芯片中的整数个单元格点。此外,在一些计算芯片中,为了便于排布,为每个时序逻辑电路或组合逻辑电路分配呈矩形阵列状排布的若干个单元格点,即对于每个时序逻辑电路或组合逻辑电路而言,其可以占据计算芯片中的一块矩形区域。
以图1至图5所示的计算芯片为例,其中的时序逻辑电路可以包括寄存器300,组合逻辑电路可以包括第一组合逻辑电路100和第二组合逻辑电路200,且第一组合逻辑电路100可以包括加法器,而第二组合逻辑电路200可以包括除了执行加法运算之外的其它的常规逻辑电路。其中,第一组合逻辑电路100可以占据彼此相邻的多个第一单元格点,第二组合逻辑电路200可以占据一个或多个第二单元格点,以及寄存器300可以占据多个第三单元格点。需要注意的是,这里的第一单元格点、第二单元格点、第三单元格点旨在区分属于不同电路或器件的单元格点,但是第一单元格点、第二单元格点和第三单元格点在计算芯片上占据的面积是相同的。
在计算芯片中,寄存器300可以用于存储在前的组合逻辑电路所输出的数据,并在时钟信号的控制下,在适当的时刻将所存储的数据传输到在后的组合逻辑电路中,以待进一步处理。
在一些实施例中,寄存器300可以是多比特位寄存器,其可以包括多个存储单元和至少一个时钟单元,且每个存储单元或时钟单元可以分别占据多个第三单元格点,并排布在计算芯片中的同一列上。
进一步地,为了方便更灵活地设置计算芯片中的空间,寄存器300可以由具有较低位数的若干个子寄存器组成。在图1至图5所示的示例中,寄存器300可以包括具有相等的第四位数N0的低比特位子寄存器310与高比特位子寄存器320,以便实现均衡的空间布置。可以理解的是,当低比特位子寄存器310与高比特位子寄存器320的第四位数均为N0时,它们所组成的寄存器300的第三位数为2N0。在具体的示例中,N0可以为4、8、16或32等。
其中,低比特位子寄存器310可以包括N0个第一存储单元和一个第一时钟单元,高比特位子寄存器320可以包括N0个第二存储单元和一个第二时钟单元,且第一时钟单元和第 二时钟单元可以共同连接于相同的时钟信号源,以使同一个寄存器300中的所有时钟同步。
进一步地,为了简化第一时钟单元和第二时钟单元的连接,可以将第一时钟单元和第二时钟单元设置在计算芯片的中间两行上,而分别朝向计算芯片的两侧排布第一存储单元和第二存储单元。
在图1至图5所示的示例中,计算芯片中的每一列能够容纳的最大单元格点数目,即第一预设数目N1可以根据寄存器300所占据的行数来决定,在这里,N1=2N0+2。具体而言,在一个寄存器300中,多个第一存储单元可以分别位于计算芯片中从上到下(从低比特位到高比特位)的第1行至第N0行,第一时钟单元可以位于第N0+1行,第二时钟单元可以位于第N0+2行,而多个第二存储单元分别位于第N0+3行至第2N0+2行。
为了方便描述,本公开中所述的每个第二组合逻辑电路200所占据的第二单元格点的数目小于或等于第一预设数目N1。然而,可以理解的是,也可以采用其它方式来定义第二组合逻辑电路200,使其所占据的第二单元格点的数目大于第一预设数目N1。在这种情况下,本领域技术人员仍然能够根据本公开所描述的技术方案,对第二组合逻辑电路200或计算芯片中的其它电路或器件的布局进行调整,以充分利用原本空置的单元格点,使得计算芯片更加紧凑。
如图1至图5所示,在计算芯片中的数据流动方向上,可以连续地设置一个或多个第二组合逻辑电路200。在一些实施例中,最先的第二组合逻辑电路200的输入端可直接连接于寄存器300,且最末的第二组合逻辑电路200的输出端可直接连接于不同于前述寄存器的另外的寄存器300。
当然,在其它一些实施例中,至少一个第二组合逻辑电路的输入端和/或输出端也可以与第一组合逻辑电路直接相连。在一具体示例中,某个相应的第二组合逻辑电路的输入端可以与上一个运算级中的第一组合逻辑电路直接相连,或者某个相应的第二组合逻辑电路的输出端可以与下一个运算级中的第一组合逻辑电路直接相连。
根据算法的不同,第二组合逻辑电路200所执行的运算可以是多样化的,相应地,每个第二组合逻辑电路200所需占据的第二单元格点的数目可能不同,并且在一些情况下,同一个第二组合逻辑电路200中的第二单元格点可以是不连续分布的。因此,可以根据第二组合逻辑电路200对计算芯片的布局进行调整,以期充分地利用空间。
在一些情况下,与上述寄存器300类似,一个第二组合逻辑电路200可以由具有较低位数的若干个第二组合逻辑子电路组成。在图1至图5所示的示例中,第二组合逻辑电路200可以包括低比特位第二组合逻辑子电路210和高比特位第二组合逻辑子电路220。由于第二 组合逻辑电路200中不包括时钟单元,其第二位数一般小于或等于2N0,且计算芯片上用于布置第二组合逻辑电路200的区域中,位于计算芯片中间两行的单元格点可以被空置。特别地,在一些情况下,至少一个第二组合逻辑电路200占据位于同一个第二完整列中的第三预设数目N3的第二单元格点,其中,N3=N1-2。
如图1至图5所示,在计算芯片中的数据流动方向上,还设置有第一组合逻辑电路100。在一些实施例中,第一组合逻辑电路100的输入端可直接连接于寄存器300,而第一组合逻辑电路100的输出端可直接连接于不同于前述寄存器的另外的寄存器300,以实现对数据的相应处理。与寄存器300的第三位数2N0相关,第一组合逻辑电路100的第一位数可以是2N0或2N0-1。
当然,在其它一些实施例中,第一组合逻辑电路的输入端和/或输出端也可以与第二组合逻辑电路直接相连,以实现相应的运算。
当第一组合逻辑电路100为加法器时,由于功能上的要求,对应于第一组合逻辑电路100的多个第一单元格点通常是彼此相邻的。当为了充分利用计算芯片上的空间而调整各种电路或器件的布局时,需要考虑上述限制条件。
如图1所示,在一种较理想的情况下,第一组合逻辑电路100、第二组合逻辑电路200和寄存器300分别完全地或基本完全地占据相应的矩形区域中的所有单元格点。当然,在第二组合逻辑电路200中,低比特位第二组合逻辑子电路210和高比特位第二组合逻辑子电路220之间可能会存在空置的一行或两行,但这对计算芯片的整体空间利用率的影响并不大。
在一些情况下,如果一个第二组合逻辑电路所需占据的第二单元格点的数目很少,那么可以将这个第二组合逻辑电路设置在原先被空置的中间一行或两行中,从而使得该第二组合逻辑电路不再需要占据计算芯片中单独的一列,因此有助于减少单元格点的总列数,从而减少所需的计算芯片的面积。
如图2所示,在一些情况下,如果一个第二组合逻辑电路200所需占据的第二单元格点的数目小于或等于第二预设数目N2(N2=N1/2),且计算芯片中的原本中间空置的一行或两行单元格点不够布置这个第二组合逻辑电路200,则其将占据新的一列单元格点,导致计算芯片中的空间的浪费。在图2的具体示例中,中间的第二组合逻辑电路200仅占据了一列中的一半或不到一半的单元格点。
在这种情况下,如图3所示,可以将原本空置的格点右侧的第二组合逻辑子单元和/或子寄存器逐个向左移动,当移动到第一组合逻辑电路100时,可以将第一组合逻辑电路100中的部分第一单元格点布置为与第二组合逻辑子单元或子寄存器共享同一个列,从而 充分利用计算芯片中的空间。换句话说,在第一组合逻辑电路100中,至少一部分第一单元格点位于第一非完整列中,在第一非完整列中,第一单元格点的数目小于第一预设数目N1;同时在第二组合逻辑电路200中,至少一部分第二单元格点位于第二非完整列中,在第二非完整列中,第二单元格点的数目小于或等于第二预设数目N2;且在寄存器300中,至少一部分第三单元格点位于第一非完整列或第二非完整列中,即第一组合逻辑电路100、第二组合逻辑电路200和寄存器300中的至少两者可以共享计算芯片中的同一列上的单元格点。
在一些实施例中,第一组合逻辑电路100所占据的第一单元格点的数目较多,因此至少另一部分第一单元格点是位于第一完整列中的,在第一完整列中,第一单元格点的数目等于第一预设数目N1。此时,包括第一完整列和第一非完整列两者的第一组合逻辑电路100将占据一L型区域。
由于针对第二组合逻辑电路200和寄存器300的重新布局是以第二组合逻辑子电路或子寄存器为单位进行的,且每个第二组合逻辑子电路或每个子寄存器的比特位数通常分别为第二组合逻辑电路200和寄存器300的比特位数的一半(在有些情况下,第二组合逻辑子电路的比特位数小于第二组合逻辑电路200的比特位数的一半),因此一列中可能空置的单元格点的数目通常大于或等于N2,相应地,在第一非完整列中,第一单元格点的数目可以大于或等于第二预设数目N2。
进一步地,为了尽可能减少计算芯片中的单元格点的数目,在同一个第一组合逻辑电路100中,第一非完整列的数目可以等于一,以避免过多的第一非完整列导致计算芯片中单元格点的总列数增加。
在另一些情况下,如图4所示,同一个第二组合逻辑电路200占据的第二单元格点的数目可能大于第二预设数目N2,即占据了同一列中超过一半的单元格点。
在这种情况下,如图5所示,可以将超出第二预设数目N2的第二单元格点布置在计算芯片的中间一行或两行上,以便将一列中的至少一半的单元格点空出,从而方便将原本在右侧的第二组合逻辑子电路和/或子寄存器逐个地向左移动,而不用再对第二组合逻辑子电路和/或子寄存器进行拆分,从而有助于保障电路或器件的整体性。当移动到第一组合逻辑电路100时,可以将第一组合逻辑电路100中的部分第一单元格点布置为与第二组合逻辑子单元或子寄存器共享同一个列,从而充分利用计算芯片中的空间。
在本公开的方案中,利用第二组合逻辑电路200的比特位数的非完整性,通过改变第一组合逻辑电路100、第二组合逻辑电路200和/或寄存器300所占据的单元格点的布局,具体地,不局限于为每个第一组合逻辑电路100、第二组合逻辑电路200或寄存器300都分配相 应的矩形区域,而是将第一单元格点、第二单元格点和第三单元格点中的至少两种属于不同电路或器件的单元格点布置在计算芯片的同一个列中,实现了计算芯片中的面积的充分利用,提高了整体利用率。
根据本公开的第二方面,还提出了一种算力板,如上所述的计算芯片可以被包括在算力板中。具体来说,算力板可以包括一个或多个计算芯片。多个计算芯片可以并行地执行计算任务。
[根据细则91更正 20.08.2021] 
根据本公开的第三方面,还提出了一种数据处理设备,如上所述的算力板可以被包括在数据处理设备中。具体来说,数据处理设备可以包括一个或多个算力板。多个算力板可以并行地执行计算任务,例如执行SHA-256算法。
如在此所使用的,词语“前”、“后”、“顶”、“底”、“之上”、“之下”等,如果存在的话,用于描述性的目的而并不一定用于描述不变的相对位置。应当理解,这样的词语在适当的情况下是可互换的,使得在此所描述的本公开的实施例,例如,能够在与在此所示出的或另外描述的那些取向不同的其他取向上操作。
如在此所使用的,词语“示例性的”意指“用作示例、实例或说明”,而不是作为将被精确复制的“模型”。在此示例性描述的任意实现方式并不一定要被解释为比其它实现方式优选的或有利的。而且,本公开不受在上述技术领域、背景技术、发明内容或具体实施方式中所给出的任何所表述的或所暗示的理论所限定。
如在此所使用的,词语“基本上”意指包含由设计或制造的缺陷、设备或部件的容差、环境影响和/或其它因素所致的任意微小的变化。词语“基本上”还允许由寄生效应、噪声以及可能存在于实际的实现方式中的其它实际考虑因素所致的与完美的或理想的情形之间的差异。
另外,前面的描述可能提及了被“连接”或“耦接”在一起的元件或节点或特征。如在此所使用的,除非另外明确说明,“连接”意指一个元件/节点/特征与另一种元件/节点/特征在电学上、机械上、逻辑上或以其它方式连接(或者通信)。类似地,除非另外明确说明,“耦接”意指一个元件/节点/特征可以与另一元件/节点/特征以直接的或间接的方式在机械上、电学上、逻辑上或以其它方式连结以允许相互作用,即使这两个特征可能并没有直接 连接也是如此。也就是说,“耦接”意图包含元件或其它特征的直接连结和间接连结,包括利用一个或多个中间元件的连接。
另外,仅仅为了参考的目的,还可以在本文中使用“第一”、“第二”等类似术语,并且因而并非意图限定。例如,除非上下文明确指出,否则涉及结构或元件的词语“第一”、“第二”和其它此类数字词语并没有暗示顺序或次序。
还应注意,如本文所使用的,词语“包括”、“包含”、“具有”和任何其它变体说明存在所指出的特征、整体、步骤、操作、元件和/或部件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、元件、部件和/或其组合。
在本公开中,术语“提供”从广义上用于涵盖获得对象的所有方式,因此“提供某对象”包括但不限于“购买”、“制备/制造”、“布置/设置”、“安装/装配”、和/或“订购”对象等。
本领域技术人员还应当意识到,在上述操作之间的边界仅仅是说明性的。多个操作可以结合成单个操作,单个操作可以分布于附加的操作中,并且操作可以在时间上至少部分重叠地执行。而且,另选的实施例可以包括特定操作的多个实例,并且在其他各种实施例中可以改变操作顺序。但是,其它的修改、变化和替换同样是可能的。因此,本说明书和附图应当被看作是说明性的,而非限制性的。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。在此公开的实施例可以任意彼此组合,而不脱离本公开的精神和范围。本领域的技术人员还应理解,可以对上面的实施例进行修改而不脱离本公开的范围和精神。本公开的范围由所附权利要求来限定。

Claims (17)

  1. 一种计算芯片,其中,所述计算芯片包括以流水线结构布置的多个运算级,每个运算级包括:
    第一组合逻辑电路,所述第一组合逻辑电路占据彼此相邻的多个第一单元格点,至少一部分第一单元格点位于第一非完整列中,在第一非完整列中,第一单元格点的数目小于第一预设数目N1,其中,所述第一预设数目N1为所述计算芯片中的每一列能够容纳的最大单元格点数目;
    一个或多个第二组合逻辑电路,每个第二组合逻辑电路占据一个或多个第二单元格点,至少一部分第二单元格点位于第二非完整列中,在第二非完整列中,第二单元格点的数目小于或等于第二预设数目N2,其中,N2=N1/2;以及
    多个寄存器,每个寄存器占据多个第三单元格点,至少一部分第三单元格点位于第一非完整列或第二非完整列中;
    其中,第一单元格点、第二单元格点和第三单元格点在所述计算芯片上占据相同的面积。
  2. 根据权利要求1所述的计算芯片,其中,至少另一部分第一单元格点位于第一完整列中,在第一完整列中,第一单元格点的数目等于所述第一预设数目N1。
  3. 根据权利要求1所述的计算芯片,其中,在第一非完整列中,第一单元格点的数目大于或等于所述第二预设数目N2。
  4. 根据权利要求1所述的计算芯片,其中,在同一个第一组合逻辑电路中,第一非完整列的数目等于一。
  5. 根据权利要求1所述的计算芯片,其中,在所述计算芯片中的数据流动方向上,所述第一组合逻辑电路的输入端直接连接于寄存器,或所述第一组合逻辑电路的输出端直接连接于寄存器。
  6. 根据权利要求1所述的计算芯片,其中,在所述计算芯片中的数据流动方向上,所 述第一组合逻辑电路的输入端直接连接于第二组合逻辑电路,或所述第一组合逻辑电路的输出端直接连接于第二组合逻辑电路。
  7. 根据权利要求1所述的计算芯片,其中,第一组合逻辑电路包括加法器。
  8. 根据权利要求1所述的计算芯片,其中,当同一个第二组合逻辑电路占据的第二单元格点的数目大于所述第二预设数目N2时,超出所述第二预设数目N2的第二单元格点位于所述计算芯片的中间一行或两行上。
  9. 根据权利要求1所述的计算芯片,其中,至少一个第二组合逻辑电路占据位于同一个第二完整列中的第三预设数目N3的第二单元格点,其中,N3=N1-2。
  10. 根据权利要求1所述的计算芯片,其中,在所述计算芯片中的数据流动方向上,最先的第二组合逻辑电路的输入端直接连接于寄存器,且最末的第二组合逻辑电路的输出端直接连接于寄存器。
  11. 根据权利要求1所述的计算芯片,其中,在所述计算芯片中的数据流动方向上,至少一个第二组合逻辑电路的输入端直接连接于第一组合逻辑电路,或至少一个第二组合逻辑电路的输出端直接连接于第一组合逻辑电路。
  12. 根据权利要求1所述的计算芯片,其中,每个寄存器包括具有相等的第四位数N0的低比特位子寄存器与高比特位子寄存器,其中,N0=(N1-2)/2。
  13. 根据权利要求12所述的计算芯片,其中,所述低比特位子寄存器包括N0个第一存储单元和一个第一时钟单元;
    所述高比特位子寄存器包括N0个第二存储单元和一个第二时钟单元;
    其中,所述第一时钟单元和所述第二时钟单元共同连接于相同的时钟信号源。
  14. 根据权利要求13所述的计算芯片,其中,第一时钟单元和第二时钟单元位于所述计算芯片的中间两行上。
  15. 根据权利要求12所述的计算芯片,其中,所述第一组合逻辑电路的第一位数为2N0或2N0-1;
    所述第二组合逻辑电路的第二位数小于或等于2N0;以及
    所述寄存器的第三位数为2N0。
  16. 一种算力板,其中,所述算力板包括一个或多个根据权利要求1至15中任一项所述的计算芯片。
  17. 一种数据处理设备,其中,所述数据处理设备包括一个或多个根据权利要求16所述的算力板。
PCT/CN2021/098781 2020-10-30 2021-06-08 计算芯片、算力板和数据处理设备 WO2022088683A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020237017734A KR102599118B1 (ko) 2020-10-30 2021-06-08 계산 칩, 해시 보드 및 데이터 처리 장치
US17/633,084 US11579875B2 (en) 2020-10-30 2021-06-08 Computing chip, hashrate board and data processing apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011194830.4A CN114442996A (zh) 2020-10-30 2020-10-30 计算芯片、算力板和数字货币挖矿机
CN202011194830.4 2020-10-30

Publications (1)

Publication Number Publication Date
WO2022088683A1 true WO2022088683A1 (zh) 2022-05-05

Family

ID=81323624

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/098781 WO2022088683A1 (zh) 2020-10-30 2021-06-08 计算芯片、算力板和数据处理设备

Country Status (5)

Country Link
US (1) US11579875B2 (zh)
KR (1) KR102599118B1 (zh)
CN (1) CN114442996A (zh)
TW (1) TWI776543B (zh)
WO (1) WO2022088683A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114912405A (zh) * 2021-02-08 2022-08-16 深圳比特微电子科技有限公司 采用全定制布局摆放的芯片以及用于实现挖矿算法的电子装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110140940A1 (en) * 2009-12-15 2011-06-16 Electronics And Telecommunications Research Institute Coefficient multiplier and digital delta-sigma modulator using the same
CN102185587A (zh) * 2011-03-21 2011-09-14 浙江大学 一种低功耗的两相结构多阶内插半带滤波器
CN210958338U (zh) * 2019-07-31 2020-07-07 国网内蒙古东部电力有限公司电力科学研究院 基于fpga芯片的三相数字锁相环、svpwm调制器及电网谐波电流控制系统
CN213042269U (zh) * 2020-10-30 2021-04-23 深圳比特微电子科技有限公司 计算芯片、算力板和数字货币挖矿机

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4249193A (en) * 1978-05-25 1981-02-03 International Business Machines Corporation LSI Semiconductor device and fabrication thereof
KR100262438B1 (ko) * 1991-05-08 2000-08-01 가나이 쓰도무 연산장치 및 이것을 사용한 비트필드조작 연산방법
KR0175373B1 (ko) * 1995-09-28 1999-04-01 김광호 칩 면적을 줄인 시변 교차 필터
US9432298B1 (en) * 2011-12-09 2016-08-30 P4tents1, LLC System, method, and computer program product for improving memory systems
US9024657B2 (en) * 2012-10-11 2015-05-05 Easic Corporation Architectural floorplan for a structured ASIC manufactured on a 28 NM CMOS process lithographic node or smaller
US10409827B2 (en) 2014-10-31 2019-09-10 21, Inc. Digital currency mining circuitry having shared processing logic
CN111459458A (zh) * 2020-06-03 2020-07-28 深圳比特微电子科技有限公司 运算电路、芯片和计算装置
CN111600699A (zh) * 2020-06-17 2020-08-28 深圳比特微电子科技有限公司 用于实现散列算法的电路和方法
CN111562808A (zh) * 2020-06-22 2020-08-21 深圳比特微电子科技有限公司 时钟电路系统、计算芯片、算力板和数字货币挖矿机

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110140940A1 (en) * 2009-12-15 2011-06-16 Electronics And Telecommunications Research Institute Coefficient multiplier and digital delta-sigma modulator using the same
CN102185587A (zh) * 2011-03-21 2011-09-14 浙江大学 一种低功耗的两相结构多阶内插半带滤波器
CN210958338U (zh) * 2019-07-31 2020-07-07 国网内蒙古东部电力有限公司电力科学研究院 基于fpga芯片的三相数字锁相环、svpwm调制器及电网谐波电流控制系统
CN213042269U (zh) * 2020-10-30 2021-04-23 深圳比特微电子科技有限公司 计算芯片、算力板和数字货币挖矿机

Also Published As

Publication number Publication date
TWI776543B (zh) 2022-09-01
US20220276868A1 (en) 2022-09-01
TW202207025A (zh) 2022-02-16
KR102599118B1 (ko) 2023-11-06
CN114442996A (zh) 2022-05-06
US11579875B2 (en) 2023-02-14
KR20230079496A (ko) 2023-06-07

Similar Documents

Publication Publication Date Title
Haj-Ali et al. Efficient algorithms for in-memory fixed point multiplication using magic
CN115461712A (zh) 用于存储器内计算的可缩放阵列架构
US11640303B2 (en) Calculating device
US20170047931A1 (en) Reconfigurable semiconductor device
US11604645B2 (en) MAC processing pipelines having programmable granularity, and methods of operating same
EP2550593A2 (en) Look up table structure supporting quaternary adders
WO2022088683A1 (zh) 计算芯片、算力板和数据处理设备
CN213042269U (zh) 计算芯片、算力板和数字货币挖矿机
US9933998B2 (en) Methods and apparatuses for performing multiplication
US9641180B2 (en) Reconfigurable semiconductor device
US20210173617A1 (en) Logarithmic Addition-Accumulator Circuitry, Processing Pipeline including Same, and Methods of Operation
CN111752529B (zh) 支持高效乘累加运算的可编程逻辑单元结构
US20060259887A1 (en) Integrated circuit design utilizing array of functionally interchangeable dynamic logic cells
Sanju et al. Design and implementation of a network on chip-based simulator: a performance study
CN113114264B (zh) 温度计译码方法和电路
US11435981B2 (en) Arithmetic circuit, and neural processing unit and electronic apparatus including the same
JP2019047516A (ja) 再構成可能な半導体装置
US11947889B2 (en) Chips placed in full-custom layout and electronic device for implementing mining algorithm
US11960856B1 (en) Multiplier-accumulator processing pipeline using filter weights having gaussian floating point data format
US20230420035A1 (en) In-memory computing circuit and method, and semiconductor memory
US20220283779A1 (en) MAC Processing Pipelines, Circuitry to Configure Same, and Methods of Operating Same
Karunakaran et al. Exploration on Power Delay Product of various VLSI Multiplier Architectures
JP2005116793A (ja) 半導体集積回路及びそのクロック配線方法
WO2018207801A1 (ja) プログラム可能なデバイス、その論理構成方法、及びそのプログラム
JP4562678B2 (ja) データフローグラフ再構成装置、リコンフィギュラブル回路の設定データ生成装置、及び処理装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21884425

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20237017734

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 22/09/2023)