Patents by Inventor Adi Habusha

Adi Habusha 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: 20240126705
    Abstract: Techniques for emulating a configuration space may include emulating a set of configuration registers in an integrated circuit device for a set of functions corresponding to a type of peripheral device. The type of peripheral device represented by the integrated circuit device can be modified by changing the set of configuration registers being emulated in the integrated circuit device. Multiple sets of configuration registers can also be emulated to support different virtual machines or different operating systems.
    Type: Application
    Filed: December 13, 2023
    Publication date: April 18, 2024
    Inventors: Nafea Bshara, Adi Habusha, Guy Nakibly, Georgy Machulsky
  • Patent number: 11886355
    Abstract: Techniques for emulating a configuration space may include emulating a set of configuration registers for a set of functions corresponding to a type of peripheral device. The set of functions can include a physical function and a virtual function associated with the physical function. A configuration access request can be processed by retrieving an emulated configuration register from the emulated configuration space, and logging incoming configuration access requests in a configuration transaction log to track configuration accesses.
    Type: Grant
    Filed: April 26, 2022
    Date of Patent: January 30, 2024
    Assignee: Amazon Technologies, Inc.
    Inventors: Nafea Bshara, Adi Habusha, Guy Nakibly, Georgy Machulsky
  • Patent number: 11880327
    Abstract: A coherent connection and a non-coherent connection are provided between system-on-chips (SoCs). The coherent connection can be coupled to coherent interconnects on the SoCs, and the non-coherent connection can be coupled to non-coherent interconnects on the SoCs. An input/output (I/O) transaction from an I/O device on a first SoC that is targeted to a second SoC can be transmitted via the non-coherent connection, and a processor transaction from the first SoC that is targeted to the second SoC can be transmitted via the coherent connection.
    Type: Grant
    Filed: December 7, 2021
    Date of Patent: January 23, 2024
    Assignee: Amazon Technologies, Inc.
    Inventors: Guy Nakibly, Barak Wasserstrom, Yaniv Shapira, Erez Izenberg, Adi Habusha
  • Patent number: 11868204
    Abstract: A system includes an obsolete cache-line vector having a plurality of memory elements, wherein each memory element has a one-to-one correspondence to a cache line entry of a cache memory. The vector can capture cache line errors that occur at different times from an error detection logic associated with the cache memory. A counter can be coupled to the obsolete cache-line vector for tracking how many of the memory elements in the vector are activated. When a predetermined threshold is reached, a threshold comparator can release a trigger for further analysis. An error events logger can be used to track all of the errors that occurred. The error events logger can also use a time stamp, which can assist the RAS system in analyzing a correlation between the errors, such as patterns that occur and time differences between the errors.
    Type: Grant
    Filed: December 10, 2021
    Date of Patent: January 9, 2024
    Assignee: Amazon Technologies, Inc.
    Inventors: Ofer Naaman, Osnat Katz, Nir Bar-Or, Adi Habusha
  • Patent number: 11836103
    Abstract: Systems and methods are provided to differentiate different types of traffic going through the same physical channel such that the traffic flow for different traffic types does not impact each other. The physical channel can be configured to support a plurality of virtual channels. Each transaction that needs to be communicated through the physical channel can be classified into a certain traffic type, and each traffic type can be assigned to a virtual channel. Each transaction can be communicated on a respective virtual channel based on the corresponding traffic type. If the traffic flow through a first virtual channel for a transaction slows down, the traffic flow through a second virtual channel for another transaction can continue without getting impacted by the slow down on the first virtual channel.
    Type: Grant
    Filed: November 16, 2021
    Date of Patent: December 5, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Guy Nakibly, Roi Ben Haim, Erez Izenberg, Adi Habusha, Yaniv Shapira
  • Patent number: 11809349
    Abstract: An interposer circuit is used between an interrupt controller and a processor core to facilitate direct injection of a virtual interrupt into a guest executing on the processor core, even though the interrupt controller does not support the direct injection. The interposer circuit can convert a command received from the interrupt controller for a physical interrupt into another command for a virtual interrupt to make the processor core believe that the processor core has received a virtual interrupt even though the interrupt controller is not able to provide the virtual interrupt. The virtual interrupt can be directly injected into the processor core without the intervention of a hypervisor executing on the processor core.
    Type: Grant
    Filed: June 16, 2021
    Date of Patent: November 7, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Ali Ghassan Saidi, Adi Habusha, Itai Avron, Tzachi Zidenberg, Ofer Naaman
  • Patent number: 11755496
    Abstract: A computer system and methods are disclosed for mitigating side-channel attacks using memory aliasing. The computer system includes a memory, a memory controller and a cache. Responsive to determining to share a memory location among processes, the address of the memory may be aliased to another address within the same address space, with the address and aliased address assigned to respective ones of the processes. The memory controller manages the address space according to an aliasing region and a non-aliasing region, with addresses corresponding to the non-aliasing region being passed through to the memory. Addresses corresponding to the aliasing region are translated by the memory controller to match corresponding non-aliased memory addresses allowing aliased and non-aliased addresses to access same memory locations. A cache may cache accesses to memory addresses, including the non-aliased and aliased addresses, with different cache locations for selected according to the respective addresses of memory.
    Type: Grant
    Filed: December 10, 2021
    Date of Patent: September 12, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Peter Barry, Adi Habusha, Martin Pohlack
  • Patent number: 11748285
    Abstract: Ordering rules, such as those enforced by the peripheral component interconnect express (PCIe) protocol for data communications, can be intelligently enforced for independent transactions. A single device might host or be associated with multiple PCIe devices, such as virtual machines, and treating requests from these separate PCIe devices as coming from separate domains enables the ordering rules to be bypassed for certain transactions. Further, since a virtual machine might host multiple applications or be associated with multiple processors that can submit independent requests, the ordering rules can be bypassed at the transaction level in at least some instances. The ability to intelligently bypass ordering rules can help to improve the performance of the overall system, as requests do not need to be unnecessarily delayed and data storage capacity can be more fully utilized.
    Type: Grant
    Filed: June 25, 2019
    Date of Patent: September 5, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Roi Ben Haim, Guy Nakibly, Adi Habusha, Simaan Bahouth
  • Patent number: 11720444
    Abstract: A system captures errors and stores an obsolete line bit qualifier per cache entry that can be used to dynamically mark a specific cache entry as obsolete. For example, the cache entry can be marked as obsolete after detecting repetitive single-bit errors on a same cache entry within a predetermined period of time. For cache lines marked as obsolete, a cache controller can ensure that the cache line entry remains unused. The detection of a repetitive single-bit error can be accomplished by implementing a counter per cache entry and a timer. The counter counts errors within a timer window, and a repetitive error is reported if the counter reaches a threshold level. By catching repetitive single-bit errors before such errors spread to multi-bit errors, the system can increase the life span of the server computer.
    Type: Grant
    Filed: December 10, 2021
    Date of Patent: August 8, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Ofer Naaman, Osnat Katz, Nir Bar-Or, Adi Habusha
  • Patent number: 11687462
    Abstract: Techniques are disclosed for transferring a message between a sender agent and a receiver agent via a shared memory having a main memory and a cache. Feedback data indicative of a number of read messages in the shared memory is generated by the receiver agent. The feedback data is sent from the receiver agent to the sender agent. A number of unread messages in the shared memory is estimated by the sender agent based on the number of read messages. A threshold for implementing a caching policy is set by the sender agent based on the feedback data. The message is designated as cacheable if the number of unread messages is less than the threshold and as non-cacheable if the number of unread messages is greater than the threshold. The message is written to the shared memory based on the designation.
    Type: Grant
    Filed: March 4, 2022
    Date of Patent: June 27, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Michael Zuzovski, Ofer Naaman, Adi Habusha
  • Publication number: 20230188338
    Abstract: A host device may include an interconnect, a host memory, and a set of processor cores. A processor core may execute a VM assigned to a cryptographic key and may send a request to access a physical address in the host memory toward the interconnect. An enforcer device may receive the request and extract a key identifier from the request. The enforcer device may determine whether to allow the request to access the physical address via the interconnect based on the key identifier and a list of allowed keys stored on the enforcer device. If the enforcer device determines to not allow the request to access, the enforcer device may modify the physical address and/or the key identifier of the request.
    Type: Application
    Filed: December 10, 2021
    Publication date: June 15, 2023
    Inventors: Ali Ghassan Saidi, Adi Habusha
  • Patent number: 11645075
    Abstract: Execution flows of a program can be characterized by a series of execution events. The rates at which these execution events occur for a particular program can be collected periodically, and the execution events statistics can be utilized for both training a machine learning model, and later on for making classification inferences to determine whether a program run contains any abnormality. When an abnormality is encountered, an alert can be generated and provided to supervisory logic of a computing system to indicate that an abnormal program flow has been detected.
    Type: Grant
    Filed: June 30, 2021
    Date of Patent: May 9, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Barak Wasserstrom, Adi Habusha, Ron Diamant, Erez Sabbag
  • Patent number: 11620233
    Abstract: An integrated circuit for offloading a page migration operation from a host processor is provided. The integrated circuit is configured to: receive, from the host processor, a request to perform the page migration operation from a first physical address to a second physical address; and based on the request, perform the page migration operation. The page migration operation comprises: performing a copy operation of data from the first physical address to the second physical address, and updating a page table entry based on the second physical address, to enable the host processor to access the data from the second physical address based on the updated page table entry.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: April 4, 2023
    Assignee: Amazon Technologies, Inc.
    Inventors: Adi Habusha, Ali Ghassan Saidi, Tzachi Zidenberg
  • Publication number: 20220253392
    Abstract: Techniques for emulating a configuration space may include emulating a set of configuration registers for a set of functions corresponding to a type of peripheral device. The set of functions can include a physical function and a virtual function associated with the physical function. A configuration access request can be processed by retrieving an emulated configuration register from the emulated configuration space, and logging incoming configuration access requests in a configuration transaction log to track configuration accesses.
    Type: Application
    Filed: April 26, 2022
    Publication date: August 11, 2022
    Inventors: Nafea Bshara, Adi Habusha, Guy Nakibly, Georgy Machulsky
  • Patent number: 11397697
    Abstract: Apparatus, methods, and computer-readable storage media are disclosed for core-to-core communication between physical and/or virtual processor cores. In some examples of the disclosed technology, application cores write notification data (e.g., to doorbell or PCI configuration memory space accesses via a memory interface), without synchronizing with the other application cores or the service cores. In one examples of the disclosed technology, a message selection circuit is configured to, serialize data from the plurality of user cores by: receiving data from a user core, selecting one of the service cores to send the data based on a memory location addressed by the sending user core, and sending the received data to a respective message buffer dedicated to the selected service core.
    Type: Grant
    Filed: September 18, 2019
    Date of Patent: July 26, 2022
    Assignee: Amazon Technologies, Inc.
    Inventors: Leah Shalev, Adi Habusha, Georgy Machulsky, Nafea Bshara, Eric Jason Brandwine
  • Patent number: 11343176
    Abstract: In various implementations, provided are systems and methods for an integrated circuit including a completer device, a requester device, and an interconnect fabric. The requester device is configured to generate transactions to the completer device, where each transaction includes a request packet that includes an attribute associated with the completer device; and the interconnect fabric is coupled to the requester device and the completer device. The integrated circuit can also include a QoS regulator configured to identify, based on a first attribute associated with the completer device, a first QoS value establishing a first priority level for a first request packet generated by the requester device, and modify the first request packet to include the first QoS value.
    Type: Grant
    Filed: June 24, 2019
    Date of Patent: May 24, 2022
    Assignee: Amazon Technologies, Inc.
    Inventors: Sergey Kleyman, Adi Habusha, Lior Podorowski, Ofer Naaman
  • Patent number: 11321247
    Abstract: Techniques for emulating a configuration space by a peripheral device may include receiving a access request, determining that the access request is for an emulated configuration space of the peripheral device, and retrieving an emulated configuration from an emulated configuration space. The access request can then be serviced by using the emulated configuration.
    Type: Grant
    Filed: December 26, 2019
    Date of Patent: May 3, 2022
    Assignee: Amazon Technologies, Inc.
    Inventors: Nafea Bshara, Adi Habusha, Guy Nakibly, Georgy Machulsky
  • Patent number: 11275690
    Abstract: Techniques are disclosed for transferring a message between a sender agent and a receiver agent via a shared memory having a main memory and a cache. Feedback data indicative of a number of read messages in the shared memory is generated by the receiver agent. The feedback data is sent from the receiver agent to the sender agent. A number of unread messages in the shared memory is estimated by the sender agent based on the number of read messages. A threshold for implementing a caching policy is set by the sender agent based on the feedback data. The message is designated as cacheable if the number of unread messages is less than the threshold and as non-cacheable if the number of unread messages is greater than the threshold. The message is written to the shared memory based on the designation.
    Type: Grant
    Filed: August 17, 2020
    Date of Patent: March 15, 2022
    Assignee: Amazon Technologies, Inc.
    Inventors: Michael Zuzovski, Ofer Naaman, Adi Habusha
  • Patent number: 11237981
    Abstract: Methods and integrated circuit devices for accelerating memory page classification are provided. Memory systems typically have a combination of faster memory devices and slower memory devices. Frequently accessed memory pages (hot pages) should be maintained in the faster memory devices while less frequently accessed memory pages (cold pages) should be maintained in the slower memory devices. Classification of memory pages as hot or cold pages may be performed by an integrated circuit device that reads counter values that count transactions to corresponding memory pages. A distribution of counter values may be determined, and memory pages may be identified as hot or cold memory pages based on thresholds applied to the distribution.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: February 1, 2022
    Assignee: Amazon Technologies, Inc.
    Inventors: Adi Habusha, Ali Ghassan Saidi, Ohad Gdalyahu
  • Patent number: 11182103
    Abstract: A dedicated input/output (I/O) cache can be used for I/O-to-processor communications. Data received from an I/O device can be written to the I/O cache and also written to a device memory that is accessible to the processor. The processor can then access the data in the fast, dedicated I/O cache if available. Otherwise, the processor can read the data from the memory into a conventional processor cache for processing. Writes to the cache can be full or partial, with partial writes utilizing padding in some embodiments. The data can be written sequentially in a circular manner. Data processed by the processor can be invalidated, and invalidated data can be overwritten on a subsequent write. Phase bits can also be used to indicate the pass during which various writes were performed.
    Type: Grant
    Filed: January 29, 2019
    Date of Patent: November 23, 2021
    Assignee: AMAZON TECHNOLOGIES, INC.
    Inventors: Itai Avron, Adi Habusha, Uri Leder, Svetlana Kantorovych