Analog compute-in-memory technology with multiply-accumulate array column redundancy and repair

WO2025241058A1PCT designated stage Publication Date: 2025-11-27INTEL CORP +5
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/094193
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-20
Publication Date
2025-11-27

AI Technical Summary

Technical Problem

Analog compute-in-memory (CiM) architectures face yield loss due to increased process variability in advanced process technology nodes, leading to single-point failures in MAC arrays, which are tightly coupled with SRAM cells, reducing efficiency and throughput.

Method used

Implementing column redundancy in MAC units with an additional capacitor array recombination scheme and multiplexers to bypass defective columns, allowing redundant columns to replace defective ones, thus enhancing yield and reducing throughput loss.

Benefits of technology

Significantly improves yield and reduces throughput loss by enabling flexible column repair with minimal circuit overhead, maintaining high efficiency and performance in analog CiM arrays.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024094193_27112025_PF_FP_ABST
    Figure CN2024094193_27112025_PF_FP_ABST
Patent Text Reader

Abstract

Systems, apparatuses and methods may provide for technology that includes a capacitor array to conduct multiply-accumulate (MAC) operations on first analog signals and multibit weight data, the capacitor array further to output second analog signals based on the MAC operations, a plurality of multiplexers coupled to the capacitor array, and a memory array including a plurality of columns coupled to the plurality of multiplexers, the memory array to store the multibit weight data, wherein one or more of the plurality of columns is redundant, and wherein the capacitor array is external to the memory array.
Need to check novelty before this filing date? Find Prior Art

Description

ANALOG COMPUTE-IN-MEMORY TECHNOLOGY WITH MULTIPLY-ACCUMULATE ARRAY COLUMN REDUNDANCY AND REPAIRBACKGROUND

[0001] In recent years, compute-in-memory (CiM) architectures have become one of the leading hardware candidates for accelerating the execution and training of convolutional neural network (CNN) and deep neural network (DNN) applications. CiM does so by directly addressing a “memory wall” in which limited bandwidth between memory and compute hardware in modern architectures causes bottlenecks in the system (e.g., leading to poor computational and energy efficiency) . The development of CiM architectures, however, is challenging to realize as a purely digital system, since the conventional multiply-accumulate (MAC) operation units are too large to fit into high-density Manhattan style memory arrays.

[0002] Analog-based CiM methods may be used to improve efficiency and throughput in-memory MAC computations. Among these analog CiM solutions, charge-domain MAC computation schemes (e.g., that use a capacitor array to conduct multiplication and summation operations) have been shown to provide significant advantages over voltage, current, and time-domain methods in terms of linearity and process scalability.

[0003] Analog CiM techniques, however, still suffer from a loss in yield due to increased process variability in advanced process technology nodes. In a CiM architecture designed for high computation density, the MAC array is tightly coupled with the SRAM array, both logically and physically, in a way such that the entire or a part of MAC computation unit is directly overlaying on top of the static random access memory (SRAM) cells of the memory array. Due to this tight and fixed coupling between MAC unit and SRAM cells, once either the MAC unit or its associated SRAM cell (e.g., usually for local weight storage) fails, the entire MAC array fails. The result may be a single-point failure situation for MAC computation in CiM schemes. With increasing neural network sizes and larger hardware sizes and parallelism of MAC arrays, the yield for large scale MAC arrays may be relatively low.BRIEF DESCRIPTION OF THE DRAWINGS

[0004] The various advantages of the embodiments will become apparent to one skilled in the art by reading the following specification and appended claims, and by referencing the following drawings, in which:

[0005] FIG. 1 is a comparative illustration of an example of near-memory and in-memory computing solutions;

[0006] FIG. 2A is a comparative schematic diagram of an example of an analog compute-in-memory (CiM) array and C-2C ladder without column redundancy and an analog CiM array and C-2C ladder with column redundancy according to an embodiment;

[0007] FIG. 2B is a comparative schematic diagram of an example of a CiM array and C-2C ladder with single column redundancy prior to a defect occurring and the CiM array and C-2C ladder with single column redundancy after a defect is repaired according to an embodiment;

[0008] FIG. 3 is a comparative schematic diagram of an example of an analog CiM array and capacitor array without column redundancy and an analog CiM array and capacitor array with column redundancy according to an embodiment;

[0009] FIG. 4 is a schematic diagram of an example of a CiM array with double column redundancy according to an embodiment;

