1. 访问DDR3
我们使用名为DDR3-test.c的PetaLinux应用访问DDR3存储器。该应用经过精心设计,可向DDR存储器位置写入数据并从这里读取数据。DDR3是双列直插式存储器模块,可提供用于存储用户代码和数据的SDRAM。如上文所述,用户需要知道DDR存储器的开始地址和结束地址,分别是0xC0000000和0xC7FFFFFF。存储器的容量为512兆字节。Linux内核驻留在DDR存储器的初始存储器位置。因此需要选择DDR3存储器的写入位置,以避免破坏Linux内核。我们使用以下命令向DDR3存储器写入数据:
#DDR3-test –g 0xc7000000 –o 15
其中DDR3-test是应用名称、-g是DDR3存储器的物理地址、-o是输出、15是准备在0xc7000000位置写入DDR3存储器的值。为测试该值是否能写入预计的位置,我们使用以下命令从DDR3存储器读取数据:
#DDR3-test –g 0xc7000000 –i
图7:通过QEMU运行PetaLinux
该应用旨在控制8位离散输出,可通过将板载LED连接至GPIO进行测试。
值15显示在终端上,这说明DDR3存储器读写操作正在成功进行。
2. 使用/dev/mem访问GPIO
对于接下来的应用测试,我们使用名为gpio-dev-mem-test.c的PetaLinux应用访问了通用I/O(GPIO)。该应用的设计目的是控制8位离散输出并通过将板载LED连接至GPIO来测试该输