VLSI数字信号处理系统设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 迟滞(latency):产生输出的时间与系统接收对 应输入的时间之差。
– 对于组合逻辑,通常用绝对时间单位或门延迟的数量 表示; – 对于时序逻辑,通常用时钟周期的数量表示; – 一般情况下,DSP系统的时钟率与采样率不相等。
VLSI数字信号处理系统设计
王明全 wmingquan@gmail.com 13940301914
课程简介
• 课程类型:学位课 • 学时:32学时 • 先修课程:
– – – – 信号与系统 数字信号处理 实时信号处理系统设计与实现 数字电路设计
教科书
• VLSI Digital Signal Processing Systems – Design and Implementation, keshab K. Parhi, Wiley, 1999 • 中译本:VLSI数字信号处理系统设计与实现,陈弘 毅 等译,机械工业出版社,2004
• 典型的数字信号处理(DSP)系统
– 通常对实时性要求很高。
• 数字信号处理和其他通用计算的主要区 别:
– 要满足实时处理对吞吐率的严格要求
• 实时地对到达系统的输入采样进行计算和处理,这 与先将输入的数据存储起来再批处理的方式相反; • 系统如果满足了采样率要求,就没有必要再提高计 算速度。
Ty
• 情况1:如果 Tc 小于帧的持续时间,即 Tc LTx ,则对样 本 x0 , x1 ,, xL 1 的处理,就可以在影响下一个输出 y 2 的 最后一个样本到达之前完成。因此,第二帧的计算 T xL , xL 1 ,, x2 L 1 可以在样本 x2 L 1 到达的时候立即开始。 在帧长和计算时间 Tc 皆为常数的情况下,输出总能跟上输 入。
– 性价比最高,在获得最高性能的同时尽量降 低成本。
•
设计时要考虑如下几个方面:
1. 2. 3. 4. 所需的硬件电路资源,例如空间和面积; 运行速度,由系统吞吐率和时钟决定; 功耗,完成某一给定任务所消耗的能量; 有限字长效应,由量化和舍入引起。
• DSP系统的性能 “鸿沟”
1. 2. 3.
算法复杂度随着应用需求不断提高,传统的固定架构的 DSP处理器已经不能满足要求,需要采用更高性能的信 号处理机。 对于系统中运算性能要求最高的部分,需要协处理器来 完成,而且这类需求还在不断扩大。 “面积—速度—功耗”权衡
主要内容
• 面向数字信号处理应用的全定制或半定制 VLSI和软件设计方法学。
1. 数字信号处理算法的表示(第1章) ; 2. 高层次的架构变换(第2章~第7章),用来设 计给定算法的一系列架构,包括:流水线,重 定时,展开,折叠和脉动阵列设计。 3. 高层次算法变换(第8章~第12章),主要研究 算法设计和电路实现之间的相互作用。包括: 快速卷积,强度缩减,超前等。
– 举例:系统
对于一次迭代,完成得计算为:
• 定义:
迭代周期(iteration period):算法完成一次迭代所需的 时间。 – 举例:对于系统
– 假设系统中加法器和乘法器的执行时间为Tm 和 Ta,则 该系统的迭代周期为Tm + Ta (假设为10ns,红框中的 执行部分),信号的采样周期Ts必须满足
参考书
• Digital Signal Processing with FPGA (3rd Edition), Uwe Meyer-Baese, Springer, 2007 • 第3版中译本:数字信号处理的FPGA实现,刘凌 译,清华大学出 版社,2010 • 实时信号处理-信号处理系统的设计与实现,John.G.Ackenhusen 著,李玉柏 等译,电子工业出版社,2002
•
实现数字信号处理系统的两种主要方式:
1. 通用结构——可编程处理器,包括GPP和DSP 器件;
– GPP,例如ARM处理器 具有比较强的事务管理功能,可以用来运行界面 以及应用程序等,其优势主要体现在控制和调度 方面。 – DSP,例如TI TMS32C55x,ADI Blackfin处理器 主要是用于运算,其优势是强大的数据处理能力 和较高的运行速度。
•
判别系统实时性的三个关键参数:
1. 输入采样周期 Tx ; 2. 变换 T j 的复杂度; 3. 完成 T j xi n 计算的处理机速度。
• 数据驱动特性
1. 一旦输入数据准备好,系统中的任何子任务或 计算都可以执行。
– 系统由数据流而非时钟同步,系统可以用不采用全局 时钟的异步电路实现。 在同步电路中,时钟负责系统运行的步伐,而异步系 统中却不同。异步系统往往可以做得比同步系统更高 效,但也更难设计。在异步系统中,系统各模块不必 同时工作,而是由数据流来驱动,输入数据准备好 了,就可以马上开始工作,数据处理完就可以停下 来,以节省功耗。
x n
y m
y 0
y 1
y 2
Tc LTx
Tc LTx
Tc LTx
• 结论:处理时间的门限 Tc LTx 是最重要的参数,系统满 足 Tc LTx,为实时运行;而 Tc LTx ,则为非实时的。 • 实时的定义: 如果 T j 完成计算(或处理)所需的时间不超过对输出 y j m 有影响的所有输入采样 xi n 的持续时间,则该处理就是 实时的。 • 核心思想: 计算(或处理)必须在一个特定的时间间隔——输入采样 集 xi n 的持续时间内完成。
a) 完全支持并行处理机制; b) 电路结构可灵活配置,设计风险低; c) 单位功能功耗较低;
d) 设计移植方便; e) 开发人员可以用它来创建一个定制的、与众不同 的设计方案; f) 器件成本下降很快。
3. 应用:
a) DSP处理器作为主处理单元,主要负责算法系数更 新、决策控制操作和高速串行数学运算; b) FPGA作为协处理器、预处理器和后处理器,主要 负责高并行度处理和多通道数据吞吐。
•
DSP + FPGA是目前、以及未来最适合填 补“鸿沟”的解决方案
1. DSP处理器基于精简指令集(RISC)和哈佛 体系结构,内部包含至少一个快速整列乘法 器和扩展字宽累加器,缺点是MAC单元较 少。但优势在于浮点运算能力。 2. FPGA可以通过在片内配置多级MAC单元以获 得较高带宽,并且
③ 通信方式
I. 专用网络结构 II. 共享存储器
• 解决办法:
1. 采用更高,高,…性能的GPP和DSP处理器
a) 实质上是软件计算——利用软件和相应的硬件完成 信号处理运算; b) 串行处理结构; c) 灵活、通用,但是速度较慢。
2. 全定制VLSI电路
a) b) c) d) 可以在面积、速度和功耗上进行全面优化; 可以采用并行处理结构,处理速度较高; 灵活性较低,价格竞争力差; 发展机会——IP核,可编程逻辑器件(CPLD和 FPGA)。
– 数据驱动特性
• 实时(real time)性讨论:
– 将数字信号处理系统的功能定义为变换 T j ,输入采样 为 xi n, 0 i I 1,输入采样时间间隔为 Tx ,得到输出信 号 y j m , 0 j J 1 ,有
y j m T j xi n
第一章 绪论-数字信号处理系统
• 数字信号处理相对模拟信号处理的比较优势
1. 对于温度漂移和工艺变化鲁棒性更好。 2. 精度更高。数字表示的精度通过改变信号的字长可以 得到更好的控制。 3. 信噪比高,抑制噪声和干扰的能力强。数字信号处理 技术可以在信号放大的同时消除噪声和干扰,而在模 拟信号处理,信号和噪声都被放大了。 4. 无误差处理。数字信号可以无误差地进行存储与恢 复、发送与接收以及处理与操作。
y n ax n bx n 1 x n 2
其非终止性程序描述为:
for n 1 to y n a x n b x n 1 c x n 2 end
• 定义: 迭代(iteration):算法中所有计算(或功能)执 行一次称为迭代。
4.
对并行处理的需求:利用并行机制来加快处理 速度。
要考虑如下方面: ① 模块划分粒度
工作(job),任务(task),过程(process),变量 (variable),位(bit)
② 并发控制方式
I. 中央控制(程序控制); II. 数据驱动控制,分为数据流驱动和命令驱动(Demanddriven)。
x n
T xn , n 0,1, L 1
T xn , n L, L 1, 2 L 1
y m
Tc
Ty
– 注意: 输出样本 y m 1 取决于 L 个输入样本 x0 , x1 ,, xL 1 ,其范围从 t 0 到 t L 1 Tx 。这样的输入信号 集,称为长度为 L 的帧。 是输出信号的周期。要将一帧内的所有数据 进行变换 T j ,需要一定的计算时间 Tc 。
– –
优点:可编程、灵活易于实现; 缺点:为串行执行机制,并行处理能力弱;速度较 低,硬件效率较低。
2. 专用结构——全定制硬件电路,如专用芯片和 基于FPGA/CPLD的逻辑硬件。
– 一般作为协处理器或加速器,易于实现多通道、实 时、高速和并行,针对算法和功能特制,硬件效率较 高。
•
DSP系统的设计目标:
• 注意:有些情况下必须采用模拟信号处理 系统,如:
1. 要求频率极高——无线通信中射频收发机系 统; 2. 要求芯片面积极小、功耗极低——微机电系统 (Micro Electro-Mechanical Systems, MEMS)。 MEMS是指可批量制作的,集微型机构、微型 传感器、微型执行器以及信号处理和控制电 路、直至接口、通信和电源等于一体的微型器 件或系统。
• 定义:
迭代率(iteration rate)是迭代周期的倒数。 采样率(sampling rate):也称吞吐率,是指每秒处理 的采样数量。
• 关键路径(critical path):
– 对于组合逻辑,是指输入和输出之间最长的路径,路 径的长度与其计算时间成正比; – 对于时序逻辑,是指任意两个存储元件(或称延迟元 件)之间的最长路径; – 关键路径的计算时间决定了DSP系统最小可行的时钟周 期。
P C V 2 f
实现同一功能的DSP系统,可以有不同结构,每种结 构对应一定的电容量。假设频率 f 保持不变,电容越 大,充放电时间越长,必须提高供电电压才能保证一个 周期内信号达到规定的逻辑电平;相反如果电容小,那 么供电电压就可以将下来,从而功率得到降低。 例如,乘法器的电容量较大,可以利用强度缩减技术减 少乘法器的数量。□
•
DSP系统设计方法学 基本流程:
1. 需求分析; 2. 算法分析与设计,建立满足处理和计算需求的优 化的算法结构; 3. 系统结构设计,基于算法结构进行硬件和软件设 计; 4. 实现和调试。
• VLSI 专用芯片(ASIC)设计流程
• 基于FPGA的设计流程
• DSP算法的表示方法
– DSP算法具有非终止(Non-terminating)性,重复执行 同一代码。 – 例如:对于FIR数字滤波器
–
2. 非终止(Non-terminating)性 重复执行同一代码,要求实时操作。
for n 1 to y n a x n b x n 1 c x n 2 end
百度文库
• 典型数字信号处理运算
– 卷积,相关,数字滤波器,自适应滤器; – 运动估计,离散余弦变换(DCT),矢量量化; – 抽取和插入,滤波器组,Viterbi算法和小波 等。
x n
y m
y 0
y 1
Tc
Tc
y 2
y 3
Tc
Tc
•
x0 , x1 ,, xL 1 情况2:如果 进行运算所需要的时间,将大 Tc ,则对输入信号 LTx 于帧长 。前一帧的计算要在下一帧的最后一个输入样本到达以后才能完 LTx 成,输出会越来越落后于输入。 系统是不能连续运行的,因为来不及处理的输入信号会不断地积压,序 列的输入在输出时延变得很大以前就会终止。