<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于AT25T1024 FLASH的高速SPI接口設(shè)計

          基于AT25T1024 FLASH的高速SPI接口設(shè)計

          作者: 時間:2011-08-03 來源:網(wǎng)絡(luò) 收藏
          2.2 控制模塊的設(shè)計

            SPI_CTRL控制模塊可將發(fā)送緩沖區(qū)0的數(shù)據(jù)讀出來,經(jīng)過并串轉(zhuǎn)換,發(fā)送到串行線SI上,并且控制從串行線SO上接收數(shù)據(jù),存儲在接收緩沖區(qū),并行數(shù)據(jù)轉(zhuǎn)換成串行輸出由并串轉(zhuǎn)換狀態(tài)機來控制實現(xiàn),見圖3。

            

          基于AT25T1024 FLASH的高速SPI接口設(shè)計

            各狀態(tài)含義如下:

            TX_IDLE:等待主機設(shè)置控制寄存器的GO位,如果置“1”,表示準備開始傳輸,跳入下一狀態(tài)TX_ADDR。

            TX_ADDR:當傳輸長度小于等于32位時,跳入下一狀態(tài)PARALELL_DATA。

            PARALELL_DATA:如果GO為1,在此狀態(tài)TIP將被置“1”,說明傳輸開始,傳輸?shù)挠嫈?shù)器開始計數(shù)。

            SERIAL_DATA:并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù)發(fā)送出去,當CNT_SHIFT計數(shù)器減到0時,傳輸結(jié)束,狀態(tài)跳入TX_IDLE。

            2.3 串行移位時鐘設(shè)計

            SPI串行線上的主從設(shè)備必須根據(jù)具體要求設(shè)置匹配的傳輸時序模式,時序只有匹配,數(shù)據(jù)傳輸才能正常進行。如果設(shè)置的不匹配,可能導(dǎo)致數(shù)據(jù)接收方和發(fā)送方在同一時鐘沿作用,而使數(shù)據(jù)傳輸失敗。本設(shè)計中的時鐘僅支持SP0模式,即串行時鐘處于空閑電平時,空閑狀態(tài)時鐘的極性電平為低,在時鐘的前沿采樣數(shù)據(jù),時鐘后沿串行線上數(shù)據(jù)變化。

            在采樣時刻,線上數(shù)據(jù)必須已經(jīng)穩(wěn)定可靠,因此數(shù)據(jù)發(fā)送端設(shè)備應(yīng)提前將數(shù)據(jù)移出到數(shù)據(jù)線上,本SPI接口電路設(shè)計在同一串行移位時鐘周期中的前一個時鐘沿(即相反時鐘變化方向)將數(shù)據(jù)移出,移位時鐘設(shè)計為系統(tǒng)時鐘的兩分頻,為40/2MHz。

            2.4 SPI相關(guān)寄存器描述

            在本設(shè)計中,共有四種32位寄存器,包括控制寄存器,從設(shè)備選擇寄存器,加載配置數(shù)據(jù)起始寄存器以及加載配置數(shù)據(jù)完成寄存器。

            控制寄存器用來控制配置信息加載方式,即:片外加載方式或主機直接加載方式。當選擇片外加載方式時,控制寄存器還用來控制一次數(shù)據(jù)傳輸?shù)拈L度。CTRL寄存器的具體描述見表1。

            

          基于AT25T1024 FLASH的高速SPI接口設(shè)計

            從設(shè)備選擇寄存器的SS位置“1”時,表示選中從設(shè)備。置“0”表示不選擇任何從設(shè)備,本設(shè)計僅支持一個從設(shè)備。

            加載配置數(shù)據(jù)起始寄存器的SPICFGSTART位置“1”時,配置數(shù)據(jù)自動從中讀取并寫入到DPRAM中,置“0”不進行讀FLASH操作。

            加載配置數(shù)據(jù)完成寄存器為只讀寄存器,用來判斷數(shù)據(jù)是否已經(jīng)加載完成。

            2.5 SPI緩沖區(qū)設(shè)計

            圖4所示為主機可直接訪問的SPI接口內(nèi)部DPRAM發(fā)送和接收數(shù)據(jù)緩沖區(qū)。

            

          基于AT25T1024 FLASH的高速SPI接口設(shè)計

            SPI發(fā)送數(shù)據(jù)緩沖區(qū)深度65,數(shù)據(jù)位寬32位,其中地址22’h 3e0600存放訪問AT25F1024存儲器的指令,當進行寫操作時,從數(shù)據(jù)發(fā)送緩沖區(qū)最低位地址22’h3e0604開始,將數(shù)據(jù)搬運出來,串行發(fā)送到AT25F1024存儲器。

            SPI接收數(shù)據(jù)緩沖區(qū)深度65,數(shù)據(jù)位寬32位,其中地址22’h3e0400緩存讀取的AT25F1024配置和狀態(tài)信息,偏移地址22’h3e0404~22’ h3e0500緩存指定FLASH讀取的總線配置數(shù)據(jù)數(shù)據(jù),最大緩存2048位。



          關(guān)鍵詞: AT25T1024 FLASH 高速SPI接口

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();