TMS320F2812外部接口分析与存储器扩展

 

哈尔滨工业大学 袁帅 佟为明 李中伟

     TMS320F2812是德州仪器(TI)公司专门为工业应用而设计的新一代DSP处理器,它的性能大大优于当前广泛使用的TMS320LF240x系列。该芯片为32位定点DSP,最高主频150 MHz,最小指令周期6.67 ns,外部采用低频时钟,通过片内锁相环倍频;相对于TMS320LF2407只能寻址192 KB地址空间,该芯片的外部接口最多可寻址4 MB的空间;有3个独立的片选信号,并且读/写时序可编程,兼容不同速率的外设扩展;通过配置外部接口寄存器,在访问外部设备时不必额外增加延时等待,既提高了程序的实时性又减少了代码量。因此,灵活掌握和使用外部接口,对于DSP系统开发有很大帮助。本文结合实际系统,分析TMS320F2812外部接口的时序,设计了外部存储器扩展电路,根据所用的存储器芯片设置了接口时序,并提供了相关的电路原理图和外部接口时序配置的程序。

1 TMS320F2812外部接口的特点

TMS320F2812外部接口(XINTF)采用异步非复用模式总线,与C240x外部接口类似,但也作了改进:

TMS320LF240x系列,程序空间、数据空间和I/O空间都映射在相同的地址(0000~FFFF),最大可寻址192 KB,对它们的访问是通过不同的指令来区分的,例如可用IN或OUT指令访问外部I/O空间;而在TMS320F2812中,外部接口被映射到5个独立的存储空间XZCS0、XZCS1、XZCS2、XZCS6、XZCS7,每个存储空间具有独立的地址,最多可寻址4 MB。

② TMS320F2812中,有的存储空间共用1个片选信号,如Zone0和Zone1共用XZCS0AND1Zone6和Zone7共用XZCS6AND7。各空间均可独立设置读、写信号的建立时间、激活时间及保持时间。

      对任何外部空间读/写操作的时序都可以分成3部分:建立、激活和保持,时序如图1和图2所示。在建立(lead)阶段,访问存储空间的片选信号变为低电平并且地址被送到地址总线(XA)上。默认情况下该阶段的时间设置为最大,为6个XTIMCLK周期。在激活(active)阶段,对外部设备进行读写,相应的读写信号(XRD和XWD)变为低电平,同时数据被送到数据总线(XD)上。默认情况下读写该阶段的时间均设置为14个XTIMCLK周期。跟踪(trail)阶段是指读写信号变为高电平,但片选信号仍保持低电平的一段时间周期,默认情况下该阶段时间设置为6个XTIMCLK周期。因此,在编程时要根据外部设备的接口时序来设置XINTF的时序,从而正确地对外设读写。

2 扩展存储器硬件设计

2.1 外部存储器与TMS320F2812的接口电路设计

      TMS320F2812内置18 KB RAM。为了使用方便,本系统又扩展了256 KB SARAM,芯片选用IS61LV25616(256K×16位),其数据访问时间为10 ns。由于TMS320F2812采用统一寻址方式,因此扩展的SARAM既可以作程序存储器也可以作数据存储器。同时,为了保存掉电不丢失的数据,扩展了32 KBEEPROM,选用AT28LV256,32K×8位,用2片组成32K×16位。外扩存储器与TMS320F2812的接口电路如图3所示,将SARAM分配在ZONE2,地址范围为0x80000~0xBFFFF,片选信号与TMS320F2812的XZCS2相连。EEPROM分配在ZONE6,地址范围为0x10000~0x107FFF,片选信号为XZCS6AND7。


