Image Storage with In-Situ Image-Searching Capabilities
20180330087 ยท 2018-11-15
Assignee
Inventors
Cpc classification
G11C5/025
PHYSICS
G11C17/165
PHYSICS
International classification
G06F21/56
PHYSICS
G11C13/00
PHYSICS
G11C17/14
PHYSICS
Abstract
A preferred image storage with in-situ image-searching capabilities comprises a plurality of storage-processing units (SPU), with each SPU comprising at least a three-dimensional memory (3D-M) array vertically stacked above a pattern-processing circuit. The 3D-M array stores at least a portion of image data from an image database. An image pattern from the input is sent to all SPUs, which perform pattern recognition simultaneously.
Claims
1. An image storage with in-situ image-searching capabilities, comprising: an input for transferring at least a portion of an image pattern; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising at least a three-dimensional memory (3D-M) array and a pattern-processing circuit, wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a portion of image data; said pattern-processing circuit is disposed on said substrate and performs pattern recognition between said image pattern and said image data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
2. The image storage according to claim 1, wherein said image data is a portion of an image database.
3. The image storage according to claim 1, wherein said image data is a portion of an image archive.
4. The image storage according to claim 1, wherein said image pattern is an image segment.
5. The image storage according to claim 4, wherein said image segment is an object.
6. The image storage according to claim 4, wherein said image segment is a feature.
7. The image storage according to claim 4, wherein said image segment is an activity.
8. The image storage according to claim 1, wherein said 3D-M is a three-dimensional horizontal memory (3D-M.sub.H).
9. The image storage according to claim 8, wherein said 3D-M.sub.H is a 3D-XPoint.
10. The image storage according to claim 1, wherein said 3D-M is a three-dimensional vertical memory (3D-M.sub.V).
11. The image storage according to claim 10, wherein said 3D-M.sub.V is a 3D-NAND.
12. The image storage according to claim 1, wherein said 3D-M is three-dimensional writable memory (3D-W).
13. The image storage according to claim 12, wherein said 3D-W is three-dimensional one-time-programmable memory (3D-OTP).
14. The image storage according to claim 12, wherein said 3D-W is three-dimensional multiple-time-programmable memory (3D-MTP).
15. The image storage according to claim 1, wherein said 3D-M comprises two-terminal devices.
16. The image storage according to claim 15, wherein said two-terminal devices comprise diodes or diode-like devices.
17. The image storage according to claim 1, wherein said 3D-M comprises three-terminal devices.
18. The image storage according to claim 17, wherein said three-terminal devices comprise transistors or transistor-like devices.
19. The image storage according to claim 1, wherein said SPUs are communicatively coupled with an output.
20. The image storage according to claim 1, wherein said 3D-M array at least partially covers said pattern-processing circuit.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036] It should be noted that all the drawings are schematic and not drawn to scale. Relative dimensions and proportions of parts of the device structures in the figures have been shown exaggerated or reduced in size for the sake of clarity and convenience in the drawings. The same reference symbols are generally used to refer to corresponding or similar features in the different embodiments. Throughout the specification, the symbol / means and/or.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0037] Those of ordinary skills in the art will realize that the following description of the present invention is illustrative only and is not intended to be in any way limiting. Other embodiments of the invention will readily suggest themselves to such skilled persons from an examination of the within disclosure.
[0038] Referring now to
[0039]
[0040] Referring now to
[0041] The data in the 3D-P are recorded using a printing method during manufacturing. These data are fixedly recorded and cannot be changed after manufacturing. The printing methods include photo-lithography, nano-imprint, e-beam lithography, DUV lithography, and laser-programming, etc. A common 3D-P is three-dimensional mask-programmed read-only memory (3D-MPROM), whose data are recorded by photo-lithography.
[0042] On the other hand, the data in the 3D-W are writable (or, electrically programmable). Based on the number of programmings allowed, a 3D-W can be categorized into three-dimensional one-time-programmable memory (3D-OTP) and three-dimensional multiple-time-programmable memory (3D-MTP, including 3-D re-programmable memory). The 3D-OTP has been mass-produced. It can be used to store search patterns (e.g. malware patterns, rule patterns, acoustic models, language models, image models), because search patterns are generally only added but not modified. The 3D-MTP is a general-purpose memory. It can be used to store target patterns (e.g. network packet, computer data, data from a big-data database, audio data, image data). Common 3D-MTP includes 3D-XPoint and 3D-NAND. Other 3D-W's include memristor, resistive random-access memory (RRAM or ReRAM), phase-change memory, programmable metallization cell (PMC), conductive-bridging random-access memory (CBRAM), and the like.
[0043] Based on the direction of address lines, the 3D-M can be further categorized into three-dimensional horizontal memory (3D-M.sub.H) and three-dimensional vertical memory (3D-M.sub.V). In a 3D-M.sub.H, a horizontal memory level is first formed by a plurality of memory cells, before multiple memory levels are vertically stacked on the substrate to form a 3D-M structure. One well-known example of the 3D-M.sub.H is 3D-XPoint. On the other hand, in a 3D-M.sub.V, a vertical memory string is first formed by a plurality of memory cells, before multiple memory strings are horizontally disposed on the substrate to form a 3D-M structure. One well-known example of the 3D-M.sub.V is 3D-NAND. In other words, all address lines in a 3D-M.sub.H array are horizontal, whereas at least one set of address lines in a 3D-M.sub.V array are vertical. As used herein, horizontal and vertical are the directions with respect to the surface of the substrate 0.
[0044] The preferred SPU 100ij of
[0045] The 3D-M cell 13aa in
[0046] The preferred SPU 100ij of
[0047] The preferred 3D-M.sub.V array 170 in
[0048] Located at the intersections of the word lines 6a-6h and the bit line 5l, the memory cells 8al-8hl comprise two-terminal devices such as diodes or diode-like devices. Because the address lines 5l-5n are vertical, these diodes or diode-like devices are vertical diodes or diode-like devices. They can minimize interference between memory cells. The diode action can be enhanced if the address lines 6a-6h and the address lines 5l-5n are oppositely doped (to form a semiconductor diode), or, one address line comprises metallic materials while the other address line comprises semiconductor materials (to form a Schottky diode). Alternatively, the sidewalls of the holes 9l-9n can be further coated with a diode layer (also known as a selection layer, a steering layer, a quasi-conductive layer) to enhance the diode action (not shown in this figure). It should be apparent to those skilled in the art that other variations of diodes or diode-like devices can be used in the 3D-M.sub.V array 170.
[0049] The preferred 3D-M.sub.V array 170 in
[0050] Located at the intersections of the word lines 6a-6h and the bit line 5x, the memory cells 8ax-8hx comprise three-terminal devices such as transistors or transistor-like devices. The horizontal address lines 6a-6h act as the transistor gates, while the vertical address lines 5x-5z act as the transistor channels. Because the channels 5x-5z are vertical, these transistors or transistor-like devices are vertical transistors or transistor-like devices. When all transistors in the memory cells 8ax-8hx on a vertical memory string 16X are turned on, the vertical address line 5x conducts current; otherwise, the vertical address line 5x blocks current. It should be apparent to those skilled in the art that other variations of vertical transistors or transistor-like devices can be used in the 3D-M.sub.V array 170.
[0051] Referring now to
[0052] Referring now to
[0053] In this preferred embodiment, because it is bound by four peripheral circuits, the area of the pattern-processing circuit 180 must be smaller than that of the 3D-M array 170. As a result, the pattern-processing circuit 180 has limited functions. It is more suitable for simple pattern processing (e.g. string match, or code match). Apparently, complex pattern processing (e.g. speech recognition, image recognition) requires a larger area to facilitate the layout of the pattern-processing circuit 180.
[0054] The embodiment of
[0055] The embodiment of
[0056] It should be noted that, in some embodiments of the present invention, the pattern-processing circuit 180 just performs partial pattern processing. For example, the pattern-processing circuit 180 only performs a simple pattern processing (e.g. string match, or code match). After being filtered by the simple pattern processing, the remaining patterns are sent to an external processor (e.g. CPU, GPU) to complete the full pattern processing. Because a majority of patterns are filtered by the simple pattern processing, the patterns output from the pattern-processing circuit 180 are far fewer than the original patterns. This can alleviate the bandwidth requirement on the output 120.
[0057] The preferred pattern storage-processing circuits 200 can be either processor-like or storage-like. The processor-like pattern storage-processing circuit is referred to as a pattern processor with embedded pattern storage, whereas the storage-like pattern storage-processing circuit is referred to as a pattern storage with in-situ pattern-processing capabilities.
[0058] [A] Pattern Processor with Embedded Pattern Storage
[0059] The preferred pattern processor with embedded pattern storage acts like a processor. It checks the input data (i.e. the target pattern) against a search-pattern database. To be more specific, the 3D-M array 170 in the SPU 100ij stores at least a search pattern (e.g. a malware pattern, a rule pattern, an acoustic/language model, or an image model) from a search-pattern database (e.g. a malware database, a rule database, an acoustic/language model database, or an image model database), while the input 110 includes at least a target pattern (e.g. network packet, computer data, data in a big-data database, audio data, or image data). In the meantime, the pattern-processing circuit 180 performs pattern matching or pattern recognition between the search pattern and the target pattern. With massive parallelism and fast ISP-connections, the preferred pattern processor with embedded pattern storage can achieve a fast speed and a better efficiency.
[0060] Accordingly, the present invention discloses a pattern processor with embedded pattern storage, comprising: an input for transferring a target pattern; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising at least a three-dimensional memory (3D-M) array and a pattern-processing circuit, wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a search pattern; said pattern-processing circuit is disposed on said substrate and performs pattern matching or pattern recognition between said search pattern and said target pattern; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0061] [B] Pattern Storage with In-Situ Pattern-Processing Capabilities
[0062] The preferred pattern storage with in-situ pattern-processing capabilities acts like a storage. Its primary purpose is to permanently store target patterns (e.g. computer data, big data, audio data, or image data), with a secondary purpose of searching the target patterns for a search pattern (e.g. a malware pattern, a rule pattern, an acoustic/language model, or an image model). To be more specific, the 3D-M array 170 in the SPU 100ij permanently stores at least a target pattern, while the input 110 include at least a search pattern. In the meantime, the pattern-processing circuit 180 performs pattern matching or pattern recognition between the search pattern and the target pattern.
[0063] Just like the flash memory, a plurality of pattern storage dice with in-situ pattern-processing capabilities can be packaged into a storage card (e.g. an SD card, a TF card) or a solid-state drive (SSD). They can be used to store mass user data (e.g. in a user-data archive). As each SPU 100ij in each storage die 200 has its own pattern-processing circuit 180, the pattern-processing circuit 180 only needs to process the user data stored in the 3D-M array 170 of the same SPU 100ij. As a result, no matter how large the capacity of a storage card (or, a solid-state drive) is, the processing time for the whole storage card (or, the whole solid-state drive) is similar to that for a single SPU 100ij. This is much faster and more efficient than a conventional storage.
[0064] Another benefit of the preferred pattern storage is its low cost. Although the peripheral circuits of the 3D-M arrays 170 are formed on the substrate 0, they only occupy a small substrate area and most substrate area can be used to form the pattern-processing circuit 180 (
[0065] Accordingly, the present invention discloses a pattern storage with in-situ pattern-processing capabilities, comprising: an input for transferring a search pattern; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising at least a three-dimensional memory (3D-M) array and a pattern-processing circuit, wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a target pattern; said pattern-processing circuit is disposed on said substrate and performs pattern matching or pattern recognition between said search pattern and said target pattern; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0066] Applications
[0067] In the following paragraphs, several applications of the present invention are disclosed. The fields of applications are information security, big-data analytics, speech recognition and image recognition. Examples of the applications include: A) Network-security processor; B) Computer-security processor; C) Computer storage with in-situ anti-malware capabilities; D) Data storage with in-situ string-searching capabilities; E) Speech-recognition processor; F) Audio storage with in-situ audio-searching capabilities; G) Image-recognition processor; H) Image storage with in-situ image-searching capabilities. The configurations of the preferred SPUs for different applications are listed in
[0068] A) Network-Security Processor
[0069] With the proliferation of the Internet, network security becomes great concerns. Network security does as its title explains: it secures the network, as well as protecting and overseeing operations being done. Network security can be generally categorized into rule enforcement and anti-malware, although there is considerable overlap between the two.
[0070] Rules (also known as network rules, security rules, etc.) include policies and practices adopted to prevent and monitor unauthorized access, misuse, modification, or denial of a computer network and network-accessible resources. During rule enforcement, a network packet is compared against rule patterns in a rule database (also known as rule pattern database, etc.).
[0071] Malware, short for malicious software, is any software used to disrupt computer operation, gather sensitive information, or gain access to private computer systems. During the anti-malware operation, a network packet is compared against malware patterns (also known as malware signatures, virus patterns, virus signatures, etc.) in a malware database. Unless explicitly stated, the present invention does not differentiate malware and virus. They are used interchangeably.
[0072] The basic operations in rule enforcement and anti-malware are pattern matching and/or pattern recognition. Nowadays, both rule database and malware database have become large: the number of network rules has reached tens of thousands, soon to hundreds of thousands; whereas, the number of malwares has reached hundreds of thousands, soon to millions. Pattern processing for such large rule/malware database requires not only a powerful processor, but also a fast rule/malware storage. Unfortunately, a conventional network-security system cannot meet these requirements. Because it has a limited number (tens to hundreds) of cores, a typical processor (CPU, GPU, etc.) can simultaneously perform only a limited number (tens to hundreds) of pattern processing. Furthermore, because the processor is physically separated from the rule/malware storage in a von Neumann architecture, the memory wall between them would cause a long delay when the processor fetches rule/malware patterns from the rule/malware storage. As a result, the performance of the conventional network-security system is poor.
[0073] To address this issue, the present invention discloses a network-security processor for enhancing network security. It is installed in a network, either as a standalone processor, or embedded in a network processor or other network appliances. The preferred network-security processor takes the form of a pattern processor with embedded pattern storage. To be more specific, the 3D-M array 170 permanently stores at least a rule/malware pattern from a rule/malware database, while the input 110 includes at least an incoming network packet. In the meantime, the pattern-processing circuit 180 performs pattern matching or pattern recognition between the rule/malware pattern and the network packet. With massive parallelism and fast ISP-connections, the preferred network-security processor can perform rule enforcement and anti-malware operations fast and efficiently.
[0074] Accordingly, the present invention discloses a network-security processor, comprising: an input for transferring at least a network packet; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising at least a three-dimensional memory (3D-M) array and a pattern-processing circuit, wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a rule/malware pattern; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern matching or pattern processing between said rule/malware pattern and said network packet; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0075] B) Computer-Security Processor
[0076] Computer security is the protection of computer systems from the theft or damage to their software or information, as well as from disruption or misdirection of the services they provide. As used herein, a computer is any device with a processor and a memory. Such devices can range from non-networked standalone devices as simple as calculators, to networked computing devices such as smart-phones and tiny devices as part of the Internet of Things (IoT).
[0077] An important aspect of computer security is anti-malware. During the anti-malware operation, at least a portion of the data stored in the computer (e.g. a document, a file, a message, a packet or stream of data, or the like) is scanned against the malware patterns from a malware database. Because the conventional processor has a limited number of cores and the malware database (which contains hundreds of thousands of malware patterns) is stored away from the processor, the performance of the conventional computer-security system is poor.
[0078] To address this issue, the present invention discloses a computer-security processor for enhancing computer security. It is installed in a computer, either as a standalone processor, or embedded in a central processing unit (CPU) or other computer components. The preferred computer-security processor takes the form of a pattern processor with embedded pattern storage. To be more specific, the 3D-M array 170 permanently stores at least a malware pattern from a malware database, while the input 110 includes at least a portion of computer data. In the meantime, the pattern-processing circuit 180 performs pattern matching or pattern recognition between the malware pattern and the computer data. With massive parallelism and fast ISP-connections, the preferred computer-security processor can perform anti-malware operations fast and efficiently.
[0079] Accordingly, the present invention discloses a computer-security processor, comprising: an input for transferring at least a portion of computer data; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising at least a three-dimensional memory (3D-M) array and a pattern-processing circuit, wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a malware pattern; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern matching or pattern processing between said malware pattern and said computer data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0080] C) Computer Storage with In-Situ Anti-Malware Capabilities
[0081] The conventional computer-security system has an issue whenever a new malware is discovered. Although the malware database can be instantly updated to ensure the integrity of future data (i.e. the data to be stored), the integrity of existing data (i.e. data stored before the discovery of the new malware) cannot be guaranteed. This is because the existing data might have been infected by this newly-discovered malware. To ensure their integrity, all existing data need to be screened against the newly-discovered malwares. This is challenging for the conventional computer, whose storage (e.g. hard-disk drive, solid-state drive) is dumb and does not have any anti-malware capabilities per se. When a new malware is discovered, all existing data need to be read out from the storage and sent to a processor for malware screening. It takes hours to read out TBs of data and process them. Thus, the conventional computer-security system cannot efficiently screen the existing data when a new malware is discovered.
[0082] To address this issue, the present invention discloses a computer storage with in-situ anti-malware capabilities. It is primarily a computer storage, with anti-malware as its secondary function. Compared with prior art, the preferred computer storage is smarter and has in-situ anti-malware capabilities. The preferred computer storage takes the form of a pattern storage with in-situ pattern-processing capabilities. To be more specific, the 3D-M array 170 permanently stores at least a portion of computer data, while the input 110 includes at least a malware pattern from a malware database. In the meantime, the pattern-processing circuit 180 performs pattern matching or pattern recognition between the malware pattern and selected computer data. With massive parallelism and fast ISP-connections, the preferred computer storage can perform anti-malware operations on its data fast and efficiently.
[0083] Accordingly, the present invention discloses a computer storage with in-situ anti-malware capabilities, comprising: an input for transferring at least a malware pattern; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising a pattern-processing circuit and at least a three-dimensional memory (3D-M) array; wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a portion of computer data; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern matching or pattern processing between said malware pattern and said computer data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0084] D) Data Storage with In-Situ String-Searching Capabilities
[0085] Big data is a term for data sets that are so large or complex that conventional data processing methods are inadequate to deal with them. Big data philosophy encompasses unstructured, semi-structured and structured data, however the main focus is on unstructured and semi-structure data. With high volume, high velocity and high variety, big-data analytics demand cost-effective and innovative forms of information processing.
[0086] An important aspect of big-data analytics is string searching. The basic string-searching operations are pattern matching and/or pattern recognition between a search string (or, a key word) and a data from a big-data database. Big data has become big: its size ranges from a few dozen of TBs to many PBs and is still growing. This makes it difficult to use a conventional computer to perform big-data analytics. Based on the von Neumann architecture, the storage and the processor of the conventional computer are separated. Because a conventional storage is dumb, i.e. without any data-analyzing capabilities per se, the data to be analyzed have to be read out from the storage first, which could take hours. Consequently, the von Neumann architecture is not suitable for big-data analytics. At present, big-data analytics generally requires tens, hundreds, or even thousands of servers.
[0087] To address this issue, the present invention discloses a data storage with in-situ string-searching capabilities. It is primarily a data storage, with string searching as its secondary function. Compared with prior art, the preferred data storage is smarter and has an in-situ string-searching capabilities. The preferred data storage takes the form of a pattern storage with in-situ pattern-processing capabilities. To be more specific, the 3D-M array 170 permanently stores at least a portion of big data, while the input 110 includes at least a search string. In the meantime, the pattern-processing circuit 180 performs pattern matching or pattern recognition between the search string and selected data. With massive parallelism and fast ISP-connections, the preferred data storage can perform string-searching operations on its data fast and efficiently.
[0088] Accordingly, the present invention discloses a data storage with in-situ string-searching capabilities, comprising: an input for transferring at least a search string; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising a pattern-processing circuit and at least a three-dimensional memory (3D-M) array; wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a portion of big data; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern matching or pattern processing between said search string and selected data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0089] E) Speech-Recognition Processor
[0090] Speech recognition enables the recognition and translation of spoken language. It is primarily implemented through pattern recognition between an acoustic/language model and an audio data. The acoustic/language models collectively form an acoustic/language model database. Because the conventional processor has a limited number of cores and the acoustic/language model database is stored away from the processor, the performance of the conventional speech-recognition system is poor.
[0091] To address this issue, the present invention discloses a speech-recognition processor. It takes the form of a pattern processor with embedded pattern storage. To be more specific, the 3D-M array 170 store at least a portion of an acoustic/language model from an acoustic/language model database, while the input 110 include at least a portion of audio data acquired by at least an audio sensor. In the meantime, the pattern-processing circuit 180 performs pattern recognition between the acoustic/language model and the audio data.
[0092] Accordingly, the present invention discloses a speech-recognition processor, comprising: an input for transferring at least a portion of audio data; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising at least a three-dimensional memory (3D-M) array and a pattern-processing circuit, wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a portion of an acoustic/language model; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern recognition between said acoustic/language model and said audio data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0093] F) Audio Storage with In-Situ Audio-Searching Capabilities
[0094] It is highly desired to search an audio database for an audio pattern. The audio database includes a plurality of audio files. When it is to be stored permanently, the audio database becomes an audio archive. On the other hand, the audio pattern includes an audio segment such as a speech segment or a music segment. The audio pattern could also include an acoustic model or a language model. It is challenging to do audio-search for a conventional computer because of the von Neumann architecture.
[0095] To address this issue, the present invention discloses an audio storage with in-situ audio-searching capabilities. It takes the form of a pattern storage with in-situ pattern-processing capabilities. To be more specific, the 3D-M array 170 permanently stores at least a portion of audio data, while the input 110 includes at least a portion of an audio pattern. In the meantime, the pattern-processing circuit 180 performs pattern recognition between the audio pattern and the audio data. With massive parallelism and fast ISP-connections, the preferred audio storage can perform audio-searching operations on its audio data fast and efficiently.
[0096] Accordingly, the present invention discloses an audio storage with in-situ audio-searching capabilities, comprising: an input for transferring at least a portion of an audio pattern; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising a pattern-processing circuit and at least a three-dimensional memory (3D-M) array; wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a portion of audio data; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern recognition between said audio pattern and said audio data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0097] G) Image-Recognition Processor
[0098] Image (e.g. still images, moving images, 3-D images) recognition (also known as computer vision, machine vision, image processing) determines if an image contains a specific object, feature, or activity. It is primarily implemented through pattern recognition between an image model and an image data. The image models collectively form an image model database. Because the conventional processor has a limited number of cores and the image model database is stored away from the processor, the performance of the conventional image-recognition system is poor.
[0099] To address this issue, the present invention discloses an image-recognition processor. It takes the form of a pattern processor with embedded pattern storage. To be more specific, the 3D-M array 170 store at least a portion of an image model from an image model database, while the input 110 include at least a portion of image data acquired by at least an image sensor. In the meantime, the pattern-processing circuit 180 performs pattern recognition between the image model and the image data.
[0100] Accordingly, the present invention discloses an image-recognition processor, comprising: an input for transferring at least a portion of image data; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising at least a three-dimensional memory (3D-M) array and a pattern-processing circuit, wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a portion of an image model; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern recognition between said image model and said image data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0101] H) Image Storage with In-Situ Image-Searching Capabilities.
[0102] It is highly desired to search an image database for an image pattern. The image database includes a plurality of image files. When it is to be stored permanently, the image database becomes an image archive. On the other hand, the image pattern includes an image segment such as an object, a feature or an activity. The image pattern could also include an image model. It is challenging to do image-search for a conventional computer because of the von Neumann architecture.
[0103] To address this issue, the present invention discloses an image storage with in-situ image-searching capabilities. It takes the form of a pattern storage with in-situ pattern-processing capabilities. To be more specific, the 3D-M array 170 permanently stores at least a portion of image data from an image database, while the input 110 includes at least a portion of an image pattern. In the meantime, the pattern-processing circuit 180 performs pattern recognition between the image pattern and the image data. With massive parallelism and fast ISP-connections, the preferred image storage can perform image-searching operations on its image data fast and efficiently.
[0104] Accordingly, the present invention discloses an image storage with in-situ image-searching capabilities, comprising: an input for transferring at least a portion of an image pattern; a semiconductor substrate having transistors thereon; a plurality of storage-processing units (SPU) coupled with said input, each of said SPUs comprising a pattern-processing circuit and at least a three-dimensional memory (3D-M) array; wherein said 3D-M array is stacked above said pattern-processing circuit and stores at least a portion of image data; said pattern-processing circuit is disposed on said semiconductor substrate and performs pattern recognition between said image pattern and said image data; said 3D-M array and said pattern-processing circuit are communicatively coupled by a plurality of contact vias.
[0105] While illustrative embodiments have been shown and described, it would be apparent to those skilled in the art that many more modifications than that have been mentioned above are possible without departing from the inventive concepts set forth therein. The invention, therefore, is not to be limited except in the spirit of the appended claims.