[0010] FIG. 5 is a schematic diagram of an example of an analog multiplexer (MUX) according to an embodiment;

[0011] FIG. 6 is a flowchart of an example of a method of operating a performance-enhanced computing system according to an embodiment;

[0012] FIG. 7 is a block diagram of an example of a performance-enhanced computing system according to an embodiment; and

[0013] FIG. 8 is an illustration of an example of a semiconductor package apparatus according to an embodiment.DETAILED DESCRIPTION

[0014] Redundant rows and columns within large static random access memory (SRAM) memory arrays may be used to boost memory yield with relatively little overhead. Due to the tightly coupled nature of compute and memory in compute-in-memory (CiM) systems, however, traditional memory repair techniques cannot be applied to solve the yield issue of CiM MAC arrays. Instead, conventional CiM MAC array solutions may be treated as a yield / performance issue in the compute data path, leading to reduced area, energy, and cost efficiency.

[0015] Recent developments have provided an analog CiM row repairment scheme that is based on disconnecting digital to analog converter (DAC) unit that is associated with defective memory cells and / or MAC units. The analog CiM column repair technology described herein serves as a complementary solution to the previously proposed row repair scheme. As compared  to the row repair scheme, which may involve the addition of a switch in each MAC unit to enable the DAC disconnect scheme, the column repair technology described herein has almost zero circuit overhead in analog MAC unit circuit design, while still providing the reconfiguration capability on MAC operations for column repair. Accordingly, the MAC unit circuit density and MAC operation density are maximized by the technology described herein.

[0016] FIG. 1 shows a first compute architecture 10 in which a central processing unit (CPU) and / or digital signal processor (DSP) includes a single arithmetic logic unit (ALU) coupled to N memory arrays. Data movement occurs N-1 times in the first compute architecture 10. A second compute architecture 12 includes a graphics processing unit (GPU) and / or tensor processing unit (TPU) having P ALUs and N memory arrays. Data movement occurs N / P-1 times in the second compute architecture 12. A third compute architecture 14 includes in-memory hardware having Q ALUs and N memory arrays. Data movement occurs N / Q-1 times in the third compute architecture 14. A fourth compute architecture 16 includes in-memory cells having N analog memory compute (AMC) units. Data movement occurs zero times in the fourth compute architecture 16.

[0017] Thus, embodiments include a repair scheme for CiM MAC arrays such as the fourth compute architecture 16, wherein the repair scheme is fundamentally practical for mass production and commercial deployment. For example, the technology described herein provides a scheme that can provide column redundancy in MAC unit arrays, such that once the column of one defective MAC unit (e.g., including an SRAM cell, CiM control logic and / or unit capacitor) is identified, that column can be deactivated from MAC operation, while the redundant column will function as a replacement. In this way, the yield can be greatly improved for an analog CiM array for large-scale AI compute applications.

[0018] More particularly, the technology described herein provides redundant columns for MAC units such that in the case of defective MAC units, those redundant columns can be used to bypass the defective columns (e.g., solving yield issue for analog CiM macros) . This replacement scheme is facilitated by a capacitor array recombination scheme in which a multi-bit recombination capacitor array (e.g., capacitor recombination network and / or C-2C ladder) is moved outside (e.g., external to) an array of MAC units. An additional analog multiplexer (MUX) is added between the MAC unit array and capacitor array to provide flexibility in multibit reconfiguration when repairing the defective analog CiM macro.

[0019] As already noted, analog in-memory computing can provide superior performance advantages as opposed to other competing in-memory computing solutions. The technology  described herein therefore addresses a significant disadvantage of analog CiM when compared to existing digital accelerators –yield loss due to increased complementary metal oxide semiconductor (CMOS) process technology manufacturing variability.

[0020] When the technology described herein is in use, an M-by-N-bit CiM macro would actually include (M + RCOL) -by-N memory cells, where RCOL is the number of redundant columns. This solution includes redundant restructures used for yield improvement within the design. Additionally, the operation and programing model of the CiM column repair may specify the scheme used for column and row repair of SRAM memory macros (e.g., either custom designs or from a memory compiler) , as well as the register / fuse settings to enable / disable / control the repair operation.

