国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 3723|回復: 0
打印 上一主題 下一主題

利用QuadSPI外擴串行NOR Flash的實現

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2017-10-9 14:12:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
前言
STM32提供了靈活多樣的外擴存儲器的訪問實現。本文將介紹如何利用QSPI(QuadSPI) 外擴串行NOR Flash存儲器的實現過程。首先對QSPI接口功能特性進行介紹,然后分別介紹硬件設計和軟件開發。并基于STM32CubeM提供訪問MICRON N25Q128A13EF840F的實現參考。
一 實現環境
開發板:STM32F469G-DISCO
開發庫:STM32CubeF4 v1.16.0
STM32CubeMX: v4.22.0
集成開發環境:IAR v7.70.1.11486
實現過程在STM32F469I-DISCO板上展開,利用板上已有的串行NORFlash存儲器(MICRON N25Q128A13EF840F),呈現整個開發環節。在本文中,首先根據QSPI接口,介紹QSPI與外擴串行存儲器的硬件連接。另外,Cube軟件包中包含QSPI實例,本文對庫中實現的QSPI例不做討論,讀者可參考這些QSPI例程進行設計。本文圍繞由STM32CubeMX生成的工程,介紹如何實現對外擴串行NOR Flash存儲器的訪問。

二 QSPI介紹
在呈現QSPI訪問外擴Flash的實例前, 需要對QSPI有一定的了解,在此對QSPI進行簡短的介紹。更多內容請參考AN4760
QSPI(Quad-SPI)支持四線串行訪問形式。同時,QSPI支持傳統SPI和Dual-SPI模式,Dual-SPI模式支持兩線串行訪問。與FMC/FSMC比較,QSPI支持更低成本、更小封裝外部串行Flash存儲器,更少的IO引腳占用,有效減少PCB面積,降低PCB設計復雜度。
下表是QSPI在不同系列STM32產品線的支持情況(僅部分羅列,未涵蓋所有支持型號)。



QSPI接口提供了靈活可配置的5個階段,如下圖所示(時序圖根據配置不同可能存在差異)。分別是命令階段、地址階段、復用字節階段、Dummy階段和數據階段。可以根據外擴Flash中命令時序對不同階段進行配置。后續會以實例進行呈現。更多內容請參考AN4760



QSPI支持三種模式,分別是:
間接模式  所有操作通過QSPI寄存器實現,類似于傳統SPI,可以使用阻塞模式、中斷模式或者DMA模式進行讀寫等訪問。本文中提供的實現例為間接模式下的實現。
狀態輪詢模式 接口自動輪詢指定寄存器,直到回讀寄存器內容與指定條件匹配。可應用于狀態檢測,從而實現忙等待等效果。本文不對此模式進行介紹,應用實現可參考Cube軟件包中QSPI例程。
存儲器映射模式 外擴Flash被視為內部存儲器,支持AHB主器件直接訪問,CPU能夠直接運行位于QSPI存儲器的執行代碼。內部系統架構如下圖所示(以STM32F469/F479為例)。本文不對此模式進行介紹,應用實現可參考Cube軟件包中QSPI例程QSPI_ExecuteInPlace。



三 QSPI外擴串行Flash的實現
3.1 串行Flash介紹
以MICRON N25Q128A13EF840F為例,更多細節請參考存儲器手冊。N25Q128A13EF840F引腳圖、時序圖和電氣參數來源于N25Q128A13 手冊文檔。
支持協議: SPI, Dual I/O(對應Dual-SPI), Quad I/O(對應Quad-SPI)
支持訪問模式:單線訪問、雙線訪問、四線訪問,得益于QSPI接口的靈活可配性,三種訪問模式全部支持。
供電電壓范圍:2.7 ~ 3.6V
最大時鐘頻率:108MHz
存儲空間: 128Mb (16MB)
器件引腳示意圖如下所示。由兩根電源引腳和六根QSPI信號線構成。



下表為存儲器N25Q128A13xxx命令(未列出全部命令)。通過下表可知,存儲器提供了靈活的訪問實現形式,結合同樣靈活可配置的QSPI接口,能夠實現存儲器命令全支持。本文僅提供設計思路,呈現了部分命令在QSPI上的實現。



3.2 硬件設計
涉及到的信號線少,硬件設計簡單,只需直接將QSPI的六根信號線與存儲器連接即可。考慮到可測性,可以增加串行電阻或者測試點。硬件電路圖如下所示。



QSPI接口PCB設計遵循如下幾點,更多硬件設計內容請參考AN4488。
a. 線阻 50Ω± 10%
b. 最大線長 <120mm
c. 避免在不同信號層走信號線
d. 時鐘線至少離其他信號線3倍線寬距離
e. 數據信號線長差 ≤10mm
f. 避免時鐘線采用蛇形走線,同時盡量減少數據線上過孔。
3.3 軟件開發流程



3.4 軟件實現例
在環境搭建完成后,就可以利用STM32CubeMX根據硬件連接情況,進行QSPI配置,獲取IAR工程。具體軟件實現流程如下。



四 小結
STM32的QuadSPI接口靈活可配,對于命令階段、地址階段、復用字節階段、Dummy階段和數據階段都可以進行配置。基于這種靈活性,能夠實現市面上SPI、Dual IO、Quad IO的串行Flash支持。出于簡化考慮,QSPI支持的中斷訪問及DMA訪問等更多功能沒有在本文進行介紹,更多實現可以參考ST提供的Cube軟件包中的QSPI例程。另外,不同廠家的串行Flash命令及操作實現略有差異,具體以采用的Flash文檔描述為準。

相關文檔
AN4760  Quad-SPI (QSPI) interface onSTM32 microcontrollers
AN4488  Getting started withSTM32F4xxxx MCU hardware development
RM0386  STM32F469xx and STM32F479xxadvanced ARM®-based 32-bit MCUs
更多有關QSPI配置及代碼解讀的內容細節可添加下方技術QQ群進行下載閱讀。
技術QQ群:258644475

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线免费黄视频 | 欧美日韩一区不卡 | 2019国产在线 | 国产高清免费不卡观看 | 日本人亚洲人jizz | 国产一级一片 | 一级毛片大全免费播放 | 狠狠亚洲婷婷综合色香 | 日日爱网 | 五月天第一页 | 九九视频免费精品视频免费 | 亚洲短视频在线观看 | 久久99精品久久久久久h | 日韩福利视频导航 | 欧美视频在线网站 | 欧美第1页| 99在线看 | 男女做羞羞高清视频免费 | 国产免费一级视频 | 高清毛片一区二区三区 | 激情综合站 | 在线观看免费国产视频 | 日本久色| 国产精品操 | 欧美xxxxx性 欧美xxxxx视频在线 | 国产成人手机视频 | 国产精品久久久久久久久免费观看 | 国产激情视频在线播放 | 亚洲国产高清一区二区三区 | 在线看日本 | 俄罗斯高清freexxxx性 | 青青久| 国产福利不卡一区二区三区 | 日本高清不卡一区 | 国产精品麻豆入口 | 欧美色视频在线观看 | 亚洲精品色婷婷在线影院麻豆 | 欧美成人高清免费大片观看 | 思思久久好好热精品国产 | 亚洲综合视频 | 成人国产一区二区 |