RU2181214C2 - Флаги кода условия для обработки данных - Google Patents
Флаги кода условия для обработки данных Download PDFInfo
- Publication number
- RU2181214C2 RU2181214C2 RU99108451/09A RU99108451A RU2181214C2 RU 2181214 C2 RU2181214 C2 RU 2181214C2 RU 99108451/09 A RU99108451/09 A RU 99108451/09A RU 99108451 A RU99108451 A RU 99108451A RU 2181214 C2 RU2181214 C2 RU 2181214C2
- Authority
- RU
- Russia
- Prior art keywords
- arithmetic
- specified
- bit
- parallel
- input operand
- Prior art date
Links
- 238000007792 addition Methods 0.000 claims 4
- 238000006243 chemical reaction Methods 0.000 claims 1
- 238000001914 filtration Methods 0.000 claims 1
- 238000003672 processing method Methods 0.000 claims 1
- 239000000126 substance Substances 0.000 abstract 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30018—Bit or string instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30094—Condition code generation, e.g. Carry, Zero flag
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)
- Advance Control (AREA)
Abstract
Изобретение относится к системам обработки данных. Технический результат заключается в расширении функциональных возможностей за счет обеспечения отдельных флагов кода состояния для каждой из отдельных параллельных операций. Система обработки данных включает в себя арифметико-логический блок, имеющий N-разрядный информационный канал и поддерживающий программные командные слова для параллельной работы. Независимые арифметические операции выполняются арифметико-логическим блоком параллельно с (N/2)-разрядными словами входных операндов. Предусмотрены два набора флагов кода условия N, Z, С, V, SN, SZ, SC, SV, реагирующие на отдельные арифметические операции. Способ описывает работу данной системы. 2 с. и 5 з.п.ф-лы, 7 ил., 60 табл.
Description
Документ в факсимильном виде (см. графическую часть).
Claims (7)
1. Устройство для обработки данных, причем указанное устройство содержит множество регистров (10) для запоминания информационных слов, подлежащих манипулированию, причем каждый из указанных регистров имеет емкость по меньшей мере N разрядов, и арифметико-логический блок (4), имеющий N-разрядный информационный канал и реагирующий на программные командные слова для выполнения арифметико-логических операций, определенных указанными программными командными словами, в котором указанный арифметико-логический блок реагирует на по меньшей мере одно программное командное слово для параллельной работы, которое отдельно выполняет первую арифметико-логическую операцию над информационным словом первого (N/2)-разрядного входного операнда и вторую арифметико-логическую операцию над информационным словом второго (N/2)-разрядного входного операнда; и указанный арифметико-логический блок устанавливает первый набор флагов кода условия (N, Z, C, V) в зависимости от указанной первой арифметико-логической операции и устанавливает второй набор флагов кода условия (SN, SZ, SC, SV) в зависимости от указанной второй арифметико-логической операции, отличающееся тем, что указанный арифметико-логический блок реагирует на условную команду выбора (SEL), которая перемещает или информационное слово первого (N/2)-разрядного входного операнда, хранящееся в регистре первого источника, или информационное слово первого (N/2)-разрядного входного операнда, хранящееся в регистре второго источника, в регистр назначения из указанного множества регистров в зависимости от указанного первого набора флагов условия, и перемещает или информационное слово второго (N/2)-разрядного входного операнда, хранящееся в регистре первого источника, или информационное слово второго (N/2)-разрядного входного операнда, хранящееся в регистре второго источника, в указанный регистр назначения в зависимости от указанного второго набора флагов условия.
2. Устройство по п. 1, в котором указанное программное командное слово для параллельной работы определяет регистр источника среди указанного множества регистров с указанным первым (N/2)-разрядным входным операндом, хранящимся в старших разрядных позициях указанного регистра источника, и с указанным вторым (N/2)-разрядным входным операндом, хранящимся в младших разрядных позициях указанного регистра источника.
3. Устройство по п. 1 или 2, в котором указанный арифметико-логический блок имеет сигнальный канал, который функционирует в качестве цепи переноса между разрядными позициями в арифметико-логических операциях, и при выполнении программного командного слова для параллельной работы указанный сигнальный канал разрывается между указанным информационным словом первого (N/2)-разрядного входного операнда и указанным информационным словом второго (N/2)-разрядного входного операнда.
4. Устройство по любому из предшествующих пунктов, в котором указанное программное командное слово для параллельной работы выполняет одну из следующих арифметико-логических операций: (i) параллельное сложение, при котором выполняются два параллельных (N/2)-разрядных сложения; (ii) параллельное вычитание, при котором выполняются два параллельных (N/2)-разрядных вычитания; (iii) параллельный сдвиг, при котором выполняются две параллельные операции (N/2)-разрядного сдвига; (iv) параллельное сложение/вычитание, при котором параллельно выполняются (N/2)-разрядное сложение и (N/2)-разрядное вычитание; (v) параллельное определение минимума/максимума, при котором выполняются две параллельные (N/2)-разрядные операции определения минимума/максимума, и (vi) параллельное масштабирование, при котором выполняются две параллельные (N/2)-разрядные операции масштабирования.
5. Устройство по любому из предшествующих пунктов, в котором указанный первый набор флагов кода условия и указанный второй набор флагов кода условия включают в себя по меньшей мере один из флагов, указывающий, что непосредственно предшествующая операция (i) выдала результат, который был равен нулю (Z); (ii) выдала результат, который был отрицательным (N); (iii) выдала переполнение (V) и (iv) выдала перенос (С).
6. Устройство по любому из предшествующих пунктов, в котором арифметико-логический блок приспособлен для выполнения одной из следующих операций: операции свертки, операции фильтрации, операции корреляции и операции преобразования.
7. Способ обработки данных, согласно которому запоминают информационные слова, подлежащие манипулированию, во множестве регистров, причем каждый из указанных регистров имеет емкость по меньшей мере N разрядов, и в ответ на программные командные слова выполняют с помощью арифметико-логического блока, имеющего N-разрядный информационный канал, арифметико-логические операции, определяемые указанными программными командными словами, в котором в ответ на по меньшей мере одно программное командное слово для параллельной работы осуществляют отдельное выполнение первой арифметико-логической операции над информационным словом первого (N/2)-разрядного входного операнда и второй арифметико-логической операции над информационным словом второго (N/2)-разрядного входного операнда; устанавливают первый набор флагов кода условия в зависимости от указанной первой арифметико-логической операции и устанавливают второй набор флагов кода условия в зависимости от указанной второй арифметико-логической операции, отличающийся тем, что в ответ на условную команду выбора осуществляют перемещение или информационного слова первого (N/2)-разрядного входного операнда, хранящегося в регистре первого источника, или информационного слова первого (N/2)-разрядного входного операнда, хранящегося в регистре второго источника, в регистр назначения из указанного множества регистров в зависимости от указанного первого набора флагов кода условия и перемещение или информационного слова второго (N/2)-разрядного входного операнда, хранящегося в регистре первого источника, или информационного слова второго (N/2)-разрядного входного операнда, хранящегося в регистре второго источника, в указанный регистр назначения в зависимости от указанного второго набора флагов кода условия.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9619825.4 | 1996-09-23 | ||
GB9619825A GB2317466B (en) | 1996-09-23 | 1996-09-23 | Data processing condition code flags |
Publications (2)
Publication Number | Publication Date |
---|---|
RU99108451A RU99108451A (ru) | 2001-03-10 |
RU2181214C2 true RU2181214C2 (ru) | 2002-04-10 |
Family
ID=10800362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU99108451/09A RU2181214C2 (ru) | 1996-09-23 | 1997-08-22 | Флаги кода условия для обработки данных |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP0927390B1 (ru) |
JP (1) | JP3662259B2 (ru) |
KR (1) | KR100520807B1 (ru) |
CN (1) | CN1104679C (ru) |
DE (1) | DE69721023T2 (ru) |
IL (1) | IL127290A0 (ru) |
MY (1) | MY118456A (ru) |
RU (1) | RU2181214C2 (ru) |
TW (1) | TW325552B (ru) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9710269B2 (en) * | 2006-01-20 | 2017-07-18 | Qualcomm Incorporated | Early conditional selection of an operand |
US7958181B2 (en) * | 2006-09-21 | 2011-06-07 | Intel Corporation | Method and apparatus for performing logical compare operations |
JP4228241B2 (ja) * | 2006-12-13 | 2009-02-25 | ソニー株式会社 | 演算処理装置 |
US9747105B2 (en) | 2009-12-17 | 2017-08-29 | Intel Corporation | Method and apparatus for performing a shift and exclusive or operation in a single instruction |
US9483266B2 (en) * | 2013-03-15 | 2016-11-01 | Intel Corporation | Fusible instructions and logic to provide OR-test and AND-test functionality using multiple test sources |
US9886277B2 (en) | 2013-03-15 | 2018-02-06 | Intel Corporation | Methods and apparatus for fusing instructions to provide OR-test and AND-test functionality on multiple test sources |
JP6956796B2 (ja) * | 2017-09-14 | 2021-11-02 | 三菱電機株式会社 | 演算回路、演算方法、およびプログラム |
CN111209231B (zh) * | 2018-11-21 | 2021-05-11 | 上海寒武纪信息科技有限公司 | 数据处理方法、装置及相关产品 |
CN111210012B (zh) * | 2018-11-21 | 2022-12-09 | 上海寒武纪信息科技有限公司 | 数据处理方法、装置及相关产品 |
WO2020078470A1 (zh) | 2018-10-18 | 2020-04-23 | 上海寒武纪信息科技有限公司 | 片上网络数据处理方法及装置 |
-
1996
- 1996-10-08 TW TW085112294A patent/TW325552B/zh not_active IP Right Cessation
-
1997
- 1997-08-22 KR KR10-1999-7002436A patent/KR100520807B1/ko not_active IP Right Cessation
- 1997-08-22 JP JP51436998A patent/JP3662259B2/ja not_active Expired - Lifetime
- 1997-08-22 RU RU99108451/09A patent/RU2181214C2/ru not_active IP Right Cessation
- 1997-08-22 IL IL12729097A patent/IL127290A0/xx not_active IP Right Cessation
- 1997-08-22 EP EP97937699A patent/EP0927390B1/en not_active Expired - Lifetime
- 1997-08-22 DE DE69721023T patent/DE69721023T2/de not_active Expired - Lifetime
- 1997-08-22 CN CN97194703A patent/CN1104679C/zh not_active Expired - Lifetime
- 1997-08-30 MY MYPI97004023A patent/MY118456A/en unknown
Also Published As
Publication number | Publication date |
---|---|
CN1104679C (zh) | 2003-04-02 |
EP0927390B1 (en) | 2003-04-16 |
IL127290A0 (en) | 1999-09-22 |
DE69721023D1 (de) | 2003-05-22 |
CN1219253A (zh) | 1999-06-09 |
JP2001501755A (ja) | 2001-02-06 |
JP3662259B2 (ja) | 2005-06-22 |
KR100520807B1 (ko) | 2005-10-12 |
KR20000048528A (ko) | 2000-07-25 |
MY118456A (en) | 2004-11-30 |
DE69721023T2 (de) | 2003-12-24 |
TW325552B (en) | 1998-01-21 |
EP0927390A1 (en) | 1999-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100577445B1 (ko) | 분기 예측들을 신속하게 특정하기 위해 명령 캐시 내의 바이트 범위들과 관련되는 분기 선택자들 | |
RU2212049C2 (ru) | Смешанный файл векторных/скалярных регистров | |
EP0551932B1 (en) | Digital signal processor processing multi-point conditional branch operations in a pipeline mode | |
US4675809A (en) | Data processing system for floating point data having a variable length exponent part | |
EP0996057B1 (en) | Data processor with an instruction unit having a cache and a ROM | |
US5179734A (en) | Threaded interpretive data processor | |
KR930018378A (ko) | 캐쉬 메모리 시스템의 성능최적화 방법 및 장치 | |
KR910010301A (ko) | 명령 지정방법 및 실행장치 | |
KR950033803A (ko) | 다중 비트 시프트 장치, 이것을 이용한 데이타 프로세서, 및 다중 비트 시프트 방법 | |
RU2181214C2 (ru) | Флаги кода условия для обработки данных | |
JPS6313215B2 (ru) | ||
KR950009453A (ko) | 컴퓨터 프로세싱 시스템 및 인스트럭션 실행방법 | |
JP2581236B2 (ja) | データ処理装置 | |
KR100316078B1 (ko) | 파이프라인방식프로세서 | |
KR100603067B1 (ko) | 분기 예측의 타입을 분류하기 위해 복귀 선택 비트들을 이용하는 분기 예측 | |
RU99108451A (ru) | Флаги кода условия для обработки данных | |
JP4801605B2 (ja) | Simd型マイクロプロセッサ | |
JP2002312162A (ja) | プロセッサおよびプロセッサシステム | |
US8484446B2 (en) | Microprocessor saving data stored in register and register saving method | |
RU2066067C1 (ru) | Центральный процессор для многопроцессорной вычислительной системы | |
JP3341662B2 (ja) | 情報処理装置及び多ポートレジスタファイル | |
KR100308182B1 (ko) | 데이터처리시스템및이시스템의동작방법 | |
KR100343459B1 (ko) | 자바 프로세서 | |
RU99108435A (ru) | Управление входными операндами в системах обработки данных | |
JP3532026B2 (ja) | 演算装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20070823 |