2.2 时序控制寄存器设置

      TMS320F2812的外部接口(XINTF)可根据系统设计的要求,分别配置每个空间的建立、激活和跟踪周期时间,以适应对不同速率外设接口的访问。配置过程中需要考虑外设器件的时序特性,必须使XINTF信号的时序与外设器件的时序一致才能正常工作。首先,必须设定XINTF模块的时钟,所有扩展外设的访问都是以XINTF时钟为参考的。本设计中,设定DSP内核频率(SYSCLK)为120 MHz,设定XINTF频率为SYSCLK/2,即60 MHz。根据器件手册,IS61LV25616的读/写周期为10 ns,因此ZONE2配置为最小的等待时间,建立、激活和跟踪时间分别为16 ns、16 ns、0 ns,写信号周期为16 ns、16 ns、0 ns(对应寄存器设置为1,1,0)。AT28LV256的读写时序如图4、图5所示,读信号周期:建立时间为tCE与tOE之差,最大值为120 ns;激活时间为tOE,最大值为80 ns;跟踪时间为tOH,最大值为0,因此配置为33 ns、50 ns、0 ns(对应寄存器设置为1,2,0)。写信号周期:建立时间为tCS,最小值为0;激活时间为tWP,最小值为200 ns;跟踪时间为tCH,最小值为0 ns。因此配置为33 ns、217 ns、33 ns(对应寄存器设置为1,6,1)。外部接口寄存器设置的C语言程序如下:



结 语

TMS320F2812的外部接口十分灵活、方便,通过独立的配置,能和各种快、慢速外设接口而不必在程序中额外添加延时等待。本文分析了TMS320F2812的外部接口及扩展外设时应注意的问题,以扩展RAM和EEPROM为例,给出了硬件电路设计并分析了接口时序;同时给出了接口时序设置的DSP程序,有助于工程人员更方便地进行基于TMS320F2812的开发和设计.

 

http://www.61ic.com/Article/C2000/C28X/200709/16240.html

### 配置 Qt 5.14.2Visual Studio 2022 #### 安装 Qt VS Tools 插件 为了能够在 Visual Studio 2022 中使用 Qt 5.14.2,首先需要安装 `Qt VS Tools` 插件。通过访问扩展管理器来完成此操作: - 进入 **扩展** 菜单,选择 **管理扩展** - 在搜索框内输入 “qt”,查找名为 `Qt Visual Studio Tools` 的插件并进行安装[^4] #### 添加 Qt 版本到 Visual Studio 一旦工具成功安装完毕之后,则需向 IDE 注册特定版本的 Qt 库。 - 启动 Visual Studio 2022 并转至 **工具 (Tools)** -> **Options...** - 寻找左侧列表中的 **Qt VS Tools**, 接着点击它展开子项直至看到 **Qt Versions** - 点击右侧窗口顶部附近的按钮以增加新的条目;此时应指定本地计算机上已有的 Qt 安装位置——对于 Qt 5.14.2 来说可能是似于这样的路径:`E:\Qt\Qt5.14.2\5.14.2\msvc2017_64` #### 创建新项目时集成 Qt 支持 当一切准备就绪后,便可以在新建工程的过程中利用这些预先设定好的配置了: - 当创建一个新的 C++ 项目时,可以选择带有 Qt 支持的应用模板比如 Widgets Application - 如果选择了合适的 Kit(即编译器与库匹配),那么整个过程应该相对顺利地自动关联所需的依赖关系[^3] #### 解决可能遇到的问题 如果在上述过程中遇到了缺少 MSVC 编译器组件的情况,请确认 Visual Studio Installer 是否包含了必要的工作负载如 Desktop development with C++. 此外,确保安装 Qt 时也选择了对应的 msvc 版本(例如 msvc2017 msvc2019),这有助于避免兼容性问题[^2]. ```cpp // 示例代码片段展示如何初始化一个简单的 Qt 小部件应用程序 #include <QApplication> #include <QWidget> int main(int argc, char *argv[]) { QApplication app(argc, argv); QWidget window; window.resize(250, 150); window.setWindowTitle("Simple example"); window.show(); return app.exec(); } ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值