[0021] Turning now to FIG. 2A, an analog CiM array 20 without column redundancy is shown. More particularly, the analog CiM array 20 includes an out-of-SRAM capacitor array 22 (e.g., C-2C ladder) to perform multibit recombination. The analog CiM array 20 does not have any column redundancy built in, since all partial output activation (pOA) columns 24 (e.g., sixteen pOA lines) are connected to the capacitor array 22 for multibit recombination to complete multibit analog MAC operations. In the illustrated example, two sets of 8-bit 64-dimentional (64-D) MAC operations are shown. Since there are no redundant units in this design, any defective MAC unit, including an SRAM bit cell, CiM control logic and / or unit capacitor failures, would result in a failure for the entire MAC operation.

[0022] By contrast, an enhanced analog CiM array 30 as described herein includes added column redundancy. Although a single-column redundancy is added in the illustrated example, more redundant columns can be added. The primary changes from the analog CiM array 20 to the enhanced analog CiM array 30 are as follows:

[0023] - An additional column 32 is added. In general, each pOA line performs summation and averaging for a number of partial products (e.g., sixty-four partial products in the illustrated example) between 1-bit weight and analog input activation (IA) signals 34. In this example, the enhanced analog CiM array 30 for two sets of 8-bit MAC involves sixteen pOA columns 24, with the redundant additional column 32 ( “pOA17” ) , resulting in a total of seventeen pOA lines ( “pOA1, …, pOA17” ) .

[0024] - An array of analog 2: 1 multiplexers 36 (e.g., MUX cells “M1” to “M16” ) are added between the MAC unit array and the capacitor array 22 in the enhanced analog CiM array 30. The multiplexers 36 are controlled by signals of S1 to S16. Specifically, MUX Mi is connected to pOAi and pOAi+1, and when the control signal Si is 0, MUX Mi selects (e.g., passes through)  pOAi; otherwise, MUX Mi passes through pOAi+1. The sixteen outputs of the multiplexers 36 are connected to the capacitor array 22 in the same way as the pOA columns 24 are connected to the capacitor array 22 in the analog CiM array 20.

[0025] FIG. 2B shows an initial instance 40 of the proposed analog CiM array with single-column redundancy prior to a defect (e.g., when there is no defective MAC unit in the entire array) . In the illustrated example, by default M1 to M16 passes through pOA1 to pOA16, respectively, with the redundant additional column 32 (pOA17) not activated in the MAC computation (e.g., active connections are shown in solid lines whereas inactive connections are shown in dashed lines) .

[0026] A subsequent instance 50 of the proposed analog CiM array shows an example when there is one defective MAC unit 52 identified (e.g., defect in SRAM cell, MAC unit control circuit or unit capacitor) that is connected to pOA9. Accordingly, the entire pOA9 line is bypassed for C-2C multibit recombination and the additional column 32 (pOA17) is deployed for replacement. To facilitate the repair, M1 to M8 pass through pOA1 to pOA8, meanwhile M9 to M16 pass through pOA10 to pOA17. With this configuration, the output activation (OA) signals, OA1 and OA2, still represent MAC computation results from two sets of 8-bit 64-D MAC operations, and the computation now only comes from defect-free MAC units. Meanwhile, the defect associated with pOA9 is bypassed (e.g., thereby completing the repairment of the CiM array) . Similar to column repair in a traditional SRAM array, the storage is made aware of the defective cells. Therefore, the weight data is only stored in SRAM cells that are associated with the pOA1-8 and pOA10-17 lines and all SRAM cells that are associated with the pOA9 line are not used. In one example, this storage solution is conducted via fuse bits and override logic to permanently remap the bypassed column. Accordingly, there is no data or signaling change on the main SRAM interfaces (e.g., address, data, read / write (R / W) ) from the perspective of the user.

[0027] Turning now to FIG. 3, an analog CiM array 21 without column redundancy is shown. More particularly, the analog CiM array 21 includes an out-of-SRAM capacitor array 23 (e.g., not a C-2C ladder) to perform multibit recombination. The analog CiM array 21 does not have any column redundancy built in, since all pOA columns 25 (e.g., sixteen pOA lines) are connected to the capacitor array 23 for multibit recombination to complete multibit analog MAC operations. In the illustrated example, two sets of 8-bit 64-D MAC operations are shown. Since there are no redundant units in this design, any defective MAC unit, including an SRAM  bit cell, CiM control logic and / or unit capacitor failures, would result in a failure for the entire MAC operation.

