Patent Document ID: 9449129
Application ID: 13873621
Patent Flag: 1

Claim One:
1. A method of accelerating sparse matrix operations in full accuracy simulation of a circuit, comprising: determining repetitive blocks of the circuit and associating each of the repetitive blocks with one of a plurality of block types in which each block type identifies blocks having identical block structures; determining a set of node or branch values of a current block of the repetitive blocks of the circuit; determining whether the set of node or branch values of the current block is within a predetermined error range of a stored set of node or branch values of a stored block solution previously computed for another block of the same block type, in which the predetermined error range comprises a linear approximation range; when the set of node or branch values of the current block is outside the predetermined error range of a stored set of node or branch values of any stored block solution, performing a full computation evaluation for determining a solution for the current block and storing the solution; and when the set of node or branch values of the current block is not identical to but is within the predetermined error range of a stored set of node or branch values of a stored block solution of the same block type, performing a reduced computation evaluation using the stored set of node or branch values of the stored block solution to determine a solution for the current block, wherein said reduced computation evaluation comprises: determining charge values of the current block based on charge values of the stored block solution, capacitance values of the stored block solution, and voltage differences between the current block and the stored block solution; determining charge value changes of the current block; determining electrical current values of the current block based on electrical current values of the stored block solution, conductance values of the stored block solution, and voltage differences between the current block and the stored block solution; and adding the charge value changes of the current block to the electrical current values of the current block to provide updated electrical current values.