当前位置:文档之家 > 第2章F281xDSP控制器总体结构

第2章F281xDSP控制器总体结构

第2章 TMS320F281x DSP控制器总体结构 

本章主要内容:

? DSP引脚及其功能(Pins and Their Function of the DSP)

? DSP的片内硬件资源(DSP On-chip Hardware Resources)

? 存储器扩展外部接口XINTF(External Interface for Memory Extension)

? DSP片内Flash和OTP存储器(DSP On-Chip Flash and OTP Memory)

? 代码安全模块CSM(Code Security Module)

? 时钟与低功耗模式(Clock and Low Power Modes)

? 看门狗定时器(Watchdog Timer, WDT)

? 32位CPU定时器(32-bit CPU Timers)

? 通用输入/输出GPIO(General Purpose Input/Output)

? 片内外设寄存器(On-chip Peripheral Registers)

? 外设中断扩展PIE(Peripheral Interrupt Extension)

2.1 DSP引脚及其功能

图2-1为TMS320F2812的176引脚PGF LQFP(Low-Profile Quad Flatpack)封装图。图2-2为TMS320F2810的128引脚PBK LQFP封装图。还有一种为179引脚GHH球形网格阵列(Ball Grid Array, BGA)封装。

第2章F281xDSP控制器总体结构

图2-1 TMS320F2812 的176引脚PGF LQFP封装图

第2章F281xDSP控制器总体结构

图2-2 TMS320F2810 的128引脚PBK LQFP封装图

这些引脚按功能分类如下:

(1) XINTF (External Interface)信号: 地址(19位)/数据(16位)/及存储器控制信号引脚。 

(2) JTAG仿真测试及其他(振荡器、复位)引脚。

(3) A/D转换器引脚。

(4) 电源引脚。

(5) GPIOA、GPIOD或事件管理器A(EVA)引脚。

(6) GPIOB 、GPIOD或事件管理器B(EVB)引脚。

(7) 通信模块(SPI/SCI/CAN/McBSP)或GPIOF、GPIOG引脚。

(8) 外部中断或GPIOE引脚。

(9) 通用数字I/O GPIOF或XF输出引脚。

表2-1为F281x DSP引脚定义与功能介绍。所有数字输入引脚都是TTL兼容的, 所有输出都是3.3 V CMOS电平, 不能承受5V电平输入。内部采用100μA(20μA)上拉或

下拉电流。

表2.1 F2812和F2810的引脚列表引脚序号

引脚名称

179引脚

GHH 176引脚

PGF

128引脚

PBK

I/O/Z PU/PD 功能描述

(1) XINTF信号(限于F2812)

XA[18] D7 158 —O/Z —

XA[17] B7 156 —O/Z —

XA[16] A8 152 —O/Z —

XA[15] B9 148 —O/Z —

XA[14] A10 144 —O/Z —

XA[13] E10 141 —O/Z —

XA[12] C11 138 —O/Z —

XA[11] A14 132 —O/Z —

XA[10] C12 130 —O/Z —

XA[9] D14 125 —O/Z —

XA[8] E12 121 —O/Z —

XA[7] F12 118 —O/Z —

XA[6] G14 111 —O/Z —

XA[5] H13 108 —O/Z —

XA[4] J12 103 —O/Z —

XA[3] M11 85 —O/Z —

XA[2] N10 80 —O/Z —

XA[1] M2 43 —O/Z —

XA[0] G5 18 —O/Z —

19位XINTF地址总线

XD[15] A9 147 —I/O/Z PU

XD[14] B11 139 —I/O/Z PU

XD[13] J10 97 —I/O/Z PU

XD[12] L14 96 —I/O/Z PU

XD[11] N9 74 —I/O/Z PU

XD[10] L9 73 —I/O/Z PU

XD[9] M8 68 —I/O/Z PU

XD[8] P7 65 —I/O/Z PU

XD[7] L5 54 —I/O/Z PU

XD[6] L3 39 —I/O/Z PU

