第五章 TMS320C5x芯片的硬件结构
合集下载
第五章(4) TMS320C5x芯片的外部接口
HPI 访问延迟 :
HPI的数据访问时间包括外部的数据传输和内 部的数据传输时间: 外部的时间延迟包括主机访问时序安排,数据 和控制信号的缓冲时间等。 内部的延迟时间根据访问类型和时钟频率不同 是多样化的。 HPI的准确的延迟时间需要同时考虑内部和外 部的延迟。
HPI-8 内部访问延迟:
HPI-8 的8位外部接口支持C54的16位数据。 连续字节的数据传输自动组成16位字。 当主机设备和HPI-8寄存器之间传输数据时, HPI-8 控制逻辑自动执行到内部RAM的数据 访问,完成数据传输。 C54 DSP 和 主机都可以访问全部的片内RAM。
HPI(Host Port Interface)
HPI和DMA共享DMA总线的访问时间是最多的,因为 同一时间内,只有一种进程可以控制总线。 当HPI访问和DMA访问同时需要控制总线时,内部 的总线仲裁逻辑让HPI具有优先控制权。 如果HPI请求总线时,DMA正在占用总线,HPI必须 等待DMA进程结束。 因为HPI的访问时间是多种多样的,主机应当经常 检测HRDY信号来调整总线的访问周期,以适应HPI 接口的数据传输速率。
典型的HPI-8 访问时序图:
工作方式:
主机首先驱动HCNTL0/1, HR/W, HBIL, 和 HCS, 指明 传输类型,寄存器位置,读或写操作等。 如果使用了地址锁存信号(ALE),主机发出地址锁存 信号到 HAS ,然后发出数据选通信号。 如果HRDY 是低电平,它在结束了上一个周期的内部数 据转移后变为高电平,允许外部的数据传输。 外部HPI周期结束后,HRDY 变为低电平,进行内部的 数据转移,直到内部数据转移结束。 如果HCS是高电平,HRDY 将总是高电平。
讲稿TMS320C55x DSP 硬件部分
江苏技术师范学院 电气信息工程学院
TMS320VC5509A 功能概述
江苏技术师范学院 电气信息工程学院
TMS320VC5509A 功能概述
江苏技术师范学院 电气信息工程学院
CPU的结构
江苏技术师范学院 电气信息工程学院
指令集结构与实现要点
• C55x的指令集具有高度并行的结构,从而可以提高代 码的密度,降低每个运算所要求的周期数。
TMS320C55x DSP 硬件部分
江苏技术师范学院 电气信息工程学院
议题
• TMS320C55x 概述 • CPU的结构 • CPU寄存器 • 存储器和I/O空间 • 堆栈操作 • 中断和复位操作 • 寻址模式 • 片上外设
江苏技术师范学院 电气信息工程学院
TMS320C55x 概述
江苏技术师范学院 电气信息工程学院
TI DSP 被前8位 数码相机制造商 中的7个所选用
TI DSP 占VoIP 网关市场的80%
TI DSP 被前10位 无线基站制造商 中的8个所选用
TI DSP 占IP电话 设计的80%
江苏技术师范学院 电气信息工程学院
C55x 性能和优点
性能
32×16-bit指令缓冲队列 两个17 ×17-bit的MAC单元 1个40-bit的ALU 1个40-bit的桶形移位器 1个16-bit的ALU 4个40-bit的累加器 12组独立的总线 用户配置的IDLE域
优点
缓冲可变长度的指令,实现高效的块循环操作 单周期内执行两次MAC操作 执行高精度的算术和逻辑运算 可以将40-bit的结果左移32-bit,或右移32-bit 与主ALU并行,执行简单的算术运算 保持计算结果,降低对存储器传输的要求 并行地为各计算单元提供指令及操作码 改善低活动性时的电源管理
第2章 TMS320C55x 的硬件结构
REA0,REA1 块循环结束地址寄存器0和1
12循环寄存器 RPTC 单循环计数器 CSR 经过计算的单循环寄存器
• 中断寄存器 IFR0, IFR1 中断标志寄存器0和1 IER0, IER1 中断使能寄存器0和1 DBIER0,DBIER1 调试中断使能寄存器0和1
Barrel Shifter Units
Peripherals Bus
2 Timers 8 GPIO X4 PLL DPLL
Peripherals Bus
Peripherals USB
10-bitADC RTC
MMC/SD MemStick
3 McBSPs I2C
Interface Watchdog
号。
12 February 2002
图2-2 指令缓冲单元结构图
13 12 February 2002
14
• 程序流寄存器
PC 程序计数器
RETA 返回地址寄存器
CFCT 控制流关系寄存器
• 块循环寄存器
BRC0,BRC1 块循环计数器0和1
BRS1
BRC1存储寄存器
RSA0,RSA1 块循环起始地址寄存器0和1
2. 存储器接口单元(Memory Interface Unit) 3. 指令缓冲单元 (Instruction Buffer Unit: I Unit ) 4. 程序流单元(Program Flow Unit: P Unit ) 5. 地址数据流单元(Address-Data Flow Unit: A
64字节的指令缓冲队列,能够用作程序Cache, 高效完成块重复操作。
12 February 2002
5
2.1.1 C55x的CPU体系结构
TMS320C55x的硬件结构-20140923
数据写总线 EAB,FAB EB,FB
3
表2-4 地址总线和数据总线的功能
总 线 PAB PB CAB、 DAB CB、DB BAB 宽 度 24 位 32 位 每组 24 位 每组 16 位 24 位 功 能 读程序的地址总线,每次从程序空间读时,传输 24 位地址 读程序的数据总线,从程序存储器传送 4 字节(32 位)的程序代码给 CPU 这两组读数据的地址总线,都传输 24 位地址。DAB 在数据空间或 I/O 空间每读一次时传送一个地址,CAB 在两次读操作里送第二个地址 这两组读数据的数据总线, 都传输 16 位的数值给 CPU。 DB 从数据空间 或 I/O 空间读数据。CB 在读长类型数据或读两次数据时送第二个值 这组读数据的地址总线,在读系数时传输 24 位地址。许多用间接寻址 模式来读系数的指令,都要使用 BAB 总线来查询系数值 这组读数据的数据总线,从内存传送一个 16 位数据值到 CPU。 BB 不和外存连接。BB 传送的数据,由 BAB 完成寻址某些专门的指令, BB 16 位 在一个周期里用间接寻址方式,使用 BB、CB 和 DB 来提供 3 个 16 位 的操作数。经由 BB 获取的操作数,必须存放在一组存储器里,区别于 CB 和 DB 可以访问的存储器组 EAB、FAB EB、FB 每组 24 位 每组 16 位 这两组写数据的地址总线,每组传输 24 位地址。EAB 在向数据空间或 I/O 空间写时传送地址。FAB 在双数据写时,传送第二个地址 这两组写数据的数据总线,每组都从 CPU 读 16 位数据。EB 把数据送 到数据空间或 I/O 空间。 FB 在写长类型数据或双数据写时传送第二个值
Program Bus
E Data Read Buses (B,C,D) A M I PU IU AU DU F D
1-TMS320C54x的硬件结构
20
TMS320C54x的硬件结构
中央处理单元(CPU)
桶形移位器
桶形移位器能把输入的数据进行0到31位的左移和0到16位的右移。
桶形移位器的功能框图
21
TMS320C54x的硬件结构
中央处理单元(CPU)
桶形移位器
桶形移位寄存器的输入可以为: ①DB,取得16位输入数据; ②DB和CB ,取得32位输入数据; ③40位累加器A或B。 桶形移位寄存器的输出连到: ① ALU的一个输入端, ②经过MSW/LSW(最高有效字/最低有效字)写选择单元至EB 总线。
TMS320C54x的硬件结构
TMS320C54x的内部结构和主要特性
TMS320C54x的主要特性
1.CPU 部分 先进的多总线结构(1条程序总线、3条数据总线和4条对应的 地址总线)。 40位算术逻辑运算单元(ALU),包括1个40位桶形移位寄存 器和2个独立的40位累加器。 17位×17位并行乘法器与40位专用加法器相连,用于非流水线 式单周期乘法/累加(MAC)运算。 比较、选择、存储单元(CSSU),用于加法、比较、选择运 算。 指数编码器,是一个支持单周期指令EXP的专用硬件,可以在 单个周期内计算40位累加器中数值的指数。 双地址生成器,包括8个辅助寄存器和2个辅助寄存器算术运算 6 单元(ARAU)。
23
乘法器/加法器单元
乘法器输入: X:T,A, DB0~15 Y:A, DB0~15, CB0~15, PB0~15 乘法器输出:加法器 加法器输入: X:乘法器 Y:A,B, 加法器输出:A,B,0零 乘法器/加法器单元功能框图
12
TMS320C54x的硬件结构
总线结构
(3) 4条地址总线(PAB、CAB、DAB和EAB) 4条地址总线(PAB、CAB、DAB和EAB)用于传送执行指 令所需要的地址。 TMS320C54x可以利用两个辅助寄存器算术运算单元 (ARAU0 和 ARAU1),在每个周期产生两个数据存储器 的地址。 TMS320C54x还有一条访问片内外设的片内双向总线。这条 双向总线通过CPU接口内的总线交换器与DB和EB相连。利 用这条双向总线的访问过程需要2个或更多个周期来读/写, 具体时间取决于外围电路的结构。由此可见,DSP处理系统 中应当尽量避免器件内外大量数据交换,以保证系统高速特 13 性。
TMS320C54x的硬件结构
中央处理单元(CPU)
桶形移位器
桶形移位器能把输入的数据进行0到31位的左移和0到16位的右移。
桶形移位器的功能框图
21
TMS320C54x的硬件结构
中央处理单元(CPU)
桶形移位器
桶形移位寄存器的输入可以为: ①DB,取得16位输入数据; ②DB和CB ,取得32位输入数据; ③40位累加器A或B。 桶形移位寄存器的输出连到: ① ALU的一个输入端, ②经过MSW/LSW(最高有效字/最低有效字)写选择单元至EB 总线。
TMS320C54x的硬件结构
TMS320C54x的内部结构和主要特性
TMS320C54x的主要特性
1.CPU 部分 先进的多总线结构(1条程序总线、3条数据总线和4条对应的 地址总线)。 40位算术逻辑运算单元(ALU),包括1个40位桶形移位寄存 器和2个独立的40位累加器。 17位×17位并行乘法器与40位专用加法器相连,用于非流水线 式单周期乘法/累加(MAC)运算。 比较、选择、存储单元(CSSU),用于加法、比较、选择运 算。 指数编码器,是一个支持单周期指令EXP的专用硬件,可以在 单个周期内计算40位累加器中数值的指数。 双地址生成器,包括8个辅助寄存器和2个辅助寄存器算术运算 6 单元(ARAU)。
23
乘法器/加法器单元
乘法器输入: X:T,A, DB0~15 Y:A, DB0~15, CB0~15, PB0~15 乘法器输出:加法器 加法器输入: X:乘法器 Y:A,B, 加法器输出:A,B,0零 乘法器/加法器单元功能框图
12
TMS320C54x的硬件结构
总线结构
(3) 4条地址总线(PAB、CAB、DAB和EAB) 4条地址总线(PAB、CAB、DAB和EAB)用于传送执行指 令所需要的地址。 TMS320C54x可以利用两个辅助寄存器算术运算单元 (ARAU0 和 ARAU1),在每个周期产生两个数据存储器 的地址。 TMS320C54x还有一条访问片内外设的片内双向总线。这条 双向总线通过CPU接口内的总线交换器与DB和EB相连。利 用这条双向总线的访问过程需要2个或更多个周期来读/写, 具体时间取决于外围电路的结构。由此可见,DSP处理系统 中应当尽量避免器件内外大量数据交换,以保证系统高速特 13 性。
第五章(2) TMS320C5x芯片的外部接口
对串行通讯口的控制是通过对内存映射 寄存器的操作实现的。 串口和CPU的联系是通过中断实现的。
C54系列DSP串口配置表:
串行通讯端口
在C54X的处理器中有四种不同类型串行通讯端口: BSP串口可以工作在自动缓冲方式和无缓冲方式,当工 作在无缓冲方式时,BSP串口和SP串口是相同的 ; TDM串口可以工作在 TDM 模式或 non-TDM 模式。当工 作在non-TDM 模式时,TMD串口和SP串口是相同的; 在所有的C54x DSP 串口中,发送和接收都是双缓冲的 (double-buffered),允许数据包以连续数据流的方 式传送; 对于标准串行通讯口,传输的最大速度CLROUT的1/4。
SOFT and FREE
13.RSRFULL:
接收移位寄存器满指示(read-only) 指示接收的移位寄存器是否溢出。当RSR装 入数据后,DRR中的数据仍未读取,即产生 溢出指示。 RSRFULL 是一个指示位(只读位), RSRFULL = 1时, RSR 是满的。
13.RSRFULL:
串行通讯接口
TMS320C54X串行接口分类(四种): 标准同步串行口 Standard synchronous serial port interface 缓冲串行口 Buffered serial port interface 多通道缓冲串行口 Multichannel buffered serial Port (McBSP) interface 时分多路串行口 Time-division multiplexed serial port interface
下面的任意一种情况都可以清除RSRFULL: 1、 DRR数据被读取; 2、 串口复位;(RRST = 0), 3、 DSP芯片复位;(RS = 0)
第五章(4) TMS320C5x芯片的外部接口
控制管脚(HCNTL0 and HCNTL1)指示访问HPI的哪 一个内部寄存器:
HPI-8 地址寄存器和内存映射:
主机使用 HPIA 寄存器作为片内储存器的指针,通过 HPI接口,主机可以访问全部的片内RAM,这是因为 C54的内存映射地址是唯一的。 全部的片内RAM:程序RAM、数据RAM映射到一个连续 的地址空间,用户不能改变映射的地址空间的位置。
最快的访问是:
l l 读 HPIC 和 HPIA 寄存器 写 HPIC 寄存器(HINT 和 DSPINT 位为0)
这种访问只在主机和内部寄存器之间交换数据, 不需要增加等待周期。 这时HRDY 信号总是保持高电平,因为当上一个 HPI 的数据访问完成时,下一个外部的数据传输 可以马上开始。
并行双向三态(I/O/Z)数据总线。 当HPI被禁止(HDSx OR HCS=1 或EMU1/OFF为0) 时为高阻态。 这些管脚也可用作普通的I/O脚。
控制:
通过HCNTL0/1 输入,主机指明访问 HPI 控制 寄存器(HPIC),HPI 地址寄存器(HPIA)或 HPI 数据寄存器(HPID)(见图)。 由于 C54X 都是16bit字,所以HPI-8 的数据 传输必须由2个连续字节(byte)组成。 HBIL 管脚信号指示目前传输的是第一个字节 (0)或第二个字节(1)。 一个内部的寄存器位决定两个字节如何组成一 个16-bit 字。位外部接口支持C54的16位数据。 连续字节的数据传输自动组成16位字。 当主机设备和HPI-8寄存器之间传输数据时, HPI-8 控制逻辑自动执行到内部RAM的数据 访问,完成数据传输。 C54 DSP 和 主机都可以访问全部的片内RAM。
第2章TMS320C55x 的硬件结构
5
Cycle 5
图2-1 TMS320C55x CPU结构图
6
总线和单元
1. 内部地址总线和数据总线(Internal Address Bus and Data Bus) 2. 存储器接口单元(Memory Interface Unit) 3. 指令缓冲单元 (Instruction Buffer Unit: I Unit ) 4. 程序流单元(Program Flow Unit: P Unit ) 5. 地 址 数 据 流 单 元 (Address-Data Flow Unit: A Unit ) 6. 数据计算单元(Data Computation Unit: D Unit )
22
2.2 中断
2. DSP处理中断的步骤
① 接收中断请求。请求由软件或硬件发出。
② 响应中断请求。对于可屏蔽中断,需要满足若 干条件,才发生响应;而对于不可屏蔽中断, 则立即响应。 ③ 准备执行中断服务程序。
-完成当前正在执行的指令;将进入流水线但还未解码 的指令清除。 -自动保存若干寄存器的值到数据堆栈和系统堆栈。
读数据的数据总线。
9
总线
宽度
功能
BAB
BB EAB、 FAB EB、FB
23-bit
16-bit 每条23bit 每条16bit
读数据的地址总线。用于间接寻 址模式。
读数据的数据总线。 写数据的地址总线。 每组16-bit 写数据的数据总线。
10
2.1.3 指令缓冲单元(I Unit )
1. 指令缓冲队列
– 16M Bytes 的程序存储空间,通过24位地址总线进行访问。程 序空间字节地址范围是0x000000-0xFFFFFF。 – 8M Words 的数据存储空间,通过23位地址总线进行访问。数 据空间字地址(1字=16 位)范围是0x000000-0x7FFFFF。
Cycle 5
图2-1 TMS320C55x CPU结构图
6
总线和单元
1. 内部地址总线和数据总线(Internal Address Bus and Data Bus) 2. 存储器接口单元(Memory Interface Unit) 3. 指令缓冲单元 (Instruction Buffer Unit: I Unit ) 4. 程序流单元(Program Flow Unit: P Unit ) 5. 地 址 数 据 流 单 元 (Address-Data Flow Unit: A Unit ) 6. 数据计算单元(Data Computation Unit: D Unit )
22
2.2 中断
2. DSP处理中断的步骤
① 接收中断请求。请求由软件或硬件发出。
② 响应中断请求。对于可屏蔽中断,需要满足若 干条件,才发生响应;而对于不可屏蔽中断, 则立即响应。 ③ 准备执行中断服务程序。
-完成当前正在执行的指令;将进入流水线但还未解码 的指令清除。 -自动保存若干寄存器的值到数据堆栈和系统堆栈。
读数据的数据总线。
9
总线
宽度
功能
BAB
BB EAB、 FAB EB、FB
23-bit
16-bit 每条23bit 每条16bit
读数据的地址总线。用于间接寻 址模式。
读数据的数据总线。 写数据的地址总线。 每组16-bit 写数据的数据总线。
10
2.1.3 指令缓冲单元(I Unit )
1. 指令缓冲队列
– 16M Bytes 的程序存储空间,通过24位地址总线进行访问。程 序空间字节地址范围是0x000000-0xFFFFFF。 – 8M Words 的数据存储空间,通过23位地址总线进行访问。数 据空间字地址(1字=16 位)范围是0x000000-0x7FFFFF。
2.3 C55x的CPU结构
12
图2-3 程序控制单元(P单元)框图
13
1. 程序地址的产生和程序控制逻辑
在P单元内,程序地址产生逻辑产生24 bit的地址,以便从 程序存储器里提取指令。P单元通常产生顺序地址,但也可以 产生非顺序的地址,这时程序地址产生逻辑可从I单元接收立 即数,从D单元接收寄存器的值。地址产生后,就通过读程序 的地址总线(PAB)送往存储器。 (PAB)
1
C55X DSP中有1条32位程序数据总线(P总线),1条24位程序地 址总线(PA总线),5条16位的数据总线(B、C、D、E、F总线) 和5条24位的数据地址总线(BA、CA、DA、EA、FA总线)。这 种高度模块化的多总线结构使得C55X DSP拥有超强的并行处 理能力。下面分别介绍总线和各功能单元。
将40bit的累加器值左移达31bit或右移达32bit移位计数可从暂时寄存器t0t3读取或由指令里的常数来指将16bit的寄存器存储器以及io空间的值左移达31bit或右移达32bit移位计数可从暂时寄存器t0t3读取或由指令里的常数来指定
2.3 TMS320C55XCPU的结构 的结构
2.3.1 CPU结构概述 结构概述
28
2.3.7 数据计算单元 单元) 数据计算单元(D单元 单元
D单元是C55X DSP中主要的数据执行部件,完成大部分 数据的算术运算工作。它由移位器、40 bit ALU、两个17 bit的 乘法累加器(MAC)和若干寄存器构成。数据计算单元的两个乘 法累加器能够并行使用,可以有效提高DSP运行效率。D单元 中的寄存器包括累加器和两个用于维特比译码的专用指令寄存 器。 D单元包括了CPU的基本计算单元。图2-5是D单元的基本 框图。下面介绍D单元的主要部分。
23
第2章TMS320C55x的硬件结构改1PPT课件
外部存储器接口(EMIF) 允许数据在内部存储器和
外部存储器、增强型主机
直接存储器访问控制器(为D全M接双口A工()E串H口PI,) 之VC间5传50输9设
多通道串行缓冲口(McB有S3P个)McBSP
增强型主机接口 (EHPI)
2个16位的通用定时/计 数器
为16位并行接口,用于 提供主处理器对DSP上 的内部存储器的访问, 可被配置成复用或非复 用形式
1
多通道缓冲串行接口(McBSP) 2
3
3
多媒体卡/SD 卡控制器
电源管理/节电(IDLE)配置
1
1
1
实时时钟(RTC)
1
通用定时器
2
2
2
看门狗定时器
1
1
1
通用异步接收器/转换器 (UARTb)
1
1
通用串行总线(USB)模块
5506
D&A PLL
1 1
1 3
1 1 2 1
1
5507 2/4 D&A PLL 1 1 1
8个可配置的通用I/O引 脚(GPIO)
实时时钟(Real Time
提供一个时间参考,并 能产生基于时间的报警 来中断DSP
Clock,RTC) 看门狗定时器
可以在软件陷入循环有没 有受控退出的情况下,防 止 系统死锁
(Watchdog Timer)
目前VC5506、VC5507、
USB
VC5509各提供了1个USB接
45/47
通用地址 和数据信号
异步存储器 控制信号
程序读地址总线PAB(24)
程序读数据总线PB(32)
数据读地址总线 B[BAB](24) 数据读数据总线 B[BB](16)
第2章TMS320C55x的硬件结构PPT课件
字节1
字节2
字节3
00 00100h~00 0103h
A(23~16) A(15~8)
A(7~0)
00 00104h~00 0107h B(15~8)
B(7~0) C(31~24) C(23~16)
00 00108h~00 010Bh C(15~8)
C(7~0)
பைடு நூலகம்
D(7~0) E(23~16)
00 0010Ch~00 010Fh E(15~8)
C55x存储空间(总共为16M字节或8M字)的划分: 128个主页面(0~127),每个主页面为64K字 主页面0的前192个字节或96个字(00 0000h~00 00BFh)被MMR所占用
主数据页0
数据空间地址(十六进制) 数据/程序存储器 MMRs 00 0000~00 005F
00 0060~00 FFFF
004000 008000 002000 200000 400000 600000
DARAM (以VC5509A为例) 双存取RAM,分为8个8K字节或4K字的块,每个8K 字节的块每周期可以访问两次(两次读或一次读、一 次写)
DARAM可被内部程序总线、数据总线或DMA访问。 前4块DARAM可以被HPI访问
存储器块 SARAM0 SARAM1 SARAM2 SARAM3 SARAM4 SARAM5 SARAM6 SARAM7 SARAM8 SARAM9 SARAM10 SARAM11
字节地址范围 028000h~029FFFh 02A000h~02BFFFh 02C000h~02DFFFh 02E000h~02FFFFh 030000h~031FFFh 032000h~033FFFh 034000h~035FFFh 036000h~037FFFh 038000h~039FFFh 03A000h~03BFFFh 03C000h~03DFFFh 03E000h~03FFFFh
TMS320C54x数字信号处理器硬件结构
在片仿真接口 ● 具有符合IEEEll49.1标准的在片仿真接口(JTAG)。 速度 ● 单周期定点指令的执行时间为25/20/15/15/10-ns(40 MIPS/50 MIPS/66 MIPS/80 MIPS/100
MIPS)。
图1 TMS320C54x DSP的内部硬件组成框图1
返回本节
保留 (DROM=1) 外部(DROM=0)
FFFFH
MP/ MC=0 (微型计算机模式)
图2 TMS320VC5402存储器分配图
0 0000H
Page 0 64K
1 0000H
1 3FFFH 1 4000H
Page1: 低16K
外部
Page1: 高48K
外部
2 0000H
2 3FFFH 2 4000H
返回首页
3 TMS320C54x的存储器分配
● 3.1 存储器空间 ● 3.2 程序存储器 ● 3.3 数据存储器 ● 3.4 I/O存储器
返回首页
3.1 存储器空间
● TMS320C54x存储器由3个独立的可选择空间组成:程序空间、数据空间和I/O空间。 ● 程序存储器空间包括程序指令和程序中所需的常数表格;数据存储器空间用于存储需要程序处理
在片外围电路(如图1所示) ● 软件可编程等待状态发生器。 ● 可编程分区转换逻辑电路。 ● 带有内部振荡器。 ● 外部总线关断控制,以断开外部的数据总线、地址总线和控制信号。 ● 数据总线具有总线保持器特性。 ● 可编程定时器。并行主机接口(HPl)。
电源 ● 可用IDLEl、IDLE2和IDLE3指令控制功耗,以工作在省电方式。 ● 可以控制关断CLKOUT输出信号。
图1 TMS320C54x DSP的内部硬件组成框图2
TMS320C54X的硬件结构
经MSW/LSW选择器输出至EB
总线
功能: 运算前数据定标 A或B进行算术或逻辑移位
A或B归一化处理
A或B—>EB之前定标
移位值三种情况(全部用二进制补
码表示):
立即数(-16—15)
ST1的ASM(5位,-16—15)
TS(6位,-16—31)
例2.4.2:
2.4.4 乘累加单元
SP(CPL=1)或DP(CPL=0)
XF:控制XF通用外部I/O引脚输出状态,
可对XF进行复位和置位
INTM:置1,关闭所有可屏蔽中断 OVM:累加器是否溢出保护,置1(要
保护)。
SXM:符号位扩展方式控制位,控制进
行无符号数运算还是带符号数运算。
C16:双精度/双16位运算方式,
举例
B, A 若A=FF FF8F F302H,
举例:NORM
B =21 0A0A 0A0AH,T= FFF9H
思考:执行后A、B及T的值?
A=00
4214 1414H B =21 0A0A 0A0AH T= FFF9H
2.4.3 40位桶形移位器
图2.4.3
输入: 输出:
ALU
2.4.7 CPU状态和控制寄存器
‘C54x有三个16位的状态和控制寄
存器
状态寄存器ST0 状态寄存器ST1 处理器工作方式状态寄存器PMST
ST0、ST1中包含各种工作条件和
工作方式的状态
PMST中包含存储器的设置状态和
其他控制信息
CPU状态和控制寄存器
ST0 ST1
PMST
数据空间:64K I/O空间:64K
片内、片外程序空间统一编址! 片内、片外数据空间统一编址!
总线
功能: 运算前数据定标 A或B进行算术或逻辑移位
A或B归一化处理
A或B—>EB之前定标
移位值三种情况(全部用二进制补
码表示):
立即数(-16—15)
ST1的ASM(5位,-16—15)
TS(6位,-16—31)
例2.4.2:
2.4.4 乘累加单元
SP(CPL=1)或DP(CPL=0)
XF:控制XF通用外部I/O引脚输出状态,
可对XF进行复位和置位
INTM:置1,关闭所有可屏蔽中断 OVM:累加器是否溢出保护,置1(要
保护)。
SXM:符号位扩展方式控制位,控制进
行无符号数运算还是带符号数运算。
C16:双精度/双16位运算方式,
举例
B, A 若A=FF FF8F F302H,
举例:NORM
B =21 0A0A 0A0AH,T= FFF9H
思考:执行后A、B及T的值?
A=00
4214 1414H B =21 0A0A 0A0AH T= FFF9H
2.4.3 40位桶形移位器
图2.4.3
输入: 输出:
ALU
2.4.7 CPU状态和控制寄存器
‘C54x有三个16位的状态和控制寄
存器
状态寄存器ST0 状态寄存器ST1 处理器工作方式状态寄存器PMST
ST0、ST1中包含各种工作条件和
工作方式的状态
PMST中包含存储器的设置状态和
其他控制信息
CPU状态和控制寄存器
ST0 ST1
PMST
数据空间:64K I/O空间:64K
片内、片外程序空间统一编址! 片内、片外数据空间统一编址!
第五章(3) TMS320C5x芯片的外部接口
外部总线控制(External Bus Control)
C54的外部总线是由两个单元控制:等待状态发生 器(wait-state generator)和块切换逻辑 ( bank-switching logic)。 对这两个单元的控制是通过两个寄存器软件等待寄 存器(software wait-state register — SWWSR) 和 块切换控制寄存器(bank-switching control register — BSCR)实现。 等待状态发生器(Wait-State Generator) 块切换逻辑Bank-Switching Logic
I/O 空间
C54的DSP处理器提供了64K的外部 I/O 空 间,地址为 (0000h–FFFFh) 。 两条指令 PORTR 和 PORTW 是可以执行 I/O空间的数据读写。 I/O 空间主要用于外部的人机接口界面,如 键盘输入,指示灯输出等 ,也可以用于程 序或数据地址的扩展。
C541 存 储 器 映射图:
存储空间
程序存储器
数据存储器 I/O空间
程序存储器:
程序储存器的最大地址空间为64K。 片内的ROM、DARAM、SARAM都可以通 过软件映射到程序空间。 这些片内储存器映射到程序空间后,程序地 址发生器(program address generation unit) 将程序地址总线连接到这些存储器的 地址线上。
片内 ROM 的结构 :
片内的ROM是按照块结构组织的,这样可以提高 程序的执行效率。例如,程序可以在一个ROM块 中取指令的同时,还可以同时读取另外一个ROM 块中的数据。 不同器件的块结构是不同的,一般的块分为2K、 4K、8K。对于2K-ROM 的芯片,块结构为2K;对于 4K-ROM 和 28K-ROM 的器件,一般块结构为4K; 对于16K-ROM 和 48K-ROM 的器件,一般块结构为 8K。
第2讲-第2章TMS320C55x的硬件结构-C55x的总体结构封装引脚2.1_3_5
• PB
– 5组16位数据总线 • BB、CB、DB、 EB、FB – 6组24位地址总线 • PAB、BAB、 CAB、DAB、 EAB、FAB
CPU在一个机器周期内,能够读1次32位程序代码、读3次16位数据、写2次16位数据
5
ROM 32KW 电源 控制
内部 存储器 接口
SARAM 96KW DARAM 32KW
同步存储器 控制信号
• 仅从内存向D单元传数据
SDRAM 控制信号
– 存储器接口单元(M单元)
• 内部数据流、指令流接口;
程序流 单元
(PU)
P
地址数据流 单元(AU)
指令缓冲 单元(IU)
A D I
数据计 算单元 (DU)
C55X CPU
中断 控制
9
• CPU和数据空间或I/O空间传输 数据的媒介。
14
描
述
流水阶段 AC1 AC2
描
述
对于存储器读,将地址送到适当的 CPU 地址总线 给存储器一个周期的时间,来响应读请求 从存储器和 MMR 寻址的寄存器读数据 当执行在 A 单元预取指的 D 单元指令时,读 A 单元的寄存器,在 R 阶段读,
R
而不是在 X 阶段读 计算条件指令的条件。大多数条件,但不是所有的条件,在 R 阶段计算。在 本表里,例外的情况已经专门加以标注 读/修改不是由 MMR 寻址的寄存器 读/修改单个寄存器里的位 设置条件 (例外) 计算 XCCPART 指令的条件 (在代数式句法里, D 单元的执行属性) , 除非该指令是条件写存储器(在这种情况下,在 R 阶段计算条件) (例外)计算 RPTCC 指令的条件 写数据到 MMR 寻址的寄存器或 I/O 空间(外设寄存器) 写数据到存储器。从 CPU 的角度看,该写操作在本流水阶段结束 写数据到存储器。从存储器的角度看,该写操作在本流水阶段结束
TMS320C55xDSP应用系统设计
针对数字信号处理的要求而设计,是数字信号 处理系统设计中采用的主流芯片。 优点:灵活、高速、便于嵌入式应用
DSP的含义
数字信号处理(Digital Signal Processing)
数字信号处理的理论和算法
数字信号处理器(Digital Signal Processor)
实现数字信号处理算法的微处理器芯片
1979年,美国Intel公司推出商用可编程器件DSP芯 片Intel2920
1980年,日本NEC公司推出μPD7720,第一片具 有乘法器的商用DSP芯片 1982年,TI公司成功推出其第一代DSP芯片 TMS32010及其系列产品TMS32011、 TMS320C10/C14 /C15/C16/C17
1.3 DSP芯片产品简介
TI公司的DSP芯片概况 其它公司的DSP芯片概况 TMS320C5000概况
1.3.1 TI公司的DSP芯片概况
经典产品
TMS320C1X、TMS320C25、TMS320C3X/4X、 TMS320C5 X、TMS320C8X TMS320C2000,用于数字化控制领域
Motorola公司的DSP5600、9600系列,AT&T公司的 DSP32等。
第三阶段,DSP的完善阶段(2000年以后)
信号处理能力更加完善,而且使系统开发更加方便、 程序编辑调试更加灵活、功耗进一步降低、成本不 断下降 各种通用外设集成到片上,大大地提高了数字信号 处理能力 DSP运算速度可达到单指令周期10ns左右,可在 Windows 下用C语言编程,使用方便灵活
1.2.4 DSP芯片的应用领域
DSP的含义
数字信号处理(Digital Signal Processing)
数字信号处理的理论和算法
数字信号处理器(Digital Signal Processor)
实现数字信号处理算法的微处理器芯片
1979年,美国Intel公司推出商用可编程器件DSP芯 片Intel2920
1980年,日本NEC公司推出μPD7720,第一片具 有乘法器的商用DSP芯片 1982年,TI公司成功推出其第一代DSP芯片 TMS32010及其系列产品TMS32011、 TMS320C10/C14 /C15/C16/C17
1.3 DSP芯片产品简介
TI公司的DSP芯片概况 其它公司的DSP芯片概况 TMS320C5000概况
1.3.1 TI公司的DSP芯片概况
经典产品
TMS320C1X、TMS320C25、TMS320C3X/4X、 TMS320C5 X、TMS320C8X TMS320C2000,用于数字化控制领域
Motorola公司的DSP5600、9600系列,AT&T公司的 DSP32等。
第三阶段,DSP的完善阶段(2000年以后)
信号处理能力更加完善,而且使系统开发更加方便、 程序编辑调试更加灵活、功耗进一步降低、成本不 断下降 各种通用外设集成到片上,大大地提高了数字信号 处理能力 DSP运算速度可达到单指令周期10ns左右,可在 Windows 下用C语言编程,使用方便灵活
1.2.4 DSP芯片的应用领域
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
存储器 64 K字程序存储器、64 K字数据存储器 以及64 K字I/O空间。在C548、C549、 C5402、C5410和C5420中程序存储器可 以扩展。
指令系统 单指令重复和块指令重复操作。 块存储器传送指令。 32位长操作数指令。 同时读入两个或3个操作数的指令。 并行存储和并行加载的算术指令。 条件存储指令。 从中断快速返回指令。
图5-1 TMS320C5MS320C54x DSP的内部硬件组成框图2
5.2 TMS320C54x的总线结构
TMS320C54x DSP采用先进的哈佛结构 并具有八组总线,其独立的程序总线和 数据总线允许同时读取指令和操作数, 实现高度的并行操作。 采用各自分开的数据总线分别用于读数 据和写数据,允许CPU在同一个机器周期 内进行两次读操作数和一次写操作数。 独立的程序总线和数据总线允许CPU同时 访问程序指令和数据。 返回首页
图5-3 C5402扩展程序存储器图
返回本节
2.3.2 程序存储器
通过MP/和OVLY位的设置,可以实现对片 内存储器(ROM、RAM)的配置,即哪些 片内存储器映象在程序存储器空间。 器件复位时,复位、中断和陷阱中断的向 量映象在地址FF80H开始的程序存储器空 间。然而,复位后这些向量可以被重新映 象在程序存储器空间任何128字页的开始。 这样,可以把向量表移出引导ROM,并重 新配置其地址。
图5-6 乘法器/加法器单元功能框图
4.比较、选择和存储单元(CSSU)
比较、选择和存储单元(CSSU)是专门 为 Viterbi 算 法 设 计 的 加 法 / 比 较 / 选 择 (ACS)操作的硬件单元,其功能框图如 图5-7所示。 CSSU支持均衡器和信道译码器所用的各 种Viterbi算法。Viterbi算法示意图如图58所示。
DSP方框图
5.1 C54x的特点和硬件组成框图
TMS320C54x的主要特性如下所示: CPU 先进的多总线结构。 40位算术逻辑运算单元(ALU)。 17位×17位并行乘法器与40位专用加法器相连。 比较、选择、存储单元(CSSU)。 指数编码器可以在单个周期内计算40位累加器中数 值的指数。 双地址生成器包括8个辅助寄存器和两个辅助寄存 器算术运算单元(ARAU)。 返回首页
程 序 空 间 :页 0 0 0 0 0H 保 留 ( O V L Y= 1) 外 部 ( O V L Y= 0) 片 内DRAM : 16K ( O V L Y= 1) 外 部 ( O V L Y= 0) 片外 EFFFH F 0 0 0H 片 内R O M : 4K FEFFH F F00H 保留 F F7 F H 中断矢量 ( 片 内) M P/ M C= 0 ( 微 型 计 算 机 模 式) F F 8 0H FFFFH 3 FFFH 4 0 0 0H 005FH 0 0 6 0H 007FH 0 0 8 0H
5.3 TMS320C54x的存储器分配
5.3.1 5.3.2 5.3.3 5.3.4
存储器空间 程序存储器 数据存储器 I/O存储器
返回首页
5.3.1 存储器空间
TMS320C54x存储器由3个独立的可选择 空间组成:程序空间、数据空间和I/O空 间。 程序存储器空间包括程序指令和程序中 所需的常数表格;数据存储器空间用于 存储需要程序处理的数据或程序处理后 的结果;I/O空间用于与外部存储器映象 的外设接口,也可以用于扩展外部数据 存储空间。
6.CPU状态和控制寄存器
TMS320C54x有三个状态和控制寄存器, 分别为状态寄存器ST0、状态寄存器ST1 和处理器方式状态寄存器 PMST。ST0 和 ST1包括各种工作条件和工作方式的状态, PMST包括存储器配置状态和控制信息。 状态寄存器ST0的位结构如图5-9所示,表 5-2所示是ST0的说明。
第5章 TMS320C54x芯片的硬件结构
5.1 5.2 5.3 5.4 5.5 5.6 5.7
TMS320C54x的特点和硬件组成框图 TMS320C54x的总线结构 TMS320C54x的存储器分配 中央处理单元(CPU) TMS320C54x片内外设简介 TMS320VC5402引脚及说明 硬件复位操作
表5-1 存储器映象寄存器
名称 IMR IFR 地址 0 1 说明 中断屏蔽寄存器 中断标志寄存器
STO
STl
6
7
状态寄存器0
状态寄存器1
名称 AL AH AG BL BH BG TREG TRN AR0~7 8 9
地址 累加器A低16位 累加器A高16位 累加器A最高8位 累加器B低16位 累加器B高16位 累加器B最高8位 暂存器 状态转移寄存器 辅助寄存器
图5-5 桶形移位器的功能框图
3.乘法器/加法器单元
C54x CPU有一个17X17位的硬件乘法器, 与40位的专用加法器相连,可以在单周 期内完成一次乘法累加运算。其功能框 图如图5-6所示。乘法器的输出经小数/整 数乘法(FRCT)输入控制后加到加法器 的一个输入端,加法器的另一个输入端 来自累加器A或B。 加法器还包括零检测器、舍入器(二进 制补码)及溢出/饱和逻辑电路。
说明
AH BH CH DH EH FH 10H~17H
SP
BK BRC RSA
18H
19H 1AH 1BH
堆栈指针
循环缓冲大小 块重复计数器 块重复起始地址寄存器
名称 REA
地址 1CH
说明 块重复终止地址寄存器
PMST
XPC TIM PRD TCR SWWSR BSCR SWCR HPIC TIM1 PRD1
程 序 空 间 :页 0 0000H 保 留 ( O V L Y= 1) 外 部 ( O V L Y= 0 ) 007FH 0 0 8 0H 片 内DRAM: 16K ( O V L Y= 1) 3 FFFH 4000H 外 部 ( O V L Y= 0 ) 3 FFFH 4 0 0 0H EFFFH F 000H 片外 FEFFH F F 00H 007F H 0 0 8 0H 0 0 0 0H
1DH
1EH 24H 25H 26H 28H 29H 2BH 2CH 30H 31H
处理器方式状态寄存器
扩展程序计数器 定时器0寄存器 定时器0周期寄存器 定时器0控制寄存器 软件等待状态寄存器 分区转换控制寄存器 软件等待状态控制寄存器 主机接口控制寄存器 定时器1寄存器 定时器1周期寄存器
TCR1
图5-7 比较、选择和存储单元 (CSSU)功能框图
图5-8 Viterbi算法示意图
5.指数编码器
指数编码器用于支持单周期指令EXP的专 用硬件。在EXP指令中,累加器中的指数 值能以二进制补码的形式(-8~31)存储 在T寄存器中。指数值定义为前面的冗余 位数减8的差值,即累加器中为消除非有 效符号位所需移动的位数。当累加器中 的值超过32位时,指数为负值。
2 3FFFH 2 4000H
F 3FFFH ... F 4 0 0 0 H
P a g e1: 高 48K 外部
P a g e 2: 高 48 K 外部
P a g e1 5 : 高 48 K 外部
0 FFFFH X P C =0
1F F F F H X P C =1
2 FFFFH X P C =2
... F F F F F H X P C =1 5
返回本节
2.3.3 数据存储器
通 过 对 处 理 器 方 式 状 态 寄 存 器 PMST 的 DROM位的设置,将片内ROM配置在数据存 储器空间(DROM=1),这样,可以用指 令 将 片 内 ROM 作 为 数 据 存 储 器 中 的 数 据 ROM来读取。复位时,DROM位被清0。 64K字的数据存储器空间包括数据存储器映 象寄存器,0000H~001FH是常用的CPU寄 存器地址,0020H~005FH是片内外设寄存 器的地址。表5-1
返回本节
5.4 中央处理单元(CPU)
CPU的基本组成如下: CPU状态和控制寄存器 40位算术逻辑单元(ALU) 40位累加器A和B 桶形移位寄存器 乘法器/加法器单元 比较、选择和存储单元(CSSU) 指数编码器
返回首页
1.算术逻辑单元(ALU)和累加器
TMS320C54x 使 用 4 0 位 算 术 逻 辑 单 元 ( ALU) 和 两 个 4 0 位 累 加 器 ( ACCA 和 ACCB)来完成算术运算和逻辑运算,且 大多数都是单周期指令。ALU功能框图如 图5-4所示。
F F7 F H F F 80H FFFFH
图5-2 TMS320VC5402存储器分配图
0 0000 H
1 0000H P a g e 1: 低 16K 外部
2 0000 H P a g e 2: 低 16K 外部
... ...
F 0000 H P a g e1 5 : 低 16K 外部
1 3FFFH 1 4000H P age 0 64 K
在片外围电路 软件可编程等待状态发生器。 可编程分区转换逻辑电路。 带有内部振荡器。 外部总线关断控制,以断开外部的数据 总线、地址总线和控制信号。 数据总线具有总线保持器特性。 可编程定时器。并行主机接口(HPl)。
电源 可用IDLEl、IDLE2和IDLE3指令控制功耗, 以工作在省电方式。 可以控制关断CLKOUT输出信号。
数据空间
存储器映象 寄存器 暂 存 器S P R A M 片 内DRAM : 16K
片外 片内 RO M D RO M =1 ) ( 外 部 ( D R O M= 0) 保留 ( D R O M= 1 ) 外 部 ( D R O M= 0)