ImageVerifierCode 换一换
格式:PPT , 页数:41 ,大小:364.50KB ,
资源ID:374420      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-374420.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Energy Efficient Hardware Synthesis of Polynomial .ppt)为本站会员(appealoxygen216)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

Energy Efficient Hardware Synthesis of Polynomial .ppt

1、Energy Efficient Hardware Synthesis of Polynomial Expressions 18th International Conference on VLSI Design,Anup Hosangadi Ryan Kastner ECE Department, UCSB,Farzan Fallah Advanced CAD Research Fujitsu Labs of America,Outline,Introduction Related Work Problem formulation Algorithms for optimizing poly

2、nomials Experimental results Conclusions,Introduction,Embedded system applications need to compute polynomial expressions Continuous functions can be approximated by Taylor Series Adaptive (polynomial) filters Polynomial interpolation/extrapolationin Computer Graphics Encrpytion,Introduction,Commonl

3、y occuring computations implemented in hardware More flexibility than processor architecture NPAs (Hardware accelarators) in PICO project Custom Instructions (Tensilica) Upto 100 times improvement over processor implementation (Kastner et.al TODAES02) Develop techniques for reducing power consumptio

4、n,Related Work (Behavioral transforms),Power consumption depends on many factors Reducing number of operations Hardware: (Nguyen and Chatterjee TVLSI00) Software: (I.Hong et.al TODAES99)Voltage reduction after speedup transformations Retiming, Pipelining, Algebraic restructuring(Chandrakasan et. al

5、TCAD95),Related Work,Scheduling and resource allocation Shutting down unused resources (Monteiro et. al. DAC 96) Allocation of registers, functional units and interconnects (A.Raghunathan et. al ICCD94) Multiple Vdd scheduling Assigning supply voltage to each operation in CDFG (M.Chang and M.Pedram

6、TVLSI97),Related Work,Switching power is proportional to number of operationsMultiplications are expensive in Embedded systems Average 40 times more power than addition at 5V (V.Krishna et. al, VLSI Design 1999) Careful optimization of expressions is therefore necessary to save power,Reducing operat

7、ions in polynomial expressions,No good tool for polynomials Designers rely on hand optimized librariesConventional compiler techniques: CSE and Value numbering not suited for polynomials.Horner form: most popular representation anxn + a1xn-1 + .an-1x + a0 = (anx + an-1)x + an-2)x + a1)x + a0 Not goo

8、d for multivariate polynomials Only a single polynomial expression at a time,Comparison with Horner form,Quartic-spline polynomial (3-D graphics) P = zu4 + 4avu3 + 6bu2v2 + 4uv3w + qv4 Horner form (from MapleTM) P = zu4 + (4au3 + (6bu2 + (4uw + qv)v)v)v(17 multiplications) Proposed algebraic method:

