在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的串行外圍接口SPI設(shè)計與實現(xiàn)

            基于FPGA的串行外圍接口SPI設(shè)計與實現(xiàn)

            作者: 時間:2012-05-07 來源:網(wǎng)絡(luò) 收藏

            摘要: 總線是一個同步串行的數(shù)據(jù)總線,具有全雙工、信號線少、協(xié)議簡單、傳輸速度快等特點。介紹了 總線的結(jié)構(gòu)和工作原理,對4 種工作模式的異同進行了比較,并著重分析了 總線的工作時序。利用Verilog 硬件描述語言編寫出SPI 總線的主機模塊,經(jīng)ModelSim 仿真得出相應(yīng)的仿真波形。根據(jù)仿真波形分析,所設(shè)計的SPI 主機模塊的功能是正確的。最后在Xilinx ISE 中對該模塊進行綜合與實現(xiàn),并在 上完成了下載與驗證。

            本文引用地址:http://www.biyoush.com/article/190406.htm

            引言

            SPI()總線,是一個同步串行的數(shù)據(jù)總線,它具有全雙工、信號線少、協(xié)議簡單、傳輸速度快等優(yōu)點。由于串行總線的信號線比并行總線更少、更簡單,越來越多的系統(tǒng)放棄使用并行總線而采用串行總線。在眾多串行總線中,SPI 總線與I2C 總線、CAN 總線、USB 等其他常用總線相比有很大優(yōu)勢,如SPI 總線的數(shù)據(jù)傳輸速度可達若干Mbps, 比I2C 總線快很多。SPI 總線最典型的應(yīng)用就是主機與外圍設(shè)備(如EEPROM、Flash RAM、A/D 轉(zhuǎn)換器、LED 顯示器、實時時鐘等)之間的通信。

            (現(xiàn)場可編程門陣列)是在PAL、GAL、PLD 等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物,具有設(shè)計周期短、可重復(fù)編程、靈活性強等特點。用 設(shè)計的SPI 總線具有可擴展性強、便于修改等優(yōu)點。只要對設(shè)計做簡單的改動,即可對SPI 總線的數(shù)據(jù)位數(shù)、工作模式等進行擴展,充分發(fā)揮了FPGA 的優(yōu)勢。

            1 SPI 總線的結(jié)構(gòu)和工作原理

            SPI 總線區(qū)分主機(Master)和從機(Slave)兩部分,它的結(jié)構(gòu)框圖如圖1 所示。

            圖1 SPI 總線結(jié)構(gòu)框圖
            圖1 SPI 總線結(jié)構(gòu)框圖

            主機和從機之間通過4 根信號線連接,分別是SCK、MOSI、MISO、CS,它們的定義如下。

            SCK:同步時鐘信號,用來同步主機和從機的數(shù)據(jù)傳輸,由主機控制輸出,從機在SCK 的邊沿接收和發(fā)送數(shù)據(jù);MOSI:主機輸出、從機輸入信號,主機在上升沿(或下降沿)通過該信號線發(fā)送數(shù)據(jù)給從機,從機在下降沿(或上升沿)通過該信號線接收該數(shù)據(jù);MISO:主機輸入、從機輸出信號,從機在上升沿(或下降沿)通過該信號線發(fā)送數(shù)據(jù)給主機,主機在下降沿(或上升沿)通過該信號線接收該數(shù)據(jù);CS:從機片選信號,由主機控制輸出。

            其工作原理是: 當沒有數(shù)據(jù)需要在主機和從機之間傳輸時,主機控制SCK 輸出空閑電平,CS 輸出無效電平,SPI 總線處于空閑狀態(tài);當有數(shù)據(jù)需要傳輸時,主機控制CS 輸出有效電平,SCK輸出時鐘信號,SPI 總線處于工作狀態(tài);在某個時鐘邊沿,主機和從機同時發(fā)送數(shù)據(jù),將數(shù)據(jù)分別傳輸?shù)組OSI 和MISO 上;在下一個時鐘邊沿,主機和從機同時接收數(shù)據(jù),分別將MISO 和MOSI上的數(shù)據(jù)接收并存儲;當數(shù)據(jù)全部傳輸完畢時,主機控制SCK 輸出空閑電平,CS 輸出無效電平,SPI 總線重新回到空閑狀態(tài)。至此,一個完整的SPI 總線數(shù)據(jù)傳輸過程完成。

            SPI 總線有兩個控制位:CPOL 和CPHA.將SCK 的空閑電平用IDLE 表示,非空閑電平用ACTIVE 表示。CPOL 用來選擇IDLE 的電平值。當CPOL=0 時,IDLE=0;當CPOL=1 時,IDLE=1.

            CPHA 用來選擇接收數(shù)據(jù)的時刻。當CPHA=0 時, 接收時刻是IDLE-ACTIVE 邊沿;當CPHA=1 時,接收時刻是ACTIVE-IDLE邊沿。根據(jù)CPOL 和CPHA 的取值情況,SPI 總線共有4 種不同的工作模式。圖2 給出了SPI 總線在不同工作模式下的工作時序。

            圖2 SPI 總線的工作時序
            圖2 SPI 總線的工作時序

            當CPHA=0 時,MOSI 和MISO 的時序有所不同,主要是第一個數(shù)據(jù)位MSB 的發(fā)送時刻不同。MOSI 的MSB 在SCK 的第一個IDLE-ACTIVE 邊沿的前半個周期由主機發(fā)送到MOSI 上;而MISO 的MSB 則在CS 信號的下降沿由從機發(fā)送到MISO 上。當CPHA=1 時,MOSI 和MISO 的時序完全相同。

            2 SPI 主機模塊的設(shè)計

            本文設(shè)計的SPI 主機模塊主要完成以下工作:

            (1) 將主機收到的8 位并行數(shù)據(jù)轉(zhuǎn)換為串行數(shù)據(jù),并發(fā)送給從機;(2) 接收來自從機的串行數(shù)據(jù),將其轉(zhuǎn)換為并行數(shù)據(jù),通過并行端口輸出;(3) 輸出從機所需要的輸入信號、時鐘信號SCK 和片選信號CS。

            在數(shù)據(jù)串并轉(zhuǎn)換的過程中, 必須用到寄存器來存放臨時數(shù)據(jù)。一般情況下,發(fā)送數(shù)據(jù)需要1 個發(fā)送寄存器,接收數(shù)據(jù)需要1個接收寄存器,則至少需要2 個寄存器。在SPI 總線中,每發(fā)送1個數(shù)據(jù)位則發(fā)送寄存器多出1 個空閑位, 正好可以在半個周期后用來接收1 個數(shù)據(jù)位。為了減少資源消耗,可以用1 個移位寄存器來代替2 個獨立的接收寄存器和發(fā)送寄存器。圖3 所示為SPI 總線的硬件結(jié)構(gòu)框圖,其中MaSTer 和Slave 各使用1 個移位寄存器接收和發(fā)送數(shù)據(jù)。

            圖3 SPI 總線的硬件結(jié)構(gòu)
            圖3 SPI 總線的硬件結(jié)構(gòu)

            為了實現(xiàn)對模塊的控制,除了clk、cs、sck、miso、mosi 這些信號之外,還需要一些其他信號。其中,rst 是復(fù)位信號,用于SPI 模塊的初始化。en 是模塊的使能信號,當en=1 時模塊開始工作。

            data_i 是待發(fā)送數(shù)據(jù)的8 位并行輸入端。data_o 是用于接收和發(fā)送數(shù)據(jù)的移位寄存器, 也是數(shù)據(jù)傳輸完成時已接收數(shù)據(jù)的8位并行輸出端,圖4 是所設(shè)計的SPI 主機模塊的框圖。

            圖4 SPI 模塊框圖
            圖4 SPI 模塊框圖


            上一頁 1 2 3 4 下一頁

            關(guān)鍵詞: FPGA SPI 串行外圍 接口

            評論


            相關(guān)推薦

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

            關(guān)閉