FT-C55LP DSP中位处理单元与双乘累加单元的设计与实现
发布时间:2020-06-04 02:57
【摘要】: 本课题来自一款16位高性能低功耗数字信号处理器FT-C55LP的自主正向设计,其设计目标是各项技术指标与T(ITexas Instruments)公司的TMS320C55x DSP相当。而本文重点对其中两个运算单元——位处理单元和双乘累加单元进行自顶向下的设计和自底向上的验证。 本文首先对FT-C55LP的CPU结构进行全面而系统的研究,并在深入分析所有与位处理单元和双乘累加单元相关指令的基础上,分别对两者进行功能设计和总体设计。 位处理单元由特殊位域处理器和移位位处理器两个子单元构成。特殊位域处理器是为实现位域压缩、位域扩展、位计数和指数提取等专用指令而特别设计的专用硬件电路,利用一些专门设计的压缩器、扩展器、选择器等,巧妙地实现了各种专用特殊位域处理指令。移位位处理器就是移位器,本文提出了一种改进型多功能全译码40位桶形移位器,继承了传统移位器的优势,完成了FT-C55LP所需的全部算术、逻辑、循环以及双移位等移位功能。此外,通过实现并行的移位溢出检测机制与饱和处理,大大地提高了系统并行性、降低了功耗,并且为了保证运算精度实现了可控的舍入操作。 双乘累加单元包括两个可以并行的、结构和数据通路都类似的乘累加器,每个乘累加器都能在单周期完成一次17x17位的乘法与一次40位的加/减法。本文在深入研究快速乘法器的关键技术以及各种乘累加单元的实现结构的基础上,采用改进的基4布斯算法和带修正符号位的有限符号扩展技术,以及华莱士树算法的变体(3-2压缩和4-2压缩混合使用),最终实现了一款高效的双乘累加单元,其中特殊的符号位修正技术,为并行乘法溢出检测与饱和处理的提供了必要条件。此外,通过对算法的优化,巧妙地实现了可选的舍入运算,节省了资源,提高了系统并行性,减少了单指令执行所需的时间,降低了系统功耗。 另外,本文从子系统级验证完整、功能验证完全、数据验证完备的角度出发,制定了细致而全面的测试方案,然后借助Modelsim仿真工具,严格按照测试方案,分别对两个运算单元进行了功能仿真,得到正确的仿真结果,并借助Modelsim的高级仿真工具Code Coverage进行了代码覆盖率分析,效果比较理想。最后采用Design Compiler综合工具和SMIC的0.13um CMOS工艺库,在1.2V工作电压、25℃工作温度和200MHz工作频率下,对两个运算单元及其子单元进行了逻辑综合,综合结果满足要求。
【图文】:
用专用总线进行数据交换,而不需要占用通用总线,从而极大地提率。.1.3 CPU 模块划分令的执行过程包括取指令和指令译码、产生地址和访存,以及如果需要进行数据运算,如果是程序控制类指令,需要进行跳转、循环,为了对指令集提供完全、高效的支持,并根据结构化设计需要,将 F CPU 按照功能划分为指令缓冲单元(IU,Instruction Buffer Unit)、元(PU,Program Flow Unit)、地址数据流单元(AU,Address-Data Flo运算单元(DU,Data Computation Unit)等四大模块,如图 2. 1 所中 IU 用于缓存和解码应用程序的指令,,通过使用不同的计算单元维流来提高 DSP 效率;PU 用于产生所有的程序空间地址,并用于高效条件执行以及流水线保护;AU 是专门的硬件用于支持高效的寻址模数据空间的所有地址,并且其附加的通用 ALU 可以辅助完成一些算提高指令并行性;DU 是 CPU 处理数据的主要单元。
图 2. 2 数据运算单元内部的数据通路40 位 ALU 是一个常规算术逻辑运算单元,可以完成一般iterbi 操作,目前研究 ALU 设计的文献很多[27][28][29][30][31]本文论述的重点。单元包括两个子单元——移位位处理器和特殊位域处理器是一个 40 位的移位器,特殊位域处理器是一个专用硬件域处理指令。移位是 DSP 中必不可少的功能,定点常数算、多媒体数字信号处理、加密/解密、串/并转换、随机涉及到移位操作,对数据的移位能力在一定程度上反映了而特殊位域处理是专用指令,可以使用专用硬件实现,这乘累加是 DSP 运算的核心,许多 DSP 算法中都需要成百些 DSP 的评价体系中,以 DSP 在单位时间内可以完成的SP 性能的指标,如 MACS(Multiply-Accumulates Per Sec累加单元对整个 DSP 性能的提高具有极其重要的意义。
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2008
【分类号】:TP332
【图文】:
用专用总线进行数据交换,而不需要占用通用总线,从而极大地提率。.1.3 CPU 模块划分令的执行过程包括取指令和指令译码、产生地址和访存,以及如果需要进行数据运算,如果是程序控制类指令,需要进行跳转、循环,为了对指令集提供完全、高效的支持,并根据结构化设计需要,将 F CPU 按照功能划分为指令缓冲单元(IU,Instruction Buffer Unit)、元(PU,Program Flow Unit)、地址数据流单元(AU,Address-Data Flo运算单元(DU,Data Computation Unit)等四大模块,如图 2. 1 所中 IU 用于缓存和解码应用程序的指令,,通过使用不同的计算单元维流来提高 DSP 效率;PU 用于产生所有的程序空间地址,并用于高效条件执行以及流水线保护;AU 是专门的硬件用于支持高效的寻址模数据空间的所有地址,并且其附加的通用 ALU 可以辅助完成一些算提高指令并行性;DU 是 CPU 处理数据的主要单元。
图 2. 2 数据运算单元内部的数据通路40 位 ALU 是一个常规算术逻辑运算单元,可以完成一般iterbi 操作,目前研究 ALU 设计的文献很多[27][28][29][30][31]本文论述的重点。单元包括两个子单元——移位位处理器和特殊位域处理器是一个 40 位的移位器,特殊位域处理器是一个专用硬件域处理指令。移位是 DSP 中必不可少的功能,定点常数算、多媒体数字信号处理、加密/解密、串/并转换、随机涉及到移位操作,对数据的移位能力在一定程度上反映了而特殊位域处理是专用指令,可以使用专用硬件实现,这乘累加是 DSP 运算的核心,许多 DSP 算法中都需要成百些 DSP 的评价体系中,以 DSP 在单位时间内可以完成的SP 性能的指标,如 MACS(Multiply-Accumulates Per Sec累加单元对整个 DSP 性能的提高具有极其重要的意义。
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2008
【分类号】:TP332
【参考文献】
相关期刊论文 前6条
1 张天骐 ,林孝康 ,余翔;SoC系统的低功耗设计[J];单片机与嵌入式系统应用;2004年06期
2 王定;余宁梅;张玉伦;宋连国;;改进型booth华莱士树的低功耗、高速并行乘法器的设计[J];电子器件;2007年01期
3 解咏梅,张珩,张福新;基于覆盖率的功能验证方法[J];计算机应用研究;2005年01期
4 闵敬国,胡越黎;高性能乘加单元设计[J];计算机测量与控制;2005年07期
5 孙海平 ,李伟 ,王锐 ,高明伦;基于资源共享的ALU设计[J];微电子学与计算机;2001年05期
6 罗e
本文编号:2695786
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2695786.html