Patents by Inventor Michael Oliver McCracken
Michael Oliver McCracken 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).
-
Patent number: 8824496Abstract: A method for arbitration in an arbitration domain. The method includes: receiving, by each node of a plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, where the plurality of nodes in the arbitration domain each use a shared data channel to send data to a set of receiving nodes; assigning, by each node in the arbitration domain, consecutive time slots to each sending node based on a plurality of priorities assigned to the plurality of nodes in the arbitration domain; for each time slot: sending, from the arbitration domain, a switch request to a receiving node designated by the sending node, where the receiving node is in the set of receiving nodes; and sending, by the sending node, data to the receiving node via the shared data channel during the time slot.Type: GrantFiled: October 30, 2009Date of Patent: September 2, 2014Assignee: Oracle America, Inc.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Jr., Xuezhe Zheng, Ashok Krishnamoorthy
-
Patent number: 8627040Abstract: A method for accessing a virtual memory of a processor using a processor-bus-connected flash storage module (PFSM) as a first paging device and a hard disk drive (HDD) as a second paging device, the method including: allocating a first address partition and a second address partition of a virtual memory for a software application of a processor to the first paging device and the second paging device, respectively, identifying a virtual memory page in the first paging device responsive to a page fault of the virtual memory triggered by the software application, sending a page access request to the PFSM for accessing the virtual memory page responsive to the page fault, and receiving the virtual memory page from the PFSM based on a command of the processor bus issued by the PFSM in conjunction with performing a flash memory access in the flash memory using a flash page address.Type: GrantFiled: December 31, 2012Date of Patent: January 7, 2014Assignee: Oracle America, Inc.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Jr., Jan Lodewijk Bonebakker
-
Patent number: 8473659Abstract: A method for arbitration including selecting, for an arbitration interval corresponding to a timeslot, a sending node from a plurality of sending nodes in an arbitration domain, where the plurality of sending nodes include a plurality of source counters; broadcasting, by the sending node and in response to selecting the sending node, a transmitter arbitration request for the timeslot during the arbitration interval; receiving, by the plurality of sending nodes, the transmitter arbitration request; incrementing the plurality of source counters in response to receiving the transmitter arbitration request; and sending, during the timeslot, a data item from the sending node to a receiving node via an optical data channel.Type: GrantFiled: January 15, 2010Date of Patent: June 25, 2013Assignee: Oracle America, Inc.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Jr., Xuezhe Zheng, Ashok Krishnamoorthy
-
Patent number: 8406623Abstract: A system for optical data communication, including: a first sending node including a first data item for transmission to a first receiving node during a first timeslot; a second sending node including a second data item for transmission during a second timeslot; a first optical data link (ODL) and a second ODL; a first output switch configured to switch the first data item from the first sending node onto the first ODL during the first timeslot; a second output switch configured to switch the second data item from the second sending node onto the first ODL during the second timeslot; an optical coupler connecting the first and second ODL; and a first input switch operatively connecting the first receiving node with the second ODL and configured to switch the first data item from the second ODL to the first receiving node during the first timeslot.Type: GrantFiled: February 17, 2010Date of Patent: March 26, 2013Assignee: Oracle International CorporationInventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Jr., Xuezhe Zheng, Ashok Krishnamoorthy
-
Patent number: 8370533Abstract: A system includes multiple nodes coupled using a network of processor buses. The multiple nodes include a first processor node, including one or more processing cores and main memory, and a flash memory node coupled to the first processor node via a first processor bus of the network of processor buses. The flash memory node includes a flash memory including flash pages, a first memory including a cache partition for storing cached flash pages for the flash pages in the flash memory and a control partition for storing cache control data and contexts of requests to access the flash pages, and a logic module including a direct memory access (DMA) register and configured to receive a first request from the first processor node via the first processor bus to access the flash pages.Type: GrantFiled: January 6, 2012Date of Patent: February 5, 2013Assignee: Oracle America, Inc.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Jr., Jan Lodewijk Bonebakker
-
Patent number: 8291175Abstract: A method for processing a read request identifying an address. The method includes receiving, at a module including a flash memory and a memory buffer, the read request from a requesting processor, mapping, using a coherence directory controller within the module, the address to a cache line in a cache memory associated with a remote processor, and sending a coherency message from the module to the remote processor to change a state of the cache line in the cache memory. The method further includes receiving, at the module, the cache line from the remote processor, sending, using processor bus and in response to the read request, the cache line to the requesting processor, identifying a requested page stored within the flash memory based on the address, storing a copy of the requested page in the memory buffer, and writing the cache line to the copy of the requested page.Type: GrantFiled: October 16, 2009Date of Patent: October 16, 2012Assignee: Oracle America, Inc.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Jr., Jan Lodewijk Bonebakker
-
Patent number: 8285140Abstract: A system including first and second sending nodes, a horizontal optical data link (ODL) having optical signals propagating in opposite directions in first and second waveguide segments, a vertical ODL having optical signals propagating in the same direction throughout third and fourth waveguide segments, a first optical output switch operatively connecting the first sending node and the first waveguide segment and configured to switch first data item onto the first waveguide segment during a first timeslot, a second optical output switch operatively connecting the second sending node and the second waveguide segment and configured to switch second data item onto the second waveguide segment during a second timeslot, and an optical coupler pair operatively connecting the first and second waveguide segments to the third and fourth waveguide segments, respectively, and redirecting the first and the second data items from the horizontal to the vertical ODL.Type: GrantFiled: March 12, 2010Date of Patent: October 9, 2012Assignee: Oracle International CorporationInventors: Michael Oliver McCracken, Pranay Koka, Herbert Dewitt Schwetman, Jr., Xuezhe Zheng, Ashok Krishnamoorthy
-
Patent number: 8176220Abstract: A system includes multiple nodes coupled using a network of processor buses. The multiple nodes include a first processor node, including one or more processing cores and main memory, and a flash memory node coupled to the first processor node via a first processor bus of the network of processor buses. The flash memory node includes a flash memory including flash pages, a first memory including a cache partition for storing cached flash pages for the flash pages in the flash memory and a control partition for storing cache control data and contexts of requests to access the flash pages, and a logic module including a direct memory access (DMA) register and configured to receive a first request from the first processor node via the first processor bus to access the flash pages.Type: GrantFiled: October 1, 2009Date of Patent: May 8, 2012Assignee: Oracle America, Inc.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Jr., Jan Lodewijk Bonebakker
-
Publication number: 20120110251Abstract: A system includes multiple nodes coupled using a network of processor buses. The multiple nodes include a first processor node, including one or more processing cores and main memory, and a flash memory node coupled to the first processor node via a first processor bus of the network of processor buses. The flash memory node includes a flash memory including flash pages, a first memory including a cache partition for storing cached flash pages for the flash pages in the flash memory and a control partition for storing cache control data and contexts of requests to access the flash pages, and a logic module including a direct memory access (DMA) register and configured to receive a first request from the first processor node via the first processor bus to access the flash pages.Type: ApplicationFiled: January 6, 2012Publication date: May 3, 2012Applicant: ORACLE AMERICA, INC.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, JR., Jan Lodewijk Bonebakker
-
Publication number: 20110200332Abstract: A system including first and second sending nodes, a horizontal optical data link (ODL) having optical signals propagating in opposite directions in first and second waveguide segments, a vertical ODL having optical signals propagating in the same direction throughout third and fourth waveguide segments, a first optical output switch operatively connecting the first sending node and the first waveguide segment and configured to switch first data item onto the first waveguide segment during a first timeslot, a second optical output switch operatively connecting the second sending node and the second waveguide segment and configured to switch second data item onto the second waveguide segment during a second timeslot, and an optical coupler pair operatively connecting the first and second waveguide segments to the third and fourth waveguide segments, respectively, and redirecting the first and the second data items from the horizontal to the vertical ODL.Type: ApplicationFiled: March 12, 2010Publication date: August 18, 2011Applicant: Oracle International CorporationInventors: Michael Oliver McCracken, Pranay Koka, Herbert Dewitt Schwetman, Xuezhe Zheng, Ashok Krishnamoorthy
-
Publication number: 20110200335Abstract: A system for optical data communication, including: a first sending node including a first data item for transmission to a first receiving node during a first timeslot; a second sending node including a second data item for transmission during a second timeslot; a first optical data link (ODL) and a second ODL; a first output switch configured to switch the first data item from the first sending node onto the first ODL during the first timeslot; a second output switch configured to switch the second data item from the second sending node onto the first ODL during the second timeslot; an optical coupler connecting the first and second ODL; and a first input switch operatively connecting the first receiving node with the second ODL and configured to switch the first data item from the second ODL to the first receiving node during the first timeslot.Type: ApplicationFiled: February 17, 2010Publication date: August 18, 2011Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, Xuezhe Zheng, Ashok Krishnamoorthy
-
Publication number: 20110179208Abstract: A method for arbitration including selecting, for an arbitration interval corresponding to a timeslot, a sending node from a plurality of sending nodes in an arbitration domain, where the plurality of sending nodes include a plurality of source counters; broadcasting, by the sending node and in response to selecting the sending node, a transmitter arbitration request for the timeslot during the arbitration interval; receiving, by the plurality of sending nodes, the transmitter arbitration request; incrementing the plurality of source counters in response to receiving the transmitter arbitration request; and sending, during the timeslot, a data item from the sending node to a receiving node via an optical data channel.Type: ApplicationFiled: January 15, 2010Publication date: July 21, 2011Applicant: SUN MICROSYSTEMS, INC.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, JR., Xuezhe Zheng, Ashok Krishnamoorthy
-
Publication number: 20110103397Abstract: A method for arbitration in an arbitration domain. The method includes: receiving, by each node of a plurality of nodes in the arbitration domain, an arbitration request from each sending node of the plurality of nodes in the arbitration domain, where the plurality of nodes in the arbitration domain each use a shared data channel to send data to a set of receiving nodes; assigning, by each node in the arbitration domain, consecutive time slots to each sending node based on a plurality of priorities assigned to the plurality of nodes in the arbitration domain; for each time slot: sending, from the arbitration domain, a switch request to a receiving node designated by the sending node, where the receiving node is in the set of receiving nodes; and sending, by the sending node, data to the receiving node via the shared data channel during the time slot.Type: ApplicationFiled: October 30, 2009Publication date: May 5, 2011Applicant: SUN MICROSYSTEMS, INC.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert DeWitt Schwetman, JR., Xuezhe Zheng, Ashok Krishnamoorthy
-
Publication number: 20110093646Abstract: A method for processing a read request identifying an address. The method includes receiving, at a module including a flash memory and a memory buffer, the read request from a requesting processor, mapping, using a coherence directory controller within the module, the address to a cache line in a cache memory associated with a remote processor, and sending a coherency message from the module to the remote processor to change a state of the cache line in the cache memory. The method further includes receiving, at the module, the cache line from the remote processor, sending, using processor bus and in response to the read request, the cache line to the requesting processor, identifying a requested page stored within the flash memory based on the address, storing a copy of the requested page in the memory buffer, and writing the cache line to the copy of the requested page.Type: ApplicationFiled: October 16, 2009Publication date: April 21, 2011Applicant: SUN MICROSYSTEMS, INC.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, JR., Jan Lodewijk Bonebakker
-
Publication number: 20110082965Abstract: A system includes multiple nodes coupled using a network of processor buses. The multiple nodes include a first processor node, including one or more processing cores and main memory, and a flash memory node coupled to the first processor node via a first processor bus of the network of processor buses. The flash memory node includes a flash memory including flash pages, a first memory including a cache partition for storing cached flash pages for the flash pages in the flash memory and a control partition for storing cache control data and contexts of requests to access the flash pages, and a logic module including a direct memory access (DMA) register and configured to receive a first request from the first processor node via the first processor bus to access the flash pages.Type: ApplicationFiled: October 1, 2009Publication date: April 7, 2011Applicant: SUN MICROSYSTEMS, INC.Inventors: Pranay Koka, Michael Oliver McCracken, Herbert Dewitt Schwetman, JR., Jan Lodewijk Bonebakker