dsp笔记1
核心概念一:冯·诺依曼结构 vs 哈佛结构
这是学DSP碰到的第一个大词 。书上说,它们是芯片处理“程序指令”和“数据”的两种不同姿势 。
冯·诺依曼结构(普通单片机/电脑常用)
大白话比喻: 想象一个房间,里面只有一个公用的传送带。一会儿用来运送“老板的红头文件”(指令),一会儿用来运送“生产用的原材料”(数据) 。
痛点: 传送带很忙!当芯片想一边看指令一边搬数据的时候,传送带就堵车了(书上管这个叫“数据传输通道的瓶颈现象”) 。所以只能排队,速度慢 。
哈佛结构(DSP芯片的绝招)
大白话比喻: 老板一拍桌子,直接修了两条独立的专用传送带!一条叫“程序总线(PB)”,只负责运送指令;另一条叫“数据总线(DB)”,只负责运送数据 。
优势: 芯片可以一边眼睛看着下一条指令,手上一边抓着数据进行运算,两边同时开工,互不干扰,速度飞起 !这就是为什么 DSP 算算法能那么快 。
核心概念二:多总线结构(多条传送带并行)
你书上的第 1.2.2 节提到,光有哈佛结构还不够,我们的 TMS320C54x 系列 DSP 内部居然有 8组16位总线(4组地址,4组数据) !
大白话比喻: 别的芯片吃午饭,只有一双筷子(单总线),吃完一口菜才能吃一口饭。而我们的 DSP 芯片是一个八手章鱼大厨 !
一个时钟周期内,它可以同时干完这几件事:
-
右手抓来一条新的菜单(从程序存储器取指令) ;
-
左手一同时抓来两个配料(从数据存储器读两个操作数) ;
-
还有个触手把炒好的菜放盘子里(向数据存储器写一个操作数) 。
- 初学者避坑: 后面学到汇编并行指令(比如带有
||符号的指令,如ST ||LD)时 ,千万别惊讶它为什么能同时又存又取。记住,是因为它内部的“传送带(总线)”足够多 !
核心概念三:流水线技术(Pipeline)
书上的图 1.2.3 画了一个像阶梯一样的“四级/六级流水线操作过程” (取指、译码、取数、执行) 。这是最让初学者抓狂的地方。
- 大白话比喻: 想象一个汽车生产线。
- 不搞流水线: 4个工人围着一辆车。工人A装完底盘,工人B才去装发动机,工人C装轮胎,工人D喷漆。一辆车彻底做完(4个步骤),才开始做下一辆。这样很慢。
- 搞流水线: 当一号车的底盘装好了,移交给工人B去装发动机时,工人A立刻开始装二号车的底盘!以此类推。
映射到 DSP 汇编上: 当第一条汇编指令在进行“执行(干活)”时,第二条指令已经在进行“取操作数”,第三条指令已经在进行“译码(理解意思)”,第四条指令已经在被“预取指” !
- 一句话核心避坑(超级重要):
流水线虽然爽,但有一个怪脾气叫“流水线冲突(Hazard)/时序冲突” 。比如:第二条指令正急着要用某个小账本(寄存器)里的数据,结果第一条指令还在生产线上、还没把数据算出来写进这个账本里 !这就叫“还没写完,后面就急着要读” 。
怎么办? 后面我们在课件代码里,会经常看到空荡荡的NOP(空操作,代表让芯片发呆一个周期) ,或者必须人为把指令顺序调换一下 。这就是为了等一等流水线,防止算错数据 !
核心概念四:定点 DSP vs 浮点 DSP
书上在 1.2.3 节把 DSP 分为了“定点”和“浮点” 。
定点 DSP(咱们书本的主角 C54x)
大白话: 芯片脑子比较耿直,默认所有数都是整数 。那如果我们要算小数(比如音频、雷达信号的 0.125)怎么办?我们需要在程序里“假装”小数点在某个位置(比如人为规定后4位是小数部分)。
特点: 芯片便宜、功耗低,但是编写汇编程序时,程序员要操心小数点会不会溢出 。
浮点 DSP
大白话: 芯片自带“科学计数法”豪华大脑(比如自动转成 \(0.123 \times 10^5\)) 。
特点: 算得极准,写代码省心,但是芯片贵、功耗大 。
复习题目:
1.1 数字信号处理的实现方法一般有哪几种?(P2)
一共分为6种:
- 用PC机软件模拟:慢,只适合前期在电脑上验算公式,不适合实时干活。
- PC加专用加速卡:速度快了,但不适合做成小巧的嵌入式产品。
- 用单片机:适合简单任务,但不适合做密集的“乘法-累加”数学题。
- 用通用可编程DSP芯片:这正是咱们的主角!灵活、性能强,占据主导地位。
- 用专用DSP芯片:专为某种特定任务(如FFT)打造,速度极快,但太死板不用编程。
- 用包含DSP内核的ASIC芯片:把DSP功能直接做到你的定制专属芯片里。
1.2 简要叙述DSP芯片的发展概况。(P2)
DSP芯片的发展经历了3个阶段:
- 雏形阶段(1980年前后):芯片开始采用哈佛结构,但单条指令要200多纳秒,比较慢。
- 成熟阶段(1990年前后):配备了专门的硬件乘法器,指令周期缩短到80~100纳秒。
- 快速发展阶段(2000年以后):速度快到飞起(指令周期10纳秒以下),各种外设都集成到了芯片上,功耗更低,可以用C语言方便地编程了。
1.3 可编程DSP芯片有哪些特点?(P3-6)
这就是咱们前面讲的“超级加工厂”的绝招:
① 采用哈佛结构;② 多总线结构;③ 流水线技术;④ 专用的硬件乘法-累加器(MAC);⑤ 特殊的DSP指令;⑥ 极快的指令周期;⑦ 硬件配置强(自带各种外设);⑧ 支持多处理器结构;⑨ 省电和低功耗。
1.4 什么是哈佛结构和冯·诺依曼结构?它们有什么区别?
- 冯·诺依曼结构:程序(说明书)和数据(零件)共用一个仓库和同一条传送带(总线),取指令和拿操作数只能分时排队,容易“堵车”变慢。
- 哈佛结构:把程序和数据在物理上分开,拥有各自独立的传送带。工人可以同时看说明书和拿零件,效率翻倍。
(1)冯 · 诺依曼 ( Von Neumann) 结构
该结构采用单存储空间,即程序指令和数据公用一个存储空间,使用单一的地址总线和数 据总线,取指令和取操作数都是通过一条总线分时进行的。当进行高速运算时,不但不能同时 进行取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。冯 ·诺依 曼结构如图1.2.1所示。
(2)哈佛 ( Harvard) 结构
该结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总 线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、 数据吞吐并行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实时的数字信 号处理。哈佛结构如图1.2.2所示。
1.5 什么是流水线技术?
就像现代工厂的流水线,它把执行一条指令分成“取指、译码、读数、执行”等多个标准化步骤。当第一条指令在执行时,后面的指令已经在同步进行取指或译码了。多条指令重叠在一起并行工作,在不提高时钟频率的情况下,大大缩短了指令的平均执行时间。
1.6 什么是定点DSP芯片和浮点DSP芯片?它们各有什么优缺点?
- 定点DSP(整数小账本):以定点格式处理数据。优点是便宜、功耗低、算得快;缺点是动态范围小、容易溢出爆表、精度稍低。
- 浮点DSP(科学计算器):以浮点(科学计数法)格式处理数据。优点是精度极高、动态范围极大、不用担心爆表、C语言编程非常方便;缺点是价格较贵、耗电量大。
1.7 DSP技术的发展趋势主要体现在哪些方面?
未来主要向8个方向演进:① 内核结构进一步改善(如VLIW);② 与普通微处理器(MPU)融合;③ 与高档CPU融合;④ 与片上系统(SoC)融合;⑤ 与FPGA结合;⑥ 与实时操作系统(RTOS)结合;⑦ 引入并行处理机制;⑧ 功耗进一步降低。
1.8 简述DSP系统的构成和工作过程。
- 构成:抗混叠滤波器、A/D转换器、DSP芯片、D/A转换器、低通滤波器。
- 工作过程:现实中的连续模拟信号先通过“抗混叠滤波器”做初步过滤,再经“A/D转换器”变成一瓶瓶离散的数字信号;接着“DSP芯片”对这些数字做极速加工运算;处理完后,送给“D/A转换器”变回模拟波形,最后通过“低通滤波器”滤掉高频杂质,让输出变得平滑。
1.9 简述DSP系统的设计步骤。
想要拿DSP做个产品,分这6步:
① 明确设计任务,确定设计目标;② 在电脑上做算法模拟,确定性能指标;③ 选择合适的DSP芯片和外围零件;④ 软硬结合,分头进行硬件设计和软件编写;⑤ 软硬件分别进行调试(除Bug);⑥ 把软硬件组装在一起,进行系统集成和最终测试。
1.10 DSP系统有哪些特点?
- 优点:接口灵活方便、编程修改方便、处理速度极高、稳定性好(受温度和噪声影响小)、精度高、数字化的系统可重复性好(适合大规模生产)、便于集成。
- 缺点:对于特别简单的任务成本偏高、高速时钟会带来高频干扰、耗电量比普通单片机大。
1.11 在进行DSP系统设计时,应如何选择合理的DSP芯片?
买芯片就跟买车一样,主要看这几个指标:
① 运算速度(看主频和MIPS能不能满足任务);② 价格(成本控制);③ 运算精度(需要定点还是浮点);④ 硬件资源(片内的RAM、ROM够不够大);⑤ 开发工具(有没有好用的软件调试平台);⑥ 功耗(便携设备要选低功耗);⑦ 还要考虑封装形式、供货情况等因素。
1.12 TMS320VC5416-160的指令周期是多少毫秒?它的运算速度是多少MIPS?
- 这道题考的是通过芯片后缀看性能。“-160”代表芯片主频是 160 MHz。
- 运算速度:160 MHz的主频意味着它每秒能执行1.6亿条单周期指令,所以运算速度就是 160 MIPS。
- 指令周期:指令周期是主频的倒数,即 \(1 / 160MHz = 6.25 ns\)(纳秒)。因为课本题目特别问的是“毫秒(ms)”,1纳秒等于一百万分之一毫秒,所以换算过来是 0.00000625 毫秒(即 \(6.25 \times 10^{-6}\) 毫秒)。

浙公网安备 33010602011771号