基于FPGA的異步串行總線設(shè)計
摘要:高速異步串行總線在現(xiàn)代通信設(shè)備中應(yīng)用越來越廣,文中介紹了一種基于FPGA的高速異步串行總線設(shè)計,詳細(xì)描述了硬件設(shè)計和總線協(xié)議的實現(xiàn)方法。在現(xiàn)代通信系統(tǒng)的應(yīng)用中有較高的實用價值。
關(guān)鍵詞:異步串口;FPGA器件;Verilog HDL
隨著近代通信技術(shù)的迅猛發(fā)展,對總線傳輸速率的要求也越來越高。傳統(tǒng)的并行總線在發(fā)展到一定速率后很難再有所突破,并且在實際應(yīng)用中還存在著大量的弊端,比如:成本相對較高、抗電磁干擾能力低下、模塊間的總線互聯(lián)繁瑣等等。這些都給串行總線的發(fā)展和應(yīng)用提供了客觀動力。串行總線按傳輸模式可分為同步串行總線和異步串行總線兩類;同步串行總線存?zhèn)鬏斶^程中需要攜帶同步時鐘信號,因此在傳輸距離較長或傳輸速率較高時會出現(xiàn)由于時鐘衰落而引起的誤碼現(xiàn)象,制約了串行總線的傳輸速率和作用距離。而異步串行總線恰恰規(guī)避了這些缺點。因此異步串行總線被大量的應(yīng)用于高速串行通信系統(tǒng)中。異步串行總線的按實現(xiàn)方式大致可分為兩種,一種是采用專用串行總線接口芯片實現(xiàn),實現(xiàn)方便簡單,但二次開發(fā)性差,不利于系統(tǒng)升級維護(hù);另一種是基于FPGA等可編程邏輯芯片實現(xiàn)。后者設(shè)計靈活,二次開發(fā)型良好,參數(shù)配置便捷,利于系統(tǒng)升級維護(hù)。本文將詳細(xì)描述一種基于FPGA芯片硬件設(shè)計,采用Verilog HDL硬件描述語言實現(xiàn)傳輸協(xié)議的高速異步串行總線設(shè)計。
1 硬件設(shè)計方案
本設(shè)計通過高速異步串行總線和上位機(jī)進(jìn)行通信,通過解析消息內(nèi)容完成對下位機(jī)的實時控制與監(jiān)測,并且將監(jiān)測數(shù)據(jù)及時準(zhǔn)確的回傳至上位機(jī)本系統(tǒng)要求具備較高的實時控制性能,下位機(jī)響應(yīng)上位機(jī)指令要求時間在3us以內(nèi),模塊間通信穩(wěn)定可靠、級聯(lián)簡潔,系統(tǒng)性能升級方便等。通過對系統(tǒng)要求研究分析,采用高速異步串行總線實現(xiàn)模塊間通信比較符合要求。系統(tǒng)框圖如圖1所示。
高速異步串行總線碗件設(shè)計采用了以FPGA芯片為主,配以接口、時鐘、電源變換等外圍電路的設(shè)計思路。選用ALTERA公司的Cvclone系列FPGA作為核心器件。此芯片內(nèi)部有豐富的邏輯資源和存儲資源,有豐富的時鐘網(wǎng)絡(luò)和鎖相環(huán)單元和I/O引腳,能夠滿足異步串行協(xié)議實現(xiàn)的硬件需求多種電壓單獨使用,有效降低芯片功耗。為了提高FPGA工作穩(wěn)定性和可靠性在硬件設(shè)計時專門在其外圍配置了電源監(jiān)測電路和復(fù)位電路,對FPGA的各種工作電壓和電流進(jìn)行監(jiān)測,當(dāng)任意一路電壓值發(fā)生突變時,電源監(jiān)測電路都會給出命令,立刻關(guān)掉其它電源,或者將FPGA的供電端短路至地端,使FPGA進(jìn)入斷電狀態(tài),確保芯片不會被損壞。當(dāng)電壓值恢復(fù)正常時,電源監(jiān)測電路將打開供電電路使FPGA再次進(jìn)入工作狀態(tài),通過復(fù)位信號啟動FPGA的程序從起始狀態(tài)開始工作,確保FPGA芯片的物理安全和運行安全,從而有效提高系統(tǒng)的可靠性。設(shè)計中還采用了LVDS(Low Voltage Differential Signaling)收發(fā)芯片來提高串行總線的驅(qū)動能力。單端串行總線從FPGA輸出后經(jīng)LVDS收發(fā)器轉(zhuǎn)化為差分信號線對輸出至模塊端口,與其它模塊進(jìn)行物理連接。串行總線采用差分線的連接方式能夠更有效的抵抗傳輸中的共模噪聲,降低傳輸誤碼率,大幅提高通信質(zhì)量。詳細(xì)的設(shè)計框圖如圖2所示。
評論