Patents by Inventor Haris JAVAID

Haris JAVAID 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: 20230367923
    Abstract: A simulation framework is capable modeling a hardware implementation of a reference software system using models specified in different computer-readable languages. The models correspond to different ones of a plurality of subsystems of the hardware implementation. Input data is provided to a first simulator configured to simulate a first model of a first subsystem of the modeled hardware implementation. The input data is captured from execution of the reference software system. The first simulator executing the first model generates a first data file specifying output of the first subsystem. The first data file specifies intermediate data of the modeled hardware implementation. The first data file is provided to a second simulator configured to simulate a second model of a second subsystem of the modeled hardware implementation. The second simulator executing the second model generates a second data file specifying output of the second subsystem.
    Type: Application
    Filed: May 10, 2022
    Publication date: November 16, 2023
    Applicant: Xilinx, Inc.
    Inventors: Ji Yang, Haris Javaid, Sundararajarao Mohan
  • Publication number: 20230370521
    Abstract: The embodiments herein describe a communication protocol (which can be implemented in hardware or software) that provides efficient recover packet loss and can transit large messages in a complex network environment. In one embodiment, each data packet contains an encoded universal sequence which is unique across the sends, which enables cross-sender loss recovery. A receiver can include a transmission control module that controls the receiving buffer and maintains the buffer status and the sender's status. The transmission control module stores incoming packets to the correct position in the receiving buffer and generates acknowledgement notifications. The transmission control module also handles packet loss and out-of-order receiving of the packets containing the transactions.
    Type: Application
    Filed: May 12, 2022
    Publication date: November 16, 2023
    Inventors: Ji YANG, Haris JAVAID, Sundararajarao MOHAN, Gordon John BREBNER
  • Publication number: 20230342775
    Abstract: Embodiments herein describe a hardware accelerator for a blockchain node. The hardware accelerator is used to perform a validation operation to validate one or more transactions before those transactions are committed to a ledger of a blockchain. The embodiments herein describe a scheduler for assigning validation engines to the transactions in response to the number of endorsements in the transactions.
    Type: Application
    Filed: April 26, 2022
    Publication date: October 26, 2023
    Inventors: Haris JAVAID, Ji YANG, Sundararajarao MOHAN
  • Publication number: 20230342151
    Abstract: Embodiments herein describe a hardware accelerator for a blockchain node. The hardware accelerator is used to perform a validation operation to validate one or more transactions before those transactions are committed to a ledger of a blockchain. The embodiments herein describe an out-of-order validation scheme where a collector is used to collect validated transactions out of order. Thus, if a validation pipeline has finished validating a later transaction before another validation pipeline has finished validating an earlier transaction, the pipeline can nonetheless send its results to the collector and retrieve another transaction from a scheduler. In this manner, the downtime for the validation pipelines is reduced or eliminated.
    Type: Application
    Filed: April 26, 2022
    Publication date: October 26, 2023
    Inventors: Haris JAVAID, Ji YANG, Sundararajarao MOHAN
  • Patent number: 11743051
    Abstract: Embodiments herein describe a hardware accelerator for a blockchain node. The hardware accelerator is used to perform a validation operation to validate one or more transactions before those transactions are committed to a ledger of a blockchain. The blockchain may include multiple peer-nodes, each of which contains standard software running on a server or container. Instead of validating a block of transactions using software, the hardware accelerator can validate the transactions in a fraction of the time. The peer-node software then gathers the validation results from the hardware accelerator and combines the results with received block data to derive the block which is committed to the stored ledger.
    Type: Grant
    Filed: October 28, 2020
    Date of Patent: August 29, 2023
    Assignee: XILINX, INC.
    Inventors: Haris Javaid, Ji Yang, Sundararajarao Mohan, Gordon John Brebner
  • Patent number: 11657040
    Abstract: Embodiments herein describe a hardware accelerator (e.g., a network acceleration engine) for a blockchain machine or node. The hardware accelerator parses packets containing separate components of a block of transactions to generate data to perform a validation process. To avoid the latency that comes with using software, the embodiments herein describe a protocol processor in the hardware accelerator that parses the packets and prepares the data so it can be consumed by downstream components in the accelerator without software intervention. These downstream components can then perform a validation operation to validate one or more transactions before those transactions are committed (i.e., added) to a ledger of a permissioned blockchain.
    Type: Grant
    Filed: October 30, 2020
    Date of Patent: May 23, 2023
    Assignee: XILINX, INC.
    Inventors: Ji Yang, Haris Javaid, Sundararajarao Mohan, Gordon John Brebner
  • Patent number: 11431815
    Abstract: Mining proxy acceleration may include receiving, within a mining proxy, packetized data from a mining pool server and determining, using the mining proxy, whether the packetized data qualifies for broadcast processing. In response to determining that the packetized data qualifies for broadcast processing, the packetized data can be modified using the mining proxy to generate broadcast data. The broadcast data can be broadcast, using the mining proxy, to a plurality of miners subscribed to the mining proxy.
    Type: Grant
    Filed: May 7, 2020
    Date of Patent: August 30, 2022
    Assignee: Xilinx, Inc.
    Inventors: Guanwen Zhong, Haris Javaid, Chengchen Hu, Ji Yang, Gordon J. Brebner
  • Publication number: 20220138178
    Abstract: Embodiments herein describe a hardware accelerator (e.g., a network acceleration engine) for a blockchain machine or node. The hardware accelerator parses packets containing separate components of a block of transactions to generate data to perform a validation process. To avoid the latency that comes with using software, the embodiments herein describe a protocol processor in the hardware accelerator that parses the packets and prepares the data so it can be consumed by downstream components in the accelerator without software intervention. These downstream components can then perform a validation operation to validate one or more transactions before those transactions are committed (i.e., added) to a ledger of a permissioned blockchain.
    Type: Application
    Filed: October 30, 2020
    Publication date: May 5, 2022
    Inventors: Ji YANG, Haris JAVAID, Sundararajarao MOHAN, Gordon John BREBNER
  • Publication number: 20220131704
    Abstract: Embodiments herein describe a hardware accelerator for a blockchain node. The hardware accelerator is used to perform a validation operation to validate one or more transactions before those transactions are committed to a ledger of a blockchain. The blockchain may include multiple peer-nodes, each of which contains standard software running on a server or container. Instead of validating a block of transactions using software, the hardware accelerator can validate the transactions in a fraction of the time. The peer-node software then gathers the validation results from the hardware accelerator and combines the results with received block data to derive the block which is committed to the stored ledger.
    Type: Application
    Filed: October 28, 2020
    Publication date: April 28, 2022
    Inventors: Haris JAVAID, Ji YANG, Sundararajarao MOHAN, Gordon John BREBNER
  • Patent number: 10684776
    Abstract: A method determines a configuration for inter-processor communication for a heterogeneous multi-processor system. The method determines at least one subgraph of a graph representing communication between processors of the heterogeneous multi-processor system. For each subgraph the method (i) determines a plurality of subgraph design points. Each subgraph design point has a variation of channel mapping between any two of the processors in the subgraph by selecting from first-in-first-out (FIFO) memory and shared cache, and varying the shared cache and a local memory associated with at least one of the processors according to the channel mapping; and (ii) selects a memory solution for the subgraph, based on a cost associated with the selected memory solution. The method then determines a configuration for the graph of the heterogeneous multi-processor system, based on the selected memory solutions, to determine the configuration for inter-processor communication for the heterogeneous multi-processor system.
    Type: Grant
    Filed: June 10, 2015
    Date of Patent: June 16, 2020
    Assignee: CANON KABUSHIKI KAISHA
    Inventors: Kapil Batra, Yusuke Yachide, Haris Javaid, Sridevan Parameswaran, Su Myat Min Shwe
  • Patent number: 9477799
    Abstract: A method of determining a metric of a System-on-Chip (SoC), the method comprising: receiving a model dependency graph representing the SoC, the model dependency graph having a plurality of nodes representing components of the SoC and their models, and a plurality of directed edges between the nodes representing variables passed between the nodes of the model dependency graph; modifying the model dependency graph by clustering a plurality of strongly connected nodes in the model dependency graph into a single clustered node to form a clustered model dependency graph; determining an execution schedule according to a direction of an edge in the clustered model dependency graph; and executing models in the clustered model dependency graph according to the execution schedule to determine metrics of the SoC.
    Type: Grant
    Filed: November 26, 2014
    Date of Patent: October 25, 2016
    Assignee: CANON KABUSHIKI KAISHA
    Inventors: Yusuke Yachide, Haris Javaid, Sridevan Parameswaran
  • Publication number: 20150363110
    Abstract: A method determines a configuration for inter-processor communication for a heterogeneous multi-processor system. The method determines at least one subgraph of a graph representing communication between processors of the heterogeneous multi-processor system. For each subgraph the method (i) determines a plurality of subgraph design points. Each subgraph design point has a variation of channel mapping between any two of the processors in the subgraph by selecting from first-in-first-out (FIFO) memory and shared cache, and varying the shared cache and a local memory associated with at least one of the processors according to the channel mapping; and (ii) selects a memory solution for the subgraph, based on a cost associated with the selected memory solution. The method then determines a configuration for the graph of the heterogeneous multi-processor system, based on the selected memory solutions, to determine the configuration for inter-processor communication for the heterogeneous multi-processor system.
    Type: Application
    Filed: June 10, 2015
    Publication date: December 17, 2015
    Inventors: KAPIL BATRA, Yusuke Yachide, Haris Javaid, Sridevan Parameswaran, Su Myat Min Shwe
  • Publication number: 20150154330
    Abstract: A method of determining a metric of an SoC, the method comprising: receiving a model dependency graph representing the SoC, the model dependency graph having a plurality of nodes representing components of the SoC and their models, and a plurality of directed edges between the nodes representing variables passed between the nodes of the model dependency graph; modifying the model dependency graph by clustering a plurality of strongly connected nodes in the model dependency graph into a single clustered node to form a clustered model dependency graph; determining an execution schedule according to a direction of an edge in the clustered model dependency graph; and executing models in the clustered model dependency graph according to the execution schedule to determine metrics of the SoC.
    Type: Application
    Filed: November 26, 2014
    Publication date: June 4, 2015
    Inventors: YUSUKE YACHIDE, Haris JAVAID, SRIDEVAN PARAMESWARAN