[0028] By contrast, an enhanced analog CiM array 31 as described herein includes added column redundancy. Although a single-column redundancy is added in the illustrated example, more redundant columns can be added. Again, the primary changes from the analog CiM array 21 to the enhanced analog CiM array 31 are as follows:

[0029] - An additional column 33 is added. In general, each pOA line performs summation and averaging for a number of partial products (e.g., sixty-four partial products in the illustrated example) between 1-bit weight and analog input activation (IA) signals 35. In this example, the enhanced analog CiM array 31 for two sets of 8-bit MAC involves sixteen pOA columns 25, with the redundant additional column 33 ( “pOA17” ) , resulting in a total of seventeen pOA lines ( “pOA1, …, pOA17” ) .

[0030] - An array of analog 2: 1 multiplexers 37 (e.g., MUX cells “M1” to “M16” ) are added between the MAC unit array and the capacitor array 23 in the enhanced analog CiM array 31. The multiplexers 37 are controlled by signals of S1 to S16. Specifically, MUX Mi is connected to pOAi and pOAi+1, and when the control signal Si is 0, MUX Mi selects (e.g., passes through) pOAi; otherwise, MUX Mi passes through pOAi+1. The sixteen outputs of the multiplexers 37 are connected to the capacitor array 23 in the same way as the pOA columns 25 are connected to the capacitor array 23 in the analog CiM array 21.

[0031] FIG. 4 shows an enhanced analog CiM array 60 with double column redundancy. The major difference in this example is that two redundant columns 62 (e.g., pOA17 and pOA18) are added and all sixteen analog MUXes 64 are configured as 3: 1 MUXes from 2: 1 MUXes. Thus, when there is no defective unit, M1 to M16 pass through pOA1 to pOA16, respectively. If there is one defect unit that is associated with pOAj line, then M1 to Mj-1 passes through pOA1 to pOAj-1, while Mj to M16 passes through pOAj+1 to pOA17, with pOAj being bypassed and only one redundant line pOA17 being used. If a second defect unit is identified and is associated with pOAk line, where k>j, then the configuration for M1 to Mj-1 is to pass through pOA1 to pOAj-1, Mj to Mk-2 to pass through pOAj+1 to pOAk-1, and Mk-1 to M16 to pass through pOAk+1 to pOA18. Accordingly, both pOAj and pOAk are bypassed with both pOA17 and pOA18 being used for repairment. The number of redundant columns 62 can essentially be any number. In general, if N redundant columns 62 are provided, then N pOA lines are added. While the number of analog MUXes 64 remains the same regardless of the number of redundant columns 62, the each MUX would be converted to an (N+1) : 1 MUX.

[0032] FIG. 5 shows an analog 2: 1 MUX 70 implementation, wherein the MUX 70 takes two analog inputs, pOAin1 and pOAin2. At any given time, there is only one pass gate switch that is turned on for passing through its corresponding analog input to the output (pOAout) of the MUX 70. An (N+1) : 1 MUX would be similar, except the MUX takes N+1 analog inputs and it is controlled by N+1 pass gate switches, while only one switch is turned on for passing through the analog input to the output.

[0033] The technology described herein can improve throughput substantially, especially with a relatively low SRAM bit cell yield in advanced process technology nodes. For example, for SRAM bit cell yield of 99.999%, the throughput loss for an analog CiM array can be as relatively high (e.g., 27%) , whereas with double-column redundancy as described herein, the throughput loss can be reduced significantly (e.g., to only 0.3%) .

[0034] FIG. 6 shows a method 80 of operating a performance-enhanced computing system. The method 80 may be implemented in one or more modules as a set of logic instructions stored in a machine-or computer-readable storage medium such as random access memory (RAM) , read only memory (ROM) , programmable ROM (PROM) , firmware, flash memory, etc., in hardware, or any combination thereof. For example, hardware implementations may include configurable logic, fixed-functionality logic, or any combination thereof. Examples of configurable logic (e.g., configurable hardware) include suitably configured programmable logic arrays (PLAs) , field programmable gate arrays (FPGAs) , complex programmable logic devices (CPLDs) , and general purpose microprocessors. Examples of fixed-functionality logic (e.g., fixed-functionality hardware) include suitably configured application specific integrated circuits (ASICs) , combinational logic circuits, and sequential logic circuits. The configurable or fixed-functionality logic can be implemented with complementary metal oxide semiconductor (CMOS) logic circuits, transistor-transistor logic (TTL) logic circuits, or other circuits.

