With Access Regulating Patents (Class 710/28)
  • Patent number: 11964669
    Abstract: Provided are autonomous vehicles and methods of controlling autonomous vehicles through topological planning with bounds, including receiving map data and sensor data, expanding a topological tree by adding a plurality of nodes to represent a plurality of actions associated with the plurality of constraints, generating a bound based on a constraint in the geographic area, the bound associated with an action for navigating the autonomous vehicle relative to the at least one constraint, storing the bound in a central bound storage, linking a set of bounds of a tree node to the bound via a bound identifier, wherein the first bound is initially linked as an active bound, or alternatively, as an inactive bound after determining it is not the most restrictive bound at any sample index, and control the autonomous vehicle based on the topological tree, to navigate the plurality of constraints.
    Type: Grant
    Filed: May 24, 2023
    Date of Patent: April 23, 2024
    Assignee: Argo AI, LLC
    Inventors: Neal Andrew Seegmiller, Patrick Stirling Barone, Arek Viko Sredzki
  • Patent number: 11895043
    Abstract: The present invention provides a method for accessing a system memory, wherein the method includes the steps of: reading a descriptor from the system memory, where the descriptor includes a buffer start address field and a buffer size field, wherein the buffer start address field includes a start address of a buffer in the system memory, and the buffer size field indicates a size of the buffer; receiving multiple packets, and writing the multiple packets in to the buffer; modifying the descriptor according to the multiple packets stored in the buffer to generate a modified descriptor, wherein the modified descriptor only comprises information of part of the multiple packets or does not comprise information of any one of the multiple packets; and writing the modified descriptor into the system memory.
    Type: Grant
    Filed: November 25, 2022
    Date of Patent: February 6, 2024
    Assignee: Realtek Semiconductor Corp.
    Inventor: Chia-Hung Lin
  • Patent number: 11853179
    Abstract: A method for detecting a Direct Memory Access (DMA) memory address violation when testing PCIe devices is disclosed. The method for detecting a DMA memory address violation when testing PCIe devices applies to unintentional and intentional accesses of memory space outside of an area in memory specified by the device driver developed for the device.
    Type: Grant
    Filed: December 27, 2019
    Date of Patent: December 26, 2023
    Assignee: TELEDYNE LECROY, INC.
    Inventors: Aaron Masters, Kevin Lemay, Chuck Tuffli
  • Patent number: 11768967
    Abstract: An example apparatus can receive a DMA request from a device, where the DMA request comprises an address and an ID of the device that uniquely identifies the device and wherein the device is a bus mastering device. The example apparatus can access a range of addresses using the ID of the device. An example apparatus can determine whether the address is in the range of addresses and can process the DMA request responsive to verifying that the address is in the range of addresses.
    Type: Grant
    Filed: March 15, 2018
    Date of Patent: September 26, 2023
    Assignee: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
    Inventors: Wei Ze Liu, Monji G Jabori
  • Patent number: 11726666
    Abstract: A network adapter includes a network interface controller and a processor. The network interface controller is to communicate over a peripheral bus with a host, and over a network with a remote storage device. The processor is to expose on the peripheral bus a peripheral-bus device that communicates with the host using a bus storage protocol, to receive first I/O transactions of the bus storage protocol from the host, via the exposed peripheral-bus device, and to complete the first I/O transactions in the remote storage device by (i) translating between the first I/O transactions and second I/O transactions of a network storage protocol, and (ii) executing the second I/O transactions in the remote storage device. For receiving and completing the first I/O transactions, the processor is to cause the network interface controller to transfer data directly between the remote storage device and a memory of the host using zero-copy.
    Type: Grant
    Filed: July 11, 2021
    Date of Patent: August 15, 2023
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Ben Ben-Ishay, Boris Pismenny, Yorai Itzhak Zack, Khalid Manaa, Liran Liss, Uria Basher, Or Gerlitz, Miriam Menes
  • Patent number: 11697429
    Abstract: Provided are autonomous vehicles and methods of controlling autonomous vehicles through topological planning with bounds, including receiving map data and sensor data, expanding a topological tree by adding a plurality of nodes to represent a plurality of actions associated with the plurality of constraints, generating a bound based on a constraint in the geographic area, the bound associated with an action for navigating the autonomous vehicle relative to the at least one constraint, storing the bound in a central bound storage, linking a set of bounds of a tree node to the bound via a bound identifier, wherein the first bound is initially linked as an active bound, or alternatively, as an inactive bound after determining it is not the most restrictive bound at any sample index, and control the autonomous vehicle based on the topological tree, to navigate the plurality of constraints.
    Type: Grant
    Filed: February 10, 2021
    Date of Patent: July 11, 2023
    Assignee: Argo AI, LLC
    Inventors: Neal Andrew Seegmiller, Patrick Stirling Barone, Arek Viko Sredzki
  • Patent number: 11640365
    Abstract: Embodiments relate to an integrated circuit of an electronic device that coordinates activities with another integrated circuit of the electronic device. The integrated circuit includes an interface circuit and a processor circuit. The interface circuit communicates over a multi-drop bus connected to multiple electronic components. The processor circuit receives an authorization request from the integrated circuit via the interface circuit and the multi-drop bus. The received authorization request relates to authorization to perform an activity on the other integrated circuit. In response to receiving the authorization request, the processor circuit determines whether the other integrated circuit is authorized to execute the activity.
    Type: Grant
    Filed: October 13, 2021
    Date of Patent: May 2, 2023
    Inventors: Helena Deirdre O'Shea, Camille Chen, Vijay Kumar Ramamurthi, Alon Paycher, Matthias Sauer, Bernd W. Adler
  • Patent number: 11520721
    Abstract: A digital interface circuit includes a queue block configured to be coupled between an analog-to-digital converter (ADC) and a Direct Memory Access (DMA) controller of a processor, where the queue block comprises a command buffer and is configured to: receive a first command from the DMA controller; store the first command in the command buffer; modify the first command in accordance with first control bits of the first command to generate a modified first command; and send the modified first command to the ADC.
    Type: Grant
    Filed: July 20, 2020
    Date of Patent: December 6, 2022
    Assignees: STMICROELECTRONICS INTERNATIONAL N.V., STMICROELECTRONICS APPLICATION GMBH
    Inventors: Nirav Prashantkumar Trivedi, Sandip Atal, Rolf Nandlinger
  • Patent number: 11449272
    Abstract: Various embodiments enable a memory sub-system to perform a read operation based on consolidated memory region description data, which can be generated based on a memory region description data (e.g., SGL) provided by a host system for the read operation.
    Type: Grant
    Filed: March 9, 2021
    Date of Patent: September 20, 2022
    Assignee: Micron Technology, Inc.
    Inventor: David Matthew Springberg
  • Patent number: 11436157
    Abstract: In a solution for accessing a storage system, a client sends, based on an obtained start address that is of a queue of an NVMe storage device and to which an access request points and an obtained logical address that is of the NVMe storage device and to which the access request points, a remote direct memory access command to a storage node in which the NVMe storage device is located.
    Type: Grant
    Filed: May 21, 2020
    Date of Patent: September 6, 2022
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Dan Luo, Wei Zhang, Jiaotong Zou
  • Patent number: 10795608
    Abstract: A memory stores: a communication driver that is a software program which runs in an operating system and communicates with a host; and a storage service program that is a software program which runs on the operating system and controls retention of data by a storage apparatus as a storage. The processor is capable of configuring a plurality of queue pairs which transmit information in inter-process communication between the communication driver and the storage service program, and the processor further configures command distribution information which associates a queue pair and a logical volume with each other, specifies a queue pair corresponding to a logical volume that is an access destination of a command requested by the host, and enqueues a command request of the command to the specified queue pair.
    Type: Grant
    Filed: February 19, 2016
    Date of Patent: October 6, 2020
    Assignee: HITACHI, LTD.
    Inventors: Hirotoshi Akaike, Kentaro Shimada, Kazushi Nakagawa
  • Patent number: 10761999
    Abstract: A method of accessing data by a storage device includes issuing a DMA read request of a host memory to a host. A host turnaround time is estimated. The host turnaround time is a time interval between when the DMA read request is issued and when an initial data packet of requested data from the host from the DMA read request arrives to the storage device. A data-path of the storage device is initialized to transfer the requested data of the DMA read request to a device buffer of the storage device. Initialization of the data-path is started after issuance of the DMA read request and is completed at an end of the estimated host turnaround time. The requested data is received from the host. The received requested data is transferred utilizing the data-path to the device buffer.
    Type: Grant
    Filed: May 30, 2019
    Date of Patent: September 1, 2020
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Noga Harari Shechter, Shay Benisty
  • Patent number: 10672401
    Abstract: Systems, apparatus and methods are described including operations for a dual mode GMM (Gaussian Mixture Model) scoring accelerator for both speech and video data.
    Type: Grant
    Filed: June 30, 2016
    Date of Patent: June 2, 2020
    Assignee: Intel Corporation
    Inventors: Nikhil Pantpratinidhi, Gokcen Cilingir, Michael Deisher, Ohad Falik, Michael Kounavis
  • Patent number: 10635615
    Abstract: A first sequence of transaction control sets (TCSs) collectively describe a first data transfer by which first data is to be moved between a first peripheral and first and second memory buffers. A first portion of the first data is transferred between the first memory buffer and the first peripheral according to a first TCS in the first sequence. Subsequently, a second portion of the first data is transferred between the second memory buffer and the first peripheral according to a second TCS in the first sequence. An actual error detection code is determined based on the first and/or second portions of the first data or an address actually processed during execution of the first and/or second TCSs. An error is selectively flagged based on whether the actual error detection code is the same as an expected error detection code contained in a third TCS in the first sequence.
    Type: Grant
    Filed: January 25, 2019
    Date of Patent: April 28, 2020
    Assignee: Infineon Technologies AG
    Inventors: Simon Cottam, Patrice Woodward
  • Patent number: 10528494
    Abstract: Hardware accelerated synchronization of data movement across multiple direct memory access (DMA) engines is provided using techniques in which the order of descriptor processing is guaranteed for scenarios involving a single CPU and multiple DMA engines as well as those involving multiple CPUs and multiple DMA engines.
    Type: Grant
    Filed: July 17, 2017
    Date of Patent: January 7, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Chad McBride, Jeffrey Bradford, Steven Wheeler, Christopher Johnson, Boris Bobrov, Andras Tantos
  • Patent number: 10198377
    Abstract: A DMA-capable device of a virtualization host stores a DMA write record, indicating a portion of host memory that is targeted by a DMA write operation, in a write buffer accessible from a virtualization management component of the host. The virtualization management component uses the DMA write record to identify a portion of memory to be copied to a target location to save a representation of a state of a particular virtual machine instantiated at the host.
    Type: Grant
    Filed: June 3, 2016
    Date of Patent: February 5, 2019
    Assignee: Amazon Technologies, Inc.
    Inventors: Matthew Shawn Wilson, Anthony Nicholas Liguori, Shuvabrata Ganguly
  • Patent number: 10095643
    Abstract: A direct memory access control device for at least one computing unit includes a terminal for connecting the direct memory access control device to a bus system that connects the computing unit to a working memory, and processing circuitry configured to read out, from a source module connected to the bus system, first data of at least one information block stored at least temporarily in the source module, ascertain a target address in the working memory for the at least one information block as a function of the first data and of configuration information, and transmit the at least one information block from the source module to the target address using a direct memory access by the source module to the working memory.
    Type: Grant
    Filed: April 5, 2017
    Date of Patent: October 9, 2018
    Assignee: ROBERT BOSCH GMBH
    Inventors: Eugen Becker, Axel Aue, Eckart Schlottmann
  • Patent number: 9886276
    Abstract: A data processing apparatus for accessing several system registers using a single command includes system registers and command generation circuitry capable of analysing a plurality of decoded system register access instructions, each specifying a system register identifier. In response to a predetermined condition, the command generation circuitry generates a single command to represent the plurality of decoded system register access instructions. The predetermined condition comprises a requirement that a total width of the system registers specified by the plurality of decoded system register access instructions is less than or equal to a predefined data processing width.
    Type: Grant
    Filed: October 10, 2014
    Date of Patent: February 6, 2018
    Assignee: ARM Limited
    Inventors: Loïc Pierron, Antony John Penton
  • Patent number: 9639478
    Abstract: A method for controlling access to a memory of a computer system configured with at least one logical partition may include receiving a first request to map a first page of the memory, the request identifying a first requester. A first logical partition associated with the first page may be determined. It may be determined that an attribute of the first logical partition limits access to individual pages of the first logical partition to a single requester, and that the first page is available to be mapped to a requester. The first page may be mapped to the first requester and a flag indicating that the first page is unavailable for an additional mapping may be set. The first request may be from a device driver on behalf of an input/output adapter, as the first requester, to use the first page in a direct memory access transfer.
    Type: Grant
    Filed: January 17, 2014
    Date of Patent: May 2, 2017
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee N. Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9615049
    Abstract: A video multiviewer system may include a video input/output (I/O) controller, a system memory, and a graphics processing unit (GPU) comprising a GPU memory. The system may further include a central processing unit (CPU) for operating the video I/O controller to transfer video data to the GPU memory via direct memory access (DMA) without being stored in the system memory, and a display for displaying multiple video windows based upon video data in the GPU memory.
    Type: Grant
    Filed: April 10, 2008
    Date of Patent: April 4, 2017
    Assignee: Imagine Communications Corp.
    Inventor: Chad Faragher
  • Patent number: 9569392
    Abstract: A data processing system includes a processor core, a system memory including a first data structure including a plurality of entries mapping requester identifiers (IDs) to partitionable endpoint (PE) numbers, and an input/output (I/O) subsystem including a plurality of PEs each having an associated PE number, where each of the plurality of PEs including one or more requesters each having a respective requester ID. An I/O host bridge, responsive to receiving an I/O message including a requester ID and an address, determines a PE number by reference to a first entry from the first data structure, and responsive to determining the PE number, accesses a second entry of the second data structure utilizing the PE number as an index and validates the address by reference to the accessed entry in the second data structure. The I/O host bridge, responsive to successful validation, provides a service indicated by the I/O message.
    Type: Grant
    Filed: April 16, 2012
    Date of Patent: February 14, 2017
    Assignee: International Business Machines Corporation
    Inventors: Eric N. Lais, Steve Thurber
  • Patent number: 9336029
    Abstract: A data processing system includes a processor core, a system memory including a first data structure including entries mapping requester identifiers (IDs) to partitionable endpoint (PE) numbers and a second data structure, and an input/output (I/O) subsystem including an I/O bridge and a plurality of PEs each including one or more requesters each having a respective requester ID. The I/O host bridge, responsive to receiving an I/O message including a requester ID, determines a PE number by reference to a first entry from the first data structure, and responsive to determining the PE number, accesses a second entry of the second data structure utilizing the PE number as an index, where the second entry indicating one or more of the plurality of PEs affected by the message. The I/O host bridge services the I/O message with reference to each of the plurality of PEs indicated by the second entry.
    Type: Grant
    Filed: August 4, 2010
    Date of Patent: May 10, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Eric N. Lais, Steve Thurber
  • Patent number: 9323700
    Abstract: A semiconductor integrated circuit includes a bus, a memory connected to the bus, an arithmetic processing unit connected to the bus, a first DMA controller connected to the bus, and at least one functional block connected to the bus. The functional block includes a functional macro which is configured to perform a process that realizes a given function, a second DMA controller which is configured to control data transfer between the memory and the functional macro, and an access condition setting unit which is configured to set an access condition regarding the DMA transfer between the memory and the functional macro.
    Type: Grant
    Filed: February 19, 2013
    Date of Patent: April 26, 2016
    Assignee: Socionext Inc.
    Inventor: Masatoshi Tanabata
  • Patent number: 9264497
    Abstract: A system and method for hosting one or more mobile devices on one or more servers in a cloud computing environment for testing mobile applications is provided. The system comprises client virtualization managers to collect and send information related to the mobile devices to the servers and mobile devices virtualization managers to receive and use the information to establish a connection with the client virtualization managers for accessing and hosting the mobile devices. Further, the system comprises a server application to facilitate testers to select a mobile device from a list of the hosted mobile devices and an automation tool interface handler to virtualize Universal Serial Bus (USB) port of local machines connected to the servers, connect the selected mobile device to the virtualized USB port of the local machines and facilitate testing of the mobile applications on the locally available mobile device by test automation tools.
    Type: Grant
    Filed: February 12, 2014
    Date of Patent: February 16, 2016
    Assignee: COGNIZANT TECHNOLOGY SOLUTIONS INDIA PVT. LTD.
    Inventors: Somasundaram Jambunathan, Ramakrishnan Venkatasubramanian
  • Patent number: 9195621
    Abstract: A communication channel controller includes a queue, a memory map, and a scheduler. The queue to store a first memory transfer request received at the communication channel controller. The memory map stores information to identify a memory address range to be associated with a memory. The scheduler to compare a source address of the first memory transfer in the queue to the memory address range in the memory map to determine whether the source address of the first memory transfer request targets the memory, and in response allocate the first memory transfer request to a first communication channel of a plurality of communication channels in response to the first communication channel having all of its outstanding memory transactions to a common source address bank and source address page as a source address bank and a source address page of the first memory transfer request.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: November 24, 2015
    Assignee: Freescale Semiconductor, Inc.
    Inventors: Kun Xu, Tommi M. Jokinen, David B. Kramer
  • Patent number: 9098491
    Abstract: This invention discloses a method for data transfer between a host memory and a flash memory module through direct memory access (DMA), and a related data-transfer subsystem. In one embodiment, the subsystem comprises a DMA controller, a flash-memory controller, a data buffer for buffering data transferred between the DMA controller and the flash-memory controller, and a status-register group for storing a current status of the data buffer. The DMA controller and the flash-memory controller are configured such that both of them are allowed to update the current status and to detect a change of the current status during the data transfer, so that a substantial part of the data transfer's process is executed through direct interaction between the DMA controller and the flash-memory controller without involving a central processing unit. The subsystem may further comprise a command storing unit for storing command packages for execution by the flash-memory controller.
    Type: Grant
    Filed: November 23, 2012
    Date of Patent: August 4, 2015
    Assignee: Hong Kong Applied Science and Technology Research Institute Company Limited
    Inventors: Weiqing Gu, Xiaoji Wang, Xianzhi Tang, Conghao Sun, Fangyao Chen
  • Patent number: 9092366
    Abstract: A computing device may split a translation table used when performing a DMA operation into two different translation tables. To split the translation table, the computing device may update the registers in the IOMMU to include pointers to the two different translation tables. For example, the IOMMU may update one register to point to the same starting address as the original translation table but assign a shorter length (i.e., fewer entries) to that table. The extra entries may then be used to form the other translation table by adding a new pointer to one of the IOMMU registers. The two translation tables may be owned by the same service provider or two different service providers. Alternatively, the computing device may assign the two tables to the same service provider which in turn assigns the tables to respective client devices executed by the service provider.
    Type: Grant
    Filed: October 18, 2013
    Date of Patent: July 28, 2015
    Assignee: International Business Machines Corporation
    Inventors: Justin K. King, John R. Oberly, III, Travis J. Pizel
  • Patent number: 9092365
    Abstract: A computing device may split a translation table used when performing a DMA operation into two different translation tables. To split the translation table, the computing device may update the registers in the IOMMU to include pointers to the two different translation tables. For example, the IOMMU may update one register to point to the same starting address as the original translation table but assign a shorter length (i.e., fewer entries) to that table. The extra entries may then be used to form the other translation table by adding a new pointer to one of the IOMMU registers. The two translation tables may be owned by the same service provider or two different service providers. Alternatively, the computing device may assign the two tables to the same service provider which in turn assigns the tables to respective client devices executed by the service provider.
    Type: Grant
    Filed: August 22, 2013
    Date of Patent: July 28, 2015
    Assignee: International Business Machines Corporation
    Inventors: Justin K. King, John R. Oberly, III, Travis J. Pizel
  • Patent number: 9043504
    Abstract: APIs discussed herein promote efficient and timely interoperability between hardware and software components within the media processing pipelines of media content players. A PhysMemDataStructure API facilitates a hardware component's direct access to information within a memory used by a software component, to enable the hardware component to use direct memory access techniques to obtain the contents of the memory, instead of using processor cycles to execute copy commands. The PhysMemDataStructure API exposes one or more fields of data structures associated with units of media content stored in a memory used by a software component, and the exposed fields store information about the physical properties of the memory locations of the units of media content. SyncHelper APIs are used for obtaining information from, and passing information to, hardware components, which information is used to adjust the hardware components' timing for preparing media samples of synchronously-presentable media content streams.
    Type: Grant
    Filed: December 16, 2013
    Date of Patent: May 26, 2015
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Rajasekaran Rangarajan, Martin Regen, Richard Gains Russell
  • Patent number: 9037778
    Abstract: A method and apparatus to interface a semiconductor storage device and a host in order to provide performance throttling of the semiconductor storage device. In the method, the semiconductor storage can receive a setting request command from the host. The semiconductor storage device sets a performance throttling parameter to a particular value in response to the setting request command. The semiconductor storage device can send to the host a setting response signal indicating completion of the setting of the performance throttling parameter.
    Type: Grant
    Filed: August 18, 2011
    Date of Patent: May 19, 2015
    Assignee: SAMSUNG Electronics Co., Ltd.
    Inventors: Han Bin Yoon, Dong Gi Lee, Hyuck-Sun Kwon
  • Patent number: 9032112
    Abstract: In one embodiment, a method includes storing, in a storage unit, a number of data transfer requests to issue for a data request signal. Data transfer requests are issued to a direct memory access (DMA) controller of a system for transfer of data to a buffer unit. The stored number of data transfer requests is determined. The issuance of data transfer requests are stopped when the stored number of data transfer requests is met.
    Type: Grant
    Filed: August 19, 2013
    Date of Patent: May 12, 2015
    Assignee: Marvell International Ltd.
    Inventor: Pinaki Mukherjee
  • Patent number: 8977816
    Abstract: A cache and disk management method is provided. In the cache and disk management method, a command to delete all valid data stored in a cache, or specific data corresponding to a part of the valid data may be transmitted to a plurality of member disks. That is, all of the valid data or the specific data may exist in the cache only, and may be deleted from the plurality of member disks. Accordingly, the plurality of member disks may secure more space, an internal copy overhead may be reduced, and more particularly, solid state disks may achieve better performance.
    Type: Grant
    Filed: December 23, 2009
    Date of Patent: March 10, 2015
    Assignee: OCZ Storage Solutions Inc.
    Inventor: Soo Gil Jeong
  • Patent number: 8972624
    Abstract: Described herein are methods and systems for virtualization of a USB device to enable sharing of the USB device among a plurality of host processors in a multi-processor computing system. A USB virtualization unit for sharing of the USB device include a per-host register unit, each corresponding to a host processor includes one or more of a host register interface, host data interface, configuration registers, and host control registers, configured to receive simultaneous requests from one or more host processors from amongst the plurality of host processors for the USB device. The USB virtualization unit also includes a pre-fetch direct memory access (DMA) configured to pre-fetch DMA descriptors associated with the requests to store in a buffer. The USB virtualization unit further includes an endpoint specific switching decision logic (ESL) configured to schedule data access based on the DMA descriptors from the host processor's local memory corresponding to each request.
    Type: Grant
    Filed: April 9, 2012
    Date of Patent: March 3, 2015
    Assignee: Ineda Systems Pvt. Ltd.
    Inventors: Balaji Kanigicherla, Siva Raghuram Voleti, Surya Narayana Dommeti, Krishna Mohan Tandaboina, Rajani Lotti
  • Patent number: 8959304
    Abstract: A data processing apparatus comprises a primary processor, a secondary processor configured to perform secure data processing operations and non-secure data processing operations and a memory configured to store secure data used by the secondary processor when performing the secure data processing operations and configured to store non-secure data used by the secondary processor when performing the non-secure data processing operations, wherein the secure data cannot be accessed by the non-secure data processing operations, wherein the secondary processor comprises a memory management unit configured to administer accesses to the memory from the secondary processor, the memory management unit configured to perform translations between virtual memory addresses used by the secondary processor and physical memory addresses used by the memory, wherein the translations are configured in dependence on a page table base address, the page table base address identifying a storage location in the memory of a set of des
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: February 17, 2015
    Assignee: ARM Limited
    Inventors: Dominic Hugo Symes, Ola Hugosson, Donald Felton, Sean Tristram Ellis
  • Patent number: 8943240
    Abstract: A direct memory access circuit includes a buffer handler configured to store received data within a buffer in a buffer memory coupled to the direct memory access circuit and to generate a descriptor for the buffer. The direct memory access circuit further includes a descriptor handler coupled to the buffer handler. The descriptor handler is configured to determine a descriptor address for the descriptor and to store the descriptor at the determined address within a descriptor memory coupled to the direct memory access circuit.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: January 27, 2015
    Assignee: Xilinx, Inc.
    Inventor: Ramesh R. Subramanian
  • Patent number: 8930664
    Abstract: Data is written from a first domain to a FIFO memory buffer in a second domain. The first domain uses a first clock signal, the second domain uses a second clock signal and the memory buffer uses the first clock signal that is delivered alongside the data. The data is read from the memory buffer using the second clock signal. A read pointer is adjusted and synchronised with the delivered first clock signal. A token is generated using the delivered first clock signal, based on the read pointer. The token represents a capacity of the memory buffer having been made available. The token is passed to the first domain and synchronised with the first clock signal. The writing of data to the memory buffer is controlled based on a comparison between the synchronised token and a previously received token.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: January 6, 2015
    Assignee: Broadcom Corporation
    Inventors: Ari Tapani Kulmala, Jaakko Illmari Sertamo
  • Patent number: 8924610
    Abstract: SAS/SATA Store-Forward (SSSF) buffering enables SAS/SATA block storage devices capable of slower physical link rates to transfer data at a SAS topology data rate. 6 Gbps SAS and SATA disk drives can exchange data at 12 Gbps with 12 Gbps hosts through 12 Gbps SAS expanders employing an SSSF device. The SSSF device improves data transfer performance in the storage area network by optimizing host-side link utilization. The device includes a host-side interface communicating with the host at a host-side rate, a drive-side interface communicating with the target at a drive-side rate equal to or less than the host-side rate, a buffer receiving SAS frames or SATA FIS's, and control logic to control communication between the host-side interface and buffer at the host-side rate and between the drive-side interface and the buffer at the drive-side rate.
    Type: Grant
    Filed: January 29, 2013
    Date of Patent: December 30, 2014
    Assignee: PMC-Sierra US, Inc.
    Inventors: Larrie Simon Carr, Sanjay Goyal, Kaihong Wang, Atit Patel
  • Patent number: 8918551
    Abstract: A host I/F unit has a management table for managing an MPPK which is in-charge of the control of input/output processing for a storage area of an LDEV, and if a host computer transmits an input/output request for the LDEV, the host I/F unit transfers the input/output request to the MPPK which is in-charge of the input/output processing for the LDEV based on the management table, an MP of the MPPK performs the input/output processing based on the input/output request, and the MP of the MPPK also judges whether the MPPK that is in-charge of the input/output processing for the LDEV is to be changed, and sets the management table so that an MPPK which is different from the MPPK that is in-charge is to be in-charge of the input/output processing for the LDEV.
    Type: Grant
    Filed: November 26, 2013
    Date of Patent: December 23, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Kazuyoshi Serizawa, Yasutomo Yamamoto, Norio Shimozono, Akira Deguchi, Hisaharu Takeuchi, Takao Sato, Hisao Homma
  • Patent number: 8914556
    Abstract: Embodiments of the invention describe systems, apparatuses and methods that enable sharing Remote Direct Memory Access (RDMA) device hardware between a host and a peripheral device including a CPU and memory complex (alternatively referred to herein as a processor add-in card). Embodiments of the invention utilize interconnect hardware such as Peripheral Component Interconnect express (PCIe) hardware for peer-to-peer data transfers between processor add-in cards and RDMA devices. A host system may include modules or logic to map memory and registers to and/or from the RDMA device, thereby enabling I/O to be performed directly to and from user-mode applications on the processor add-in card, concurrently with host system I/O operations.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: December 16, 2014
    Assignee: Intel Corporation
    Inventors: William R. Magro, Robert J. Woodruff, David M. Lee, Arlin R. Davis, Mark Sean Hefty, Jerrie L. Coffman
  • Patent number: 8909823
    Abstract: A data processing device includes a memory, a direct memory access controller including a receiving module configured to receive data coming from outside the device and for writing the data in a main buffer memory of the memory, and a processing unit programmed to read and process data written by the receiving module in a work area of the main buffer memory. The main buffer memory is divided between a used space, where the receiving module is configured not to write, and free space, where the receiving module is configured to write. The processing unit is further programmed to define the work area, and the direct memory access controller includes a buffer memory manager configured to free data written in the main buffer memory, by defining a location of this data as a free space, only when this data is outside the work area.
    Type: Grant
    Filed: June 23, 2011
    Date of Patent: December 9, 2014
    Assignees: Commissariat a l'Energie Atomique et aux Energies Alternatives, Institut National de Recherche en Informatique et en Automatique
    Inventors: Riadh Ben Abdallah, Antoine Fraboulet, Jerome Martin, Tanguy Risset
  • Patent number: 8898444
    Abstract: Described are techniques for providing access to storage devices. An I/O request directed to a storage device is sent over a network connection from a first computer system to a second computer system. The second computer system includes a simulated computing environment simulating aspects of the first computer system. The I/O request is received at the second computer system. The data storage system is connected to the second computer system over a first connection operating in accordance with a first protocol thereby providing the second computer system access to the storage device of the data storage system. The simulated computing environment of the second computer system may, for example, include emulation capabilities in accordance with the first protocol thereby allowing the second computer system to issue the first I/O request to the first storage device on behalf of the first computer system.
    Type: Grant
    Filed: December 22, 2011
    Date of Patent: November 25, 2014
    Assignee: EMC Corporation
    Inventors: Douglas E. LeCrone, Paul A. Linstead, Roger A. Ouellete, Denis J. Burt
  • Patent number: 8892788
    Abstract: A method and system for copying data within a guest using a direct memory access (DMA) engine. A computer system hosts a hypervisor and a guest. The hypervisor detects an inquiry of the guest about a DMA engine. In response to the inquiry, the hypervisor indicates to the guest that a DMA engine is available. The hypervisor then receives a DMA request from the guest, the DMA request indicating a source address and a target address for copying data. Both the source address and the target address are within an address space allocated to the guest. Based on one or more data transfer policies, the hypervisor determines whether to direct the DMA engine to copy the data for the guest.
    Type: Grant
    Filed: February 22, 2011
    Date of Patent: November 18, 2014
    Assignee: Red Hat Israel, Ltd.
    Inventor: Michael Tsirkin
  • Patent number: 8850084
    Abstract: A data processing system includes an audio processor with a main memory for storing data, first and second buffers for temporarily storing the data to input/output an audio signal, and a data input/output (I/O) unit for outputting the stored data. A direct memory access (DMA) controller is provided for transmitting data between the main memory and the first and second buffers according to a DMA transmission process. If transmission of the data stored in the first buffer ends and an interrupt signal is thus generated, the DMA controller increases sizes of the first and second buffers during transmission of the data stored in the second buffer.
    Type: Grant
    Filed: March 15, 2012
    Date of Patent: September 30, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventor: Kil-Yeon Lim
  • Patent number: 8838782
    Abstract: In a network protocol processing system in which variables of each of TCP transmission processing and TCP reception processing depend on each other, asynchronous parallel processing is realized between a transmission processing block and a reception processing block for updated protocol processing. Specifically, the system includes a high priority queue for transferring control data to be processed with high priority, a low priority queue for control data other than the above control data, and priority control means for distributing the control data to two kinds of queues. When a request for session establishment and the session disconnection of a new TCP session is issued from an application during transmission of TCP data, data related with the session establishment and the session disconnection is notified preferentially through the high priority queue, and other control data is transferred through the low priority queue.
    Type: Grant
    Filed: July 2, 2009
    Date of Patent: September 16, 2014
    Assignee: NEC Corporation
    Inventors: Masato Yasuda, Kiyohisa Ichino
  • Patent number: 8838907
    Abstract: An endpoint device (14) is registered in association with a host memory address in response to receipt of a request for a notification of a change in content state of the host memory address from the endpoint device (14). In response to a change in content state of the host memory address, a notification that the host memory address has changed content state is sent to the endpoint device (14). In response to receipt of the notification by the endpoint device (14), semantics associated with a change of content state of the host memory address by a data schema (42) is determined and an action is performed by the endpoint device (14) in accordance with the determined semantics.
    Type: Grant
    Filed: October 7, 2009
    Date of Patent: September 16, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Michael R. Krause
  • Patent number: 8832364
    Abstract: A system for controlling a storage device. A semiconductor chip of the storage device, includes a first memory. The first memory corresponds to a first type of memory, is configured to perform random access memory functions, and is not configured to perform direct memory access functions. A second memory external to the semiconductor chip is configured to interface with the semiconductor chip. The second memory corresponds to a second type of memory that is different than the first type of memory, is configured to perform direct memory access functions, and is not configured to perform random access memory function. The second memory includes a memory cell and an interface configured to interface between components of the second memory including the memory cell and the semiconductor chip.
    Type: Grant
    Filed: February 18, 2013
    Date of Patent: September 9, 2014
    Assignee: Marvell International Ltd.
    Inventors: Saeed Azimi, Po-Chien Chang
  • Patent number: 8806082
    Abstract: A Direct Memory Access (DMA) device for a multi-core system, and an operating method of the DMA device are provided. The DMA device includes a channel state determining unit to determine whether at least one channel among a source channel and a destination channel is available, the source channel being formed between a source core and the DMA device, and the destination channel being formed between a destination core and the DMA device, and a data transmission processing unit to process data of the source core to be transmitted to the destination core, when both the source channel and the destination channel are determined to be available.
    Type: Grant
    Filed: July 29, 2011
    Date of Patent: August 12, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventor: Doo Hyun Kim
  • Patent number: 8799530
    Abstract: An HBA driver manages a queue number for enqueuing and dequeuing data to an I/O queue by the main storage, and HBA-F/W manages a storage region at inside of HBA. The HBA driver reduces the number of access times by way of the PCIe bus by noticing an enqueued queue number or a dequeued queue number of an I/O queue to HBA-F/W by utilizing an MMIO area of the main storage in which a storage region on HBA is mapped.
    Type: Grant
    Filed: May 2, 2013
    Date of Patent: August 5, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Takafumi Maruyama, Megumu Hasegawa
  • Patent number: 8780371
    Abstract: A printing apparatus to make a number of copies of a printed material on which an image is formed according to print data stored in a removable memory medium is provided. The printing apparatus includes an interface to which the removable memory medium is connected so that the print data stored in the removable memory medium is inputted to the printing apparatus, a printable number detecting system, which is configured to detect a number of copies of the printed material to be made being stored in the removable memory medium, a printing system, which is configured to make the printed material, and a controlling system, which is configured to control a total of the number of copies of the printed material to be made by the printing system.
    Type: Grant
    Filed: June 6, 2007
    Date of Patent: July 15, 2014
    Assignee: Brother Kogyo Kabushiki Kaisha
    Inventors: Kazuma Aoki, Masashi Kato, Toru Tsuzuki, Hiroyuki Yamamoto
  • Patent number: 8732350
    Abstract: A system for improving direct memory access (DMA) offload. The system includes a processor, a data DMA engine and memory components. The processor selects an executable command comprising subcommands. The DDMA engine executes DMA operations related to a subcommand to perform memory transfer operations. The memory components store the plurality of subcommands and status data resulting from DMA operations. Each of the memory components has a corresponding token associated therewith. Possession of a token allocates its associated memory component to the processor or the DDMA engine possessing the token, making it inaccessible to the other. A first memory component and a second memory component of the plurality of memory components are used by the processor and the DDMA engine respectively and simultaneously. Tokens, e.g., the first and/or the second, are exchanged between the DDMA engine and the processor when the DDMA engine and/or the microcontroller complete accessing associated memory components.
    Type: Grant
    Filed: December 19, 2008
    Date of Patent: May 20, 2014
    Assignee: NVIDIA Corporation
    Inventors: Dmitry Vyshetski, Howard Tsai, Paul J. Gyugyi