序列flash的特點是占用管腳比較少,作為系統的資料存貯非常合適,一般都是採用序列外設介面(spi 匯流排介面)。flash 存貯器與eeprom根本不同的特徵就是eeprom可以按位元組進行資料的改寫,而flash只能先擦除乙個區間,然後改寫其內容。一般情況下,這個擦除區間叫做扇區(sector),也有部分廠家引入了頁面(page) 的概念。選擇flash產品時,最小擦除區間是比較重要的指標。在寫入flash時,如果寫入的資料不能正好是乙個最小擦除區間的尺寸,就需要把整個區間的資料全部儲存另外乙個存貯空間,擦除這個空間,然後才能重新對這個區間改寫。大多數flash工藝更容易實現較大的擦除區間,因此較小擦除區間的flash 其**一般會稍貴一些。此外,spi是標準的4線同步序列雙向匯流排,提供控制器和外設之間的序列通訊資料鏈路,廣泛應用於嵌入式裝置中。
賽靈思公司的**fpga都支援spi介面。spi匯流排通過4根訊號線來完成主、從之間的通訊,典型的spi系統中常包含乙個主裝置以及至少乙個從裝置,在fpga應用場合中,fpga晶元為主裝置,spi 序列flash為從裝置。4個spi介面訊號的名稱和功能如表5-2所示。
表5-2 spi介面訊號列表
乙個主晶元和乙個從晶元的通訊介面如圖5-24所示。fpga通過sclk控制雙方通訊的時序,在ss_n為低時,fpga通過mosi 訊號線將資料傳送到flash,在同乙個時鐘週期中,flash通過somi將資料傳輸到fpga晶元。無論主、從裝置,資料都是在時鐘電平跳轉時輸出,並在下乙個相反的電平跳轉沿,送入另外乙個晶元。
圖5-24 spi介面連線示意圖
其中sclk訊號支援不同的速率,一般常採用20mhz。通過spi 介面中的cpol和cpha這兩個位元定義了4種通訊時序。其中,cpol訊號定義了sclk的空閒狀態,當cpol為低時,sclk的低電平為空閒狀態,否則其空閒狀態為高電平;cpha定義了資料有效的上公升沿位置,當其為低時,資料在第1 個電平跳轉沿有效,否則資料在第2個電平跳轉沿有效。其相應的時序邏輯如圖5-25所示。
圖5-27 cpha為低時spi的匯流排時序示意圖
圖5-28 cpha為高時spi的匯流排時序示意圖
可以通過增加片選訊號ss_n的位寬來支援多個從裝置,ss_n的位寬等於從裝置的個數。對於某時刻被選中的從裝置和主裝置而言,其讀寫時序邏輯和圖5-29一樣。
圖5-29 多個從晶元的連線電路圖
spi序列flash作為一種新興的高效能非易失性儲存器,其有效讀寫次數高達百萬次,不僅引腳數量少、封裝小、容量大,可以節約電路板空間,還能夠降低功耗和雜訊。從功能上看,可以用於**儲存以及大容量的資料和語音儲存,對於以讀為主,僅有少量擦寫和寫入時間的應用來說,支援分割槽( 多頁) 擦除和頁寫入的序列儲存是最佳方案。
spi序列配置模式常用於已採用了spi序列flash prom的系統,在上電時將配置資料載入到fpga中,這一過程只需向spi序列傳送乙個4位元組的指令,其後序列flash中的資料就像prom配置方式一樣連續載入到fpga中。一旦配置完成,spi中的額外儲存空間還能用於其它應用目的。
雖然spi介面是標準的4線介面,但不同的spi flash prom晶元採用了不同的指令協議。fpga晶元通過變數選擇訊號vs[2:0] 來定義fpga和spi flash的通訊方式、fpga的讀指令以及在有效接收資料前插入的冗餘位元數。常用spi flash與fpga的有效操作配置如表5-3所示,其餘的vs[2:0] 配置留有它用。
表5-3 賽靈思晶元所支援的spi flash儲存器以及配置列表
從整體上看來,控制spi序列快閃儲存器比較容易,只需要使用簡單的指令就能完成讀取、擦除、程式設計、寫使能/禁止以及其它功能。所有的指令都是通過4 個spi 引腳序列移位輸入的。
圖5-30 支援快讀寫的序列flash配置電路示意圖
不同型號的fpga晶元具有數目不同的從裝置片選訊號,因此所掛的序列晶元數目也就不一樣。例如:spartan-3e系列fpga晶元只有1位spi從裝置片選訊號,因此只能外掛程式一片spi序列flash晶元。在spi序列flash配置模式下,m[2:0]=3』b001。fpga 上電後,通過外部spi 序列flash prom完成配置,配置時鐘訊號由fpga晶元提供時鐘訊號,支援兩類業界常用的flash。
圖5-31 atmel spi序列flash配置電路示意圖
表5-3給出了spi配置介面的連線說明,每個spi flash prom採用的名字略有不同,spi flash prom的寫保護訊號和保持控制訊號在fpga配置階段是不用的。其中hold管腳在配置階段必須為高,為了程式設計flash儲存器,寫保護訊號必須為高。
圖5-32 fpga從串配置電路示意圖
此外,從串配置模式也可配置多片fpga晶元,典型的兩片spartan 3e系列fpga的從串配置電路如圖5-33所示。所有晶元的cclk訊號都有主控裝置提供,靠近主控裝置的fpga要充當橋梁的作用,將配置資料**到第二個fpga晶元。可以看到採用從串配置的好處主要在於節省電路板面積,並使得系統具備更大的靈活性。
圖5-33 多片fpga從串模式配置電路
SPI(序列外圍裝置介面)
1 spi,是一種高速的,全雙工,同步的通訊匯流排,並且在晶元的管腳上只占用四根線。2 spi 介面一般使用 4 條線通訊 miso 主裝置資料輸入,從裝置資料輸出。mosi 主裝置資料輸出,從裝置資料輸入。sclk 時鐘訊號,由主裝置產生。cs 從裝置片選訊號,由主裝置控制。3 從圖中可以看出,主...
MR25H10 1Mb密度SPI序列介面MRAM
everspin的mr25h10是乙個1,048,576位磁阻隨機訪問儲存器 mram 裝置,由131,072個8位字組成。mr25h10提供序列eeprom和序列快閃儲存器相容的讀 寫時序,沒有寫延遲,並且讀 寫壽命不受限制。與其他序列儲存器不同,讀取和寫入都可以在記憶體中隨機發生,而兩次寫入之間...
33 二叉搜尋樹的後序遍歷序列
擴充套件題 leetcode 1008.前序遍歷構造二叉搜尋樹 舉一反三 輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷結果。如果是則返回true,否則返回false。假設輸入的陣列的任意兩個數字都互不相同。5 2 6 13示例 1 輸入 1,6,3,2,5 輸出 false 示例 2 輸...