WO2017152828A1 - 含有三维存储阵列的分布式模式处理器 - Google Patents

含有三维存储阵列的分布式模式处理器 Download PDF

Info

Publication number
WO2017152828A1
WO2017152828A1 PCT/CN2017/075866 CN2017075866W WO2017152828A1 WO 2017152828 A1 WO2017152828 A1 WO 2017152828A1 CN 2017075866 W CN2017075866 W CN 2017075866W WO 2017152828 A1 WO2017152828 A1 WO 2017152828A1
Authority
WO
WIPO (PCT)
Prior art keywords
mode
processor
array
processing circuit
memory
Prior art date
Application number
PCT/CN2017/075866
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 成都海存艾匹科技有限公司
Publication of WO2017152828A1 publication Critical patent/WO2017152828A1/zh

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/08Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements
    • G11C17/10Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements in which contents are determined during manufacturing by a predetermined arrangement of coupling elements, e.g. mask-programmable ROM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/10Frequency-modulated carrier systems, i.e. using frequency-shift keying

Definitions

  • the present invention relates to the field of integrated circuits and, more particularly, to distributed mode processors.
  • Pattern matching and pattern recognition means finding a pattern in the target pattern (target pattern) that is the same as or close to the retrieval pattern (search pattern for retrieval). Among them, pattern matching requires finding the same mode, and pattern recognition only requires finding the close mode. Unless otherwise stated, this specification does not distinguish between pattern matching and pattern recognition, and uses pattern processing to collectively refer to various operations on modes.
  • Pattern processing including pattern matching and pattern recognition
  • Commonly used pattern processing includes string matching, code matching, speech recognition, and image recognition.
  • String matching is widely used in areas such as big data analysis (such as financial data analysis, e-commerce data analysis, bioinformatics): Search for search strings from big data (currently mostly text databases, with target strings), and Statistical Analysis.
  • Code matching is widely used in areas such as anti-malware (such as network security, computer anti-virus): Find virus signatures from network packets or check network packets for network rules. This determines whether the network packet is secure.
  • Speech recognition matches the speech signal collected by the speech sensor or stored in the speech archive with the acoustic model library and the language model library.
  • Image Recognition The image signals that are collected by the image sensor or stored in the image archive match the image model library.
  • the main object of the present invention is to implement fast mode processing for a large mode library.
  • Another object of the present invention is to provide a memory which can store a large amount of mode data and which can be processed in a fast mode, and which is inexpensive.
  • the present invention provides a distributed mode processor including a three-dimensional storage (3D-M) array: it can store not only mode data but also It implements mode processing.
  • a mode processor chip includes a plurality of memory processing units, each unit including a mode processing circuit and at least one 3D-M array storing at least one mode (including target mode and retrieval mode).
  • the vertical integration of the 3D-M array with the mode processing circuit brings many advantages: Since the 3 D-M array does not occupy the substrate area, it can be integrated in the mode processing circuit, which can increase the storage capacity and reduce the chip area. More importantly, since the 3D-M array and the mode processing circuit are in the same chip and are close in distance, a large bandwidth electrical connection can be achieved between them. By using massively parallel computing (each distributed mode processor chip can contain tens of thousands of storage processing units), distributed mode processors can implement fast mode processing for large pattern libraries.
  • the present invention provides a distributed mode processor (200), characterized by: comprising: an input bus (110) for transmitting a first mode; - a semiconductor substrate (0) and a plurality of memory processing units (100aaa-lOOmn), the plurality of storage processing units are coupled to the input bus (110), each storage processing unit (100i) comprising at least one three-dimensional memory (3D-M) array (170) and a mode processing circuit ( 180), wherein: the 3D-M array
  • 2A-2C are circuit block diagrams of three types of memory processing units
  • 3A is a three-dimensional writable memory (three-dimensional writable)
  • FIG. 3D-W Memory, abbreviated as 3D-W) and 3D-W based memory processing unit cross-section;
  • Figure 3B is a three-dimensional printed memory (3D-P) and 3D-P based storage A cross-sectional view of the processing unit.
  • FIG. 4 is a perspective view of a storage processing unit.
  • 5A-5C are substrate circuit layout diagrams of three types of memory processing units.
  • 1 shows a distributed mode processor chip 200, which contains m x
  • storage processing units 100aa-100mn storage processing units 100aa-100mn. These memory processing units 100a-100m are all formed on the substrate 0.
  • Input bus 110 is coupled to respective memory processing units, and output bus 120 is coupled to respective memory processing units.
  • the distributed mode processor chip 200 can contain tens of thousands of storage processing units 100a-100mn. Such a large number of storage processing units lOOaa-lOOmn can guarantee large-scale parallel computing to achieve high-speed mode processing.
  • Each of the memory processing units 100ij includes a mode processing circuit 170 and at least one 3 DM array 180 that stores at least one mode.
  • 2A-2C are circuit block diagrams of three types of memory processing units 100i.
  • one mode processing circuit 180 serves a different number of 3D-M arrays 170.
  • the mode processing circuit 180 of FIG. 2A serves a 3D-M array 170: mode data stored in the 3D-M array 170 is fed to the mode processing circuit 180 via a large bandwidth electrical connection 160 (see FIGS. 3A-4), with The input mode data 110 performs pattern matching or pattern recognition and generates output mode data 120.
  • the mode processing circuit 180 of Figure 2B serves four memory arrays 170A-170D: mode data stored in the 3D-M array ijl 70A-170D is fed through the large bandwidth electrical connections 160A-160D (see Figures 3A-4) The mode processing circuit 180 performs pattern matching or pattern recognition with the input mode data 110.
  • the mode processing circuit 180 in FIG. 2C is eight memory arrays. Columns 170A-170D and 170W-170Z services: Mode data stored in 3D-M arrays 170A-170D and 170W-170Z is fed into mode via large bandwidth electrical connections 160A-160D and 160W-160Z (see Figure 3A- Figure 4)
  • the circuit 180 is processed and performs pattern matching or pattern recognition with the input mode data 110.
  • the mode processing circuit 180 serving more 3D-M arrays has a larger area and a stronger function.
  • Figures 3A-3B show two typical 3D-Ms.
  • Figure 3A is a cross-sectional view of a 3D-W based memory processing unit lOOij.
  • the 3D-W stored information is entered using electrical programming.
  • the common 3D-W has a 3D-XPoint.
  • Other 3D-W includes memristor, resistive memory (RRAM), phase change memory (PCM), programm able metallization cell (PMC), conductive bridging random-access memory
  • 3D-W is divided into three-dimensional multiple-time memory (thr ee-dimensional one-time-programmable memor (3D-OTP)).
  • 3D-MTP Memory, referred to as 3D-MTP).
  • 3D-OTP can be programmed once, and 3D-MTP can be programmed multiple times (including repetitive programming).
  • the 3D-OTP process is mature, and it can store retrieval pattern libraries (such as virus identification library, network specification library, acoustic model library, language model library, etc.), and the pattern data in these pattern libraries is only added without modification.
  • 3D-MTP is a general-purpose memory that can be used to store target pattern libraries, such as user data (including user code).
  • the 3D-W based memory processing unit 100ij includes a substrate circuit layer 0K: formed on the substrate 0.
  • the memory layer 16A is stacked over the substrate circuit 0K, and the memory layer 16B is stacked over the memory layer 16A.
  • the substrate circuit layer 0 K contains peripheral circuits of the memory layers 16A, 16B, which include the transistor 0t and the interconnection 0M.
  • the memory layers 16A, 16B are coupled to the substrate 0 through contact channels ⁇ Llav, 3av, respectively.
  • the 3D-W memory cell 5aa contains a layer of the programming film 12 and a layer of diode film 14.
  • the programming film 12 can be an anti-fuse film (for 3D-OTP) or other multi-programmed film (for 3D-MTP).
  • the diode film 14 has the following general characteristics: its resistance is small at the read voltage; and the resistance is large when the applied voltage is less than the read voltage or opposite to the read voltage.
  • the diode film may be a ⁇ - ⁇ - ⁇ diode or a metal oxide (such as ⁇ 02) diode.
  • FIG. 3B is a cross-sectional view of a 3D-P based memory processing unit 100i.
  • the information stored in 3D-P is entered by printing in the factory production process (printing method). This information is permanently fixed and cannot be changed after leaving the factory.
  • the printing method can be photo-lithography, nano-hn print, e-beam lithography, DUV scanning exposure, laser scanning exposure (laser)
  • the common 3D-P has a three-dimensional mask programming read only memory (3D-MPROM), which is programmed by masking data through photolithography.
  • 3D-P reads faster than 3D-W, it is suitable for storing fixed pattern libraries (such as acoustic model library and language model library), and implements high-performance mode processing (such as implementing natural language processing and real language translation). .
  • 3D-P contains at least two memory elements 5aa, 6aa.
  • the storage element 6aa is a type of storage element
  • the storage element 5aa is a high-resistance storage element.
  • ⁇ ⁇ ⁇ 6aaa contains a layer of diode film 14, high-resistance memory cell 5aa than ⁇ ⁇ memory element 6aa more than a layer of high-resistance film 12 .
  • the high resistance film 12 may be a silicon oxide film. The high resistance film 12 is physically removed at the memory element 6aa by the printing method in the process flow.
  • each storage layer contains a plurality of 3D-M arrays J
  • a 3D-M array is a collection of all storage elements that share at least one address line in a storage tier. In a 3D-M array, all address lines are contiguous and do not share any address lines with different 3D-M arrays.
  • a 3D-M chip contains multiple 3D-M modules. Each 3D-M module contains all of the memory layers in 3D-M, the top memory layer containing only one 3D-M array, and the projection of the 3D-M array on the substrate determines the boundaries of the 3D-M module.
  • the storage mode 3D-M array 170 is stacked above the substrate 0, and the processing mode mode processing circuit 180 is located in the substrate 0 and is at least partially covered by the 3D-M array ⁇ IJ170.
  • Communication between the 3D-M array 170 and the mode processing circuit 180 is achieved by a large bandwidth electrical connection 160 comprised of a plurality of contact vias lav, 3av. Due to the large number of contact channel holes lav, 3av (up to 10,000) and the short length (micron level), the bandwidth of the intra-chip electrical connection 160 is much higher than the communication bandwidth between the chips.
  • the distributed mode processor 200 can implement fast mode processing for large schema libraries.
  • FIGS. 5A-5C disclose specific implementations of three types of memory processing units.
  • the embodiment of Figure 5A corresponds to the figure
  • the processing unit 100ij is stored in 2A.
  • the mode processing circuit 180 serves a 3D-M array 170 which is completely covered by the 3D-M array 170.
  • the 3D-M array 170 includes four peripheral circuits including an X decoder 15, 15 and a Y decoder (including readout circuits) 17, 1T, and the mode processing circuit 180 is located in the four peripheral circuits. between.
  • Fig. 5A since the 3D-M array 170 is located above the substrate circuit 0K, not in the substrate circuit 0K, its projection on the substrate 0 is indicated by a broken line.
  • the mode processing circuit 180 is confined between four peripheral circuits, and the area thereof cannot exceed the area of the 3D-M array 170, so that the area is small and the function is limited.
  • This embodiment is more suitable for simpler mode processing (such as string matching and code matching).
  • FIG. 5B-5C disclose two mode processing circuits 180 having a larger area and greater functionality.
  • FIG. 5B corresponds to the memory processing unit 100ij of FIG. 2B.
  • a mode processing circuit 180 serves four 3D-M arrays 170A-170D.
  • Each 3D-M array (such as 170A) has only two peripheral circuits (such as X decoder 15A and Y decoder 17A).
  • the substrate circuit 0K can be freely laid out to form a mode processing circuit 180. It will be apparent that the mode processing circuit 180 of Figure 5B can be four times as large as Figure 5A, which enables more complex mode processing functions.
  • FIG. 5C corresponds to the memory processing unit 100ij of FIG. 2C.
  • a mode processing circuit 180 serves eight 3D-M arrays 170A-170D and 170W-170Z.
  • the eight 3D-M arrays are divided into two groups of 150A and 150B.
  • Each group eg 150A
  • Each group includes four 3D-M arrays (eg 170A-170D).
  • the substrate circuit Under the four 3D-M arrays ijl70A-170D of the first group 150A, the substrate circuit can be freely laid out to form the first mode processing circuit component A.
  • the substrate circuit can also be freely laid out to form the second mode processing circuit component B.
  • the first mode processing circuit component 180A and the second mode processing circuit component 180B constitute a mode processing circuit 180.
  • adjacent peripheral circuits eg, between adjacent X decoders 15A, 15C
  • adjacent Y decoders 17A, 17B between adjacent Y decoders 17C, 17D
  • mode processing circuit 180 of Figure 5C can be eight times larger than Figure 5A, which enables more complex mode processing functions.
  • mode processing circuit 180 only needs to perform partial mode processing functions.
  • the mode processing circuit 180 only needs to perform simple mode processing (such as extraction and processing of simple features).
  • the filtered mode after this simple mode processing is further sent to the more powerful external processor (such as CPU, GPU) through output bus 120 for final mode processing. Since most of the modes in the pattern library are filtered out by the simple mode processing, the output mode only accounts for a small portion of the pattern library, which reduces the bandwidth pressure of the output bus 120.
  • the storage processing unit 100i can adopt two kinds of mode processing methods, a processor type and a class memory method.
  • the storage processing unit lOOij is like a processor that can process the user data with its own retrieval pattern library.
  • the 3D-M array 170 of the storage processing unit 100ij stores a retrieval database;
  • the input data 110 of the storage processing unit 100ij is user data (including user codes), which are generally generated, such as network data.
  • the package processing unit 100ij performs pattern matching or pattern recognition on the user data 110 and the retrieval pattern library. Since the 3D-M array 170 and the mode processor 180 have a large bandwidth connection 160, this mode of processing is more efficient than the conventional mode in which the retrieval mode library is stored in the separate memory.
  • the storage processing unit 100ij acts as a memory for the outside world mainly for storing user data and capable of performing mode processing using the own mode processing circuit.
  • the user data is permanently stored in the 3D-M array 170 of the storage processing unit 100ij;
  • the input data 110 of the storage processing unit 100ij is retrieval mode data;
  • the storage processing unit 100ij pattern-matches the retrieval mode data 110 with its user data or Pattern recognition.
  • a plurality of memory-based distributed mode processor chips 200 can be packaged into a memory card (such as an SD card, a TF card) and a solid state hard disk like a flash chip for storing a large amount of user data (such as a user data file). ).
  • each of the storage processing units 100 ij in each of the distributed mode processor chips 200 has its own mode processing circuit 180, this mode processing circuit 180 only needs to process the data stored by the 3D-M array Ijl70 in the storage processing unit 100i. Therefore, regardless of the capacity of the memory card and the solid state hard disk, the mode processing mode is close to the single mode processing circuit 180 processing the data stored in the 3D-M array 170 coupled thereto. This huge advantage is unimaginable for traditional processors.
  • the storage processing unit 100i is the final storage device of the user data. This is different from traditional processors with embedded memory: embedded memory in traditional processors only stores user data, and the final storage device for user data is external memory (such as hard disk, optical disk, tape, etc.). If user data is stored in a traditional processor for a long time, the legacy processor can only serve these data and cannot serve other data. That is to say, a large amount of user data requires a lot of processors. Because traditional processors are very expensive, this approach is too expensive.
  • the mode processing circuit 180 is integrated under the 3D-M array 170 and formed in the same manner as the peripheral circuits (e.g., decoders) of the 3D-M array. Since the 3D-M is supposed to form a peripheral circuit, and the peripheral circuit occupies only a small area on the substrate 0 (see FIGS. 5A-5C), most of the substrate area can be used to form the mode processing circuit 180, the mode processing circuit. 180 is free for 3D-M. Thus, a plurality of approximately free mode processing circuits 180 can be formed on the distributed mode processor chip 200, each mode processing circuit 180 servicing particular data (stored in the 3D-M array 170 coupled thereto).
  • distributed mode processor 200 is an anti-malware processor that is primarily used for network security and computer antivirus.
  • Network security may employ a class processor approach:
  • the input data 110 of the distributed mode processor 200 is a network data packet
  • the 3D-M array 170 stores a network specification library and a virus identification library
  • the mode processing circuit 18 performs pattern matching on them.
  • the computer antivirus can adopt a class processor mode and a class memory mode: For the class processor mode, user data stored in the computer is transmitted as input data 110 to the distributed mode processor 200, and the 3D-M array 170 stores the virus identification library, mode processing.
  • the circuit 180 performs pattern matching on them; for the class memory mode, the virus identification is transmitted as input data 110 to the distributed mode processor 20 0, and the user data is stored in the 3D-M array 170, which is pattern matched by the mode processing circuit 180.
  • the 3D-M can be 3D-OTP or 3D-MTP, which is used to store the network specification library and the virus identification library.
  • 3D-M is preferably 3D-MTP, which stores the user database.
  • the distributed mode processor 200 can be used for big data analysis (eg, financial data analysis, e-commerce data analysis, bioinformatics). Big data analysis involves unstructured data or semi-structured data.
  • the distributed mode processor 200 can improve big data analysis capabilities.
  • big data is stored as an archive in the 3D-M array 170, and keywords for data analysis are sent as input mode data 110 to the distributed mode processor 200, and the mode processing circuit 180 pairs They do pattern matching.
  • 3D-M is preferably 3D-MTP, which is used to store user data.
  • the distributed mode processor 200 can also be used for speech recognition and/or image recognition.
  • the class processor mode and the class memory mode can be used.
  • user generated speech/image data is sent as input data 110 to the distributed mode processor 200, which stores various recognition model libraries (eg, acoustic model library, language model library, image model library). After that, the pattern processor 180 recognizes it.
  • the user-generated voice/image data is stored as an archive in the 3D-M matrix IJ 170, and the language signal or image signal to be searched is sent as input data 110 to the distributed mode processor 200, after which the mode processing circuit 180 Identify and find.
  • the 3D-M can be 3D-P, 3D-OTP or 3D-MTP, which stores an acoustic model library, a language model library, an image model library, and the like.
  • 3D-M is preferably 3D-MTP, which stores a voice/image archive.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)

