免费A级毛片无码专区网站-成人国产精品视频一区二区-啊 日出水了 用力乖乖在线-国产黑色丝袜在线观看下-天天操美女夜夜操美女-日韩网站在线观看中文字幕-AV高清hd片XXX国产-亚洲av中文字字幕乱码综合-搬开女人下面使劲插视频

痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad

大家好,我是痞子衡,是正經搞技術的痞子 。今天痞子衡給大家分享的是i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad 。
最近碰到一個客戶,他們在 i.MXRT500 上使能了 FlexSPI->MCR0[RXCLKSRC] = 2(即 loopbackFromSckPad),這個選項字面上的意思是設置讀選通采樣時鐘源為 SCK 引腳,這個選項在恩智浦官方的代碼包里未曾使能過 ??蛻粼谑褂眠^程中遇到高頻時 SCK 引腳被降壓的問題(從正常的 1.8V 降至 1.2V),那么這個 loopbackFromSckPad 選項到底是什么作用以及有什么使用限制呢?且聽痞子衡道來:

  • Note1: 參考手冊里顯示支持 loopbackFromSckPad 選項的型號有 i.MXRT1040/1050/1060/1064/1180/500
  • Note2: 參考手冊里沒有提及支持 loopbackFromSckPad 選項的型號有 i.MXRT1010/1015/1020/1024/1160/1170/600
一、為什么存在Read Strobe?對于串行 SPI 接口存儲器,F(xiàn)lexSPI 外設主要支持如下兩種讀數(shù)據(jù)時序:一是所謂的經典 SPI 模式,IO0 (MOSI) 專用于發(fā)送命令和地址,IO1 (MISO) 專用于接收數(shù)據(jù)(圖中上面的時序) 。二是 Multi-I/O SPI 模式,SIO[n:0] 一起用于發(fā)送命令地址以及接收數(shù)據(jù)(圖中下面的時序) 。
顯然經典 SPI 模式下 IO[1:0] 是單向的,而 Multi-I/O SPI 模式下,SIO[n:0] 是雙向的 。當 SIO 用于雙向傳輸時,過程中必然存在引腳方向切換,而 FlexSPI 外設在處理 SIO 方向切換時無法做到零等待周期讀取數(shù)據(jù),這就是為什么 Multi-I/O SPI 讀時序中總是會存在 Dummy 周期 。
痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad

文章插圖
因為 Dummy 周期的存在,F(xiàn)lexSPI 外設內部實際上有一個 Read Strobe 信號(即 DQS)來控制數(shù)據(jù)的選通性(即什么時候開始數(shù)據(jù)有效,將數(shù)據(jù)存入內部 FIFO) 。更直白點說,Read Strobe 信號的存在就是由于 FlexSPI 外設無法支持如下這種情況的讀時序(下圖中 COMMAND 實際應為 COMMAND&ADDR) 。
【痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad】
痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad

文章插圖
二、FlexSPI內部Read Strobe設計在 i.MXRT 參考手冊里有如下 FlexSPI 前端采樣單元框圖,其中 ipp_ind_dqs_fa/b_int[x] 即是 Read Strobe 信號,它控制著 FIFO 中實際數(shù)據(jù)的存儲 。
痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad

文章插圖
ipp_ind_dqs_fa/b_int[x] 信號共有四種來源,最原始的信號源由 FlexSPI->MCR0[RXCLKSRC] 選擇,中間可能還會經過 DLLxCR 單元(這部分以后會另寫文章單獨介紹)、Phase Chain 單元做處理,然后送到采樣單元里 。
痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad

文章插圖
下圖是 FlexSPI->MCR0[RXCLKSRC] = 0 的情況,此時 Read Strobe 經由 ipp_do_dqs0_fa/b 純內部 loopback 回來,沒有經過任何延遲單元 。這種配置一般僅用于經典 SPI 傳輸模式(低速 60MHz SDR 場合),適用低容量 SPI NOR / EEPROM,這時候 FlexSPI DQS Pad 可用作其它功能或者 GPIO 。
痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad

文章插圖
下圖是 FlexSPI->MCR0[RXCLKSRC] = 1 的情況,此時 Read Strobe 經由懸空的 DQS 引腳 ipp_do_dqs1_fa/b 再 loopback 回來,此時有了 DQS 引腳繞一圈的延遲 。這種配置可用于 Multi-I/O SPI 傳輸模式(較高速 133MHz SDR 場合),適用不含 DQS 引腳的大容量 QuadSPI NOR Flash,但是 FlexSPI DQS Pad 需要懸空 。
  • Note: 痞子衡有一篇舊文 《使能串行NOR Flash的DTR模式》 跟這種配置相關,這時候 dummy cycle 數(shù)的設置很關鍵 。

痞子衡嵌入式:i.MXRT中FlexSPI外設不常用的讀選通采樣時鐘源 - loopbackFromSckPad

經驗總結擴展閱讀