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.

[参考译文] LP-AM263P:QSPI 1S/4S 的引导模式

Guru**** 2516170 points
Other Parts Discussed in Thread: TMDSCNCD263P, LP-AM263P

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1422727/lp-am263p-boot-modes-for-qspi-1s-4s

器件型号:LP-AM263P
主题中讨论的其他器件:TMDSCNCD263P

工具与软件:

大家好、团队成员:

1. TMDSCNCD263P 在 AM263Px 控制卡评估模块用户指南上支持 QSPI 4S/1S 引导模式、但 LP-AM263Px 在 AM263Px LaunchPad 用户指南上没有 QSPI 1S/4S 引导模式信息。 因此、 LP-AM263Px 支持 QSPI 4S/1S 模式?



2.在基于 SFDP 的 ospi_flash_dma 示例中、我将 OSPI 协议修改为1s-1s、但结果是失败。 我是否需要修改其他配置?

  

  • ti_board_open_close.c

/* FLASH DevConfig */
Flash_DevConfig gFlashDevCfg_IS25LX256 =
{
    .cmdExtType = OSPI_CMD_EXT_TYPE_REPEAT,
    .enable4BAddr = TRUE,
    .addrByteSupport = 1,
    .fourByteAddrEnSeq = 0xA1,
    .cmdWren = 0x06,
    .cmdRdsr = 0x05,
    .srWip = (1 << 0),
    .srWel = (1 << 1),
    .xspiWipRdCmd = 0x00,
    .xspiWipReg = 0x00000000,
    .xspiWipBit = (1 << 0),
    .resetType = 0x30,
    .eraseCfg = {
        .blockSize = 131072,
        .sectorSize = 4096,
        .cmdBlockErase3B = 0xD8,
        .cmdBlockErase4B = 0xDC,
        .cmdSectorErase3B = 0x20,
        .cmdSectorErase4B = 0x21,
        .cmdChipErase = 0xC7,
    },
    .idCfg = {
        .cmd = 0x9F, /* Constant */
        .numBytes = 3,
        .dummy4 = 0,
        .dummy8 = 0,
        .addrSize = 0
    },
    .protocolCfg = {
        .protocol = FLASH_CFG_PROTO_1S_1S_1S,
        .isDtr = FALSE,
        .cmdRd = 0x03,
        .cmdWr = 0x02,
        .modeClksCmd = 0,
        .modeClksRd = 0,
        .dummyClksCmd = 0,
        .dummyClksRd = 0,
        .enableType = 0xFF,
        .enableSeq = 0xFF,
        .dummyCfg = {
            .isAddrReg = FALSE,
            .cmdRegRd = 0x00,
            .cmdRegWr = 0x00,
            .cfgReg = 0x00,
            .shift = 0,
            .mask = 0x00,
            .cfgRegBitP = 0,
        },
    },
    .flashWriteTimeout = 120,
    .flashBusyTimeout = 72000000,
};

  • SFDP

================================================
                      SFDP                      
================================================
SFDP Major Revision                       : 0x1
SFDP Minor Revision                       : 0x9
Number of Parameter Headers in this Table : 4

Types of Additional Parameter Tables in this flash
---------------------------------------------------
4 BYTE ADDRESSING MODE INSTRUCTIONS TABLE
NOR SPI PROFILE TABLE 
OCTAL DDR MODE COMMAND SEQUENCE TABLE

Parsing of OCTAL DDR MODE COMMAND SEQUENCE TABLE table not yet supported. 
JSON Data for the flash :