Abstract

本发明提出一种含有三维存储(3D-M)阵列的分布式模式处理器。它含有多个存储处理单元,每个单元都含有一模式处理电路和至少一存储至少一模式的3D-M阵列。该3D-M阵列堆叠在模式处理电路上方。通过采用大规模平行计算,分布式模式处理器能对大型模式库实现快速模式处理。

Description

发明名称:含有三维存储阵列的分布式模式处理器 技术领域
[0001] 本发明涉及集成电路领域, 更确切地说, 涉及分布式模式处理器。
背景技术
[0002] 模式匹配和模式识别指在目标模式 (被检索的模式, target pattern) 中査找与 检索模式 (用于检索的模式, search pattern) 相同或接近的模式。 其中, 模式 匹配要求査找到相同的模式, 模式识别仅要求査找到接近的模式。 除了特别说 明, 本说明书不区分模式匹配和模式识别, 并用模式处理来统称各种对模式进 行的操作。
[0003] 模式处理 (包括模式匹配和模式识别) 应用广泛。 常用的模式处理包括字符 串 匹配、 代码匹配、 语音识别和图像识别等
。 字符串 匹配广泛用于大数据分析 (如金融 数据分析、 电商数据分析、 生物信息学) 等领域: 从大数据 (目前多为文本数 据库, 含有目标字符串 ) 中査找检索字符 串 , 并进行统计分析。 代码匹配广泛用于防 恶意软件 (anti-malware, 如网络安全、 计算机杀毒) 等领域: 从网络数据包中 査找病毒标识 (virus signature) 或检査网络数据包是否符合网络规范 (network rules) , 从而决定网络数据包是否安全。 语音识别将通过语音传感器搜集到、 或存储在语音档案库中的语音信号与声学模型库和语言模型库匹配。 图像识别 将通过图像传感器搜集到、 或存储到图像档案库中的图像信号与图像模型库匹 配。
[0004] 随着大数据吋代的到来, 传统的模式库 (包括检索模式库和目标模式库) 已成 为大型数据库 (ΤΒ级到 ΡΒ级, 甚至 ΕΒ级) : 检索模式库 (包括所有用于检索 的模式) 的数据量已经很大, 而目标模式库 (包括所有被检索的模式, 通常为 用户数据库) 的数据量则更为巨大。 目前计算机采用的 von Neumann架构已不 能满足大数据吋代对模式处理的要求。 在 von Neumann架构中, 用于处理模式 的处理器和用来存储模式的存储器是分离的: 存储器 (如硬盘、 光盘、 磁带等
) 仅用作存储模式数据, 而不能对它进行任 1可模式处理; 所有的模式处理都由 外置处理器 (如 CPU、 GPU) 来完成。 众所周知, 分离的处理器和存储器之间 带宽有限, 光是从模式库中读出所有数据就需要数天吋间, 更 1可况对它们进行 处理分析。 因此, 对大型模式库的模式处理需要耗费很长吋间。
[0005] 发明内容
[0006] 本发明的主要目的是对大型模式库实现快速模式处理。
[0007] 本发明的另一目的是提供一种既能大量存储模式数据、 又能对其进行快速模式 处理的存储器, 而且该存储器价格并不昂贵。
[0008] 为了实现这些以及别的目的, 本发明提出一种含有三维存储 (three-dhnenskm al memory, 简称为 3D-M) 阵列的分布式模式处理器: 它不仅能存储模式数据 , 还能对它实施模式处理。 一个模式处理器芯片含有多个存储处理单元, 每个 单元都含有一模式处理电路和至少一存储至少一模式 (包括目标模式和检索模 式) 的 3D-M阵列。 3D-M阵列与模式处理电路的垂直集成带来很多优势: 由于 3 D-M阵列不占衬底面积, 它可以集成在模式处理电路上, 这能增加存储容量、 减少芯片面积。 更重要的是, 由于 3D-M阵列和模式处理电路处于同一芯片中且 距离很近, 它们之间能实现一大带宽电连接。 通过采用大规模平行计算 (每个 分布式模式处理器芯片可以含有上万个存储处理单元) , 分布式模式处理器能 对大型模式库实现快速模式处理。
[0009] 相应地, 本发明提出一种分布式模式处理器 (200), 其特征在于含有: 一传输 第一模式的输入总线 (110); —半导体衬底 (0)及多个存储处理单元 (lOOaa-lOOmn) , 所述多个存储处理单元与该输入总线 (110)耦合, 每个存储处理单元 (lOOij)含 有至少一三维存储(3D-M)阵列 (170)和一模式处理电路 (180), 其中: 所述 3D-M 阵歹 |J(170)堆叠在该衬底 (0)上方, 该 3D-M阵歹 ij(170)存储至少一第二模式; 所述 模式处理电路 (180)位于该衬底 (0)中, 该模式处理电路 (180)对该第一模式和该第 二模式进行模式识别或模式匹配; 所述 3D-M阵列 (170)和所述模式处理电路 (180) 通过多个接触通道孔 (lav, 3av)实现一大带宽电连接 (160)。
[0010] 附图说明 [0011] 图 1是一种分布式模式处理器的电路框图。
[0012] 图 2A-图 2C是三种存储处理单元的电路框图;
[0013] 图 3A是一种三维可写存储器 (three-dimensional writable
memory, 简称为 3D-W) 及基于 3D-W的存储处理单元的截面图; 图 3B是一种三 维印录存储器 (three-dimensional printed memory, 简称为 3D-P) 及基于 3D-P 的存储处理单元的截面图。
[0014] 图 4是一种存储处理单元的透视图。
[0015] 图 5A-图 5C是三种存储处理单元的衬底电路布局图。
[0016] 注意到, 这些附图仅是概要图, 它们不按比例绘图。 为了显眼和方便起见, 图中的部分尺寸和结构可能做了放大或缩小。 在不同实施例中, 数字后面的字 母后缀表示同一类结构的不同实例; 相同的数字前缀表示相同或类似的结构。 在本说明书中, "Γ表示"和 /或"。
[0017] 具体实施方式
[0018] 图 1表示一种分布式模式处理器芯片 200, 它含有 m x
n个存储处理单元 100aa-100mn。 这些存储处理单元 lOOaa-lOOmn均形成在衬底 0 上。 输入总线 110与各个存储处理单元耦合, 输出总线 120与各个存储处理单元 耦合。 注意到, 分布式模式处理器芯片 200可以含有上万个存储处理单元 lOOaa- 100mn。 如此数量众多的存储处理单元 lOOaa-lOOmn可以保证大规模平行计算, 以实现高速模式处理。
[0019] 每个存储处理单元 100ij都含有一模式处理电路 170和至少一存储至少一模式的 3 D-M阵列 180。 图 2A-图 2C是三种存储处理单元 lOOij的电路框图。 在这些实施例 中, 一个模式处理电路 180为不同数量的 3D-M阵列 170服务。 图 2A中的模式处理 电路 180为一个 3D-M阵列 170服务: 存储在 3D-M阵列 170中的模式数据通过大带 宽电连接 160 (参见图 3A-图 4) 送入模式处理电路 180, 与输入模式数据 110进行 模式匹配或模式识别, 并产生输出模式数据 120。 图 2B中的模式处理电路 180为 四个存储阵列 170A-170D服务: 存储在 3D-M阵歹 ijl70A-170D中的模式数据通过 大带宽电连接 160A-160D (参见图 3A-图 4) 送入模式处理电路 180, 并与输入模 式数据 110进行模式匹配或模式识别。 图 2C中的模式处理电路 180为八个存储阵 列 170A-170D和 170W-170Z服务: 存储在 3D-M阵列 170A-170D和 170W-170Z中 的模式数据通过大带宽电连接 160A-160D和 160W-160Z (参见图 3A-图 4) 送入模 式处理电路 180, 并与输入模式数据 110进行模式匹配或模式识别。 从以后的图 5 A-图 5C可以看出, 为更多 3D-M阵列服务的模式处理电路 180具有更大的面积和 更强的功能。
[0020] 图 3A-图 3B表示两种典型 3D-M。 图 3A是一种基于 3D-W的存储处理单元 lOOij的 截面图。 3D- W存储的信息采用电编程录入。 常见的 3D-W有 3D-XPoint。 其它 3D -W包括 memristor、 阻变存储器 (RRAM) 、 相变存储器 (PCM) 、 programm able metallization cell (PMC) 、 conductive bridging random-access memory
(CBRAM) 等。 根据其可编程的次数, 3D-W又分为三维一次编程存储器 (thr ee-dimensional one-time-programmable memor , 简称为 3D-OTP) 禾卩三维多次 编程存储器 (three-dimensional multiple-time-programmable
memory, 简称为 3D-MTP) 。 顾名思义, 3D-OTP能编程一次, 3D-MTP能编程 多次 (包括重复编程) 。 3D-OTP工艺成熟, 它可存储检索模式库 (如病毒标识 库、 网络规范库、 声学模型库、 语言模型库等) , 这些模式库中的模式数据只 增加不修改。 3D-MTP是一种通用存储器, 它可用来存储目标模式库, 如用户数 据 (包括用户代码) 等。
[0021] 基于 3D-W的存储处理单元 100ij含有一形成在衬底 0上的衬底电路层 0K:。 存储 层 16A堆叠在衬底电路 0K之上, 存储层 16B堆叠在存储层 16A之上。 衬底电路层 0 K含有存储层 16A、 16B的周边电路, 它包括晶体管 0t及互连线 0M。 每个存储层
(如 16A) 含有多条第一地址线 (如 2a, 沿 y方向) 、 多条第二地址线 (如 la, 沿 X方向) 和多个 3D-W存储元 (如 laa) 。 存储层 16A、 16B分别通过接触通道 孑 Llav, 3av与衬底 0耦合。
[0022] 3D- W存储元 5aa含有一层编程膜 12和一层二极管膜 14。 编程膜 12可以是反熔丝 膜 (用于 3D-OTP) , 也可以是其它多次编程膜 (用于 3D-MTP) 。 二极管膜 14 具有如下的广义特征: 在读电压下, 其电阻较小; 当外加电压小于读电压或者 与读电压方向相反吋, 其电阻较大。 二极管膜可以是 Ρ-ί-Ν二极管, 也可以是金 属氧化物 (如 Ή02) 二极管等。 [0023] 图 3B是一种基于 3D-P的存储处理单元 lOOij的截面图。 3D-P存储的信息是在工 厂生产过程中采用印刷方式录入的 (印录法) 。 这些信息是永久固定的, 出厂 后不能改变。 印录法可以是光刻 (photo-lithography) 、 纳米压印法 (nano-hn print) 、 电子束扫描曝光 (e-beam lithography) 、 DUV扫描曝光、 激光扫描曝 光 (laser
programming)等。 常见的 3D-P有三维掩膜编程只读存储器 (3D-MPROM) , 它通过光刻法经过掩膜编程录入数据。 3D-P的读速度比 3D-W快, 它适合存储固 定的模式库 (如声学模型库和语言模型库等) , 并实现高性能模式处理 (如实 现自然语言处理和实吋语言翻译等) 。
[0024] 3D-P含有至少两种存储元 5aa, 6aa。 存储元 6aa是一种 ί氐阻存储元, 存储元 5aa 是一种高阻存储元。 ί氐阻存储元 6aa含有一层二极管膜 14, 高阻存储元 5aa比氐 阻存储元 6aa多含一层高阻膜 12。 作为一个简单的例子, 高阻膜 12可以是一层二 氧化硅膜。 该高阻膜 12在工艺流程中利用印录法在存储元 6aa处被物理移除。
[0025] 在图 3A-图 3B的 3D-M (包括 3D-W和 3D-P) 中, 每个存储层含有多个 3D-M阵 歹 |J。 3D-M阵列是在一个存储层中所有共享了至少一条地址线的存储元之集合。 在一个 3D-M阵列中, 所有地址线是连续的, 并不与不同 3D-M阵列共享任何地 址线。 另一方面, 一个 3D-M芯片含有多个 3D-M模块。 每个 3D-M模块含有 3D- M中的所有存储层, 其顶存储层仅含一个 3D-M阵列, 而且该 3D-M阵列在衬底 上的投影决定了该 3D-M模块的边界。
[0026] 图 4从另一个角度披露了存储处理单元 100ij的结构。 存储模式的 3D-M阵列 170 堆叠在衬底 0的上方, 处理模式的模式处理电路 180位于衬底 0中, 并被 3D-M阵 歹 IJ170至少部分覆盖。 3D-M阵列 170和模式处理电路 180之间通过由大量接触通 道孔 lav、 3av构成的大带宽电连接 160实现通讯。 由于接触通道孔 lav、 3av数量 众多 (可以上万个) 且长度很短 (微米级) , 芯片内电连接 160的带宽远高于芯 片间的通讯带宽。
[0027] 3D-M阵列 170与模式处理电路 180的垂直集成带来很多优势: 由于 3D-M阵列 17
0不占衬底面积 0, 它可以集成在模式处理电路 180上, 这能增加存储容量、 减少 芯片面积。 更重要的是, 由于 3D-M阵列 170和模式处理电路 180处于同一芯片 20 0中且距离很近, 它们之间能实现较大带宽。 通过采用大规模平行计算, 分布式 模式处理器 200能对大型模式库实现快速模式处理。
[0028] 图 5A-图 5C披露了三种存储处理单元的具体实现方式。 图 5A的实施例对应于图
2A中存储处理单元 100ij。 模式处理电路 180为一个 3D-M阵列 170服务, 它被 3D- M阵列 170完全覆盖。 在该实施例中, 3D-M阵列 170含有四个周边电路, 包括 X 解码器 15、 15、和 Y解码器 (包括读出电路) 17、 1T , 模式处理电路 180位于这四 个周边电路之间。 在图 5A中, 由于 3D-M阵列 170位于衬底电路 0K上方, 不在衬 底电路 0K中, 在此用虚线表示其在衬底 0上的投影。
[0029] 在本实施例中, 模式处理电路 180被局限在四个周边电路之间, 其面积不能超 过 3D-M阵列 170的面积, 故其面积较小、 功能有限。 该实施例较适于实现较简 单的模式处理 (如字符串 匹配和代码匹配)
。 很明显, 较复杂的模式处理 (如语音识别、 图像识别) 需要更大的电路, 这 需要在 3D-M阵列 170下腾出更大的衬底面积, 以便模式处理电路 180的布局。 图 5B-图 5C披露了两种具有更大面积和更强功能的模式处理电路 180。
[0030] 图 5B的实施例对应于图 2B中存储处理单元 100ij。 在该实施例中, 一个模式处 理电路 180为四个 3D-M阵列 170A-170D服务。 每个 3D-M阵列 (如 170A) 只有两 个周边电路 (如 X解码器 15A和 Y解码器 17A) 。 在这四个 3D-M阵列 170A-170D 下方, 衬底电路 0K可以自由布局, 形成一模式处理电路 180。 很明显, 图 5B中 的模式处理电路 180可以是图 5A的四倍大, 它能实现较复杂的模式处理功能。
[0031] 图 5C的实施例对应于图 2C中存储处理单元 100ij。 在该实施例中, 一个模式处 理电路 180为八个 3D-M阵列 170A-170D和 170W-170Z服务。 这八个 3D-M阵列分 为两组 150A、 150B。 每组 (如 150A) 包括四个 3D-M阵列 (如 170A-170D) 。 在第一组 150A的四个 3D-M阵歹 ijl70A-170D下方, 衬底电路可以自由布局, 形成 第一模式处理电路组件 A
180A。 类似地, 在第二组 150B的四个 3D-M阵列 170W-170Z下方, 衬底电路也 可以自由布局, 形成第二模式处理电路组件 B
180B。 第一模式处理电路组件 180A和第二模式处理电路组件 180B构成模式处理 电路 180。 在本实施例中, 在相邻周边电路之间 (如相邻 X解码器 15A, 15C之间 ; 在相邻的 Y解码器 17A,17B之间; 在相邻的 Y解码器 17C,17D之间) 留有间隙
(如 G) , 以形成布线通道 190Xa, 190Ya,
190Yb , 供不同模式处理电路组件 150A,150B之间、 或不同模式处理电路之间实 现通讯。 很明显, 图 5C中的模式处理电路 180可以是图 5A的八倍大, 它能实现 更复杂的模式处理功能。
[0032] 在本发明的一些实施例中, 模式处理电路 180仅需完成部分模式处理功能。 比 如说, 模式处理电路 180仅需完成简单模式处理 (如简单特征的提取和处理) 。 经过该简单模式处理筛选后的模式将进一步通过输出总线 120送到更强大的外置 处理器 (如 CPU、 GPU) 中完成最终模式处理。 由于模式库中的大部分模式会 被简单模式处理筛选掉, 输出的模式仅占模式库的小部分, 这能降低输出总线 1 20的带宽压力。
[0033] 在分布式模式处理器 200中, 存储处理单元 lOOij可以采用两种模式处理方式一 一类处理器方式和类存储器方式。 对于类处理器方式, 存储处理单元 lOOij对外 界来说就像一个能用其自带的检索模式库对外来用户数据进行模式处理的处理 器。 具体说来, 存储处理单元 lOOij的 3D-M阵列 170存储检索数据库; 存储处理 单元 100ij的输入数据 110是用户数据 (包括用户代码) , 这些用户数据一般说来 是实吋产生的, 如网络数据包; 存储处理单元 100ij将用户数据 110与检索模式库 进行模式匹配或模式识别。 由于 3D-M阵列 170与模式处理器 180之间具有大带宽 连接 160, 这种模式处理方式比传统的、 检索模式库存储于分离存储器的模式处 理方式效率高。
[0034] 对于类存储器方式, 存储处理单元 100ij对外界来说像一个主要用于存储用户数 据、 且能利用自带模式处理电路进行模式处理的存储器。 具体说来, 用户数据 长久存储在存储处理单元 100ij的 3D-M阵列 170中; 存储处理单元 100ij的输入数 据 110是检索模式数据; 存储处理单元 100ij将检索模式数据 110与其用户数据进 行模式匹配或模式识别。 注意到, 多个采用类存储器方式的分布式模式处理器 芯片 200可以像闪存芯片一样封装成存储卡 (如 SD卡、 TF卡) 和固态硬盘, 用 于存储海量的用户数据 (如用户数据档案) 。 由于每个分布式模式处理器芯片 2 00中的每个存储处理单元 100ij都自带一个模式处理电路 180, 这个模式处理电路 180仅需处理该存储处理单元 lOOij中 3D-M阵歹 Ijl70存储的数据。 因此, 不论存储 卡和固态硬盘的容量有多大, 其模式处理的吋间都接近单一模式处理电路 180处 理与其耦合的 3D-M阵列 170中存储的数据之吋间。 这个巨大的优势对传统处理 器来说不可想象。
[0035] 在类存储器方式中, 存储处理单元 lOOij是用户数据的最终存储器件。 这与传统 的、 含有嵌入式存储器的处理器不同: 传统处理器中的嵌入式存储器仅临吋存 储用户数据, 用户数据的最终存储器件还是外置存储器 (如硬盘、 光盘、 磁带 等) 。 如果用户数据长久存储在传统处理器中, 则该传统处理器仅能为这些数 据服务, 而无法为其它数据服务。 也就是说, 大量用户数据需要使用很多处理 器。 由于传统处理器非常昂贵, 这种处理方式代价过于高昂。 与之比较, 在本 发明提出的存储处理单元 100ij中, 模式处理电路 180集成在 3D-M阵列 170下方, 与 3D-M阵列的周边电路 (如解码器) 同吋形成。 由于 3D-M本来就要形成周边 电路, 且周边电路只在衬底 0上占很小面积 (参见图 5A-图 5C) , 大部分衬底面 积可以用来形成模式处理电路 180, 模式处理电路 180对于 3D-M来说是免费的。 因此, 在分布式模式处理器芯片 200上可以形成大量近似免费的模式处理电路 18 0, 每个模式处理电路 180为特定的数据 (存储在与之耦合的 3D-M阵列 170中) 服务。
[0036] 以下就分布式模式处理器的应用做一简单介绍。 作为一个例子, 分布式模式 处理器 200是一防恶意软件 (anti-malware) 处理器, 它主要用于网络安全和计 算机杀毒。 网络安全可采用类处理器方式: 分布式模式处理器 200的输入数据 11 0是网络数据包, 3D-M阵列 170存储网络规范库和病毒标识库, 模式处理电路 18 0对它们进行模式匹配。 计算机杀毒可采用类处理器方式和类存储器方式: 对于 类处理器方式, 计算机中存储的用户数据作为输入数据 110传输至分布式模式处 理器 200, 3D-M阵列 170存储病毒标识库, 模式处理电路 180对它们进行模式匹 配; 对于类存储器方式, 病毒标识作为输入数据 110传送至分布式模式处理器 20 0, 用户数据存储在 3D-M阵列 170中, 模式处理电路 180对它们进行模式匹配。 在类处理器方式中, 3D-M可以是 3D-OTP或 3D-MTP, 它用于存储网络规范库 和病毒标识库。 在类存储器方式中, 3D-M最好是 3D-MTP, 它存储用户数据库 [0037] 作为另一个例子, 分布式模式处理器 200可用于大数据分析 (如金融数据分析 、 电商数据分析、 生物信息学) 。 大数据分析涉及非结构化数据或半结构化数 据。 传统的、 采用关系型数据库 (relational database) 的分析方法对此无能为 力。 分布式模式处理器 200能提高大数据分析能力。 为了提高效率, 最好采用类 存储器方式: 大数据作为档案存储在 3D-M阵列 170中, 用于数据分析的关键词 作为输入模式数据 110送至分布式模式处理器 200, 模式处理电路 180对它们进行 模式匹配。 在大数据分析中, 3D-M最好是 3D-MTP, 它用于存储用户数据。
[0038] 分布式模式处理器 200还可以用于语音识别和 /或图像识别。 在识别过程中, 可 以采用类处理器方式和类存储器方式。 对于类处理器方式, 用户产生的语音 /图 像数据作为输入数据 110送至分布式模式处理器 200, 3D-M阵列 170存储各种识 别模型库 (如声学模型库、 语言模型库、 图像模型库等) , 之后模式处理器 180 进行识别。 对类存储器方式, 用户产生的语音 /图像数据作为档案存储在 3D-M阵 歹 IJ170中, 需要査找的语言信号或图像信号作为输入数据 110送至分布式模式处 理器 200, 之后模式处理电路 180进行识别和査找。 在类处理器方式中, 3D-M可 以是 3D-P、 3D-OTP或 3D-MTP, 它存储声学模型库、 语言模型库、 图像模型库 等。 在类存储器方式中, 3D-M最好是 3D-MTP, 它存储语音 /图像档案库。
[0039] 应该了解, 在不远离本发明的精神和范围的前提下, 可以对本发明的形式和细 节进行改动, 这并不妨碍它们应用本发明的精神。 因此, 除了根据附加的权利 要求书的精神, 本发明不应受到任^ J限制。
技术问题
问题的解决方案
发明的有益效果