9、d1 = v2 ; d2 = d1*vP = u3(uz + ad2) + d1( qd1 + u(wd2 + 6bu) ) (11 multiplications),Related Work (Polynomial Expressions,Expression Factorization (M.A. Breuer JACM69) Allows only one kind of operator at a timeUsing Symbolic Algebra (M.A.Peymandoust, De Micheli) Mapping polynomial datapaths to librar

10、ies (DAC01) Low power embedded software (DATE02) Results depend heavily on set of library elementseg. (a2 b2) = (a+b)(a-b) iff (a+b) or (a-b) is a library element Manipulates only a single expression at a time,F1 = A + B + C + D; F2 = A + P + D;,= Extract (A + D),Motivating Example,Consider set of e

11、xpressionsUsing CSE,16 multiplications and 4 additions/subtractions,12 multiplications and 4 additions/subtractions,Motivational Example,Using Horner transformUsing our algebraic technique,12 multiplications and 4 additions/subtractions,7 multiplications and 3 additions/subtractions,Introduction to

12、algebraic technique for redundancy elimination,Algebraic techniques in multi-level logic synthesis (MLLS) Decomposition, factoring reduce number of literalsDistill and Condense use Rectangle Covering methodsPolynomial Expressions (Our Technique) Factoring, Single term common subexpressions reduces n

13、umber of multiplications Multiple term common subexpressions reduces number of additions and possibly multiplicationsKey Differences (Generalization to handle higher orders) Kernelling techniques Finding single cube intersections,Introduction to our technique (Outline),Find a subset of all possible

14、subexpressions (kernel generation)Transformation of Polynomial Expressions Problem formulationExtract multiple term common subexpressions and factorsExtract single term common factors,Introduction to our technique,Terminology Literal: A variable or a constant eg. a,b,2,3.14 Cube: Product of literals

15、 e.g. +3a2b, -2a3b2c SOP: Sum of cubes e.g. +3a2b 2a3b2c Cube-free expression: No literal or cube can divide all the cubes of the expression Kernel: A cube free sub-expression of an expression, e.g. 3 2abc Co-Kernel: A cube that is used to divide an expression to get a kernel, e.g. a2b,Introduction

16、to our Technique,Matrix Representation of Polynomial ExpressionsF = x3y xy2z is represented byEach row represents a product term Each column represents a variable/constant Each element (i,j) represents power of variable j in term i,Generation of Kernels (example),P1 = x3y + x2y2z L = x,y,zDivide by

17、x: Ft = P1/x = x2y + xy2z,Generation of Kernels (example),Ft = P1/x = x2y + xy2zC = Biggest Cube dividing all cubes of Ft,1 1 0,/ C =,C =,= xy,Generation of Kernels (example),Obtain Kernel:F1 = Ft/C = (x2y + xy2z)/(xy) = ( x + yz) Obtain Co-Kernel D1 = x*(xy) = x2y No kernels within F1. Go back to P

18、1 P1 = x3y + x2y2z Divide now by next variable yFt = x3 + x2yz C = x2 But (x y) CStop Here, to avoid repeating same kernel Ft/C = (x + yz) No more kernels extracted Record kernel F1 = P1 with co-kernel 1,Concept of kernels and co-kernels,Theorem: Two expressions f and g can have a multiple term comm

19、on subexpression iff there are 2 kernels Kf and Kg having a multiple term intersectionDetection of multiple term common subexpressions by intersection of sets of kernelsEach co-kernel : kernel pair represents a possible factorizatione.g. x3y + x2y2z = x2y(x + yz)Set of kernels a subset of all possib

20、le subexpressions,All Kernels and Co Kernels,Which kernels to choose?,Kernel Cube Matrix (KCM),One row for each Kernel generated One column for each distinct kernel cube Each non-zero element represents a term,x3y,Finding Kernel Intersections (Distill Algorithm),Each kernel intersection or factor ap

21、pears as a rectangle Rectangle: Set of rows and columns such that all elements are 1 Value of a rectangle = Weighted sum of the energy savings of the different operations Goal: Maximum valued rectangular covering of KCM Greedy heuristic: covering by prime rectangles,Modeling value function of a rect

22、angle,Formula for weighted sum of energy savings on selection of a rectangleR = # of rows ; C = # of columnsM(Ri) = # of multiplications in row (co-kernel) i.M(Ci) = # of multiplications in column (kernel-cube) im = ratio of average energy consumption of multiplication to addition in the target libr

23、ary,Value =,Distill Algorithm,Distill Algorithm,Remove covered terms,4xy x2y = xyd2 d2 = 4 x Saves 2 multiplications Value = 80,Distill Algorithm,Distill algorithm exits after no more kernel intersections can be found,P1 = x2yd1 d1 = x + yz P2 = 4d1 xyz d2 = 4 - x P3 = xyd2,Can further optimize by f

24、inding single cube intersections,Finding single cube intersections (Condense algorithm),Form Cube Literal Matrix (CLM) One row for each cube One column for each literal Eg. 2 cubes F1 = a4b3c; and F2 = a2b4c2,Finding single cube intersections (Condense algorithm),Each (single term) common subexpress

25、ion appears as a rectangle. Rectangle: Set of rows and columns where all elements are non-zeroValue of a rectangle is number of multiplications saved by selecting it C = cube corresponding to the rectangleValue = Rows*( (Ci ) -1) Maximum valued rectangular covering will give minimum number of multip

26、licationsUse greedy iterative covering by prime rectangles,Cube Literal Matrix (Condense Algorithm),Save 2 multiplications by extracting xy,CLM for our example after Distill algorithm,C = xy,Condense Algorithm,Extracting xy,No more favorable cube intersections found,Final Implementation,Total 7 mult

27、iplications, 3 additions/subtractions Savings of 5 multiplications, 1 addition/subtraction compared to CSE Impossible to obtain such results using conventional techniques,Experimental setup,Polynomials used in Computer graphics and Signal Processing 1.0 technology library, characterized for power co

28、nsumption Synthesized using Synopsys Design CompilerTM Min Hardware constraints (1 adder + 1 multiplier) Med Hardware constraints (Max 4 multipliers),Experimental setup,Estimated power using Synopsys Power CompilerTM for random inputs, using RTL Simulator (VCSTM) Compared energy consumption with CSE

29、 and Horner form Compared energy after voltage scaling,Results (Comparing operations),Results (Min Hardware constraints),Results (Med Hardware constraints),Conclusions,Technique to reduce number of operations in polynomial expressions Large savings in energy consumption observed over CSE and Horner

30、methods Need to consider scheduling and resource allocation to obtain further improvements,Conclusions,Thank you! Questions ?,Extra slides,Finding Kernel Intersections (Distill Algorithm),Worst case scenario for Distill algorithmNumber of prime rectangles exponential in number of rows/columns Heuristic methods to find best prime rectangle In practice polynomial expressions are not so large,

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1