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.

[参考译文] TMS320F28379D:异步存储器接口的 EMIF 时序计算

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/716097/tms320f28379d-emif-timing-calculation-for-asynchronous-memory-interface

器件型号:TMS320F28379D
主题中讨论的其他器件:C2000WARE

您好!

在 TRM 的 第25.4.2.2章"配置闪存接口"中提供了一个示例 、用于配置 EMIF 寄存器以连接时钟频率为 fEM1CLK = 100MHz 的 Sharp LH28F800BJE-PTTL90 8MB 闪存。 在计算 EMIF 寄存器的设置、选通和保持时间的示例中、考虑了 Tsu、TH 和 TD AC 特性、它们使用的值为 Tsu = 6.5ns (最小值)、TH = 1ns (最小值)和 TD = 7ns (最大值)。

您是如何计算或得出 Tsu、TH 和 TD 的值的? 这些值是否特定于器件? 如果它们是特定于器件的、那么我们为什么为 F2807x 使用相同的值(第23.4.2.2章为 F28075在 TRM 中配置闪存接口)? 是否有任何常见的方法来得出 Tsu、TH 和 TD 的值?

我还在以下位置参考了电子表格工具:~\C2000Ware\boards\TIDesigns\F28379D_EMIF_DC\C2000-EMIF_ConfigurationTool.xlsx。 在该表中、我看不到 Tsu、TH 和 TD、但我看到了 一些条目、例如 PCB 延迟(ns)、  读取设置、最小(ns)和 读取保持、最小(ns)。 它们是相同的吗? 如果是、则电子表格中使用的示例值与 TRM 中显示的值不同。 您能否为我提供一种查找相同值的方法?

谢谢、

