Patents by Inventor Shakti Kapoor

Shakti Kapoor has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20190188146
    Abstract: Disclosed is a system, method and/or computer product that includes generating translation requests that are identical but have different expected results, transmitting the translation requests from a MMU tester to a non-core MMU disposed on a processor chip, where the non-core MMU is external to a processing core of the processor chip, and where the MMU tester is disposed on a computing component external to the processor chip. The method also includes receiving memory translation results from the non-core MMU at the MMU tester, comparing the results to determine if there is a flaw in the non-core MMU.
    Type: Application
    Filed: December 15, 2017
    Publication date: June 20, 2019
    Inventors: Manoj Dusanapudi, Shakti Kapoor, Nelson Wu
  • Patent number: 10318456
    Abstract: In an approach to validation of correctness of interrupt triggers and delivery a computer allocates one or more flags of a gang of flags. The computer allocates one or more interrupt source numbers, wherein each interrupt source number of the one or more interrupt source numbers corresponds to a flag of the gang of flags. The computer allocates one or more virtual processors to process the one or more interrupt source numbers. The computer schedules the one or more virtual processors. The computer receives one or more interrupt triggers corresponding to the one or more interrupt source numbers. The computer updates the one or more flags corresponding to the one or more received interrupt triggers. The computer determines whether all of the one or more flags in the gang of flags is updated. The computer determines a lost interrupt source number.
    Type: Grant
    Filed: November 6, 2017
    Date of Patent: June 11, 2019
    Assignee: International Business Machines Corporation
    Inventors: Manoj Dusanapudi, Shakti Kapoor, Brenton Yiu, Siva Sundar A
  • Publication number: 20190138472
    Abstract: In an approach to validation of correctness of interrupt triggers and delivery a computer allocates one or more flags of a gang of flags. The computer allocates one or more interrupt source numbers, wherein each interrupt source number of the one or more interrupt source numbers corresponds to a flag of the gang of flags. The computer allocates one or more virtual processors to process the one or more interrupt source numbers. The computer schedules the one or more virtual processors. The computer receives one or more interrupt triggers corresponding to the one or more interrupt source numbers. The computer updates the one or more flags corresponding to the one or more received interrupt triggers. The computer determines whether all of the one or more flags in the gang of flags is updated. The computer determines a lost interrupt source number.
    Type: Application
    Filed: November 6, 2017
    Publication date: May 9, 2019
    Inventors: Manoj Dusanapudi, Shakti Kapoor, Brenton Yiu, Siva Sundar A
  • Patent number: 10261878
    Abstract: A processor memory is stress tested with a variable link stack depth using link stack test segments with non-naturally aligned data boundaries. Link stack test segments are interspersed into test code of a processor memory tests to change the link stack depth without changing results of the test code. The link stack test segments are the same structure as the segments of the test code and have non-naturally aligned boundaries. The link stack test segments include branch to target, push/pop, push and pop segments. The depth of the link stack is varied independent of the memory test code by changing the number to branches in the branch to target segment and varying the number of the push/pop segments.
    Type: Grant
    Filed: March 14, 2017
    Date of Patent: April 16, 2019
    Assignee: International Business Machines Corporation
    Inventors: Manoj Dusanapudi, Shakti Kapoor
  • Patent number: 10261917
    Abstract: A mapping may be changed in a table stored in memory. The table may map a first set of addresses, for a set of data, to a second set of addresses. The changing of the mapping may including mapping the first set of addresses to a third set of addresses. In response to the changing of the mapping, one or more flush operations may be executed to invalidate one or more entries within one or more address translation caches. The one or more entries may include the second set of addresses. In response to the executing of the one or more flush operations, a first test case may be run. The first test case may be to test whether any of the first set of addresses are mapping to the second set of addresses.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: April 16, 2019
    Assignee: International Business Machines Corporation
    Inventors: Vinod Bussa, Manoj Dusanapudi, Shakti Kapoor
  • Patent number: 10241880
    Abstract: Embodiments disclose techniques for scheduling test cases without regeneration to verify and validate a computing system. In one embodiment, a testing engine generates a test case for a plurality of processors. Each test case includes streams of instructions. The testing engine also allocates at least one cache line associated with the streams of instructions of the generated test case such that each of the plurality of processors accesses different memory locations within the at least one cache line. The testing engine further schedules the generated test case for execution by the plurality of processors to achieve at least a first test coverage among the plurality of processors. The testing engine further re-schedules the generated test case for re-execution by the plurality of processors to achieve at least a second test coverage among the plurality of processors.
    Type: Grant
    Filed: February 9, 2017
    Date of Patent: March 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Manoj Dusanapudi, Shakti Kapoor
  • Publication number: 20190079773
    Abstract: Embodiments of the invention are directed to methods for handling cache. The method includes retrieving a plurality of instructions from a cache. The method further includes placing the plurality of instructions into an instruction fetch buffer. The method includes retrieving a first instruction of the plurality of instructions from the instruction fetch buffer. The method includes executing the first instruction. The method includes retrieving a second instruction from the plurality of instructions from the instruction fetch buffer unless a back invalidate is received from the cache. Thereafter executing the second instruction without refreshing the instruction fetch buffer from the cache.
    Type: Application
    Filed: September 14, 2017
    Publication date: March 14, 2019
    Inventor: Shakti Kapoor
  • Publication number: 20190079774
    Abstract: Embodiments of the invention are directed to methods for handling cache. The method includes retrieving a plurality of instructions from a cache. The method further includes placing the plurality of instructions into an instruction fetch buffer. The method includes retrieving a first instruction of the plurality of instructions from the instruction fetch buffer. The method includes executing the first instruction. The method includes retrieving a second instruction from the plurality of instructions from the instruction fetch buffer unless a back invalidate is received from the cache. Thereafter executing the second instruction without refreshing the instruction fetch buffer from the cache.
    Type: Application
    Filed: November 15, 2017
    Publication date: March 14, 2019
    Inventor: Shakti Kapoor
  • Patent number: 10228422
    Abstract: An aspect includes driving a plurality of commands to an interface unit of a circuit design in a hardware-accelerated simulator to dynamically initialize the circuit design to run one or more test cases based on an initialization sequence with breakpoint support. A state of the circuit design is examined through the interface unit based on triggering of a breakpoint on the hardware-accelerated simulator. A next action to perform in the initialization sequence is determined based on the state of the circuit design as determined through the interface unit. Execution of one or more scripts select the initialization sequence from a plurality of test cases, set the breakpoint, modify a state of the circuit design as the next action to perform, and capture a plurality of test results based on execution of the initialization sequence through the interface unit.
    Type: Grant
    Filed: May 15, 2017
    Date of Patent: March 12, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Debapriya Chatterjee, Shakti Kapoor, John A. Schumann
  • Patent number: 10223225
    Abstract: Test cases for testing speculative execution of instructions are replicated into a memory with non-naturally aligned data boundaries to create a non-contiguous instruction stream to efficiently test a processor. Placing test cases with test code and test data in the non-naturally aligned data boundaries as described herein allows test code to test speculative execution of branches. The test case includes a branch with a hint bit set to cause the hardware to mispredict the path of the branch to cause speculative execution of test code, bad code or erroneously execute data. The processor can then be tested to see if it properly flushes the speculatively executed code upon taking the opposite branch of the mispredicted path.
    Type: Grant
    Filed: November 7, 2016
    Date of Patent: March 5, 2019
    Assignee: International Business Machines Corporation
    Inventors: Manoj Dusanapudi, Shakti Kapoor
  • Publication number: 20190050314
    Abstract: A circuit and method provide efficient stress testing of address translations in an integrated circuit such as a link processing unit. A random DMA mode (RDM) circuit provides a random input to index into a translation validation table (TVT) that is used to generate the real memory address. The RDM circuit allows testing all entries of the TVT, and thus all DMA modes, regardless of what bus agents are connected to the link processing unit. The RDM circuit may use a multiplexer to select between a runtime input and a random test input provided by the random bit generator. When the link processing unit is in a test mode a mode selection bit is asserted to select the random test input.
    Type: Application
    Filed: September 26, 2018
    Publication date: February 14, 2019
    Inventors: Manoj Dusanapudi, Shakti Kapoor, Nelson Wu
  • Publication number: 20190050315
    Abstract: A circuit and method provide efficient stress testing of address translations in an integrated circuit such as a link processing unit. A random DMA mode (RDM) circuit provides a random input to index into a translation validation table (TVT) that is used to generate the real memory address. The RDM circuit allows testing all entries of the TVT, and thus all DMA modes, regardless of what bus agents are connected to the link processing unit. The RDM circuit may use a multiplexer to select between a runtime input and a random test input provided by the random bit generator. When the link processing unit is in a test mode a mode selection bit is asserted to select the random test input.
    Type: Application
    Filed: September 28, 2018
    Publication date: February 14, 2019
    Inventors: Manoj Dusanapudi, Shakti Kapoor, Nelson Wu
  • Patent number: 10185692
    Abstract: An apparatus and a method are disclosed for tracking use of a specialized hardware component in symmetric multiprocessing computing device. A device includes a memory and one or more multi-core processors attached to a coherent memory bus. A proxy for a specialized hardware component (SHC) such as an accelerator, FPGA, or ASIC is placed in communication with the coherent memory bus. The proxy may be attached to another bus such as a peripheral component interconnect express (PCIe) bus. A tracker updates an allocated counting register with counts of events related to use of the SHC. When requested, information from the counting register is provided such as to an external device or client communicating with the multiprocessing computing device. The tracker may follow calls or messages to the SHC. The tracker may accumulate a count of message size or mode of use or use of certain functions of the SHC.
    Type: Grant
    Filed: August 22, 2016
    Date of Patent: January 22, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Shakti Kapoor, Grace Y. Liu, Karen E. Yokum
  • Patent number: 10169185
    Abstract: A circuit and method provide efficient stress testing of address translations in an integrated circuit such as a link processing unit. A random DMA mode (RDM) circuit provides a random input to index into a translation validation table (TVT) that is used to generate the real memory address. The RDM circuit allows testing all entries of the TVT, and thus all DMA modes, regardless of what bus agents are connected to the link processing unit. The RDM circuit may use a multiplexer to select between a runtime input and a random test input provided by the random bit generator. When the link processing unit is in a test mode a mode selection bit is asserted to select the random test input.
    Type: Grant
    Filed: August 12, 2017
    Date of Patent: January 1, 2019
    Assignee: International Business Machines Corporation
    Inventors: Manoj Dusanapudi, Shakti Kapoor, Nelson Wu
  • Patent number: 10169181
    Abstract: A transactional memory test tests a transactional memory system on a computer processor. A test case with a transactional memory test is constructed such that the transactional memory test proceeds further in the transaction mode if the transaction is successful. In contrast, if there is a failure of the transaction, then the transactional memory test is executed in the non-transaction state. The transactional memory test stresses both transaction success and transaction failure cases of the processor for more efficient validation of the computer processor. Also, when checking the correctness of the test case the correct result remains the same whether the transaction passes or fails to simplify verification.
    Type: Grant
    Filed: September 15, 2016
    Date of Patent: January 1, 2019
    Assignee: International Business Machines Corporation
    Inventors: Vinod Bussa, Manoj Dusanapudi, Shakti Kapoor
  • Patent number: 10169180
    Abstract: Test code and test data is replicated into a memory cache with non-naturally aligned data boundaries to reduce the time needed to generate test cases for testing a processor. Placing test code and test data in the non-naturally aligned data boundaries as described herein allows test code and data to be replicated throughout a cache memory while preserving double word and quad word boundaries in segments of the replicated test code and test data. Coherency of the processor memory can be tested when the same cache line from the level two (L2) cache is simultaneously in both the level one (L1) instruction cache and the L1 data cache.
    Type: Grant
    Filed: May 11, 2016
    Date of Patent: January 1, 2019
    Assignee: International Business Machines Corporation
    Inventors: Manoj Dusanapudi, Shakti Kapoor
  • Patent number: 10169186
    Abstract: A circuit and method provide efficient stress testing of address translations in an integrated circuit such as a link processing unit. A random DMA mode (RDM) circuit provides a random input to index into a translation validation table (TVT) that is used to generate the real memory address. The RDM circuit allows testing all entries of the TVT, and thus all DMA modes, regardless of what bus agents are connected to the link processing unit. The RDM circuit may use a multiplexer to select between a runtime input and a random test input provided by the random bit generator. When the link processing unit is in a test mode a mode selection bit is asserted to select the random test input.
    Type: Grant
    Filed: December 20, 2017
    Date of Patent: January 1, 2019
    Assignee: International Business Machines Corporation
    Inventors: Manoj Dusanapudi, Shakti Kapoor, Nelson Wu
  • Patent number: 10162754
    Abstract: An aspect includes a method of lateral cast out in a cache memory system. The method includes configuring one or more cache memories of the cache memory system as lateral cast out receiving cache memories. A stress test mode of the cache memory system is enabled. One or more cache lines of a lateral cast out source cache memory of the cache memory system are cast out. At least one of the one or more cache lines from the lateral cast out source cache memory is accepted into at least one of the lateral cast out receiving cache memories based on the stress test mode being enabled.
    Type: Grant
    Filed: March 8, 2016
    Date of Patent: December 25, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Shakti Kapoor
  • Patent number: 10162763
    Abstract: Embodiments disclose techniques for enabling a guest operating system (OS) to directly invalidate entries in a translation lookaside buffer (TLB). In one embodiment, the guest OS receives one or more invalidation credits for invalidating translation entries in a translation lookaside buffer (TLB) from a hypervisor. The guest OS decrements one invalidation credit from the one or more invalidation credits after invalidating a translation entry in the TLB. Upon determining that there are no remaining invalidation credits, the guest OS requests additional invalidation credits from the hypervisor. The hypervisor may choose to allocate the additional invalidation credits, based upon a determination of whether or not the guest OS is a rogue OS that poses a threat or risk to other guest OS in a computing system.
    Type: Grant
    Filed: November 30, 2015
    Date of Patent: December 25, 2018
    Assignee: International Business Machines Corporation
    Inventor: Shakti Kapoor
  • Publication number: 20180322059
    Abstract: Embodiments of the invention are directed to methods for handling cache prefetch requests. The method includes receiving a request to prefetch data from main memory to a cache. The method further includes based on a determination that the prefetch request is a speculative prefetch request, determining if the cache is being used for transactional memory. The method further includes based on a determination that the cache is not being used for transactional memory, processing the prefetch request. The method further includes based on a determination that the cache is being used for transactional memory, and a determination if the prefetch request can be processed without affecting transactional memory, processing the prefetch request. The method further includes based on a determination that the cache is being used for transactional memory, and a determination if the prefetch request can be processed without affecting transactional memory, rejecting the prefetch request.
    Type: Application
    Filed: May 8, 2017
    Publication date: November 8, 2018
    Inventor: Shakti Kapoor