摘要:I2C(Inter-Integrated Circuit)總線是一種在微電子通訊控制領域應用廣泛的多主從構架的兩線式串行總線。某型武器采用I2C總線進行數據通信,在使用時需將通信協議集成在FPGA中。文章研究了I2C總線IP核的實現方法,并對設計的IP核進行功能仿真,驗證設計的可行性和正確性。
關鍵詞:I2C總線;功能仿真;IP核設計
中圖分類號:TP334 文獻標識碼:A 文章編號:1009-2374(2013)16-0007-02
I2C(Inter-Integrated Circuit)總線是Philips公司開發的一種在微電子通訊控制領域應用廣泛的多主從構架的兩線式串行總線,具有接線數量少、控制簡單、通訊速率高等優點。
1 I2C總線概述
I2C總線包括串行數據(SDA)和串行時鐘(SCL),連接到其網絡上的器件都具有唯一的地址編碼,實現接收和發送數據功能。在系統中主機負責初始化數據并產生時鐘信號,從機的主要功能是接收和發送數據。
I2C總線可以掛接的從設備的數量由其地址位數決定,標準中有7位和10位兩種規格,實際應用中以7位地址位居多。
I2C總線的傳輸有三種模式:標準模式、快速模式和高速模式,最高速率可達3.4Mbit/s。I2C總線以8bits二進制數據為一個字節單位進行傳輸,每次獨立數據傳輸完成后,接收端應給主機發送應答信號ACK,主機檢測到該信號后,再啟動下一字節的數據傳輸,否則,該次數據傳輸終止??臻e情況下,SCL和SDA都處于高電平狀態。
2 I2C總線IP核的設計和功能仿真
2.1 I2C總線IP核的設計
字節命令控制器從命令寄存器接收數據,并對數據進行并串轉換。字節控制器對傳輸的數據以每一個數據位為最小操作對象。通過設置開始、停止和讀位,實現數據傳輸過程的控制。字節命令控制器的程序狀態轉移圖如圖2
所示。
2.2 I2C總線IP核的功能仿真
從圖5仿真結果可以看出,在對應的地址段內,通過I2C總線IP核讀出的數據和寫入的數據完全一致,符合設計要求,同時數據變化時刻和保持時間均滿足I2C總線通訊規范的要求。
3 結語
本文對某型武器中使用的I2C總線IP核的設計進行了研究,實現了全功能的I2C總線IP核,設計了可以仿真的主設備模塊和從設備模塊,并利用仿真軟件ModelSim對設計的IP核進行了功能性仿真,設計的IP核功能正確,目前該IP核在某型武器中已進行成功應用。
參考文獻
[1] 王誠,薛小剛,鐘信潮.FPGA/CPLD設計工具:Xilinx ISE使用詳解[M].北京:人民郵電出版社,2005:309-313.
[2] Philips Semiconductors,The I2C-bus specification
V-2.1.JAN,2001.
[3] 張冬冬.I2C總線通訊接口器件的CPLD實現[J].電子技術應用,2002,(8).
[4] 王前,吳淑泉,劉喜英.基于FPGA的I2C總線接口實現方法[J].微電子技術,2002,(3).
[5] 俞偉,徐寧儀,羅飛,賀光輝,周祖成.I2C總線控制器IP核設計[J].世界科技研究與發展,2005,(1).
作者簡介:申廣兵(1979—),男,中國空空導彈研究院工程師,研究方向:發射控制電氣系統。