XD[5] J5 36 —I/O/Z PU

XD[4] K3 33 —I/O/Z PU

XD[3] J3 30 —I/O/Z PU

XD[2] H5 27 —I/O/Z PU

XD[1] H3 24 —I/O/Z PU

XD[0] G3 21 —I/O/Z PU

16位XINTF数据总线

续引脚序号

引脚名称179引脚

GHH 176引脚

PGF

128引脚

PBK

I/O/Z PU/PD 功能描述XINTF信号(限于F2812)

第2章F281xDSP控制器总体结构

续引脚序号

引脚名称179引脚

GHH 176引脚

PGF

128引脚

PBK

I/O/Z PU/PD 功能描述XINTF信号(限于F2812)

第2章F281xDSP控制器总体结构

(2) JTAG以及其他信号

X1/XCLKIN K9 77 58 I 晶体振荡器输入。该引脚也可以用来提供外部时钟。C28x可以使用外部时钟源,该时钟源通过X1/XCLKIN引脚提供适当等级的电压。注:引脚上的电压是1.8V(或1.9V)的内核数字信号电压,而不是3.3V 的I/O端口电压。可以使用钳位二极管来保证时钟信号在逻辑高时不超过1.8V(或1.9V),或直接使用1.8V的振荡器

X2 M9 76 57 O 

晶体振荡器输出。也可以与X1/XCLKIN

引脚一起接外部无源晶振。

续引脚序号

引脚名称

179引脚

GHH 176引脚

PGF

128引脚

PBK

I/O/Z PU/PD 功能描述

第2章F281xDSP控制器总体结构

引脚序号

I/O/Z PU/PD 功能描述

引脚名称

179引脚GHH 176引脚PGF 128引脚PBK

第2章F281xDSP控制器总体结构

ADCINA7 B5 167 119 I —

ADCINA6 D5 168 120 I —

ADCINA5 E5 169 121 I —

ADCINA4 A4 170 122 I —

8通道模拟输入ADCINA3 B4 171 123 I —

ADCINA2 C4 172 124 I —

ADCINA1 D4 173 125 I —

ADCINA0 A3 174 126 I —

ADCINB7 F5 9 9 I —

ADCINB6 D1 8 8 I —

ADCINB5 D2 7 7 I —

ADCINB4 D3 6 6 I —

8通道模拟信号输入ADCINB3 C1 5 5 I —

ADCINB2 B1 4 4 I —

ADCINB1 C3 3 3 I —

ADCINB0 C2 2 2 I —

续引脚序号

引脚名称

179引脚

GHH 176引脚

PGF

128引脚

PBK

I/O/Z PU/PD 功能描述模数转换输入信号

ADCREFP E2 11 11 O —模数转换参考电压源输出,2.0V。要求与模拟地之间有一个10μF旁路电容

ADCREFM E4 10 10 O —模数转换参考电压源输出,1.0V。要求与模拟地之间有一个10μF旁路电容

ADCRESEXT F2 16 16 O —模数转换外部电流偏置电阻(24.9kO)

ADCBGREFIN E6 164 116 I —预留的测试引脚。必须悬空AVSSREFBG E3 12 12 I —模数转换模拟地AVDDREFBG E1 13 13 I —模数转换模拟电源(3.3V) ADCLO B3 175 127 I —模拟输入的公共低端V SSA1F3 15 15 I —模数转换模拟地

V SSA2C5 165 117 I —模数转换模拟地

V DDA1F4 14 14 I —模数转换模拟3.3V供电电源V DDA2A5 166 118 I —模数转换模拟3.3V供电电源V SS1C6 163 115 I —模数转换数字地

V DD1A6 162 114 I —模数转换数字1.8V供电电源V DDAIO B2 1 1 I — 3.3V模数I/O电源

V SSAIO A2 176 128 I —模数I/O地

(4) 电源信号

V DD H1 23 20 ——

V DD L1 37 29 ——

V DD P5 56 42 ——

