Abstract:
The invention relates to a general purpose processor comprising an execution unit (2) adapted for performing a processor instruction, whereby the execution unit (2) comprises an integrated circuit and the integrated circuit is solely designed for calculating a SHA-2 sigma function (1). As such calculation of the SHA-2 sigma function (1) can be performed by the integrated circuit with a single instruction, the method according to the invention allows for a less costly calculation of the SHA-2 sigma function (1) respectively of the SHA-2 function than prior art.
Abstract:
Ein Computersystem, ein Prozessor und ein Verfahren zur Verarbeitung von Informationen sind offenbart, die zumindest einen Computerprozessor; eine dem mindestens einen Prozessor zugeordnete Hauptregisterdatei, wobei die Hauptregisterdatei mehrere Einträge zum Speichern von Daten, einen oder mehrere Schreibanschlüsse zum Schreiben von Daten in die Hauptregisterdateieinträge und einen oder mehrere Leseanschlüsse zum Lesen von Daten aus den Hauptregisterdateieinträgen aufweist; eine oder mehrere Ausführeinheiten, die eine komplexe Mathematikausführeinheit einschließen; und mindestens eine Akkumulatorregisterdatei aufweisen, die mehrere Einträge zum Speichern von Daten aufweist. Die Ergebnisse der komplexen Mathematikausführeinheit werden gemäß einem Aspekt in die Akkumulatorregisterdatei, vorzugsweise mehrmals in den gleichen Akkumulatorregisterdateieintrag geschrieben, und die Daten aus der Akkumulatorregisterdatei werden in die Hauptregisterdatei geschrieben.
Abstract:
A logic design for a processor execution unit includes an instruction pipeline 10 with one or more pipeline stages 12 for executing a plurality of instructions. A method of formal verification of the logic design involves selecting an instruction from the plurality of instructions and may verify the processing of that instruction using formal model checking. A design under test is created by using a first 30 and a second 32 instance of the logic design. The first instance 30 is initialized with defined values in each instruction pipeline stage and the second instance 32 with random initial values in each pipeline stage. The instruction is then simultaneously issued to each instance, executed and a comparison of the results output from the instruction pipelines is made 16. If the instruction was verified by formal model checking, approving the correctness of the logic design if the comparison result is true. If the instruction was not verifiable by formal model checking, approving the correctness of a sequenced computation if the comparison result is true.
Abstract:
An improved method and system are provided for pipeline depth exploration in a register transfer level design description of an electronic circuit. The method comprises providing a list of input registers and output registers for the circuit design to be modified S100, traversing output connections paths for each input register and replacing any register in the output connection paths by a respective wire unless the register is contained in the list of output registers S110. An initial total cycle time value for the modified registerless circuit design is determined, accounting for a register latch insertion delay time value S120. A gate level description for the modified circuit design is obtained by macro synthesis with the initial total cycle time value S130, and the total cycle time value for the modified circuit design is varied to determine theoretical limit of the modified circuit design S140. The theoretical limit of the modified circuit design is realized when negative slacks are present in the macro synthesis of the gate level description for the modified circuit design with the corresponding total cycle time value S150. The pipeline depth of the circuit design may be reduced, if said total cycle time value of the modified circuit design is lower than a threshold.
Abstract:
A logic design for a processor execution unit includes an instruction pipeline 10 with one or more pipeline stages 12 for executing a plurality of instructions. A method of formal verification of the logic design involves selecting an instruction from the plurality of instructions and may verify the processing of that instruction using formal model checking. A design under test is created by using a first 30 and a second 32 instance of the logic design. The first instance 30 is initialized with defined values in each instruction pipeline stage and the second instance 32 with random initial values in each pipeline stage. The instruction is then simultaneously issued to each instance, executed and a comparison of the results output from the instruction pipelines is made 16. If the instruction was verified by formal model checking, approving the correctness of the logic design if the comparison result is true. If the instruction was not verifiable by formal model checking, approving the correctness of a sequenced computation if the comparison result is true.