[0035] Illustrated processing block 82 provides for storing multibit weight data in a memory array, wherein the memory array includes a plurality of columns coupled to a plurality of multiplexers. In the illustrated example, one or more of the plurality of columns is redundant. In one example, block 82 takes into consideration any previously detected defects and column replacements when writing the multibit weight data to the memory array. Block 84 conducts, by a capacitor array, MAC operations on first analog signals (e.g., input activation signals) and the multibit weight data, wherein the plurality of multiplexers is coupled to the capacitor array. In an embodiment, the capacitor array is external to the memory array. Block 86 outputs, by  the capacitor array, second analog signals (e.g., output activation signals) based on the MAC operations.

[0036] Block 88 detects, by a controller, a defect. The defect may be associated with one or more of the memory array, the capacitor array or the controller. Additionally, block 90 identifies, by the controller, an affected column in the plurality of columns based on the defect. Block 92 configures, by the controller, the plurality of multiplexers to bypass the affected column with a redundant column. As already noted, the memory array may be coupled to the plurality of columns via a plurality of partial output activation (pOA) lines. In such a case, each multiplexer can be coupled to two or more of the partial output activation lines. For example, when one of the plurality of columns is redundant, each multiplexer in the plurality of multiplexers may be a 2: 1 multiplexer. In another example, when N-1 of the plurality of columns is redundant, each multiplexer in the plurality of multiplexers may be a N: 1 multiplexer. The method 80 therefore enhances performance at least to the extent that switching in redundant columns for affected columns in CiM architectures reduces yield loss in the presence of CMOS process technology manufacturing variability.

[0037] Turning now to FIG. 7, a performance-enhanced computing system 280 is shown. The system 280 may generally be part of an electronic device / platform having computing functionality (e.g., personal digital assistant / PDA, notebook computer, tablet computer, convertible tablet, server) , communications functionality (e.g., edge networking device / controller, smart phone) , imaging functionality (e.g., camera, camcorder) , media playing functionality (e.g., smart television / TV) , wearable functionality (e.g., watch, eyewear, headwear, footwear, jewelry) , vehicular functionality (e.g., car, truck, motorcycle) , robotic functionality (e.g., autonomous robot) , Internet of Things (IoT) functionality, drone functionality, etc., or any combination thereof.

[0038] In the illustrated example, the system 280 includes a host processor 282 (e.g., CPU) having an integrated memory controller (IMC) 284 that is coupled to a system memory 286 (e.g., dual inline memory module / DIMM) . In an embodiment, an IO module 288 is coupled to the host processor 282. The illustrated IO module 288 communicates with, for example, a display 290 (e.g., touch screen, liquid crystal display / LCD, light emitting diode / LED display) , and a network controller 292 (e.g., wired and / or wireless) . The host processor 282 may be combined with the IO module 288, a graphics processor 294, and an AI accelerator 296 into a system on chip (SoC) 298.

[0039] In an embodiment, the AI accelerator 296 includes logic 300 including the analog CiM array 30 (FIG. 2A) and / or the analog CiM array 60 (FIG. 4) , already discussed. The logic 300 can also perform one or more aspects of the method 80 (FIG. 6) , already discussed. Thus, the logic 300 includes a capacitor array to conduct MAC operations on first analog signals and multibit weight data and output second analog signals based on the MAC operations. The logic 300 also includes a plurality of multiplexers coupled to the capacitor array and a memory array including a plurality of columns coupled to the plurality of multiplexers. As already noted, the memory array stores the multibit weight data, wherein one or more of the plurality of columns is redundant. Additionally, the capacitor array may be external to the memory array. In one example, the logic 300 further includes a controller to detect a defect, identify an affected column in the plurality of columns based on the defect, and configure the plurality of multiplexers to bypass the affected column with a redundant column. Although the logic 300 is shown within the AI accelerator 296, the logic 300 may reside elsewhere in the computing system 280. The computing system 280 is therefore considered performance-enhanced at least to the extent that switching in redundant columns for affected columns in CiM architectures reduces yield loss in the presence of CMOS process technology manufacturing variability.

