资源描述:
《booth算法超详细讲解.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、BoothRecoding[Lastmodified11:53:37AMonSaturday,8May]Boothmultiplicationisatechniquethatallowsforsmaller,fastermultiplicationcircuits,byrecodingthenumbersthataremultiplied.Itisthestandardtechniqueusedinchipdesign,andprovidessignificantimprovementsoverthe"longmultiplicati
2、on"technique.ShiftandAddAstandardapproachthatmightbetakenbyanovicetoperformmultiplicationisto"shiftandadd",ornormal"longmultiplication".Thatis,foreachcolumninthemultiplier,shiftthemultiplicandtheappropriatenumberofcolumnsandmultiplyitbythevalueofthedigitinthatcolumnofth
3、emultiplier,toobtainapartialproduct.Thepartialproductsarethenaddedtoobtainthefinalresult:.001011010011001011001011000000000000001011 0011010001Withthissystem,thenumberofpartialproductsisexactlythenumberofcolumnsinthemultiplier.ReducingtheNumberofPartialProductsItispossi
4、bletoreducethenumberofpartialproductsbyhalf,byusingthetechniqueofradix4Boothrecoding.Thebasicideaisthat,insteadofshiftingandaddingforeverycolumnofthemultipliertermandmultiplyingby1or0,weonlytakeeverysecondcolumn,andmultiplyby±1,±2,or0,toobtainthesameresults.So,tomultipl
5、yby7,wecanmultiplythepartialproductalignedagainsttheleastsignificantbitby-1,andmultiplythepartialproductalignedwiththethirdcolumnby2:PartialProduct0=Multiplicand*-1,shiftedleft0bits(x-1)PartialProduct1=Multiplicand*2,shiftedleft2bits(x8)Thisisthesameresultastheequivalen
6、tshiftandaddmethod:PartialProduct0=Multiplicand*1,shiftedleft0bits(x1)PartialProduct1=Multiplicand*1,shiftedleft1bits(x2)PartialProduct2=Multiplicand*1,shiftedleft2bits(x4)PartialProduct3=Multiplicand*0,shiftedleft3bits(x0)Theadvantageofthismethodisthehalvingofthenumber
7、ofpartialproducts.Thisisimportantincircuitdesignasitrelatestothepropagationdelayintherunningofthecircuit,andthecomplexityandpowerconsumptionofitsimplementation.Itisalsoimportanttonotethatthereiscomparativelylittlecomplexitypenaltyinmultiplyingby0,1or2.Allthatisneededisa
8、multiplexerorequivalent,whichhasadelaytimethatisindependentofthesizeoftheinputs.Negating2'scomplementnumbersha