基于FPGA的通用網(wǎng)絡(luò)下載器硬件設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要 網(wǎng)絡(luò)下載器作為航天計(jì)算機(jī)地面檢測(cè)系統(tǒng)的重要組成部分,發(fā)揮著重要的作用。文中主要介紹了網(wǎng)絡(luò)下栽器的總體設(shè)計(jì)思路,給出了硬件模塊的設(shè)計(jì)原理圖。并在PCB設(shè)計(jì)中,對(duì)于LVDS接口、高速總線以及疊層的設(shè)計(jì)中給出了應(yīng)用參考,保證了系統(tǒng)硬件的可靠性,且在實(shí)際應(yīng)用中取得了穩(wěn)定的性能表現(xiàn)。
關(guān)鍵詞 LVDS;通用下載器;FPGA
隨著航天技術(shù)的發(fā)展,地面檢測(cè)設(shè)備作為大系統(tǒng)的重要組成部分,發(fā)揮著重要作用。通用下載器作為測(cè)試指令和測(cè)試數(shù)據(jù)上傳下發(fā)的重要通道,其可靠性和穩(wěn)定性備受關(guān)注,本文介紹了通用下載器的總體設(shè)計(jì)思路,給出了原理圖和PCB的設(shè)計(jì)參考,同時(shí)在實(shí)際測(cè)試中驗(yàn)證了該設(shè)計(jì)的可靠性和穩(wěn)定性。
1 系統(tǒng)概述
該設(shè)備主要完成的功能是將70 Mbit的數(shù)據(jù)包通過網(wǎng)口分包發(fā)送給接收設(shè)備,并發(fā)送控制數(shù)據(jù)給接收設(shè)備,從而接收來自接收設(shè)備的狀態(tài)數(shù)據(jù)。
整個(gè)設(shè)備主要由ARM芯片和FPGA芯片組成,ARM芯片采用三星2440,F(xiàn)PGA選用Xilinx的Xilinx Spartan6系列FPGA,型號(hào)為XC6SLX45F484,將FPGA掛在ARM的RAM接口下,其接口帶寬可達(dá)133 M/5x4 Byte=106 MByte,通過100 Mbit·s-1以太網(wǎng)網(wǎng)卡與PC上位機(jī)通信,通過LVDS接口來完成與下位機(jī)的數(shù)據(jù)和控制信息交互。
FPGA通過一個(gè)FIFO接收ARM發(fā)送的數(shù)據(jù),寫使能信號(hào)(fifo_wren)由ARM發(fā)送的片選信號(hào)(nce)和寫使能(nwe)控制,當(dāng)?shù)刂沸盘?hào)為0,nce和nwe同時(shí)有效時(shí),F(xiàn)IFO被寫入數(shù)據(jù)(16位寬)。FIFO讀使能由FIFO空信號(hào)(fifo_empt_w)控制,當(dāng)FIFO有數(shù)據(jù)寫入時(shí),F(xiàn)IFO空信號(hào)(fifo_empt_w)由低變高,觸發(fā)讀使能,數(shù)據(jù)被讀出,并經(jīng)LVDS后進(jìn)入下位機(jī)。
FPGA通過另一個(gè)FIFO接收下位機(jī)發(fā)送的數(shù)據(jù),寫使能信號(hào)(lvds_en_in)由下位機(jī)控制,使能信號(hào)為高后,下位機(jī)提供寫時(shí)鐘(lv_clk_in_ wire),數(shù)據(jù)(8位寬)被寫入FIFO。FIFO讀使能(fifo_rden)由ARM發(fā)送的片選信號(hào)(nce)和寫使能信號(hào)(noe)控制,當(dāng)FIFO有數(shù)據(jù)寫入時(shí),F(xiàn)IFO空信號(hào)(fifo_r_empt_w)由低變高,ARM檢測(cè)到此信號(hào)后使能nce和noe,并給出讀時(shí)鐘,F(xiàn)IFO數(shù)據(jù)被讀出。
ARM通過100 MBIT網(wǎng)口接收上位機(jī)發(fā)送的TCP/IP數(shù)據(jù)包,ARM將其解包使數(shù)據(jù)內(nèi)容通過ARM的RAM口發(fā)送給FPGA,而FPGA將數(shù)據(jù)包通過LVDS接口發(fā)送給接收設(shè)備。
下載器通過LVDS口接收來自接收設(shè)備發(fā)送的狀態(tài)數(shù)據(jù)包并緩存至FIFO中,接收完一幀后給ARM發(fā)送中斷信號(hào),ARM接收到中斷信號(hào)通過RAM接口讀取FPGA FIFO中的狀態(tài)數(shù)據(jù)包并打包成TCP/IP數(shù)據(jù)包并通過100 Mbit網(wǎng)口發(fā)送給上位機(jī)。
2 原理圖設(shè)計(jì)
2.1 電源設(shè)計(jì)
系統(tǒng)采用5 V直流供電,F(xiàn)PGA需要1.2 V的核心電壓,2.5 V的VCCAUX電壓,3.3 V的bank電壓,RAM板與LVDS接口芯片sn551vds31/32均使用3.3 V電壓供電,同時(shí)保證各個(gè)電壓等級(jí)互不影響,采用5 V直接產(chǎn)生1.2 V,2.5 V和3.3 V電壓的方式,其中FPGA的1.2 V核心電壓采用開關(guān)電源LM2852,保證供電電壓的精度,提高了電源效率,2.5 V和3.3 V電流預(yù)估較大,為滿足系統(tǒng)長(zhǎng)時(shí)間工作的散熱,使用TI的電源模塊pth04070。
2.2 網(wǎng)絡(luò)接口設(shè)計(jì)
網(wǎng)絡(luò)接口使用DM9000芯片以及網(wǎng)絡(luò)接口芯片HR911103A組成,DM9000是一個(gè)全集成、功能強(qiáng)、性價(jià)比高的快速以太網(wǎng)MAC層控制器。其帶有一個(gè)通用處理器接口、EEPROM接口、10/100 PHY和16 kB的SRAM(其中13 kB用來接收FIFO,3 kB用來發(fā)送FIFO)。電源模塊采用單一電源,可分別兼容3.3 V和5 V的IO接口電平。設(shè)計(jì)采用3.3 V電源供電,保證了系統(tǒng)的穩(wěn)定性,100 m網(wǎng)口雙向通信帶寬為50 Mbit·s-1(6 MByte /s)。DM9000和2440連接了16條數(shù)據(jù)線,1條地址線,唯一地址線用于判斷數(shù)據(jù)線傳輸?shù)氖堑刂坊蚴菙?shù)據(jù),所以這16條數(shù)據(jù)線為數(shù)據(jù)和地址復(fù)用,如圖4所示。
2.3 LVDS接口設(shè)計(jì)
LVDS:Low Voltage Differential Signaling,低電壓差分信號(hào)。LVDS傳輸支持速率一般在155 Mbit·s-1以上。LVDS是一種低擺幅的差分信號(hào)技術(shù),其使得信號(hào)能在差分PCB線對(duì)或平衡電纜上以幾百M(fèi)bit·s-1的速率傳輸,其低壓幅和低電流驅(qū)動(dòng)輸出實(shí)現(xiàn)了低噪聲和低功耗。 IEEE在兩個(gè)標(biāo)準(zhǔn)中對(duì)LVDS信號(hào)進(jìn)行了定義。ANSI/TIA/EIA-644中,推薦最大速率為655 Mbit·s-1。設(shè)計(jì)采用了LVDS接口發(fā)送芯片sn551vds 31和接收芯片sn55lvds32,其中發(fā)送部分采用50 Ω的串聯(lián)匹配,電阻精度選擇為1%,保證終端匹配電阻的精度。
3 PCB設(shè)計(jì)
系統(tǒng)PCB設(shè)計(jì)需注意疊層設(shè)計(jì),ARM和FPGA間高速總線的設(shè)計(jì)以及LVDS總線的阻抗匹配及信號(hào)約束問題。
根據(jù)TI的參考手冊(cè),通常的疊層結(jié)構(gòu)為L(zhǎng)VDS信號(hào)層、電源層(分割成LVDS電平電源和TTL電平電源)、地層(分割成LVDS電平地和TTL電平地)和TTL信號(hào)層,如圖7所示。
但在實(shí)際設(shè)計(jì)中,由于疊層的設(shè)計(jì),不可能單獨(dú)列出較多層,對(duì)于TTL和LVDS信號(hào)的地層也無需進(jìn)行分割,因其會(huì)破壞地層的完整性,在確保完整地的情況下,可對(duì)其他地層TTL和LVDS信號(hào)分割??傊?,在保證地層完整的情況下,使LVDS信號(hào)和TTL信號(hào)盡量分離,最好是在不同的層進(jìn)行布線。在本PCB板的設(shè)計(jì)中,使用6層疊層結(jié)構(gòu):TOP-GND1-INNER-POWER-GND2-BOTTOM,其中TOP和BOTTOM層走LVDS信號(hào),INNER和GND2走LVTTL信號(hào),這樣既保持了信號(hào)的分層,也保持了完整的信號(hào)回流路徑。
LVDS信號(hào)頻率可達(dá)600 MHz以上,所以差分線要求嚴(yán)格等長(zhǎng),差分對(duì)內(nèi)最好不超過10 mil(0.254mm),若頻率低于600 MHz,該約束值可適當(dāng)放寬,但上限不能超過75 mil。不同LVDS對(duì)間的布線最大差值不超過200 mil。文中在Cadence16.3的約束設(shè)置中,具體設(shè)置如下。
差分阻抗的不匹配會(huì)產(chǎn)生反射,有10%的阻抗不匹配便會(huì)產(chǎn)生5%的反射,所以需根據(jù)不同的情況進(jìn)行不同的匹配控制。LVDS信號(hào)的差分特性阻抗為100 Ω,對(duì)于LVDS信號(hào)發(fā)射端(TX),采用差分對(duì)各自串聯(lián)精度為1%的50 Ω電阻進(jìn)行匹配,這樣既保持了信號(hào)傳輸?shù)墓β室?,又滿足了阻抗控制的要求。
4 實(shí)測(cè)結(jié)果
下載器性能實(shí)測(cè)時(shí),將LVDS接口接收和發(fā)送部分回環(huán)連接,可使用網(wǎng)絡(luò)調(diào)試助手發(fā)送55 AA組成的1 032 Byte的數(shù)據(jù)包,測(cè)試下載器的功能。結(jié)果如圖10所示,從圖中可看到,下載器穩(wěn)定的收發(fā)數(shù)據(jù)。
5 結(jié)束語
設(shè)計(jì)的網(wǎng)絡(luò)下載器將FPGA在信號(hào)處理中的優(yōu)勢(shì)和ARM芯片在網(wǎng)絡(luò)通信中的優(yōu)勢(shì)相結(jié)合,在PCB設(shè)計(jì)中對(duì)于LVDS接口的阻抗、高速線時(shí)序以及疊層進(jìn)行了設(shè)計(jì),較好地保證了系統(tǒng)硬件的可靠性,并在實(shí)際使用中達(dá)到了良好的效果。