Writable/changeable Control Store Architecture Patents (Class 712/248)
  • Patent number: 11720363
    Abstract: An apparatus and method for efficient microcode patching.
    Type: Grant
    Filed: September 25, 2021
    Date of Patent: August 8, 2023
    Assignee: Intel Corporation
    Inventors: Prashant Dewan, Arun Hodigere, Karunakara Karunakara Kotary
  • Patent number: 11675906
    Abstract: Infection by viruses and rootkits from data memory devices, data messages and data operations are rendered impossible by construction for the Simultaneous Multi-Processor (SiMulPro) cores, core modules, Programmable Execution Modules (PEM), PEM Arrays, STAR messaging protocol implementations, integrated circuits (referred to as chips herein), and systems composed of these components. Greatly improved energy efficiency is disclosed. A system implementation of an Application Specific Integrated Circuit (ASIC) communicating with a DRAM controller interacting with a DRAM array is presented with this resistance to virus and rootkit infection, and simultaneously capable of 1 Teraflop (Tflop) FP16, 1 TFlop FP32 and 1 Tflop FP64 performance while accessing 1 Tbyte of DRAM with a power budget comparable to today's desktop or notebook computers accessing 8 Gbytes of DRAM.
    Type: Grant
    Filed: November 12, 2019
    Date of Patent: June 13, 2023
    Assignee: QSIGMA, INC.
    Inventor: Earle Jennings
  • Patent number: 10796007
    Abstract: Provided is a method of operating a semiconductor device. A method of operating a semiconductor device includes storing secure data in a secure area of a memory in response to detecting a system failure; encrypting the secure data stored in the secure area by using a random key to generate encrypted secure data; storing the encrypted secure data in the secure area; and dumping the secure area and a non-secure area of the memory.
    Type: Grant
    Filed: October 16, 2017
    Date of Patent: October 6, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Keun Young Park, Ji Hyun Kim, Dong Jin Park, Yoon Jick Lee
  • Patent number: 10698686
    Abstract: Configurable architectural placement control. A control is provided that specifies a location in memory at which one or more in-memory configuration state registers are stored. The control is used to access an in-memory configuration state register of the one or more in-memory configuration state registers. The control may be a configuration state register in which a base address specifying the location in memory is included.
    Type: Grant
    Filed: November 14, 2017
    Date of Patent: June 30, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael K. Gschwind, Valentina Salapura
  • Patent number: 10635602
    Abstract: Address translation of a base address prior to receiving a storage reference to use the address. A determination is made that an address has been obtained that is to be used as a base address for a memory location at which one or more in-memory configuration state registers are stored. Based on the determining, the address is translated into another address, and the translating is performed prior to receiving a storage reference to use the base address.
    Type: Grant
    Filed: November 14, 2017
    Date of Patent: April 28, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael K. Gschwind, Valentina Salapura
  • Patent number: 10552070
    Abstract: Grouping of memory-based configuration state registers based on execution environment. A first set of configuration state registers is assigned to one memory region corresponding to a first execution environment, and a second set of configuration state registers is assigned to another memory region corresponding to a second execution environment. The first set of configuration state registers is separate from the second set of configuration state registers.
    Type: Grant
    Filed: November 14, 2017
    Date of Patent: February 4, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael K. Gschwind, Valentina Salapura
  • Patent number: 10474822
    Abstract: Infection by viruses and rootkits from data memory devices, data messages and data operations are rendered impossible by construction for the Simultaneous Multi-Processor (SiMulPro) cores, core modules, Programmable Execution Modules (PEM), PEM Arrays, STAR messaging protocol implementations, integrated circuits (referred to as chips herein), and systems composed of these components. Greatly improved energy efficiency is disclosed. A system implementation of an Application Specific Integrated Circuit (ASIC) communicating with a DRAM controller interacting with a DRAM array is presented with this resistance to virus and rootkit infection, and simultaneously capable of 1 Teraflop (Tflop) FP16, 1 TFlop FP32 and 1Tflop FP64 performance while accessing 1 Tbyte of DRAM with a power budget comparable to today's desktop or notebook computers accessing 8 Gbytes of DRAM.
    Type: Grant
    Filed: October 8, 2018
    Date of Patent: November 12, 2019
    Assignee: QSigma, Inc.
    Inventor: Earle Jennings
  • Patent number: 10198174
    Abstract: Disclosed is a method of managing a memory of an electronic device, including: dividing a physical memory into one or more regions including consecutive pages; when there is a memory allocation request of a process or an operating system, allocating a physical memory space to a region including a free page; and configuring a domain by collecting one or more regions having the same characteristic among the regions, to which the memory is allocated.
    Type: Grant
    Filed: June 3, 2016
    Date of Patent: February 5, 2019
    Assignees: Samsung Electronics Co., Ltd., Sungkyunkwan University Research & Business Foundation
    Inventors: Jin-Soo Kim, Jinkyu Jeong
  • Patent number: 10044617
    Abstract: In order to enable dynamic scaling of network services at the edge, novel systems and methods are provided to enable addition of add new nodes or removal of existing nodes while retaining the affinity of the flows through the stateful services. The methods provide a cluster of network nodes that can be dynamically resized to handle and process network traffic that utilizes stateful network services. The existing traffic flows through the edge continue to function during and after the changes to membership of the cluster. All nodes in the cluster operate in active-active mode, i.e., they are receiving and processing traffic flows, thereby maximizing the utilization of the available processing power.
    Type: Grant
    Filed: November 14, 2014
    Date of Patent: August 7, 2018
    Assignee: NICIRA, INC.
    Inventors: Mike Parsa, Jayant Jain, Xinhua Hong, Anirban Sengupta, Kai-Wei Fan
  • Patent number: 9977675
    Abstract: A graphics processing unit core 26 includes a plurality of processing pipelines 38, 40, 42, 44. A program instruction of a thread of program instructions being executed by a processing pipeline includes a next-instruction-type field 36 indicating an instruction type of a next program instruction following the current program instruction within the processing thread concerned. This next-instruction-type field is used to control selection of to which processing pipeline the next instruction is issued before that next instruction has been fetched and decoded. The next-instruction-type field may be passed along the processing pipeline as the least significant four bits within a program counter value associated with a current program instruction 32. The next-instruction-type field may also be used to control the forwarding of thread state variables between processing pipelines when a thread migrates between processing pipelines prior to the next program instruction being fetched or decoded.
    Type: Grant
    Filed: September 1, 2011
    Date of Patent: May 22, 2018
    Assignee: ARM Limited
    Inventor: Jorn Nystad
  • Patent number: 9870267
    Abstract: Methods and apparatus to provide virtualized vector processing are disclosed. In one embodiment, a processor includes a decode unit to decode a first instruction into a decoded first instruction and a second instruction into a decoded second instruction, and an execution unit to: execute the decoded first instruction to cause allocation of a first portion of one or more operations corresponding to a virtual vector request to a first processor core, and generation of a first signal corresponding to a second portion of the one or more operations to cause allocation of the second portion to a second processor core, and execute the decoded second instruction to cause a first computational result corresponding to the first portion of the one or more operations and a second computational result corresponding to the second portion of the one or more operations to be aggregated and stored to a memory location.
    Type: Grant
    Filed: March 22, 2006
    Date of Patent: January 16, 2018
    Assignee: Intel Corporation
    Inventors: Anthony Nguyen, Engin Ipek, Victor Lee, Daehyun Kim, Mikhail Smelyanskiy
  • Patent number: 9411662
    Abstract: A data processing apparatus comprises processing circuitry arranged to process processing threads using resources accessible to the processing circuitry. A pipeline is provided for handling at least two pending threads awaiting processing by the processing circuitry. The pipeline includes at least one resource-requesting pipeline stage for requesting access to resources for the pending threads. A priority controller controls priority levels of the pending threads. The priority levels define a priority with which pending threads are granted access to resources. When a pending thread reaches a final pipeline stage, if the request resources are not yet available then the priority level of that thread is raised selectively and the thread is returned to a first pipeline stage of the pipeline. If the requested resources are available then the thread is forwarded from the pipeline.
    Type: Grant
    Filed: July 16, 2013
    Date of Patent: August 9, 2016
    Assignee: ARM Limited
    Inventors: Nebojsa Makljenovic, Edvard Fielding, Andreas Due Engh-Halstvedt
  • Patent number: 9383931
    Abstract: An instruction is provided to establish various operational parameters for an adapter. These parameters include adapter interruption parameters, input/output address translation parameters, resetting error indications, setting measurement parameters, and setting an interception control, as examples. The instruction specifies a function information block, which is a program representation of a device table entry used by the adapter, to be used in certain situations in establishing the parameters. A store instruction is also provided that stores the current contents of the function information block.
    Type: Grant
    Filed: May 2, 2012
    Date of Patent: July 5, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Craddock, Mark S. Farrell, Beth A. Glendening, Thomas A. Gregg, Dan F. Greiner, Gustav E. Sittmann, III, Peter K. Szwed
  • Patent number: 9134720
    Abstract: The present invention provides techniques for encapsulating device-level embedded logic into user-defined instructions using configuration software. More specifically, the disclosed embodiments enable add-on instructions for device configuration embedded logic. Programming interfaces specific to an application or device may be combined into a single instruction as a reusable Macro component that may be reused in the same or different applications or devices.
    Type: Grant
    Filed: September 30, 2010
    Date of Patent: September 15, 2015
    Assignee: ROCKWELL AUTOMATION TECHNOLOGIES, INC.
    Inventors: Harsh Shah, Gregory A. Majcher, Jian Feng, Qing Jia, Tao Song, Zhen Wei, James Edward Joe
  • Patent number: 9122465
    Abstract: A method and circuit arrangement utilize a programmable microcode unit that is capable of being programmed via software to modify the instruction sequences output by the microcode unit in response to microcode instructions issued to the microcode unit. Multiple instruction sequences may be stored in different partitions defined in one or more rewriteable memories such that different instruction sequences may be output for different instances of a microcode instruction executing in different, concurrently-executing instruction streams.
    Type: Grant
    Filed: December 6, 2011
    Date of Patent: September 1, 2015
    Assignee: International Business Machines Corporation
    Inventors: Paul E. Schardt, Robert A. Shearer, Matthew R. Tubbs
  • Patent number: 8862839
    Abstract: A storage system which has flash memories constituting a storage area and a function of placing and handling the flash memories in on-line mode and off-line mode, and which stores and manages management information of the flash memories in on-line mode. The storage system includes: when some or all of flash memory in on-line mode is placed in off-line mode, creating a management area in off-line mode in the flash memories by moving existing data in an area used as the management area to an area other than the management area; writing the management information of the flash memories to the created management area; and placing the flash memories in off-line mode.
    Type: Grant
    Filed: May 8, 2012
    Date of Patent: October 14, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Masayasu Asano, Hiroshi Nasu, Masayuki Yamamoto, Nobuhiro Maki
  • Patent number: 8856457
    Abstract: In a system including a plurality of CPU units having a cache memory of different capacity each other and a system controller that connects to the plurality of CPUs and controls cache synchronization, the system controller includes a cache synchronization unit which monitors an address contention between a preceding request and a subsequent request and a setting unit which sets different monitoring range of the contention between the preceding request and the subsequent request for each capacity of the cache memory in each of the CPU units.
    Type: Grant
    Filed: November 27, 2012
    Date of Patent: October 7, 2014
    Assignee: Fujitsu Limited
    Inventors: Yuuji Konno, Hiroshi Murakami
  • Patent number: 8793689
    Abstract: A redundant multithreading processor is presented. In one embodiment, the processor performs execution of a thread and its duplicate thread in parallel and determines, when in a redundant multithreading mode, whether or not to synchronize an operation of the thread and an operation of the duplicate thread.
    Type: Grant
    Filed: June 9, 2010
    Date of Patent: July 29, 2014
    Assignee: Intel Corporation
    Inventors: Glenn J. Hinton, Steven E. Raasch, Avinash Sodani, Sebastien Hily, John G. Holm, Ronak Singhal, Deborah T. Marr
  • Patent number: 8418156
    Abstract: Generally, the present disclosure provides systems and methods to generate a two-stage commit (TSC) region which has two separate commit stages. Frequently executed code may be identified and combined for the TSC region. Binary optimization operations may be performed on the TSC region to enable the code to run more efficiently by, for example, reordering load and store instructions. In the first stage, load operations in the region may be committed atomically and in the second stage, store operations in the region may be committed atomically.
    Type: Grant
    Filed: December 16, 2009
    Date of Patent: April 9, 2013
    Assignee: Intel Corporation
    Inventors: Cheng Wang, Youfeng Wu
  • Patent number: 8291503
    Abstract: Described is a technology for preloading modules, such as modules that show clinical/medical data maintained at a service, so as to reduce a user's wait time to use a module. The modules for which a user is authenticated are preloaded according to a loading order that is based upon the user's historical usage data. If a user interacts to use a selected module that is not yet loaded, the selected module may be loaded immediately, independent of the order. A background thread preloads the modules according to the order. A normal thread loads the selected module, unless already being preloaded by the background thread; in either situation the loading thread's priority may be temporarily increased to expedite loading. The historical data may be in the form of weight values associated with the modules, with the weight values adjusted based upon module usage.
    Type: Grant
    Filed: June 5, 2009
    Date of Patent: October 16, 2012
    Assignee: Microsoft Corporation
    Inventor: Zeeshan Hamid
  • Patent number: 8209520
    Abstract: An apparatus for executing fixed width instructions in a multiple execution unit system has a device for fetching instructions from a memory, and a decoder for decoding each fetched instruction in turn. A determination is made as to whether each decoded instruction includes a portion to fetch a locally stored instruction from a local store. If it does, the locally stored instruction is fetched and locally stored portion are executed.
    Type: Grant
    Filed: March 20, 2007
    Date of Patent: June 26, 2012
    Assignee: Imagination Technologies Limited
    Inventor: Andrew Webber
  • Patent number: 7954114
    Abstract: A firmware socket module is deployed on a reconfigurable logic device, wherein the firmware socket module is configured to provide both commands and target data to an entry point in a data processing pipeline, wherein each command defines a data processing operation that is to be performed by the data processing pipeline, and wherein the target data corresponds to the data upon which the data processing pipeline performs its commanded data processing operation. Also, the firmware socket module may be configured to (1) access an external input descriptor pool buffer that defines an order in which commands and target data are to be provided to the data processing pipeline, and (2) transfer the commands and target data from an external memory to the data processing pipeline in accordance with the defined order.
    Type: Grant
    Filed: January 26, 2006
    Date of Patent: May 31, 2011
    Assignees: Exegy Incorporated, Washington University
    Inventors: Roger D. Chamberlain, E. F. Berkley Shands, Benjamin C. Brodie, Michael Henrichs, Jason R. White
  • Publication number: 20100313002
    Abstract: Described is a technology for preloading modules, such as modules that show clinical/medical data maintained at a service, so as to reduce a user's wait time to use a module. The modules for which a user is authenticated are preloaded according to a loading order that is based upon the user's historical usage data. If a user interacts to use a selected module that is not yet loaded, the selected module may be loaded immediately, independent of the order. A background thread preloads the modules according to the order. A normal thread loads the selected module, unless already being preloaded by the background thread; in either situation the loading thread's priority may be temporarily increased to expedite loading. The historical data may be in the form of weight values associated with the modules, with the weight values adjusted based upon module usage.
    Type: Application
    Filed: June 5, 2009
    Publication date: December 9, 2010
    Applicant: Microsoft Corporation
    Inventor: Zeeshan Hamid
  • Patent number: 7782844
    Abstract: The present invention provides a method and apparatus for detecting and decoding data. The method comprises: receiving a set of data signals from an external data source; detecting a size of said received set of data signals; decoding said received set of data signals; extracting a destination address from said set of data signals; comparing said destination address extracted from said data signals to a known data value; determining whether said received data signals should be received by a host circuitry based upon said comparison of said destination address extracted from said data signals to a known data value; generating at least one status signal alerting said host circuitry of said determination that said received data signals should be received by said host circuitry; and waking up said host circuitry upon a determination that said received set of data is addressed to said host circuitry.
    Type: Grant
    Filed: January 5, 1999
    Date of Patent: August 24, 2010
    Assignee: GlobalFoundries, Inc.
    Inventor: David W. Smith
  • Publication number: 20100211758
    Abstract: A microprocessor that can perform sequential processing in data array unit includes: a load store unit that loads, when a fetched instruction is a load instruction for data, a data sequence including designated data from a data memory in memory width unit and specifies, based on an analysis result of the instruction, data scheduled to be designated in a load instruction in future; and a data temporary storage unit that stores use-scheduled data as the data specified by the load store unit.
    Type: Application
    Filed: December 29, 2009
    Publication date: August 19, 2010
    Applicant: KABUSHIKI KAISHA TOSHIBA
    Inventors: Masato Sumiyoshi, Takashi Miyamori, Shunichi Ishiwata, Katsuyuki Kimura, Takahisa Wada, Keiri Nakanishi, Yasuki Tanabe, Ryuji Hada
  • Patent number: 7725698
    Abstract: An operation apparatus includes a plurality of operation device units; a configuration memory storing setting information provided for each predetermined state of the plurality of operation device units; and a sequencer controlling the plurality of operation device units by outputting transition destination addresses designating relevant information from configuration information comprising the setting information provided for each state of the operation device units stored in the configuration memory, wherein the sequencer carries out operation based on task information previously loaded and a change-over condition signal output from the plurality of operation device units, and generates the transition destination address to output to the configuration memory.
    Type: Grant
    Filed: January 26, 2005
    Date of Patent: May 25, 2010
    Assignee: Fujitsu Limited
    Inventors: Miyoshi Saito, Hisanori Fujisawa
  • Patent number: 7640418
    Abstract: A microprocessor memory architecture including a read-only memory (ROM) with programmed microcode and a random access memory (RAM) capable of storing microcode and one or more data bits used for the selection of corresponding ROM or RAM microcode for execution. A multiplexer receives input signals from both the ROM microcode and RAM microcode, and a control signal which is one or more RAM data bits is used to select from the RAM or ROM microcode inputs for further execution by the microprocessor.
    Type: Grant
    Filed: August 9, 2004
    Date of Patent: December 29, 2009
    Assignee: Broadcom Corporation
    Inventors: Sherman Lee, Vivian Y. Chou, John H. Lin
  • Publication number: 20090228693
    Abstract: An improved architectural approach for implementation of a microarchitecture for a low power, small footprint microcoded processor for use in packet switched networks in software defined radio MANeTs. A plurality of on-board CPU caches and a system of virtual memory allows the microprocessor to employ a much larger program size, up to 64k words or more, given the size and power footprint of the microprocessor.
    Type: Application
    Filed: May 22, 2007
    Publication date: September 10, 2009
    Inventors: Steven E. Koenck, John K. Gee
  • Patent number: 7493478
    Abstract: A method and system are disclosed for saving soft state information, which is non-critical for executing a process in a processor, upon a receipt of a process interrupt by the processor. The soft state is transmitted to a memory associated with the processor via a memory interface. Preferably, the soft state is transmitted within the processor to the memory interface via a scan-chain pathway within the processor, which allows functional data pathways to remain unobstructed by the storage of the soft state. Thereafter, the stored soft state can be restored from memory when the process is again executed.
    Type: Grant
    Filed: December 5, 2002
    Date of Patent: February 17, 2009
    Assignee: International Business Machines Corporation
    Inventors: Ravi Kumar Arimilli, Robert Alan Cargnoni, Guy Lynn Guthrie, William John Starke
  • Patent number: 7472051
    Abstract: A microcontroller comprising a central processing unit and a further fault processing unit suitable for performing validation of operations of said central processing unit. The further fault processing unit is external and different with respect to said central processing unit and said further fault processing unit comprises at least a module for performing validation of operations of said central processing unit and one or more modules suitable for performing validation of operations of other functional parts of said microcontroller. Validation of operations of said central processing unit is performed by using one or more of the following fault tolerance techniques: data shadowing; code&flow signature; data processing legality check; addressing legality check; ALU concurrent integrity checking; concurrent mode/interrupt check.
    Type: Grant
    Filed: July 9, 2004
    Date of Patent: December 30, 2008
    Assignee: Yogitech Spa
    Inventors: Riccardo Mariani, Silvano Motto, Monia Chiavacci
  • Patent number: 7447880
    Abstract: A processor comprises an arithmetic unit for processing operands, a register memory for storing operands with a register memory space and a register memory configuration unit. The register memory configuration unit is designed to configure the register memory such that memory space in the register memory is assigned to operands, and that memory space in the register memory that is not assigned to operands will be made available for other data than the operands. Thereby, on the one hand the number of operand transfers between an external bus and the arithmetic unit is decreased, since as many operands as possible are stored in the register memory, while on the other hand, when part of the register memory is not needed for storage of operands, this part will not be idle but made available for other data, so that the memory resources of the processors are always utilized optimally.
    Type: Grant
    Filed: November 25, 2003
    Date of Patent: November 4, 2008
    Assignee: Infineon Technologies AG
    Inventors: Astrid Elbe, Norbert Janssen
  • Patent number: 7418583
    Abstract: A detector detects at least one kind of dependence in address between instructions executed by at least a processor, the detector being adopted to detect a possibility of presence of the at least one kind of dependence, wherein if the at least one kind of dependence is present in fact, then the detector detects a possibility of presence of the at least one kind of dependence, and if the at least one kind of dependence is not present in fact, then the detector may detect a pseudo presence of the at least one kind of dependence. The detector has an execution history storing unit with a plurality of entries and an address converter for converting an address of a memory access instruction into an entry number, where different addresses may be converted into entry numbers that are the same.
    Type: Grant
    Filed: May 11, 2005
    Date of Patent: August 26, 2008
    Assignee: NEC Corporation
    Inventors: Atsufumi Shibayama, Satoshi Matsushita, Sunao Torii, Naoki Nishi
  • Patent number: 7398376
    Abstract: Ordering instructions for specifying the execution order of other instructions improve throughput in a pipelined multiprocessor. Hardware, in conjunction with compiler directives, allows memory write operations local to a CPU to occur in an arbitrary order, and places constraints on shared memory operation to occur in a specified order. Multiple sets of instructions are provided in which order of execution of the instructions is maintained through the use of CPU registers, write buffers in conjunction with assignment of sequence numbers to the instruction, or a hierarchical ordering system. The system ensures that an earlier designated instruction has reach a specified state of execution prior to a latter instruction reaching a specified state of execution. The ordering of operations allows memory operations local to a CPU to occur in conjunction with other memory operations that are not affected by such execution.
    Type: Grant
    Filed: March 23, 2001
    Date of Patent: July 8, 2008
    Assignee: International Business Machines Corporation
    Inventor: Paul E. McKenney
  • Patent number: 7386710
    Abstract: Hardware and software techniques for interrupt detection and response in a scalable pipelined array processor environment are described. Utilizing these techniques, a sequential program execution model with interrupts can be maintained in a highly parallel scalable pipelined array processing containing multiple processing elements (PEs) and distributed memories and register files. When an interrupt occurs, interface signals are provided to all PEs to support independent interrupt operations in each PE dependent upon the local PE instruction sequence prior to the interrupt. Processing/element exception interrupts are supported and low latency interrupt processing is also provided for embedded systems where real time signal processing is required. Further, a hierarchical interrupt structure is used allowing a generalized debug approach using debug interrupts and a dynamic debug monitor mechanism.
    Type: Grant
    Filed: September 1, 2004
    Date of Patent: June 10, 2008
    Assignee: Altera Corporation
    Inventors: Edwin Franklin Barry, Patrick R. Marchand, Gerald George Pechanek, Larry D. Larsen
  • Patent number: 7254689
    Abstract: In an embodiment of the present invention, the computational efficiency of decoding of block-sorted compressed data is improved by ensuring that more than one set of operations corresponding to a plurality of paths through a mapping array T are being handled by a processor. This sequence of operations, including instructions from the plurality of sets of operations, ensures that there is another operation in the pipeline if a cache miss on any given lookup operation in the mapping array results in a slower main memory access. In this way, the processor utilization is improved. While the sets of operations in the sequence of operations are independent of another other, there will be an overlap of a plurality of the main memory access operations due to the long time required for main memory access.
    Type: Grant
    Filed: July 15, 2004
    Date of Patent: August 7, 2007
    Assignee: Google Inc.
    Inventors: Sean M. Dorward, Sean Quinlan, Michael Burrows
  • Patent number: 7191314
    Abstract: A reconfigurable control structure for CPUs comprises a first control unit with a first basic instruction set associated therewith, and a second control unit, with a second instruction set associated therewith. Associated with the second control unit is at least one programming element for rendering the second instruction set selectively modifiable. Also present is at least one circuit element for supplying instruction codes to be executed to the first control unit and to the second control unit, so that each instruction can be executed under the control of at least one between the first control unit or the second control unit according to whether the instruction is comprised in the first basic instruction set and/or in the second selectively modifiable instruction set.
    Type: Grant
    Filed: October 9, 2003
    Date of Patent: March 13, 2007
    Assignee: STMicroelectronics S.r.l.
    Inventors: Francesco Pappalardo, Agatino Pennisi
  • Patent number: 7124280
    Abstract: An execution control apparatus of a data driven information processor includes: an instruction decoder that outputs the a number of inputs of an instruction; a waiting data storage region that stores N (N?2) waiting data and respective data valid flags in one address; a constant storage that stores constants and a constant valid flag; a constant readout unit that reads out a constant and a constant valid flag from the constant storage with the node number of an input packet as the address; a unit that calculates a hash address and selects a process for data waiting depending upon a combination of a data valid flag, a constant valid flag, and the number of instuction inputs; and a unit that performs a waiting process in response to a select signal.
    Type: Grant
    Filed: April 13, 2001
    Date of Patent: October 17, 2006
    Assignee: Sharp Kabushiki Kaisha
    Inventors: Shingo Kamitani, Kouichi Hatakeyama
  • Patent number: 7103759
    Abstract: Methods and apparatus for creating microcode-implemented peripheral devices for a microcontroller core formed in a monolithic integrated circuit. The microcontroller core has a control store for storing microcode instructions; execution circuitry operable to execute microcode instructions from the control store; and means for loading a suite of one or more microcode-device modules defining an optional peripheral device, the optional peripheral device being implemented by microcode instructions executed by the execution circuitry in accordance with the definition provided by the microcode-device modules.
    Type: Grant
    Filed: October 28, 1999
    Date of Patent: September 5, 2006
    Assignee: Imsys Technologies AB
    Inventor: Sven Stefan Blixt
  • Patent number: 7103758
    Abstract: A microcontroller has a memory storing a program with an instruction that causes the microcontroller's central processing unit to enter a standby mode, in which data output from the memory is halted. The standby mode is exited by input of an interrupt. The microcontroller also has a control circuit that, by storing the next few program instructions internally before placing the memory in standby, or by delaying the interrupt signal, provides extra time for memory operation to stabilize on exit from the standby mode. Malfunctions on recovery from standby are thereby prevented, and the microcontroller can conserve power by placing the memory in a deep standby mode with a comparatively long recovery time.
    Type: Grant
    Filed: January 15, 2002
    Date of Patent: September 5, 2006
    Assignee: Oki Electric Industry Co., Ltd.
    Inventor: Toshinori Goto
  • Patent number: 7000098
    Abstract: In one embodiment, a method is provided. The method of this embodiment includes generating, by a processor that includes a plurality of processing engines capable of executing program instructions, a packet. The method of this embodiment also includes transmitting the packet to at least one of the processing engines. Additionally, the method of this embodiment also includes, in response, at least in part to receipt of the packet by the at least one of the processing engines, modifying at least in part, by the at least one of the processing engines, a set of program instructions that the at least one processing engine is capable of executing. Of course, many modifications, variations, and alternatives are possible without departing from this embodiment.
    Type: Grant
    Filed: October 24, 2002
    Date of Patent: February 14, 2006
    Assignee: Intel Corporation
    Inventors: Aaron R. Kunze, Erik J. Johnson, David M. Putzolu
  • Patent number: 6986027
    Abstract: This invention is a method and system for hybrid prediction of load addresses and/or values. The new scheme for value prediction provides prediction based on last values and strides, as well as context prediction, without the use of a sophisticated switching scheme between several predictors. The system collects patterns of deltas of subsequent values instead of the values itself in a first table. Thus, a last value prediction can be achieved by predicting a ‘pattern’ of just one stride equal to zero. A stride predictor uses a pattern of one constant stride. And a certain pattern of values is modeled by recording the pattern of deltas between the values and adding the deltas to the last value. The switching scheme is inherently included in the system itself and operates basically by immediate evaluation of counters in the pattern history table.
    Type: Grant
    Filed: May 24, 2001
    Date of Patent: January 10, 2006
    Assignee: International Business Machines Corporation
    Inventors: Harry Stefan Barowski, Rolf Hilgendorf
  • Patent number: 6925554
    Abstract: An apparatus comprising a microcontroller configured to (i) send or receive data over one or more data lines when in a first mode and (ii) be programmed through said data lines when in a second mode.
    Type: Grant
    Filed: October 9, 2001
    Date of Patent: August 2, 2005
    Assignee: Cypress Semiconductor Corp.
    Inventors: David G. Wright, Timothy J. Williams, Jeffrey D. Wick
  • Patent number: 6920551
    Abstract: A programmable integrated circuit can be designed to emulate, on demand, one of several commonly used microprocessors. It contains a configurable instruction processing unit and a superset datapath unit. The instruction processing unit further contains a configurable microcode unit and a non-configurable sequencing unit. The programmable integrated circuit can be programmed so that a microcode compatible with a target microprocessor is installed in the configurable microcode unit. The superset datapath unit is a superset of the datapath elements of all the target microprocessors.
    Type: Grant
    Filed: March 19, 2004
    Date of Patent: July 19, 2005
    Assignee: Xilinx, Inc.
    Inventor: Eric J. Crabill
  • Patent number: 6915412
    Abstract: A high-performance, superscalar-based computer system with out-of-order instruction execution for enhanced resource utilization and performance throughput. The computer system fetches a plurality of fixed length instructions with a specified, sequential program order (in-order). The computer system includes an instruction execution unit including a register file, a plurality of functional units, and an instruction control unit for examining the instructions and scheduling the instructions for out-of-order execution by the functional units. The register file includes a set of temporary data registers that are utilized by the instruction execution control unit to receive data results generated by the functional units. The data results of each executed instruction are stored in the temporary data registers until all prior instructions have been executed, thereby retiring the executed instruction in-order.
    Type: Grant
    Filed: October 30, 2002
    Date of Patent: July 5, 2005
    Assignee: Seiko Epson Corporation
    Inventors: Le Trong Nguyen, Derek J. Lentz, Yoshiyuki Miyayama, Sanjiv Garg, Yasuaki Hagiwara, Johannes Wang, Te-Li Lau, Sze-Shun Wang, Quang H. Trang
  • Patent number: 6904511
    Abstract: Techniques for thread-based register file access by a multithreaded processor are disclosed. The multithreaded processor determines a thread identifier associated with a particular processor thread, and utilizes at least a portion of the thread identifier to select a particular portion of an associated register file to be accessed by the corresponding processor thread. In an illustrative embodiment, the register file is divided into even and odd portions, with a least significant bit or other portion of the thread identifier being used to select either the even or the odd portion for use by a given processor thread. The thread-based register file selection may be utilized in conjunction with token triggered threading and instruction pipelining. Advantageously, the invention reduces register file port requirements and thus processor power consumption, while maintaining desired levels of concurrency.
    Type: Grant
    Filed: October 11, 2002
    Date of Patent: June 7, 2005
    Assignee: Sandbridge Technologies, Inc.
    Inventors: Erdem Hokenek, Mayan Moudgill, C. John Glossner
  • Patent number: 6880074
    Abstract: Processor overhead is reduced and processor performance, particularly processing speed and power savings, is improved, allowing real-time processor restarts, by skipping operational codes (opcodes) singly or in groups in accordance with one or more execution bits set during post-processing in opcodes preceding opcodes to be skipped. Thus portions of an application program which consume excessive power or are unsupported in particular operating environments can be easily and selectively de-activate while maintaining the integrity of the applications program. Local or cache memory is also effectively expanded and processor performance improved by eliminating opcodes from local or cache memory which will not be called.
    Type: Grant
    Filed: December 22, 2000
    Date of Patent: April 12, 2005
    Assignee: International Business Machines Corporation
    Inventors: Patrick E. Perry, Sebastian T. Ventrone
  • Patent number: 6865669
    Abstract: Methods for optimizing of memory resources during an initialization routine of a computer system which prepares the computer system for loading of an operating system is disclosed. One exemplary method includes receiving a request from a system BIOS to locate an amount of conventional memory where the amount of conventional memory accommodates at least a decompressed version of data located in an option ROM BIOS. Then the amount of conventional memory requested by the system BIOS is determined. If the amount of conventional memory requested by the system BIOS is not available, the method continues and system BIOS data located within the conventional memory is read where the system BIOS data occupies at least the amount of conventional memory requested by the system BIOS. After the system BIOS data is read, the system BIOS data is written from the conventional memory to an extended memory, and the system BIOS data located in the conventional memory that has been written into the extended memory is deleted.
    Type: Grant
    Filed: July 20, 2001
    Date of Patent: March 8, 2005
    Assignee: Adaptec, Inc.
    Inventor: Fadi A. Mahmoud
  • Patent number: 6862676
    Abstract: A superscalar processor having a content addressable memory structure that transmits a first and second output signal is presented. The superscalar processor performs out of order processing on an instruction set. From the first output signal, the dependencies between currently fetched instructions of the instruction set and previous in-flight instructions can be determined and used to generate a dependency matrix for all in-flight instructions. From the second output signal, the physical register addresses of the data required to execute an instruction, once the dependencies have been removed, may be determined.
    Type: Grant
    Filed: January 16, 2001
    Date of Patent: March 1, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Micah C. Knapp, Poonacha P. Kongetira, Marc E. Lamere, Julie M. Staraitis
  • Patent number: 6854051
    Abstract: A pipelined, simultaneous and redundantly threaded (“SRT”) processor comprising, among other components, load/store units configured to perform load and store operations to or from data locations such as a data cache and data registers and a cycle counter configured to keep a running count of processor clock cycles. The processor is configured to detect transient faults during program execution by executing instructions in at least two redundant copies of a program thread and wherein false errors caused by incorrectly replicating cycle count values in the redundant program threads are avoided by implementing a cycle count queue for storing the actual values fetched by read cycle count instructions in the first program thread. The load/store units then access the cycle count queue and not the cycle counter to fetch cycle count values in response to read cycle count instructions in the second program thread.
    Type: Grant
    Filed: April 19, 2001
    Date of Patent: February 8, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Shubhendu S. Mukherjee
  • Patent number: 6842848
    Abstract: Techniques for token triggered multithreading in a multithreaded processor are disclosed. An instruction issuance sequence for a plurality of threads of the multithreaded processor is controlled by associating with each of the threads at least one register which stores a value identifying a next thread to be permitted to issue one or more instructions, and utilizing the stored value to control the instruction issuance sequence. For example, each of a plurality of hardware thread units of the multithreaded processor may include a corresponding local register updatable by that hardware thread unit, with the local register for a given one of the hardware thread units storing a value identifying the next thread to be permitted to issue one or more instructions after the given hardware thread unit has issued one or more instructions. A global register arrangement may also or alternatively be used.
    Type: Grant
    Filed: October 11, 2002
    Date of Patent: January 11, 2005
    Assignee: Sandbridge Technologies, Inc.
    Inventors: Erdem Hokenek, Mayan Moudgill, C. John Glossner