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.

[参考译文] DLP 产品论坛

Guru**** 1649650 points
Other Parts Discussed in Thread: DLPC6401, SEGGER, DLPC350
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/dlp-products-group/dlp/f/dlp-products-forum/1378653/dlp-products-forum

器件型号:DLPC6401
主题中讨论的其他器件: SEGGERDLPC350

工具与软件:

我们在尝试启动 DLPC6401时遇到问题。  在尝试解决问题时出现了几个问题。

  • 在哪里可以找到 DLPC6401的 BSDL 文件?
  • A21和 A22上用于64Mbit 闪存的正确下拉配置是什么?
  • DLPC6401是否支持 Macronix MX29LV640ETXEI-70g NOR 闪存?
  • 什么会阻止 INIT_DONE 变为高电平?
  • 在哪里可以找到 DLPC6401 GUI 的 v 2.0?

关于(1)、数据表显示、"支持 JTAG 边界扫描测试"、但是这需要一个 BSDL 文件中的链定义。  我们已使用 Segger J-Link 通过 JTAG 成功连接至 DLPC6401、并且能够通过多个程序(urjtag、openocd、TopJtag 探针)读取制造商和器件 ID。  通过 JTAG 读取的制造和器件 ID 与 DLPC350相匹配、但这两个器件的引脚排列存在差异、因此我不确定是否可以选择使用 DLPC350的 BSDL。

关于(2)、数据表显示"在引脚 GPIO_16和 GPIO_17上分别共享两个最高有效地址位(即 PM_ADDR_22和 PM_ADDR_21)"和"如果要将这些 GPIO 引脚重新配置为程序存储器地址引脚、则需要板级下拉电阻器"。

然后是此表…

该参考设计下拉了 PM_ADDR_21和 PM_ADDR_22。  脚注是否只是重申需要下拉 PM_ADDR_21和 PM_ADDR_22、或者它是否指示也需要下拉 GPIO_35以选择64Mbit 器件?  本参考设计无用、GPIO_35和 GPIO_36未连接至任何对象。

数据表显示"在软件将引脚从 GPIO 重新配置为程序存储器地址之前、无法访问闪存的上部"。  这是由引导加载程序处理吗?  

关于(3)、在2018年 Alex Le 的博文"DLPC6401:连接到 DLPC6401的闪存"中、Sanjeev 回复说:"如果控制器不支持特定的闪存器件、我们将无法使用它。"  该参考设计使用32 Mbit NOR 闪存。  原理图使用 Spansion/Cypress/Infineon S29JL032H、BOM 列出了 S29GL032N90TFIR04、但两者均未提供。  我们已选择64 Mbit NOR 闪存的 Macronix MX29LV640ETXEI-70g。  该器件能否正常工作?  在控制器支持的某处是否列出了器件?

引导加载程序是我们从 TI 获得的 DPP6401_APP_01.03.01_RVDS_3.1存档文件中的预编译二进制文件。  我们使用引导加载程序(DPP6401_APP_v1.3.1/dev/DPP6401/bootloader/bootloader.bin)和应用程序(DPP6401_APP_v1.3.1/dev/app6401/app6401_data/flash_afe1000)对闪存进行了预编程、但器件无法引导。  我们怀疑闪存的编程方法可能存在问题、因此我尝试使用 TI 的 JTAGFlashProgrammer 实用程序(DLPLCR4500JTAG_v1.0_win_2014_04_01.zip)对其进行重新编程。  我们为 MX29LV640ET 在 FlashDeviceParameters.txt 文件中添加了一个条目。  我曾尝试使用 FTDI C232HM 电缆代替 UM232H 模块。  我可以在范围内看到 JTAG 流量、但从读取到读取的 TDO 数据不一致。  我已经订购了该模块、因此在我获取该模块时会进行尝试。

关于(4)、我们主要是尝试确定处理器是否曾尝试读取闪存、但在将 INIT_DONE 设为高电平之前、不清楚控制器内发生了什么。  我们从未看到 INIT_DONE 变为高电平。  在 PWRGOOD 变为高电平之前、电压轨全部正常、而 POSENSE 在 PWRGOOD 之后变为高电平。

关于(5)、Sanjeev 在8月13日发布了一篇文章、回答 Alex Le 有关 DLPC6401所连接闪存的问题。在该文章中、他表示:"在电路板上放置可正常运行的闪存、然后使用 DLPC6401 GUI 版本- 2并对刷写器件进行实验。"  我们只能找到 GUI 的版本1。