第13章 DSP系统硬件实现的基本概念.docx
- 文档编号:7226071
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:23
- 大小:1.19MB
第13章 DSP系统硬件实现的基本概念.docx
《第13章 DSP系统硬件实现的基本概念.docx》由会员分享,可在线阅读,更多相关《第13章 DSP系统硬件实现的基本概念.docx(23页珍藏版)》请在冰豆网上搜索。
第13章DSP系统硬件实现的基本概念
第一节VerilogHDL与VHDL的比较
VerilogHDL与VHDL的比较
设计的建模和抽象能力
对大型设计的管理能力
运算能力参数化能力生成重复结构的能力数据类型编码效率设计的可重用性……
VerilogHDL与VHDL的比较
(1)
设计描述的能力两种语言基本相当;VHDL语言的高层建模和抽象能力比Verilog语言稍强;Verilog对门级以下的物理建模能力稍强;
VerilogHDL与VHDL的比较
VerilogHDL与VHDL的比较
(2)
对大型设计的管理能力
1VHDL可用库和程序包、配置语句、生成语句、类属语句管理大型设计结构。
Verilog没有管理大型设计结构的语句。
运算能力主要运算符相同;
2VerilogHDL有一元归约运算符,使用简洁方便。
参数化能力
1VHDL用类属(Generic)语句传递参数;
2Verilog实例化时使用参数重载,覆盖缺省值。
VerilogHDL与VHDL的比较(3)
生成重复结构的能力VHDL有生成语句(Generate),生成由大量相同单元构成的模块;Verilog没有对应的语句。
数据类型VHDL含有大量的内置数据类型和用户自定义类型,有利于系统的抽象建模;Verilog数据类型都是语言内置的,有多种net类型,有利于描述系统的物理结构。
VerilogHDL与VHDL的比较(4)
设计的可重用性VHDL具有库和程序包的概念,可以方便的重用已有的模块;Verilog没有库和程序包的概念,使用include来包含已有的一些设计文件。
编码效率VHDL数据类型要求严格,必须精确定义和匹配;Verilog通过自动扩展和截短,可以较灵活的赋值,因而程序简洁,效率较高。
VerilogHDL与VHDL的比较(5)
其他:
易学易用性:
VHDL语法规范,规则复杂,代码要求严格;
Verilog设计灵活,与C类似,入门较容易;
要生成高质量的系统,都不容易。
程序可读性:
VHDL语言规范严谨,可读性较好;
与C类似,可读性也较好;
可读性与设计人员的编码风格有较大关系。
IEEE标准的硬件描述语言VHDL:
IEEE1076(1987,1993)VerilogHDL:
IEEE1364(1995,2001)
第2节XilinxISE与XST
用XilinxISE设计FIR滤波器
综合软件XST中的RegisterBalancing选项
对FIR滤波器的综合结果
XilinxHelponRegisterBalancing
SynplifyHelponRetiming
SynplifyHelponPipelining
第3节DSP系统硬件实现基础
DSP系统硬件实现基础
目标:
设计高性能DSP系统或DSPIP核
一般DSP系统:
Xilinx:
Simulink+SystemGenerator
Altera:
Simulink+DSPBulider
IPcore或已有模块
自己用硬件描述语言设计
高性能DSP系统或IP核:
Re-timing
Pipelining
ParallelProcessing
DistributedAlgorithms……
DSP算法与应用
DSP系统特点实时处理数据驱动根据系统需求决定DSP系统的实现方式
举例
移动通信基站:
复杂、稳定性、灵活性
Processors+DSP+FPGA
雷达信号处理:
运算量大、实时、灵活性、稳定性
DSP+FPGA
手机:
低功耗、低成本、体积小、一定的灵活性
Processors+ASIC
蓝牙耳机:
低功耗、低成本、体积小
ASIC+Processors……
DSP硬件实现
DSP算法的几种描述方法;
几个基本概念:
Iteration
IterationPeriod
CriticalPath
Latency
CriticalLoop
LoopBound
IterationBound
DSP算法实现:
流水线与并行处理
重定时
Folding/Unfolding
SystolicArray
……
第4节DSP算法
DSP算法表示方法
数学公式表示:
•高层次描述,着重体现系统功能。
•运算的顺序和结构不直观,适用于高层次系统构建;具体设计时一般需转化为图形表示方式
图形表示:
•着重体现算法的数据流属性和内在并行性;
•可较方便的映射为硬件实现;
•包括:
框图:
BlockDiagram
信号流图:
Signal-FlowGraph
数据流图:
Data-FlowGraph
相关图(依赖图):
DependenceGraph
•将算法描述和结构实现联系起来;可观察到算法的并行性、数据驱动性、空间与时间的折中。
DSP算法表示1:
数学公式表示
DSP系统
FIR滤波器:
4阶FIR滤波器例子:
DSP算法表示2:
框图表示
框图经常用于图形化的描述DSP系统,由功能模块以及有方向的边组成;
有方向的边:
代表数据从输入模块到输出模块的流动;
可以包含延时单元
框图可以在各个抽象层次上构建。
一个系统可以用不同的框图表示,对应着相同功能的不同实现方法。
举例:
4阶FIR滤波器:
框图表示为:
•功能模块(乘法器、加法器、单位延时单元)
•有方向的边(连接各个功能模块,代表数据流动方向)
DSP算法表示3:
信号流图表示
信号流图是节点和有向边的集合
•节点表示运算或任务;
•有向边是从一个节点到另一个节点的支路;
•在从一个节点的输入到另一个节点的输出之间,信号进行了线性变换;
•边上可具有常数增益、或延时单元,汇节点为加法操作。
是线性网络的一种描述方法。
举例:
3阶FIR滤波器:
信号流图表示为:
•节点代表加法计算;
•有方向的边代表线性变换:
延时,与常数相乘;
线性信号流图的转置不改变系统功能:
•单输入单输出系统;
•所有边反向;
•输入与输出交换。
DSP算法表示4:
数据流图表示
数据流图由节点和有向边组成。
•描述了DSP算法的数据驱动属性。
当一个节点的所有输入数据到达(准备好)时就进行计算。
没有输入边的节点可在任何时候启动;
很多节点可以同时启动,体现了并发性;
数据依赖关系。
•节点表示计算(或功能模块),旁边的数字为该计算或功能模块的运算时间;
•有方向的边代表数据路径;每条边有非负个数个延时;
举例3阶FIR滤波器:
数据流图表示为:
•数据流图描述了DSP算法的数据驱动属性。
当一个节点的所有输入数据到达时就进行计算。
•节点表示计算(或功能模块);
•有方向的边代表数据路径;每条边有非负个数个延时;细粒度数据流图:
每个节点是基本运算;
粗粒度数据流图:
以“功能模块”为节点;
多采样率(Multi-Rate)数据流图。
DSP算法表示5:
依赖图表示
依赖图是一种有向图,表明算法中计算之间的依赖关系。
•节点表示运算;
•边表示节点之间的数据依赖关系;
•在依赖图中,只要算法中调用一个新的运算,就会产生一个新的节点;
•前面几种图形表示方法只表示了算法一次迭代的运算节点,而依赖图中包含了算法所有迭代的运算节点。
•用于脉动阵列设计,挖掘算法的并行性。
FIR滤波器例子:
第5节几个定义
几个定义
Iteration(迭代):
算法中的所有计算执行一次叫做一个Iteration。
IterationPeriod:
算法进行一次Iteration所用的时间。
CriticalPath:
组合逻辑(不存在延时单元):
输入到输出的最长路径;
时序逻辑:
所有路径中,不存在延时单元的最长路径;
系统性能受限于CriticalPath。
Latency:
输出与相应输入的时间间隔
组合逻辑:
绝对时间单位,或门延时个数
时序逻辑:
时钟周期个数
DSP系统的吞吐率
每秒处理的采样点数量。
关键路径的运算时间确定了DSP系统最小可行的时钟周期(最大的工作频率)。
举例
直接形式的4阶FIR的CriticalPath:
Xilinx中的实现方式
举例
转置形式FIR的CriticalPath
代价:
定点实现时,延时单元数据宽度增加。
第6节流水线
流水线
系统性能:
Latency:
inputtooutputdelay
Throughput:
numberofoperationspertimeunit
如果Latency=T,为了获得高于1/T的吞吐率,必须将操作重迭起来。
流水线的概念
指令的执行过程:
取指令à分析à执行
指令的顺序执行:
指令的流水线执行:
流水线的主要特点:
在流水线的每一个功能部件的后面都要有一个寄存器,它的作用是保存本流水段的执行结果;
各流水段的时间应尽量相等,否则容易引起流水线的阻塞、断流等;
只有连续提供同类任务才能充分发挥流水线的效率;
流水线需要有“装入时间”和“排空时间”。
只有流水线完全充满时,整个流水线的效率才能得到充分发挥。
第7节流水线与并行处理
流水线与并行处理
DSP算法的流水线变换
在数据通路中加寄存器,使算法能够进行流水线处理;
缩短CriticalPath;
提高处理速度;
降低功耗。
并行处理
提供重复的硬件资源;
多输入多输出,提高吞吐量;
降低功耗
流水线与并行处理(举例)
CriticalPath减半;
总电容不变,关键路径上的电容减半,驱动电压可降低,因此功耗降低。
吞吐量加倍;
或吞吐量不变,总电容加倍,频率减半,充电时间加倍导致驱动电压可降低,因此功耗降低。
流水线处理
在前向割集的所有边上放置延时单元:
不改变算法功能;
减小关键路径长度;
延时增加。
在前向割集的所有边上放置延时单元:
流水线特点
在一个M级的流水线系统中,从输入到输出的任何一个路径中都比原来顺序电路中的那条路径增加了M-1个延时单元;流水线缩短了关键路径的长度;Latency增加;寄存器数量增加。
并行处理
考虑一个单输入单输出的FIR滤波器:
为了得到并行处理结构,将其转化为多输入多输出系统:
(以一个时钟周期并行处理3个输入数据为例)
ParallelProcessing也称为BlockProcessing,一个时钟周期处理的输入数据个数称为BlockSize。
并行处理中的串并/并串转换
并行处理特点
CriticalPath不变;
并行处理中,若BlockSize为L,则迭代周期:
可以与流水线结合使用(流水线级数为M):
并行处理可以通过减小时钟频率来降低功耗。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第13章 DSP系统硬件实现的基本概念 13 DSP 系统 硬件 实现 基本概念