CN112181355B - 一种移位饱和处理方法及其应用 - Google Patents

一种移位饱和处理方法及其应用 Download PDF

Info

Publication number
CN112181355B
CN112181355B CN202011084145.6A CN202011084145A CN112181355B CN 112181355 B CN112181355 B CN 112181355B CN 202011084145 A CN202011084145 A CN 202011084145A CN 112181355 B CN112181355 B CN 112181355B
Authority
CN
China
Prior art keywords
saturation
shift
bit
data
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
Application number
CN202011084145.6A
Other languages
English (en)
Other versions
CN112181355A (zh
Inventor
黄鹏
丁晓兵
朱少华
冯潮斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Xinwang Microelectronics Technology Co.,Ltd.
Original Assignee
Shanghai Chipon Micro Electronic Technology Co ltd
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 Shanghai Chipon Micro Electronic Technology Co ltd filed Critical Shanghai Chipon Micro Electronic Technology Co ltd
Priority to CN202011084145.6A priority Critical patent/CN112181355B/zh
Publication of CN112181355A publication Critical patent/CN112181355A/zh
Application granted granted Critical
Publication of CN112181355B publication Critical patent/CN112181355B/zh
Priority to PCT/CN2021/122873 priority patent/WO2022078264A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • 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/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement 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)
  • Image Processing (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种移位饱和处理方法及其应用,步骤为:对待移位数据的每一位和其最高位进行同或运算,筛选出待移位数据中所有与最高位相同的位并将对应位置标记为1,其他位置标记为0,同时,产生移位MASK,产生移位后溢出位的选择信号,将移位溢出对应的位标记为1,其他位置标记为0;使用选择信号选择饱和判断预处理后得到的数据,如MASK为1,则选取饱和判断预处理后得到的数据中的对应结果,反之则强制输出1;检测所得所有结果是否全为1,如是则移位无溢出,反之则移位溢出即需饱和处理。本发明的方法,逻辑清晰,步序简单,实现了移位与饱和判断的同步进行,提高了移位运行效率,极具应用前景。

Description

一种移位饱和处理方法及其应用
技术领域
本发明属于数据处理技术领域,特别涉及一种数据运算中的移位饱和处理方法及其应用。
背景技术
在有符号的数据运算中,最高位(MSB)代表正负关系,当MSB为0时表明是正数,当MSB为1时表明是负数。在左移位操作中,可能会出现一个正数移位结果为负数,或一个负数移位结果为正数。在许多应用场合这是不允许的,这种情况下就会进行饱和操作,当一个正数移位结果为负数时,经过饱和处理结果为最大正数(即最高位为0,其他位为1);当一个负数移位结果为正数时,经过饱和处理结果为最小负数(即最高位为1,其他位为0)。
通常情况下饱和判断需要在移位结果出来后才能进行,虽然其能够完成移位饱和处理,但这种处理模式极大地影响了数据处理(移位运行)效率。
因此,开发一种能够在移位的同时完成饱和判断的方法对于电脑处理器或控制芯片的底层运算极具现实意义。
发明内容
本发明的目的在于克服现有技术饱和判断需要在移位结果出来后才能进行,影响移位运行效率的缺陷,提供一种能够在移位的同时完成饱和判断的方法。
为实现上述目的,本发明提供如下技术方案:
一种移位饱和处理方法,应用于电子设备,其步骤如下:
(1)饱和判断预处理及移位MASK的产生:
饱和判断预处理:对待移位数据的每一位和其最高位进行同或运算,筛选出待移位数据中所有与所述最高位相同的位,并将对应位置标记为1,其他位置标记为0;
在饱和判断预处理的同时产生移位MASK,产生移位后溢出位的选择信号,将移位溢出对应的位标记为1,其他位置标记为0;由于只有移出的位和结果的最高位影响饱和判断,该逻辑用于产生移位后移出位的选择信号,移出的对应的位为1,其他位为0,作为后续选择的控制,如当移位量为1时,只有最高位移出,则生成的MASK的值为1000_0000…0000_0000(最高位为1,其余位为0),依次类推;
(2)数据选择:
使用所述选择信号选择饱和判断预处理后得到的数据,如选择信号中某一位的MASK为1,则表明饱和位需要用该位进行判断,选取饱和判断预处理后得到的数据中的对应结果,反之(MASK为0)则表明该位与判断无关,结果强制输出1;
(3)饱和检测:
检测步骤(2)所得所有结果是否全为1,如是则移位无溢出,反之则移位溢出,将饱和标志位置1。
本发明提出一种使用移位输入数据产生饱和标志的方法,其将待移位数据移位后会产生溢出的位选出来,判断其是否全与最高位相等,如果相等,说明没有溢出,也就无需饱和处理;如果不全相等,那么说明有溢出,需要饱和处理,就产生饱和标志,实现过程简单,进而实现了移位与饱和判断的同步进行,相比于现有技术需要在移位结果出来后进行饱和判断,能够大大提高移位运行效率,能够极大地提高运算处理的效率,极具应用前景。
作为优选的技术方案:
如上所述的一种移位饱和处理方法,步骤(3)中,如移位溢出,则产生饱和标志。
本发明还提供一种应用如上所述的移位饱和处理方法的集成电路,包括一个或多个处理器、一个或多个存储器、一个或多个程序及数据输入装置;
所述数据输入装置用于输入待移位数据及其所需移动的位数,所述一个或多个程序被存储在所述存储器中,当所述一个或多个程序被所述处理器执行时,使得所述集成电路执行如上所述的移位饱和处理方法。
此外,本发明还提供了一种应用如上所述的集成电路的电子设备。
有益效果:
本发明的移位饱和处理方法,逻辑清晰,整体步序简单,实现了移位与饱和判断的同步进行,相比于现有技术需要在移位结果出来后进行饱和判断,能够大大提高移位运行效率,能够极大地提高运算处理的效率,在所有需要电子运算的地方都极具应用前景;且实现过程简单,处理速度快,成本低廉。
附图说明
图1为本发明的移位饱和处理方法的流程图;
图2为饱和判断预处理的示意图;
图3为移位MASK产生的真值表;
图4为数据选择的示意图;
图5为饱和检测的示意图;
图6为本发明的集成电路的结构图。
具体实施方式
下面结合附图,对本发明的具体实施方式做进一步阐述。
实施例1
一种移位饱和处理方法,其步骤如图1所示:
(1)饱和判断预处理及移位MASK的产生:
饱和判断预处理(如图2所示):对待移位数据的每一位和其最高位进行同或运算,筛选出待移位数据中所有与最高位相同的位,并将对应位置标记为1,其他位置标记为0;
在饱和判断预处理的同时产生移位MASK,产生移位后溢出位的选择信号,将移位溢出对应的位标记为1,其他位置标记为0,移位MASK产生的真值表如图3所示;
(2)数据选择(如图4所示):
使用选择信号选择饱和判断预处理后得到的数据,如选择信号中某一位的MASK为1,则选取饱和判断预处理后得到的数据中的对应结果,反之则强制输出1;
(3)饱和检测(如图5所示):
检测步骤(2)所得所有结果是否全为1,如是则移位无溢出,反之则移位溢出,则产生饱和标志(将饱和标志位置1)。
图1中①为一种移位饱和标志位产生方法的实现单元,其中该单元有两个输入,一个输出,输入为等待移位的数据Data,移位量Shift,输出为饱和标志位;
②为饱和判断预处理单元,该单元输入为等待移位的数据Data,将Data每一位与Data的MSB位进行同或操作,结果输出到④数据选择单元;
③为移位MASK产生单元,根据输入Shift的值生成需要选择的数据位,并输出到④数据选择单元中进行选择
④为数据选择单元,根据③产生的选择信号选择②产生的结果数据,输出到⑤饱和检测单元;
⑤为饱和检测单元,由④数据选择的结果判断是否全为1,如果是表明无溢出,如果是0表明当前需要饱和处理,并将饱和标志位置1。
经验证,本发明的移位饱和处理方法,提出一种使用移位输入数据产生饱和标志的方法,其将待移位数据移位后会产生溢出的位选出来,判断其是否全与最高位(待移位数据的移位后的最高位)相等,如果相等,说明没有溢出,也就无需饱和处理;如果不全相等,那么说明有溢出,需要饱和处理,就产生饱和标志,进而实现了移位与饱和判断的同步进行,相比于现有技术需要在移位结果出来后进行饱和判断,能够大大提高移位运行效率,能够极大地提高运算处理的效率,在所有需要电子运算的地方都极具应用前景。
实施例2
一种集成电路,如图6所示,包括一个或多个处理器、一个或多个存储器、一个或多个程序及数据输入装置;
数据输入装置用于输入待移位数据及其所需移动的位数,一个或多个程序被存储在存储器中,当一个或多个程序被处理器执行时,使得集成电路执行如实施例1所述的移位饱和处理方法。
经验证,本发明的集成电路,实现过程简单,处理速度快,成本低廉,能够实现移位与饱和判断的同步进行,大大提高移位运行效率,极具应用前景。
实施例3
一种电子设备,包括且应用了如实施例2所述的集成电路。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应该理解,这些仅是举例说明,在不违背本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改。

Claims (3)

1.一种移位饱和处理方法,其特征在于,包括如下步骤:
(1)饱和判断预处理及移位MASK的产生:
对待移位数据的每一位和其最高位进行同或运算,筛选出待移位数据中所有与所述最高位相同的位,并将对应位置标记为1,其他位置标记为0;
在饱和判断预处理的同时产生移位MASK,产生移位后溢出位的选择信号,将移位溢出对应的位标记为1,其他位置标记为0;
(2)数据选择:
使用所述选择信号选择饱和判断预处理后得到的数据,如选择信号中某一位的MASK为1,则选取饱和判断预处理后得到的数据中的对应结果,反之则强制输出1;
(3)饱和检测:
检测步骤(2)所得所有结果是否全为1,如是则移位无溢出,反之则移位溢出,将饱和标志位置1。
2.应用如权利要求1所述的移位饱和处理方法的集成电路,其特征在于,包括一个或多个处理器、一个或多个存储器、一个或多个程序及数据输入装置;
所述数据输入装置用于输入待移位数据及其所需移动的位数,所述一个或多个程序被存储在所述存储器中,当所述一个或多个程序被所述处理器执行时,使得所述集成电路执行如权利要求1所述的移位饱和处理方法。
3.应用如权利要求2所述的集成电路的电子设备。
CN202011084145.6A 2020-10-12 2020-10-12 一种移位饱和处理方法及其应用 Active CN112181355B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011084145.6A CN112181355B (zh) 2020-10-12 2020-10-12 一种移位饱和处理方法及其应用
PCT/CN2021/122873 WO2022078264A1 (zh) 2020-10-12 2021-10-09 一种移位饱和处理方法及其应用

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011084145.6A CN112181355B (zh) 2020-10-12 2020-10-12 一种移位饱和处理方法及其应用

Publications (2)

Publication Number Publication Date
CN112181355A CN112181355A (zh) 2021-01-05
CN112181355B true CN112181355B (zh) 2021-08-06

Family

ID=73949083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011084145.6A Active CN112181355B (zh) 2020-10-12 2020-10-12 一种移位饱和处理方法及其应用

Country Status (2)

Country Link
CN (1) CN112181355B (zh)
WO (1) WO2022078264A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181355B (zh) * 2020-10-12 2021-08-06 上海芯旺微电子技术有限公司 一种移位饱和处理方法及其应用

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1693742A3 (en) * 1995-08-31 2010-01-06 Intel Corporation Method and apparatus for performing multiply-accumulate operations on packed data
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
US20050210089A1 (en) * 2004-03-19 2005-09-22 Arm Limited Saturating shift mechanisms within data processing systems
US8209366B2 (en) * 2005-02-28 2012-06-26 Hitachi Global Storage Technologies Netherlands B.V. Method, apparatus and program storage device that provides a shift process with saturation for digital signal processor operations
CN100452881C (zh) * 2006-08-07 2009-01-14 清华大学 一种基于合并处理的反量化方法及其装置
CN103959236B (zh) * 2011-11-30 2016-12-07 英特尔公司 用于提供向量横向多数表决功能的处理器、设备和处理系统
US9898252B2 (en) * 2014-09-03 2018-02-20 Micron Technology, Inc. Multiplication operations in memory
CN107704472B (zh) * 2016-08-09 2020-07-24 华为技术有限公司 一种查找数据块的方法及装置
CN106873940B (zh) * 2016-12-30 2019-05-17 青岛专用集成电路设计工程技术研究中心 一种定点加法结果位宽限制的处理方法和装置
US20190065201A1 (en) * 2017-08-31 2019-02-28 MIPS Tech, LLC Implicit global pointer relative addressing for global memory access
CN109725870A (zh) * 2017-10-30 2019-05-07 胡五生 量化逻辑之多进制幅权移位控制器
US20190196828A1 (en) * 2017-12-21 2019-06-27 Intel Corporation Apparatus and method for vector multiply of signed words, rounding, and saturation
US20190196820A1 (en) * 2017-12-21 2019-06-27 Intel Corporation Apparatus and method for right shifting packed quadwords and extracting packed doublewords
GB2572605B (en) * 2018-04-05 2022-05-18 Imagination Tech Ltd High accuracy texture filtering
DE102018113475A1 (de) * 2018-06-06 2019-12-12 Infineon Technologies Ag Rechenwerk zum rechnen mit maskierten daten
US11474825B2 (en) * 2019-03-27 2022-10-18 Intel Corporation Apparatus and method for controlling complex multiply-accumulate circuitry
CN112181355B (zh) * 2020-10-12 2021-08-06 上海芯旺微电子技术有限公司 一种移位饱和处理方法及其应用

Also Published As

Publication number Publication date
WO2022078264A1 (zh) 2022-04-21
CN112181355A (zh) 2021-01-05

Similar Documents

Publication Publication Date Title
CN111783971A (zh) 一种用于深度神经网络的可高度灵活配置的数据后处理器
CN112181355B (zh) 一种移位饱和处理方法及其应用
CN114546890A (zh) 一种系统级空间读写验证的方法、系统、存储介质及设备
US20140047221A1 (en) Fusing flag-producing and flag-consuming instructions in instruction processing circuits, and related processor systems, methods, and computer-readable media
JP4750665B2 (ja) タイミング解析方法および装置
CN115359016A (zh) 基于改进YOLOv5的PCB小目标缺陷检测方法和系统
CN106155747B (zh) 一种基于fpga可加速配置的方法和控制系统
CN112181354B (zh) 一种移位饱和同步处理的方法及其应用
CN111258905A (zh) 缺陷定位方法、装置和电子设备及计算机可读存储介质
CN111797588B (zh) 一种形式验证比较点匹配方法、系统、处理器及存储器
CN112350716B (zh) 一种补码运算方法及装置、补码运算装置的运算方法
US6629118B1 (en) Zero result prediction
JP2018136763A (ja) 類似関数抽出装置および類似関数抽出プログラム
CN115688643A (zh) 仿真逻辑系统设计的方法、设备及存储介质
CN101644744A (zh) 一种测试向量的调节对比方法
US10852354B1 (en) System and method for accelerating real X detection in gate-level logic simulation
JP2022175297A (ja) サンプル生成装置、サンプル生成方法及びサンプル生成プログラム
US20140297995A1 (en) Fault-tolerant system and fault-tolerant operating method
CN110795384B (zh) 一种高效识别文件与地址数据的微处理器
US20120079240A1 (en) Reduced-Level Shift Overflow Detection
US8938705B1 (en) Systems and methods for partial retention synthesis
US11907578B2 (en) Processing-in-memory control method for efficient instruction processing and computing device applying same
US20230110499A1 (en) Address solving for instruction sequence generation
US20070043794A1 (en) Method and system of signal noise reduction
US6760738B2 (en) Exponent unit of data processing system

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.