有三种方法可以运行配置工具:从 S32DS、从终端和 JTAG 以及从命令行。
S32DS方法
1)确保EVB已通电并通过PEMicro(Universal Multilink)或Lauterbach连接到PC
2)启动S32DS for Vision
3)文件 -> 新建 -> S32V DDR配置项目
4)输入项目名称,例如“DDR_Config_test”。单击“下一步”
5)展开“S32V”并选择“S32V_234”
6) 单击“完成”以使用默认设置生成项目,或者,如果您愿意,可以查看或调整更多项目设置,单击“下一步”。为了本次演示,我们单击“下一步”。
a. 选择要应用设置的 DDR 控制器。为了演示,我们将其保留为默认值(第一个 DDR 控制器)
b.有一个选项可以从文件导入设置
c.板设置允许您从预定义配置列表中进行选择,每个 NXP S32V234 评估板都有一个配置
i. S32V234_EVB 适用于 LPDDR2(SCH28899 和 SCH28292(旧板))
二。X_TR_DVAL_625 用于 DDR3(SCH28662(旧板))
三。S32V234_NXP_EVB适用于SCH29288(S32V234-EVB2)
四、自定义允许选择更多选项。请参阅用户手册以了解更多详细信息
d.对于本次演示,我们选择 S32V234_EVB
e.单击“完成”
7)生成项目将需要几分钟。您将收到一个提示,要求您撰写 S32V DDR 配置透视图。单击“是”。
8)现在项目已生成,您可以在项目资源管理器中看到它
9)注意S32V DDR配置视角的组件和组件检查器视图。
10)从组件视图中选择组件“MMDC_0:Init_MMDC
11)在组件检查器窗口中,您可以看到所有的配置设置。您可以在此处修改设置。对某些高级设置所做的更改也可能会导致某些低级设置发生变化。设置更改后会自动运行一些一致性检查,如果配置无效,则会触发错误消息。
一个。有关高级设置影响低级设置的示例,请尝试将“内存类型”从 LPDDR2 更改为 DDR3。您可以看到突发长度、列地址宽度和行地址宽度已经改变。
b.以无效配置的一致性检查为例,尝试将 CAS 读取延迟值 (MDCFG0) 从 8 更改为 12(鼠标悬停工具提示显示的有效范围为 3-11),您将看到出现错误。改回 8,错误就消失了。
12)打开配置寄存器视图。窗口 -> 显示视图 -> 其他 -> 处理器专家 -> 配置寄存器。这显示了设置在内存映射中的显示方式。当您更改设置时,这里的值将更新,受影响的行将突出显示。通过更改组件选择器窗口的 MDCTL 中的列地址宽度来尝试。同样,您可以尝试在配置寄存器视图中手动更改值,并查看组件选择器窗口中的设置是否也更新。
*提示:在搜索栏中输入视图名称以便更快地找到它
13)所有设置更改完成后,即可生成代码。按下组件视图中的“生成处理器专家代码”按钮。生成的.c和.h文件将出现在配置项目的“Generated_Code”文件夹中。这些可以复制到您的应用程序项目中。
或者
14) 返回组件检查器视图,其中有导入和导出设置的选项卡。导入设置选项卡将允许您导入现有的设置文件,如新项目向导中所示。从“导出设置”选项卡中,您可以生成用于存储或共享的设置文件。包含每个受支持的 NXP EVB 的 MMDC_0 和 MMDC_1 设置文件,可位于“C:\NXP\S32DS_Vision_v2.0\eclipse\ProcessorExpert\Optimization\resources\S32V\Boards”,然后选择特定板的文件夹。
建议这些文件采用 CodeWarrior Register Text 格式。
15)现在选择“验证”选项卡(某些视图,例如配置寄存器,可以最小化以获得更好的视图)。在这里我们可以对所做的配置设置进行验证。现在是再次检查硬件连接的好时机。
16) 选择连接方法(PEMicro 或 Lauterbach,取决于您的设置)。我们将使用系统:S32V234;PEMICRO
17)按“连接到目标”
18) 勾选一个场景对应的方框。例如,选择“读取延迟校准”
19)选择“选择测试”选项卡
20)您可以从列表中选择测试。要查看测试背后的脚本,只需双击名称即可。为了加快操作速度,还提供了 ELF 文件版本。
21) 选择您想要执行的测试并按“开始验证”。例如选择“Write-Read-Compare-Elf”、“Walking Ones Elf”和“Walking Zeros Elf”。
22) 这些测试将尝试不同的值并确定哪些值有效,哪些无效。测试完成后,选择最佳值并将其写回项目配置设置。要查看值的变化,请转到“属性”选项卡并找到“PHY 读取延迟线配置”或恢复“配置寄存器”视图并查看值的变化。
23)对于每个测试,您可以在“摘要”选项卡的“测试结果”部分中看到发生的错误。还有更新的配置寄存器部分,其中显示寄存器和写入该寄存器的新值。有关错误的更多详细信息,请参阅“日志”选项卡,其中显示运行的每个测试的日志。最后有一个脚本选项卡,其中显示包含测试设置的每个测试的脚本。每个测试框都有颜色以反映测试结果。单击不同的按钮会导致下面的显示发生变化并显示该测试的结果。
24) 写入延迟校准测试场景与读取延迟校准测试场景非常相似,但写入延迟线配置将被更新。
25) 操作 DDR 测试运行相同的测试,但配置中的值没有改变。您可以将其设置为多次重复运行以测试稳定性。
终端窗口方法(JTAG)
这将检查 MMDC 模块中已上传的设置
1)确保 EVB 已通电并通过 PEMicro(通用多链路)或 Lauterbach(加载测试应用程序)连接到 PC,并通过 USB 电缆进行串行通信(用于终端访问)。
2)在S32DS中,创建一个简单的项目
a.文件->新建->S32DS应用程序项目
b.输入名称“测试”
c.选择 S32V234 Cortex-A53
d.下一个
e. 取消选中核心 2-4 的复选框
f.结束
3)设置调试配置
a. 运行->调试配置…
b.选择 test_A53_1_PNE
c.将 C/C++ 应用程序更改为 C:\NXP\S32DS_Vision_v2.0\utils\ddr_stresstool\ddr-test-uboot-jtag-s32v234.elf
d.选择“调试器”选项卡
e. 点击“高级选项”
f.启用初始化脚本复选框
g.浏览以查找 C:\NXP\S32DS_Vision_v2.0\eclipse\plugins\com.pemicro.debug.gdbjtag.pne_3.1.3.201709051622\win32\gdi\P&E\supportFiles_ARM\NXP\S32Vxxx\S32V234M100_DDR.mac
h.好的
4)单击“调试”。您将看到错误消息,表明无法找到源文件。这是预料之中的。
5)打开终端(例如PuTTY.exe)并使用已连接到 EVB 的 USB 端口连接串行线,速度设置为 115200、8 个数据位、1 个停止位,无奇偶校验或流控制。
6)单击S32DS调试器中的“恢复”。
7)在终端窗口中,您将看到测试脚本已启动。
8)选择MMDC通道(例如,对于MMDC1输入1)
9)选择DDR密度(例如,输入6表示32MB)
10)输入“y”接受DDR校准
11)输入“y”接受533MHz的DDR频率
12) 等待并观察测试完成。
13) 测试完成后,显示结果。您必须根据显示的信息手动更新您的设置。
14) 接下来,您可以选择运行 DDR 压力测试。