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

          新聞中心

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

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

          作者: 時(shí)間:2011-08-03 來(lái)源:網(wǎng)絡(luò) 收藏

            在一些軍用芯片的早期設(shè)計(jì)中,一般先采用比較成熟的商用協(xié)議芯片進(jìn)行軍用化改造(通常做成板卡形式),而商用芯片的軍用化改造主要體現(xiàn)在確定性、實(shí)時(shí)性、穩(wěn)定性、安全性等問(wèn)題上,所以一般需要在商用協(xié)議芯片的上層加入較多的控制功能。FPGA以其資源豐富,易于組織流水和并行處理等優(yōu)點(diǎn),為這種復(fù)雜控制提供了很好的選擇。而SPI在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳,同時(shí)為PCB的布局上節(jié)省空間,因此在基于FPGA的讀寫(xiě)接口設(shè)計(jì)中,高速SPI是一種很好的選擇。

            1 SPI結(jié)構(gòu)

            SPI (Serial Peripheral Interface-串行外圍設(shè)備接口)是Motorola公司推出的一種高效率全雙工同步串行數(shù)據(jù)接口,以主從模式工作,廣泛應(yīng)用于,實(shí)時(shí)時(shí)鐘,AD轉(zhuǎn)換器等。SPI串行外圍設(shè)備總線根據(jù)串行同步時(shí)鐘極性(CPOL)和時(shí)鐘相位(CPHA)兩個(gè)參數(shù)的設(shè)置分為四種工作方式(SPO,SP1,SP2,SP3)。本板卡選用的片外存儲(chǔ)器AT25F1024僅支持0和3模式,為簡(jiǎn)化設(shè)計(jì),本設(shè)計(jì)的SPI時(shí)鐘采用SP0模式(CP-OL=0,CPHA=0),時(shí)鐘極性為低電平,時(shí)鐘相位串行時(shí)鐘上升沿采樣數(shù)據(jù),下降沿?cái)?shù)據(jù)輸出.SPI為主從工作方式,主設(shè)備由三部分構(gòu)成,SPI_CFG_LOAD配置加載模塊可自動(dòng)讀取存儲(chǔ)器的值,并加載到片內(nèi)DPRAM中。主機(jī)通過(guò)配置SPI_CTRL控制模塊相應(yīng)的寄存器,來(lái)完成對(duì)片外的訪問(wèn)。SPI結(jié)構(gòu)框圖如圖1所示。

            

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

            2 設(shè)計(jì)

            2.1 配置加載模塊的設(shè)計(jì)

            SPI_CFG_LOAD配置加載模塊主要完成從片外FLASH讀取數(shù)據(jù),并將數(shù)據(jù)存入片內(nèi)DPRAM中的功能。圖2給出了對(duì)應(yīng)的狀態(tài)機(jī)設(shè)計(jì)。

            

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

            各狀態(tài)說(shuō)明如下:

            SPI_IDLE:空閑狀態(tài),如果主機(jī)配置了寄存器SPICFGSTART,狀態(tài)就跳到SPI_TX_BUFFER狀態(tài)。

            SPI_TX_BUFFER:在此狀態(tài)主要向SPI_CTRL模塊的發(fā)送緩沖區(qū)地址0填入8位讀命令及讀取數(shù)據(jù)的三字節(jié)起始地址,狀態(tài)機(jī)之間進(jìn)入下一狀態(tài)。

            SPI_CTRL_REG:在這一狀態(tài),配置SPI_CTRL模塊CTRL寄存器的值,包括一次讀操作搬運(yùn)的數(shù)據(jù)位數(shù),數(shù)據(jù)加載方式。如果配置GO位為“1”,表明可以開(kāi)始進(jìn)行讀傳輸,進(jìn)入下一狀態(tài)SPI_CS。

            SPI_CS:配置SPI_CTRL)模塊寄存器SS位的值,以選擇傳輸數(shù)據(jù)的從設(shè)備。

            SPI_WAIT:本狀態(tài)判斷讀操作的起始地址和終止地址是否在要求的范圍內(nèi),如果處于相應(yīng)的范圍,地址自動(dòng)加64后,狀態(tài)機(jī)進(jìn)入SPI_SS_ UA狀態(tài)。

            SPI_SS_UA:等待片內(nèi)DPRAM的寫(xiě)操作完成,如果DPRAM_WR_END_T信號(hào)為高,說(shuō)明當(dāng)前的傳輸操作已經(jīng)結(jié)束,可以進(jìn)入下一次的訪問(wèn),狀態(tài)機(jī)進(jìn)入SPI_IDLE狀態(tài)。


          上一頁(yè) 1 2 3 下一頁(yè)

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

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(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); })();