RU2012147005A - Средство разделенной загрузки/сохранения и команда для него - Google Patents

Средство разделенной загрузки/сохранения и команда для него Download PDF

Info

Publication number
RU2012147005A
RU2012147005A RU2012147005/08A RU2012147005A RU2012147005A RU 2012147005 A RU2012147005 A RU 2012147005A RU 2012147005/08 A RU2012147005/08 A RU 2012147005/08A RU 2012147005 A RU2012147005 A RU 2012147005A RU 2012147005 A RU2012147005 A RU 2012147005A
Authority
RU
Russia
Prior art keywords
memory
operand
register
operands
command
Prior art date
Application number
RU2012147005/08A
Other languages
English (en)
Other versions
RU2554546C2 (ru
Inventor
МИТРАН Марсел
СЛИДЖЛ Тимоти
ЯКОБИ Кристиан
УЭББ Чарлз
Original Assignee
Интернэшнл Бизнес Машинз Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Интернэшнл Бизнес Машинз Корпорейшн filed Critical Интернэшнл Бизнес Машинз Корпорейшн
Publication of RU2012147005A publication Critical patent/RU2012147005A/ru
Application granted granted Critical
Publication of RU2554546C2 publication Critical patent/RU2554546C2/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30087Synchronisation or serialisation instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30163Decoding the operand specifier, e.g. specifier format with implied specifier, e.g. top of stack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

1. Компьютерно-реализуемый способ выполнения команды разделенной загрузки/сохранения (LSD) в процессоре мультипроцессорной системы, включающий:получение команды разделенной загрузки/сохранения, содержащей код операции для выполнения, включающего:выполнение указанной в команде LSD операции на основании полученного кода операции, при этом операция представляет собой осуществление доступа к одному или нескольким операндам в памяти,в зависимости от того, мог ли один из одного или нескольких операндов быть изменен во время доступа к одному или нескольким операндам в памяти в результате события обращения к запоминающему устройству из другого процессора мультипроцессорной системы, установку первого значения индикатора, содержащего любое из следующего: первое значение кода условия или второе значение кода условия, при этом способ дополнительно включает:если определено, что любой из следующего: первый операнд в памяти или второй операнд в памяти из одного или нескольких операндов, мог быть изменен во время упомянутого доступа в результате события обращения к запоминающему устройству, установку первого значения кода условия, указывающего, что во время упомянутого доступа мог быть изменен первый операнд в памяти или второй операнд в памяти, иесли определено, что в результате события обращения к запоминающему устройству во время упомянутого доступа не был изменен ни первый операнд в памяти, ни второй операнд в памяти, установку второго значения кода условия, указывающего, что во время упомянутого доступа не был изменен ни первый операнд в памяти, ни второй операнд в памяти.2. Способ по п.1, в котором командой LSD явл�

Claims (17)

1. Компьютерно-реализуемый способ выполнения команды разделенной загрузки/сохранения (LSD) в процессоре мультипроцессорной системы, включающий:
получение команды разделенной загрузки/сохранения, содержащей код операции для выполнения, включающего:
выполнение указанной в команде LSD операции на основании полученного кода операции, при этом операция представляет собой осуществление доступа к одному или нескольким операндам в памяти,
в зависимости от того, мог ли один из одного или нескольких операндов быть изменен во время доступа к одному или нескольким операндам в памяти в результате события обращения к запоминающему устройству из другого процессора мультипроцессорной системы, установку первого значения индикатора, содержащего любое из следующего: первое значение кода условия или второе значение кода условия, при этом способ дополнительно включает:
если определено, что любой из следующего: первый операнд в памяти или второй операнд в памяти из одного или нескольких операндов, мог быть изменен во время упомянутого доступа в результате события обращения к запоминающему устройству, установку первого значения кода условия, указывающего, что во время упомянутого доступа мог быть изменен первый операнд в памяти или второй операнд в памяти, и
если определено, что в результате события обращения к запоминающему устройству во время упомянутого доступа не был изменен ни первый операнд в памяти, ни второй операнд в памяти, установку второго значения кода условия, указывающего, что во время упомянутого доступа не был изменен ни первый операнд в памяти, ни второй операнд в памяти.
2. Способ по п.1, в котором командой LSD является команда разделенной загрузки пары (LPD), доступ к одному или нескольким операндам в памяти представляет собой выборку первого операнда и второго операнда из памяти, при этом способ дополнительно включает:
сохранение выбранного первого операнда и выбранного второго операнда в одном или нескольких регистрах, указанных в команде LPD.
3. Способ по п.2, в котором команда разделенной загрузки пары содержит поле первого общего регистра, указывающее первый общий регистр, поле второго общего регистра, указывающее второй общий регистр, и поле третьего общего регистра, указывающее первый регистр первый регистр и второй регистр, при этом способ дополнительно включает:
извлечение первого адреса из первого общего регистра, указанного в поле первого общего регистра,
использование извлеченного первого адреса для вызова первого операнда в памяти,
извлечение второго адреса второго операнда из второго общего регистра, указанного в поле второго общего регистра, и
использование извлеченного второго адреса для вызова второго операнда в памяти,
при этом указанной в команде LSD операцией является операция разделенной загрузки пары, одним или несколькими регистрами является пара регистров, состоящая из первого регистра и второго регистра, первый регистр имеет четный адрес, указанный в поле третьего регистра (R3), второй регистр имеет нечетный адрес, указанный в поле третьего регистра с приращением (R3+1), и первый операнд хранится в первом регистре, а второй операнд хранится во втором регистре.
4. Способ по п.3, в котором полученная команда разделенной загрузки пары дополнительно содержит первое поле смещения и второе поле смещения, при этом способ дополнительно включает:
арифметическое сложение первого поля смещения и извлеченного первого адреса с целью формирования первого адреса памяти для выборки первого операнда в памяти, и
арифметическое сложение второго поля смещения и извлеченного второго адреса с целью формирования второго адреса памяти для выборки второго операнда в памяти.
5. Способ по п.1, дополнительно включающий:
прием от множества процессоров мультипроцессорной системы событий обращения к запоминающему устройству, и
сохранение в памяти данных принятых операций обращения к запоминающему устройству.
6. Способ по п.4, в котором команда разделенной загрузки пары, заданная для определенной архитектуры вычислительной машины выбирается и выполняется центральным процессором с альтернативной архитектурой, при этом способ дополнительно включает:
интерпретацию команды разделенной загрузки пары с целью определения заданной программы системы программного обеспечения для эмуляции команды разделенной загрузки пары, и
выполнение команды разделенной загрузки пары путем выполнения заданной программы системы программного обеспечения с целью осуществления шагов способа выполнения машинной команды.
7. Компьютерная система для выполнения команды разделенной загрузки/сохранения (LSD) в процессоре мультипроцессорной системы, содержащая:
память,
устройство обработки, связанное с памятью и содержащее блок выборки команд для выборки команд из памяти и один или несколько блоков выполнения команд для выполнения выбранных команд,
при этом компьютерная система способна осуществлять способ, включающий:
получение команды разделенной загрузки/сохранения, содержащей код операции для выполнения, включающего:
выполнение указанной в команде LSD операции на основании полученного кода операции, при этом операция представляет собой осуществление доступа к одному или нескольким операндам в памяти,
в зависимости от того, мог ли один из одного или нескольких операндов быть изменен во время доступа к одному или нескольким операндам в памяти в результате события обращения к запоминающему устройству из другого процессора мультипроцессорной системы, установку первого значения индикатора, содержащего любое из следующего: первое значение кода условия или второе значение кода условия, при этом способ дополнительно включает:
если определено, что любой из следующего: первый операнд в памяти или второй операнд в памяти из одного или нескольких операндов, мог быть изменен во время упомянутого доступа в результате события обращения к запоминающему устройству, установку первого значения кода условия, указывающего, что во время упомянутого доступа мог быть изменен первый операнд в памяти или второй операнд в памяти, и
если определено, что в результате события обращения к запоминающему устройству во время упомянутого доступа не был изменен ни первый операнд в памяти, ни второй операнд в памяти, установку второго значения кода условия, указывающего, что во время упомянутого доступа не был изменен ни первый операнд в памяти, ни второй операнд в памяти.
8. Компьютерная система по п.7, в которой командой LSD является команда разделенной загрузки пары (LPD), доступ к одному или нескольким операндам в памяти представляет собой выборку первого операнда и второго операнда из памяти, и при этом дополнительно обеспечивается:
сохранение выбранного первого операнда и выбранного второго операнда в одном или нескольких регистрах, указанных в команде LPD.
9. Компьютерная система по п.8, в которой команда разделенной загрузки пары содержит поле первого общего регистра, указывающее первый общий регистр, поле второго общего регистра, указывающее второй общий регистр, и поле третьего общего регистра, указывающее первый регистр первый регистр и второй регистр, и при этом дополнительно обеспечивается:
извлечение первого адреса из первого общего регистра, указанного в поле первого общего регистра,
использование извлеченного первого адреса для вызова первого операнда в памяти,
извлечение второго адреса второго операнда из второго общего регистра, указанного в поле второго общего регистра, и
использование извлеченного второго адреса для вызова второго операнда в памяти,
при этом указанной в команде LSD операцией является операция разделенной загрузки пары, одним или несколькими регистрами является пара регистров, состоящая из первого регистра и второго регистра, первый регистр имеет четный адрес, указанный в поле третьего регистра (R3), второй регистр имеет нечетный адрес, указанный в поле третьего регистра с приращением (R3+1), первый операнд хранится в первом регистре, а второй операнд хранится во втором регистре.
10. Компьютерная система по п.9, в которой полученная команда разделенной загрузки пары дополнительно содержит первое поле смещения и второе поле смещения, и при этом дополнительно обеспечивается:
арифметическое сложение первого поля смещения и извлеченного первого адреса с целью формирования первого адреса памяти для выборки первого операнда в памяти, и
арифметическое сложение второго поля смещения и извлеченного второго адреса с целью формирования второго адреса памяти для выборки второго операнда в памяти.
11. Компьютерная система по п.7, в которой дополнительно обеспечивается:
прием от множества процессоров мультипроцессорной системы событий обращения к запоминающему устройству, и
сохранение в памяти данных принятых операций обращения к запоминающему устройству.
12. Компьютерная система по п.10, в которой команда разделенной загрузки пары, заданная для определенной архитектуры вычислительной машины выбирается и выполняется центральным процессором с альтернативной архитектурой, при этом дополнительно обеспечивается:
интерпретация команды разделенной загрузки пары с целью определения заданной программы системы программного обеспечения для эмуляции команды разделенной загрузки пары, и
выполнение команды разделенной загрузки пары путем выполнения заданной программы системы программного обеспечения с целью осуществления шагов способа выполнения машинной команды.
13. Компьютерно-реализуемый способ вызова хранимых в памяти разделенных операндов, включающий:
выполнение процессором первой подпрограммы, содержащей одну или несколько команд вызова хранимых в памяти разделенных операндов, включающих команду разделенной загрузки пары для загрузки двух разделенных операндов из памяти и установки значения кода условия,
если значение кода условия указывает, что два разделенных операнда могли быть загружены с использованием промежуточной операции обращения к запоминающему устройству в любой из двух разделенных операндов из другого процессора, инициирование выполнения второй подпрограммы, содержащей команды вызова из памяти хранимых разделенных операндов,
если значение кода условия указывает, что два разделенных операнда были загружены в любой из двух разделенных операндов без промежуточной операции обращения к запоминающему устройству, переход к третьей подпрограмме использования загруженных двух разделенных операндов.
14. Способ по п.13, дополнительно включающий:
инициирование повторного выполнения второй программы, пока значение кода условия не будет указывать, что два разделенных операнда были загружены в любой из двух разделенных операндов без промежуточной операции обращения к запоминающему устройству.
15. Способ по п.13, дополнительно включающий:
установку предельного значения для повторного выполнения,
если значение кода условия указывает, что два разделенных операнда могли быть загружены в любой из двух разделенных операндов с использованием промежуточной операции обращения к запоминающему устройству, инициирование повторного выполнения второй подпрограммы, пока не произойдет одно из следующего: вторая подпрограмма будет повторно выполнена то число раз, которое установлено предельным значением, или значение кода условия будет указывать, что два разделенных операнда были загружены в любой из двух разделенных операндов без промежуточной операции обращения к запоминающему устройству.
16. Способ по п.13, дополнительно включающий загрузку двух разделенных операндов в соответствующие положения общего регистра.
17. Компьютерный программный продукт для выполнения команды разделенной загрузки/сохранения (LSD) в процессоре мультипроцессорной системы, представляющий собой материальную запоминающую среду, которую считывает цепь обработки данных и в которой хранятся команды для выполнения цепью обработки данных для осуществления способа по любому из пп.1-6 или 13-16.
RU2012147005/08A 2010-02-18 2010-11-08 Средство разделенной загрузки/сохранения и команда для него RU2554546C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/708,284 2010-02-18
US12/708,284 US8850166B2 (en) 2010-02-18 2010-02-18 Load pair disjoint facility and instruction therefore
PCT/EP2010/067049 WO2011101048A1 (en) 2010-02-18 2010-11-08 Load/store disjoint facility and instruction therefore

Publications (2)

Publication Number Publication Date
RU2012147005A true RU2012147005A (ru) 2014-05-20
RU2554546C2 RU2554546C2 (ru) 2015-06-27

Family

ID=43736136

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2012147005/08A RU2554546C2 (ru) 2010-02-18 2010-11-08 Средство разделенной загрузки/сохранения и команда для него

Country Status (6)

Country Link
US (2) US8850166B2 (ru)
EP (1) EP2430525B1 (ru)
JP (1) JP5692760B2 (ru)
CN (1) CN102754069B (ru)
RU (1) RU2554546C2 (ru)
WO (1) WO2011101048A1 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2727614C1 (ru) * 2017-01-19 2020-07-22 Интернэшнл Бизнес Машинз Корпорейшн Загрузка и сохранение элементов управления, регулирующих функционирование средства защищенного сохранения

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8914619B2 (en) 2010-06-22 2014-12-16 International Business Machines Corporation High-word facility for extending the number of general purpose registers available to instructions
US8615645B2 (en) 2010-06-23 2013-12-24 International Business Machines Corporation Controlling the selectively setting of operational parameters for an adapter
US8635430B2 (en) 2010-06-23 2014-01-21 International Business Machines Corporation Translation of input/output addresses to memory addresses
US8572635B2 (en) 2010-06-23 2013-10-29 International Business Machines Corporation Converting a message signaled interruption into an I/O adapter event notification
US8468284B2 (en) 2010-06-23 2013-06-18 International Business Machines Corporation Converting a message signaled interruption into an I/O adapter event notification to a guest operating system
US9710277B2 (en) * 2010-09-24 2017-07-18 Intel Corporation Processor power management based on class and content of instructions
US9384004B2 (en) 2012-06-15 2016-07-05 International Business Machines Corporation Randomized testing within transactional execution
US9336046B2 (en) 2012-06-15 2016-05-10 International Business Machines Corporation Transaction abort processing
US9348642B2 (en) 2012-06-15 2016-05-24 International Business Machines Corporation Transaction begin/end instructions
US10437602B2 (en) * 2012-06-15 2019-10-08 International Business Machines Corporation Program interruption filtering in transactional execution
US9448796B2 (en) 2012-06-15 2016-09-20 International Business Machines Corporation Restricted instructions in transactional execution
US8688661B2 (en) 2012-06-15 2014-04-01 International Business Machines Corporation Transactional processing
US9436477B2 (en) 2012-06-15 2016-09-06 International Business Machines Corporation Transaction abort instruction
US9361115B2 (en) 2012-06-15 2016-06-07 International Business Machines Corporation Saving/restoring selected registers in transactional processing
US8682877B2 (en) 2012-06-15 2014-03-25 International Business Machines Corporation Constrained transaction execution
US9772854B2 (en) * 2012-06-15 2017-09-26 International Business Machines Corporation Selectively controlling instruction execution in transactional processing
US9740549B2 (en) 2012-06-15 2017-08-22 International Business Machines Corporation Facilitating transaction completion subsequent to repeated aborts of the transaction
US20130339680A1 (en) 2012-06-15 2013-12-19 International Business Machines Corporation Nontransactional store instruction
US9715385B2 (en) 2013-01-23 2017-07-25 International Business Machines Corporation Vector exception code
US9823924B2 (en) 2013-01-23 2017-11-21 International Business Machines Corporation Vector element rotate and insert under mask instruction
US9778932B2 (en) 2013-01-23 2017-10-03 International Business Machines Corporation Vector generate mask instruction
US9804840B2 (en) 2013-01-23 2017-10-31 International Business Machines Corporation Vector Galois Field Multiply Sum and Accumulate instruction
US9513906B2 (en) * 2013-01-23 2016-12-06 International Business Machines Corporation Vector checksum instruction
US9471308B2 (en) 2013-01-23 2016-10-18 International Business Machines Corporation Vector floating point test data class immediate instruction
US9424034B2 (en) * 2013-06-28 2016-08-23 Intel Corporation Multiple register memory access instructions, processors, methods, and systems
US11029997B2 (en) * 2013-07-15 2021-06-08 Texas Instruments Incorporated Entering protected pipeline mode without annulling pending instructions
GB2518613A (en) 2013-09-25 2015-04-01 Ibm Multiple core processing with high throughput atomic memory operations
US9459931B2 (en) * 2014-01-06 2016-10-04 International Business Machines Corporation Administering a lock for resources in a distributed computing environment
US10209992B2 (en) * 2014-04-25 2019-02-19 Avago Technologies International Sales Pte. Limited System and method for branch prediction using two branch history tables and presetting a global branch history register
CN104063329B (zh) * 2014-06-30 2017-04-12 龙芯中科技术有限公司 64位立即数处理方法及装置
GB2529892B (en) * 2014-09-08 2017-04-12 Imagination Tech Ltd Efficient loading and storing of data
US9710398B2 (en) * 2014-11-18 2017-07-18 International Business Machines Corporation RE-MRU of metadata tracks to reduce lock contention
US20160232006A1 (en) * 2015-02-09 2016-08-11 Qualcomm Incorporated Fan out of result of explicit data graph execution instruction
CN104809079B (zh) * 2015-04-14 2018-01-16 昆腾微电子股份有限公司 分页寄存器的访问方法和装置
US10191747B2 (en) * 2015-06-26 2019-01-29 Microsoft Technology Licensing, Llc Locking operand values for groups of instructions executed atomically
US10346168B2 (en) 2015-06-26 2019-07-09 Microsoft Technology Licensing, Llc Decoupled processor instruction window and operand buffer
WO2017006235A1 (en) * 2015-07-09 2017-01-12 Centipede Semi Ltd. Processor with efficient memory access
US10061584B2 (en) * 2015-09-19 2018-08-28 Microsoft Technology Licensing, Llc Store nullification in the target field
KR102457183B1 (ko) * 2016-01-05 2022-10-21 한국전자통신연구원 공유 번역 블록 캐시 기반의 멀티-코어 시뮬레이션 시스템 및 방법
US10521351B2 (en) * 2017-01-12 2019-12-31 International Business Machines Corporation Temporarily suppressing processing of a restrained storage operand request
US10621090B2 (en) 2017-01-12 2020-04-14 International Business Machines Corporation Facility for extending exclusive hold of a cache line in private cache
US10901738B2 (en) * 2017-11-14 2021-01-26 International Business Machines Corporation Bulk store and load operations of configuration state registers
US10572387B2 (en) 2018-01-11 2020-02-25 International Business Machines Corporation Hardware control of CPU hold of a cache line in private cache where cache invalidate bit is reset upon expiration of timer
CN111656335B (zh) * 2018-01-29 2023-11-17 美光科技公司 存储器控制器
US10719387B2 (en) * 2018-04-25 2020-07-21 Oracle International Corporation Memory interface with tamper-evident features to enhance software security
CN111258950B (zh) * 2018-11-30 2022-05-31 上海寒武纪信息科技有限公司 原子访存方法、存储介质、计算机设备、装置和系统
GB2580664B (en) * 2019-01-22 2021-01-13 Graphcore Ltd Double load instruction
RU2713709C1 (ru) * 2019-06-20 2020-02-06 Федеральное государственное унитарное предприятие "Научно-производственный центр автоматики и приборостроения имени академика Н.А. Пилюгина" (ФГУП "НПЦАП") Устройство преобразования информации
CN110515660B (zh) * 2019-08-28 2021-08-06 中国人民解放军国防科技大学 一种加速原子指令执行的方法和装置
CN110781016B (zh) * 2019-10-30 2021-04-23 支付宝(杭州)信息技术有限公司 一种数据处理方法、装置、设备及介质
US11422932B2 (en) 2019-12-20 2022-08-23 Microsoft Technology Licensing, Llc Integrated reference and secondary marking
US11392427B2 (en) * 2020-01-06 2022-07-19 Microsoft Technology Licensing, Llc Lock-free reading of unitary value sets
US11314509B2 (en) * 2020-03-19 2022-04-26 Arm Limited Processing of plural-register-load instruction
US11914511B2 (en) 2020-06-22 2024-02-27 Apple Inc. Decoupling atomicity from operation size
US11748101B2 (en) * 2021-07-13 2023-09-05 Arm Limited Handling of single-copy-atomic load/store instruction with a memory access request shared by micro-operations
US11934255B2 (en) 2022-01-04 2024-03-19 Bank Of America Corporation System and method for improving memory resource allocations in database blocks for executing tasks

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3603934A (en) * 1968-07-15 1971-09-07 Ibm Data processing system capable of operation despite a malfunction
JPS5368530A (en) * 1976-12-01 1978-06-19 Hitachi Ltd Order retrial control unit
US4439828A (en) * 1981-07-27 1984-03-27 International Business Machines Corp. Instruction substitution mechanism in an instruction handling unit of a data processing system
JP2500101B2 (ja) * 1992-12-18 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 共用変数の値を更新する方法
WO1994027215A1 (en) * 1993-05-07 1994-11-24 Apple Computer, Inc. Method for decoding guest instructions for a host computer
US5551013A (en) * 1994-06-03 1996-08-27 International Business Machines Corporation Multiprocessor for hardware emulation
US5748950A (en) * 1994-09-20 1998-05-05 Intel Corporation Method and apparatus for providing an optimized compare-and-branch instruction
US5694587A (en) * 1995-03-31 1997-12-02 International Business Machines Corporation Specialized millicode instructions for test PSW validity, load with access test, and character translation assist
US5790825A (en) * 1995-11-08 1998-08-04 Apple Computer, Inc. Method for emulating guest instructions on a host computer through dynamic recompilation of host instructions
US6785803B1 (en) * 1996-11-13 2004-08-31 Intel Corporation Processor including replay queue to break livelocks
JPH10149285A (ja) * 1996-11-18 1998-06-02 Hitachi Ltd 命令実行制御方法および情報処理装置
US5860126A (en) * 1996-12-17 1999-01-12 Intel Corporation Controlling shared memory access ordering in a multi-processing system using an acquire/release consistency model
US6009261A (en) * 1997-12-16 1999-12-28 International Business Machines Corporation Preprocessing of stored target routines for emulating incompatible instructions on a target processor
US6308255B1 (en) * 1998-05-26 2001-10-23 Advanced Micro Devices, Inc. Symmetrical multiprocessing bus and chipset used for coprocessor support allowing non-native code to run in a system
US6463582B1 (en) * 1998-10-21 2002-10-08 Fujitsu Limited Dynamic optimizing object code translator for architecture emulation and dynamic optimizing object code translation method
US6408380B1 (en) * 1999-05-21 2002-06-18 Institute For The Development Of Emerging Architectures, L.L.C. Execution of an instruction to load two independently selected registers in a single cycle
US7089404B1 (en) * 1999-06-14 2006-08-08 Transmeta Corporation Method and apparatus for enhancing scheduling in an advanced microprocessor
US6681317B1 (en) * 2000-09-29 2004-01-20 Intel Corporation Method and apparatus to provide advanced load ordering
JP3729064B2 (ja) * 2000-11-29 2005-12-21 日本電気株式会社 データ依存関係検出装置
US6922666B2 (en) * 2000-12-22 2005-07-26 Bull Hn Information Systems Inc. Method and data processing system for performing atomic multiple word reads
US7302380B2 (en) * 2002-12-12 2007-11-27 Matsushita Electric, Industrial Co., Ltd. Simulation apparatus, method and program
US7020746B2 (en) 2003-01-28 2006-03-28 Microsoft Corporation Method and system for an atomically updated, central cache memory
US7680990B2 (en) * 2003-05-30 2010-03-16 Hewlett-Packard Development Company, L.P. Superword memory-access instructions for data processor
US20050120185A1 (en) * 2003-12-01 2005-06-02 Sony Computer Entertainment Inc. Methods and apparatus for efficient multi-tasking
GB2409066B (en) * 2003-12-09 2006-09-27 Advanced Risc Mach Ltd A data processing apparatus and method for moving data between registers and memory
US7296120B2 (en) * 2004-11-18 2007-11-13 International Business Machines Corporation Mechanism that provides efficient multi-word load atomicity
JP4228241B2 (ja) * 2006-12-13 2009-02-25 ソニー株式会社 演算処理装置
US8321637B2 (en) 2007-05-14 2012-11-27 International Business Machines Corporation Computing system with optimized support for transactional memory
US20090182992A1 (en) * 2008-01-11 2009-07-16 International Business Machines Corporation Load Relative and Store Relative Facility and Instructions Therefore
JP2010102623A (ja) * 2008-10-27 2010-05-06 Nec Electronics Corp キャッシュメモリ及びその制御方法
US8438340B2 (en) 2010-02-18 2013-05-07 International Business Machines Corporation Executing atomic store disjoint instructions

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2727614C1 (ru) * 2017-01-19 2020-07-22 Интернэшнл Бизнес Машинз Корпорейшн Загрузка и сохранение элементов управления, регулирующих функционирование средства защищенного сохранения

Also Published As

Publication number Publication date
US20110202748A1 (en) 2011-08-18
EP2430525B1 (en) 2019-03-27
JP2013519955A (ja) 2013-05-30
CN102754069A (zh) 2012-10-24
EP2430525A1 (en) 2012-03-21
US9052889B2 (en) 2015-06-09
CN102754069B (zh) 2014-12-24
US8850166B2 (en) 2014-09-30
JP5692760B2 (ja) 2015-04-01
US20130117546A1 (en) 2013-05-09
RU2554546C2 (ru) 2015-06-27
WO2011101048A1 (en) 2011-08-25

Similar Documents

Publication Publication Date Title
RU2012147005A (ru) Средство разделенной загрузки/сохранения и команда для него
EP3451162B1 (en) Device and method for use in executing matrix multiplication operations
EP3451163A1 (en) Device and method for use in executing matrix addition/subtraction operations
US20200233667A1 (en) Systems, methods, and apparatuses for tile matrix multiplication and accumulation
JP5611756B2 (ja) プログラム・フロー制御
RU2012148582A (ru) Команда для загрузки данных до заданной границы памяти, указанной командой
CN106663000B (zh) 处理器和用于处理器中的中断处理的方法
US10296441B2 (en) Debugging support unit for microprocessor
CN107315717B (zh) 一种用于执行向量四则运算的装置和方法
WO2013136214A4 (en) Finding the length of a set of character data having a termination character
KR20040016829A (ko) 파이프라인식 프로세서에서의 예외 취급 방법, 장치 및시스템
JP2021503121A5 (ru)
JP2013536487A5 (ru)
US9547493B2 (en) Self-timed user-extension instructions for a processing device
RU2012149004A (ru) Увеличение числа доступных для команд регистров общего назначения
US20230084523A1 (en) Data Processing Method and Device, and Storage Medium
JP2004516548A5 (ru)
JP2017515228A (ja) Simd処理システムにおける直列実行のための技法
US20170315811A1 (en) Data processing method and device
WO2015017129A4 (en) Multi-threaded gpu pipeline
US10019264B2 (en) System and method for contextual vectorization of instructions at runtime
RU2003117362A (ru) Обработка данных с помощью сопроцессора
CN115905040B (zh) 计数器的处理方法、图形处理器、设备及存储介质
JP2013161484A (ja) 再構成可能コンピューティング装置、その第1メモリ制御器及び第2メモリ制御器、並びにそのデバッギング用のトレースデータを処理する方法
KR102379886B1 (ko) 벡터 명령 처리