This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28377S:如何扩展外部 RAM 和闪存

Guru**** 2455360 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/800370/tms320f28377s-how-to-extend-external-ram-and-flash

器件型号:TMS320F28377S

你(们)好

我的客户使用28377+ FPGA (spartan6)来扩展2个 RAM (512K)和闪存(128K)、请与您再次核实硬件设计和软件更改。

CPU1RAM 由74LV32启用

F28377

FPGA

使用 CS2扩展 RAM1 RAM2、CS4用于扩展由 FPGA 控制的闪存、读取和写入

如下所示更改示例代码

emif1_16bit_asram.c

将 IO 设置为用作扩展端口2

GPIO92用于 XA19、其它代码无变化。

CCS7.4 MEMORY 观察

写入一个32位数据、只有高16位被写入、当执行下一条语句时、地址值将被立即清零。

写入地址0x100002时、地址行 A0-A4为1000;如何配置 XA19? 是否需要设置?

3、emif1ConfigRegs.EMIF1MSEL.all = 0x93A5CE71;写入后、读出数据为01?

非常感谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Daniel、您好!

    地址行的连接不正确。 请参阅以下部分(图25-9)。 EMIF 到8位/16位存储器接口)。

    对于16位接口、需要将外部 RAM 的 A0连接到 EMIF 的 Ba1、并且需要相应地调整其他地址线、如图所示。

    此致、

    Vivek Singh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Daniel:

    您还可以参考此 EMIF 应用手册 以获取基准、其他示例和寄存器配置工具。

    Tommy

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、被叫方、

    问题1:

    在 TI 参考设计中、它使用 EM1OE (GPIO37) 作为读取信号。

    客户使用 EM1RNW(GPIO33)作为 C2000和 FPGA 的读取信号。 如下图所示。


    当 FPGA 正在读取时 EM1RNW 为高电平、当不读取时 EM1RNW 为低电平。    

    我们想知道哪个 GPIO 用于连接 RAM 闪存 读取信号?

    问题2.

    如下所示更改硬件连接。

    XA19被用作 EM1BA1的第一个地址线。 GPIO 引脚定义为3。 我们可以使用 XA19作为第20个地址还是第21个地址行吗?

    由于使用了两个 RAM、一个是512K。 当 FPGA 扩展时、它需要使用此地址线(0x180000-0x1FFFF 用于映射第二个 RAM 存储器)。

    0x180000、第20个地址行是 XA19还是 XA18? 非常感谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Daniel Fang]问题1:

    在 TI 参考设计中、它使用 EM1OE (GPIO37) 作为读取信号。

    客户使用 EM1RNW(GPIO33)作为 C2000和 FPGA 的读取信号。

    当 FPGA 正在读取时 EM1RNW 为高电平、当不读取时 EM1RNW 为低电平。    

    我们想知道哪个 GPIO 用于连接 RAM 闪存 读取信号?

    这两个信号具有 TRM 中定义的不同行为:

    OE 充当选通信号、而 RNW 在存储器访问期间是静态的。 要使用的信号取决于外部组件的需求。 标准异步存储器通常使用 OE 而不是 RNW。

    [引用用户="Daniel Fang]问题2.

    XA19被用作 EM1BA1的第一个地址线。 GPIO 引脚定义为3。 我们可以使用 XA19作为第20个地址还是第21个地址行吗?

    PINMUX 机制只允许引脚运行为 EM1A19或 EM1BA1。  可通过 GPIO 控制实现对更高地址信号(寻呼)的手动控制。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、被叫方、

    根据您的建议更改硬件后。 如下图所示、将所有 GPIO 端口设置为 外设功能2。

    写入地址时、A19不起作用。 地址只 增加+2、唯一改变的是 A0高/低电平。

    当把数据写入 RAM 时、 当增加地址时、只有0X100000数据被改变。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Daniel:

    我对使用 GPIO 进行分页不够清楚。 实施分页时、您需要将未使用的 GPIO 信号连接到需要 EM1A19信号的外部存储器。 EM1BA1应该按原样使用、因为手动控制外部存储器的低地址引脚效率太低。

    Tommy