{

	"flashSize": 33554432,
	"flashPageSize": 256,
	"flashManfId": "0x9D",
	"flashDeviceId": "0x5A19",
	"flashBlockSize": 131072,
	"flashSectorSize": 4096,
	"cmdBlockErase3B": "0xD8",
	"cmdBlockErase4B": "0xDC",
	"cmdSectorErase3B": "0x20",
	"cmdSectorErase4B": "0x21",
	"protos": {
		"p111": {
			"isDtr": false,
			"cmdRd": "0x03",
			"cmdWr": "0x02",
			"modeClksCmd": 0,
			"modeClksRd": 0,
			"dummyClksCmd": 0,
			"dummyClksRd": 0,
			"enableType": "0",
			"enableSeq": "0x00",
			"dummyCfg": null,
			"protoCfg": null,
			"strDtrCfg": null
		},
		"p112": null,
		"p114": null,
		"p118": {
			"isDtr": false,
			"cmdRd": "0x7C",
			"cmdWr": "0x84",
			"modeClksCmd": 0,
			"modeClksRd": 1,
			"dummyClksCmd": 0,
			"dummyClksRd": 7,
			"enableType": "0",
			"enableSeq": "0x00",
			"dummyCfg": null,
			"protoCfg": null,
			"strDtrCfg": null
		},
		"p444s": null,
		"p444d": null,
		"p888s": null,
		"p888d": {
			"isDtr": false,
			"cmdRd": "0x0B",
			"cmdWr": "0x12",
			"modeClksCmd": 0,
			"modeClksRd": 0,
			"dummyClksCmd": 8,
			"dummyClksRd": 14,
			"enableType": "0",
			"enableSeq": "0x00",
			"dummyCfg": {
				"isAddrReg": false,
				"cmdRegRd":"0x00",
				"cmdRegWr":"0x00",
				"cfgReg":"0x00000000",
				"shift":0,
				"mask":"0x00",
				"bitP":14
			},
			"protoCfg": {
				"isAddrReg": false,
				"cmdRegRd": "0x00",
				"cmdRegWr": "0x00",
				"cfgReg": "0x00000000",
				"shift": 0,
				"mask": "0x00",
				"bitP": 0
			},
			"strDtrCfg": {
				"isAddrReg": false,
				"cmdRegRd": "0x00",
				"cmdRegWr": "0x00",
				"cfgReg": "0x00000000",
				"shift": 0,
				"mask": "0x00",
				"bitP": 0
			}
		},
		"pCustom": { 
			"fxn": null
		}
	},
	"addrByteSupport": "1",
	"fourByteAddrEnSeq": "0xA1",
	"cmdExtType": "REPEAT",
	"resetType": "0x30",
	"deviceBusyType": "0",
	"cmdWren": "0x06",
	"cmdRdsr": "0x05",
	"srWip":  0,
	"srWel":  1,
	"cmdChipErase": "0xC7",
	"rdIdSettings": {
		"cmd": "0x9F",
		"numBytes": 5,
		"dummy4": 0,
		"dummy8": 0
	},
	"xspiWipRdCmd": "0x00",
	"xspiWipReg": "0x00000000",
	"xspiWipBit": 0,
	"flashDeviceBusyTimeout": 72000000,
	"flashPageProgTimeout": 120
}

谢谢!

路易

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Louis:

    我已收到您的问题、请允许我在本周结束之前回复。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Unknown 说:
    1. TMDSCNCD263P 在 AM263Px 控制卡评估模块用户指南上支持 QSPI 4S/1S 引导模式、但 LP-AM263Px 在 AM263Px LaunchPad 用户指南上未提供 QSPI 1S/4S 引导模式信息。 因此、 LP-AM263Px 支持 QSPI 4S/1S 模式?

    为此、请允许我在内部检查 AM263Px-LP 上的 QSPI 4S/1s 模式的斜升端口

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [quote userid="552744" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1422727/lp-am263p-boot-modes-for-qspi-1s-4s 我基于 SFDP 的 ospi_flash_dma 示例中将 OSPI 协议修改为1s-1s、但结果是失败。 我是否需要修改其他配置?

    Louis、我想知道你为什么根据 SFDP 修改该示例。 您还可以补充以下详细信息:

    1.是使用 LP 运行此示例还是某些定制电路板。

    2.是与 LP 或其他某种闪存部件相同的闪存部件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Unknown 说:
    SFDP

    如果您集成了新的闪存器件并希望发现支持的协议、则会使用 SFDP、如果它与 LP 是同一器件、则无需使用 SFDP。

    另外、我想了解的是、除非您使用不同的闪存部件、否则您为什么要修改 SDK 中默认提供的闪存配置

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Unknown 说:
    1. TMDSCNCD263P 在 AM263Px 控制卡评估模块用户指南上支持 QSPI 4S/1S 引导模式、但 LP-AM263Px 在 AM263Px LaunchPad 用户指南上未提供 QSPI 1S/4S 引导模式信息。 因此、 LP-AM263Px 支持 QSPI 4S/1S 模式?

    尊敬的 Louis:

    TMDSCNCD263P 具有板载 OSPI 和 QSPI 闪存。
    LP-AM263P 板载无 QSPI 闪存、仅具有 OSPI 闪存。 因此、它没有提到 QSPI 引导模式、  

    但只是添加了一条信息 ROM 确实支持上述所有引导模式、因此、如果您获得使用 QSPI 引导完成的定制板、那么应该能够让 QSPI 4S/1s 引导模式工作。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Nilabh:

    [报价 userid="500225" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1422727/lp-am263p-boot-modes-for-qspi-1s-4s/5461484 #5461484"]

    1.是使用 LP 运行此示例还是某些定制电路板。

    2.是与 LP 或其他某种闪存部件相同的闪存部件。

    [报价]

    我使用的是 LP、并且未修改任何硬件配置。 闪存器件与 LP (IS25LX256)相同。

    更新信息。

    我在 ospi_flash_dma 示例中将 OSPI 协议重新测试为1s-1s、结果通过了测试。

    感谢您的帮助!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很高兴知道 Louis、我现在将结束该主题。