CN112596698B - 一种基于多比特近似加法器的双电压动态配置硬件电路结构 - Google Patents
一种基于多比特近似加法器的双电压动态配置硬件电路结构 Download PDFInfo
- Publication number
- CN112596698B CN112596698B CN202011546043.1A CN202011546043A CN112596698B CN 112596698 B CN112596698 B CN 112596698B CN 202011546043 A CN202011546043 A CN 202011546043A CN 112596698 B CN112596698 B CN 112596698B
- Authority
- CN
- China
- Prior art keywords
- approximate
- bit
- adder
- module
- bit width
- 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
- 238000004364 calculation method Methods 0.000 claims abstract description 92
- 238000001514 detection method Methods 0.000 claims abstract description 50
- 238000000034 method Methods 0.000 claims abstract description 20
- 230000009977 dual effect Effects 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 6
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 claims description 2
- 238000004378 air conditioning Methods 0.000 claims 1
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Control Of Voltage And Current In General (AREA)
- Analogue/Digital Conversion (AREA)
Abstract
本发明提出了一种基于多比特近似加法器的双电压动态配置硬件电路结构,属于计算、推算或计数的技术领域。该硬件电路结构包括:输入要素获取模块,近似位宽配置模块,双电源电压动态配置模块,错误检测模块。具体实现为:首先针对所需配置的系统获取其可容忍误差和输入数据位宽,对多比特近似加法器进行近似位宽配置,在动态调整近似位宽的过程中与系统可容忍误差比较,使近似加法器在满足系统误差要求的情况下配置最大近似位宽,达到降低功耗的目标。然后基于所配置的近似位宽对近似计算部分的电源电压进行调整,通过降低近似计算部分电源电压可以有效降低功耗,并且在电源电压动态调节的过程中不断进行错误检测从而保证正确性。
Description
技术领域
本发明公开了一种基于多比特近似加法器的双电源电压动态配置硬件电路结构,涉及低功耗近似计算领域,属于计算、推算或计数的技术领域。
背景技术
随着数字集成电路的进步和发展,芯片功耗大幅增加。实际应用工程对移动计算以及芯片集成密度的要求日趋提高,功耗已经成为一个关键的设计约束。传统电路设计采用完全精确的计算电路结构,但是一些具有容错能力的应用工程(如多媒体处理、模式识别和机器学习等)在计算过程中对有限的或不重要的误差存在一定的容错性。容错性的产生原因有很多,例如:人类意义上的不完美感知、噪声输入信号、输入数据的冗余和缺乏通用的最佳答案。
现有技术通过近似计算来实现这种容错性,在很大程度上降低了功耗和算术复杂度。目前,软件和硬件层面的近似计算领域已有大量的研究。软件层面的近似计算有循环穿孔技术,该技术在计算过程中跳过多次循环迭代,执行初始的计算子集,从而节省时间并降低功耗,但是此方法产生的输出误差较大。硬件层面的近似计算研究主要针对算术单元,应用较多的是截断技术和简化单位逻辑复杂性,但事实证明这两种硬件层面的近似计算方法都存在一定的误差,且产生的结果不可靠。
近似计算的硬件电路常常采用加法器作为基本的计算逻辑单元。传统的多比特加法器由于有较长的进位链存在电路延时较大、且功耗相对较大的缺陷,而近似加法器在牺牲一定精度的情况下减小了时延并降低了功耗。传统的精确计算电路通过统一的标准电压为多比特加法器供电,这使得计算电路的功耗非常大。因此,本申请旨在通过对近似计算部分动态配置合适的低电压,在保证计算结果正确的前提下大大降低电路的功耗,具有重要的应用价值。
发明内容
本发明的目的是为了克服现有技术所存在的不足,提出了一种基于多比特近似加法器的双电压动态配置硬件电路结构,根据所配置系统的可容忍误差合理划分近似位宽,对多比特近似加法器的近似计算部分电路配置合理的低电源电压,在不影响计算正确性的前提下显著降低功耗,解决了传统精确计算电路以及近似加法电路不能既保证精确又使得功耗较低的技术问题。
本发明为实现上述发明目的采用如下技术方案:
一种基于多比特近似加法器的双电压动态配置硬件电路结构,基于所需配置系统的数据位宽和可容忍误差,配置出满足要求的近似位宽和双电源电压方案,使得多比特近似加法器在配置上更为灵活,功耗更优。
一种基于多比特近似加法器的双电压动态配置硬件电路结构,包括:输入要素获取模块、近似位宽配置模块、双电源电压动态配置模块、错误检测模块,各模块之间协同配合,输出多比特近似加法器的双电源电压配置方案。
进一步地,输入要素获取模块用于获取所配置的系统可容忍误差和输入数据位宽,输入要素可以由人工输入也可以从所需配置的系统中获取。
近似位宽配置模块包括:误差计算比较子模块、近似位宽增大子模块和近似位宽减小子模块,根据所获取到的输入数据位宽和所配置系统的可容忍误差,三个模块协同配合动态配置出符合系统要求的最优近似位宽配置方案。
进一步地,误差计算比较子模块包括一个幂运算模块、一个比较器和一个存储器,幂运算模块计算所配置近似位宽时的误差,计算公式如下:
其中,k为当前配置下的近似位宽。将k的取不同值得到的误差结果放在查找表1中,从右移寄存器读取的输入数据的初始近似位宽、经过近似位宽增大处理得到的近似位宽、经过近似位宽减小处理得到的近似位宽经查找表1得到当前误差的计算值。右移寄存器对输入数据位宽进行预处理得到二分之一的输入数据位宽,以二分之一的输入数据位宽为初始近似位宽。
误差计算比较子模块通过比较器实现,比较器对计算得到的当前误差与所配置系统的可容忍误差进行比较,输出比较结果‘AB’至近似位宽增大子模块和近似位宽减小子模块,若计算所得当前误差较大,则输出‘01’,若计算所得当前误差较小,则输出‘10’,若两者相等,则输出‘00’。同时,存储器保存误差比较结果和近似位宽配置方案。
进一步地,近似位宽增大子模块和近似位宽减小子模块分别由一个加法器和一个减法器组成,若误差计算比较子模块输出‘10’,则近似位宽增大子模块工作,使近似位宽加‘1’;若误差计算比较子模块输出‘01’,则近似位宽减小子模块工作,使近似位宽减‘1’;若误差计算比较子模块输出‘00’,则输出近似位宽配置方案。
进一步地,对于近似位宽配置模块,输出正确配置方案有如下两种情况。第一种情况是计算所得当前误差等于所配置系统可容忍误差,此时直接输出近似配置方案。第二种情况是前后两次调整位宽后的计算误差比较结果不相等,即前一次输出结果为‘10’,后一次输出结果为‘01’;或前一次输出结果为‘01’,后一次输出结果为‘10’。此时,存储器中存储的两次结果不同,输出使存储器存储‘10’的配置方案。
双电源电压动态配置模块将高比特精确加法器的电源电压确定为常规电源电压,采用混合粒度的方法对近似部分的电源电压进行动态配置,包括:二分次数计算子模块、中值电压配置子模块、配置选择子模块和电源电压细粒度增加子模块。根据所配置的近似位宽对近似部分的电源电压配置方案进行动态调整,并将配置方案输入错误检测模块。
进一步地,二分次数计算子模块由运算模块构成,通过表达式计算需要执行中值电压配置子模块的次数,VDD是常规电源电压,Vth是器件阈值电压,Vh是所需配置的电源电压精度,n取满足上述不等式的最小整数,该运算模块可以通过查找表2实现,查找表2存储有根据不同工艺下Vth和Vh计算得到的所需执行中值电压配置子模块的次数;中值电压配置子模块由一个包含标准电源电压V0和器件阈值电压V1两个输入的运算模块构成;配置选择子模块由存储器、计数器和比较器构成,每次运行使计数器减‘1’并将结果与‘0’比较;电源电压细粒度增加子模块由加法器构成,该模块每运行一次使配置方案中的近似计算部分电源电压增加Vh(所需配置电源电压的精度值)。双电源电压动态配置模块初次运行时设置的配置方案为精确计算部分采用标准电源电压,近似部分的电源电压为标准电源电压与器件阈值电压的均值Va,即/>
错误检测模块包括加法运算子模块及运算输出检测子模块组成,根据所输入的双电源电压配置方案,对加法运算子模块的计算结果进行检测,并返回检测结果至双电源电压动态配置模块。
进一步地,加法运算子模块由N个组合单比特加法器组成。每个组合单比特加法器包括一个二选一选择器、或门加法器和全加器,或门加法器用于实现低比特位的近似加法计算,全加器用于实现高比特位的精确加法计算,组合单比特加法器根据所配置的近似位宽输入选择导通或门加法器或全加器;运算输出检测子模块由一个带使能端的二选一选择器构成,使能端与组合单比特加法器输出结果的最高位相连,最低比特位计算结果与最高比特位计算结果相与后作为二选一选择器的一个选择输入信号,二选一选择器的另一选择输入信号为0,表示当组合单比特加法器输出结果最高位发生跳变时选择器开始工作,且根据最低比特位或门加法器的输出控制选择器的输出。
进一步地,错误检测模块的工作方式如下:配置的近似位宽逐位输入各组合单比特加法器的二选一选择器中,在近似计算部分选择导通或门加法器,在精确计算部分选择导通全加器,根据双电源电压的配置方案改变近似计算部分的电源电压。配置加法运算子模块中的加数和被加数使精确计算部分的传播时延最大,当多比特加法器输出结果的最高位发生跳变时,运算输出检测子模块中的二选一选择器开始工作,输出近似计算部分最低比特位或门加法器的计算结果,若最低比特位或门加法器的输出没有发生跳变,则判定输出结果错误,输出‘0’至双电源电压动态配置模块,若最低比特位或门加法器的输出已经发生跳变,则判定输出结果正确,输出‘1’至双电源电压动态配置模块。
进一步地,双电源电压动态配置模块和错误检查模块协同运行,对电源电压进行合理配置。双电源电压动态配置模块初次运行时,二分次数计算子模块中运算模块计算出二分次数的数值并向上取整;中值电压配置子模块计算其输入V0和V1的均值Va,结果保留精度至所需配置精度的前一位;错误检测模块的输出结果和对应电压配置保存在配置选择模块的存储器中;配置选择子模块中的计数器的数值每执行一次错误检查模块减‘1’,并与‘0’比较,若等于‘0’,则输出此时的V0并执行电源细粒度增加子模块,若大于‘0’,则执行中值电压配置子模块,并根据存储器中存储的错误检测模块的输出结果调整V0和V1,若错误检查模块的输出结果为‘0’,则Va取代V0,V1保存不变,若错误检查模块的输出结果为‘1’,则V0保存不变,Va取代V1;每次执行电源电压细粒度增加子模块后错误检测模块对调整后的电压配置进行错误检查,若错误检测模块输出‘0’,则重复执行电源电压细粒度增加子模块,若错误检测模块输出‘1’,保存此时的配置并输出。此时的配置结果即为双电源电压的最终配置结果,以实现在保证正确性的前提下最大限度的降低功耗。
近似位宽配置模块根据所配置的系统容忍误差动态配置近似位宽的过程,具体步骤如下:
步骤101:根据输入要素获取模块所获取的输入数据位宽(i),首先粗配置近似位宽为输入数据位宽的一半(i/2,若为小数向下取整);
步骤102:误差计算比较子模块计算此时的误差,并与所配置系统可容忍误差进行比较,若计算误差偏大,则进入步骤103a,偏小则进入步骤103b,相等则进入步骤105a;
步骤103a:近似位宽减小子模块将所配置近似位宽减小一位,进入步骤104a;
步骤103b:近似位宽增大子模块将所配置近似位宽增大一位,进入步骤104b;
步骤104a:误差计算比较子模块计算此时的误差,并与所配置系统可容忍误差进行比较,若计算误差偏大,进入步骤103a,否则进入步骤105a;
步骤104b:误差计算比较子模块计算此时的误差,并与所配置系统可容忍误差进行比较,若计算误差偏小,进入步骤103b,否则进入步骤105b;
步骤105a:保存此次配置并输出;
步骤105b:保存上一次配置并输出。
双电源电压动态配置模块动态调节近似加法器电源电压的具体步骤如下:
步骤201:二分次数计算子模块计算所需二分电源电压的次数n;
步骤202:中值电压配置子模块计算电压中值,结果保留精度至所需配置精度的前一位,并将此配置输入错误检测模块,错误检测模块反馈检测结果至配置选择子模块,配置选择子模块保存配置结果,并对n进行减‘1’操作,结果若大于0,则重复步骤202,否则进入步骤203;
步骤203:使用细粒度电源电压增加子模块对近似部分加法器电源电压以Vh(所需配置电源电压精度值)进行增加,将此次配置输入错误检测模块,若返回结果为错误,则重复步骤203,否则进入步骤204;
步骤204:确定最终的电源电压配置(保留上一次细粒度调节的电源电压作为最终的配置方案),完成双电源电压动态配置。
一种基于多比特近似加法器的双电压动态配置硬件电路结构,根据输入数据位宽及所配置系统容忍的进行近似位宽和电源电压的动态配置的整个的工作流程为:
步骤301:输入要素获取模块获取所配置系统的可容忍误差及加法运算的输入数据位宽,并将获取的要素输入到近似位宽配置模块;
步骤302:近似位宽配置模块根据所配置系统的可容忍误差和输入数据位宽配置出满足可容忍误差情况下的最大近似位宽,并将配置完成后的近似位宽输入双电源电压动态配置模块;
步骤303:双电源电压动态配置模块对近似加法部分的电源电压进行动态配置,并将配置结果输入错误检测模块,根据错误检测模块返回的输出结果进一步进行动态调整,直到满足配置要求;
步骤304:输出并保存配置方案,从而完成双电压动态配置硬件电路结构的配置。
本发明采用上述技术方案,具有以下有益效果:
(1)考虑多比特近似加法器近似位宽对计算精度的影响,本申请提出了一种先粗配置后细配置的近似位宽分配方式,在已知所配置系统的数据输入位宽和可容忍误差的情况下,首先对近似位宽进行粗配置,再根据计算误差和系统所容忍误差的比较结果进一步逐位调节近似位宽,直至近似位宽达到满足系统误差要求下的最大值,相较于通过大量数据运算获取配置近似位宽的传统方式,该方式所采用的通过计算实时误差逐步调节近似位宽的方法更为直观且易于在电路上实现。
(2)针对传统近似加法器的功耗表现,本申请所提出的双电源电压配置方式可进一步降低功耗,双电源电压配置方式通过粗粒度调整电压区间再细粒度调节的方式对近似部分电源电压进行调整,在不影响加法计算时延的情况下实现了近似加法器电源电压的动态配置,调整后的多比特近似加法器相较于具有同样近似位宽配置方式的近似加法器而言,在计算精度保持不变的情况下显著降低了功耗。
(3)本申请所提出的错误检测方式基于所配置的近似位宽和双电源电压,通过计算子模块模拟计算出现最大传播时延的情况,输出检测子模块对精确计算部分的高位输出和低位或门加法器输出进行检测,在电路上实现了对双电源电压配置结果的检测。
附图说明
图1为本发明双电源电压动态配置硬件电路结构示意图。
图2为本发明近似位宽配置的流程图。
图3为本发明组合加法器的电路结构示意图。
图4为本发明错误检测模块的电路结构示意图。
图5为本发明双电源电压配置的流程图。
具体实施方式
下面结合具体实施例进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的保护范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围内。
一种基于多比特近似加法器的双电压动态配置硬件电路结构,在内部各模块之间的协调控制下根据所配置系统的输入数据位宽和系统可容忍误差,实现对多比特近似加法器的近似位宽和双电源电压的动态控制。如图1所示,双电压动态配置硬件电路结构包括:输入要素获取模块、近似位宽配置模块、双电源电压动态配置模块和错误检测模块。
输入要素获取模块获取所配置系统的可容忍误差和输入数据位宽。实践中输入要素可以由人工输入也可以从所需配置的系统中获取。
近似位宽配置模块包括近似位宽增大子模块、近似位宽减小子模块和误差计算比较子模块。近似位宽配置模块的具体工作流程如图2所示。所获取到的输入数据位宽作为第一次分配近似位宽的依据,即取输入位宽的一半作为近似位宽(若为小数向下取整),误差计算比较子模块计算此时的误差并输出比较结果,若计算误差较大,则输出‘01’,此时选择执行近似位宽减小子模块;若可容忍误差较大,则输出‘10’,此时选择执行近似位宽增大子模块;若两者相等,则输出‘00’,此时直接输出配置。误差计算比较子模块输出的结果和配置的近似位宽同时保存在存储器中,存储器每次对输出前后两次的结果进行判定。当近似位宽增大子模块(或近似位宽减小子模块)运行时,对近似位宽执行加‘1’(或减‘1’)操作,计算完成后输入误差计算比较子模块。重复上述操作,直至存储器中存储的前后两次结果不同或误差计算比较子模块输出‘00’时,存储器中存储的前后两次结果不同时输出使存储器存储‘10’的配置方案,误差计算比较子模块输出‘00’时输出使存储器存储‘00’的配置方案。误差计算比较子模块的计算公式为:
MEDor=2k-2,
其中,k为当前配置下的近似位宽。将k取不同值得到的误差结果放在查找表1中,用于对当前误差与系统可容忍误差进行比较。
以系统可容忍误差为260、输入数据位宽16位为例,首先粗配置其近似位宽为输入数据位宽的一半,即8位,误差计算比较子模块由误差计算公式计算出此配置下的误差为64,小于系统可容忍误差,输出结果‘10’和近似位宽‘8’至存储器中,选择近似位宽增大子模块运行使近似位宽增大至9并重复运行误差计算比较子模块。重复近似位宽增大步骤2次,此时的近似位宽设置为11,误差计算比较子模块由误差计算公式计算出此配置下的误差为512,大于系统可容忍误差,输出结果‘01’和近似位宽‘11’至存储器中,此时存储器判断到前后两次接收到的结果不同,输出上一次所接收到的近似位宽‘10’,即近似位宽配置模块为所配置系统配置的近似位宽为10位。
双电源电压动态配置模块包括:二分次数计算子模块、中值电压配置子模块、配置选择子模块和电源电压细粒度增加子模块;错误检测模块包括加法运算子模块及运算输出检测子模块。双电源电压动态配置模块输出电源电压配置方案至错误检测模块,错误检测模块对该配置方案进行检测并反馈结果至双电源电压动态配置模块,两个模块协同配合,共同决定电源电压的配置方案。错误检测模块如图4所示,其中,加法运算子模块由多个单比特组合加法器组成。单比特组合加法器的结构如图3所示,A、B、Cin和Sel为组合加法器输入,S和Cout为组合加法器的输出,其中,A和B为组合加法器的被加数和加数,Cin为输入的进位信号,Sel为选择信号,对输出的信号S进行选择,即确定输出全加器或或门加法器的计算结果,Cout为输出的进位信号。加法运算子模块的所有组合加法器的Sel由近似位宽配置模块提供,若近似位宽配置模块输出近似位宽为N,则配置低N位为或门加法器导通,高位为全加器导通。加法运算子模块的加数和被加数设置为可实现传播延时最大时的加数和被加数。加法运算子模块电源电压的初始配置为:精确计算部分和近似计算部分均配置常规电压。
双电源电压动态配置模块和错误检测模块协同执行的流程如图5所示。双电源电压动态配置模块初次运行时,二分次数计算子模块中运算模块计算出二分次数的数值并向上取整;中值电压配置子模块计算其输入V0和V1的均值Va,结果保留精度至所需配置精度的前一位;错误检测模块的输出结果和对应电压配置保存在配置选择模块的存储器中;配置选择子模块中计数器的数值每执行一次错误检查减‘1’,并与‘0’比较,若小于‘0’,则执行电源细粒度增加子模块,若大于‘0’,则执行中值电压配置子模块,并根据存储器中存储的错误检测模块的输出结果调整V0和V1,若错误检侧模块的输出结果为‘0’,则Va取代V0,V1保存不变,若错误检查模块的输出结果为‘1’,则V0保存不变,Va取代V1;每次执行电源电压细粒度增加子模块后错误检测模块对调整后的电压配置进行错误检查,若错误检测模块输出‘0’,则重复执行电源电压细粒度增加子模块,若错误检测模块输出‘1’,保存此时的配置并输出。
以前文提到的输入数据位宽为16、近似位宽配置为10为例,假设标准电源电压0.8V,器件阈值电压0.3V,所需电源电压精度为0.01V,则错误检测模块中的加法运算子模块的低10位全部为或门加法器,高6位为全加器,加法运算子模块的被加数设置为‘0000010000000000’、加数设置为‘0111111111111111’使精确部分传播时延最大。二分次数计算子模块计算出所需二分次数为3次,中值电压配置模块的V0为0.3V,V1为0.8V,计算出的中值电压为0.5V(结果保留所需精度的前一位)。错误检测模块对0.5V的电源配置进行检测,输出检测结果‘1’;配置选择子模块对二分次数计数减‘1’,计数器的值仍大于‘0’,重复执行中值电压配置模块,并修改V1为0.5V;直到配置选择子模块计数到‘0’,输出此时的V0至电源电压细粒度增加子模块,该模块对电源电压以所需电源电压精度0.01V进行增加,错误检测模块对每次修改后的电压进行错误检测,若错误检测模块输出‘0’,则重复执行电源电压细粒度增加子模块,若错误检测模块输出‘1’,保存此次配置的V0,此时配置的V0、Va即为最终配置的双电源电压。
至此,完成近似位宽和双电源电压的配置,输出并保存配置方案,从而完成本次双电压动态配置硬件电路结构的配置。
以上具体实施方式及实施例是对本发明提出的一种针对位宽递增加法树的精度动态自适应累加模块发明构思的具体支持,不能以此限定本发明的保护范围,凡是按照本发明的发明构思所做的任何等同变化或等效的改动均仍落入本发明权利要求限定的保护范围内。
Claims (10)
1.一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,包括:
输入要素获取模块,用于获取输入数据位宽和系统可容忍误差;
近似位宽配置模块,读取输入数据位宽和系统可容忍误差,在系统可容忍误差范围内配置满足系统误差要求的最大近似位宽;
双电源电压动态配置模块,根据器件阈值电压和电源电压精度配置二分计算次数,初始化近似计算部分的供电电压为标准电源电压和器件阈值电压的中值,在多比特加法器输出错误时替换标准电源电压为近似计算部分的当前供电电压并更新中值,在多比特近似加法器输出正确时替换器件阈值电压为近似计算部分的当前供电电压并更新中值,对最后一次二分计算得到的中值进行以电源电压精度为步进的细粒度增大操作直至多比特近似加法器输出正确,以多比特近似加法器输出正确时的细粒度调节值以及标准电源电压为最终的双电源电压配置方案;及,
错误检测模块,根据最大近似位宽配置多比特近似加法器的近似计算部分,在双电源电压动态配置模块更新中值后检测多比特近似加法器的输出,在以电源电压精度为步进的细粒度增大操作的过程中检测对多比特近似加法器的输出,并发送多比特近似加法器输出正确或多比特近似加法器输出错误的信息至双电源电压动态配置模块。
2.根据权利要求1所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,所述近似位宽配置模块包括:
初始近似位宽获取模块,读取输入数据的位宽,配置初始近似位宽为输入数据位宽的一半;
误差计算比较子模块,读取初始近似位宽或增大处理后的近似位宽或减小处理后的近似位宽,根据读取的当前近似位宽计算当前误差,在当前误差大于系统可容忍误差时输出减小处理指令并缓存当前近似位宽,在当前误差小于系统可容忍误差时输出增大处理指令并缓存当前近似位宽,在当前误差等于系统可容忍误差时输出当前近似位宽;
近似位宽增大子模块,在收到增大处理指令时对当前近似位宽加1,输出增大处理后的近似位宽至误差计算比较子模块;及;
近似位宽减小子模块,在收到减小处理指令后对当前近似位宽减1,输出减小处理后的近似位宽至误差计算比较子模块。
3.根据权利要求1所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,所述双电源电压动态配置模块包括:
二分次数计算子模块,用于根据器件阈值电压和电源电压精度配置二分计算次数;
计数器,初始化其取值为二分计算次数,该取值在更新中值并完成一次双电源电压动态配置后减1;
配置选择子模块,在计数器取值为0时输出电源电压细粒度增加子模块的使能信号,在计数器取值大于0时输出中值电压配置子模块的使能信号;
中值电压配置子模块,初始化近似计算部分的供电电压为标准电源电压和器件阈值电压的中值,在多比特加法器输出错误时替换标准电源电压为近似计算部分的当前供电电压并更新中值,在多比特近似加法器输出正确时替换器件阈值电压为近似计算部分的当前供电电压并更新中值,更新中值直至计数器的取值为0;及,
电源电压细粒度增加子模块,对最后一次二分计算得到的中值进行以电源电压精度为步进的细粒度增大操作直至多比特近似加法器输出正确,以多比特近似加法器输出正确时的细粒度调节值以及标准电源电压为最终的双电源电压配置方案。
4.根据权利要求1所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,所述错误检测模块包括:
多个单比特加法器组合而成的多比特近似加法器,每个单比特加法器包括一个二选一选择器、全加器、或门加法器,每个单比特加法器的二选一选择器的使能端接最大近似位宽的对应比特位,每个单比特加法器中的全加器以及或门加法器的输出端分别接该单比特加法器中二选一选择器的两个输入端;及,
运算输出检测子模块,用于根据高比特位加法器输出和低比特位加法器输出检测多比特近似加法器的输出。
5.根据权利要求1所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,根据器件阈值电压和电源电压精度配置二分计算次数的表达式为:n为配置的二分计算次数,VDD为常规电源电压,Vth我器件阈值电压,Vh是所需配置的电源电压精度。
6.根据权利要求2所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,所述初始近似位宽获取模块为右移寄存器。
7.根据权利要求2所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,根据读取的当前近似位宽计算当前误差的表达式为MEDor=2k-2,MEDor为当前误差,k为当前近似位宽。
8.根据权利要求2所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,所述误差计算比较子模块为查找表,该查找表存储有不同近似位宽对应的当前误差。
9.根据权利要求3所述所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,所述二分次数计算子模块为存储有不同工艺下器件阈值电压和电源电压精度所需执行中值电压计算次数的查找表。
10.根据权利要求4所述一种基于多比特近似加法器的双电压动态配置硬件电路结构,其特征在于,所述运算输出检测子模块包括:
与门,其一个输入端接最高比特位加法器的输出端,其另一个输入端接最低比特位加法器的输出端;及,
二选一选择器,其使能端接最高比特位加法器的输出端,其一个输入端接0,其另一个输入端接与门的输出端,在最高比特位加法器输出结果未发生跳变时使能,在最低比特位加法器输出结果发生跳变时输出多比特近似加法器输出正确的信息至双电源电压动态配置模块,在最低比特位加法器输出结果未发生跳变时输出多比特近似加法器输出错误的信息至双电源电压动态配置模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011546043.1A CN112596698B (zh) | 2020-12-24 | 2020-12-24 | 一种基于多比特近似加法器的双电压动态配置硬件电路结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011546043.1A CN112596698B (zh) | 2020-12-24 | 2020-12-24 | 一种基于多比特近似加法器的双电压动态配置硬件电路结构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112596698A CN112596698A (zh) | 2021-04-02 |
CN112596698B true CN112596698B (zh) | 2024-01-05 |
Family
ID=75200786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011546043.1A Active CN112596698B (zh) | 2020-12-24 | 2020-12-24 | 一种基于多比特近似加法器的双电压动态配置硬件电路结构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112596698B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262772A (zh) * | 2019-06-18 | 2019-09-20 | 北京大学深圳研究生院 | 一种两位、三位的近似加法器和一种近似加法器 |
CN110427169A (zh) * | 2019-07-12 | 2019-11-08 | 东南大学 | 一种面向人工神经网络的三层结构可配置近似位宽加法器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9229686B2 (en) * | 2012-08-27 | 2016-01-05 | The Regents Of The University Of California | Accuracy configurable adders and methods |
-
2020
- 2020-12-24 CN CN202011546043.1A patent/CN112596698B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262772A (zh) * | 2019-06-18 | 2019-09-20 | 北京大学深圳研究生院 | 一种两位、三位的近似加法器和一种近似加法器 |
CN110427169A (zh) * | 2019-07-12 | 2019-11-08 | 东南大学 | 一种面向人工神经网络的三层结构可配置近似位宽加法器 |
Non-Patent Citations (2)
Title |
---|
14位20MS/s CMOS流水线A/D转换器;孙超;李冬梅;刘力源;李福乐;;微电子学(第03期);全文 * |
一种混合结构的新型近似加法器;王保坤;班恬;;电子设计工程(第18期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112596698A (zh) | 2021-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10491239B1 (en) | Large-scale computations using an adaptive numerical format | |
US4817047A (en) | Processing circuit capable of raising throughput of accumulation | |
Zhu et al. | Ultra low-power high-speed flexible probabilistic adder for error-tolerant applications | |
KR20140099196A (ko) | 판독 전압 적응을 위한 보상 루프 | |
CN110428048B (zh) | 一种基于模拟延时链的二值化神经网络累加器电路 | |
CN111507465A (zh) | 一种可配置的卷积神经网络处理器电路 | |
EP0664516A2 (en) | Neural network with reduced calculation amount | |
CN110162403B (zh) | 一种基于人工神经网络的硬件资源分配方法及系统 | |
CN112596698B (zh) | 一种基于多比特近似加法器的双电压动态配置硬件电路结构 | |
WO2020209906A1 (en) | Granular refresh rate control for memory devices | |
Xiong et al. | Hardware implementation of an improved stochastic computing based deep neural network using short sequence length | |
US20170134053A1 (en) | Fixed point conversion of llr values based on correlation | |
US20060143260A1 (en) | Low-power booth array multiplier with bypass circuits | |
CN112085176A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN112085187A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
KR940004326B1 (ko) | 캐리 프리딕션을 이용한 고성능 가산기 | |
US6269385B1 (en) | Apparatus and method for performing rounding and addition in parallel in floating point multiplier | |
CN115826911A (zh) | 基于多类型近似计算单元的可变位宽加法器树生成系统 | |
KR20200140167A (ko) | 터너리 내용 주소화 메모리 및 이의 동작 방법 | |
US10140094B2 (en) | Rounding circuitry and method | |
US20220358183A1 (en) | Matrix multiplier and operation method thereof | |
Huang et al. | A hardware/software co-design method for approximate semi-supervised k-means clustering | |
CN109032564B (zh) | 一种高稳定性的cordic算法实现电路 | |
US8316249B2 (en) | Variable scaling for computing elements | |
CN112508174A (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 |