熊建新+王元+鄭鵬



摘 要:文章提出并論證了在光傳輸設備中利用SPI總線替代并行地址數據總線的設計,利用SPI總線實現設備板卡間通信,極大地簡化了設備的背板及各單元板的硬件設計,是一種簡易、可靠、穩定的傳輸方式。
關鍵詞:SPI;并行總線;光傳輸
傳統的光傳輸設備中多采用背板和板卡的結構,根據各功能模塊各板卡具有不同的功能,如SDH光傳輸設備采用的控制板、光板、以太網板、2 M板等各單元電路板,均通過背板進行總線連接。因為各單元電路采用了對應的專用集成電路,控制盤對各單元板業務功能的初始化及功能控制是采用并行控制總線來完成的,這些總線包括各板卡間的地址、數據總線和控制信號等,由此帶來背板的布局連線極為困難復雜。采用SPI總線替代8位、16位或32位的并行控制總線后大大簡化了背板的設計難度,并在一定程度上增加了設備的可靠性和穩定性[1]。
1 系統總線設計
控制板CPU與各業務板之間通過4根信號線連接,總線設計如圖1所示。控制板CPU通過4根SPI串行總線與各業務板連接,其中MISO,MOSI,SCLK共用,通過片選信號CS將各業務板區分開來,各業務板通過SPI總線與控制板CPU通信,并將各總線命令進行串并轉換,與業務板專用芯片進行實時控制管理。由圖可知控制板CPU作為SPI總線的主機,各業務板FPGA作為SPI總線的從機。SPI信號線詳細定義如表1所示。
2 控制板CPU總線設計
控制板CPU選用NXP公司的LPC1768,LPC1768是一款基于ARM Cortex-M3內核的微控制器,操作頻率可達100 MHz,具有三級流水線和哈弗結構[2]。控制板CPU SPI管腳分布為:P0.16為控制板CPU的CS信號,直連控制板的FPGA IO管腳;P0.15為共用的SCLK管腳,P0.17為共用的MISO,P0.18為共用的MOSI,再選用LPC1768的其他幾個IO口作為其他幾個業務板的CS片選信號,分別作為每一塊板的讀寫控制。
控制板CPU定義SPI總線時序如圖2所示。
1次片選有效的讀/寫周期內,有32個時鐘。前16個時鐘為操作+地址,后16個時鐘為數據。每個16 bit中,MSB在前,LSB在后。每次讀寫操作之間CPU在給完地址信息后預留1 ms的間隔時間,用來給FPGA完成緩存讀寫使能信號、地址信號,CPU數據給出后,FPGA繼續緩存上面保存的地址信號的數據,最后由FPGA全部給出到專用芯片。詳細定義如表2所示。
為避免SPI總線競爭,使用互斥信號量對SPI總線進行保護操作,在CPU訪問SPI總線之前,首先獲取互斥信號量,操作完畢之后再釋放互斥信號量。內部接口具體函數如表3所示。
3 業務板FPGA總線設計
本設計中業務板采用XILINX公司目前主流通用的Spartan6系列芯片XC6SLX100-FGG676實現SPI轉并行總線的功能,已通過板級驗證。編程語言采用業內共用的VHDL硬件邏輯語言[3]。
業務板主要功能是通過背板接收控制板CPU的SPI讀寫信號,實時地轉換為對本電路板的專用芯片的讀寫控制。具體設計流程為:FPGA在SPI時鐘信號SCLK上升沿下對CS進行判斷,當CS為0時,緩存MOSI信號,最高位為地址信號的第16位,判斷CPU是讀或寫操作。
當最高位為0,CPU對業務板進行讀操作。FPGA先緩存SPI的15位地址總線ADDR,然后在SPI地址總線和數據總線的1 ms間隔周期內對專用芯片進行讀操作,讀出該芯片地址ADDR的數據,在SPI數據位到來的時候依次給出16位數據,注意MSB先給出,LSB后給出。
當最高位為1,CPU對業務板進行寫操作。FPGA先將CPU給過來的地址數據總線全部緩存,然后在CPU寫操作完成后對專用芯片進行寫指令,將緩存的地址、數據依次寫入專用芯片。業務板FPGA總線設計如圖3所示。
4 結語
本文針對常用的光傳輸設備設計過程中背板控制總線的處理,提出了一種采用SPI串行總線替代并行總線的設計,并對設計過程進行了詳細的闡述和論證。事實證明假設設備共有6塊業務板,每塊業務板采用的最低8位的地址數據總線,每塊業務板需要19根總線,6塊業務板則需要114根總線,采用SPI總線后只需要10根總線即可。這種設計方法極大地簡化了背板的設計難度,提高了設備的穩定性和可靠性,具有很好的使用價值。
作者簡介:熊建新(1983— ),男,湖北黃岡,碩士研究生,工程師;研究方向:光通信開發。
[參考文獻]
[1]劉敏,陳金鷹.基于FPGA的并行數據轉SPI接口設計[J].電視技術,2012(5):31-32.
[2]李大江,崔建明.一種基于FPGA的可配置SPIMaster接口設計實現[J].電子技術應用,2010(10):60-62.
[3]XILIN X.DS160:Spartan-6 family overview[EB/OL].(2010-11-05)[2017-06-25]. http://www.xilinx.com.
Abstract: This paper presents and demonstrates the use of SPI bus instead of the parallel address data bus in the optical transmission equipment. The SPI bus is used to realize the communication between the devices boards, which greatly simplifies the hardware design of the backplane and the unit board, is a simple, reliable, stable transmission mode.
Key words: serial peripheral interface; parallel bus; optical transmission