Other Parts Discussed in Thread: TMS320F28379D, ADS4222, ADC3908S025
部件号: TMS320F28379D
主题中讨论的其他器件: ADS4222、 ADC3908S025、 C2000WARE
-
对于 2 个数据读取操作、根据寄存器中编程的值、第一次读取操作的保持周期和第二次读取操作的设置周期应仅为 10ns(2 个时钟周期)。 但当我在示波器中观察到 OE 信号时、可能由于一些开销、需要 35ns(7 个时钟周期)。 出于某种原因、有 5 个额外的时钟周期、我无法减少。 但选通周期恰好出现在 15ns。 由于 OE 是低电平有效信号、因此我需要在将其提供给 ADC 输入时钟之前对其进行反相。 这会产生 15ns 的高电平周期和 35ns 的低电平周期、从而将占空比降低到 30%。 这对于 ADC 来说是不可接受的、因此我也需要将选通周期增加到 35ns 以保持 50%的占空比。 这会将读数频率降低到 14MHz 左右。 这低于我实现 25MSPS 的目标。 如果我可以将 7 个时钟周期减少到 4 个时钟周期、则总周期为 4+4=8 个周期(即 40ns)、速率将达到 25MSPS。 您能否就 DMA 需要 7 个时钟周期的原因以及是否有任何方法可以减少它提供任何指导? 我还尝试了 DMA、在 LS0RAM 中使用局部静态变量的目标地址而不是全局变量、但它仍然需要 7 个周期。 我找不到任何增加 DMA 时钟的方法、我想它在 200MHz 的 SYSCLK 上运行、无法更改。 我的目标是达到 25MSPS、如果我没有考虑、您能通过确定任何方法来帮助我吗?
请注意:为了验证是否可以通过 EMIF 读取任何外部 ADC、我已尝试通过将数据总线[0:7]和 OE 作为时钟输入连接到 ADC 来将 EMIF 与 ADC3908S025 连接起来。 原因是我们已经构建了一个带有 ADC — 模拟传感器和放大电路的定制电路板。 我能够在异步模式下通过 EMIF 成功读取 ADC3908S025、因此继续使用该架构。
-
由于 EMIF 仅是 SDR、即它仅在 OE 的上升沿进行采样、但 ADS4222 能够在 DDR 模式下提供两个通道数据。 因此、我们正在考虑使用具有 DDR 功能的 FIFO 来高速捕获两个通道的数据、然后通过 EMIF 以较慢的速度读取它们。 但是、我在 25MHz 上找不到任何具有 DDR 功能的 FIFO。 您能推荐任何器件(如有)吗?