V DD P9 75 56 ——

V DD P12 —63 ——

V DD K12 100 74 ——

V DD G12 112 82 ——

V DD C14 128 94 ——

V DD B10 143 102 ——

V DD C8 154 110 ——

V SS G4 19 17 ——

1.8V或1.9V内核电源

V SS K1 32 26 ——

V SS L2 38 30 ——

V SS P4 52 39 ——

V SS K6 58 ———

内核以及数字I/O地

续引脚序号

引脚名称

179引脚

GHH 176引脚

PGF

128引脚

PBK

I/O/Z PU/PD 功能描述电源信号

V SS P8 70 53 ——

V SS M10 78 59 ——

V SS L11 86 62 ——

V SS K13 99 73 ——

V SS J14 105 ———

V SS G13 113 ———

V SS E14 120 88 ——

V SS B14 129 95 ——

V SS D10 142 ———

V SS C10 —103 ——

V SS B8 153 109 ——

内核以及数字I/O地

V DDIO J4 31 25 ——

V DDIO L7 64 49 ——

V DDIO L10 81 ———

V DDIO N14 ————

V DDIO G11 114 83 ——

V DDIO E9 145 104 ——

3.3V I/O数字电源V DD3VFL N8 69 52 —— 3.3V Flash内核电源

引脚序号

GPIO 外设模块信号179引脚

GHH 176引脚

PGF

128引脚

PBK

I/O/Z PU/PD 引脚说明GPIOA/EVA信号

GPIOA0 PWM1(O) M12 92 68 I/O/Z PU GPIO/PWM1输出GPIOA1 PWM2(O) M14 93 69 I/O/Z PU GPIO/PWM2输出GPIOA2 PWM3(O) L12 94 70 I/O/Z PU GPIO/PWM3输出GPIOA3 PWM4(O) L13 95 71 I/O/Z PU GPIO/PWM4输出GPIOA4 PWM5(O) K11 98 72 I/O/Z PU GPIO/PWM5输出GPIOA5 PWM6(O) K14 101 75 I/O/Z PU GPIO/PWM6输出GPIOA6 T1PWM_T1CMP(I) J11 102 76 I/O/Z PU GPIO/定时器1输出GPIOA7 T2PWM_T2CMP(I) J13 104 77 I/O/Z PU GPIO/定时器2输出GPIOA8 CAP1_QEP1(I)H10 106 78 I/O/Z PU GPIO/捕获1输入GPIOA9 CAP2_QEP2(I)H11 107 79 I/O/Z PU GPIO/捕获2输入GPIOA10 CAP3_QEPI13(I) H12 109 80 I/O/Z PU GPIO/捕获3输入

续引脚序号

GPIO 外设模块信号179引脚

GHH 176引

脚PGF

128引脚

PBK

I/O/Z PU/PD 引脚说明

第2章F281xDSP控制器总体结构

第2章F281xDSP控制器总体结构

第2章F281xDSP控制器总体结构

第2章F281xDSP控制器总体结构

第2章F281xDSP控制器总体结构

引脚序号

GPIO

外设模块信号

179引脚 GHH 176引脚PGF 128引脚 PBK

I/O/Z

PU/PD

引脚说明

GPIOF/SPI 信号 GPIOF0 SPISIMOA(O) M1 40 31 I/O/Z — GPIO/SPI 从输入、主输出 GPIOF1 SPISOMIA(I) N1 41 32 I/O/Z — GPIO/SPI 从输出、主输入 GPIOF2 SPICLKA(I/O) K2 34 27 I/O/Z — GPIO/SPI 时钟

GPIOF3 SPISTEA(I/O) K4 35 28 I/O/Z — GPIO/SPI 从发送使能 GPIOF/SCI-A 信号

GPIOF4 SCITXDA(O) C7 155 111 I/O/Z PU GPIO/SCI 异步串行接口发送数据

GPIOF5 SCIRXDA(I) A7 157

112

I/O/Z

