Processing

Please wait...

Settings

Settings

Goto Application

1. WO2013180738 - SCATTER USING INDEX ARRAY AND FINITE STATE MACHINE

Publication Number WO/2013/180738
Publication Date 05.12.2013
International Application No. PCT/US2012/040628
International Filing Date 02.06.2012
IPC
G06F 9/06 2006.01
GPHYSICS
06COMPUTING; CALCULATING OR COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
G06F 9/30 2006.01
GPHYSICS
06COMPUTING; CALCULATING OR COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
G06F 9/305 2006.01
GPHYSICS
06COMPUTING; CALCULATING OR COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
305Controlling the executing of logical operations
CPC
G06F 15/7839
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
15Digital computers in general
76Architectures of general purpose stored program computers
78comprising a single central processing unit
7839with memory
G06F 9/30018
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
30003Arrangements for executing specific machine instructions
30007to perform operations on data operands
30018Bit or string instructions; instructions using a mask
G06F 9/30036
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
30003Arrangements for executing specific machine instructions
30007to perform operations on data operands
30036Instructions to perform operations on packed data, e.g. vector operations
G06F 9/30043
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
30003Arrangements for executing specific machine instructions
3004to perform operations on memory
30043LOAD or STORE instructions; Clear instruction
G06F 9/30145
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
30145Instruction analysis, e.g. decoding, instruction word fields
G06F 9/345
GPHYSICS
06COMPUTING; CALCULATING; COUNTING
FELECTRIC DIGITAL DATA PROCESSING
9Arrangements for program control, e.g. control units
06using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
30Arrangements for executing machine instructions, e.g. instruction decode
34Addressing or accessing the instruction operand or the result ; ; Formation of operand address; Addressing modes
345of multiple operands or results
Applicants
  • INTEL CORPORATION [US]/[US] (AllExceptUS)
  • SPERBER, Zeev [IL]/[IL] (UsOnly)
  • VALENTINE, Robert [US]/[IL] (UsOnly)
  • RAIKEN, Shlomo [IL]/[IL] (UsOnly)
  • SHWARTSMAN, Stanislav [IL]/[IL] (UsOnly)
  • OFIR, Gal [IL]/[IL] (UsOnly)
  • YANOVER, Igor [IL]/[IL] (UsOnly)
  • PATKIN, Guy [IL]/[IL] (UsOnly)
  • LEVY, Ofer [IL]/[IL] (UsOnly)
Inventors
  • SPERBER, Zeev
  • VALENTINE, Robert
  • RAIKEN, Shlomo
  • SHWARTSMAN, Stanislav
  • OFIR, Gal
  • YANOVER, Igor
  • PATKIN, Guy
  • LEVY, Ofer
Agents
  • MENNEMEIER, Lawrence, M.
Priority Data
Publication Language English (EN)
Filing Language English (EN)
Designated States
Title
(EN) SCATTER USING INDEX ARRAY AND FINITE STATE MACHINE
(FR) DIFFUSION AU MOYEN D'UNE TABLE D'INDICES ET D'UNE MACHINE À ÉLÉMENTS FINIS
Abstract
(EN)
Methods and apparatus are disclosed using an index array and finite state machine for scatter/gather operations. Embodiment of apparatus may comprise: decode logic to decode scatter/gather instructions and generate micro-operations. An index array holds a set of indices and a corresponding set of mask elements. A finite state machine facilitates the scatter operation. Address generation logic generates an address from an index of the set of indices for at least each of the corresponding mask elements having a first value. Storage is allocated in a buffer for each of the set of addresses being generated. Data elements corresponding to the set of addresses being generated are copied to the buffer. Addresses from the set are accessed to store data elements if a corresponding mask element has said first value and the mask element is changed to a second value responsive to completion of their respective stores.
(FR)
L'invention concerne des procédés et des appareils utilisant un tableau d'indices et une machine à états finis pour les opérations de diffusion/collecte. Un mode de réalisation de l'appareil peut comprendre une logique de décodage pour décoder des instructions de diffusion/collecte et générer des micro-opérations. Une table d'indices contient un ensemble d'indices et un ensemble correspondant d'éléments de masque. Une machine à états finis facilite l'opération de diffusion. Une logique de génération d'adresse génère une adresse à partir d'un indice de l'ensemble d'indices pour au moins chacun des éléments de masque correspondants comprenant une première valeur. Un enregistrement est attribué dans un tampon pour chaque adresse de l'ensemble d'adresses générées. Des éléments de données correspondant à l'ensemble d'adresses générées sont copiés dans le tampon. Les adresses de l'ensemble sont accessibles pour enregistrer des éléments de données si un élément de masque correspondant comprend ladite première valeur et si l'élément de masque est modifié en une seconde valeur sensible à la réalisation de leurs stockages respectifs.
Latest bibliographic data on file with the International Bureau