MSP430系列的内部结构概述
2015-10-08 来源:eefocus
CPU由一个 16 位的 ALU 、 16 个寄存器和一套指令控制逻辑组成。在 16 个寄存器中,程序计数器 PC 、堆栈指针 SP 、状态寄存器 SR 和常数发生器 CGl 、 CG2 这 4 个寄存器有特殊用途。除了 R3 / CG2 和 R2 / CGl 外,所有寄存器都可作为通用寄存器来用于所有指令操作。常数发生器是为指令执行时提供常数的,而不是用于存储数据的。对 CGl 、 CG2 访问的寻址模式可以区分常数的数据。 在 CPU 内部有一组 16 位数据总线和 16 位的地址总线; CPU 运行正交设计、对模块高度透明的精简指令集; PC 、 SR 和 SP 配合精简指令组所实现的控制,使应用开发可实现复杂的寻址模式和软件算法。
存储器MSP430 系列采用 “冯—纽曼结构”。支持外部扩展存储器是将来性能增强的目标。特殊功能寄存器及外围模块安排在 000H ~ 1FFH 区域; RAM 和 ROM 共享 0200H ~ FFFFH 区域,数据存储器( RAM )的起始地址是 0200H
( 1 )程序存储器 MSP430 系列程序存储器的类型有 ROM 、 OTP 和 Flash ROM 三种 . ROM 的容量在 1KB ~ 60KB 之间;对于 Flash 型的芯片,内部还集成有两段 128B (共 256B )的信息存储器以及 1KB 存放自举程序的自举存储器( BOOT ROM );对代码存储器的访问总是以字形式取得代码,而对数据可以用字或字节方式访问。每次访问需要 16 条数据总线( MDB )和访问当前存储器模块所需的地址总线( MAB );存储器模块由模块允许信号自动选中。最低的 64KB 空间的顶部 16 个字,即 0FFFFH ~ 0FFE0H ,保留存放复位和中断的向量;在程序存储器中还可以存放表格数据,以实现查表处理等应用;程序对程序存储器可以任意读取,但不能写入。
( 2 ) 数据存储器 数据存储器 (RAM) 经两条总线与 CPU 相连,即存储器地址总线 MAB 和存储器数据总线 MDB .数据存储器可以以字或字节宽度集成在片内,其容量在 128B ~ 10KB 之间;所有指令可以对字节或字进行操作。但是对堆栈和 PC 的操作是按字宽度进行的,寻址时必须对准偶地址。
外围模块外围模块包括基本定时器( Basic Timer )、 16 位定时器 (Timer_A 及 Timer_B) 、 ADC 转换器、 I/O 端口、异步及同步串行通讯口( USART )以及液晶显示驱动模块等。 外围模块经 MAB 、 MDB 与 CPU 相连。 围模块可分为字( 16 位)模块和字节( 8 位)模块两种。对大多数外围模块, MAB 通常是 16 位, MDB 是 8 位或 16 位。 字节( 8 位)模块的数据总线是 8 位的,需经总线转换电路与 16 位的 CPU 相连。这些模块的数据交换毫无例外地要用字节指令处理;对字( 16 位)模块,其数据总线是 16 位的,无需经过转换而直接与 CPU 的 16 位数据总线相连。模块的操作指令就没有任何限制。
振荡器和时钟发生器振荡器 LFXT1 ( LF )是专门为通用的低功耗 32768 Hz 时钟晶振设计的。除了晶体外接外,所有的模拟元件都集成在片内。但是也可以用一个高速的晶振工作,这时需要外接负载电容。对于 F13X 、 F14X 、 F15X 和 F16X 以及 F4XX 系列,片内还有一个可接入高速晶振的 XT2 振荡器。除了晶体振荡器之外, F13X 、 F14X 、 F15X 和 F16X 系列都有一个数字控制 RC 振荡器( DCO ),用它实现对振荡器的数字控制和频率调节;对于 F4XX 系列,将晶振频率用一个锁频环电路 (FLL 或 FLL + ) 进行倍频。 FLL 或 FLL +在上电后以最低频率开始工作,并通过控制一个数控振荡器 (DCO) 来调整到适当的频率。供处理器工作的时钟发生器的频率固定在晶振的倍频上,并提供时钟信号 MCLK 。 外围模块及 CPU 的时钟源选择非常灵活。可以用以实现各种低功耗模式下的运行。
上一篇:MSP430常见问题与解答
下一篇:关于MSP430仿真器的选择