ZHCAC41 February   2023 TMS320F280025C

 

  1.   摘要
  2.   商标
  3. 1引言
  4. 2串行端口设计方法
    1. 2.1 步骤 1:了解设计要求
    2. 2.2 步骤 2:识别至 CLB 逻辑块的所需输入
      1. 2.2.1 GPIO 输入限定
      2. 2.2.2 CLB 输入设置
    3. 2.3 步骤 3:识别来自 CLB 逻辑的所需输出
      1. 2.3.1 同步输出信号
      2. 2.3.2 输出信号调节
    4. 2.4 步骤 4:设计 CLB 逻辑
      1. 2.4.1 资源分配
      2. 2.4.2 在 CLB FIFO 和 MCU RAM 之间交换数据
      3. 2.4.3 CLB 逻辑状态和触发标志
        1. 2.4.3.1 状态/标志位
        2. 2.4.3.2 触发位
    5. 2.5 步骤 5 :仿真逻辑设计
    6. 2.6 步骤 6 :测试 CLB 逻辑
  5. 3示例 A:在音频应用中使用 CLB 输入和输出 TDM 流
    1. 3.1 示例概述
    2. 3.2 步骤 1:了解设计要求
    3. 3.3 步骤 2:识别至 CLB 逻辑块的所需输入
    4. 3.4 步骤 3:识别来自 CLB 逻辑的所需输出
    5. 3.5 步骤 4:设计 CLB 逻辑
      1. 3.5.1 资源分配
      2. 3.5.2 TDM 字计数器
      3. 3.5.3 FSYNC 和 DATA1 输出同步
    6. 3.6 步骤 5 :仿真逻辑设计
    7. 3.7 步骤 6 :测试 CLB 逻辑
      1. 3.7.1 硬件设置和连接
      2. 3.7.2 软件设置
      3. 3.7.3 测试输出建立时间和保持时间
      4. 3.7.4 测试数据完整性
  6. 4示例 B:在照明应用中使用 CLB 为 LED 驱动器实施定制通信总线
    1. 4.1 示例概述
    2. 4.2 步骤 1:了解设计要求
    3. 4.3 步骤 2:识别至 CLB 逻辑块的所需输入
    4. 4.4 步骤 3:识别来自 CLB 逻辑的所需输出
    5. 4.5 步骤 4:设计 CLB 逻辑
      1. 4.5.1 TX 逻辑块逻辑
      2. 4.5.2 RX 逻辑块逻辑
      3. 4.5.3 数据时钟
    6. 4.6 步骤 5 :仿真逻辑设计
    7. 4.7 步骤 6 :测试 CLB 逻辑
      1. 4.7.1 硬件设置和连接
      2. 4.7.2 软件设置
      3. 4.7.3 测试输出建立时间和保持时间
  7. 5参考文献

测试输出建立时间和保持时间

来自 CLB 的输出 TDM 流中的一个关键考虑因素是接收器件看到的预期建立时间和保持时间。为了测量建立时间和保持时间,使用一个示波器来持续捕获 CLB 的输出。#GUID-44D57C63-7D6E-4208-BA22-2911E1616CAE 显示了未将锁存和延迟逻辑添加到 FSYNC_OUT 和 DATA1_OUT 信号的 TDM 输出。由于 DATA1_OUT 信号中存在延迟,相对于 BCLK_OUT,DATA1_OUT 的建立时间和保持时间会减少。

GUID-20220916-SS0I-ZBRB-QMNP-ZSKHFRVFVBX2-low.png图 3-15 无锁存和延迟逻辑的 TDM-8 输出

#GUID-E0F59FE5-F1A1-4126-8B31-E83AE0F3F4A3 中显示的示波器图显示了最终的 TDM 输出,其中的锁存和延迟逻辑已添加到 FSYNC_OUT 和 DATA1_OUT 信号中。使用这种方法可以大大改善建立时间和保持时间。

GUID-20220916-SS0I-QLKN-GD0J-F0M3VMV5SPGW-low.png图 3-16 最终 TDM-8 输出

由于 BCLK_OUT 必须在没有抖动的情况下通过 CLB 逻辑块传递,因此在未对 BCLK_OUT 引入抖动的情况下无法准确控制 BCLK_OUT 和其他两个信号之间的时序。但在这种情况下,建立时间和保持时间是可以接受的。如果需要,可以使用 CLB 逻辑块中的 AOC 反转 BCLK_OUT 信号,以换取建立时间和保持时间。

最后请注意 FSYNC_OUT 和 DATA1_OUT 信号上的 10ns 抖动。这是由于 CLB 逻辑块以 100MHz 的频率对传入的 BCLK_IN 信号进行采样所致。抖动进一步缩短了建立时间和保持时间。