新聞中心

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

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

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


3 設計的仿真、綜合與實現(xiàn)

通過編寫測試平臺,并使用Mentor Graphics 公司的仿真工具ModelSim SE PLUS 6.1f 對該 模塊進行仿真,得到的仿真波形如圖5 所示。

圖5 SPI 模塊的仿真波形
圖5 模塊的仿真波形

從圖中可以看出,sck 的空閑電平IDLE=0,接收數(shù)據(jù)時刻是下降沿即ACTIVE-IDLE 邊沿, 故該 模塊的工作模式是CPOL=0,CPHA=1,與設計一致。當en=0 時,cs=1,SPI 總線處于空閑狀態(tài)。當en=1 時,在下降沿cs=0,sck 輸出時鐘信號,總線數(shù)據(jù)傳輸開始。同時,data_o=data_i, 移位寄存器存入待發(fā)送數(shù)據(jù)11010111.在第1 個周期上升沿,主機通過mosi 發(fā)送data_o 最高位1 至從機。在第1 個周期下降沿,data_o 左移一位,多出一個空閑位data_o[0],主機通過miso 接收從機發(fā)送的數(shù)據(jù)最高位1,并將其存入data_o[0],data_o=10101111.依此類推,后面7 個周期的數(shù)據(jù)傳輸過程與第1 個周期類似。8 位數(shù)據(jù)全部傳輸完成之后,cs=1,一個完整的SPI 總線傳輸過程結束。可以發(fā)現(xiàn),data_o中的數(shù)據(jù)被一個一個從主機發(fā)送到從機,同時data_o 也被用來存儲從機發(fā)送的數(shù)據(jù)。8 個周期完成之后,data_o 中存儲的數(shù)據(jù)正是從機發(fā)送的數(shù)據(jù)10101101.綜合以上分析,該SPI 模塊的功能是正確的。



關鍵詞: FPGA SPI 串行外圍 接口

評論


相關推薦

技術專區(qū)

關閉