Inventor

Brett Olsson

Inventor
Cary, NC, US

Overview

65→
Patents
1996–2021
Patent span
Physics
Primary field (CPC G)

Patents· 65 as inventor

Public. Assignee & technology derived from the patent record. Each patent links to its LexDana page.

G06Fprimary
G06FElectric digital data processing98%
Y02DClimate change mitigation technologies in information and communication technologies [ict], i.e. information and communication technologies aiming at the reduction of their own energy use2%
PatentTitleYear
11,036,519Simultaneously capturing status information for multiple operating modes202110,747,537Efficient quantization of compare results202010,740,099Instruction to perform a logical operation on conditions and to quantize the boolean result of that operation202010,705,841Instruction to perform a logical operation on conditions and to quantize the Boolean result of that operation202010,698,688Efficient quantization of compare results202010,691,453Vector load with instruction-specified byte count less than a vector size for big and little endian processing202010,691,456Vector store instruction having instruction-specified byte count to be stored supporting big and little endian processing202010,671,387Vector memory access instructions for big-endian element ordered and little-endian element ordered computer code and data202010,620,952Conversion of boolean conditions202010,606,588Conversion of Boolean conditions202010,540,512Exception preserving parallel data processing of string and unstructured text202010,423,412Instructions to count contiguous register elements having a specific value in a selected location201910,387,150Instructions to count contiguous register elements having a specific value in a selected location201910,346,180Simultaneously capturing status information for multiple operating modes201910,318,289Non-faulting compute instructions201910,310,854Non-faulting compute instructions201910,152,324Virtualization in a bi-endian-mode processor architecture201810,120,682Virtualization in a bi-endian-mode processor architecture201810,102,007Simultaneously capturing status information for multiple operating modes201810,067,716Inaccessibility status indicator201810,061,539Inaccessibility status indicator20189,785,435'Floating point instruction with selectable comparison attributes'20179,727,336'Fine-grained instruction enablement at sub-function granularity based on an indicated subrange of registers'20179,727,353'Simultaneously capturing status information for multiple operating modes'20179,727,337'Fine-grained instruction enablement at sub-function granularity based on an indicated subrange of registers'20179,703,721'Processing page fault exceptions in supervisory software when accessing strings and similar data structures using normal load instructions'20179,690,509'Computer instructions for limiting access violation reporting when accessing strings and similar data structures'20179,678,886'Processing page fault exceptions in supervisory software when accessing strings and similar data structures using normal load instructions'20179,600,282'Endian-mode-independent memory access in a bi-endian-mode processor architecture'20179,569,127'Computer instructions for limiting access violation reporting when accessing strings and similar data structures'20179,507,595'Execution of multi-byte memory access instruction specifying endian mode that overrides current global endian mode'20169,411,585'Multi-addressable register files and format conversions associated therewith'20169,395,981'Multi-addressable register files and format conversions associated therewith'20168,918,623'Implementing instruction set architectures with non-contiguous register file specifiers'20148,893,095'Methods for generating code for an architecture encoding an extended register specification'20148,893,079'Methods for generating code for an architecture encoding an extended register specification'20148,458,442'Method and structure of using SIMD vector architectures to implement matrix multiplication'20138,386,712'Structure for supporting simultaneous storage of trace and standard cache lines'20138,312,424'Methods for generating code for an architecture encoding an extended register specification'20128,166,281'Implementing instruction set architectures with non-contiguous register file specifiers'20127,996,618'Apparatus and method for using branch prediction heuristics for determination of trace formation readiness'20117,934,081'Apparatus and method for using branch prediction heuristics for determination of trace formation readiness'20117,877,582'Multi-addressable register file'20117,849,294'Sharing data in internal and memory representations with dynamic data-driven conversion'20107,836,287'Reducing the fetch time of target instructions of a predicted taken branch instruction'20107,793,081'Implementing instruction set architectures with non-contiguous register file specifiers'20107,644,233'Apparatus and method for supporting simultaneous storage of trace and standard cache lines'20107,610,449'Apparatus and method for saving power in a trace cache'20097,437,543'Reducing the fetch time of target instructions of a predicted taken branch instruction'20087,421,566'Implementing instruction set architectures with non-contiguous register file specifiers'20086,343,337'Wide shifting in the vector permute unit'20026,334,176'Method and apparatus for generating an alignment control vector'20016,327,651'Wide shifting in the vector permute unit'20016,298,365'Method and system for bounds comparator'20016,282,628'Method and system for a result code for a single-instruction multiple-data predicate compare operation'20016,202,141'Method and apparatus for performing vector operation using separate multiplication on odd and even data elements of source vectors'20016,202,130'Data processing system for processing vector data and method therefor'20015,996,057'Data processing system and method of permutation with replication within a vector register file'19995,890,222'Method and system for addressing registers in a data processing unit in an indirect addressing mode'19995,887,183'Method and system in a data processing system for loading and storing vectors in a plurality of modes'19995,832,533'Method and system for addressing registers in a data processing unit in an indexed addressing mode'19985,825,677'Numerically intensive computer accelerator'19985,758,176'Method and system for providing a single-instruction, multiple-data execution unit for performing single-instruction, multiple-data operations within a superscalar data processing system'19985,680,338'Method and system for vector processing utilizing selected vector elements'19975,513,366'Method and system for dynamically reconfiguring a register file in a vector processor'1996

Career & activity timeline

Assembled from patent assignee/location history and declaration credentials.

1996–2021Patents assigned to IBM (64)· patent assignee history
1996–2002Based in Round Rock, TX, US· patent location history
1999–2001Patents assigned to MOTOROLA INC (5)· patent assignee history
1999–2021Based in Cary, NC, US· patent location history
2009–2011Based in Cry, NC, US· patent location history
2012–2017Patents assigned to OLSSON BRETT (9)· patent assignee history
2012–2014Patents assigned to GSCHWIND MICHAEL KARL (6)· patent assignee history
2012–2014Patents assigned to WELLMAN JOHN-DAVID (5)· patent assignee history
2014Based in Research Triangle Park, NC, US· patent location history

Inventor activity

Assignee and location history derived from the patent record.

Assignees
AssigneePatentsSpan
IBM641996–2021
OLSSON BRETTself92012–2017
GSCHWIND MICHAEL KARL62012–2014
MOTOROLA INC51999–2001
WELLMAN JOHN-DAVID52012–2014
Locations
LocationPatentsSpan
Cary, NC, US521999–2021
Round Rock, Texas, US91996–2002
Cry, NC, US32009–2011
Research Triangle Park, NC, US12014