Patents by Inventor Amit Rao
Amit Rao 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: 20250138884Abstract: Apparatus, systems, and techniques to share memory. In at least one embodiment, a processor comprises one or more circuits to allocate memory to at least two heterogeneous processing cores in response to performing one or more instructions associated with one or more application programming interfaces based, at least in part, on one or more attributes associated with the at least two heterogeneous processing cores.Type: ApplicationFiled: December 31, 2024Publication date: May 1, 2025Inventors: Sharan Ashwathnarayan, Debalina Bhattacharjee, Ashok Kelur, Alok Parikh, Yogesh Kini, Amit Rao, Aingarathasan Paramakuru, Kathleen E. Danielson, Daniel Jonathan Hettena, Vladislav Buzov
-
Publication number: 20250036577Abstract: Facilitating access to a PCIe configuration space of a PCIe function associated with a computer comprises receiving by a PCIe controller EP in the computer over a PCIe link a configuration request from a remote computer to access a PCIe configuration space. The PCIe controller then communicates over a communication fabric the configuration request to a dispatcher of the computer. The dispatcher determines from the configuration request, a PCIe function and operation indicated in the configuration request which is used to identify a respective subsystem to execute the configuration request and the configuration request is communicated to the respective subsystem based on the identification. The subsystem then executes the configuration request to facilitate access to the PCIe configuration space of the PCIe function by the remote computer and sharing of the PCIe function with the remote computer.Type: ApplicationFiled: September 19, 2023Publication date: January 30, 2025Inventors: Alexandru Marginean, Prabhjot Singh, Mohit Satsangi, Amit Rao, Nutan Kishor Shivhare, Robert Freddie Linn-Moran
-
Patent number: 11893653Abstract: The present invention facilitates efficient and effective utilization of unified virtual addresses across multiple components. In one embodiment, the presented new approach or solution uses Operating System (OS) allocation on the central processing unit (CPU) combined with graphics processing unit (GPU) driver mappings to provide a unified virtual address (VA) across both GPU and CPU. The new approach helps ensure that a GPU VA pointer does not collide with a CPU pointer provided by OS CPU allocation (e.g., like one returned by “malloc” C runtime API, etc.).Type: GrantFiled: May 9, 2019Date of Patent: February 6, 2024Assignee: NVIDIA CorporationInventors: Amit Rao, Ashish Srivastava, Yogesh Kini
-
Publication number: 20200364088Abstract: Apparatus, systems, and techniques to share memory. In at least one embodiment, a processor comprises one or more circuits to allocate memory to at least two heterogeneous processing cores in response to performing one or more instructions associated with one or more application programming interfaces based, at least in part, on one or more attributes associated with the at least two heterogeneous processing cores.Type: ApplicationFiled: November 8, 2019Publication date: November 19, 2020Inventors: Sharan Ashwathnarayan, Debalina Bhattacharjee, Ashok Kelur, Alok Parikh, Yogesh Kini, Amit Rao, Aingarathasan Paramakuru, Kathleen E. Danielson, Daniel Jonathan Hettena, Vladislav Buzov
-
Publication number: 20190266695Abstract: The present invention facilitates efficient and effective utilization of unified virtual addresses across multiple components. In one embodiment, the presented new approach or solution uses Operating System (OS) allocation on the central processing unit (CPU) combined with graphics processing unit (GPU) driver mappings to provide a unified virtual address (VA) across both GPU and CPU. The new approach helps ensure that a GPU VA pointer does not collide with a CPU pointer provided by OS CPU allocation (e.g., like one returned by “malloc” C runtime API, etc.).Type: ApplicationFiled: May 9, 2019Publication date: August 29, 2019Inventors: Amit Rao, Ashish Srivastava, Yogesh Kini
-
Patent number: 10319060Abstract: The present invention facilitates efficient and effective utilization of unified virtual addresses across multiple components. In one embodiment, the presented new approach or solution uses Operating System (OS) allocation on the central processing unit (CPU) combined with graphics processing unit (GPU) driver mappings to provide a unified virtual address (VA) across both GPU and CPU. The new approach helps ensure that a GPU VA pointer does not collide with a CPU pointer provided by OS CPU allocation (e.g., like one returned by “malloc” C runtime API, etc.).Type: GrantFiled: January 20, 2015Date of Patent: June 11, 2019Assignee: Nvidia CorporationInventors: Amit Rao, Ashish Srivastava, Yogesh Kini
-
Patent number: 9355691Abstract: A system provides synchronous read data sampling between a memory and a memory controller, which includes an asynchronous FIFO buffer and which outputs a clock and other control signals. An outbound control signal (e.g., read_enable) is used to time-stamp the beginning of a read access using a clock edge counter. The incoming read data is qualified based on the time-stamped value of the read_enable signal plus typical access latency by counting FIFO pops. The system performs correct data sampling irrespective of propagation delays between the controller and memory. The system may be implemented in a System on a Chip (SOC) device having a synchronous communication system.Type: GrantFiled: June 29, 2014Date of Patent: May 31, 2016Assignee: FREESCALE SEMICONDUCTOR, INC.Inventors: Prabhjot Singh, Hemant Nautiyal, Amit Rao
-
Publication number: 20150380067Abstract: A system provides synchronous read data sampling between a memory and a memory controller, which includes an asynchronous FIFO buffer and which outputs a clock and other control signals. An outbound control signal (e.g., read_enable) is used to time-stamp the beginning of a read access using a clock edge counter. The incoming read data is qualified based on the time-stamped value of the read_enable signal plus typical access latency by counting FIFO pops. The system performs correct data sampling irrespective of propagation delays between the controller and memory. The system may be implemented in a System on a Chip (SOC) device having a synchronous communication system.Type: ApplicationFiled: June 29, 2014Publication date: December 31, 2015Applicant: Freescale Semiconductor, Inc.Inventors: Prabhjot Singh, Hemant Nautiyal, Amit Rao
-
Publication number: 20150206277Abstract: The present invention facilitates efficient and effective utilization of unified virtual addresses across multiple components. In one embodiment, the presented new approach or solution uses Operating System (OS) allocation on the central processing unit (CPU) combined with graphics processing unit (GPU) driver mappings to provide a unified virtual address (VA) across both GPU and CPU. The new approach helps ensure that a GPU VA pointer does not collide with a CPU pointer provided by OS CPU allocation (e.g., like one returned by “malloc” C runtime API, etc.).Type: ApplicationFiled: January 20, 2015Publication date: July 23, 2015Inventors: Amit RAO, Ashish SRIVASTAVA, Yogesh KINI, Alban DOUILLET, Geoffrey GERFIN, Mayank KAUSHIK, Nikita SHULGA, Vyas VENKATARAMAN, David FONTAINE, Mark HAIRGROVE, Piotr JAROSZYNSKI, Stephen JONES, Vivek KINI
-
Patent number: 8990549Abstract: A method and system for booting an electronic device from a NAND flash memory includes a NAND flash controller that receives an event trigger for fetching a pre-boot code stored in the NAND flash memory. Based on the event trigger type, booting parameters are loaded into the controller including a boot frequency of the NAND flash memory. The controller searches for a good memory block in which the pre-boot code is stored by checking the first and second or the first and last pages of a memory block and fetches a portion or the entire pre-boot code based on the event trigger type at the boot frequency.Type: GrantFiled: July 12, 2012Date of Patent: March 24, 2015Assignee: Freescale Semiconductor, Inc.Inventors: Hemant Nautiyal, Nitin Gera, Amit Rao, Prabhjot Singh
-
Publication number: 20140122775Abstract: A memory controller that generates interface signals for a memory device determines an interface signal frequency based on a timing mode of the memory device and a corresponding clock division ratio. Based on the timing mode, a look up table (LUT) is selected and then a timing parameter corresponding to the clock division ratio and the interface signal frequency is fetched from the LUT. An interface signal is generated based on the interface signal frequency and fetched timing parameter.Type: ApplicationFiled: October 31, 2012Publication date: May 1, 2014Applicant: FREESCALE SEMICONDUCTOR, INC.Inventors: Nitin Gera, Hemant Nautiyal, Amit Rao, Prabhjot Singh
-
Publication number: 20140019741Abstract: A method and system for booting an electronic device from a NAND flash memory includes a NAND flash controller that receives an event trigger for fetching a pre-boot code stored in the NAND flash memory. Based on the event trigger type, booting parameters are loaded into the controller including a boot frequency of the NAND flash memory. The controller searches for a good memory block in which the pre-boot code is stored by checking the first and second or the first and last pages of a memory block and fetches a portion or the entire pre-boot code based on the event trigger type at the boot frequency.Type: ApplicationFiled: July 12, 2012Publication date: January 16, 2014Applicant: FREESCALE SEMICONDUCTOR, INCInventors: Hemant Nautiyal, Nitin Gera, Amit Rao, Prabhjot Singh
-
Patent number: 7814253Abstract: An aspect of the present invention provides an arbiter which grants a request (to access a resource) in the same clock cycle as in which the requests from requesters is received. In one embodiment, such a feature may be provided in case of arbitration policies requiring state information from previous grants. In another embodiment, such a feature may be provided when the arbitration policy is programmable such that the same arbiter can be used for different arbitration policies.Type: GrantFiled: April 16, 2007Date of Patent: October 12, 2010Assignee: NVIDIA CorporationInventors: Harendran Kethareswaran, Amit Rao
-
Publication number: 20080256279Abstract: An aspect of the present invention provides an arbiter which grants a request (to access a resource) in the same clock cycle as in which the requests from requesters is received. In one embodiment, such a feature may be provided in case of arbitration policies requiring state information from previous grants. In another embodiment, such a feature may be provided when the arbitration policy is programmable such that the same arbiter can be used for different arbitration policies.Type: ApplicationFiled: April 16, 2007Publication date: October 16, 2008Applicant: NVIDIA CorporationInventors: Harendran Kethareswaran, Amit Rao