Processor for Realizing at least Two Categories of Functions
20170329548 · 2017-11-16
Assignee
Inventors
Cpc classification
G06F12/00
PHYSICS
G11C17/10
PHYSICS
G11C5/005
PHYSICS
International classification
Abstract
The present invention discloses a first preferred processor comprising a fixed look-up table circuit (LTC) and a writable LTC. The fixed LTC realizes at least a common function while the writable LTC realizes at least a non-common function. The present invention further discloses a second preferred processor comprising a two-dimensional (2-D) LTC and a three-dimensional (3-D) LTC. The 2-D LTC realizes at least a fast function while the 3-D LTC realizes at least a non-fast function.
Claims
1. A processor for realizing at least two categories of functions, comprising: a fixed look-up table circuit (LTC) comprising a printed memory array for storing at least a first portion of a first look-up table (LUT) related to a first function, wherein said first LUT is written during the manufacturing process of said processor; a writable LTC comprising a writable memory array for storing at least a second portion of a second LUT related to a second function, wherein said second LUT is written after the manufacturing process of said processor is complete.
2. The processor according to claim 1, wherein said printed memory array is a two-dimensional (2-D) printed memory array.
3. The processor according to claim 1, wherein said printed memory array is a three-dimensional (3-D) printed memory array.
4. The processor according to claim 1, wherein said writable memory array is a 2-D writable memory array.
5. The processor according to claim 1, wherein said writable memory array is a 3-D writable memory array.
6. The processor according to claim 1, wherein data are recorded into said printed memory array using a printing method.
7. The processor according to claim 2, wherein said printing method includes photo-lithography, nano-imprint, e-beam lithography, DUV lithography, and laser programming.
8. The processor according to claim 1, wherein data are recorded into said writable memory array using an electrical programming method.
9. The processor according to claim 1, wherein said writable memory array is an OTP memory array.
10. The processor according to claim 1, wherein said writable memory array is a re-programmable memory array.
11. A processor for realizing at least two categories of functions, comprising: a semiconductor substrate; a two-dimensional (2-D) look-up table circuit (LTC) comprising a 2-D memory array for storing at least a third portion of a third look-up table (LUT) related to a third function, wherein said 2-D memory array is formed on said semiconductor substrate; a three-dimensional (3-D) LTC comprising a 3-D memory array for storing at least a fourth portion of a fourth LUT related to a fourth function, wherein said fourth memory array is formed above said semiconductor substrate.
12. The processor according to claim 11, wherein said 2-D LTC is a 2-D fixed LTC, and said 3-D LTC is a 3-D fixed LTC.
13. The processor according to claim 11, wherein said 2-D LTC is a 2-D fixed LTC, and said 3-D LTC is a 3-D writable LTC.
14. The processor according to claim 11, wherein said 2-D LTC is a 2-D writable LTC, and said 3-D LTC is a 3-D fixed LTC.
15. The processor according to claim 11, wherein said 2-D LTC is a 2-D writable LTC, and said 3-D LTC is a 3-D writable LTC.
16. The processor according to claim 11, wherein said 2-D memory array is faster than said 3-D memory array.
17. The processor according to claim 11, wherein said 3-D memory array has a lower storage cost than said 2-D memory array.
18. The processor according to claim 11, wherein said 3-D memory array is stacked above said 2-D memory array.
19. The processor according to claim 11, further comprising an arithmetic logic circuit (ALC) for performing arithmetic operations on the outputs of said 2-D LTC and said 3-D LTC.
20. The processor according to claim 19, wherein said 3-D memory array is stacked above said ALC.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024] 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. The symbol “/” means a relationship of “and” or “or”.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0025] 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.
[0026] The present invention discloses a processor for realizing at least two categories of functions. The preferred processor uses memory-based computation (MBC), which realizes a mathematical function primarily with a memory which stores the look-up table (LUT) related to the mathematical function. Although arithmetic operations are still performed, the MBC only needs to calculate a polynomial to a lower order because it uses a larger LUT than the LBC. For the MBC, the fraction of computation done by the LUT could be more than that by the arithmetic operations.
[0027] The look-up table circuits (LTC) may comprise various types of memory arrays. Based on their programming mechanisms, the memory arrays can be categorized into printed memory array and writable memory array. For the printed memory array, the data can be recorded thereto using a printing method during the manufacturing process. Note that the data are permanently stored and cannot be changed. The printing methods include photo-lithography (i.e. mask-programming to form mask-ROM), nano-imprint, e-beam lithography, DUV lithography, laser programming and other methods. For the writable memory array, the data can be recorded thereto using an electrical programming method. The writable memory includes OTP, SRAM, DRAM, EPROM, EEPROM, and flash memory. Among them, the OTP is one-time programmable, while the SRAM, DRAM, EPROM, EEPROM and flash memory are re-programmable.
[0028] Based on their internal placements, the memory arrays can be categorized into 2-D memory array (or, planar memory array) and 3-D memory array. For the 2-D memory array, all of its memory cells are located on a 2-D plane. They are formed on the surface of a semiconductor substrate, i.e. the transistors and/or diodes of the memory cells are formed on the substrate. For the 3-D memory array, its memory cells are located in a 3-D space. They are vertically stacked, i.e. the transistors and/or diodes of the memory cells are formed above the substrate, not occupying any substrate area. The 2-D memory array includes 2-D printed memory array and 2-D writable memory array, while the 3-D memory array includes 3-D printed memory array (3D-P, referring to U.S. patent application Ser. No. 14/875,716) and 3-D writable memory array (3D-W, also known as 3D-EPROM, referring to U.S. Pat. No. 5,835,396). Examples of the 3D-W include 3D-OTP, 3D-XPoint, and 3D-NAND.
[0029]
[0030] Referring now to
[0031]
[0032] When realizing a mathematical function, combining the LUT with polynomial interpolation can achieve a high precision without using an excessively large LUT. For example, if only LUT (without any polynomial interpolation) is used to realize a single-precision function (32-bit input and 32-bit output), it would have a capacity of 2.sup.32*32=128 Gb. By combining polynomial interpolation, significantly smaller LUTs can be used. In the above embodiment, a single-precision function can be realized using a total of 4 Mb LUT (i.e. 2 Mb for the function values, and 2 Mb for the first-derivative values) in conjunction with a first-order Taylor series. This is significantly less than the LUT-only approach (4 Mb vs. 128 Gb).
[0033]
[0034] Besides elementary functions, the preferred embodiment of
[0035] To increase the re-usability, lower the cost and improve the performance, the preferred processor realizes different categories of mathematical functions by different types of memories. There are two methods to categorize the mathematical functions, each of which is associated with a preferred processor.
[0036] For the first method of categorization, the mathematical functions are categorized into common functions and non-common functions. The common functions are commonly used functions. Examples of common functions include basic algebraic functions and basic transcendental functions. The non-common functions are less commonly used functions. Examples of non-common functions include elementary functions and special functions.
[0037] One example of the first preferred processor 300 comprises a 2-D fixed LTC and a 2-D writable LTC, both of which are formed on the surface of a semiconductor substrate. Among them, the 2-D fixed LTC stores the LUTs related to common functions, while the 2-D writable LTC stores the LUTs related to non-common functions. Another example of the first preferred processor 300 comprises a 3-D fixed LTC and a 3-D writable LTC, both of which comprise vertically stacked memory cells. Among them, the 3-D fixed LTC stores the LUTs related to common functions, while the 3-D writable LTC stores the LUTs related to non-common functions.
[0038] For the second method of categorization, the mathematical functions are categorized into fast functions and non-fast functions. The fast functions are the functions that require fast implementation, whereas the non-fast functions are the functions which do not require fast implementation.
[0039]
[0040] The 3-D memory array offers the benefit of 3-D integration, i.e. the memory cells of the 3-D memory array can be integrated with the 2-D memory array and/or the logic circuit on a single die.
[0041] 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. For example, the preferred processor could be a micro-controller, a central processing unit (CPU), a digital signal processor (DSP), a graphic processing unit (GPU), a network-security processor, an encryption/decryption processor, an encoding/decoding processor, a neural-network processor, or an artificial intelligence (AI) processor. The preferred processors can be found in consumer electronic devices (e.g. personal computers, video game machines, smart phones) as well as engineering and scientific workstations and server machines. The invention, therefore, is not to be limited except in the spirit of the appended claims.