Patents by Inventor Øyvind Strøm
Øyvind Strøm has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8555041Abstract: Various embodiments include methods and related media for performing operations including a return operation. One such method includes testing a content of a return value register and setting status flags. Testing the content of the return value register and setting the status flags are performed in response to a single instruction.Type: GrantFiled: June 7, 2010Date of Patent: October 8, 2013Assignee: Atmel CorporationInventors: Erik K. Renno, Oyvind Strom, Morten W. Lund
-
Patent number: 8533433Abstract: A microprocessor architecture for executing byte compiled Java programs directly in hardware. The microprocessor targets the lower end of the embedded systems domain and features two orthogonal programming models, a Java model and a RISC model. The entities share a common data path and operate independently, although not in parallel. The microprocessor includes a combined register file in which the Java module sees the elements in the register file as a circular operand stack and the RISC module sees the elements as a conventional register file. The integrated microprocessor architecture facilitates access to hardware-near instructions and provides powerful interrupt and instruction trapping capabilities.Type: GrantFiled: April 23, 2012Date of Patent: September 10, 2013Assignee: Atmel CorporationInventor: Oyvind Strom
-
Publication number: 20120204017Abstract: A microprocessor architecture for executing byte compiled Java programs directly in hardware. The microprocessor targets the lower end of the embedded systems domain and features two orthogonal programming models, a Java model and a RISC model. The entities share a common data path and operate independently, although not in parallel. The microprocessor includes a combined register file in which the Java module sees the elements in the register file as a circular operand stack and the RISC module sees the elements as a conventional register file. The integrated microprocessor architecture facilitates access to hardware-near instructions and provides powerful interrupt and instruction trapping capabilities.Type: ApplicationFiled: April 23, 2012Publication date: August 9, 2012Applicant: ATMEL CORPORATIONInventor: Oyvind Strom
-
Patent number: 8224883Abstract: A packed half-word addition and subtraction operation is performed by a microprocessor in parallel upon half-word operands obtained from designated top or bottom half-word locations of designated source registers of a register file and the sum and difference results of such operation are packed into respective top and bottom half-word locations of a designated destination register. The microprocessor includes an arithmetic-logic unit (ALU) with adder circuitry that can be selectively split into separate half-word adders that are independently selectable to perform either an addition operation or subtraction operation upon the selected half-word operands. The half-word adders of the ALU access the operands from source registers via a set of multiplexers that select among the top and bottom half-word locations. Operations with halving and saturation modifications to the sum and difference results may also be provided.Type: GrantFiled: June 29, 2009Date of Patent: July 17, 2012Assignee: Atmel CorporationInventors: Ronny Pedersen, Erik K. Renno, Oyvind Strom
-
Patent number: 8166280Abstract: A microprocessor architecture for executing byte compiled Java programs directly in hardware. The microprocessor targets the lower end of the embedded systems domain and features two orthogonal programming models, a Java model and a RISC model. The entities share a common data path and operate independently, although not in parallel. The microprocessor includes a combined register file in which the Java module sees the elements in the register file as a circular operand stack and the RISC module sees the elements as a conventional register file. The integrated microprocessor architecture facilitates access to hardware-near instructions and provides powerful interrupt and instruction trapping capabilities.Type: GrantFiled: February 18, 2011Date of Patent: April 24, 2012Assignee: Atmel CorporationInventor: Oyvind Strom
-
Patent number: 8015229Abstract: An apparatus for performing multiply-accumulate operations in a microprocessor comprising operand input registers for receiving data to be operated on an adder and a multiplier for performing operations on the data, a result output port for presenting results to the microprocessor, a multiplexer for storing results, an accumulator cache for storing an accumulator value internal to the apparatus, and control circuitry for controlling the operation of the apparatus.Type: GrantFiled: June 1, 2005Date of Patent: September 6, 2011Assignee: Atmel CorporationInventors: Øyvind Strøm, Erik Knutsen Renno
-
Patent number: 7996659Abstract: An apparatus comprises register means for storing a return context upon initiation of a supervisor call instruction and restoring means to restore a privilege level and status register upon execution of a supervisor return instruction. The supervisor call instruction can be called from all contexts.Type: GrantFiled: June 6, 2005Date of Patent: August 9, 2011Assignee: Atmel CorporationInventors: Erik K. Renno, Oyvind Strom, Andreas Engh-Halstvedt, Havard Skinnemoen
-
Publication number: 20110145548Abstract: A microprocessor architecture for executing byte compiled Java programs directly in hardware. The microprocessor targets the lower end of the embedded systems domain and features two orthogonal programming models, a Java model and a RISC model. The entities share a common data path and operate independently, although not in parallel. The microprocessor includes a combined register file in which the Java module sees the elements in the register file as a circular operand stack and the RISC module sees the elements as a conventional register file. The integrated microprocessor architecture facilitates access to hardware-near instructions and provides powerful interrupt and instruction trapping capabilities.Type: ApplicationFiled: February 18, 2011Publication date: June 16, 2011Applicant: Atmel CorporationInventor: Oyvind Strom
-
Patent number: 7917732Abstract: A microprocessor architecture for executing byte compiled Java programs directly in hardware. The microprocessor targets the lower end of the embedded systems domain and features two orthogonal programming models, a Java model and a RISC model. The entities share a common data path and operate independently, although not in parallel. The microprocessor includes a combined register file in which the Java module sees the elements in the register file as a circular operand stack and the RISC module sees the elements as a conventional register file. The integrated microprocessor architecture facilitates access to hardware-near instructions and provides powerful interrupt and instruction trapping capabilities.Type: GrantFiled: January 4, 2007Date of Patent: March 29, 2011Assignee: Atmel CorporationInventor: Oyvind Strom
-
Patent number: 7817719Abstract: An adaptation of the sum-of-absolute-differences (SAD) calculation is implemented by modifying existing circuitry in a microprocessor. The adaptation yields a reduction of over 30% for a current SAD calculation. The adaptation includes a first and second operand register, each storing respectively a first and second set of 2's complement binary data, an arithmetic logic unit (ALU), and a destination register. An add/subtract enable input on the ALU receives a most significant bit (MSB) of the second set of binary data. The ALU adds the first and second data sets if the MSB is a “0” and subtracts the second data set from the first data set if the MSB is a “1.” The add/subtract enable input has the effect of taking the absolute value of the second data set without having to first perform an absolute value determination, thus eliminating processing steps.Type: GrantFiled: May 31, 2005Date of Patent: October 19, 2010Assignee: Atmel CorporationInventors: Ronny Pedersen, Erik K. Renno, Oyvind Strom
-
Publication number: 20100250904Abstract: Various embodiments include methods and related media for performing operations including a return operation. One such method includes testing a content of a return value register and setting status flags. Testing the content of the return value register and setting the status flags are performed in response to a single instruction.Type: ApplicationFiled: June 7, 2010Publication date: September 30, 2010Applicant: Atmel CorporationInventors: Erik K. Renno, Oyvind Strom, Morten W. Lund
-
Patent number: 7689640Abstract: An apparatus for scaling numbers comprises register means for storing an operand to be scaled, bit shifting means for performing a right shift operation on the operand, rounding means, and decision means to test for the existence of at least one of an overflow and an underflow condition.Type: GrantFiled: June 6, 2005Date of Patent: March 30, 2010Assignee: Atmel CorporationInventors: Erik K. Renno, Ronny Pedersen, Oyvind Strom
-
Publication number: 20090265410Abstract: A packed half-word addition and subtraction operation is performed by a microprocessor in parallel upon half-word operands obtained from designated top or bottom half-word locations of designated source registers of a register file and the sum and difference results of such operation are packed into respective top and bottom half-word locations of a designated destination register. The microprocessor includes an arithmetic-logic unit (ALU) with adder circuitry that can be selectively split into separate half-word adders that are independently selectable to perform either an addition operation or subtraction operation upon the selected half-word operands. The half-word adders of the ALU access the operands from source registers via a set of multiplexers that select among the top and bottom half-word locations. Operations with halving and saturation modifications to the sum and difference results may also be provided.Type: ApplicationFiled: June 29, 2009Publication date: October 22, 2009Inventors: Ronny Pedersen, Erik K. Renno, Oyvind Strom
-
Patent number: 7555514Abstract: A packed half-word addition and subtraction operation is performed by a microprocessor in parallel upon half-word operands obtained from designated top or bottom half-word locations of designated source registers of a register file and the sum and difference results of such operation are packed into respective top and bottom half-word locations of a designated destination register. The microprocessor includes an arithmetic-logic unit (ALU) with adder circuitry that can be selectively split into separate half-word adders that are independently selectable to perform either an addition operation or subtraction operation upon the selected half-word operands. The half-word adders of the ALU access the operands from source registers via a set of multiplexers that select among the top and bottom half-word locations. Operations with halving and saturation modifications to the sum and difference results may also be provided.Type: GrantFiled: February 13, 2006Date of Patent: June 30, 2009Assignee: Atmel CorportationInventors: Ronny Pedersen, Erik K. Renno, Oyvind Strom
-
Patent number: 7478224Abstract: A combined native (RISC or CISC) microprocessor and stack (Java™) machine are constructed so that Java™ VM instructions can be executed in hardware. Most Java™ instructions are executed directly, while more complex Java™ instructions, such as those manipulating Java™ objects, are executed as native microcode. In order for native microcode instructions to access the Java™ operand stack, a Java™ operand stack pointer points to the register file location that is the current top of the stack, while a remap bit in the status register indicates that registers specified in native instructions are remapped as the maximum Java™ operand stack pointer value minus the present value of the Java™ operand stack pointer.Type: GrantFiled: April 15, 2005Date of Patent: January 13, 2009Assignee: Atmel CorporationInventors: Oyvind Strom, Erik K. Renno, Kristian Monsen
-
Publication number: 20070192396Abstract: A packed half-word addition and subtraction operation is performed by a microprocessor in parallel upon half-word operands obtained from designated top or bottom half-word locations of designated source registers of a register file and the sum and difference results of such operation are packed into respective top and bottom half-word locations of a designated destination register. The microprocessor includes an arithmetic-logic unit (ALU) with adder circuitry that can be selectively split into separate half-word adders that are independently selectable to perform either an addition operation or subtraction operation upon the selected half-word operands. The half-word adders of the ALU access the operands from source registers via a set of multiplexers that select among the top and bottom half-word locations. Operations with halving and saturation modifications to the sum and difference results may also be provided.Type: ApplicationFiled: February 13, 2006Publication date: August 16, 2007Inventors: Ronny Pedersen, Erik Renno, Oyvind Strom
-
Publication number: 20070168954Abstract: A microprocessor architecture for executing byte compiled Java programs directly in hardware. The microprocessor targets the lower end of the embedded systems domain and features two orthogonal programming models, a Java model and a RISC model. The entities share a common data path and operate independently, although not in parallel. The microprocessor includes a combined register file in which the Java module sees the elements in the register file as a circular operand stack and the RISC module sees the elements as a conventional register file. The integrated microprocessor architecture facilitates access to hardware-near instructions and provides powerful interrupt and instruction trapping capabilities.Type: ApplicationFiled: January 4, 2007Publication date: July 19, 2007Applicant: ATMEL CORPORATIONInventor: Oyvind Strom
-
Patent number: 7243210Abstract: A microprocessor circuit useful for indexed addressing of byte-addressable memories includes word-length index, base address, and destination registers designated by an instruction. The instruction also specifies one byte packed within the index register, which is to be extracted. A multiplexer has a word-wide input end accessing all of the bytes of the index register, and responsive to byte selection control passes the specified byte to its output. The extracted byte is provided directly at specific bit positions of a zero-extended address offset word. The offset word is added to the base address, the sum being used to address memory contents that are loaded into the destination register.Type: GrantFiled: May 31, 2005Date of Patent: July 10, 2007Assignee: Atmel CorporationInventors: Ronny Pedersen, Erik K. Renno, Oyvind Strom
-
Publication number: 20070006200Abstract: An apparatus comprises register means for storing a return context upon initiation of a supervisor call instruction and restoring means to restore a privilege level and status register upon execution of a supervisor return instruction. The supervisor call instruction can be called from all contexts.Type: ApplicationFiled: June 6, 2005Publication date: January 4, 2007Inventors: Erik Renno, Oyvind Strom, Andreas Engh-Halstvedt, Havard Skinnemoen
-
Publication number: 20060285593Abstract: An adaptation of the sum-of-absolute-differences (SAD) calculation is implemented by modifying existing circuitry in a microprocessor. The adaptation yields a reduction of over 30% for a current SAD calculation. The adaptation includes a first and second operand register, each storing respectively a first and second set of 2's complement binary data, an arithmetic logic unit (ALU), and a destination register. An add/subtract enable input on the ALU receives a most significant bit (MSB) of the second set of binary data. The ALU adds the first and second data sets if the MSB is a “0” and subtracts the second data set from the first data set if the MSB is a “1.” The add/subtract enable input has the effect of taking the absolute value of the second data set without having to first perform an absolute value determination, thus eliminating processing steps.Type: ApplicationFiled: May 31, 2005Publication date: December 21, 2006Inventors: Ronny Pedersen, Erik Renno, Oyvind Strom