2397592_ja-JP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

2397592_ja-JP

2397592_ja-JP

LPC54S018をSPI-MRAM(MR25H40)から起動します。

私はLPC54S018を搭載したEVB LPC54S018M-EVKを購入し、それにSPI-MRAMチップ=MR25H40を接続します。

SPI-MRAM(MR25H40)からLPC54S018にファームウェアをロードする必要があります。MRAMをFLEXCOMM9に接続しました。ファームウェアからこのMRAMへのデータの読み書きは正常にできますが、問題ありません。でもMCUを起動できません。
オシログラムでは(RESET後に)マイクロコントローラのブートROMコードがMRAMと通信し始めるのがデフォルト速度=12 MHz(起動ROMがウェイクアップコマンド(opcode = 0xAB)を送信し、その後「read JEDEC-ID」コマンドを3回送信します(opcode = 0x9F))。その後、SPI上ではそれ以上の活動は発生しない。ウェイクアップコマンドはMRAMによって正常に処理されますが、「JEDEC-ID読み取り」コマンドはメモリによってサポートされていません(MRAMのデータシートによる)。私は、ブートROMコードが「JEDEC-IDの読み取り」コマンドに対する応答を受け取らなかったため、デフォルトの速度で起動を続行するだけだと思っていました。しかし、理由は不明だが、「JEDEC-IDの読み取り」を3回試みた後、ブートプロセスがキャンセルされる。

LPC54S018のISPピンを以下の状態に設定してみました。
1) または ISP0 = high、ISP1 = high、ISP2 = high;
2) または ISP0 = high、ISP1 = low、ISP2 = high。
何も変わりません。マイクロコントローラが起動しません。

「read JEDEC-ID」コマンドへの応答を待たずに、SPIメモリからLPC54S018の起動を続行する方法はありますか?

追伸:負荷処理のオシログラムを添付します。

Re: Boot LPC54S018 from SPI-MRAM (MR25H40).

LPC540xxをSPI-MRAM(MR20H40/MR25H40)から起動することは不可能であるようです。SPI-MRAMは「read JEDEC-ID」コマンドをサポートしていないためです。

しかし、SPI-FRAM(SPI-MARMとは異なり)は「read JEDEC-ID」コマンドをサポートしています。SPI-MRAMをSPI-FRAM(FM25V05)に交換したところ、LPC54S018の起動に成功しました!しかし、FM25V05では、ファームウェアはアドレス0x0000からではなく、0x0001から開始する必要があります。「read JEDEC-ID」コマンドの後、LPC540xxブートROMはまず24ビットアドレスを持つ読み出しコマンド0x03をSPIメモリに送信します。読み取りが失敗した場合は、32ビットのアドレスを持つ読み取りコマンド0x03を送信します。FM25V05は16ビットのアドレスを持ちます。しかし、ブートイメージをアドレス0x0001にシフトすると、LPC540xxはFM25V05からでも正常にブートします。ブートROMでは24ビットの読み取りコマンドが使われるため、最初のバイト読み込みは省略されます。

添付のオシログラムを参照してください。


後で、24ビットアドレス指定が可能なCY15B104QN(SPI-FRAM)からの起動を試してみます。

Re: Boot LPC54S018 from SPI-MRAM (MR25H40).

こんにちは、 @jcxzさん

ボードが正常に起動したと聞いて大変嬉しく思います。

他に何かご質問やご不明な点はありますか?

よろしくお願いします。


BR

アリス

Re: Boot LPC54S018 from SPI-MRAM (MR25H40).

はい。次に、CY15B104QN-50SXI SPI-FRAMからの起動を試みました。機能しません CY15B104QNからは起動しません。このチップは「JEDEC-ID読み取り」コマンドに応答しますが、しかし、CY15B104QN は逆バイト順の JEDEC-ID を出力します: "00,2C,C2,7F,7F,7F,7F,7F,7F" (16 進数)。おそらくそれが、LPC54018のブートROMがそこから起動しない理由でしょう。
FM25V05は「7F,7F,7F,7F,7F,7F,C2,23,00」(16進数)の形式でJEDEC-IDを出力します。LPC54018ブートROMはこれを受け入れて起動します。しかし、FM25V05の容量は私のプロジェクトには小さすぎます。
それでは、FM25V20Aから起動してみます。そこから起動してくれるといいのですが。

PS: CY15B104QNは、新世代のSPI-FRAMチップである「EXCELON™ F-RAM」(Infineon社製)に属します。どうやらLPC54018ブートローダーはそれらをサポートしていないようです。

Re: Boot LPC54S018 from SPI-MRAM (MR25H40).

FM25V20A-GからLPC54018を正常に起動できました!

LPC54018のMRAM/FRAMブート機能チェックの最終結果:
1. SPI-MRAM (MR25H40) からのブート:失敗。考えられる原因=JEDEC-ID読み取りコマンドがサポートされていない。
2. SPI-FRAM CY15B104QN からのブート、JEDEC-ID = "00,2C,C2,7F,7F,7F,7F,7F,7F" (16 進数):失敗。考えられる原因=ブートROMがJEDEC-IDを認識していない。
3. SPI-FRAM FM25V20A-G からブート中、JEDEC-ID = "7F,7F,7F,7F,7F,7F,C2,25,08" (16 進数):成功。考えられる理由=ブートROMがJEDEC-IDを認識している。
4. SPI-FRAM FM25V05 からブート、JEDEC-ID = "7F,7F,7F,7F,7F,7F,C2,23,00" (16 進数):成功。考えられる理由:ブートROMがJEDEC-IDを認識している。ただし、ブートイメージはアドレス1(0ではない)に配置する必要があります。

しかし、CY15B104QNのメモリファミリは新しいです。これは旧型のFM25Vxxの後継機種です。したがって、CY15B104QNを使用したいと思います。CY15B104QNからのブートがサポートされていないのはなぜですか?また、FUTUREのLPC540xxのリビジョンでは、CY15B104QN(またはこのファミリの他のチップ)からの起動機能は追加されるのでしょうか?

标记 (1)
无评分
版本历史
最后更新:
2 周之前
更新人: