(16) -系统设计之 EMIF 外接存储器接口

+荐课 提问/讨论 评论 收藏
  • 本课程为精品课,您可以登录eeworld继续观看:
  • (16) -系统设计之 EMIF 外接存储器接口
  • 登录
接下来 我们看看外部存储器接口EMIF口 C2000系列里面的子系列 它能支持EMIF接口 老的比如F281 F28335 F2823X等 新的比如F2837XD 和37XS 我们今天主要讲的是C2837xD的EMIF接口 EMIF接口它的主要作用是 提供一个接口 将CPU EMA 和CIA 等接到外部的存储器设备上 F2837XD 有两个EMFI接口 EMIF1和EMIF2 其中EMIF1是CPU1和CPU2共享的 EMIF2只能被CPU1所用 EMIF1它是一个16位或32位的接口 能被CPU1、CPU1的DMA、CPU2、CPU2的DMA 四个总线所访问 而EMIF2只能被CPU1和CPU1 CLA1访问 这个地方要注意了 也就是说 EMIF2能被CPU1和CPU1的CLA1所访问 CLA1我们知道是协处理器单元 它的目的是说 我是可以和CPU1并列运行的 能够增大我芯片的处理能力 而假如说我们的CLA能通过EMIF口访问外部的存储器设备的话 数据从外部导入到我的芯片内部的话 就不需要CPU参与了 更能够将CPU和CLA分别独立运行 进一步提高芯片的处理能力 因此 EMIF1和EMIF2 这两个EMIOF口最主要的区别有两点 第一EMIF1能被CPU1和CPU2 两个CPU所访问 EMIF2只能被CPU1访问 第二点 EMIF1能被CPU1和DMA1两种总线访问 EMIF2只能被CPU1和CLA1两种总线访问 那F2837X的EMIF接口都支持同步的SDRAM和异步的SRAM Nor Flash的 存储器设备 同步RAM和异步RAM的特点不同 接口也不同 那么接下来看看它们是如何接线的 我们看这个图中 首先看下面这块 这块这个信号管脚pin脚是被同步和异步所共享的 这个地方包含写入使能 主地址引脚 字节地址引脚 数据总线和地址总线 不管同步异步 都需要这几个信号 上面这两块分别是同步的SDRAM和异步RAM的接口的控制性 针对同步里面主要包含片选 列地址 行地址 以及它的时钟信号 时钟使能等这些控制信号 针对异步的它主要有片选 输出使能 等待输入 以及读写控制 因此 假如说 我的EMIF接口 接的是外部的同步RAM的话那它主要用的上面五根线 和下面五根线 假如针对异步的话 主要是用中间这四根线 和下面的这五根线 我们来看看EMFI1和EMFI2的配置 前面说了 EMIF1最大的数据宽度是32位 EMIF2最大的数据宽度是16位 EMIF1的最大地址线宽度是22位 也就是说 它能支持4兆的地址寻址空间 而EMIF2它只有12位的 它只能支持4K的地址寻址空间 针对同步的 它都能支持一个CS0片选 针对异步的 EMIF1能支持3个片选 EMIF2只能支持1个片选 我们看看针对同步SDRAM接口的话 2837X的EMIF接口能支持1组 2组和四组banks的RAM 这主要是由管脚EMBA 这两个1和0 这两个管脚控制 同时SDRAMD 支持两个或三个时钟周期的延迟 而且它具有自刷性和掉电模式 其中 自刷性可以允许SDRAM可以在低功耗的模式下 保存内容 不需要MCU的时钟信号 就可以刷新存储的数据 因此它的功耗更低 那么针对异步RAM的话 它能支持叫慢存储器件输入的一个等待 而且这个等待时间是可以通过编程设定的 同时 我编程的读写周期里面 包括设置保持选通等等整个系统时钟周期 都可以通过编程集成器来控制 针对异步RAM的话 它的数据总线的宽度是根据程序来设置 也就是它的数据总线宽度是可编程的 那么主要有关键字 asynchronous 假如是0的话 就是8位的 假如是1 就是16位 假如是2 就是32位的 就是不管是针对同步的RAM还是异步的RAM的话 我们的EMIF接口配置相当灵活 使用起来比较方便 具体可以参考手册上的各个集成器的说明 我们再看EMIF接口的性能 我们说EMIF接口 它的性能主要体现在访问速度上 也就是我去访问外部存储器的话 它的访问速度到底有多快 针对同步和异步的RAM 它的访问速度不一样的 举个例子 假如我们的F2837X工作在200兆赫兹的话 针对同步RAM DRAM的话 它的读是14个CPU周期 它的写的话是9个时钟周期 因此 它的吞吐量是14.3 和22.3兆 针对异步RAM的话 读是9个系统周期 写是5个系统周期 其实上面也说了 针对我们的异步RAM的话 它的读写 等待啊 等这些周期这些都是可以编程设置的 举个例子 如果它的读写设置周期是 141的话 也就是说4是一个CPU周期 选通是4个CPU周期保持是一个系统周期的话 然后增加两个周期总线启动 一个周期速度延迟到CPU的延迟的话 总共是9个CPU周期 因此我们可以看到 针对同步和异步RAM 它的访问时间 速度以及吞吐量是不一样的
课程介绍 共计28课时,4小时27分22秒

C2837x入门指南

TI C2000 MCU PWM F2837xD ADC DAC DMA CLA C2837x CMP SDFM CAP QEP c28x

F2837x系列的最新 C2000™ Delfino™ 32 位 F2837xD 微控制器 (MCU),为工业实时控制实现最新创新,并设定了全新性能标准。这些最新 MCU 支持双核 C28x 处理功能与双实时控制加速器(也称为控制律加速器或 CLA),可提供 800 MIPS 浮点性能,从而可帮助设计人员为计算要求严格的控制应用开发低时延系统。此外,设计人员还可通过将多个嵌入式处理器整合在单个 MCU 中以降低复杂性,充分满足高级伺服驱动器、太阳能中央逆变器以及工业不间断电源 (UPS) 等需要实时信号分析的应用需求。

推荐帖子

【TI 无线主题征集】+基于物联网的智能学生宿舍
          物联网是在现代计算机互联网的基础上,利用RFID、无线数据通信技术,构造一个覆盖万事万物的网络世界,在这个网络中,可以对各个事物进行智能化管理和互动。 如今,智能化的理念已经深入人心,许多事物都实现了智能化的控制,但很少有将物联网技术应用于大学生宿舍,然而,学校宿舍用电安全及财产安全一直是社会关注的焦点,所以设计一个...
昱枫 无线连接
MSP430G2553外接电源问题,求各位大神指点
我用MSP430Launchpad(芯片是G2553)写了一个nrf24L01的程序,用两个Launchpad互相通信都没有问题。但是我把芯片从Launchpad上取下来,放到面包板上用3V纽扣电池供电或者用3V直流电源供电,就有问题(比如P1.4该是高电平,但是却没有高电平)。我知道大概是电源的问题,但是不知道该如何解决。求各位大神指点 ...
小朱腾云驾雾 微控制器 MCU
烧录到FLASH里让程序上电就运行,点击load图标后还跟在RAM里运行一样?
问下 我想烧录到FLASH里 让程序上电就运行  我用的CCS6.0  点击load图标后发现还是跟在RAM里运行一样的。。。怎么回事?  大神们指导下 eeworldpostqq...
cloud 微控制器 MCU
关于msp430F149驱动tft的问题
自己把51的驱动一直,驱动器时ILI9325,可是一直驱动不了,连清屏都做不到,程序如下 lcd.h #ifndef _LCD_H #define _LCD_H #include "sys.h" #include "msp430x14x.h" //定义控制端口 #define DATA_L_IN P2DIR =0X00 #define DATA_H_IN P4DIR =0X00&n...
ouguanxiaosilan 微控制器 MCU
分享到X
微博
QQ
QQ空间
微信

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved