Other Parts Discussed in Thread: 66AK2H12
您好!
由于论坛上的支持者、我们的项目持续进行。 非常感谢。
目前、我重点介绍了我们平台上的 EMIF 操作(特定电路板内的66ak2h12)
我们使用 CE1空间(0x34000000)进行通信、HW (FPGA)尝试访问该区域。
但观察到一些奇怪的操作。 当 DSP 在 CE1空间写入16位数据时、HW 捕捉32位数据。
测试过程)
n`t 在 GEL 脚本上添加 EMIF 初始化代码。(实际上、我们没有使用 NOR/NAND 闪存。 我n`t 初始化 NOR/NAND 相关寄存器)
2.在 GEL 脚本上添加测试脚本作为 hotemu 函数。 因此、我们可以根据需要对其进行测试。
3、芯片作用域连接在 FPGA 上。 当在 FPGA 上接收到信号时、它可以对其进行分析(数据大小、数据内容、写使能信号等)
我们的代码片段如下所示:
初始化:
EMIF_Init()
{
GEL_TextOut ("修订版=%x \n"、、、、、 EMIF_RCSR);
GEL_TextOut ("EMIF 已启动\n");
// W_SETUP = 0x3、W_STROBE = 0x7、W_HOLD = 0x1
// R_Setup = 0x3、R_STROBE = 0xF、R_HOLD = 0x1
//数据总线:16位
EMIF_A2CR = 0x0C72679D;
GEL_TextOut ("EMIF Init DONE);
}
测试代码:
热菜单 EMIF_Test()
{
*(无符号短整型*)(0x34000018)=(无符号短整型) 0x1234;//用于测试16位数据
//*(无符号短整型*)(0x34000010)= 0x12345678;
//*(无符号短整型*)(0x34000020)= 3;
}
预期结果:FPGA 接收0x1234 (16位)
观察到的结果:FPGA 接收0x00001234 (32位) <- FPGA 接收到两个写使能信号并获取数据(0x1234和0x0000)
这是 EMIF 的正确操作吗? 或者、我应该考虑另一侧的东西吗?
提前感谢。
Chanseok