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.

[参考译文] AM3358:GPMC 总线时序

Guru**** 2540720 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/594627/am3358-gpmc-bus-timing

器件型号:AM3358

 您好!

有关 AM3358BZCZ100 GPMC 总线时序的问题。

随附的图显示了连接到 Spartan 6并使用 Chipscope 和电路图观察到的 GPMC 的波形。
GPMC 的 GPMC_FCLK (BUS)频率为104MHz、但在 Spartan 6内、它与频率为105MHz 的时钟同步、并且被使用。
Chipscope 的采样时钟为105MHz。(105MHz = 24MHz (clkout) x 4.375 Spartan 6内部 PLL)

下面是一个问题。
在 cs_d <1>的上升沿之后、We_d <1>的上升沿为4个周期、但理论上它应该为2个或3个周期。
(WE_d <1>、cs_d <1>、OE_d <1>是正逻辑。)

1个周期与采样时间不同,为什么超过2个周期?
CPU 总线问题?
我想知道发生这种情况的原因。

GPMC 总线时序设置如下。

 R/W 异步、单模式、16位数据总线、ADR/数据多路复用器

///--------------------------------
// FPGA SP6总线设置
///--------------------------------
FCLKDIVIDER  0

CSWROFFTIME 10.
CSRDOFFTIME 10.
CSEXTRADELAY 0
CSONTIME     1.

ADVAADMUXWROFFTIME 0
ADVAADMUXRDOFFTIME 0
ADVWROFFTIME   2.
ADVRDOFFTIME   2.
ADVEXTRADELAY  0
ADVAADMUXONTIME 0
ADVONTIME      1.

WEOFFTIME      9.
WEEXTRADELAY   0
选项       3.
OEAADMUXOFFTIME 0
OEOFFTIME     10.
OEEXTRADELAY   0
OEAADMUXONTIME 0
OEONTIME       3.

PAGEBURSTACCESSTIME 0

RDACCESSTIME 9.
WRACCESSTIME 9.
WRCYCLETIME 11.
RDCYCLETIME 11.

WRDATAONADMUXBUS   3.
CYCLE2CYCLEDELAY   1.
CYCLE2CYCLESAMECSEN 0
CYCLE2CYCLEDIFFCSEN 0
BUSTURNAROUND      1.

IOREG32 (GPMC0_BASE、GPMC_CONFIG1 (1)) = 0x1200 | FCLKDIVIDER |(1<<22) | (1<<21) |(1<<18);// R (B21)/W (B22)等待监视器
IOREG32 (GPMC0_BASE、GPMC_CONFIG2 (1)) =(CSWROFFTIME << 16)|(CSRDOFFTIME << 8)|(CSEXTRADELAY << 7)| CSONTIME;
IOREG32 (GPMC0_BASE、GPMC_CONFIG3 (1)) =  (ADVAADMUXWROFFTIME << 28)|(ADVAADMUXRDOFFTIME << 24)|(ADVWROFFTIME << 16)|(ADVRDOFFTIME << 8)
            |( ADVEXTRADELAY <<7 )|( ADVAADMUXONTIME <<4 )|( ADVONTIME );
IOREG32 (GPMC0_BASE、GPMC_CONFIG4 (1)) =(WEOFFTIME << 24)|(WEEXTRADELAY << 23)|(WEONTIME << 16)
            ( OEAADMUXOFFTIME <<13 )|( OEOFFTIME <<8 )|( OEEXTRADELAY <<7 )|( OEAADMUXONTIME <<4 )| OEONTIME;
IOREG32 (GPMC0_BASE、GPMC_CONFIG5 (1)) =(PAGEBURSTACCESSTIME << 24)|(RDACCESSTIME << 16)|(WRCYCLETIME << 8)| RDCYCLETIME;
IOREG32 (GPMC0_BASE、GPMC_CONFIG6 (1)) =(WRACCESSTIME << 24)|(WRDATAONADMUXBUS << 16)|(CYCLE2CYCLEDELAY << 8)
            (CYCLE2CYCLESAMECSEN << 7)|(CYCLE2CYCLEDIFFCSEN << 6)| BUSTURNAROUND;
IOREG32 (GPMC0_BASE、GPMC_CONFIG7 (1)) = 0xf00| 0x0040 | 0x18; // CSn (1) addr= 0x18000000 FPGA*/
//
//--------------------------
//

