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.
您好,
我们希望在 GPMC 和 NOR 闪存类型的从器件之间实现通信、我们将在 以下配置下进行16位非多路复用异步读取写入操作
GPMC | 焊球引脚 | 地址 | 值 |
GPMC_a17 | D8. | 0x4A00 3554 | 0x5000E |
GPMC_A16 | C5 | 0x4A00 3498 | 0x50002 |
GPMC_a15 | D6. | 0x4A00 3494 | 0x50002 |
GPMC_A14 | 问题7 | 0x4A00 3490 | 0x50002 |
GPMC_A13 | A4 | 0x4A00 348C | 0x50002 |
GPMC_A12 | G1 | 0x4A00 3460 | 0x50000 |
GPMC_A11 | L3 | 0x4A00 346C | 0x50000 |
GPMC_A10 | J2 | 0x4A00 3468 | 0x50000 |
GPMC_A9 | H1 | 0x4A00 3464 | 0x50000 |
GPMC_A8 | K4. | 0x4A00 3460 | 0x50000 |
GPMC_A7 | K1 | 0x4A00 345C | 0x50000 |
GPMC_A6 | J1 | 0x4A00 3458 | 0x50000 |
GPMC_A5 | K2 | 0x4A00 3454 | 0x50000 |
GPMC_A4 | K3. | 0x4A00 3450 | 0x50000 |
GPMC_A3 | H6. | 0x4A00 34D4 | 0x70005 |
GPMC_A2 | L2 | 0x4A00 3448 | 0x50000 |
GPMC_A1 | 平方米 | 0x4A00 3444 | 0x50000 |
GPMC_a0 | M1 | 0x4A00 3440 | 0x50000 |
GPMC_AD15 | B4 | 0x4A00 343C | 0x50000 |
GPMC_AD14 | 答3. | 0x4A00 3438 | 0x50000 |
GPMC_AD13 | C4 | 0x4A00 3434 | 0x50000 |
GPMC_AD12 | C3 | 0x4A00 3430 | 0x50000 |
GPMC_AD11 | B3 | 0x4A00 342C | 0x50000 |
GPMC_AD10 | 答2. | 0x4A00 3428 | 0x50000 |
GPMC_AD9 | D3 | 0x4A00 3424 | 0x50000 |
GPMC_AD8 | C2 | 0x4A00 3420 | 0x50000 |
GPMC_AD7 | B2. | 0x4A00 341C | 0x50000 |
GPMC_AD6 | B1 | 0x4A00 3418 | 0x50000 |
GPMC_AD5 | D2 | 0x4A00 3414 | 0x50000 |
GPMC_AD4 | D1 | 0x4A00 3410 | 0x50000 |
GPMC_AD3 | C1 | 0x4A00 340C | 0x50000 |
GPMC_AD2 | E1. | 0x4A00 3408 | 0x50000 |
GPMC_AD1 | E2 | 0x4A00 3404 | 0x50000 |
GPMC_AD0 | F1 | 0x4A00 3400 | 0x50000 |
GPMC_wait0 | F6 | 0x4A00 34D8 | 0x70000 |
GPMC_cs0 | F3 | 0x4A00 34B4 | 0x70000 |
GPMC_CS1 | A6 | 0x4A00 34B0 | 0x70000 |
GPMC_CS3 | G3 | 0x4A00 34BC | 0x70000 |
GPMC_cs7 | L4 | 0x4A00 34C0 | 0x7701 |
GPMC_oen_ren | G5 | 0x4A00 34C8 | 0x70000 |
GPMC_Wen | G6 | 0x4A00 34CC | 0x70000 |
GPMC 配置 | |||
GPMC_SysConfig | 0x50000010 | 0x00000008 | |
GPMC_irqstatus | 0x5000001C | 0x00000100 | |
GPMC_TIMEOUT_CTRL | 0x50000040 | 0x00001FF0 | |
GPMC_CONFIG | 0x50000050 | 0x00000100 | |
GPMC_CONFIG_1 | 0x50000060 | 0x7A641000 | |
GPMC_CONFIG_2 | 0x50000064 | 0x00081D00 | |
GPMC_CONFIG_3 | 0x50000068 | 0x00010100 | |
GPMC_CONFIG_4 | 0x5000006C | 0x08021D03 | |
GPMC_CONFIG_5 | 0x50000070 | 0x01081F1F | |
GPMC_CONFIG_6 | 0x50000074 | 0x820302C0 | |
GPMC_CONFIG_7 | 0x50000078 | 0x00000000 | |
GPMC_CONFIG_7 | 0x50000078 | 0x00000F40 |
以便它从起始地址0x0映射到16 MB 的处理器存储器。 执行的读取操作、但没有活动。
我们正在执行的步骤包括:
1.将 CM_L3MAIN1_GPMC_CLKCTRL 0x4A008728配置为 0x0001
2.如 上表所示配置 PIMUX
3.通过设置 GPMC_SysConfig = 1来重置 GPMC
正在等待通过监控 GPMC_SYSSSTATUS 完成复位
配置 SysConfig、IRQENABLE、TIMEEUR_CONTINTRILE.ETC 寄存器
6.禁用 GPMC_SysConfig_7中的 CS
配置 GPMC_CONFIG[1:7]寄存器
启用 GPMC CS
请确认我们在哪里出错或遗漏了需要注意的东西。
此致、
Sarath
您好 Sarath、
根据上面 GPMC 的配置、您可以看到表15-515中的位。 GPMC_CONFIG1_I 设置为同步
我建议您仔细阅读 TRM (技术参考手册)、并确保为 NOR 存储器设置了正确的配置。 第15.4.5章
[引用 userid="516547" URL"~/support/processors-group/processors/f/processors-forum/1192486/am5706-gpmc-is-not-working-as-expected-with-nor-flash-slave ]16 位访问非复用异步读取写入[/quot]请参阅以下章节:
15.4.5.3 NOR 模式下的 GPMC 配置................................................................... 3615
15.4.4.10 NOR 访问说明
15.4.4.10.1异步访问说明
您好、Josue、
感谢您的回答。
正如您所说的" 我建议查看 TRM (技术参考手册)、并确保为 NOR 存储器设置正确的配置。 第15.4.5章"、我们已经完成了这一过程、并将 GPMC_CONFIG1寄存器更改为异步运行模式。
在完成以下所述配置后:
/ /
HW_WR_REG32 (0x50000010 0x00000002);// GPMC 复位0x2用于复位
while (0 =(HW_RD_REG32 (0x50000014)&0x1));//检查 GPMC_SYSSSTATUS 以完成复位。
HW_WR_REG32 (0x5000001C、0x00000100);//GPMC_IRQENABLE
HW_WR_REG32 (0x50000040、0x00001FF0);//GPMC_TIMEOUT_CONTROL
HW_WR_REG32 (0x50000050、0x00000100);//wait0高电平有效 GPMC_CONFIG
HW_WR_REG32 (0x50000078、0x00000000);for (int i=0;i<99999;i++);//禁用 CS GPMC_CONFIG7_I
HW_WR_REG32 (0x50000060、0x52641000);//16位访问 GPMC_CONFIG1_I
HW_WR_REG32 (0x50000064、0x00081D00);//GPMC_CONFIG2_I
HW_WR_REG32 (0x50000068、0x00010100);//GPMC_CONFIG3_I
HW_WR_REG32 (0x5000006C、0x08021D03);//GPMC_CONFIG4_I
HW_WR_REG32 (0x50000070、0x01081F1F);//GPMC_CONFIG5_I
HW_WR_REG32 (0x50000074、0x820302C0);//GPMC_CONFIG6_I
HW_WR_REG32 (0x50000078 0x00000F41);//启用 CS 并设置 GPMC_CONFIG7_I 的掩码地址
/ /
意见1:
当我们通过存储器浏览器刷新 GPMC 0x5000 0000的配置空间时、如果同时探测 CS0、我们将得到 CS0的响应、根据我们的了解、我们不知道为什么会得到这种响应。
意见2:
当我们刷新 GPMC 0x5000 0000的配置空间时、寄存器 GPMC_NAND_COMMAND_I、GPMC_NAND_ADDRESS_I、GPMC_NAND_DATA_I 使用非零值进行更新。
意见3:
当我们看到上述两个观察结果、对我们的错误发生困惑时、我们发现 GPMC_ERR_TYPE 和 GPMC_ERR_ADDRESS 获得的值不为零
尽管我们遵循了您提到的部分并获得了这些配置值、但我们仍然无法实现预期的行为。 终端设备是 NOR、但为什么 NAND 寄存器不会生效。 请向我们介绍一下我们错过的情况。
此致、
Sarath