[0040] FIG. 8 shows a semiconductor apparatus 350 (e.g., chip, die, package) . The illustrated apparatus 350 includes one or more substrates 352 (e.g., silicon, sapphire, gallium arsenide) and logic 354 (e.g., transistor array and other integrated circuit / IC components) coupled to the substrate (s) 352. In an embodiment, the logic 354 includes the analog CiM array 30 (FIG. 2A) and / or the analog CiM array 60 (FIG. 4) , already discussed. The logic 354 can also perform one or more aspects of the method 80 (FIG. 6) , already discussed. The semiconductor apparatus 350 may also be incorporated into the AI accelerator 296 (FIG. 7) .

[0041] The logic 354 may be implemented at least partly in configurable or fixed-functionality hardware. In one example, the logic 354 includes transistor channel regions that are positioned (e.g., embedded) within the substrate (s) 352. Thus, the interface between the logic 354 and the substrate (s) 352 may not be an abrupt junction. The logic 354 may also be considered to include an epitaxial layer that is grown on an initial wafer of the substrate (s) 352.

[0042] Additional Notes and Examples:

[0043] Example 1 includes a performance-enhanced computing system comprising a network controller and a processor coupled to the network controller, the processor including logic coupled to one or more substrates, wherein the logic includes a capacitor array to conduct multiply-accumulate (MAC) operations on first analog signals and multibit weight data, the  capacitor array further to output second analog signals based on the MAC operations, a plurality of multiplexers coupled to the capacitor array, and a memory array including a plurality of columns coupled to the plurality of multiplexers, the memory array to store the multibit weight data, wherein one or more of the plurality of columns is redundant, and wherein the capacitor array is external to the memory array.

[0044] Example 2 includes the performance-enhanced computing system of Example 1, wherein the logic further includes a controller to detect a defect, identify an affected column in the plurality of columns based on the defect, and configure the plurality of multiplexers to bypass the affected column with a redundant column.

[0045] Example 3 includes the performance-enhanced computing system of Example 2, wherein the defect is to be associated with one or more of the memory array, the capacitor array or the controller.

[0046] Example 4 includes the performance-enhanced computing system of Example 1, wherein the memory array is coupled to the plurality of columns via a plurality of partial output activation lines.

[0047] Example 5 includes the performance-enhanced computing system of Example 4, wherein each multiplexer is coupled to two or more of the partial output activation lines.

[0048] Example 6 includes the performance-enhanced computing system of any one of Examples 1 to 5, wherein one of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a 2: 1 multiplexer.

[0049] Example 7 includes the performance-enhanced computing system of any one of Examples 1 to 5, wherein N-1 of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is an N: 1 multiplexer.

[0050] Example 8 includes a semiconductor apparatus comprising one or more substrates, and logic coupled to the one or more substrates, wherein the logic is implemented at least partly in one or more of configurable or fixed-functionality hardware, the logic including a capacitor array to conduct multiply-accumulate (MAC) operations on first analog signals and multibit weight data, the capacitor array further to output second analog signals based on the MAC operations, a plurality of multiplexers coupled to the capacitor array, and a memory array including a plurality of columns coupled to the plurality of multiplexers, the memory array to store the multibit weight data, wherein one or more of the plurality of columns is redundant, and wherein the capacitor array is external to the memory array.

[0051] Example 9 includes the semiconductor apparatus of Example 8, wherein the logic further includes a controller to detect a defect, identify an affected column in the plurality of columns based on the defect, and configure the plurality of multiplexers to bypass the affected column with a redundant column.

[0052] Example 10 includes the semiconductor apparatus of Example 9, wherein the defect is to be associated with one or more of the memory array, the capacitor array or the controller.

[0053] Example 11 includes the semiconductor apparatus of Example 8, wherein the memory array is coupled to the plurality of columns via a plurality of partial output activation lines.

[0054] Example 12 includes the semiconductor apparatus of Example 11, wherein each multiplexer is coupled to two or more of the partial output activation lines.

[0055] Example 13 includes the semiconductor apparatus of any one of Examples 8 to 12, wherein one of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a 2: 1 multiplexer.

[0056] Example 14 includes the semiconductor apparatus of any one of Examples 8 to 12, wherein N-1 of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a N: 1 multiplexer.

[0057] Example 15 includes the semiconductor apparatus of any one of Examples 8 to 12, wherein the logic coupled to the one or more substrates includes transistor regions that are positioned within the one or more substrates.

