Organization Of Register Space, E.g., Distributed Register Files, Register Banks (epo) Patents (Class 712/E9.027)
  • Patent number: 12159140
    Abstract: An electronic device receives a single instruction to apply a neural network operation to a set of M-bit elements stored in one or more input vector registers to initiate a sequence of computational operations related to a neural network. In response to the single instruction, the electronic device implements the neural network operation on the set of M-bit elements to generate a set of P-bit elements by obtaining the set of M-bit elements from the one or more input vector registers, quantizing each of the set of M-bit elements from M bits to P bits, and packing the set of P-bit elements into an output vector register. P is smaller than M. In some embodiments, the neural network operation is a quantization operation including at least a multiplication with a quantization factor and an addition with a zero point.
    Type: Grant
    Filed: April 28, 2022
    Date of Patent: December 3, 2024
    Assignee: QUALCOMM Incorporated
    Inventors: Srijesh Sudarsanan, Deepak Mathew, Marc Hoffman, Sundar Rajan Balasubramanian, Mansi Jain, James Lee, Gerald Sweeney
  • Patent number: 12135874
    Abstract: In described examples, a flash memory bank includes application and bootloader portions. The application portion stores first instructions for performing an interrupt service routine (ISR). The bootloader portion stores second instructions for: causing the flash memory bank to receive new first instructions for performing the ISR and write the new first instructions to replace old first instructions, and executing the new first instructions. The new first instructions execute the following steps in order. First, while maintaining an interrupt response, initializing variables specified by the new first instructions and not specified by the old first instructions, and not changing variables specified by the old first instructions. Second, after determining there is no interrupt response in process, disabling the interrupt response and proceeding to a third step. Third, initializing a stack, updating an interrupt vector, and updating a function pointer. Fourth, re-enabling the interrupt response.
    Type: Grant
    Filed: March 23, 2022
    Date of Patent: November 5, 2024
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventor: Sira Parasurama Rao
  • Patent number: 12032990
    Abstract: In certain embodiments, an electronic device comprises a display; a first memory; a second memory storing a plurality of applications; and a processor, wherein the processor is configured to: switch a screen displayed on the display from a first screen to a second screen, wherein the second screen includes a plurality of objects respectively indicating the plurality of applications; identify applications which are not running among the plurality of applications, in response to the switching to the second screen; and load data of at least one application from the second memory to the first memory, based on a predetermined criteria, before receiving an input selecting the at least one application.
    Type: Grant
    Filed: February 5, 2020
    Date of Patent: July 9, 2024
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Hyunjoon Cha, Chulmin Kim, Yongtaek Lee, Ohoon Kwon, Jaewon Kim, Sooyong Suk
  • Patent number: 12008149
    Abstract: A computer system, processor, computer program product, and method for executing instructions in a software application that includes a processor that can be dynamically controlled, in response to a value set in a control register, to operate in either a secure mode or a performance mode. In the secure mode, the processor: upon encountering a secure mode entry instruction, computes an entry hash value using a hash function and stores the entry hash value; and upon encountering a secure mode exit instruction, computes an exit hash value, loads the entry hash value, and determines whether the entry hash value is the same as the exit hash value, and depending upon verification of the hash values can execute the return function or transfer control to the operating system. In the performance mode, the processor: executes both the secure mode entry instruction and the secure mode exit instruction as no-operations.
    Type: Grant
    Filed: December 16, 2020
    Date of Patent: June 11, 2024
    Assignee: International Business Machines Corporation
    Inventors: Debapriya Chatterjee, Brian W. Thompto, Jose E. Moreira
  • Patent number: 11983537
    Abstract: A multi-stage processor has a pre-fetch stage, and a sequence of pipelined processor stages. A thread map register contains thread identifiers, and a thread map valid register has locations corresponding to the thread map register and indicating whether a value in the thread map register is to be fetched or not, and a thread map length register indicates the number of thread map register locations forming a canonical sequence of thread identifiers to the pre-fetch stage. The pre-fetch stage does not act on a thread identifier with a not valid thread map valid value, thereby saving power in low demand conditions.
    Type: Grant
    Filed: December 21, 2022
    Date of Patent: May 14, 2024
    Assignee: Ceremorphic, Inc.
    Inventors: Venkat Mattela, Heonchul Park, Radhika Ponnamaneni, Govardhan Mattela
  • Patent number: 10713056
    Abstract: A non-limiting example of a computer-implemented method for implementing wide vector execution for an out-of-order processor includes entering, by the out-of-order processor, a single thread mode. The method further includes partitioning, by the out-of-order processor, a vector register file into a plurality of register files, each of the plurality of register files being associated with a vector execution unit, the vector execution units forming a wide vector execution unit. The method further includes receiving, by a vector scalar register of the out-of-order processor, a wide vector instruction. The method further includes processing, by the wide vector execution unit, the wide vector instruction.
    Type: Grant
    Filed: November 8, 2017
    Date of Patent: July 14, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Silvia M. Mueller, Mauricio J. Serrano, Balaram Sinharoy
  • Patent number: 10705847
    Abstract: A non-limiting example of a computer-implemented method for implementing wide vector execution for an out-of-order processor includes entering, by the out-of-order processor, a single thread mode. The method further includes partitioning, by the out-of-order processor, a vector register file into a plurality of register files, each of the plurality of register files being associated with a vector execution unit, the vector execution units forming a wide vector execution unit. The method further includes receiving, by a vector scalar register of the out-of-order processor, a wide vector instruction. The method further includes processing, by the wide vector execution unit, the wide vector instruction.
    Type: Grant
    Filed: August 1, 2017
    Date of Patent: July 7, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Silvia M. Mueller, Mauricio J. Serrano, Balaram Sinharoy
  • Patent number: 10565017
    Abstract: A multi-thread processor and a method of controlling a multi-thread processor are provided. The multi-thread processor includes at least one functional unit; a mode register; and a controller configured to control the mode register to store thread mode information corresponding to a task to be processed among a plurality of thread modes, wherein the plurality of thread modes are divided based on a size and a number of at least one thread that is concurrently processed in one of the at least one functional unit, allocate at least one thread included in the task to the at least one functional unit based on the thread mode information stored in the mode register and control the at least one functional unit to process the at least one thread.
    Type: Grant
    Filed: August 4, 2017
    Date of Patent: February 18, 2020
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Dong-kwan Suh, Suk-jin Kim, Jin-sae Jung, Kang-jin Yoon
  • Patent number: 10481915
    Abstract: Provided are methods, systems, and computer program products to implementing a split store data queue for an out-of-order (OoO) processor. A non-limiting example of the computer-implemented method includes detecting, by the OoO processor, a mode of the OoO processor. The method further includes partitioning, by the OoO processor, a first store data queue (SDQ) and a second SDQ based at least in part on the mode of the OoO processor. The method further includes receiving, by the OoO processor, a vector operand. The method further includes storing, by the OoO processor, the vector operand in at least one of the first SDQ and the second SDQ based at least in part on the mode of the OoO processor.
    Type: Grant
    Filed: September 20, 2017
    Date of Patent: November 19, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Bryan J. Lloyd, Balaram Sinharoy
  • Patent number: 9703614
    Abstract: Embodiments include method, systems and computer program products for searching a social network for media content. Aspects include identifying one or more available resources for execution by the processor, determining a maximum number of resources the processor can utilize in executing an instruction group, and grouping the one or more available resources into one or more resource groups, wherein each of the one or more resource groups has a size equal to the maximum number. Aspects also include receiving a request from a decode logic for a number of resources for execution and dispatching one of the one or more resource groups in response to the request by providing the number of resources for execution to the processor and sending remaining resources in the one of the one or more resource groups to a recycle queue.
    Type: Grant
    Filed: October 4, 2016
    Date of Patent: July 11, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Gregory W. Alexander, Brian D. Barrick
  • Patent number: 9189277
    Abstract: Provided is a method and system for dynamically parallelizing an application program. Specifically, provided is a method and system having multi-core control that may verify a number of available threads according to an application program and dynamically parallelize data based on the verified number of available threads. The method and system for dynamically parallelizing the application program may divide a data block to be processed according to the application program based on a relevant data characteristic and dynamically map the threads to division blocks, and thereby enhance a system performance.
    Type: Grant
    Filed: July 22, 2013
    Date of Patent: November 17, 2015
    Assignees: SAMSUNG ELECTRONICS CO., LTD., UNIVERSITY OF SOUTHERN CALIFORNIA
    Inventors: Seung Won Lee, Shi Hwa Lee, Dong-In Kang, Mikyung Kang
  • Patent number: 8914615
    Abstract: A processor core supports execution of program instruction from both a first instruction set and a second instruction set. An architectural register file 18 containing architectural registers is shared by the two instruction sets. The two instruction sets employ logical register specifiers which for at least some values of those logical registers specifiers correspond to different architectural registers within the architectural register file 18. A first decoder 4 for the first instruction set and a second decoder 6 for the second instruction set serve to decode the logical register specifiers to a common register addressing format. This common register addressing format is used to supply register specifiers to renaming circuitry 10 for supporting register renaming in conjunction with a physical register file 16 and an architectural register file 18.
    Type: Grant
    Filed: December 2, 2011
    Date of Patent: December 16, 2014
    Assignee: ARM Limited
    Inventors: Glen Andrew Harris, James Nolan Hardage, Mark Carpenter Glass
  • Patent number: 8533435
    Abstract: One embodiment of the present invention sets forth a technique for collecting operands specified by an instruction. As a sequence of instructions is received the operands specified by the instructions are assigned to ports, so that each one of the operands specified by a single instruction is assigned to a different port. Reading of the operands from a multi-bank register file is scheduled by selecting an operand from each one of the different ports to produce an operand read request and ensuring that two or more of the selected operands are not stored in the same bank of the multi-bank register file. The operands specified by the operand read request are read from the multi-bank register file in a single clock cycle. Each instruction is then executed as the operands specified by the instruction are read from the multi-bank register file and collected over one or more clock cycles.
    Type: Grant
    Filed: September 3, 2010
    Date of Patent: September 10, 2013
    Assignee: NVIDIA Corporation
    Inventors: Xiaogang Qiu, Ming Y. Siu, Yan Yan Tang, John Erik Lindholm, Michael C. Shebanow, Stuart F. Oberman
  • Patent number: 7962731
    Abstract: A Backing Store Buffer is interposed between a Physical Register File and the Backing Store in a stacked register file architecture. A Register Save Engine temporarily stores data from registers in the Physical Register File allocated to inactive procedures on-chip, freeing the registers to be re-allocated to new procedures. When the a procedures complete and returns control to a prior, inactive procedure, the Register Store Engine retrieves data associated with the inactive procedure from the Backing Store Buffer to registers in the Physical Register File, and the registers are re-allocated to the inactive procedure. The Register Save Engine saves data from the Backing Store Buffer to the Backing Store, incurring the significant performance degradation and power consumption required for off-chip RAM access, only when the Backing Store Buffer is full and more data must be saved from the Physical Register File.
    Type: Grant
    Filed: October 20, 2005
    Date of Patent: June 14, 2011
    Assignee: QUALCOMM Incorporated
    Inventor: Bohuslav Rychlik