Specialized Instruction Processing In Support Of Testing, Debugging, Emulation Patents (Class 712/227)
-
Patent number: 9377507Abstract: 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: GrantFiled: May 6, 2013Date of Patent: June 28, 2016Assignee: MICROCHIP TECHNOLOGY INCORPORATEDInventors: Kevin Kilzer, Justin Milks, Sundar Balasubramanian, Thomas Edward Perme, Kushala Javagal
-
Patent number: 9367316Abstract: 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: GrantFiled: March 16, 2012Date of Patent: June 14, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Jonathan D. Bradbury, Charles W. Gainey, Jr., Michael K. Gschwind, Eric M. Schwarz
-
Patent number: 9361208Abstract: 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: GrantFiled: July 1, 2015Date of Patent: June 7, 2016Assignee: APPVANCE INC.Inventor: Frank Cohen
-
Patent number: 9348732Abstract: 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: GrantFiled: March 15, 2013Date of Patent: May 24, 2016Assignee: Apple Inc.Inventors: Kevin James Van Vechten, Shantonu Sen, Craig M. Federighi, Guy L. Tribble
-
Patent number: 9330028Abstract: 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: GrantFiled: March 27, 2014Date of Patent: May 3, 2016Assignee: Intel CorporationInventors: Petros Maniatis, Shantanu Gupta, Naveen Kumar
-
Patent number: 9322877Abstract: 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: GrantFiled: November 12, 2015Date of Patent: April 26, 2016Assignee: TEXAS INSTRUMENTS INCORPORATEDInventor: Lee D. Whetsel
-
Patent number: 9323497Abstract: 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: GrantFiled: December 30, 2013Date of Patent: April 26, 2016Assignee: International Business Machines CorporationInventors: Michel H. T. Hack, Ronald M. Smith, Sr.
-
Patent number: 9281803Abstract: 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: GrantFiled: March 16, 2011Date of Patent: March 8, 2016Assignee: ROBERT BOSCH GMBHInventors: Thomas Wagner, Stephen Schmitt, Juergen Hanisch
-
Patent number: 9275429Abstract: 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: GrantFiled: February 17, 2014Date of Patent: March 1, 2016Assignee: QUALCOMM IncorporatedInventors: Srihari Babu Alla, Tarun Reddy Karra, Jonathan Gerald Thomason, Colin Christopher Sharp
-
Patent number: 9201749Abstract: 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: GrantFiled: July 31, 2014Date of Patent: December 1, 2015Assignee: ARM LIMITEDInventors: Michael John Williams, Richard Roy Grisenthwaite
-
Patent number: 9195524Abstract: 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: GrantFiled: December 6, 2011Date of Patent: November 24, 2015Assignee: Marvell International Ltd.Inventors: Robert Wiesner, Tom Hameenanttila
-
Patent number: 9182990Abstract: 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: GrantFiled: July 1, 2014Date of Patent: November 10, 2015Assignee: GOOGLE INC.Inventors: Sriraman Tallam, Paul Pluzhnikov
-
Patent number: 9183369Abstract: 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: GrantFiled: September 26, 2008Date of Patent: November 10, 2015Assignee: Red Hat, Inc.Inventor: Kristian H. Kristensen
-
Patent number: 9164821Abstract: 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: GrantFiled: December 14, 2012Date of Patent: October 20, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Stephen John Burghard, David J. Harman, Neil W. Leedham, Andrew Wright
-
Patent number: 9128832Abstract: 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: GrantFiled: October 14, 2013Date of Patent: September 8, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Stephen John Burghard, David J. Harman, Neil W. Leedham, Andrew Wright
-
Patent number: 9110672Abstract: 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: GrantFiled: November 7, 2013Date of Patent: August 18, 2015Assignee: International Business Machines CorporationInventors: Madhu B. Ananthapadmanabh, Sakthimurugan Arumugam, Harshavardhana M. Puttamadaiah
-
Patent number: 9104425Abstract: 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: GrantFiled: January 7, 2014Date of Patent: August 11, 2015Assignee: ARM LimitedInventor: Richard Roy Grisenthwaite
-
Patent number: 9098628Abstract: 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: GrantFiled: July 26, 2012Date of Patent: August 4, 2015Assignee: International Business Machines CorporationInventor: Masahiro Tanaka
-
Patent number: 9069736Abstract: 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: GrantFiled: July 9, 2013Date of Patent: June 30, 2015Assignee: XEROX CORPORATIONInventors: William Michael Darling, Guillaume M. Bouchard, Cedric Archambeau
-
Patent number: 9055306Abstract: 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: GrantFiled: August 31, 2006Date of Patent: June 9, 2015Assignee: ATI Technologies ULCInventors: Alexander Lyashevsky, Jason Yang, Arcot J. Preetham
-
Patent number: 9043580Abstract: 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: GrantFiled: March 6, 2012Date of Patent: May 26, 2015Assignee: VIA TECHNOLOGIES, INC.Inventors: G. Glenn Henry, Terry Parks, Rodney E. Hooker
-
Patent number: 9043584Abstract: 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: GrantFiled: July 26, 2010Date of Patent: May 26, 2015Assignee: International Business Machines CorporationInventors: Christopher Lee Colletti, Bryan Glen Hickerson, Michael Joseph Schiffli
-
Patent number: 9032190Abstract: 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: GrantFiled: August 20, 2010Date of Patent: May 12, 2015Assignee: International Business Machines CorporationInventors: Toshihiko Koju, Takuya Nakaike
-
Publication number: 20150095626Abstract: 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: ApplicationFiled: September 11, 2014Publication date: April 2, 2015Inventors: Takashi Nakagawa, Yasutoshi Suzuki, Hiroyuki Yamamoto, Kazuhide Imaeda
-
Patent number: 8984263Abstract: 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 instructType: GrantFiled: October 5, 2011Date of Patent: March 17, 2015Assignee: Fujitsu LimitedInventors: Takashi Nakayama, Kazuyoshi Watanabe
-
Patent number: 8972704Abstract: 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: GrantFiled: December 15, 2011Date of Patent: March 3, 2015Assignee: International Business Machines CorporationInventors: Toshihiko Koju, Takuya Nakaike, Ali Ijaz Sheikh, Harold Wade Cain, III, Maged M. Michael
-
Publication number: 20150058604Abstract: 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: ApplicationFiled: January 9, 2014Publication date: February 26, 2015Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Anand B. Arunagiri, UDO KRAUTZ, SUJEET KUMAR, VIRESH PARUTHI
-
Patent number: 8959339Abstract: 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: GrantFiled: January 30, 2006Date of Patent: February 17, 2015Assignee: Texas Instruments IncorporatedInventor: Gregory R. Conti
-
Publication number: 20150046688Abstract: 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: ApplicationFiled: July 2, 2014Publication date: February 12, 2015Inventor: TAMORU INOUE
-
Patent number: 8954714Abstract: 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: GrantFiled: February 1, 2010Date of Patent: February 10, 2015Assignee: Altera CorporationInventor: Steven Perry
-
Publication number: 20150039868Abstract: 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: ApplicationFiled: October 21, 2014Publication date: February 5, 2015Inventors: Brenton F. Belmar, Mark S. Farrell, Christian Jacobi, Timothy J. Slegel
-
Patent number: 8943248Abstract: 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: GrantFiled: January 9, 2012Date of Patent: January 27, 2015Assignee: Texas Instruments IncorporatedInventors: Samuel Paul Visalli, Brian Cruickshank, Chunhua Hu
-
Publication number: 20150019846Abstract: 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: ApplicationFiled: September 30, 2014Publication date: January 15, 2015Inventors: Ali Y. Duale, Dennis W. Wittig
-
Patent number: 8930683Abstract: 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: GrantFiled: June 3, 2008Date of Patent: January 6, 2015Assignee: Symantec Operating CorporationInventor: Michael P. Spertus
-
Publication number: 20150006863Abstract: 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: ApplicationFiled: July 1, 2013Publication date: January 1, 2015Applicant: FREESCALE SEMICONDUCTOR, INC.Inventors: Robert A. McGowan, Robert N. Ehrlich
-
Patent number: 8924634Abstract: 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: GrantFiled: March 21, 2012Date of Patent: December 30, 2014Assignee: Silicon Motion Inc.Inventors: Ming-Yen Lin, Hsu-Ping Ou
-
Patent number: 8914621Abstract: 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: GrantFiled: April 2, 2009Date of Patent: December 16, 2014Assignee: Infineon Technologies AGInventors: Franz Klug, Andreas Wenzel
-
Patent number: 8898051Abstract: 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: GrantFiled: June 11, 2010Date of Patent: November 25, 2014Assignee: Cadence Design Systems, Inc.Inventors: Arthur Perry Sarkisian, Jingbo Gao, Tsair-Chin Lin
-
Publication number: 20140344556Abstract: 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: ApplicationFiled: May 15, 2013Publication date: November 20, 2014Applicant: NVIDIA CorporationInventors: Stephen BARTNIKOWSKI, Arthur DANSKIN, Gerald LUIZ
-
Patent number: 8891757Abstract: 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: GrantFiled: February 17, 2012Date of Patent: November 18, 2014Assignee: Bull SASInventor: Patrick Le Quéré
-
Publication number: 20140325191Abstract: 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: ApplicationFiled: April 29, 2014Publication date: October 30, 2014Applicant: RENESAS ELECTRONICS CORPORATIONInventors: Yukikazu MATSUO, Yasuyuki Tanaka, Masaru Sugimoto, Kyosaku Nobunaga
-
Patent number: 8874965Abstract: 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: GrantFiled: October 26, 2011Date of Patent: October 28, 2014Assignee: Hitachi, Ltd.Inventors: Toshio Kimura, Jun Kitahara, Hiroji Shibuya, Kazushige Nagamatsu, Nakaba Sato, Mika Teranishi
-
Patent number: 8874883Abstract: 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: GrantFiled: July 28, 2011Date of Patent: October 28, 2014Assignee: ARM LimitedInventors: Michael John Williams, Richard Roy Grisenthwaite
-
Patent number: 8874837Abstract: 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: GrantFiled: November 8, 2011Date of Patent: October 28, 2014Assignee: Xilinx, Inc.Inventors: Christopher E. Neely, Gordon J. Brebner
-
Publication number: 20140281399Abstract: 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: ApplicationFiled: March 16, 2013Publication date: September 18, 2014Inventors: WILLIAM C. RASH, BRET L. TOLL, SCOTT D. HAHN, GLENN J. HINTON
-
Publication number: 20140281434Abstract: 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: ApplicationFiled: March 15, 2013Publication date: September 18, 2014Inventors: Carlos Madriles, Josep M. Codina, Christos E Kotselidis, Alejandro Martinez Vicente
-
Publication number: 20140281433Abstract: 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: ApplicationFiled: March 12, 2013Publication date: September 18, 2014Inventors: John Michael HORLEY, Simon John CRASKE
-
Publication number: 20140281435Abstract: 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: ApplicationFiled: March 7, 2014Publication date: September 18, 2014Applicant: ANALOG DEVICES TECHNOLOGYInventors: Michael G. Perkins, John L. Redford, Kaushal Sanghai
-
Publication number: 20140281436Abstract: 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: ApplicationFiled: March 14, 2014Publication date: September 18, 2014Applicant: Soft Machines, Inc.Inventor: Mohammad Abdallah
-
Patent number: 8832416Abstract: 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: GrantFiled: May 24, 2007Date of Patent: September 9, 2014Assignee: International Business Machines CorporationInventors: Wen-Tzer Thomas Chen, Venkat Rajeev Indukuru, Alexander Erik Mericas, Mysore Sathyanarayana Srinivas