基于大容量FPGA的多節點(diǎn)系統的遠程升級的實(shí)現
引言
多節點(diǎn)系統,在目前的很多電子系統應用場(chǎng)合都可以看到。這種多節點(diǎn)系統由于具有結構可擴展性、功能配置的靈活性以及便于查找故障節點(diǎn)等良好的可維護性得到了越來(lái)越廣泛的應用。通常,多節點(diǎn)系統各個(gè)節點(diǎn)的主要硬件構成有很大的相似性。特別是近年來(lái), FPGA這個(gè)強大的平臺讓多節點(diǎn)系統各個(gè)節點(diǎn)的硬件構成擁有了更廣泛的通用性。尤其是隨著(zhù)IP核技術(shù)的推廣,再加上一些功能強大的CPU核的出現,如Xilinx公司提供的PicoBlaze和MicroBlaze等,使得目前的許多系統的主要功能都可以由大容量的FPGA實(shí)現,而無(wú)需再使用比較昂貴的高性能微處理器。
對于節點(diǎn)系統,這將大大降低系統成本。對于由大容量FPGA構成的多節點(diǎn)系統,系統的升級是一個(gè)費時(shí)費力的工作。此時(shí),FPGA的遠程升級能力就顯得尤為重要。對于包含ARM、DSP、PowerPC等高性能嵌入式微處理器的多節點(diǎn)系統,使用這些嵌入式微處理器,采用SELECTMAP對FPGA進(jìn)行加載并實(shí)現遠程升級,無(wú)需增加過(guò)多的外部器件,是非常經(jīng)濟和高效的。但對于核心器件就是大容量FPGA的系統,如果由FPGA本身來(lái)接收升級數據并寫(xiě)入存儲配置數據的非易失性存儲器,一旦升級失敗,將無(wú)法再次升級,從而限制了它在許多需要高可靠性要求或者維護人員不便于到達的場(chǎng)合的應用;而如果單純?yōu)榱藢?shí)現系統的遠程升級而加入價(jià)格昂貴的嵌入式微處理器,又會(huì )較大地增加系統成本和復雜性。針對這種情況,筆者設計了利用ATmega64單片機和RS485總線(xiàn),加上接入以太網(wǎng)的主控計算機構成的遠程升級系統,解決了上述問(wèn)題。
1 系統設計
1.1 系統結構設計
遠程升級系統主要由一臺接入以太網(wǎng)的主控計算機、半雙工RS485總線(xiàn)以及各個(gè)子節點(diǎn)構成,組成結構如圖1所示。主控計算機通過(guò)以太網(wǎng)從外部獲取整個(gè)系統各個(gè)節點(diǎn)的升級數據,然后通過(guò)RS485總線(xiàn)向各個(gè)子節點(diǎn)發(fā)送其對應的升級數據,完成多節點(diǎn)系統的升級。RS485總線(xiàn)采用一主多從的半雙工方式,主控計算機為總線(xiàn)的主控制器,只能由它向各個(gè)節點(diǎn)發(fā)起通信連接,其余子節點(diǎn)只能響應主控計算機的控制命令。
圖1 多節點(diǎn)大容量FPGA系統遠程升級系統結構框圖
1.2 節點(diǎn)升級原理
各個(gè)節點(diǎn)通過(guò)RS485總線(xiàn)與主控計算機相連,在無(wú)升級數據時(shí),總線(xiàn)可以用來(lái)傳輸主控計算機對各個(gè)節點(diǎn)的查詢(xún)和控制命令。主控計算機與各個(gè)節點(diǎn)的通信協(xié)議可以采用具有查詢(xún)控制幀、應答幀和數據幀3種幀類(lèi)型的協(xié)議。只有主控計算機可以發(fā)送查詢(xún)控制幀,查詢(xún)或設定各個(gè)節點(diǎn)的遠程升級狀態(tài)或工況信息。子節點(diǎn)接收主控計算機的命令和數據,發(fā)送應答幀,并完成自身的升級。
2 子節點(diǎn)的硬件設計
2.1 子節點(diǎn)硬件結構框圖
如圖2所示,以一個(gè)由Xilinx公司的XC3S4000大容量FPGA構成的系統為例,遠程升級系統子節點(diǎn)的硬件電路主要包括: ATmega64單片機,用于存儲大容量FPGA配置數據的Flash,以及接入RS485總線(xiàn)的半雙工總線(xiàn)收發(fā)器。ATmega64單片機用于實(shí)現對大容量FPGA XC3S4000的加載,以及從RS485總線(xiàn)接收FPGA的升級數據并寫(xiě)入擁有2 MB存儲空間的Flash存儲器SST36VF1601C中。RS485TTL電平變換電路采用RS485收發(fā)器SP485R。
圖2 子節點(diǎn)硬件結構框圖
相關(guān)推薦
-
-
sandman555 | 2005-02-05
-
herbertwj | 2004-08-15
-
-
-
-
sandman555 | 2005-02-05
-
-
sandman555 | 2005-02-05
-
-
-
-
技術(shù)專(zhuān)區
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線(xiàn)
- 開(kāi)關(guān)電源
- 單片機
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機控制
- 藍牙
- PLC
- PWM
- 汽車(chē)電子
- 轉換器
- 電源管理
- 信號放大器
評論