[0058] Example 16 includes a method of operating a performance-enhanced computing system, the method comprising storing multibit weight data in a memory array, wherein the memory array includes a plurality of columns coupled to a plurality of multiplexers, and wherein one or more of the plurality of columns is redundant, conducting, by a capacitor array, multiply-accumulate (MAC) operations on first analog signals and the multibit weight data, wherein the plurality of multiplexers is coupled to the capacitor array, and wherein the capacitor array is external to the memory array, outputting, by the capacitor array, second analog signals based on the MAC operations, detecting, by a controller, a defect, identifying, by the controller, an affected column in the plurality of columns based on the defect, and configuring, by the controller, the plurality of multiplexers to bypass the affected column with a redundant column.

[0059] Example 17 includes the method of Example 16, wherein the defect is associated with one or more of the memory array, the capacitor array or the controller.

[0060] Example 18 includes the method of Example 16, wherein the memory array is coupled to the plurality of columns via a plurality of partial output activation lines, and wherein each multiplexer is coupled to two or more of the partial output activation lines.

[0061] Example 19 includes the method of any one of Examples 16 to 18, wherein one of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a 2: 1 multiplexer.

[0062] Example 20 includes the method of any one of Examples 16 to 18, wherein N-1 of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a N: 1 multiplexer.

[0063] Example 21 includes an apparatus comprising means for performing the method of any one of Examples 16 to 20.

[0064] Embodiments are applicable for use with all types of semiconductor integrated circuit ( “IC” ) chips. Examples of these IC chips include but are not limited to processors, controllers, chipset components, programmable logic arrays (PLAs) , memory chips, network chips, systems on chip (SoCs) , SSD / NAND controller ASICs, and the like. In addition, in some of the drawings, signal conductor lines are represented with lines. Some may be different, to indicate more constituent signal paths, have a number label, to indicate a number of constituent signal paths, and / or have arrows at one or more ends, to indicate primary information flow direction. This, however, should not be construed in a limiting manner. Rather, such added detail may be used in connection with one or more exemplary embodiments to facilitate easier understanding of a circuit. Any represented signal lines, whether or not having additional information, may actually comprise one or more signals that may travel in multiple directions and may be implemented with any suitable type of signal scheme, e.g., digital or analog lines implemented with differential pairs, optical fiber lines, and / or single-ended lines.

[0065] Example sizes / models / values / ranges may have been given, although embodiments are not limited to the same. As manufacturing techniques (e.g., photolithography) mature over time, it is expected that devices of smaller size could be manufactured. In addition, well known power / ground connections to IC chips and other components may or may not be shown within the figures, for simplicity of illustration and discussion, and so as not to obscure certain aspects of the embodiments. Further, arrangements may be shown in block diagram form in order to avoid obscuring embodiments, and also in view of the fact that specifics with respect to implementation of such block diagram arrangements are highly dependent upon the computing system within which the embodiment is to be implemented, i.e., such specifics should be well  within purview of one skilled in the art. Where specific details (e.g., circuits) are set forth in order to describe example embodiments, it should be apparent to one skilled in the art that embodiments can be practiced without, or with variation of, these specific details. The description is thus to be regarded as illustrative instead of limiting.

[0066] The term “coupled” may be used herein to refer to any type of relationship, direct or indirect, between the components in question, and may apply to electrical, mechanical, fluid, optical, electromagnetic, electromechanical or other connections. In addition, the terms “first” , “second” , etc. may be used herein only to facilitate discussion, and carry no particular temporal or chronological significance unless otherwise indicated.

[0067] As used in this application and in the claims, a list of items joined by the term “one or more of” may mean any combination of the listed terms. For example, the phrases “one or more of A, B or C” may mean A; B; C; A and B; A and C; B and C; or A, B and C.

[0068] Those skilled in the art will appreciate from the foregoing description that the broad techniques of the embodiments can be implemented in a variety of forms. Therefore, while the embodiments have been described in connection with particular examples thereof, the true scope of the embodiments should not be so limited since other modifications will become apparent to the skilled practitioner upon a study of the drawings, specification, and following claims.

Claims

