<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于大容量FPGA的多節點(diǎn)系統的遠程升級的實(shí)現

基于大容量FPGA的多節點(diǎn)系統的遠程升級的實(shí)現

作者: 時(shí)間:2013-10-17 來(lái)源:網(wǎng)絡(luò ) 收藏

  2.2 子節點(diǎn)硬件設計說(shuō)明

  在子節點(diǎn)的硬件設計中,ATmega64單片機是實(shí)現整個(gè)升級功能的關(guān)鍵。ATmega64是基于增強的AVR RISC結構的低功耗8位CMOS微控制器。由于其先進(jìn)的指令集以及單時(shí)鐘周期指令執行時(shí)間,ATmega64 的數據吞吐率高達1 MIPS/MHz,從而可以緩解系統在功耗和處理速度之間的矛盾。AVR內核具有豐富的指令集和32個(gè)通用工作寄存器,并且所有的寄存器都直接與算術(shù)邏輯單元(ALU)相連接,使得1條指令可以在1個(gè)時(shí)鐘周期內同時(shí)訪(fǎng)問(wèn)2個(gè)獨立的寄存器。這種結構大大提高了代碼效率,并且具有比普通的CISC微控制器最高至10倍的數據吞吐率。ATmega64有如下特點(diǎn):

 ?、?64 KB的系統內可編程Flash(具有同時(shí)讀寫(xiě)的能力,即RWW),2 KB的EEPROM,4 KB的SRAM,32個(gè)通用工作寄存器;

 ?、?53個(gè)通用I/O口線(xiàn);

 ?、?實(shí)時(shí)計數器(RTC);

 ?、?4個(gè)具有比較模式與PWM的靈活的定時(shí)器/計數器(T/C),具有片內振蕩器的可編程看門(mén)狗定時(shí)器;

 ?、?2個(gè)USART,面向字節的雙線(xiàn)串行接口(TWI),1個(gè)SPI 串行端口;

 ?、?8路10 位具有可選差分輸入級可編程增益的ADC;

 ?、?與IEEE 1149.1 標準兼容的,可用于訪(fǎng)問(wèn)片上調試系統及編程的JTAG接口。

  ATmega64是以Atmel 高密度非易失性存儲器技術(shù)生產(chǎn)的。片內ISP Flash 允許程序存儲器通過(guò)ISP 串行接口(或者通用編程器)進(jìn)行編程,也可以通過(guò)運行于A(yíng)VR內核之中的引導程序進(jìn)行編程。通過(guò)將8位RISC CPU與系統內可編程的Flash集成在一個(gè)芯片內,ATmega64 成為一個(gè)功能強大的單片機,為許多嵌入式控制應用提供了靈活而低成本的解決方案。

  利用ATmega64單片機實(shí)現對大容量,涉及的主要技術(shù)問(wèn)題有三點(diǎn):一是如何將ATmega64單片機接入RS485總線(xiàn);二是在接收到升級數據后和加載時(shí),如何利用ATmega64單片機對大容量的Flash存儲器進(jìn)行讀寫(xiě)操作;三是ATmega64單片機實(shí)現的SELECTMAP加載。

  2.2.1 RS485接口電路設計

  如表1所列, RS485總線(xiàn)標準具有控制方便、價(jià)格低廉以及高噪聲抑制、相對高的傳輸速率、傳輸距離遠和寬共模范圍等優(yōu)點(diǎn)。在過(guò)去的20年時(shí)間里,建議性標準RS485作為一種多點(diǎn)差分數據傳輸的電氣規范,被應用在許多不同的領(lǐng)域作為數據傳輸鏈路。

  表1 TIA/EIA485串行通信標準的性能

子節點(diǎn)的ATmega64單片機通過(guò)Sipex公司設計生產(chǎn)的高性能RS485收發(fā)器接入RS485總線(xiàn)。

  SP485R是一款與流行的標準RS485芯片完全兼容,而且包含更高的ESD保護和高接收器輸入阻抗等性能的RS485收發(fā)器。接收器輸入高阻抗可以使400個(gè)收發(fā)器接到同一條傳輸線(xiàn)上,又不會(huì )引起RS485驅動(dòng)器信號的衰減。該收發(fā)器的特點(diǎn)如下:

 ?、?允許超過(guò)400個(gè)收發(fā)器接到同一條傳輸線(xiàn)上;

 ?、?接收器輸入高阻抗(標準值RIN=150 kΩ);

 ?、?半雙工配置與工業(yè)標準引腳一致;

 ?、?共模輸入電壓范圍為-7~+12 V;

 ?、?低功耗(250 mW);

 ?、?獨立驅動(dòng)器和接收器使能引腳。

  其典型應用電路如圖3所示。

圖3 利用SP485R構成的半雙工RS485電路

  ATmega64單片機的標準串行口通過(guò)RXD直接連接SP485R芯片的RO引腳,通過(guò)TXD直接連接SP485R芯片的DI引腳。由單片機輸出的R/D信號直接控制SP485R芯片的發(fā)送器/接收器使能:R/D信號為1,SP485R芯片的發(fā)送器有效,接收器禁止,此時(shí)單片機可以向RS485總線(xiàn)發(fā)送數據字節;R/D信號為0,SP485R芯片的發(fā)送器禁止,接收器有效,單片機可以接收來(lái)自RS485總線(xiàn)的數據字節。上拉電阻R1、下拉電阻R2用于保證未連接總線(xiàn)時(shí)的SP485R芯片處于空閑狀態(tài),以提高每個(gè)RS485節點(diǎn)的工作可靠性。6.8 V的TVS管V1、V2、V3用來(lái)保護RS485總線(xiàn),避免RS485總線(xiàn)受外界干擾時(shí)產(chǎn)生的高壓損壞RS485收發(fā)器。

  2.2.2 ATmega64存儲空間的擴展

  ATmega64的尋址空間為64 KB,利用ATmega64自身的尋址系統,只能訪(fǎng)問(wèn)0x0000~0xFFFF的地址空間。顯然,這對于存儲和加載大容量FPGA的配置數據是遠遠不夠的。以Xilinx公司的Spartan3系列FPGA為例,其配置數據所需的存儲空間如表2所列。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>