Patents by Inventor Mark Sheppard
Mark Sheppard 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: 12554490Abstract: An execution unit performs a byte-wise rotation of an input data block. An input data array receives an input data block. Two first layer multiplexer arrays each receive a first layer data block comprising a respective subset of bytes of the input data block and a first layer control signal, and rotate the first layer data block by an amount indicated by the first layer control signal. The second layer multiplexer array receives a second control signal and selects between a corresponding byte of the first and second rotated first layer data blocks based on the second control signal. The execution unit also includes a control signal generator, configured to generate the first layer control signal and second layer control signal based on a received computer program instruction. Results of smaller block rotations are thus used as partial results for larger block rotation, avoiding large multiplexer arrays with complex wiring.Type: GrantFiled: December 18, 2023Date of Patent: February 17, 2026Assignee: GRAPHCORE LIMITEDInventor: Mark Sheppard
-
Publication number: 20250378617Abstract: Shuffle accelerators for shuffling data on a shader core of a graphics processing unit include routing logic, slave logic and master logic. The routing logic selectively connects data input ports to a plurality of data output ports. The slave logic selectively provides data from a first set of instances to the plurality of data input ports and receives data from the plurality of data output ports for a second set of instances. The master logic is configured to, in response to receiving a shuffle instruction that identifies a shuffle of data between the plurality of instances, cause the routing logic and the slave logic to perform the identified shuffle of data in a plurality of phases, wherein in each phase of the plurality of phases a subset of the instances of the plurality of instances receive data from a subset of the instances of the plurality of instances.Type: ApplicationFiled: April 29, 2025Publication date: December 11, 2025Inventor: Mark Sheppard
-
Publication number: 20250378522Abstract: A method of preventing unauthorized access to uninitialized memory. Registers are grouped into blocks, each of which has a corresponding validity bit. When data is written to a block of memory the validity bit is set to valid. A read function reads both the register data and the validity bit but if the validity bit is set to invalid dummy values are output. Once a program is complete, or before a fresh program the validity bits are reset to invalid.Type: ApplicationFiled: April 9, 2025Publication date: December 11, 2025Inventor: Mark Sheppard
-
Publication number: 20250377897Abstract: A computer-implemented method of compiling a program includes analysing the program to identify at least one group of instructions within the program that can be executed atomically. In response to identifying a group of instructions that can be executed atomically, the group of instructions is extracted from the program to form a burst; a modified program is created by inserting an instruction into the program in place of the extracted group of instructions. The instruction is configured to trigger execution of the burst, and the burst and the modified program are saved separately.Type: ApplicationFiled: April 7, 2025Publication date: December 11, 2025Inventors: Aroun Demeure, William Thomas, David Lewsey, Mark Sheppard
-
Publication number: 20250322483Abstract: A graphics processing unit has a shader core including a main processing portion and a sub-processor. The main processing portion comprises a scheduler, an instruction cache, a plurality of registers and a plurality of arithmetic logic units (ALUs). The sub-processor operates independently of the main processing portion and comprises a burst scheduler, a plurality of registers and a plurality of ALUs. The sub-processor is arranged to execute bursts, wherein a burst comprises at least one group of instructions that can be executed atomically and which are extracted from a program. The main processing portion executes a modified version of the program, wherein the modified program is created from the program by replacing the instructions in a burst with an instruction that triggers the execution of the burst. The registers in the sub-processor are used to store one or more sources and/or results for bursts that are being executed by the sub-processor.Type: ApplicationFiled: April 7, 2025Publication date: October 16, 2025Inventors: Mark Sheppard, William Thomas, David Lewsey, Aroun Demeure
-
Publication number: 20240201988Abstract: An execution unit performs a byte-wise rotation of an input data block. An input data array receives an input data block. Two first layer multiplexer arrays each receive a first layer data block comprising a respective subset of bytes of the input data block and a first layer control signal, and rotate the first layer data block by an amount indicated by the first layer control signal. The second layer multiplexer array receives a second control signal and selects between a corresponding byte of the first and second rotated first layer data blocks based on the second control signal. The execution unit also includes a control signal generator, configured to generate the first layer control signal and second layer control signal based on a received computer program instruction. Results of smaller block rotations are thus used as partial results for larger block rotation, avoiding large multiplexer arrays with complex wiring.Type: ApplicationFiled: December 18, 2023Publication date: June 20, 2024Inventor: Mark SHEPPARD
-
Patent number: 10637943Abstract: The present disclosure is directed to methods and systems that include generating an availability request, where the availability request inquires about an availability of each contact in a set of multiple contacts; submitting a composite presence subscribe request to a presence server based on the availability request, where the composite presence subscribe request identifies each contact in the set of multiple contacts; generating, from the presence server, a composite presence report indicating the availability of each contact; and notifying of the availability of each contact.Type: GrantFiled: September 28, 2012Date of Patent: April 28, 2020Assignee: Avaya Inc.Inventor: Mark Sheppard
-
Patent number: 10092810Abstract: A golf putting aide, that can be used as part of an independent game using golf equipment, which aide has a large annular platter with a series of evenly spaced spokes thereon on the upper side, and slip impeding means on the underside. Each spoke, is radiused on both side faces thereof, to match the curvature of a golf ball, such that on impact a golf ball will roll down the spoke toward a center opening in the platter rather than ricocheting off at an angle of incidence post impact. The spokes of the preferred embodiment taper inwardly from the rear surface toward the front surface, evenly on both sides of a center line, and taper downwardly along the top surface from the rear surface forwardly to the front. The device may be used at home on grass, at miniature golf locations or on a golf course hole with permission.Type: GrantFiled: May 23, 2014Date of Patent: October 9, 2018Inventors: Mark Sheppard, Lynda Timbers
-
Publication number: 20150335979Abstract: A golf putting aide, that can be used as part of an independent game using golf equipment, which aide has a large annular platter with a series of evenly spaced spokes thereon on the upper side, and slip impeding means on the underside. Each spoke, is radiused on both side faces thereof, to match the curvature of a golf ball, such that on impact a golf ball will roll down the spoke toward a center opening in the platter rather than ricocheting off at an angle of incidence post impact. The spokes of the preferred embodiment taper inwardly from the rear surface toward the front surface, evenly on both sides of a center line, and taper downwardly along the top surface from the rear surface forwardly to the front. The device may be used at home on grass, at miniature golf locations or on a golf course hole with permission.Type: ApplicationFiled: May 23, 2014Publication date: November 26, 2015Inventors: Mark Sheppard, Lynda Timbers
-
Publication number: 20140095602Abstract: The present disclosure is directed to methods and systems that include generating an availability request, where the availability request inquires about an availability of each contact in a set of multiple contacts; submitting a composite presence subscribe request to a presence server based on the availability request, where the composite presence subscribe request identifies each contact in the set of multiple contacts; generating, from the presence server, a composite presence report indicating the availability of each contact; and notifying of the availability of each contact.Type: ApplicationFiled: September 28, 2012Publication date: April 3, 2014Inventor: Mark Sheppard
-
Publication number: 20100113074Abstract: A message processing system is a server (1) incorporating software functions (15) which operate without user intervention to intercept (16, 17) SMS text messages, to translate the original text content in the short message body to compress it, and to forward the converted message on in the network. The content compression frees up space, and some or all of this space may be taken up by addition of tagging information such as text tags or sponsored or advertising content or user data header (UDH) information elements. The translator is part of a message converter (15) and parses the content and identifies candidate words for translation, and then iterates over the content, replacing the candidate word to allow the addition of one or more text tags to the message. The translation could be performed on just enough words and phrases to free up the required space, or it could be on the message as a unit, so as it give it uniformity of presentation.Type: ApplicationFiled: April 10, 2008Publication date: May 6, 2010Inventor: Mark Sheppard
-
Patent number: 6424499Abstract: A flexible multi-channel trace interconnect array has a head end for electrically connecting write and read trace pairs respectively to write and read elements of a data transducer head, a body formed of a flexible dielectric material and carrying the write and read trace pairs, and at least one circuit end for connecting the write and read trace pairs respectively to write driver and read preamplifier circuits of a data storage device. Each trace pair includes two trace conductors each having a trace width, and an inter-conductor separation space. Adjacent trace pairs are separated by an inter-pair space having a width greater than, and preferably two to twenty times greater than the inter-conductor separation space in order to decouple adjacent channel pairs.Type: GrantFiled: March 31, 1999Date of Patent: July 23, 2002Assignee: Quantum CorporationInventors: Arun Balakrishnan, Gregory P. Hertrich, Mark Sheppard, Doug Gunther
-
Patent number: 4974263Abstract: A lid actuated toilet flushing system wherein a conventional flushing flapper valve is actuated by a pull chain controlled by the positioning of the lid fo the toilet. The lid must be moved from the up to the down position to flush the toilet and a ratchet mechanism is provided for completing flushing of the toilet even if the lid is left in the down position.Moving the lid actuates a pawl (flush lever) which rotates a tooth (trip lever) which trip lever is connected to a conventional flusing rod and other elements interposed between the flusing rod and a flapper valve.Type: GrantFiled: July 14, 1989Date of Patent: December 4, 1990Inventors: Mark Sheppard, Lynda Timbers