Patents Assigned to Advanced Micro Devices
  • Patent number: 10198204
    Abstract: In one form, a memory controller includes a controller and a memory operation array. The controller has an input for receiving a power state change request signal and an output for providing memory operations. The memory operation array comprises a plurality of entries, each entry comprising a plurality of encoded fields. The controller is responsive to an activation of the power state change request signal to access the memory operation array to fetch at least one entry, and to issue at least one memory operation indicated by the entry. In another form, a system comprises a memory system and a processor coupled to the memory system. The processor is adapted to access the memory module using such a memory controller.
    Type: Grant
    Filed: June 1, 2016
    Date of Patent: February 5, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Kevin M. Brandl, Thomas H. Hamilton
  • Patent number: 10199732
    Abstract: An apparatus comprising at least one antenna for transmission and/or reception of circularly polarized electromagnetic radiation. The antenna includes a radiating element, a static element, and a single feed line. The single feed line is coupled between the radiating element and a circuit that drives the antenna. The radiating element has a non-symmetrical outer perimeter shape. The radiating element may include an aperture. The antenna may further include a ground element and a supplemental ground feed structure, the supplemental ground feed structure located between the radiating element and the ground element and the radiating element located between the supplemental ground feed structure and the static element.
    Type: Grant
    Filed: December 30, 2014
    Date of Patent: February 5, 2019
    Assignee: ADVANCED MICRO DEVICES, INC.
    Inventors: Stevan Preradovic, Bo Yang, Natalino Camilleri
  • Patent number: 10198849
    Abstract: Systems, apparatuses, and methods for preloading caches using a direct memory access (DMA) engine with a fast discard mode are disclosed. In one embodiment, a processor includes one or more compute units, a DMA engine, and one or more caches. When a shader program is detected in a sequence of instructions, the DMA engine is programmed to utilize a fast discard mode to prefetch the shader program from memory. By prefetching the shader program from memory, the one or more caches are populated with address translations and the shader program. Then, the DMA engine discards the shader program rather than writing the shader program to another location. Accordingly, when the shader program is invoked on the compute unit(s), the shader program and its translations are already preloaded in the cache(s).
    Type: Grant
    Filed: October 26, 2017
    Date of Patent: February 5, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Alexander Fuad Ashkar, Rex Eldon McCrary, Harry J. Wise
  • Patent number: 10198789
    Abstract: Techniques for allowing cache access returns out of order are disclosed. A return ordering queue exists for each of several cache access types and stores outstanding cache accesses in the order in which those accesses were made. When a cache access request for a particular type is at the head of the return ordering queue for that type and the cache access is available for return to the wavefront that made that access, the cache system returns the cache access to the wavefront. Thus, cache accesses can be returned out of order with respect to cache accesses of different types. Allowing out-of-order returns can help to improve latency, for example in the situation where a relatively low-latency access type (e.g., a read) is issued after a relatively high-latency access type (e.g., a texture sampler operation).
    Type: Grant
    Filed: December 13, 2016
    Date of Patent: February 5, 2019
    Assignee: ADVANCED MICRO DEVICES, INC.
    Inventors: Daniel Schneider, Fataneh Ghodrat
  • Patent number: 10198261
    Abstract: A method of performing memory synchronization operations is provided that includes receiving, at a programmable cache controller in communication with one or more caches, an instruction in a first language to perform a memory synchronization operation of synchronizing a plurality of instruction sequences executing on a processor, mapping the received instruction in the first language to one or more selected cache operations in a second language executable by the cache controller and executing the one or more cache operations to perform the memory synchronization operation. The method further comprises receiving a second mapping that provides mapping instructions to map the received instruction to one or more other cache operations, mapping the received instruction to one or more other cache operations and executing the one or more other cache operations to perform the memory synchronization operation.
    Type: Grant
    Filed: April 11, 2016
    Date of Patent: February 5, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Shuai Che, Marc S. Orr, Bradford M. Beckmann
  • Patent number: 10197455
    Abstract: A temperature dependent oscillator charges a capacitance from a voltage source through a switch. The switch is opened and the capacitance discharges through a transistor having a temperature dependent resistance. The voltage across the capacitance is compared to a predetermined threshold voltage. The comparator asserts a compare signal when the capacitance discharges to a predetermined voltage level. The switch is then closed for a long enough time to recharge the capacitor and then the switch is opened to allow the capacitance to discharge through the transistor. The charging and discharging repeats with a frequency that is exponentially related to temperature. A counter counts the oscillations over a predetermined time period. The count value is processed using a natural log function resulting in a thermal value corresponding to temperature. The thermal value may be corrected for supply voltage errors.
    Type: Grant
    Filed: May 19, 2015
    Date of Patent: February 5, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Stephen V. Kosonocky
  • Publication number: 20190034151
    Abstract: A technique for implementing synchronization monitors on an accelerated processing device (“APD”) is provided. Work on an APD includes workgroups that include one or more wavefronts. All wavefronts of a workgroup execute on a single compute unit. A monitor is a synchronization construct that allows workgroups to stall until a particular condition is met. Responsive to all wavefronts of a workgroup executing a wait instruction, the monitor coordinator records the workgroup in an “entry queue.” The workgroup begins saving its state to a general APD memory and, when such saving is complete, the monitor coordinator moves the workgroup to a “condition queue.” When the condition specified by the wait instruction is met, the monitor coordinator moves the workgroup to a “ready queue,” and, when sufficient resources are available on a compute unit, the APD schedules the ready workgroup for execution on a compute unit.
    Type: Application
    Filed: July 27, 2017
    Publication date: January 31, 2019
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Alexandru Dutu, Bradford M. Beckmann
  • Publication number: 20190034251
    Abstract: Described herein are a method and apparatus for memory vulnerability prediction. A memory vulnerability predictor predicts the reliability of a memory region when it is first accessed, based on past program history. The memory vulnerability predictor uses a table to store reliability predictions and predicts reliability needs of a new memory region. A memory management module uses the reliability information to make decisions, (such as to guide memory placement policies in a heterogeneous memory system).
    Type: Application
    Filed: July 28, 2017
    Publication date: January 31, 2019
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Vilas Sridharan, David A. Roberts
  • Publication number: 20190033939
    Abstract: A data processing system includes a power manager for providing a power event depth signal in response to a power event request signal. A plurality of real-time clients is coupled to the power manager. Each real-time client includes a client buffer that has a plurality of entries for storing data. The real-time client also includes a register for storing a watermark threshold for the client buffer, as well as logic for providing an allow signal when a number of valid entries in the client buffer exceeds the watermark threshold. A power management state machine is coupled to each of the plurality of real-time clients. The power management state machine provides a power event start signal in response to all of the plurality of real-time clients providing respective allow signals.
    Type: Application
    Filed: July 28, 2017
    Publication date: January 31, 2019
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Sonu Arora, Alexander Branover, Benjamin Tsien
  • Publication number: 20190037240
    Abstract: A processing device is provided which includes memory configured to store data and a processor. The processor is configured to receive a plurality of panoramic video images representing views around a point in a three dimensional (3D) space and warp the plurality of panoramic video images, using a panoramic format, into a plurality of formatted warped images. The processor is also configured to store, in the memory, the plurality of formatted warped images and perform a motion search around each co-located pixel block of a reference panoramic frame by limiting the motion searches in a vertical direction around the co-located pixel blocks.
    Type: Application
    Filed: July 27, 2017
    Publication date: January 31, 2019
    Applicant: Advanced Micro Devices, Inc.
    Inventor: Michael L. Schmit
  • Publication number: 20190037097
    Abstract: A computer vision processing device is provided which comprises memory configured to store data and a processor. The processor is configured to store captured image data in a first buffer and acquire access to the captured image data in the first buffer when the captured image data is available for processing. The processor is also configured to execute a first group of operations in a processing pipeline, each of which processes the captured image data accessed from the first buffer and return the first buffer for storing next captured image data when a last operation of the first group of operations executes.
    Type: Application
    Filed: July 28, 2017
    Publication date: January 31, 2019
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Radhakrishna Giduthuri, Michael L. Schmit
  • Patent number: 10191873
    Abstract: A method of and device for transferring data is provided. The method includes determining a difference between a data segment that was transferred last relative to each of one or more data segments available to be transferred next. In some embodiments, for so long as no data segment available to be sent has been waiting too long, the data segment chosen to be sent next is the data segment having the smallest difference relative to the data segment transferred last. The chosen data segment is then transmitted as the next data segment transferred.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: January 29, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Greg Sadowski
  • Publication number: 20190028725
    Abstract: A system and method for scalable video coding that includes base layer having lower resolution encoding, enhanced layer having higher resolution encoding and the data transferring between two layers. The system and method provides several methods to reduce bandwidth of inter-layer transfers while at the same time reducing memory requirements. Due to less memory access, the system clock frequency can be lowered so that system power consumption is lowered as well. The system avoids having prediction data from base layer to enhanced layer to be up-sampled for matching resolution in the enhanced layer as transferring up-sampled data can impose a big burden on memory bandwidth.
    Type: Application
    Filed: September 10, 2018
    Publication date: January 24, 2019
    Applicants: Advanced Micro Devices, Inc., ATI Technologies ULC
    Inventors: Lei Zhang, Ji Zhou, Zhen Chen, Min Yu
  • Patent number: 10186510
    Abstract: A system and method for creating a layout for a vertical gate all around standard cell are described. Metal gate is placed all around two vertical nanowire sheets formed on a silicon substrate. A gate contact is formed on the metal gate between the two vertical nanowire sheets. Gate extension metal (GEM) is placed above the metal gate at least on the gate contact. A via for a gate is formed at a location on the GEM where a local interconnect layer is available to be used for routing a gate connection. Local metal layers are placed for connecting local routes and power connections.
    Type: Grant
    Filed: June 26, 2017
    Date of Patent: January 22, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Richard T. Schultz
  • Patent number: 10185498
    Abstract: A memory system includes a write buffer, a main memory having a higher latency than the write buffer, and a memory controller. In response to a write request indicating first data for storing at a write address in the main memory, the memory controller adds a new write entry in the write buffer, where the new write entry includes the write address and the first data, and updates a pointer of a previous write entry in the write buffer to point to the new write entry. In response to a write-back instruction, the memory controller traverses a plurality of write entries stored in the write buffer, and writes into the main memory second data of the previous write entry and the first data of the new write entry.
    Type: Grant
    Filed: June 16, 2016
    Date of Patent: January 22, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventor: David A. Roberts
  • Patent number: 10185604
    Abstract: Methods and apparatus of interleaving two or more workloads are presented herein. The methods and apparatus may comprise a schedule controller and a coprocessor. The schedule controller is operative to utilize the first storage unit to manage context stored therein that allows for the coprocessor to interleave the two or more workloads that can be directly supported by the first storage unit. The coprocessor includes a dedicated first storage unit and an engine.
    Type: Grant
    Filed: October 31, 2014
    Date of Patent: January 22, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Winthrop Wu
  • Publication number: 20190018699
    Abstract: A technique for recovering from a hang in a virtualized accelerated processing device (“APD”) is provided. In the virtualization scheme, different virtual machines are assigned different “time-slices” in which to use the APD. When a time-slice expires, the APD stops operations for a current VM and starts operations for another VM. To stop operations on the APD, a virtualization scheduler sends a request to idle the APD. The APD responds by completing work and idling. If one or more portions of the APD do not complete this idling process before a timeout expires, then a hang occurs. In response to the hang, the virtualization scheduler informs the hypervisor that a hang has occurred. The hypervisor performs a function level reset on the APD and informs the VM that the hang has occurred. The VM responds by stopping command issue to the APD and re-initializing the APD for the function.
    Type: Application
    Filed: July 28, 2017
    Publication date: January 17, 2019
    Applicants: Advanced Micro Devices, Inc., ATI Technologies ULC
    Inventors: Anthony Asaro, Yinan Jiang, Andy Sung, Ahmed M. Abdelkhalek, Xiaowei Wang, Sidney D. Fortes
  • Publication number: 20190018664
    Abstract: Methods of compiling source code are provided. A method includes identifying a first array of structures (AOS), having a plurality of array elements, each array element being a structure with a plurality of fields, and performing structure peeling on the first AOS to convert a data layout of the first AOS to an array of structure of arrays (AOSOA) including a plurality of memory blocks of uniform block size. At least one of the plurality of memory blocks is allocated for each field of the plurality of fields. The method further includes allocating a number of complete memory blocks to accommodate all of the plurality of array elements of the AOS.
    Type: Application
    Filed: July 14, 2017
    Publication date: January 17, 2019
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Suresh Mani, Dibyendu Das, Shivarama Rao, Ashutosh Nema
  • Patent number: 10180826
    Abstract: A compiler generates transfer functions for blocks of a program during compilation of the program. The transfer functions estimate bit widths of variables in the blocks based on numbers of bits needed to carry out at least one instruction in the blocks and whether the variables are live in the blocks. For example, a transfer function may return a number indicating how many bits of a variable are needed to execute a current instruction as a function of the number of bits of the variable used by the program in subsequent instructions. Numbers of bits to represent the variables in the compiled program based on the transfer functions.
    Type: Grant
    Filed: October 22, 2015
    Date of Patent: January 15, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Prakash Sathyanath Raghavendra, Dibyendu Das, Arun Rangasamy
  • Patent number: 10180789
    Abstract: Systems, apparatuses, and methods for implementing software control of state sets are disclosed. In one embodiment, a processor includes at least an execution unit and a plurality of state registers. The processor is configured to detect a command to allocate a first state set for storing a first state, wherein the command is generated by software, and wherein the first state specifies values for the plurality of state registers. The command is executed on the execution unit while the processor is in a second state, wherein the second state is different from the first state. The first state set of the processor is allocated with the first state responsive to executing the command on the execution unit. The processor is configured to allocate the first state set for the first state prior to the processor entering the first state.
    Type: Grant
    Filed: January 26, 2017
    Date of Patent: January 15, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Rex Eldon McCrary, Michael J. Mantor, Alexander Fuad Ashkar, Harry J. Wise