Patents by Inventor Brian C. Grayson
Brian C. Grayson 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: 20200210626Abstract: According to one general aspect, an apparatus may include a context-specific encryption key circuit configured to generate a key value, wherein the key value is specific to a context of a set of instructions. The apparatus may include a target address prediction circuit configured to provide a target address for a next instruction in the set of instructions. The apparatus may include a target address memory configured to store an encrypted version of the target address, wherein the target address is encrypted using, at least in part, the key value. The apparatus may further include an instruction fetch circuit configured to decrypt the target address using, at least in part, the key value, and retrieve the target address.Type: ApplicationFiled: February 22, 2019Publication date: July 2, 2020Inventors: Monika TKACZYK, Brian C. GRAYSON, Mohamad Basem BARAKAT, Eric C. QUINNELL, Bradley G. BURGESS
-
Patent number: 10649904Abstract: According to one general aspect, an apparatus may include a load/store circuit and a region size detection circuit. The load/store circuit may be configured to issue a plurality of store instructions to store data in a memory system. The region size detection circuit may be configured to determine a cache from a plurality of caches to store a stream of store instructions based upon, at least in part, by tracking multiple cache-line address entries in the plurality of store instructions, wherein each address entry is updated at a different frequency.Type: GrantFiled: February 1, 2017Date of Patent: May 12, 2020Assignee: SAMSUNG ELECTRONICS CO., LTD.Inventors: Hao Wang, Dilip Muthukrishnan, Brian C. Grayson
-
Publication number: 20180165211Abstract: According to one general aspect, an apparatus may include a load/store circuit and a region size detection circuit. The load/store circuit may be configured to issue a plurality of store instructions to store data in a memory system. The region size detection circuit may be configured to determine a cache from a plurality of caches to store a stream of store instructions based upon, at least in part, by tracking multiple cache-line address entries in the plurality of store instructions, wherein each address entry is updated at a different frequency.Type: ApplicationFiled: February 1, 2017Publication date: June 14, 2018Inventors: Hao WANG, Dilip MUTHUKRISHNAN, Brian C. GRAYSON
-
Patent number: 8966183Abstract: A cache management system employs a replacement policy in a manner that manages concurrent accesses to cache. The cache management system comprises a cache, a replacement policy storage for storing replacement statuses of cache lines of the cache, and an update module. The update module, comprising access filtering and a concurrent update handling, determines how updates to the replacement policy storage are handled. In a multi-threaded compute environment, a concurrent access to shared cache causes a selective update to the replacement policy storage.Type: GrantFiled: October 4, 2012Date of Patent: February 24, 2015Assignee: Freescale Semiconductor, Inc.Inventors: Brian C. Grayson, Jyotsna S. Kartha, Kathryn C. Stacer
-
Publication number: 20140189244Abstract: A cache management system employs a replacement policy in a manner that manages redundant accesses to cache elements. The cache management system comprises a cache, a replacement policy state storage and an update control module. The update control module comprises a buffer for storing recent addresses, a comparison unit for comparing a new address with those stored in the recent address buffer, and an update unit which determines whether to update the replacement policy state storage. When an address matches those stored in the recent address buffer, a replacement status update is suppressed.Type: ApplicationFiled: January 2, 2013Publication date: July 3, 2014Inventors: Brian C. Grayson, David P. Burgess, Peter J. Wilson
-
Publication number: 20140101387Abstract: A cache management system employs a replacement policy in a manner that manages concurrent accesses to cache. The cache management system comprises a cache, a replacement policy storage for storing replacement statuses of cache lines of the cache, and an update module. The update module, comprising access filtering and a concurrent update handling, determines how updates to the replacement policy storage are handled. In a multi-threaded compute environment, a concurrent access to shared cache causes a selective update to the replacement policy storage.Type: ApplicationFiled: October 4, 2012Publication date: April 10, 2014Applicant: FREESCALE SEMICONDUCTOR, INC.Inventors: Brian C. Grayson, Jyotsna S. Kartha, Kathryn C. Stacer
-
Patent number: 8543766Abstract: A state indicator associated with a cache line is stored, wherein the cache line is one of a plurality of cache lines each associated with a corresponding unique section of a region of system memory. The state indicator comprises a dirty indication indicating that the cache line is a candidate for writing data stored in the cache line to the associated section of the region of system memory. The state indicator is one of a plurality of state indicators each associated with a corresponding cache line. For the region of system memory, a number of the plurality of state indicators that comprises the dirty indication is determined, and if a threshold is exceeded, data stored in a selected cache line is written to the associated section of the region of system memory, and a clean indication is stored in the state indicator corresponding to the cache line.Type: GrantFiled: June 10, 2011Date of Patent: September 24, 2013Assignee: Freescale Semiconductor, Inc.Inventors: Brian C. Grayson, Wichaya T. Changwatchai
-
Patent number: 8359346Abstract: A logic block is presented that generates avalanche criterion hash values using minimal logic. The logic block includes a first exclusive-OR function, a second exclusive-OR function, and an OR function. The first exclusive-OR function receives two input bits from a data packet and generates a linear output value based upon exclusive disjunction between the two input bits. The OR function receives two different input bits from the data packet and generates a first nonlinear output value based upon logical disjunction between the two different input bits. The second exclusive-OR function receives the linear output value and the first nonlinear output value, and generates a second nonlinear output value based upon exclusive disjunction between the linear output value and the first nonlinear output value. In turn, the second nonlinear output value is utilized to generate a hash value for the data packet.Type: GrantFiled: November 5, 2009Date of Patent: January 22, 2013Assignee: Freescale Semiconductor, Inc.Inventors: Brian C. Grayson, Leick D. Robinson, Benjamin M. Menchaca
-
Publication number: 20120317367Abstract: A state indicator associated with a cache line is stored, wherein the cache line is one of a plurality of cache lines each associated with a corresponding unique section of a region of system memory. The state indicator comprises a dirty indication indicating that the cache line is a candidate for writing data stored in the cache line to the associated section of the region of system memory. The state indicator is one of a plurality of state indicators each associated with a corresponding cache line. For the region of system memory, a number of the plurality of state indicators that comprises the dirty indication is determined, and if a threshold is exceeded, data stored in a selected cache line is written to the associated section of the region of system memory, and a clean indication is stored in the state indicator corresponding to the cache line.Type: ApplicationFiled: June 10, 2011Publication date: December 13, 2012Inventors: Brian C. Grayson, Wichaya T. Changwatchai
-
Publication number: 20110106866Abstract: A logic block is presented that generates avalanche criterion hash values using minimal logic. The logic block includes a first exclusive-OR function, a second exclusive-OR function, and an OR function. The first exclusive-OR function receives two input bits from a data packet and generates a linear output value based upon exclusive disjunction between the two input bits. The OR function receives two different input bits from the data packet and generates a first nonlinear output value based upon logical disjunction between the two different input bits. The second exclusive-OR function receives the linear output value and the first nonlinear output value, and generates a second nonlinear output value based upon exclusive disjunction between the linear output value and the first nonlinear output value. In turn, the second nonlinear output value is utilized to generate a hash value for the data packet.Type: ApplicationFiled: November 5, 2009Publication date: May 5, 2011Inventors: Brian C. Grayson, Leick D. Robinson, Benjamin M. Menchaca
-
Publication number: 20090113137Abstract: A multi-way cache system includes multi-way cache storage circuitry, a pseudo least recently used (PLRU) tree state representative of a PLRU tree, the PLRU tree having a plurality of levels, and PLRU control circuitry coupled to the multi-way cache storage circuitry and the PLRU tree state. The PLRU control circuitry has programmable PLRU tree level update enable circuitry which selects Y levels of the plurality of levels of the PLRU tree to be updated. The PLRU control circuitry, in response to an address hitting or resulting in an allocation in the multi-way cache storage circuitry, updates only the selected Y levels of the PLRU tree state.Type: ApplicationFiled: October 30, 2007Publication date: April 30, 2009Inventors: Brian C. Grayson, Klas M. Bruce, Anhdung D. Ngo, Michael D. Snyder
-
Patent number: 7506105Abstract: Generating a hashed value of the program counter in a data processing system. The hashed value can be used for prefetching in the data processing system. In some examples, the hashed value is used to identify whether a load instruction associated with the hashed value has an address that is part of a strided stream in an address stream. In some examples, the hashed value is a subset of bits of the bits of the program counter. In other examples, the hashed value may be derived in other ways from the program counter.Type: GrantFiled: May 2, 2005Date of Patent: March 17, 2009Assignee: Freescale Semiconductor, Inc.Inventors: Hassan F. Al-Sukhni, James C. Holt, Matt B. Smittle, Michael D. Snyder, Brian C. Grayson