Claims

权利要求书
[权利要求 1] 一种分布式模式处理器 (200), 其特征在于含有:
一传输第一模式的输入总线 ( 110);
一半导体衬底 (0)及多个存储处理单元 (lOOaa-lOOmn) , 所述多个存储 处理单元与该输入总线 (110)耦合, 每个存储处理单元 (100ij)含有至少 一三维存储(3D-M)阵歹 ij(170)和一模式处理电路 (180), 其中: 所述 3D-M阵歹 ij(170)堆叠在该衬底 (0)上方, 该 3D-M阵歹 ij(170)存储至 少一第二模式;
所述模式处理电路 (180)位于该衬底 (0)中, 该模式处理电路 (180)对该 第一模式和该第二模式进行模式识别或模式匹配; 所述 3D-M阵列 (170)和所述模式处理电路 (180)通过多个接触通道孔 (la V, 3av)实现一大带宽电连接 (160)。
[权利要求 2] 根据权利要求 1所述的分布式模式处理器 (200), 其特征还在于: 所述
3D-M为三维可写存储元 (3D-W) 。
[权利要求 3] 根据权利要求 1所述的分布式模式处理器 (200), 其特征还在于: 所述
3D-M为三维印录存储元 (3D-P) 。
[权利要求 4] 根据权利要求 1所述的分布式模式处理器 (200), 其特征还在于: 该 3D
-M阵列 (170)覆盖至少部分所述模式处理电路 (180)。
[权利要求 5] 根据权利要求 1所述的分布式模式处理器 (200), 其特征还在于: 所述 模式处理电路 (180)被至少两个 3D-M阵列 (170A, 170B)覆盖。
[权利要求 6] 根据权利要求 1所述的分布式模式处理器为 (200)为一大数据处理器, 其特征还在于: 所述第一模式为一检索模式, 所述第二模式为一目标 模式, 所述 3D-M阵列存储至少部分所述大数据, 所述模式处理电路( 180)进行字符串匹配。
[权利要求 7] 根据权利要求 1所述的分布式模式处理器 (200)为一防恶意软件 (ani-m alware) 处理器, 其特征还在于: 所述第一模式为一目标模式, 所述 第二模式为一检索模式, 所述 3D-M阵列 (170)存储至少一病毒标识 ( virus signature) 禾卩 /或网络规范 (network rule
[权利要求 8] 根据权利要求 1所述的分布式模式处理器 (200)为一杀毒处理器, 其特 征还在于: 所述第一模式为一检索模式, 所述第二模式为一目标模式 , 所述 3D-M阵列 (170)存储至少部分用户数据。
[权利要求 9] 根据权利要求 1所述的分布式模式处理器 (200)为一语音 /图像识别处理 器, 其特征还在于: 所述第一模式为一目标模式, 所述第二模式为一 检索模式, 所述 3D-M阵列存储至少部分声学模型库、 语言模型库和 / 或图像模型库。
[权利要求 10] 根据权利要求 1所述的分布式模式处理器为 (200)为一语音 /图像识别 处理器, 其特征还在于: 所述第一模式为一检索模式, 所述第二模式 为一目标模式, 所述 3D-M阵列存储至少部分用户语音 /图像档案库。
PCT/CN2017/075866 2016-03-07 2017-03-07 含有三维存储阵列的分布式模式处理器 WO2017152828A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201610127981 2016-03-07
CN201610127981.5 2016-03-07
CN201710122861.0 2017-03-03
CN201710122861 2017-03-03

Publications (1)

Publication Number Publication Date
WO2017152828A1 true WO2017152828A1 (zh) 2017-09-14

Family

ID=59788958

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/075866 WO2017152828A1 (zh) 2016-03-07 2017-03-07 含有三维存储阵列的分布式模式处理器

Country Status (1)

Country Link
WO (1) WO2017152828A1 (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641685A (zh) * 2004-01-14 2005-07-20 国际商业机器公司 并行模式检测引擎集成电路、相关方法及数据处理系统
CN1770454A (zh) * 2004-11-05 2006-05-10 张国飙 三维存储器系统芯片
US20150214277A1 (en) * 2013-03-20 2015-07-30 HangZhou HaiCun Information Technology Co., Ltd. Small-Grain Three-Dimensional Memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641685A (zh) * 2004-01-14 2005-07-20 国际商业机器公司 并行模式检测引擎集成电路、相关方法及数据处理系统
CN1770454A (zh) * 2004-11-05 2006-05-10 张国飙 三维存储器系统芯片
US20150214277A1 (en) * 2013-03-20 2015-07-30 HangZhou HaiCun Information Technology Co., Ltd. Small-Grain Three-Dimensional Memory

Similar Documents

Publication Publication Date Title
CN111384051B (zh) 兼具语音识别功能的存储器
WO2018034923A1 (en) Non-volatile storage system with compute engine to accelerate big data applications
US20190171815A1 (en) Multi-Level Distributed Pattern Processor
US20200050565A1 (en) Pattern Processor
US20190370465A1 (en) Searchable Storage
US20190220680A1 (en) Distributed Pattern Processor Package
US20180268235A1 (en) Image-Recognition Processor
WO2017152828A1 (zh) 含有三维存储阵列的分布式模式处理器
US20180268900A1 (en) Data Storage with In-situ String-Searching Capabilities Comprising Three-Dimensional Vertical One-Time-Programmable Memory
US20180260644A1 (en) Data Storage with In-situ String-Searching Capabilities Comprising Three-Dimensional Vertical Memory Arrays
US20180330087A1 (en) Image Storage with In-Situ Image-Searching Capabilities
US20180261226A1 (en) Speech-Recognition Processor
US20180260477A1 (en) Audio Storage with In-Situ Audio-Searching Capabilities
US20180189586A1 (en) Storage with In-situ String-Searching Capabilities
US20180270255A1 (en) Processor Comprising Three-Dimensional Vertical One-Time-Programmable Memory for Enhancing Network Security
US20180260344A1 (en) Distributed Pattern Storage-Processing Circuit Comprising Three-Dimensional Vertical Memory Arrays
US20190327247A1 (en) Monolithic Three-Dimensional Pattern Processor Comprising Many Storage-Processing Units
CN111290994B (zh) 分离的三维处理器
CN109145597A (zh) 增强网络安全的处理器
CN111435423A (zh) 双面模式处理器

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

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

Ref document number: 17762514

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17762514

Country of ref document: EP

Kind code of ref document: A1