PU GPIO/SCI 异步串行接口接收数据

GPIOF/CAN 接口信号 GPIOF6 CANTXA(O) N12 87 64 I/O/Z PU GPIO/eCAN 发送数据 GPIOF7 CANRXA(I) N13 89 65 I/O/Z

PU GPIO/eCAN 接收数据 GPIOF/McBSP 信号 GPIOF8 MCLKXA(I/O) J1 28 23 I/O/Z PU GPIO/发送时钟 GPIOF9 MCLKRA(I/O) H2 25 21 I/O/Z PU GPIO/接收时钟

GPIOF10 MFSXA(I/O) H4 26 22 I/O/Z PU GPIO/发送同步帧 GPIOF11 MFSRA(I/O) J2 29 24 I/O/Z PU GPIO/接收同步帧 GPIOF12 MDXA(O) G1 22 19 I/O/Z — GPIO/发送串行数据 GPIOF13

MDRA(I)

G2

20 18 I/O/Z PU

GPIO/接收串行数据

第2章F281xDSP控制器总体结构

GPIOG4 SCITXDB(O) P14 90 66 I/O/Z PU

GPIO/SCI 异步串行口发送数据 GPIOG5 SCIRXDB(I) M13

91 67 I/O/Z

PU

GPIO/SCI 异步串行口接收数据

注:I —输入;O —输出;Z —高阻态;PU —引脚内部有上拉(Pull up)功能;PD(Pull down) —引脚内部有下拉功能。

表2-1中XINTF 、INTA T1TRIP_PDP 、TDO 、XCLKOUT 、XF 、EMU0和EMU1引脚的输出灌电流和拉电流都是8mA 。其他引脚的输出缓冲器驱动能力的典型值是4mA 。

TMS320F2812有外部存储器接口XINTF ,而TMS320F2810没有。除了这两种常用的型号以外,TMS320C28x 系列还有许多其它型号。例如TMS320C2812和TMS320C2810,型号中带“C ”(C 系列)表示DSP 不含Flash 存储器,仅含只读存储器ROM 。型号中带“F ”(F 系列)型号的Flash 存储器可以反复擦写、编程,在开发阶段用起来比较方便。而C 系列芯片,需要芯片生产厂商固化程序,成本低,适用于批量生产阶段。

TI 公司还推出了F2808、F2806、F2801等型号,其内部结构与F2812类似,但引脚数、时钟频率、内部资源有所降低,以图降低成本。它们的内部资源情况如表2-2所示。本书主要以F2812、F2810为例,介绍TMS320C28x 系列DSP 控制器。

表2-2 C28x系列部分DSP芯片内部资源

第2章F281xDSP控制器总体结构

2.2 DSP的片内硬件资源

TMS320F281x DSP控制器简化功能框图如图2-3所示。DSP控制器与单片机(即微控制器)一样,也是由CPU、片内存储器、片内外设(接口电路)等组成的。

第2章F281xDSP控制器总体结构

图2-3 F281x DSP的简化功能框图

图2-4为F2812/2810 DSP的功能框图。对该图说明如下:

(1) L0、L1、Flash和OTP存储器块受代码安全模块(CSM)的保护。

(2) 96个PIE中断中,实际只用了45个。

(3) XINTF仅2812器件才有。

(4) 在C281x器件中,OTP被1K×16的ROM代替。

图2-5为F2812/C2812 DSP的存储器映射图。对该图说明如下:

(1) 根据寄存器XINTCNF2中的MC

MP/位的状态,Boot ROM和Zone 7(区7)存储器映射只能有一个有效。

(2) 外设帧(Peripheral Frame, PF)0、1、2的存储器只被映射到数据存储器,用户程序

不能在程序存储空间访问这些存储器。

(3) Protected存储空间(PF1, PF2,XINTF Zone1)指写之后的读操作不按流水线顺序进

行而是被保护起来。

(4) Zone0和Zone1共享同一个芯片选择引脚,Zone6和Zone7也是一样。因为这些

