第二章 DSP芯片内的CPU外围电路
DSP芯片外围电路典型设计(数字信号处理器芯片TMS320F(精)
DSP芯片外围电路典型设计(数字信号处理器芯片TMS320FDSP芯片外围电路典型设计(数字信号处理器芯片TMS320F206):引言DSP(数字信号处理器)芯片是一种能够实时快速地实现各种数字信号处理算法控制的微处理器,已经在通信与信息系统、信号与处理、自动控制、雷达、航空航天、医疗等许多领域得到了广泛的应用。
目前生产DSP芯片的厂家主要有TI公司、AD 公司、Motorola公司等。
其中TI公司推出的TMS320C2XX系列是继TMS320C2X 和TMA320C5X之后的一种低价格、高性能16位定点运算DSP。
TMS320F206是2DSP芯片外围电路典型设计(数字信号处理器芯片T MS320F206) :引言DSP(数字信号处理器)芯片是一种能够实时快速地实现各种数字信号处理算法控制的微处理器,已经在通信与信息系统、信号与处理、自动控制、雷达、航空航天、医疗等许多领域得到了广泛的应用。
目前生产DSP芯片的厂家主要有TI公司、AD公司、Motorola公司等。
其中TI公司推出的TMS320C2XX系列是继TMS320C2X和 TMA320C5X之后的一种低价格、高性能16位定点运算DSP。
TMS320F206是2XX系列的代表之一,性价比高,应用广泛,目前已成为高档单片机的理想替代。
TMS320F206的性能特点如下:指令周期达25 ns;可寻址64 k程序空间、64 k数据空间、64 k I/O空间以及32 k全局存储空间;片内集成有32 kB Flash存储器;32位算术逻辑单元、32位累加器、16位并行乘法器;丰富的片内外设,可编程等待状态发生器、锁相环、同步串行口、异步串行口等;与IEEE 1149.1标准兼容的JTAG串行逻辑扫描电路。
DSP芯片外围电路设计是用好DSP芯片最关键的第1步。
本文以TMS320F206为例介绍DSP芯片前向通道和后向通道接口电路、外存存储器扩展等典型的设计思路及方法。
DSP原理及应用第二章DSP的硬件结构总结(精)
第2章DSP的硬件结构DSP的硬件结构:DSP与标准微处理器有许多共同的地方,都是由CPU、存储器、总线、外设、接口、时钟组成。
从广义上讲,可以说DSP是一种CPU。
但DSP和一般的CPU 又有不同, DSP有自己的一些独特的特点,比如采用哈佛结构、流水线操作、独立的硬件乘法器、独立的DMA总线和控制器等。
Von Neuman结构与Harvard结构:Harvard结构:程序与数据存储空间分开,各有独立的地址总线和数据总线,取指和读数可以同时进行,从而提高速度,目前的水平已达到90亿次浮点运算/秒(9000MFLOPS)。
MIPS--Million Instruction Per SecondMFLOPS--Million Floating Operation Per Second流水操作(pipeline):独立的硬件乘法器:在卷积、数字滤波、FFT、相关、矩阵运算等算法中,都有A(kB(n-k一类的运算,大量重复乘法和累加。
通用计算机的乘法用软件实现,用若干个机器周期。
DSP有硬件乘法器,用MAC指令(取数、乘法、累加)在单周期内完成。
独立的DMA总线和控制器:有一组或多组独立的DMA总线,与CPU的程序、数据总线并行工作,数据的传递和处理可以独立进行,DMA内部总线与系统总线完全分开,避开了总线使用上的瓶颈。
在不影响CPU工作的条件下,DMA速度已达800Mbyte/s。
CPU:通用微处理器的CPU由ALU和CU组成,其算术运算和逻辑运算通过软件来实现,如加法需要10个机器周期,乘法是一系列的移位和加法,需要数十个机器周期。
DSP的CPU设置硬件乘法器,可以在单周期内完成乘法和累加.移位:通用微处理器的移位,每调用一次移位指令移动1-bitDSP可以在一个机器周期内左移或右移多个bit,可以用来对数字定标,使之放大或缩小,以保证精度和防止溢出;还可以用来作定点数和浮点数之间的转换.溢出:通用CPU中,溢出发生后,设置溢出标志,不带符号位时回绕,带符号位时反相,带来很大的误差DSP把移位输出的最高位(MSB)存放在一个位检测状态寄存器中,检测到MSB=1时,就通知下一次会发生溢出,可以采取措施防止.数据地址发生器(DAG):在通用CPU中,数据地址的产生和数据的处理都由ALU来完成在DSP中,设置了专门的数据地址发生器(实际上是专门的ALU),来产生所需要的数据地址,节省公共ALU的时间.外设(peripherals):时钟发生器(振荡器与PLL)定时器(Timer)软件可编程等待状态发生器通用I/O同步串口(SSP)与异步串口(ASP)JTAG扫描逻辑电路(IEEE 1149.1标准便于对DSP作片上的在线仿真和多DSP条件下的调试’C54x的内部结构:中央处理器CPU 、内部总线控制、特殊功能寄存器、数据存储器RAM 、程序存储器ROM、I/O功能扩展接口、串行口、、主机通信接口HPI、定时系统、中断系统。
常用的DSP芯片及外围电路
本文在硬件电路设计上采用DSP芯片和外围电路构成速度捕获电路,电机驱动控制器采用微控制芯片和外围电路构成了电流采样、过流保护、压力调节等电路,利用CPLD实现无刷直流电机的转子位置信号的逻辑换相。
在软件设计上,软件以C语言和汇编语言相结合的方法实现了系统的控制。
最后提出了模糊控制调节PID参数的控制策略。
1引言赛车刹车系统是赛车系统上具有相对独立功能的子系统,其作用是承受赛车的静态重量、动态冲击载荷以及吸收赛车刹车时的动能,实现赛车的制动与控制。
其性能的好坏直接影响到赛车的快速反应、安全制动和生存能力,进而影响赛车的整体性能。
本文设计了赛车全电防滑刹车控制器的硬件和软件,最后研究了适合于赛车刹车的控制律。
2系统硬件电路设计本赛车刹车控制器是由防滑控制器和电机驱动控制器组成。
两个控制器都是以DSP芯片为核心。
防滑控制器主要是以滑移率为控制对象,输出给定的刹车压力,以DSP芯片为CPU,外加赛车和机轮速度信号调理电路等。
电机驱动控制器主要是调节刹车压力大小,并且控制电动机电流大小,也是以DSP芯片为CPU,再加外围电路电动机电流反馈调理电路、过流保护电路、刹车压力调理电路、四组三相全桥逆变电路等构成电机驱动控制器。
2.1DSP的最小系统DSP的最小系统主要涉及存储器扩展、JTAG接口配置、复位电路、ADC模块的设置以及时钟电路的设计等。
1、片外存储器扩展。
片外存储器是为了弥补DSP内部RAM的不足,同时也考虑到调试过程中可以方便将程序下载到片外高速StaTIcRAM中。
外部的静态随机存储器采用CY7C1041CV33。
DSP既可以使用片内程序存储器,也可以使用片外程序存储器,这由引脚XMP刀MC决定的。
JTAG接口。
在程序需要调试时,程序下载是通过JTAG接口完成的,这个接口经过仿真器与PC机的并行口相连。
2、复位电路与时钟源模块。
用阻容电路产生上电复位和手动复位的低电平复位电路,产生复位信号。
外加一个硬件看门狗,其输出端产生复位信号WDRST。
第二章 DSP芯片结构介绍
15 14 13 12 11 10 9 8 7 6
5 4~0
BRAF CPL XF HM INTM 0 OVM SXM C16 FRCT CMPT ASM
块重复操
作标志位,
指示当前 是(1)否(0) 在执行块 重复操作。
直接寻址编 方式位。指 直接寻址时 用何种指针 DP 的 直 接 寻
辑 示 采 。 址
20
3.桶形移位器的功能
• 什么是定标
要 点
• 移位处理的作用 • 归一化的作用
BA CD
信号控制
桶形移位器(40位)
• 为何要扩展符号位
S
ALU
最高/最低有 效字选择
E
21
• 什么是定标
要 • 移位处理的作用
当数据存储器 的数据送入累 加器或与累加
点 • 归一化的作用
器中的数据进 行运算时,先
17X17乘法
• 饱和处理的优点
40位加法
• 数据流向
检零 饱和 取整
25
• 结构
要 • 功能 点 • 什么是舍入处理
• 饱和处理的优点 • 数据流向
乘法器/加法器 单元可以在一 个流水线状态 周期内完成一 次乘法累加 ( MAC ) 运 算 。
26
乘法器能够执行:
无符号数乘法(每个16位操作数前面加一个0);
15~ 13 12 11 10 9 8~ 0 ARP TC C OVA OVB DP
进位位。
执行加法
产生进位
置1,减
Байду номын сангаас
法 位
产则生清借0 。累加器溢出标志位。
数据存储器页指针。 这9位字段与指令字 中的低7位结合在一 起,形成一个16位直 接寻址存储器的地址, 对数据存储器的一个 操作数寻址。
DSP 第二章内部结构和外部引脚
二、乘积单元
1、乘法器
•输入:硬件乘法器的两个16位输入分 别来自:
* 16位暂时寄存器(TREG):
在执行乘法运算以前,TBEG从数据读总 线(DRDB)装入一个数 据值作为乘数之一。
指令:
LT dma
* 数据读总线(DRDB)的数据存储器值 程序读总线(PRDB)的程序存储器值。
指令举例:
MPY
MPY
6
; 一个乘数来自 DRDB
#0F000H ;一个乘数来自PRDB
二、乘积单元
1、乘法器 •输出: 两个输入值相乘后,32位 乘积被暂时存放在乘积寄 存器(PREG)中。
二、乘积单元
2、乘积定标移位器
•输入:32位乘积来自PREG •输出:执行定标移位操作以后, 乘积有两种输出方式: * 32位乘积送至CALU进行再运算 * 通过SPH或SPL指令(存储乘积的 高16位或低16位)送往数据存储器。 指令举例: SPL dma SPH dma
PAB:程序地址总线:
提供对内部程序存储空间进行读写 访问的地址。
总线结构
DRAB:数据读地址总线:
提供对内部数据存储空间进行读访问 的地址。
总线结构
DWAB:数据写地址总线:
提供对内部数据存储空间进行写访 问的地址。
总线结构
PRDB:程序读总线:
用于传递从内部程序空间到CPU的 指令代码、立即数和表信息。
• 选择辅助寄存器:向寄存器辅助寄存器指针(ARP) ((ST0)中的3位)写 入0—7范围内的数值。
由ARP所指定的辅助寄存器被称作当前辅助寄存器或当前AR。
辅助寄存器指针(ARP)的装载方式: • 用MAR指令,例:MAR *, AR1 • 用LST指令,装载ST0, • 其他支持间接寻址的指令, 例:ADD *+, AR2
DSP引脚及内部结构
EMU1/OFF:仿真器中断1引脚/关断所有 输出引脚。
9. NC引脚
NC:No Connection 1、2、12、15、35、36……143、144等
第2章 TMS320C54x的硬件结构
2.1 外部引脚 2.2 C54’的内部总线结构 2.3 ’C54x的中央处理器 2.4 ’C54x的存储空间结构 2.5 ’C54x的片内外设电路
2.8 ’C54x的主要特性
TMS320C54x的组成
中央处理器CPU
内部总线控制 特殊功能寄存器 数据存储器RAM
I/O功能扩展接口
串行口
主机通信接口HPI 定时系统 中断系统
程序存储器ROM
TMS320C54x的内部硬件结构图
系统 控制 接口
系统控制
PAGEN 程序地址生成器
DAGEN 数据地址生成器 特殊功能 寄存器 程序存储器 数据存储器 串行口 并行口 定时器 计数器 中断 外部 设备 接口 外部 存储器 接口
CPU
2.2 ’C54x的内部总线结构
TMS320C54x的结构是以8组16位总线为核心,形 成了支持高速指令执行的硬件基础。 1组程序总线PB 总线结构 3组数据总线CB、DB、EB 4组地址总线PAB、CAB、DAB、EAB
TMS320C54x的硬件结构图
系统 控制 接口
系统控制
PAGEN 程序地址生成器
(4) ALU的输出
ALU的输出为40位运算结果,通常被送至累加器 A或B。
HBIL:字节识别信号,用来判断主机送来的数据是 第1字节还是第2字节。 HCNTL0: HCNTL1:
用于主机选择所要寻址的寄存器;
HR/W : HRDY : HPIENA:
DSP课件NO[1].2-DSPCPU结构PPT精品文档34页
改进的哈佛结构
CPU
PB
DB
PAB
DAB
程序存储器
数据存储器
10.01.2020
7
Harvard结构
程序与数据存储空间分开,各有独 立的地址总线和数据总线,取指和 读数可以同时进行,从而提高速度, 目前的水平已达到90亿次浮点运算 /秒(9000MFLOPS)
MIPS--Million Instruction Per Second MFLOPS--Million Floating Operation Per Second
如果有写,那这个阶 段装载写的地址
访问
读取
执行/写回
从PB总线 取回指令加
载到IR
执行指令且
如果需要:加载DAB数据1的地址; 如果需要:加载CAB数据2的地址;
更新辅助寄存器和堆栈指针
把要写入的 数据加载到
存储器中
例2.2: 流水线中的跳转指令
12
3
45
67
8
预取 指取 译码 访问 读取 执行/写回
Program word size Data word size Auxiliary Register ALUs ALU Auxiliary Registers Data Registers
Memory
16 bits 16 bits 2 (16-bit each) 1 (40-bit)
8 0 separate data/prog
溢出
通用CPU中,溢出发生后,设置 溢出标志,不带符号位时回绕, 带符号位时反相,带来很大的误 差
DSP把移位输出的最高位(MSB) 存放在一个位检测状态寄存器中, 检测到MSB=1时,就通知下一次 会发生溢出,可以采取措施防止
《DSP微控制器原理》第二章n
2.2.2、程序控制系统(地址产生逻辑)
程序控制是控制一条或多条指令的执行次序 。其结构如图2.4所示。 NPAR 下一个程序地址寄存器,保存着下一 个指令周期要执行的指令所在的程序地址。 PAR 程序地址寄存器,保存当前程序地址。 PC 16位程序计数器,保存下一条指令代码 所在地址。当程序顺序执行时, PC(NPAR)+1。
这里值得注意的是:TMS320LF240xA系列DSP控制器 分为两组总线(内部总线和外部总线)。上述第一部分模 块均挂接在内部总线上;第二部分模块均挂接在外部总线 上。第三部分是与外部信号连接控制系统运行的模块。
2.1 CPU总线结构与流水线作业的特点 2.1.1、总线结构 TMS320LF240xA控制器对数据的处理速 度快、效率高与其内部总线结构有着密切 的关系。它们均采用的是改进的哈佛总线 结构,具有两套相互独立的程序操作总线 和数据操作总线,共由6组16位的内部地址 和数据总线组成。其结构如图2.1所示。
2.2.3、输入定标移位器
来自程序存储器 (PRDB) 来自数据存储器(DRDB) 16 16
输入定标 部分 MUX 16 31 16 15 输入移位器(32 位) 0
32 送至 CALU 图 2. 6 输入定标移位器结构图
2.2.1、输入定标移位器
从图2.6中可以看出,输入移位器具有两个数据 源。 1、通过DRDB(数据读总线)可输入由指令操作数 所指出的数据存储器单元中的数值; 2、通过PRDB(程序读总线)输入来自指令中给出 的立即数。 当数据写到输入移位器的低16位后,输入移位 器执行由程序指令指定的左移位操作,对该数值进 行调整,然后将调整结果送至CALU的32位输入总 线。
第二章 DSP控制器的CPU功能结构
DSP原理及应用第二章
’C54x的主要特性 2.2.2 ’C54x的引脚功能
2.2.1 ’C54x的主要特性
1.CPU
先进的多总线结构。 40位算术逻辑运算单元(ALU)。 17 位×17位并行乘法器与 40位专用加法器相连。 比较、选择、存储单元(CSSU)。 指数编码器可以在单个周期内计算 40位累加器 中数值的指数。 双地址生成器包括 8 个辅助寄存器和两个辅助 寄存器算术运算单元(ARAU)。
I/O口:BIO用来监测外设,XF向外设发送信号。 主机接口HPI:用于和其他总线或CPU通信。 定时器:产生定时中断。 中断系统:分为硬件中断和软件中断,不同型号的 DSP配置不同。
返回首页
串行口:分 4 种,分别为 SP 、 BSP 、 McBSP 、 TMD 。
2.2 ’C54x的主要特性和外部引脚
2.存储器
64 K字程序存储器、64 K字数据存储器以及64 K字 I/O空间。在 C548 、 C549、 C5402、 C5410 和C5420中程序存储器可以扩展。
片内ROM可配置成程序存储器和数据存储器。
片内RAM分为单寻址RAM和双寻址RAM。
3.指令系统
单指令重复和块指令重复操作。 块存储器传送指令。 32位长操作数指令。 同时读入2个或3个操作数的指令。 并行存储和并行加载的算术指令。 条件存储指令。 中断快速返回指令。
成:程序空间、数据空间和I/O空间。 程序存储器空间包括程序指令和程序中所需的常 数表格;数据存储器空间用于存储需要程序处理 的数据或程序处理后的结果;I/O空间用于与外
部存储器映象的外设接口,也可以用于扩展外部
数据存储空间。
DSP课件NO.2-DSPCPU结构
更新辅助寄存器和堆栈指针
例2.2: 流水线中的跳转指令
1
预取
2
指取 PB=B 预取
3
译码 IR=B 指取
4
访问
5
读取
6
B
7
8
9
10
执行/写回
B b1
PAB=a1
译码
访问
读取
执行/写回
PAB=a2
PB=b1
预取
IR=b1
指取 PB=i3 译码
b1
访问 读取 执行/写回
流水线冲洗
流水线冲洗 j1
PBA=a3
TMS320C2xx的CPU(部分)
硬件乘法器
CALU(中心算术逻辑单元)
移位
通用微处理器的移位,每调用一 次移位指令移动1-bit DSP可以在一个机器周期内左移 或右移多个bit,可以用来对数字 定标,使之放大或缩小,以保证 精度和防止溢出;还可以用来作 定点数和浮点数之间的转换
Von Neuman结构与Harvard结构
DSP 总线结构 目的:Y(n)=∑X(i)×A(i) 冯诺依曼结构
CPU
AB DB
存储器
2019/2/11 5
DSP 总线结构(续) 哈佛结构 PAB CPU DAB
程 序 存 储 器
PB
DB
数 据 存 储 器
2019/2/11
6
DSP 总线结构(续)
改进的哈佛结构 CPU PAB PB DB DAB
程序存储器
数据存储器
2019/2/11
7
Harvard结构
程序与数据存储空间分开,各有独 立的地址总线和数据总线,取指和 读数可以同时进行,从而提高速度, 目前的水平已达到90亿次浮点运算/ 秒(9000MFLOPS)
DSP-2DSP芯片的CPU结构
选
位
择
标
位
志
地 址 可 见 控 制 位
数
时
据
钟
ROM 映 射
输 出
选
选
择
择
位
位
乘 法 饱 和 方 式 位
存 储 饱 和 位
18
思考
• C54x内部有几条总线?分别有什么用途? • ST1寄存器XF和INTM位的作用是什么?
预习
• C54x DSP存储器配置及外设 教材第2章:P35-P43。
19
低阶位:AL、 BL 15~0。 9
2.3 C54x的中央处理器CPU
桶形移位寄存器
① 多路选择器MUX 用来选择输入数据。
② 符号控制SC 用于对输入数据进行符
号位扩展。
③ 移位寄存器 用来对输入的数据进
行定标和移位。
④ 写选择电路 用来选择最高有效字和 最低有效字。
DB15~DB0
A B
CB15~CB0
A
B
MUX
COMP
TRN
TC
CCSU
来自桶形移位器 MSW/LSW 选择
EB15~EB0
比较、选择和存储单元CSSU
12
2.3 C54x的中央处理器CPU
2*J M1(尺度1)
2*J+1 M2(尺度2)
D1
N1 If
J
(M1+D1)>(M2+D2)
D2
then N1= M1+D1
D2
Else
N2
N1= M2+D2
主
结构,提高了系统的多功能性和操作的灵活性。
要 ② 具有高度并行性和专用硬件逻辑的CPU设计,提高了芯片的性能。
00_04 DSP芯片结构和CPU外围电路.
第二章 DSP芯片结构和CPU外围电路
4、数据计算单元(D Unit)
D单元包括了CPU的主要计算部 件,能够完成高效的计算功能。 组成:移位器、40比特算术逻 辑ALU电路、两个乘累加器 (MAC)和若干寄存器组构成。 移位器 D单元移位器能够接收来自I单 元的立即数,与存储器、I/O 空间、A单元寄存器、D单元寄 存器和P单元寄存器进行双向 通信。此外,还向D单元的ALU 和A单元的ALU提供移位后的数 据。
(CLKMD)组成。
CLKIN pin
DPLL
CLKMD 寄存器
CLKOUT pin
CLKMD pin
第二章 DSP芯片结构和CPU外围电路
(3) 两种工作模式(模式控制寄存器标志=0,DPLL工作于旁路(BYPASS)模式。 若PLL_ENABLE=1,DPLL工作于锁定(LOCK)模式。
DMA控制器
高速指令缓冲存储器 (Instruction cache)
第二章 DSP芯片结构和CPU外围电路 2.2时钟发生器
1、工作模式
(1) 功能
将输入时钟CLKIN变为CPU及外围电路所需要的工作时钟。 通过时钟输出脚CLKOUT输出,供其它器件使用。 (2) 组成 时钟发生器由一个数字锁相环(DPLL)和一个模式控制寄存器
2.1.1 TMS320C55x处理器的特点
采用改进的哈佛结构。1条读程序数据总线(PB),5条数据总线
(BB,CB,DB,EB,FB),和他们对应的6条地址总线(PAB,BAB,CAB, DAB,EAB,FAB)
40位和16位的算术逻辑单元(ALU)各1个, 1个40位的移位器
4个40位的累加器(AC0,AC1,AC2,AC3)和(T0,T1,T2,T3) 17×17比特的硬件乘法器和一个40比特专用加法器的组合(MAC) 比较、选择和存储单元 数据地址产生单元(DAGEN)和程序地址产生单元(PAGEN) 数据空间和和程序空间为同一物理空间,采用统一编址
DSP原理及应用 第二章
X
2.2 TMS320C54x的总线结构 的总线结构 2.数据总线CB 、DB和EB 数据总线CB DB和 3条数据总线分别与不同功能的内部单元相连接。 条数据总线分别与不同功能的内部单元相连接。 如 : CPU 、 程序地址 产生逻辑 PAGEN、 数据地址 CPU、 程序地址产生逻辑 产生逻辑PAGEN 、 产生逻辑 DAGEN、片内外设和数据存储器等。 DAGEN、片内外设和数据存储器等。 CB和DB用来传送从数据存储器读出的数据; CB和DB用来传送从数据存储器读出的数据 用来传送从数据存储器读出的数据; EB用来传送写入存储器的数据。 EB用来传送写入存储器的数据 用来传送写入存储器的数据。 3.地址总线PAB、CAB、DAB和EAB 地址总线PAB、CAB、DAB和 用来提供执行指令所需的地址。 用来提供执行指令所需的地址。
2011-3-31 22:22
第2页
X
2.1 TMS320C54x的特点和硬件组成框图 TMS320C54x的特点和硬件组成框图
TMS320 54x 简称C54x TMS320C54x(简称C54x)是TI公司为实现 320C TI公司为实现 低功耗、高速实时信号处理而专门设计的 位定点 低功耗、高速实时信号处理而专门设计的16位定点 而专门设计的16 数字信号处理器,采用改进的哈佛结构,具有高度 数字信号处理器,采用改进的哈佛结构 具有高度 哈佛结构, 的操作灵活性和运行速度, 的操作灵活性和运行速度,适应于远程通信等实时 嵌入式应用的需要,现已广泛地应用于无线电通信 嵌入式应用的需要, 系统中。 系统中。
第 13 页
2011-3-31 22:22
X
2.2 TMS320C54x的总线结构 的总线结构 1.程序总线PB 程序总线PB 主要用来传送取自程序存储器的指令代码和立即 操作数。 操作数。 PB总线既可以将程序空间的操作数据(如系数表) PB总线既可以将程序空间的操作数据 如系数表) 总线既可以将程序空间的操作数据( 送至数据空间的目标地址中,以实现数据移动, 送至数据空间的目标地址中,以实现数据移动,也可 以将程序空间的操作数据传送乘法器和加法器中, 以将程序空间的操作数据传送乘法器和加法器中,以 便执行乘法-累加操作。 便执行乘法-累加操作。
DSP学习 2) CPU内部结构
▲ 存储器接口还有3组数据总线:
1.PRDB(Program-Read DataBus)程序读数据总线:PRDB在读取程序空间时 用来传送指令或数据。PRDB是一个32位的总线。
2.DRDB(Data-ReadDataBus)数据读数据总线: DRDB在读取数据空间时用 来传送数据。DRDB是一个32位的总线。
▲ 仿真逻辑 —— 监视和控制DSP芯片内不同部件的工作,并且测试设备
的操作情况。
▲ 接口 ——产生存储器和外围设备的接口信号以及CPU的时钟和控制信号,
显示CPU状态、仿真逻辑信号以及正在使用的中断情况。
第2章 CPU内部结构与时钟系统
一、中央处理单元CPU 概述
CPU主要特性:
▲ 保护流水线:CPU具有八级流水线,可以避免从同一地址进行读写而造成
时发生,因为两者都要使用数据/程序写数据总线DWDB。而 运用不同总线的传输是可以同时发生的。 如:CPU可以在程序空间完成读操作(使用PAB和PRDB), 在数据空间完成读操作(使用DRAB和DRDB),
同时在数据空间进行写操作(使用DWAB和DWDB)。
第2章 CPU内部结构与时钟系统
三、CPU寄存器
第2章 CPU内部结构与时钟系统
三、CPU寄存器
中断控制寄存器(1FR、IER、DBGIER) C28x有 3个寄存器用于控制中断:中断标志寄存 器 (1FR) 、中断使能寄存器 (1ER) 和调试中断使能 寄存器 (DBGIER)。 IFR包含的标志位用于可屏蔽 中断(可以用软件进行屏蔽)。当通过硬件或软件设 定了其中某位时,则相应的中断就被使能。可以 用IER中的相应位屏蔽和使能中断。当DSP工作在 实时仿真模式并且 CPU 被挂起时, DBGIER 表明 可以使用时间临近中断(如果被使能)。
dsp原理及应用第二章
FDFFH FE00H
External DARAM B0 256/512 words CNF=1 (External if CNF=0) Reserved
FEFFH FF00H FFFFH
Software interrupts
LF2407系列DSP的程序存储器映射图
程序存储器分配情况
• 该64K空间可分为如下几个部分: • 按功能划分 – 0000H~003FH:中断服务程序入口 – 0040H~FDFFH:用户程序区 – FE00H~FEFFH:用户程序区,由双口存储器构成 – FF00H~FFFFH:保留区 • 按物理构成划分 – 0000H~7FFFH:MP/ MC=0时,由32K字片内ROM提供; MP/ MC=1时,由片外程序存储器提供 – 8000H~FDFFH:由片外程序存储器提供 – FE00H~FEFFH:CNF=1且 MP/ MC=0时,由片内DARAM 的B0区提供,否则,由片外程序存储器提供 – FF00H~FFFFH:由片外程序存储器提供
15~13 ARB 12 CNF 11 TC 10 SXM 9 C 8~5 保留 4 3~2 保留 1~0
XF
PM
§2.3 存储器和I/O空间
• • • • TMS320C240X系列DSP芯片的存储器共244K字,可 分为4个独立空间: 64K字程序空间 64K字局部数据空间 32K字全局数据空间 64K字I/O空间 其中,程序空间占用PAB和PRDB;局部数据空间、 全局数据空间及I/O空间共用总线DRAB、DRDB、 DWAB及DWDB。
**0+
*0-
加上索引量
减去索引量
LACC*0+用当前AR所指的数据存储器地址中的 内容装载累加器,后当前AR+AR0
DSP原理与应第二章 共105页
第2章 TMS320C54x的硬件结 构
ALU的功能框图
CB15~CB0
T CB
DB15~DB0
A
MUX
DS
MUX
桶形移位 器输出
A
B
MUX
A MAC输出 M
B U
SXM 符号ctr
符号ctr SXM
Y
X
ALU
OVM C16 C OVA/OVB ZA/ZB TC
第2章 TMS320C54x的硬件结 构
2.1 ’C54x的基本结 构1. ’C54x的主要优点
① 围绕1组程序总线、3组数据总线和4组地址总 线而建立的改进哈佛结构,提高了系统的多功能性和 操作的灵活性。
② 具有高度并行性和专用硬件逻辑的CPU设计, 提高了芯片的性能。
③ 具有完善的寻址方式和高度专业化指令系统, 更适应于快速算法的实现和高级语言编程的优化。
⑥ 采用先进的静态设计技术,进一步降低了功 ③ 具有完善的寻址方式和高度专业化指令系统, 更耗适,应使于芯快片速具算有法更的强实的现应和用高能级力语。言编程的优化。
第2章 TMS320C54x的硬件结 构
2. ’C54x的内部结构
TMS320C54x的组成
中央处理器CPU 内部总线控制 特殊功能寄存器 数据存储器RAM 程序存储器ROM
当正向溢出时,将32位最大正数00 7FFFFFFFH 装入累加器;
当负向溢出时,将32位最小负数FF 80000000H 装入累加器。
③状态寄存器ST0中与目标累加器相关的溢出标 志OVA或OVB被置1。
第2章 TMS320C54x的硬件结 构
3.进位位C ALU有一个与运算结果有关的进位位C,位于
2.溢出处理 ALU的饱和逻辑可以对运算结果进行溢出处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章 DSP芯片结构和CPU外围电路
程序流程P单元结构图
2、 程序流程单元(P Unit) 组成:P单元由程序地址产 生逻辑电路和一组寄存器组 构成。 主要功能产生所有I单元读取 指令所需的24比特程序地址、 控制指令读取顺序。 一般情况下,产生的都是 (连续)顺序地址。在遇到 指令要求读取非连续地址程 序代码时,也可以根据来自 I单元的立即数和D单元的寄 存器值产生所需的地址,并 将产生地址送到PAB。
第二章 DSP芯片结构和CPU外围电路
2.1.2 TMS320C55x CPU
CPU有4个功能单元:指令缓冲单元(I单元),程序流程单元(P单元) ,地址数 据流程单元(A单元)和数据计算单元(D单元)
CPU结构示意图
第二章 DSP芯片结构和CPU外围电路
1、指令缓冲单元(I Unit) 指令缓冲单元(I单元)图 由指令缓冲队列(IBQ)和指令 译码器构成。 I单元从程序数据总线接收 程序指令代码(每次接收32比特程 序代码)放到IBQ(最多可存放64字 节的未译码指令)码)进行变长8/16/24/32/48 位)指令译码。 译码后的数据分别送到P单 元,A单元,D单元处理。
第二章 DSP芯片结构和CPU外围电路
三、计数器部分
C5509定时器的计数器分为两类:
一类用于定时器工作, 一类用于CPU设臵定时长度。
定时长度为20比特:4比特的预定标器和16比特的主计数器。其中,4比
特的预定标值由预定标寄存器PRSC定义:16比特主定时器的值由定时周期寄 存器PRD定义。
若CLKMD管脚为高电平,则BYPASS_DIV=01,CLKOUT等于CLKIN的一半。
第二章 DSP芯片结构和CPU外围电路
(2)失锁对时钟发生器的影响 锁相环是通过对输入基准时钟进行跟踪锁定来稳定其输出时 钟的,在锁定之后,由于某些因素使其输出时钟发生偏移,即失 锁。发生失锁时,DPLL的动作由IOB字段控制: 若IOB=1,时钟电路会自动切换到旁路模式,并重新开始跟踪锁定过程,
第二章 DSP芯片结构和CPU外围电路
4、数据计算单元(D Unit)
D单元包括了CPU的主要计算部 件,能够完成高效的计算功能。 组成:移位器、40比特算术逻 辑ALU电路、两个乘累加器 (MAC)和若干寄存器组构成。 移位器 D单元移位器能够接收来自I单 元的立即数,与存储器、I/O 空间、A单元寄存器、D单元寄 存器和P单元寄存器进行双向 通信。此外,还向D单元的ALU 和A单元的ALU提供移位后的数 据。
定时器由时钟、控制寄存器、计数器和定时器事件等部分构成。
第二章 DSP芯片结构和CPU外围电路
1、时钟部分
可采用内部CPU时钟;
CPU时钟 TIN/TOUT 4比特预定标器 CPU中断 DMA 同步事件
也可采用来自TIN/TOUT
管脚的外部输入时钟。
2、两个定时器
一个用于定时器工作(递 减方式) 一个用于CPU读写(设臵 定时长度)
第二章 DSP芯片结构和CPU外围电路
定时器的工作方式 设定时器的工作时钟周期为Tclock,则定时长度T可用下式计算: T=Tclock×(PRD+1)×(TDDR+1)
第二章 DSP芯片结构和CPU外围电路 讲课内容: 1)TMS320C55x处理器的特点
2)TMS320C55x处理器的CPU结构
3)TMS320C55x处理器的CPU外围电路
第二章 DSP芯片结构和CPU外围电路
2.1 DSP芯片结构
第二章 DSP芯片结构和CPU外围电路
2.1 DSP芯片结构
(CLKMD)组成。
CLKIN pin
DPLL
CLKMD 寄存器
CLKOUT pin
CLKMD pin
第二章 DSP芯片结构和CPU外围电路
(3) 两种工作模式(模式控制寄存器标志位的定义)
若PLL_ENABLE=0,DPLL工作于旁路(BYPASS)模式。 若PLL_ENABLE=1,DPLL工作于锁定(LOCK)模式。
第二章 DSP芯片结构和CPU外围电路
6、时钟发生器应用举例 问题:假定输入时钟频率CLKIN为20MHz,而DSP需要的工作时 钟为160MHz。 解: (1)需要将时钟发生电路设为锁定模式;
(2)根据倍频次数PLL_MULT与分频次数PLL_DIV的关系
CLKOUT= PLL_MULT PLL_DIV+1 PLL_MULT =8×(PLL_DIV+1) ×CLKIN 1<PLL_MULT≤31时
DMA控制器
高速指令缓冲存储器 (Instruction cache)
第二章 DSP芯片结构和CPU外围电路 2.2时钟发生器
1、工作模式
(1) 功能
将输入时钟CLKIN变为CPU及外围电路所需要的工作时钟。 通过时钟输出脚CLKOUT输出,供其它器件使用。 (2) 组成 时钟发生器由一个数字锁相环(DPLL)和一个模式控制寄存器
2.1.1 TMS320C55x处理器的特点
采用改进的哈佛结构。1条读程序数据总线(PB),5条数据总线
(BB,CB,DB,EB,FB),和他们对应的6条地址总线(PAB,BAB,CAB, DAB,EAB,FAB)
40位和16位的算术逻辑单元(ALU)各1个, 1个40位的移位器
4个40位的累加器(AC0,AC1,AC2,AC3)和(T0,T1,T2,T3) 17×17比特的硬件乘法器和一个40比特专用加法器的组合(MAC) 比较、选择和存储单元 数据地址产生单元(DAGEN)和程序地址产生单元(PAGEN) 数据空间和和程序空间位同一物理空间,采用统一编址
0110 0100 0001 0011
1 1 01000
00
1
第二章 DSP芯片结构和CPU外围电路 2.3通用定时器
一、组成和框图
C5509 DSP片内有两个定时器:Timer0,Timer1; 具有定时或计数功能。计数器在每个时钟周期减1,当减到0就 产生一个输出信号。该输出信号可用于中断CPU或触发DMA传输 (称为定时器事件)。
PLL_DIV和PLL_MULT为(0,8),(1,16),(2,24)或(3,32)
第二章 DSP芯片结构和CPU外围电路
(3) 取PLL_DIV和PLL_MULT为(0,8),要求DPLL失锁或退出省电状态 后重新锁定,即IOB=IAI=1。
例程如下:
MOV #0X6413,PORT(#CLKMD)
16比特主计数器
3、定时器事件
产生三个输出信号:CPU中断、DMA同步事件、TIN/TOUT管脚输出信号。
第六章 DSP芯片内的CPU外围电路
二、时钟部分
定时器的工作时钟可来自DSP内部的CPU时钟,也可来自TIN/TOUT管脚 输入的外部时钟。具体时钟源的选择和TIN/OUT管脚的功能由控制寄存器 TCR中的FUNC字段确定。 FUNC=00时,TIN/TOUT为高阻态,时钟源为CPU时钟。该模式为复位后 的缺省模式。 FUNC=01时,TIN/TOUT为定时器输出,时钟源为CPU时钟,可以输出时 钟信号或脉冲信号。 FUNC=10时,TIN/TOUT为通用输出,时钟源为CPU时钟。此时, TIN/OUT作为通用输出,其电平由控制寄存器TCR中的DATOUT字段确定。 FUNC=11时,TIN/TOUT为时钟源输入,定时计数器将在其上升沿递减。
第二章 DSP芯片结构和CPU外围电路
5、DPLL模式控制寄存器CLKMD
(1) BREAKLN为失锁指示(只读)
0:表示由于某种原因引起PLL失锁;
1:表示处于锁定状态,或发生对CLKMD寄存器的写操作。
(2) LOCK为锁定模式指示(只读) 0:表示DPLL处于旁路模式
1:表示DPLL处于锁定模式
2比特
第二章 DSP芯片结构和CPU外围电路
4、使用方法 (1) DSP复位对时钟发生器的影响 在DSP复位期间和复位后,DPLL工作于旁路模式,此时的分频 次数(BYPASS_DIV)由CLKMD管脚上的电平确定,从而确定了它的输
出时钟频率。
若CLKMD管脚为低电平,则BYPASS_DIV=00,CLKOUT等于CLKIN。
第二章 DSP芯片结构和CPU外围电路
地址流程单元结构图 3、地址流程单元(A Unit) 功能和组成: 产生读写数 据空间的地址。 由数据地址 产生电路(DAGEN),16比特 的算术逻辑ALU电路和一组 寄存器构成。 DAGEN 可以根据I单元的立即数和 本A单元的寄存器数据产生 读写数据空间的所有地址。 在间接寻址中,还需要有P 单元来指示采用那种寻址模 式。
第二章 DSP芯片结构和CPU外围电路 A单元16位ALU的功能
能接收I单元数据,又能够和存储器、I/O空间、A单元寄存器、 D单元寄存器和P单元寄存器进行数据交换,完成算术、逻辑、 位操作、移位、测试、旋转等操作。A单元包括的寄存器有下 列4种类型: 1)数据页寄存器(Data Page Register):DPH、DP、(接口数据 页)PDP 2)指针寄存器(Pointers):CDPH、CDP—系数数据、SPH、SP、 SSP—栈、XAR0~XAR7—辅助 3)循环缓冲寄存器(Circular Buffer Registers):BK03、 BK47、 BKC—大小,BSA01、 BSA23、BSA45、BSA67、 BSAC—起始 地址 4)临时寄存器(Temporary Registers):T0~T3
第二章 DSP芯片结构和CPU外围电路 在程序流程单元中,控制和影响程序地址的寄存器有 5类:
1)程序流程寄存器,包括:PC—程序计数器,RETA—返回地 址寄存器,CFCT—控制流程关系寄存器; 2)块重复寄存器,包括:BRC0、BRC1—块重复寄存器0和1、 RSA0、RSA1—块重复起始地址寄存器, REA0、REA1—块重 复结束地址寄存器0和1; 3)单重复寄存器,包括:RPTC—单重复计数器,CSR—计算 单重复寄存器; 4)中断寄存器,包括:IFR0、IFR1(标志),IER0、IER1(使 能),DBIER0、DBIER1(调试中断使能); 5)状态寄存器:ST0_55、 ST1_55、 ST2_55、 ST3_55