Aditya

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

    您好、Aditya、

    [报价]您如何计算或得出 Tsu、TH 和 TD 的值? [/报价]

    这些值是特定于器件的、详细信息在 器件数据表中提供。  (表5-37. EMIF 异步存储器时序要求表5-38。 EMIF 异步存储器开关特性)。

    [报价] 如果是、则电子表格中使用的示例值与 TRM 中显示的值不同。 [/报价]

    是的、这些值应与 xls 工作表中使用的值相同、但我们知道示例中的时序值需要更正、并将在下一版本中更正、但您可以从  器件数据表中引用这些值。

    此致、

    Vivek Singh

     

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

    感谢您的澄清。 对于 Tsu、我将使用条目编号12 "tsu (EMDV-EMOEH)设置时间、EMxD[y:0]在 EMxOE 高电平之前有效";对于 Tsu、我将使用表5-37中的条目编号13 "th (EMOEH-EMDIV)保持时间、EMxD[y:0]在 EMxOE 高电平之后有效"。 EMIF 异步存储器时序要求。

    关于异步器件的时序计算、我还有几个问题

    1) 1)时序 td 是否与电子表格中的条目"PCB 延迟(ns)估算的单向 PCB 传播延迟"相同?

    2) 2)数据表中的 TD、我需要考虑哪些条目? 是表5-37中的第2条"tw (EM_WAIT)脉冲持续时间、EMxWAIT 置为有效和置为无效"。 EMIF 异步存储器时序要求、对于100MHz 时钟频率、这相当于20ns?

    3)在 TRM 的示例计算中、公式不考虑电子表格中考虑的任何误差值(-3表示设置和保持、-1表示选通)、但在 TRM 中的末尾、10ns 裕度被添加到计算的寄存器值中。 应考虑哪种方法?

    4) 4) TRM 示例和电子表格之间的计算公式也存在差异、这可能导致最终计算值的变化。 应使用哪一个?
    a) TRM - R_STROBE >=(TD + tELQV + Tsu)×fEM1CLK - 1
    电子表格- R_STROBE =(读取选通时间(ns)-读取选通错误、最小值(ns)
    +读取设置、最小值(ns)+ 2* PCB 延迟(ns)×fEM1CLK - 1.

    b) TRM - R_HOLD >= TH×fEM1CLK - 1
    电子表格- R_HOLD =(读取保持时间(ns)-读取保持错误、最小(ns)+读取保持、最小(ns)×fEM1CLK - 1

    c) TRM = R_Setup >= Tsu x fEMIFCLK
    电子表格- R_Setup =(读取设置时间(ns)-读取设置错误、最小值(ns))×fEM1CLK - 1.
    在设置时间的电子表格中、有2个单独的条目、一个在公共区域 EMIF 异步读取要求(Oe/受控读取)中、另一个在异步 CSx_CR 配置中、公式中仅考虑后面的条目。

    d) TRM - W_STROBE >= tELEH×fEM1CLK - 1
    电子表格- W_STROBE =(写选通时间(ns)-写选通错误、最小值(ns))×fEM1CLK - 1

    e) TRM - W_SETUP + W_HOLD >= tEHEL×fEM1CLK - 2
    W_SETUP + W_STROBE + W_HOLD >= tAVAV×fEM1CLK - 3.
    电子表格- W_SETUP =(写入设置时间(ns)-写入设置错误、最小值(ns)) x fEM1CLK - 1.
    W_HOLD =(写入保持时间(ns)-写入保持错误、最小值(ns)) x fEM1CLK - 1。

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

    [引用 user="Aditya Padmanabha"]1)计时 TD 是否与电子表格中的"PCB 延迟(ns)估算单向 PCB 传播延迟"条目相同?

    2) 2)数据表中的 TD、我需要考虑哪些条目? 是表5-37中的第2条"tw (EM_WAIT)脉冲持续时间、EMxWAIT 置为有效和置为无效"。 EMIF 异步存储器时序要求、对于100MHz 时钟频率、该要求的值为20ns?[/QUERP]

    TD (周转时间)是 EMIF 接口在读取和写入之间切换或切换到不同 CS 器件时插入的延迟。  这旨在为外部组件提供响应功能状态变化的时间。  这不同于传播延迟。

    如果外部组件忙、EMxWAIT 用于延迟数据的读取或写入。

    [引用 USER="Aditya Padmanabha"]3)在 TRM 中的示例计算中、公式不会考虑电子表格中考虑的任何错误值(-3表示设置和保持、-1表示选通)、但在最后、TRM 10ns 裕度将添加到计算的寄存器值中。 应考虑哪种方法?

    4) 4) TRM 示例和电子表格之间的计算公式也存在差异、这可能导致最终计算值的变化。 应使用哪一个?

    理论上、您可以考虑数据表误差并排除任意的10ns 裕度。  但是、通常会涉及一些试验和错误、以便在系统性能和稳定性之间找到良好的平衡。  通常、最好从较慢的时序开始、以确认存储器正在工作、然后加速时序以提高性能。

    电子表格和 TRM 方法将为典型系统提供类似的设置。  为了便于使用、我建议使用电子表格。

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

    尊敬的 Tlee、Vivek:

    感谢您的参与。

    数据表中提到的 TD (周转时间)((TA)*E-3至(TA)*E+2 ns)取决于异步组 寄存器中的 TA 寄存器字段。

    但在 TRM 中提到的示例配置中、TD 描述看起来不同-"TD (输出延迟时间、EM1CLK 高电平到输出信号有效)"。

    此外、用于计算读取选通时间的公式使用 TRM 和电子表格的不同时序

    a) TRM --> R_strobe >=(TD + tELQV + Tsu)×fEM1CLK - 1.

      电子表格--> R_strobe =(读取选通时间(ns)-读取选通错误、最小值(ns)+读取设置、最小值(ns)+ 2* PCB 延迟(ns))×fEM1CLK -1

    由于 PCB 延迟和 TD 是两个不同的时序、如果我们正确地采用 TRM 示例和电子表格方法、我们将获得两个不同的选通时间值?

    您是否有任何突出显示什么是 PCB 延迟的时序图?

    谢谢、

    Aditya

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

    Aditya、

    Vivek 告诉我、TRM 提到 TD 是错误的、将会被删除。

    电子表格中的 PCB 延迟是信号在 MCU 和外部组件之间传输布线长度的时间。

    Tommy

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

    大家好、Tommy、Vivek、

    那么、最好使用 PCB 延迟而不是 TD 来计算 R_strobe 的时间?

    PCB 延迟 MCU 的值是否特定? 如何找到它? 我在 MCU 数据表中看不到任何对 PCB 延迟的引用。

    谢谢、

    Aditya

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

    延迟是特定于布局的。 您可以在互联网上搜索"PCB 布线传播延迟计算器"、以查看相关的输入变量。

    Tommy
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Aditya、如果您对此有进一步的疑问、请告知我们。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Vivek、

    很抱歉耽误您的回复。 我还在做其他事情。

    当您说 PCB 延迟计算是特定于布局时、我假设它是特定于 C2000器件的吗? 如果是这样、我在哪里可以获得用于计算 PCB 延迟的参数。

    该公式需要相对介电常数、电介质高度、走线宽度和走线厚度等参数。 在哪里可以找到处理器的这些参数?

    在 Excel 中、我看到 PCB 延迟的值取值为0.7ns。

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

    这些都是特定于安装了 C2000的 PCB (印刷电路板)的参数。 您的电路板设计人员应该能够确定这些值。

    实际上、在大多数电路板设计中、PCB 延迟不会对存储器靠近 C2000的位置产生很大影响。 如果此参数引起您的担忧、只需将其保留为默认值0.7ns、并在遇到存储器访问问题时进行调整。

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

    非常感谢您对 EMIF 的时序相关查询所做的所有说明。

    此致、
    Aditya