空间是镜像重合的。

图2-6为F2810/C2810 DSP的存储器映射图。注意2810无外部存储器接口XINTF,即无外部总线。

不论是2812还是2810,“低64K”的存储器地址范围映射到24x的数据空间;“高64K”的存储器地址范围映射到24x的程序空间。24x兼容的代码只能在“高64K”存储器中执行,因此只有最顶部的32K(0x3F 0000~0x3F 7FFF)的Flash/ROM和H0 SARAM可以用来运行24x兼容的代码(如果标志位MC

MP/=0)。在2812中,如果MC

MP/=1,则代码可以在XINTF的Zone7区执行。

XINTF由5个独立的存储器区(Zone)构成,选择Zone0(区0)、Zone1区由

引脚决定;选择Zone6、Zone7区由XZCS6AND7引脚决定。每个区都有自己的等待状态,可以采样或者忽略外部准备好(READY)信号。这样可使DSP和外部存储器的连接简单、方便。

外设帧1、2和XINTF Zone1组在一起,可以被“写/读外设块保护”。这里“保护”模式确保了这些块的写操作。由于281x流水线设计的原因,如果在写操作后立即跟着读不同的存储器地址,将使CPU存储器总线的顺序改变,这可能带来问题。281x的CPU支持块保护模式,即一个区域块可以被保护起来,确保了写操作的进行。缺点是带来了额外的处理时间。该模式是可编程的,默认状态是保护被选择的区域。

F2812中,若复位时标志MC

MP/=1,则DSP选择微处理器(Microprocessor)模式,Zone 7映射到高存储器空间,向量表从外部Zone 7空间读取,Boot ROM被屏蔽;若复位时,MC

MP/=0,则DSP选择微计算机/微控制器(Microcomputer/Microcontroller)模式,Zone 7被屏蔽,向量表从Boot ROM中读取。

复位时MC

MP/的状态存在于XINTCNF2寄存器中,用户可以借助软件修改,从而控制Boot ROM和Zone 7的映射。MC

MP/不影响其他存储器区间。F2812的XINTF不支持I/O空间,即将片外I/O与存储器统一编地址。

2812的Flash存储器的地址范围是0x3D 8000~0x3F 7FFF(128K)。2810的Flash存储器的地址范围是0x3E 8000~0x3F 7FFF(64K)。

281x DSP有多种引导(Boot)模式,常用的引导模式是Flash模式。这时引导程序跳转到Flash存储器的0x3F 7FF6地址,开始执行此处的用户程序。用户需在0x3F 7FF6地址放好一条跳转指令,使程序继续跳转到其他地方执行。 

第2章F281xDSP控制器总体结构

图2-4 F281x DSP的功能框图

第2章F281xDSP控制器总体结构

图2-5 2812 DSP的存储器映射

第2章F281xDSP控制器总体结构

图2-6 2810 DSP的存储器映射

2812 DSP 具有4M字存储空间,包括数据、程序空间。

片内存储器包括1KW的SARAM M0(00 0000~00 03FFH)、1KW的SARAM M1(00 0400-00 07FFH)、2KW片内外设PF0(00 0800-00 0CFFH)、256W的中断向量PIE Vector-RAM (D00-DFFH)、8KW的片内外设PF1、PF1(00 6000-00 7FFFH)、4KW的SARAM L0 (00 8000-00 8FFFH)、4KW的SARAM L1 (00 9000-00 9FFFH)、1KW的OTP (3D 7800-3D 7BFFH)、128KW 的Flash (3D 8000-3F 7FFFH)、8KW的SARAM H0(3F 8000-3F BFFFH)、4KW的Boot ROM (3F F000-3F FFFFH)。

外部存储器及I/O可以扩展1M+32K字。XINTF的Zone0和Zone1各8K的存储空间,Zone2和Zone6各512K的存储空间,Zone7的16K存储空间,具体地址如图2-5所示。

2.3 存储器扩展外部接口XINTF

