Specialized Instruction Processing In Support Of Testing, Debugging, Emulation Patents (Class 712/227)
  • Patent number: 9377507
    Abstract: A processor device with debug capabilities has a central processing unit, debug circuitry including a trace module and an external interface, wherein the trace module generates a trace stream including information about executed instructions, wherein the trace stream is output through the external interface, and wherein the trace module is further operable to detect a trigger signal and upon detection to insert a trace packet into the generated trace stream.
    Type: Grant
    Filed: May 6, 2013
    Date of Patent: June 28, 2016
    Assignee: MICROCHIP TECHNOLOGY INCORPORATED
    Inventors: Kevin Kilzer, Justin Milks, Sundar Balasubramanian, Thomas Edward Perme, Kushala Javagal
  • Patent number: 9367316
    Abstract: Embodiments of the invention relate to implementing run-time instrumentation indirect sampling by instruction operation code. An aspect of the invention includes reading sample-point instruction operation codes from a sample-point instruction array, and comparing, by a processor, the sample-point instruction operation codes to an operation code of an instruction from an instruction stream executing on the processor. A sample point is recognized upon execution of the instruction with the operation code matching one of the sample-point instruction operation codes. The run-time instrumentation information is obtained from the sample point. The run-time instrumentation information is stored in a run-time instrumentation program buffer as a reporting group.
    Type: Grant
    Filed: March 16, 2012
    Date of Patent: June 14, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jonathan D. Bradbury, Charles W. Gainey, Jr., Michael K. Gschwind, Eric M. Schwarz
  • Patent number: 9361208
    Abstract: The present invention enables an automated testing of computer software applications for efficiently determining the quality and/or performance characteristics of the computer software applications and assists testing designers when determining software application scalability and performance under load. Embodiments of the present invention may be implemented to, for example, determine how many test servers are required to test computer software applications for correct function under the load of many concurrently active users, and periodically test and/or monitor computer software applications for quality control and/or other purposes. Additionally, embodiments of the present invention may be implemented to, for example calibrate a set of one or more test servers for testing a computer software application.
    Type: Grant
    Filed: July 1, 2015
    Date of Patent: June 7, 2016
    Assignee: APPVANCE INC.
    Inventor: Frank Cohen
  • Patent number: 9348732
    Abstract: A method and apparatus of a device that captures a stackshot of an executing process is described. In an exemplary embodiment, the device detects an interrupt of the process occurring during the execution of the process, where the process execution can be in a kernel space and user space, and the interrupt occurs during the user space. The device further determines whether to capture a stackshot during the interrupt using a penalty function. If the stackshot is to be captured, the device captures the stackshot and saves the stackshot.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 24, 2016
    Assignee: Apple Inc.
    Inventors: Kevin James Van Vechten, Shantonu Sen, Craig M. Federighi, Guy L. Tribble
  • Patent number: 9330028
    Abstract: A processor includes a front end, an execution pipeline, and a binary translator. The front end includes logic to receive an instruction and to dispatch the instruction to a binary translator. The binary translator includes logic to determine whether the instruction includes a control-flow instruction, identify a source address of the instruction, identify a target address of the instruction, determine whether the target address is a known destination based upon the source address, and determine whether to route the instruction to the execution pipeline based upon the determination whether the target address is a known destination based upon the source address. The target address includes an address to which execution would indirectly branch upon execution of the instruction.
    Type: Grant
    Filed: March 27, 2014
    Date of Patent: May 3, 2016
    Assignee: Intel Corporation
    Inventors: Petros Maniatis, Shantanu Gupta, Naveen Kumar
  • Patent number: 9322877
    Abstract: An address and command port interface selectively enables JTAG TAP domain operations and Trace domain operations within an IC. The port carries TMS and TDI input and TDO output on a single pin and receives a clock signal on a separate pin. The addressable two pin interface loads and updates instructions and data to the TAP domain within the IC. The instruction or data update operations in multiple ICs occur simultaneously. A process transmits data from an addressed target device to a controller using data frames, each data frame comprising a header bit and data bits. The logic level of the header bit is used to start, continue, and stop the data transmission to the controller. A data and clock signal interface between a controller and multiple target devices provides for each target device to be individually addressed and commanded to perform a JTAG or Trace operation.
    Type: Grant
    Filed: November 12, 2015
    Date of Patent: April 26, 2016
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventor: Lee D. Whetsel
  • Patent number: 9323497
    Abstract: A perform floating-point operation instruction is executed specifying a Test (T) bit of general register 0, if the T bit is ‘1’ the execution sets a condition code value indicating whether a specified conversion function is installed, if the T bit is ‘0’ the execution stores a result of a specified floating-point conversion function in general register 0 and sets a condition code value.
    Type: Grant
    Filed: December 30, 2013
    Date of Patent: April 26, 2016
    Assignee: International Business Machines Corporation
    Inventors: Michel H. T. Hack, Ronald M. Smith, Sr.
  • Patent number: 9281803
    Abstract: A method and a circuit system for actuating a number of modules. The method is carried out using the circuit system, which implements a flexible trigger mechanism.
    Type: Grant
    Filed: March 16, 2011
    Date of Patent: March 8, 2016
    Assignee: ROBERT BOSCH GMBH
    Inventors: Thomas Wagner, Stephen Schmitt, Juergen Hanisch
  • Patent number: 9275429
    Abstract: The techniques described in the disclosure are generally related to gradual, iterative hang recovery for a graphics processing unit (GPU). The techniques described in the disclosure attempt to re-execute instructions of an application in response to a GPU hang, rather than stopping the execution of the application. If the re-execution causes the GPU to hang again, the techniques described in the disclosure cause the GPU to iteratively execute next set of instructions.
    Type: Grant
    Filed: February 17, 2014
    Date of Patent: March 1, 2016
    Assignee: QUALCOMM Incorporated
    Inventors: Srihari Babu Alla, Tarun Reddy Karra, Jonathan Gerald Thomason, Colin Christopher Sharp
  • Patent number: 9201749
    Abstract: A method and apparatus for controlling a processor to execute in a single step mode such that a single instruction from the instruction stream is executed, the processor determines if the single instruction is one of at least one predetermined type of instruction and stores a type indicator in a data storage location and a diagnostic exception is taken after the processor has processed the single instruction. Additionally, a diagnostic operation is performed including accessing the type indicator stored in the data storage location and, when the single instruction was not one of the predetermined type, controlling the processor to continue executing instructions in the single step mode, and, when the single instruction was one of the at least one predetermined type, controlling the processor to exit the single step mode and not execute the next instruction within the instruction stream as a single instruction followed by an exception.
    Type: Grant
    Filed: July 31, 2014
    Date of Patent: December 1, 2015
    Assignee: ARM LIMITED
    Inventors: Michael John Williams, Richard Roy Grisenthwaite
  • Patent number: 9195524
    Abstract: Systems, methods, and other embodiments associated with echo cancellation are described. According to one embodiment, an apparatus includes a plurality of first registers configured to respectively store information related to a performance of a processor and a second register in communication with each of the plurality of first registers. The apparatus also includes logic configured to detect a trigger event; and in response to having detected the trigger event, copy the information related to the performance of the processor respectively in the plurality of first registers into the second register.
    Type: Grant
    Filed: December 6, 2011
    Date of Patent: November 24, 2015
    Assignee: Marvell International Ltd.
    Inventors: Robert Wiesner, Tom Hameenanttila
  • Patent number: 9182990
    Abstract: A system and method for detecting execution of unsupported instructions while testing multiversioned functions within software application code are disclosed. An example method includes annotating a software application's executable binary to distinguish functions that are directed to particular hardware variations. Functions with instructions that are unsupported by a simulated hardware platform variation on which the software application's annotated executable binary will run may then be detected. The contents of the detected functions may be rewritten with trap instructions. At runtime, when executing the software application on the simulated hardware platform variation running on a different physical hardware platform variation, responsive to execution of a function with instructions that are unsupported by the simulated hardware platform, terminating the software application based on the execution of the trap instructions.
    Type: Grant
    Filed: July 1, 2014
    Date of Patent: November 10, 2015
    Assignee: GOOGLE INC.
    Inventors: Sriraman Tallam, Paul Pluzhnikov
  • Patent number: 9183369
    Abstract: A method and system for managing a computer user, comprising initiating a user session for the computer user based on user data stored in one partition on a removable computer readable medium. The user data is associated with a user ID, and the user ID is stored on a second partition of the removable computer readable medium. The user ID is used to identify the user data to the computer user. The computer user is authenticated as being associated with the user data based in part on the user ID. Also described is an article of manufacture for creating a partition on a removable computer readable medium for storing user data and associating it with a second partition storing an associated user ID on the removable computer readable medium.
    Type: Grant
    Filed: September 26, 2008
    Date of Patent: November 10, 2015
    Assignee: Red Hat, Inc.
    Inventor: Kristian H. Kristensen
  • Patent number: 9164821
    Abstract: Arrangements described herein relate to performing diagnostic tracing of an executing application. A trace entry in trace data can be identified, the trace entry comprising a pointer that refers to a memory address. Whether a value that is, or has been, stored at the memory address is an erroneous value can be determined. Responsive to determining that the value that is, or has been, stored at the memory address is an erroneous value, the pointer can be indicated as being a suspicious value.
    Type: Grant
    Filed: December 14, 2012
    Date of Patent: October 20, 2015
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Stephen John Burghard, David J. Harman, Neil W. Leedham, Andrew Wright
  • Patent number: 9128832
    Abstract: Arrangements described herein relate to performing diagnostic tracing of an executing application. A trace entry in trace data can be identified, the trace entry comprising a pointer that refers to a memory address. Whether a value that is, or has been, stored at the memory address is an erroneous value can be determined. Responsive to determining that the value that is, or has been, stored at the memory address is an erroneous value, the pointer can be indicated as being a suspicious value.
    Type: Grant
    Filed: October 14, 2013
    Date of Patent: September 8, 2015
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Stephen John Burghard, David J. Harman, Neil W. Leedham, Andrew Wright
  • Patent number: 9110672
    Abstract: A computer system receives a source code comprising an annotation, wherein the annotation is associated with a portion of the source code and wherein the annotation indicates a first bit-width. The computer system identifies a first data type of the portion of the source code. The computer system receives compatibility information corresponding to the first data type, the compatibility information indicating at least one compatible bit-width of the first data type. The computer system modifies the source code to insert a first code segment.
    Type: Grant
    Filed: November 7, 2013
    Date of Patent: August 18, 2015
    Assignee: International Business Machines Corporation
    Inventors: Madhu B. Ananthapadmanabh, Sakthimurugan Arumugam, Harshavardhana M. Puttamadaiah
  • Patent number: 9104425
    Abstract: Processing circuitry 4 has a plurality of exception states EL0-EL3 for handling exception events, the exception states including a base level exception state EL0 and at least one further level exception state EL1-EL3. Each exception state has a corresponding stack pointer indicating the location within the memory of a corresponding stack data store 35. When the processing circuitry is in the base level exception state EL0, stack pointer selection circuitry 40 selects the base level stack pointer as a current stack pointer indicating a current stack data store for use by the processing circuitry 4. When the processing circuitry 4 is a further exception state, the stack pointer selection circuitry 40 selects either the base level stack pointer or the further level stack pointer corresponding to the current further level exception state as a current stack pointer.
    Type: Grant
    Filed: January 7, 2014
    Date of Patent: August 11, 2015
    Assignee: ARM Limited
    Inventor: Richard Roy Grisenthwaite
  • Patent number: 9098628
    Abstract: An apparatus includes a memory module with a plurality of memory blocks and an address decoder module that decodes one or more address lines of the plurality of memory blocks. An address output of the address decoder module corresponds to each memory block. A BWE module includes a block write enable (“BWE”) signal corresponding to each memory block. Each BWE signal has a block write enable state and a block write disable state. In response to receiving a block write enable control (“BWEC”) signal in a normal use mode, a MUX module passes a corresponding address output of the address decoder module to a write enable input of each memory block. In response to receiving the BWEC signal in a state trace mode, the MUX module passes a corresponding BWE signal to the write enable input of each memory block.
    Type: Grant
    Filed: July 26, 2012
    Date of Patent: August 4, 2015
    Assignee: International Business Machines Corporation
    Inventor: Masahiro Tanaka
  • Patent number: 9069736
    Abstract: A method for performing data processing through a pipeline of components includes receiving a set of training observations, each including partial user feedback relating to error in data output by the pipeline for respective input data. Some pipeline components commit errors for at least some of the input data, contributing to an error in the respective output data. A prediction model models a probability of a pipeline component committing an error, given input data. Model parameters are learned using the training observations. For a new observation which includes input data and, optionally, partial user feedback indicating that an error has occurred in processing the new input data, without specifying which pipeline component(s) contributed to the observed error in the output data, a prediction is made as to which of the pipeline components contributed to the error in the output (if any).
    Type: Grant
    Filed: July 9, 2013
    Date of Patent: June 30, 2015
    Assignee: XEROX CORPORATION
    Inventors: William Michael Darling, Guillaume M. Bouchard, Cedric Archambeau
  • Patent number: 9055306
    Abstract: Embodiments of a method and system for decoding video data are described herein. In various embodiments, a high-compression-ratio codec (such as H.264) is part of the encoding scheme for the video data. Embodiments pre-process control maps that were generated from encoded video data, and generating intermediate control maps comprising information regarding decoding the video data. The control maps include information regarding rearranging the video data to be processed in parallel on multiple pipelines of a graphics processing unit (GPU) so as to optimize the use of the multiple pipelines. In an embodiment, decoding is performed on a frame basis such that each of multiple, distinct decoding operations is performed on an entire frame at one time. In other embodiments, processing of different frames is interleaved.
    Type: Grant
    Filed: August 31, 2006
    Date of Patent: June 9, 2015
    Assignee: ATI Technologies ULC
    Inventors: Alexander Lyashevsky, Jason Yang, Arcot J. Preetham
  • Patent number: 9043580
    Abstract: A microprocessor capable of running both x86 instruction set architecture (ISA) machine language programs and Advanced RISC Machines (ARM) ISA machine language programs. The microprocessor includes a mode indicator that indicates whether the microprocessor is currently fetching instructions of an x86 ISA or ARM ISA machine language program. The microprocessor also includes a plurality of model-specific registers (MSRs) that control aspects of the operation of the microprocessor. When the mode indicator indicates the microprocessor is currently fetching x86 ISA machine language program instructions, each of the plurality of MSRs is accessible via an x86 ISA RDMSR/WRMSR instruction that specifies an address of the MSR. When the mode indicator indicates the microprocessor is currently fetching ARM ISA machine language program instructions, each of the plurality of MSRs is accessible via an ARM ISA MRRC/MCRR instruction that specifies the address of the MSR.
    Type: Grant
    Filed: March 6, 2012
    Date of Patent: May 26, 2015
    Assignee: VIA TECHNOLOGIES, INC.
    Inventors: G. Glenn Henry, Terry Parks, Rodney E. Hooker
  • Patent number: 9043584
    Abstract: A processor receives an instruction operation (OP) code from a verification system. The instruction OP code includes instruction bits and forced event bits. The processor identifies a forced event based upon the forced event bits, which is unrelated to an instruction that corresponds to the instruction bits. In turn, the processor executes the forced event.
    Type: Grant
    Filed: July 26, 2010
    Date of Patent: May 26, 2015
    Assignee: International Business Machines Corporation
    Inventors: Christopher Lee Colletti, Bryan Glen Hickerson, Michael Joseph Schiffli
  • Patent number: 9032190
    Abstract: A leading thread and a trailing thread are executed in parallel. Assuming that no transient fault occurs in each section, a system is speculatively executed in the section, with the leading thread and the trailing thread preferably being assigned to two different cores. At this time, the leading thread and the trailing thread are simultaneously executed, performing a buffering operation on a thread local area without performing a write operation on a shared memory. When the respective execution results of the two threads match each other, the content buffered to the thread local area is committed and written to the shared memory. When the respective execution results of the two threads do not match each other, the leading thread and the trailing thread are rolled back to a preceding commit point and re-executed.
    Type: Grant
    Filed: August 20, 2010
    Date of Patent: May 12, 2015
    Assignee: International Business Machines Corporation
    Inventors: Toshihiko Koju, Takuya Nakaike
  • Publication number: 20150095626
    Abstract: An information processing apparatus includes a rewriting unit and an execution unit. The rewriting unit rewrites a first instruction described at a trace point in a function defined in a program to a second instruction which gives instructions to execute a trace code, and stores the first instruction in a storage unit. The execution unit executes the trace code on the basis of the second instruction at the time of execution at the trace point in the function. If a third instruction which calls the function is included in the trace code, the execution unit replaces, at the time of executing the third instruction, the second instruction at the trace point in the function with the first instruction stored in the storage unit, and performs the function.
    Type: Application
    Filed: September 11, 2014
    Publication date: April 2, 2015
    Inventors: Takashi Nakagawa, Yasutoshi Suzuki, Hiroyuki Yamamoto, Kazuhide Imaeda
  • Patent number: 8984263
    Abstract: An emulation processing method causing a computer including a first and a second processor to execute emulation processing, the emulation processing method includes: calculate a next instruction address next to a received instruction address, and transmit, to the second processor, the calculated instruction address and instruction information read out on the basis of the calculated instruction address, transmit, to the first processor, a first instruction address that is an instruction address included in an execution result of executed processing, and execute processing based on the instruction information received from the first processor, when a second instruction address that is the instruction address received from the first processor is identical to the first instruction address, and read out instruction information on the basis of the first instruction address and execute processing based on the instruction information read out, when the second instruction address is not identical to the first instruct
    Type: Grant
    Filed: October 5, 2011
    Date of Patent: March 17, 2015
    Assignee: Fujitsu Limited
    Inventors: Takashi Nakayama, Kazuyoshi Watanabe
  • Patent number: 8972704
    Abstract: A code section of a computer program to be executed by a computing device includes memory barrier instructions. Where the code section satisfies a threshold, the code section is modified, by enclosing the code section within a transaction that employs hardware transactional memory of the computing device, and removing the memory barrier instructions from the code section. Execution of the code section as has been enclosed within the transaction can be monitored to yield monitoring results. Where the monitoring results satisfy an abort threshold corresponding to excessive aborting of the execution of the code section as has been enclosed within the transaction, the code section is split into code sub-sections, and each code sub-section enclosed within a separate transaction that employs the hardware transactional memory. Splitting the code section sections and enclosing each code sub-section within a separate transaction can decrease occurrence of the code section aborting during execution.
    Type: Grant
    Filed: December 15, 2011
    Date of Patent: March 3, 2015
    Assignee: International Business Machines Corporation
    Inventors: Toshihiko Koju, Takuya Nakaike, Ali Ijaz Sheikh, Harold Wade Cain, III, Maged M. Michael
  • Publication number: 20150058604
    Abstract: A tool for formally verifying forwarding paths in an information pipeline. The tool creates two logic design copies of the pipeline to be verified. The tool retrieves a first and a second instruction, which have previously been proven to compute a mathematically correct result when executed separately. The tool defines driver input functions for issuing instructions to the two logic design copies. In accordance with the driver input functions, the tool issues instructions to the two logic design copies. The tool abstracts data flow of the two logic design copies to isolate forwarding paths for verification. The tool adjusts for latency differences between the first and second logic design copies. The tool checks a register for results, and when results from of two logic design copies become available in the register, the tool verifies the results to conclusively prove the correctness of all states of the information pipeline.
    Type: Application
    Filed: January 9, 2014
    Publication date: February 26, 2015
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Anand B. Arunagiri, UDO KRAUTZ, SUJEET KUMAR, VIRESH PARUTHI
  • Patent number: 8959339
    Abstract: A system comprising a processor adapted to activate multiple security levels for the system and a monitoring device coupled to the processor and employing security rules pertaining to the multiple security levels. The monitoring device restricts usage of the system if the processor activates the security levels in a sequence contrary to the security rules.
    Type: Grant
    Filed: January 30, 2006
    Date of Patent: February 17, 2015
    Assignee: Texas Instruments Incorporated
    Inventor: Gregory R. Conti
  • Publication number: 20150046688
    Abstract: A test instruction sequence generating method for a processor includes classifying registers used for executing test instructions into two register groups, generating a test instruction executed by the processor, amending a register specified in a result value register field of the test instruction to a register of a first register group when a first instruction is specified in an arithmetic type field of the test instruction and a register of a second register group is specified in the result value register field of the test instruction, and further amending a register specified in a input value register field of the test instruction to a register of the second register group when a second instruction is specified in the arithmetic type field of the test instruction and a register of the first register group is specified in the input value register field of the test instruction.
    Type: Application
    Filed: July 2, 2014
    Publication date: February 12, 2015
    Inventor: TAMORU INOUE
  • Patent number: 8954714
    Abstract: An apparatus includes a processor. The processor includes two memories. The first memory stores one set of instructions. The second memory stores another set of instructions that are longer than the set of instructions in the first memory. An instruction in the set of instructions in the first memory is used as a pointer to a corresponding instruction in the set of instructions in the second memory.
    Type: Grant
    Filed: February 1, 2010
    Date of Patent: February 10, 2015
    Assignee: Altera Corporation
    Inventor: Steven Perry
  • Publication number: 20150039868
    Abstract: Embodiments relate to intra-instructional transaction abort handling. An aspect includes using an emulation routine to execute an instruction within a transaction. The instruction includes at least one unit of operation. The transaction effectively delays committing stores to memory until the transaction has completed successfully. After receiving an abort indication, emulation of the instruction is terminated prior to completing the execution of the instruction. The instruction is terminated after the emulation routine completes any previously initiated unit of operation of the instruction.
    Type: Application
    Filed: October 21, 2014
    Publication date: February 5, 2015
    Inventors: Brenton F. Belmar, Mark S. Farrell, Christian Jacobi, Timothy J. Slegel
  • Patent number: 8943248
    Abstract: A bus monitoring and debugging system operating independently without impacting the normal operation of the CPU and without adding any overhead to the application being monitored. The bus is monitored for discarded speculative read and for merged write transactions in order to determine the true bus throughputs. Bus statistics that are relevant to providing insight to system operation are automatically captured. Logging of relevant events may be enabled or disabled when a sliding time window expires, or alternatively by external trigger events.
    Type: Grant
    Filed: January 9, 2012
    Date of Patent: January 27, 2015
    Assignee: Texas Instruments Incorporated
    Inventors: Samuel Paul Visalli, Brian Cruickshank, Chunhua Hu
  • Publication number: 20150019846
    Abstract: Embodiments relate to building, by a computing device, a pseudo-random dynamic instruction stream that comprises instructions configured to perform a transaction execution. The computing device may cause the transaction execution to be tested in a multi-processing system based on the instruction stream. A status of the test may be output to one or more output devices.
    Type: Application
    Filed: September 30, 2014
    Publication date: January 15, 2015
    Inventors: Ali Y. Duale, Dennis W. Wittig
  • Patent number: 8930683
    Abstract: One method of testing multi-threaded code involves accessing a first set of instructions which are configured to be executed, in execution order, as a thread of a multi-threaded process. A memory space is modified, based upon the first set of instructions. The modified memory space represents one or more values that are generated by executing the first set of program instructions in a different order than execution order. The memory space is processed by a second set of program instructions, which is configured to be executed as a second thread of the multi-threaded process.
    Type: Grant
    Filed: June 3, 2008
    Date of Patent: January 6, 2015
    Assignee: Symantec Operating Corporation
    Inventor: Michael P. Spertus
  • Publication number: 20150006863
    Abstract: A method and information processing system provide trace compression for trace messages. In response to a branch of a conditional branch instruction having not been taken or having been taken, a flag of a history buffer is set or cleared. A trace address message is generated in response to a conditional indirect branch instruction being taken, wherein the trace address message includes address information indicating the destination address of the taken branch, and an index value indicating a corresponding flag of the history buffer. In response to a return from interrupt or return from exception instruction, a predicted return address is compared to an actual return address. A trace address message is generated in response to the predicted and actual return addresses not matching. A trace address message is not generated in response to the predicted and actual return addresses matching.
    Type: Application
    Filed: July 1, 2013
    Publication date: January 1, 2015
    Applicant: FREESCALE SEMICONDUCTOR, INC.
    Inventors: Robert A. McGowan, Robert N. Ehrlich
  • Patent number: 8924634
    Abstract: A method for performing host-directed operations is provided, where the method is applied to a controller of a Flash memory that includes a plurality of blocks. The method includes: in a test mode of the controller, when receiving a host command from a host device, extracting at least one portion of associated information of the host command, where the at least one portion of the associated information is an encoded result that is generated by performing encoding on a host-directed operation command; and analyzing the at least one portion of the associated information according to at least one predetermined rule, in order to perform a host-directed operation corresponding to the host-directed operation command. An associated memory device and a controller thereof are also provided.
    Type: Grant
    Filed: March 21, 2012
    Date of Patent: December 30, 2014
    Assignee: Silicon Motion Inc.
    Inventors: Ming-Yen Lin, Hsu-Ping Ou
  • Patent number: 8914621
    Abstract: A processing unit having a control unit configured to execute after a reset phase a sequence of test instructions to detect a manipulation of the processing unit before the control unit decodes a first instruction for a normal operation.
    Type: Grant
    Filed: April 2, 2009
    Date of Patent: December 16, 2014
    Assignee: Infineon Technologies AG
    Inventors: Franz Klug, Andreas Wenzel
  • Patent number: 8898051
    Abstract: A system and method for selectively capturing and storing emulation data results from a hardware emulation system, which reduces the data bandwidth requirement and the unnecessary consumption of the DRAM memory capacity by uninteresting data. According to one embodiment, a system comprises a trace array for storing one or more frames of data; a first set of hardware control bits that enables the trace array to selectively capture non-continuous windows of data within a frame of data; a data capture card; and a second set of hardware control bits that enables the data capture card to capture a select frame of data from the one or more frames of data stored on the trace array.
    Type: Grant
    Filed: June 11, 2010
    Date of Patent: November 25, 2014
    Assignee: Cadence Design Systems, Inc.
    Inventors: Arthur Perry Sarkisian, Jingbo Gao, Tsair-Chin Lin
  • Publication number: 20140344556
    Abstract: One or more embodiments of the invention are directed to a method including monitoring execution of a set of programs each including a set of instructions executing interleaved with other instructions of the set of instructions, where each of the set of instructions includes at least one operation operating on a set of threads; organizing a first set of instructions corresponding to a first program of the set of programs based on an execution order of the first set of instructions; generating a result set representing the first set of instructions organized based on the execution order; and displaying the result set.
    Type: Application
    Filed: May 15, 2013
    Publication date: November 20, 2014
    Applicant: NVIDIA Corporation
    Inventors: Stephen BARTNIKOWSKI, Arthur DANSKIN, Gerald LUIZ
  • Patent number: 8891757
    Abstract: A cryptographic integrated circuit including a programmable main processor for executing cryptographic functions, an internal memory, and a data transmission bus to which the main processor and the internal memory are electrically connected. The cryptographic integrated circuit also includes a programmable arithmetic coprocessor that has specific hardware arithmetic units each being designed to carry out a predetermined arithmetical operation. The programmable arithmetic coprocessor is separate from the main processor and is also electrically connected to the data transmission bus.
    Type: Grant
    Filed: February 17, 2012
    Date of Patent: November 18, 2014
    Assignee: Bull SAS
    Inventor: Patrick Le Quéré
  • Publication number: 20140325191
    Abstract: A tester instruction generation unit generates a tester instruction for terminals of a plurality of devices connected to a tester based on an instruction of a user program and causes an instruction storage unit to store the tester instruction. A transfer mode setting unit sets a transfer mode to either a successive transfer mode or a batch transfer mode, based on the number of tester instructions in the instruction storage unit or an instruction of the user program. A transfer control unit transmits the tester instruction in the instruction storage unit to the tester in accordance with the set transfer mode.
    Type: Application
    Filed: April 29, 2014
    Publication date: October 30, 2014
    Applicant: RENESAS ELECTRONICS CORPORATION
    Inventors: Yukikazu MATSUO, Yasuyuki Tanaka, Masaru Sugimoto, Kyosaku Nobunaga
  • Patent number: 8874965
    Abstract: The present invention enables program codes to be shared among processors 211. To prevent the debug operation of one processor 211 from affecting the debug operation of the other processors 211, when detecting a breakpoint during execution of a program code, a debugger 410 or a debugger stub 520 controls the execution of the program code while exchanging breakpoint information 800 with the other debuggers 410 or the other debugger stubs 520. Furthermore, a circuit 170 is created which prevents the program code being carelessly rewritten due to thermal runaway, a bug, and the like of a processor 211, and the protection setting by the protection logic 71 in the circuit 170 is released only in case the processor 211 accesses each of a plurality of registers from 65 to 67 in specified order.
    Type: Grant
    Filed: October 26, 2011
    Date of Patent: October 28, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Toshio Kimura, Jun Kitahara, Hiroji Shibuya, Kazushige Nagamatsu, Nakaba Sato, Mika Teranishi
  • Patent number: 8874883
    Abstract: A data processing apparatus is provided comprising processing circuitry and instruction decoding circuitry. The data processing apparatus is capable of operating at a plurality of different privilege. Processing circuitry of the data processing apparatus imposes on program instructions different access permissions to at least one of a memory and a set of registers at different ones of the different privilege levels. A debug privilege-level switching instruction is provided and decoding circuitry is responsive to this instruction to switch the processing circuitry from a current privilege level to a target privilege level if the processing circuitry is in a debug mode. However, if the processing circuitry is in a non-debug mode the instruction decoding circuitry prevents execution of the privilege-level switching instruction regardless of the current privilege level.
    Type: Grant
    Filed: July 28, 2011
    Date of Patent: October 28, 2014
    Assignee: ARM Limited
    Inventors: Michael John Williams, Richard Roy Grisenthwaite
  • Patent number: 8874837
    Abstract: An integrated circuit can include a programmable circuitry operable according to a first clock frequency and a block random access memory. The block random access memory can include a random access memory (RAM) element having at least one data port and a memory processor coupled to the data port of the RAM element and to the programmable circuitry. The memory processor can be operable according to a second clock frequency that is higher than the first clock frequency. Further, the memory processor can be hardwired and dedicated to perform operations in the RAM element of the block random access memory.
    Type: Grant
    Filed: November 8, 2011
    Date of Patent: October 28, 2014
    Assignee: Xilinx, Inc.
    Inventors: Christopher E. Neely, Gordon J. Brebner
  • Publication number: 20140281399
    Abstract: A processor of an aspect includes decode logic to receive a first instruction and to determine that the first instruction is to be emulated. The processor also includes emulation mode aware post-decode instruction processor logic coupled with the decode logic. The emulation mode aware post-decode instruction processor logic is to process one or more control signals decoded from an instruction. The instruction is one of a set of one or more instructions used to emulate the first instruction. The one or more control signals are to be processed differently by the emulation mode aware post-decode instruction processor logic when in an emulation mode than when not in the emulation mode. Other apparatus are also disclosed as well as methods and systems.
    Type: Application
    Filed: March 16, 2013
    Publication date: September 18, 2014
    Inventors: WILLIAM C. RASH, BRET L. TOLL, SCOTT D. HAHN, GLENN J. HINTON
  • Publication number: 20140281434
    Abstract: A mechanism for generating a path profile is disclosed. A profiling module may insert profiling instructions into instruction blocks. The profiling instructions may generate a path identifier as a processor executes an execution path executes a sequence or path of instruction blocks). A path identifier module may add path identifiers to path identifier data, such as a table, and may track the number of times an execution path associated with the path identifier is executed.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Inventors: Carlos Madriles, Josep M. Codina, Christos E Kotselidis, Alejandro Martinez Vicente
  • Publication number: 20140281433
    Abstract: A data processing apparatus comprises processing circuitry for executing a stream of instructions, and exception handling circuitry for selecting, from one or more exceptions, an exception to be handled by the processing circuitry. The unselected exceptions are referred to as pending exceptions. The data processing apparatus further comprises trace generating circuitry that generates trace data packets in dependence on activity of the processing circuitry. The trace generating circuitry detects pending exceptions and, if an exception is detected to be pending, includes an indication of the pending exception in at least one trace data packet. By tracking when a particular exception is pended, rather than when it is selected for handling by the processing circuitry, it is possible to more precisely determine when the exception occurred, as opposed to when it is finally handled.
    Type: Application
    Filed: March 12, 2013
    Publication date: September 18, 2014
    Inventors: John Michael HORLEY, Simon John CRASKE
  • Publication number: 20140281435
    Abstract: In one particular example, this disclosure provides an efficient mechanism to determine the degree of parallelization possible for a loop in the presence of possible memory aliases that cannot be resolved at compile-time. Hardware instructions are provided that test memory addresses at run-time and set a mode or register that enables a single instance of a loop to run the maximum number of SIMD (Single Instruction, Multiple Data) lanes to run in parallel that obey the semantics of the original scalar loop. Other hardware features that extend applicability or performance of such instructions are enumerated.
    Type: Application
    Filed: March 7, 2014
    Publication date: September 18, 2014
    Applicant: ANALOG DEVICES TECHNOLOGY
    Inventors: Michael G. Perkins, John L. Redford, Kaushal Sanghai
  • Publication number: 20140281436
    Abstract: A method for emulating a guest centralized flag architecture by using a native distributed flag architecture. The method includes receiving an incoming instruction sequence using a global front end; grouping the instructions to form instruction blocks, wherein each of the instruction blocks comprise two half blocks; scheduling the instructions of the instruction block to execute in accordance with a scheduler; and using a distributed flag architecture to emulate a centralized flag architecture for the emulation of guest instruction execution.
    Type: Application
    Filed: March 14, 2014
    Publication date: September 18, 2014
    Applicant: Soft Machines, Inc.
    Inventor: Mohammad Abdallah
  • Patent number: 8832416
    Abstract: An information handling system includes a processor that executes multiple instructions or instruction threads within a software application program. The information handling system includes operating system software that manages processor system hardware and software in a multi-tasking environment. In one embodiment, the operating system manages instruction completion stall analysis software to determine the cause or causes of instruction stalls. In another embodiment, the stall analysis software cooperates with the operating system software to store instruction completion stall event data on a per instruction basis while the application program executes. The operating system software may cooperate with the stall analysis software to store instruction completion stall data in memory for later manipulation by system users or other software.
    Type: Grant
    Filed: May 24, 2007
    Date of Patent: September 9, 2014
    Assignee: International Business Machines Corporation
    Inventors: Wen-Tzer Thomas Chen, Venkat Rajeev Indukuru, Alexander Erik Mericas, Mysore Sathyanarayana Srinivas