CN112181354B - 一种移位饱和同步处理的方法及其应用 - Google Patents
一种移位饱和同步处理的方法及其应用 Download PDFInfo
- Publication number
- CN112181354B CN112181354B CN202011084127.8A CN202011084127A CN112181354B CN 112181354 B CN112181354 B CN 112181354B CN 202011084127 A CN202011084127 A CN 202011084127A CN 112181354 B CN112181354 B CN 112181354B
- Authority
- CN
- China
- Prior art keywords
- data
- shifted
- saturation
- bit
- overflow
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000001360 synchronised effect Effects 0.000 title abstract description 10
- 238000001514 detection method Methods 0.000 claims description 10
- 230000015654 memory Effects 0.000 claims description 6
- 230000005945 translocation Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开了一种移位饱和同步处理的方法及其应用,步骤如下:产生移位MASK,移位后溢出位的选择信号产生,将移位溢出对应的位标记为1,其他位置标记为0;使用选择信号选择待移位的数据,如选择信号中某一位的MASK为1,则选取待移位的数据中的对应结果,反之则输出待移位数据的最高位;检测以上所得所有结果和待移位的数据的最高位,如待移位的数据的最高位为0时以上所得所有结果全为0,或者待移位的数据的最高位为1时以上所得所有结果全为1,则移位无溢出,反之则移位溢出。本发明的方法,逻辑清晰,步序简单,实现了移位与饱和判断的同步进行,提高了移位运行效率,极具应用前景。
Description
技术领域
本发明属于数据处理技术领域,特别涉及一种数据运算中的移位饱和同步处理的方法及其应用。
背景技术
在有符号的数据运算中,最高位(MSB)代表正负关系,当MSB为0时表明是正数,当MSB为1时表明是负数。在左移位操作中,可能会出现一个正数移位结果为负数,或一个负数移位结果为正数。在许多应用场合这是不允许的,这种情况下就会进行饱和操作,当一个正数移位结果为负数时,经过饱和处理结果为最大正数(即最高位为0,其他位为1);当一个负数移位结果为正数时,经过饱和处理结果为最小负数(即最高位为1,其他位为0)。
通常情况下饱和判断需要在移位结果出来后才能进行,虽然其能够完成移位饱和处理,但这种处理模式极大地影响了数据处理(移位运行)效率。
因此,开发一种能够在移位的同时完成饱和判断的方法对于电脑处理器或控制芯片的底层运算极具现实意义。
发明内容
本发明的目的在于克服现有技术饱和判断需要在移位结果出来后才能进行,影响移位运行效率的缺陷,提供一种能够在移位的同时完成饱和判断的方法。
为实现上述目的,本发明提供如下技术方案:
一种移位饱和同步处理的方法,应用于电子设备,其步骤如下:
(1)移位MASK的产生:
移位后溢出位的选择信号产生,将移位溢出对应的位标记为1,其他位置标记为0;由于只有移出的位和结果的最高位影响饱和判断,该逻辑用于产生移位后移出位的选择信号,移出的对应的位为1,其他位为0,作为后续选择的控制,如当移位量为1时,只有最高位移出,则生成的MASK的值为 1000_0000…0000_0000(最高位为1,其余位为0),依次类推;
(2)数据选择:
使用所述选择信号选择待移位的数据,如选择信号中某一位的MASK为 1,则表明饱和位需要用该位进行判断,选取待移位的数据中的对应结果,反之(MASK为0)则表明该位与判断无关,输出待移位数据的最高位,这样输出的结果只包含影响饱和判断的位和MSB位;(影响饱和的位为移出位和移位结果的最高有效位,移位结果的最高有效位也就是移出位的下一位)
(3)饱和检测:
检测步骤(2)所得所有结果和待移位的数据的最高位,如待移位的数据的最高位为0时步骤(2)所得所有结果全为0(正饱和判断),或者待移位的数据的最高位为1时步骤(2)所得所有结果全为1(负饱和判断),则移位无溢出,反之则移位溢出。
本发明提出一种使用移位输入数据产生饱和标志的方法,其将待移位数据移位后会产生溢出的位选出来,判断当待移位的数据的最高位为0时步骤 (2)所得所有结果是否全为0,或者当待移位的数据的最高位为1时步骤(2) 所得所有结果是否全为1,如果是,说明没有溢出,也就无需饱和处理;如果否,那么说明有溢出,需要饱和处理,就产生饱和标志,实现过程简单,进而实现了移位与饱和判断的同步进行,相比于现有技术需要在移位结果出来后进行饱和判断,能够大大提高移位运行效率,能够极大地提高运算处理的效率,极具应用前景。
作为优选的技术方案:
如上所述的一种移位饱和同步处理的方法,所述待移位数据通过MASK 筛选出溢出相关位,并将其他位使用最高位填充,具体是使用MASK选出需要的位,将不需要的位选择最高位进行填充输出。
如上所述的一种移位饱和同步处理的方法,步骤(3)中,检测待移位的数据的最高位为0时步骤(2)所得所有结果全为0(正饱和判断),如果是说明无溢出,正饱和标志位为0,反之(待移位的数据的最高位为0时步骤(2) 所得所有结果不全为0),则需要饱和处理,正饱和标志位置1。
如上所述的一种移位饱和同步处理的方法,步骤(3)中,检测待移位的数据的最高位为1时步骤(2)所得所有结果全为1(负饱和判断),如果是说明无溢出,负饱和标志位为0,反之(待移位的数据的最高位为1时步骤(2) 所得所有结果不全为1),则需要饱和处理,负饱和标志位置1。在本申请的技术方案中,正负饱和标志的引入能够方便后续对数据进行处理。
本发明还提供一种应用如上所述的移位饱和同步处理的方法的集成电路,包括一个或多个处理器、一个或多个存储器、一个或多个程序及数据输入装置;
所述数据输入装置用于输入待移位数据及其所需移动的位数,所述一个或多个程序被存储在所述存储器中,当所述一个或多个程序被所述处理器执行时,使得所述集成电路执行如上所述的移位饱和同步处理的方法。
此外,本发明还提供一种应用如上所述的集成电路的电子设备。
有益效果:
本发明的移位饱和同步处理的方法,逻辑清晰,整体步序简单,实现了移位与饱和判断的同步进行,相比于现有技术需要在移位结果出来后进行饱和判断,能够大大提高移位运行效率,能够极大地提高运算处理的效率,在所有需要电子运算的地方都极具应用前景;且实现过程简单,处理速度快,成本低廉。
附图说明
图1为本发明的移位饱和同步处理的方法的流程图;
图2为移位MASK的产生的示意图;
图3为数据选择的示意图;
图4为正饱和检测的示意图;
图5为负饱和检测的示意图;
图6为本发明的集成电路的结构图。
具体实施方式
下面结合附图,对本发明的具体实施方式做进一步阐述。
实施例1
一种移位饱和同步处理的方法,其步骤如图1所示:
(1)移位MASK的产生(如图2所示):
移位后溢出位的选择信号产生,将移位溢出对应的位标记为1,其他位置标记为0;
(2)数据选择(如图3所示):
使用选择信号选择待移位的数据,如选择信号中某一位的MASK为1,则选取待移位的数据中的对应结果,反之则输出待移位数据的最高位;
(3)饱和检测:
检测步骤(2)所得所有结果和待移位的数据的最高位,如待移位的数据的最高位为0时步骤(2)所得所有结果全为0(正饱和检测,如图4所示),或者待移位的数据的最高位为1时步骤(2)所得所有结果全为1(负饱和检测,如图5所示),则移位无溢出,反之则移位溢出,此时如果待移位的数据的最高位为1时步骤(2)所得所有结果不全为1,则产生负饱和标志,如果待移位的数据的最高位为0时步骤(2)所得所有结果不全为0,则产生正饱和标志。
图1中①为一种移位饱和标志位产生方法的实现单元,其中该单元有两个输入,一个输出,输入为等待移位的数据Data,移位量Shift,输出为正饱和标志位和负饱和标志位;
②为移位MASK产生单元,根据输入Shift的值生成需要选择的数据位,并输出到③数据选择&MSB填充单元中进行选择;
③为数据选择单元,根据②产生的选择信号选择需要的移位数据,并将不需要的位用MSB位填充,结果输出到④⑤饱和检测单元;
④为正饱和检测单元,(当待移位的数据的最高位为0时,触发该单元) 由③数据选择的结果判断是否全为0,如果是表明无溢出,如果不是全0表明当前需要饱和处理,并将饱和标志位置1;
⑤为负饱和检测单元,(当待移位的数据的最高位为1时,触发该单元) 由③数据选择的结果判断是否全为1,如果是表明无溢出,如果不是全1表明当前需要饱和处理,并将饱和标志位置1。
经验证,本发明的移位饱和同步处理的方法,提出一种使用移位输入数据产生饱和标志的方法,其将待移位数据移位后会产生溢出的位选出来,判断其是否全与最高位(待移位数据的移位后的最高位)相等,如果相等,说明没有溢出,也就无需饱和处理;如果不全相等,那么说明有溢出,需要饱和处理,就产生饱和标志,进而实现了移位与饱和判断的同步进行,相比于现有技术需要在移位结果出来后进行饱和判断,能够大大提高移位运行效率,能够极大地提高运算处理的效率,极具应用前景。
实施例2
一种集成电路,如图6所示,包括一个或多个处理器、一个或多个存储器、一个或多个程序及数据输入装置;
数据输入装置用于输入待移位数据及其所需移动的位数,一个或多个程序被存储在存储器中,当一个或多个程序被处理器执行时,使得集成嗲路执行如实施例1所述的移位饱和同步处理的方法。
经验证,本发明的集成电路,实现过程简单,处理速度快,成本低廉,能够实现移位与饱和判断的同步进行,大大提高移位运行效率,极具应用前景。
实施例3
一种电子设备,包括且应用实施例2所述的集成电路。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应该理解,这些仅是举例说明,在不违背本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改。
Claims (6)
1.一种移位饱和同步处理的方法,其特征在于,包括如下步骤:
(1)移位MASK的产生:
移位后溢出位的选择信号产生,将移位溢出对应的位标记为1,其他位置标记为0;
(2)数据选择:
使用所述选择信号选择待移位的数据,如选择信号中某一位的MASK为1,则选取待移位的数据中的对应结果,反之则输出待移位数据的最高位;
(3)饱和检测:
检测步骤(2)所得所有结果和待移位的数据的最高位,如待移位的数据的最高位为0时步骤(2)所得所有结果全为0,或者待移位的数据的最高位为1时步骤(2)所得所有结果全为1,则移位无溢出,反之则移位溢出。
2.根据权利要求1所述的一种移位饱和同步处理的方法,其特征在于,所述待移位数据通过MASK筛选出溢出相关位,并将其他位使用最高位填充。
3.根据权利要求1所述的一种移位饱和同步处理的方法,其特征在于,步骤(3)中,检测待移位的数据的最高位为0时步骤(2)所得所有结果全为0,如果是说明无溢出,正饱和标志位为0,反之,则需要饱和处理,正饱和标志位置1。
4.根据权利要求1所述的一种移位饱和同步处理的方法,其特征在于,步骤(3)中,检测待移位的数据的最高位为1时步骤(2)所得所有结果全为1,如果是说明无溢出,负饱和标志位为0,反之,则需要饱和处理,负饱和标志位置1。
5.应用如权利要求1~4任一项所述的移位饱和同步处理的方法的集成电路,其特征在于,包括一个或多个处理器、一个或多个存储器、一个或多个程序及数据输入装置;
所述数据输入装置用于输入待移位数据及其所需移动的位数,所述一个或多个程序被存储在所述存储器中,当所述一个或多个程序被所述处理器执行时,使得所述集成电路执行如权利要求1~4任一项所述的移位饱和同步处理的方法。
6.应用如权利要求5所述的集成电路的电子设备。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011084127.8A CN112181354B (zh) | 2020-10-12 | 2020-10-12 | 一种移位饱和同步处理的方法及其应用 |
PCT/CN2021/122871 WO2022078263A1 (zh) | 2020-10-12 | 2021-10-09 | 一种移位饱和同步处理的方法及其应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011084127.8A CN112181354B (zh) | 2020-10-12 | 2020-10-12 | 一种移位饱和同步处理的方法及其应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112181354A CN112181354A (zh) | 2021-01-05 |
CN112181354B true CN112181354B (zh) | 2021-08-10 |
Family
ID=73948375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011084127.8A Active CN112181354B (zh) | 2020-10-12 | 2020-10-12 | 一种移位饱和同步处理的方法及其应用 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112181354B (zh) |
WO (1) | WO2022078263A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112181354B (zh) * | 2020-10-12 | 2021-08-10 | 上海芯旺微电子技术有限公司 | 一种移位饱和同步处理的方法及其应用 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6078940A (en) * | 1997-01-24 | 2000-06-20 | Texas Instruments Incorporated | Microprocessor with an instruction for multiply and left shift with saturate |
US6112291A (en) * | 1997-01-24 | 2000-08-29 | Texas Instruments Incorporated | Method and apparatus for performing a shift instruction with saturate by examination of an operand prior to shifting |
CN1326565A (zh) * | 1998-11-20 | 2001-12-12 | Arm有限公司 | 数据处理系统中的算术运算 |
EP1696314A1 (en) * | 2005-02-28 | 2006-08-30 | Hitachi Global Storage Technologies Netherlands B.V. | Arithmetic shifter, processor unit and storage device |
CN100416490C (zh) * | 2005-01-14 | 2008-09-03 | 威盛电子股份有限公司 | 一种用于左移数据的方法与系统 |
CN101794212A (zh) * | 1995-08-31 | 2010-08-04 | 英特尔公司 | 控制移位分组数据的位校正的装置 |
CN103399727A (zh) * | 2012-06-07 | 2013-11-20 | 威盛电子股份有限公司 | 硬件整数饱和侦测器、侦测饱和的方法及其硬件装置 |
CN107003839A (zh) * | 2014-12-22 | 2017-08-01 | 英特尔公司 | 用于移位和乘法器的指令和逻辑 |
US10313641B2 (en) * | 2015-12-04 | 2019-06-04 | Google Llc | Shift register with reduced wiring complexity |
CN111160544A (zh) * | 2019-12-31 | 2020-05-15 | 上海安路信息科技有限公司 | 数据激活方法及fpga数据激活系统 |
CN111710356A (zh) * | 2020-05-29 | 2020-09-25 | 北京大学 | 编码型闪存装置和编码方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0997178A (ja) * | 1995-09-29 | 1997-04-08 | Matsushita Electric Ind Co Ltd | 飽和演算処理装置および方法 |
CN100452881C (zh) * | 2006-08-07 | 2009-01-14 | 清华大学 | 一种基于合并处理的反量化方法及其装置 |
US8601040B2 (en) * | 2010-09-27 | 2013-12-03 | Texas Instruments Incorporated | Reduced-level shift overflow detection |
US9152419B2 (en) * | 2012-12-18 | 2015-10-06 | Intel Corporation | Instruction set for supporting wide scalar pattern matches |
US11249754B2 (en) * | 2017-12-21 | 2022-02-15 | Intel Corporation | Apparatus and method for vector horizontal add of signed/unsigned words and doublewords |
DE102018113475A1 (de) * | 2018-06-06 | 2019-12-12 | Infineon Technologies Ag | Rechenwerk zum rechnen mit maskierten daten |
CN112181354B (zh) * | 2020-10-12 | 2021-08-10 | 上海芯旺微电子技术有限公司 | 一种移位饱和同步处理的方法及其应用 |
-
2020
- 2020-10-12 CN CN202011084127.8A patent/CN112181354B/zh active Active
-
2021
- 2021-10-09 WO PCT/CN2021/122871 patent/WO2022078263A1/zh active Application Filing
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101794212A (zh) * | 1995-08-31 | 2010-08-04 | 英特尔公司 | 控制移位分组数据的位校正的装置 |
US6078940A (en) * | 1997-01-24 | 2000-06-20 | Texas Instruments Incorporated | Microprocessor with an instruction for multiply and left shift with saturate |
US6112291A (en) * | 1997-01-24 | 2000-08-29 | Texas Instruments Incorporated | Method and apparatus for performing a shift instruction with saturate by examination of an operand prior to shifting |
CN1326565A (zh) * | 1998-11-20 | 2001-12-12 | Arm有限公司 | 数据处理系统中的算术运算 |
CN100416490C (zh) * | 2005-01-14 | 2008-09-03 | 威盛电子股份有限公司 | 一种用于左移数据的方法与系统 |
EP1696314A1 (en) * | 2005-02-28 | 2006-08-30 | Hitachi Global Storage Technologies Netherlands B.V. | Arithmetic shifter, processor unit and storage device |
CN103399727A (zh) * | 2012-06-07 | 2013-11-20 | 威盛电子股份有限公司 | 硬件整数饱和侦测器、侦测饱和的方法及其硬件装置 |
CN107003839A (zh) * | 2014-12-22 | 2017-08-01 | 英特尔公司 | 用于移位和乘法器的指令和逻辑 |
US10313641B2 (en) * | 2015-12-04 | 2019-06-04 | Google Llc | Shift register with reduced wiring complexity |
CN111160544A (zh) * | 2019-12-31 | 2020-05-15 | 上海安路信息科技有限公司 | 数据激活方法及fpga数据激活系统 |
CN111710356A (zh) * | 2020-05-29 | 2020-09-25 | 北京大学 | 编码型闪存装置和编码方法 |
Non-Patent Citations (1)
Title |
---|
溢出并行检测低功耗饱和乘加单元的研究与实现;卢结成 等;《小型微型计算机系统》;20051031;第26卷(第10期);第1869-1871页 * |
Also Published As
Publication number | Publication date |
---|---|
WO2022078263A1 (zh) | 2022-04-21 |
CN112181354A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109492337B (zh) | 一种可编程逻辑器件的信息流追踪模型生成方法 | |
CN112181354B (zh) | 一种移位饱和同步处理的方法及其应用 | |
CN116029239B (zh) | 静态时序分析方法及其系统、计算机可读取介质 | |
US10726179B1 (en) | Circuit design supporting method and storage medium | |
CN112181355B (zh) | 一种移位饱和处理方法及其应用 | |
CN111400169A (zh) | 一种自动化生成用于测试软硬件的网表文件的方法及系统 | |
CN117131834A (zh) | 芯片设计重组方法、电子设备和介质 | |
CN111624475B (zh) | 大规模集成电路的测试方法及系统 | |
CN112015490A (zh) | 可编程器件实现与测试精简指令集方法、设备及介质 | |
US20150145580A1 (en) | Apparatus for controlling semiconductor chip characteristics | |
CN115482869A (zh) | 一种注错测试方法、装置、电子设备及存储介质 | |
CN108255486A (zh) | 用于表单设计的视图转换方法、装置和电子设备 | |
CN110968513B (zh) | 一种测试脚本的录制方法及装置 | |
US10896275B2 (en) | Verification apparatus and method for verifying operation of integrated circuit | |
JP2007010606A (ja) | Lsi検査モジュール、lsi検査モジュールの制御方法、lsi検査モジュールとlsi検査装置との通信方法、およびlsi検査方法 | |
CN117574817B (zh) | 自适应时序变化的设计自动化验证方法、系统及验证平台 | |
CN113946660B (zh) | 一种列控中心离线数据布尔变量自动校核方法及系统 | |
JP2006331212A (ja) | 論理シミュレーション方法及びその装置 | |
CN118153509A (zh) | 一种实现fpga的布局布线的方法及装置 | |
JPH0512374A (ja) | 論理回路設計装置 | |
US20140297995A1 (en) | Fault-tolerant system and fault-tolerant operating method | |
JPH0736149B2 (ja) | シフトフラグ生成回路 | |
CN114022674A (zh) | 一种图像分割方法、装置、存储介质及电子设备 | |
CN117131815A (zh) | 自动生成芯片弱驱壳的方法、电子设备和介质 | |
CN113163197A (zh) | 数据传输方法、电路、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: Room 906b, area B, 9 / F, building 1, Zhangjiang jidiangang, 3000 Longdong Avenue, Pudong New Area, Shanghai, 200120 Patentee after: Shanghai Xinwang Microelectronics Technology Co.,Ltd. Address before: Room 906b, area B, 9 / F, building 1, Zhangjiang jidiangang, 3000 Longdong Avenue, Pudong New Area, Shanghai, 200120 Patentee before: SHANGHAI CHIPON MICRO ELECTRONIC TECHNOLOGY CO.,LTD. |