1.A performance-enhanced computing system comprising:a network controller; anda processor coupled to the network controller, the processor including logic coupled to one or more substrates, wherein the logic includes:a capacitor array to conduct multiply-accumulate (MAC) operations on first analog signals and multibit weight data, the capacitor array further to output second analog signals based on the MAC operations,a plurality of multiplexers coupled to the capacitor array, anda memory array including a plurality of columns coupled to the plurality of multiplexers, the memory array to store the multibit weight data, wherein one or more of the plurality of columns is redundant, and wherein the capacitor array is external to the memory array.2.The performance-enhanced computing system of claim 1, wherein the logic further includes a controller to detect a defect, identify an affected column in the plurality of columns based on the defect, and configure the plurality of multiplexers to bypass the affected column with a redundant column.3.The performance-enhanced computing system of claim 2, wherein the defect is to be associated with one or more of the memory array, the capacitor array or the controller.4.The performance-enhanced computing system of claim 1, wherein the memory array is coupled to the plurality of columns via a plurality of partial output activation lines.5.The performance-enhanced computing system of claim 4, wherein each multiplexer is coupled to two or more of the partial output activation lines.6.The performance-enhanced computing system of any one of claims 1 to 5, wherein one of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a 2: 1 multiplexer.7.The performance-enhanced computing system of any one of claims 1 to 5, wherein N-1 of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is an N: 1 multiplexer.8.A semiconductor apparatus comprising:one or more substrates; andlogic coupled to the one or more substrates, wherein the logic is implemented at least partly in one or more of configurable or fixed-functionality hardware, the logic including:a capacitor array to conduct multiply-accumulate (MAC) operations on first analog signals and multibit weight data, the capacitor array further to output second analog signals based on the MAC operations;a plurality of multiplexers coupled to the capacitor array; anda memory array including a plurality of columns coupled to the plurality of multiplexers, the memory array to store the multibit weight data, wherein one or more of the plurality of columns is redundant, and wherein the capacitor array is external to the memory array.9.The semiconductor apparatus of claim 8, wherein the logic further includes a controller to detect a defect, identify an affected column in the plurality of columns based on the defect, and configure the plurality of multiplexers to bypass the affected column with a redundant column.10.The semiconductor apparatus of claim 9, wherein the defect is to be associated with one or more of the memory array, the capacitor array or the controller.11.The semiconductor apparatus of claim 8, wherein the memory array is coupled to the plurality of columns via a plurality of partial output activation lines.12.The semiconductor apparatus of claim 11, wherein each multiplexer is coupled to two or more of the partial output activation lines.13.The semiconductor apparatus of any one of claims 8 to 12, wherein one of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a 2: 1 multiplexer.14.The semiconductor apparatus of any one of claims 8 to 12, wherein N-1 of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a N: 1 multiplexer.15.The semiconductor apparatus of any one of claims 8 to 12, wherein the logic coupled to the one or more substrates includes transistor regions that are positioned within the one or more substrates.16.A method of operating a performance-enhanced computing system, the method comprising:storing multibit weight data in a memory array, wherein the memory array includes a plurality of columns coupled to a plurality of multiplexers, and wherein one or more of the plurality of columns is redundant;conducting, by a capacitor array, multiply-accumulate (MAC) operations on first analog signals and the multibit weight data, wherein the plurality of multiplexers is coupled to the capacitor array, and wherein the capacitor array is external to the memory array;outputting, by the capacitor array, second analog signals based on the MAC operations;detecting, by a controller, a defect;identifying, by the controller, an affected column in the plurality of columns based on the defect; andconfiguring, by the controller, the plurality of multiplexers to bypass the affected column with a redundant column.17.The method of claim 16, wherein the defect is associated with one or more of the memory array, the capacitor array or the controller.18.The method of claim 16, wherein the memory array is coupled to the plurality of columns via a plurality of partial output activation lines, and wherein each multiplexer is coupled to two or more of the partial output activation lines.19.The method of any one of claims 16 to 18, wherein one of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a 2: 1 multiplexer.20.The method of any one of claims 16 to 18, wherein N-1 of the plurality of columns is redundant and each multiplexer in the plurality of multiplexers is a N: 1 multiplexer.

Citation Information

Patent Citations

  • Analog multiply-accumulate component for computations in multi-bit memory cells

    CN115904311A

  • Column redundancy system and method for embedded dram devices with multibanking capability

    US20030067816A1

  • Semiconductor memory device and system having redundancy cells

    US20130117636A1

  • Semiconductor storage device and testing method

    US20140247679A1

  • Row repair and accuracy improvements in analog compute-in-memory architectures

    US20230251943A1