典型的DSP应用系统多采用最小系统,即系统由一个F2810 DSP芯片加上相应的电源、时钟、复位、JTAG电路及应用电路构成,这种系统也称为单片系统方案(Single Chip Solution)。在程序调试过程中,可以先将程序放入到H0 SARAM、L0 SRAM和L1 SARAM 中运行仿真调试,对于程序长度小于16K时比较方便。调试完成后,再将程序放入Flash 存储器中运行。

对于较复杂的DSP应用系统,程序可能较长或需要扩展一些外部存储器或外部接口如D/A转换芯片、LCD驱动等,这时需要采用外部接口(External Interface ,XINTF)。外部存储器或接口访问速度等可能差别较大,所以XINTF提供了时序的延长或加等待机制来确保用户通过软件配置实现对这些存储器或外设的正确接口。图2-7给出了与XINTF相关的外部引脚和存储器地址空间分配。

第2章F281xDSP控制器总体结构

图2-7 外部接口(XINTF)框图

XINTF的外部引脚包括16位的外部数据总线XD(15:0),19位的外部地址总线XA(18:0)以及读写访问控制信号XWE、XRD、W

XR/等基本的控制信号。XINTF提供5个外部存储器扩展地址空间Zone0、Zone1、Zone2、Zone6和Zone7。XINTF为每个区域

设置一个片选信号,当DSP访问每个空间内的任意地址单元时,对应的片选信号会有效(低电平)。不过在对外的引脚中,Zone0和Zone1的片选被组合成公共的XZCS0AND1,Zone6和Zone7的片选被组合为公共的XZCS6AND7,Zone2的片选则单独输出为XZCS2。XINTF还提供两个控制引脚XHOLD和XHOLDA支持直接存储器存取(DMA)的功能。XREADY是低速存储器或外设对XINTF发出的访问时序匹配信号。由于区域Zone7与片内的Boot ROM占用相同的地址空间,因此MC

XMP/引脚用于在Zone7和片内Boot ROM之间进行选择,当=1,Zone7被映射且能够被CPU访问。

XINTF提供两种延时方式实现与慢速外部存储器的接口:一种是通过软件对并行访问时序配置等待状态来实现延时;另一种是外部存储器通过控制XREADY信号来实现对访问时序的匹配。XINTF还为其他处理器或控制器提供DMA功能,F2812可以通过XINTF释放总线,从而开放本系统的存储器,使其能够被其他处理器或控制器通过总线直接访问。对访问时序进行配置依赖于F2812的工作频率SYSCLKOUT和XINTF的定时时钟XTIMCLK。图2-8给出了两种时钟的关系。

第2章F281xDSP控制器总体结构

图2-8时钟XTIMCLK和SYSCLKOUT的关系示意图

从图2-8中可以看到,XINTF模块使用两种时钟:内部定时时钟XTIMCLK和外部输出时钟XCLKOUT。通过对XINTF配置寄存器XINTCNF2的XTIMCLK位的编程,可以将XTIMCLK配置为与SYSCLKOUT相同,或者配置为其二分频SYSCLKOUT/2。XINTF的所有对外访问时序都是从XINTF的外部时钟输出XCLKOUT的上升沿开始的,而XCLKOUT可被配置为内部定时时钟XTIMCLK相同,或者是其二分频XTIMCLK/2,这可通过对寄存器XINTCNF2的CLKMODE位进行编程来实现。

XINTF对外访问时序被分成三个阶段,即起始(Lead)阶段、激活(Active)阶段和收尾(Trail)阶段。XINTF对不同的地址区域进行访问时,可以通过对应各区的XTIMING寄存器对访问时序加等待状态进行延时,等待状态可配置为若干个XTIMCLK的周期数。

(1) 起始阶段

在此阶段,被访问区域的片选信号变为低电平,对外访问地址被放置在地址总线

XA(18:0)上。读时序和写时序的建立阶段,其总周期数可以通过XTIMING寄存器的