第二章DSP硬件结构
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
17
17
XM
YM
Multiplier(17*17)
FRCT
Fract/int
XA Adder(40)
40 From accumulator A
40
From accumulator B
Legend:
A Accumulator A
B Accumulator B
C CB data bus
D DB data bus
指数编码器
指数编码器用于支持单周期指令 EXP的专用硬件。在EXP指令中, 累加器中的指数值能以二进制补码 的形式存储在T寄存器中,范围为 bit-8至31。指数值定义为前面的 冗余位数减8的差值,即累加器中 为消除非有效符号位所需移动的位 数。当累加器中的值超过了32bits ,该操作将产生负值。
AH
累加器A高字(31 -16比特)
1A
BRC
块重复计数器
A
AG
累加器A保护位 (39-32比特)
1B RSA 块重复开始地址 1C REA 块重复结束地址
B
BL
累加器B低字(15 -0比特)
1D
PMS T
状态寄存器
C
BH
累加器B高字(31 -16比特)
1E
XPC PC扩展寄存器
D
BG
累加器B保护位 (39-32比特)
Sign control
SXM
Barrel shifter (-16~31)
40 MSW/LSM Write select
16 EB15-EB0
T:-16 through 31 range
ASM(4-0):-16 through 15 range
Instruction register immediate:-16 Through 15 or 0 through 15 range
写地址加载EAB
P取预指 F取指
用读取 到的指令 加载PB
D译码 A寻址
R读数 X执行
如果需要,用数据1 读地址加载DAB
如果需要用数据2读 地址加载CAB
修正辅助寄存器和 堆栈指针
执行指令 用写数据
加载EB
三、中央处理单元
指数编码器
2个40位 累加器
40位算术逻辑 运算单元ALU 移位-16~30位的
√ √
√
√
√
√
√
√
√
√
√
√ √
表、各种寻址方式所用到的总线
二、流水线
CLK OUT1
取指 译码 执行
N N-1 N-2
N+1 N
N-1
N+2 N+1
N
图、 三级流水线操作
用PC中内容 加载PAB
用PB的内 容加载IR 对IR的内容 译码
读数据1,加载DB 读数据2,加载CB 如果需要,将数据3
桶形移位寄存器
乘法器/ 加法器单元
比较、选择和存储单元
3、1 算术逻辑运算单元
来自数据总线CB的 数据存储器操作数
累加器A T寄存器 中的数据 中的数据
累加器B 中的数据
ALU的输出为40位 被送到累加器A或B
来自数据总线DB的 数据存储器操作数
移位寄存 器的输出
溢出处理 双精度 进位
累加器A
39-32
乘法饱和方式位
存储饱和位
微处理器/微型计算机工作方式位
CLKOUT时钟输出关断位 地址可见位
处理器方式状态寄存器PMST
2.7 存储器结构
地址 程序存储空间
0000H 0页:
OVLY=1 保留
007FH 0080H
OVLY=0 外部存储
OVLY=1 片上DARAM OVLY=0 外部存储
3FFFH 4000H
CPU
比较器
图、TMS320C54x DSP的内部硬件结构图
一、总线结构
读/写方式
地址总线
PAB 程序读 √ 程序写 √ 单数据读 双数据读 长数据读 单数据写 数据读/数
据写 双数据读/ √
系数读 外设读 外设写
CAB DAB EAB
√
√
√
√(hw)√(lw)
√
√
√
√
√
√ √
程序总线 PB
√
√
数据总线 CB DB EB
串口数据接收寄存器 串口数据发送寄存器
串口控制寄存器 保留
ABU0发送地址寄存器 ABU0发送缓冲大小寄
存器 ABU0接收地址寄存器 ABU0接收缓冲大小寄
存器
保留
时钟方式寄存器
保留
109 A19
110 NC
111 VSS
112 DVDD
113 D6
D8 D7
116 D9
117 D10
118 D11
P PB program bus
0T
T register
AB
MUX
OVM YA
OVA/OVB
Zero detect Round SAT
ZA/ZB
40 To accumulator A/B
图、乘法器/加法器单元
比较,选择和存储单元(CSSU)
比较、选择和存储单元 ( CSSU ) 完 成 累 加 器 的 高 位字和低位字之间的最大值 比较,即选择累加器中较大 的字并存储在数据存储器中, 改变状态寄存器ST0中的测 试/控制位和传送寄存器 ( TRN ) 的 值 。 同 时 , CSSU 利 用 优 化 的 片 内 硬 件 促进Viterbi型蝶形运算。
0 IMR 中断屏蔽寄存器 E
T
乘法寄存器
1 IFR 中断标志寄存器 F TRN 状态转移寄存器
2-5 6 ST0
测试保留 状态寄存器0
10- AR0- 辅助寄存器ARn
17 AR7
n=0~7
7 ST1
状态寄存器1
18 SP
堆栈指针
8
AL
累加器A低字(15 -0比特)
19
BK
循环缓存区大小 寄存器
9
复位smx0中断向量指针微处理器微型计算机工作方式位ram重复占位位地址可见位数据rom位clkout时钟输出关断位乘法饱和方式位存储饱和位处理器方式状态寄存器pmst27存储器结构0000h地址程序存储空间ovly1保留ovly0外部存储007fh0080hovly1片上daramovly0外部存储外部存3fffh4000hff7fhff80hffffh中断矢量表外部存储器mpmc1微处理器模式0000h地址程序存储空间ovly1保留ovly0外部存储007fh0080hovly1片上daramovly0外部存储外部存3fffh4000hff7fhff80hffffh中断矢量存储器mpmc0微计算机模式efffhf000h片上rom4kx16位5402扩展程序存储器地址数据存储空间0000h005fh0060h存储器映射寄存器暂存寄存器007fh0080h片上daram16kx16位3fffh4000h外部存储器efffhf000hdrom1片上romdrom0片外存储器drom1保留drom0片外存储器feffhff00hffffhdrom控制的数据存储空间0000h0020h0040h0060h0080h0100h0180h0200h0280h0300h0380h存储器映象cpu寄存器存储器映象外设寄存器暂存寄存器dp0daramdp1daramdp2daramdp3daramdp4daramdp5daramdp6daramdp7daram块结构trn状态转移寄存器1017ar0ar7辅助寄存器arn18sp堆栈指针19bk循环缓存区大小寄存器1abrc块重复计数器1brsa块重复开始地址1crea块重复结束地址1dpms状态寄存器1expcpc扩展寄存器1e1fimr中断屏蔽寄存器ifr中断标志寄存器25st0状态寄存器0st1状态寄存器1al累加器a低字150比特ah累加器a高字3116比特ag累加器a保护位3932比特bl累加器b低字150比特bh累加器b高字3116比特bg累加器b保护位3932比特地址cpu寄存器名称地址cpu寄存器名称表特殊功能寄存器i20bdrr带缓存串口0数据接收寄存器21bdxr带缓存串口0数据发送寄存器22bspc23bspce0带缓存串口0控制扩展寄存器24tim定时器计数器25prd定时器周期寄存器26tcr定时器控制寄存器27保留28swwsr等待状态产生寄存29b
37 NC 38 NC 39 HCNTL0 40 VSS 41 BCCLKR0 42 BCCLKR1 43 BFSR0 44 BFSR1 45 BDR0 46 HCNTL1 47 BDR1 48 BCLKX0 49 BCLKX1 50 VSS 51 HINT/TOUR1 52 CVDD 53 BFSX0 54 BFSX1 55 HRDY 56 DVDD 57 VSS 58 HD0 59 BDX0 60 BDX1 61 IACK 62 HBIL 63 NMI 64 INT0 65 INT1 66 INT2 67 INT3 68 CVDD 69 HD1 70 VSS 71 NC 72 NC
CV 电压为+1.8V(16、68、91、125、142) NC 15
CVDD 16
HCS
17
HR/W 18
READY 19
DV 电压为+3.3V(4、33、56、75、112、130) PS
DS
20 21
IS 22
R/W 23
V 接地(3、14、34、40、50、57、 MSTRB 24
IOSTRB 25
存储器映象CPU寄存器
存储器映象外设寄存器
暂存寄存器(DP=0) DARAM (DP=1) DARAM (DP=2) DARAM (DP=3) DARAM (DP=4) DARAM (DP=5) DARAM (DP=6) DARAM (DP=7)
DARAM块结构
地址
CPU寄存器名称 地 址
CPU寄存器名称
பைடு நூலகம்
VSS 34
75 DVDD
NC 35
74 NC
NC 36
73 NC
TI DSP上有5类典型电源引脚: 1、CPU核电源引脚 2、I/O电源引脚 3、PLL电路引脚 4、Flash编程电源引脚(仅C2000系列DSP有) 5、模拟电源引脚(仅C2000系列DSP有) 将DSP上的所有电源引脚连到各自的供电电源上
状态寄存器ST0
块重复作标志位 XF引脚状态位 中断方式位
符号位扩展方式位 小数方式位 累加器移位方式位
修正方式位
保持方式位
双16位/双精度算术运算方式位
直接寻址编辑方式位
溢出方式位
状态寄存器ST1
SSBX SXM ;置位SMX=1 RSBX SXM ;复位SMX=0
中断向量指针
RAM重复占位位 数据ROM位
125 124
130 129
135 134
140 139
NC 1
NC 2 VSS 3
DVDD 4
1、电源引脚:电源电压分为两级, A10
HD7
5 6
提供CPU核使用的电源电压CV 及 A11 7
A12 8
A13 9
提供片上外设使用的电源电压DV A14 10
A15 11
NC 12
HAS 13
VSS 14
每个电源与地引脚都必须接,不能悬空。
每个电源引脚附近放置10~100nF旁路瓷片电 容,以平滑电源的波动。旁路电容起电荷池的 作用,以减少电源上的噪声。在PCB四周均匀 分布一些4.7~10uF大电容。
1E -1F
-
保留
表、特殊功能寄存器I
地址
CPU寄存器名称 地 址
CPU寄存器名称
20
21
22
23 24 25 26 27 28
29 2A~2F
BDRR 0
BDXR 0
BSPC 0
带缓存串口0数据接 收寄存器
带缓存串口0数据发 送寄存器
带缓存串口0控制寄 存器
30 31 32 33-37 38
DRR1 DXR1 SPC1
第二章 TMS320C45x DSP硬件结构 主讲人:陈德宏
控制界面
系统控制
PAB PB CAB CB DAB DB EAB EB
乘法器 加法器
程序地址控制
数据地址控制
特殊功能 寄存器
程序/数据 存储器 串行口 并行口 定时器/ 计数器 中断
算术逻 辑运算
桶形 移位器
存储 控制 界面
外设 控制 界面
70、76、93、106、111、128) MSC 26 XF 27
HOLDA 28
IAO
29
HOLD 30
BIO
31
DD DD
SS
108
107
106
105
104
103
102
DD
101
100
DD
99 98
97
96
95
94
93
92 91 90 89 88 87
86
85
84
83
82 81 80 79 78
F000H 片上ROM 4KX16位
FF7FH FF80H 中断矢量
表(片上 FFFFH 存储器)
MP/MC=0微计算机模式
‘5402扩展程序存储器
地址 数据存储空间
0000H 005FH
存储器映 射寄存器
0060H 暂存寄存器
007FH
0080H 片上DARAM 3FFFH 16KX16位
4000H 外部存储器
HD4 D12
121 D13
122 D14
123 D15
CVDD HD5
126 NC
127 HDS1
128 VSS
DVDD HDS2
131 A0
132 A1
133 A2
HD6 A3
136 A4
137 A5
138 A6
A8 A7
141 A9
142 CVDD
143 NC
144 NC
115 114
120 119
CPU状态和控制寄存器
‘C54x有三个状态和控制寄存器,它们分别为:状态寄存 器ST0,状态寄存器ST1和处理器方式状态寄存器PMST。 ST0和ST1包括了各种条件和方式的状态,PMST包括了 存储器配置状态和控制信息。
辅助寄存器指针 进位位 累加器B的溢出标志
测试/控制标志位
数据存储器页指针
累加器A的溢出标志
- AXR0
BSPC 带缓存串口0控制扩 39
E0
展寄存器
TIM
定时器计数器
3A
BKX0 ARR0
PRD TCR
- SWW
SR
BSCR
-
定时器周期寄存器
定时器控制寄存器
保留
等待状态产生寄存 器
Bank-switching控 制寄存器
保留
3B 3C-
57
58
59- 5F
BKR0
- CLKM
D
-
表、特殊功能寄存器II
EFFFH
F000H DROM=1 片上ROM
DROM=0 FEFFH 片外存储器
FF00H DROM=1 保留
DROM=0 FFFFH 片外存储器
DROM控制的数据存储空间
0000H 0020H
0040H 0060H 0080H 0100H 0180H 0200H 0280H 0300H 0380H