此致、
伊索

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

    e2e.ti.com/.../fig.pdf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我对这个时序图的理解不多。 这些是实际的外部 GPMC 信号吗? 如果是、请相应地命名它们。 此外、请发布实际的 GPMC_CONFIGx 寄存器设置。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们的一位团队工程师提出的其他意见:

    "我担心芯片范围(内部 FPGA 逻辑分析仪工具)的工作频率不超过所捕获信号的2倍。 我读错了吗? 您可能需要澄清采样率。"
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../fig2.pdf

    Thaks、

    下面是一个设置条件。

    SPRS717J–2011年10月–2016年4月修订
    7.7.1.2 GPMC 和 NOR 闪存—异步模式

    GPMC_FCLK:104MHz

    ------ 问题部分
    FA25 = E
    E=((WEOnTime - CSOnTime) x (TimeParaExtraularity + 1)+0.5x (WEExtraDelay - CSGranDelay)) xGPMC_FCLK
                  3                   1                       0                                                                    0 0
    E= 2 x GPMC_FCLK <- 2个周期
     在采样时钟分辨率的限制下增加1个周期。(105Mhz)
     芯片范围捕获信号--> 2或3个周期
     芯片范围捕获信号--> 4个周期,超过1个周期?
     我设置的周期计数(2 x GPMC_FCLK)是否会增加某种条件?
     如果在 AM3358BZCZ100没有这种情况、我会调查 Spartan 6侧。

    ------
    FA1 = A
    A=(CSWrOffTime - CSOnTime) x (TimeParaGranularity + 1) xGPMC_FCLK
                    10           1                             0  
    A= 9 x GPMC_FCLK
    ------
    FA27 = F
    f=((WEOffTime - CSOnTime) x (TimeParaExtraularity + 1)+ 0.5x (WEExtraDelay - CSGranDelay)) xGPMC_FCLK
                  9               1                      0                                                                         0 0
    F= 8 x GPMC_FCLK
    ------
      最小    典型值  最大
    FAN-0.2n < FAN < FAN+2.0ns
    ------

    此致
    伊索

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


    以下是实际的 GPMC 寄存器(来自 CCS5存储器浏览器)。

    GPMC_Registers_DUMP.jpg (红色框矩形-- GPMC_CONFIG1_1、..GPMC_CONFIG1_7)

    32位十六进制 TI 样式
    0x50000000 00000060 00000000 00000000 00000000 00000000 00000001 00000000 00000000 00000000 00000000 00000000  
    0x50000028 00000000 00000000 00000000 00000000 00000000 00000000  00000000 00001FF0 400000DC 00000211 00000000
    0x50000050 00000000 00000101 00000000 00000000 00001200 00101001 00020201 0F031003 000F1111 0F030101
    0x50000078 00000E48 E59F0130 E321F0DB E2800010 00000000 00000000 00641200 000A0A01 00020201 09030A03
    0x500000A0 00090B0B 09030101 00000F58 00570056 00590058 005B005A 00000000  00001000 00101001
    0x500000C8 22060514 10057016 010F1111 8F070000 00000F00 ???????????  ???????  ???????  00000000 00000000
    0x500000F0 00001000 00101001 22060514 10057016 010F1111 8F070000 00000F00 ???????????  ???????  ???????
    0x50000118 00000000 00000000 00001000  00101001 22060514 10057016 010F1111 8F070000 00000F00 ???????????
    0x50000140 ???????  ???????  00000000 00000000 00001000 00101001 22060514 10057016 010F1111 8F070000
    0x50000168 00000F00 ?????????  ???????  ???????  00000000 00000000 00001000 00101001 22060514 10057016
    0x50000190 010F1111 8F070000 00000F00 ??????????  ???????  ???????  00000000 00000000 00001000 00101001
    0x500001B8 22060514 10057016 010F1111 8F070000 00000F00 ???????????  ???????  ???????  00000000 00000000
    0x500001E0 00004000 00000000 00000000 00000000 00000000 00001030 00000000 FFFFF000 00000000 00000000 0000
    0x50000208 00000000 00000000 00000000 00000000 00000000 00000000  00000000 00000000 00000000 00000000 00000000 00000000 00000000
    0x50000230 00000000 00000000 00000000 00000000 00000000 00000000  00000000 00000000 00000000 00000000 00000000 00000000 00000000
    0x50000258 00000000 00000000 00000000 00000000 00000000 00000000  00000000 00000000 00000000 00000000 00000000 00000000 00000000
    0x50000280 00000000 00000000 00000000 00000000 00000000 00000000 00000000  00000000 00000000 00000000 00000000 00000000 00000000 00000000

    此致
    伊索

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这些设置似乎有效。 您是否已使用示波器验证了实际的 GPMC 信号?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在改造 HDL (频率 x4)后,该现象消失了。
    我的结论是,原因是斯巴达。

    此致
    伊索