摘 要: ColdFire V4內(nèi)核MCF54418微處理器集成內(nèi)存管理單元MMU,、雙以太網(wǎng)MAC,、10個(gè)UART串行接口以及兩個(gè)CAN總線等各種通信外設(shè)接口,非常適用于工業(yè)現(xiàn)場(chǎng)通信產(chǎn)品的開(kāi)發(fā),。利用MCF54418微處理器設(shè)計(jì)而成的通信管理機(jī)具有集成度高,、性能優(yōu)異、配置靈活等特點(diǎn),。
關(guān)鍵詞: ColdFire V4內(nèi)核,;雙以太網(wǎng);通信管理機(jī),;RS485
伴隨著電子技術(shù)的不斷發(fā)展,,電子通信技術(shù)應(yīng)用領(lǐng)域越來(lái)越廣,通信方式日新月異,、通信速率越來(lái)越快,。隨著在網(wǎng)絡(luò)、通信,、控制等領(lǐng)域?qū)Υ罅繑?shù)據(jù)交換處理的需求,,傳統(tǒng)8 bit處理器已無(wú)法滿(mǎn)足要求。為解決這一問(wèn)題,,使用32 bit處理器構(gòu)成嵌入式應(yīng)用系統(tǒng),。通常工業(yè)現(xiàn)場(chǎng)設(shè)備由于各個(gè)廠家研制的時(shí)代差異及應(yīng)用場(chǎng)合需求不同,常規(guī)通信方式基本有RS232,、RS485,、CAN總線、以太網(wǎng)等幾種,。通常大部分工業(yè)現(xiàn)場(chǎng)設(shè)備由RS232,、RS485、CAN等網(wǎng)絡(luò)完成數(shù)據(jù)信息的傳輸任務(wù),而廠級(jí)上層調(diào)度傳輸任務(wù)基本上是由以太網(wǎng)來(lái)完成的,。由于ColdFire V4內(nèi)核的MCF54418微處理器主頻達(dá)到250 MHz,,指令處理能力達(dá)到385 MIPS,內(nèi)部具有64 KB SRAM并可擴(kuò)充DDR2 RAM內(nèi)存,、外部Nand Flash存儲(chǔ)器,,有可獨(dú)立工作帶有IEEE1588對(duì)時(shí)功能的雙以太網(wǎng)MAC、10個(gè)UART,、兩個(gè)CAN(其中串口部分復(fù)用引腳以及)以及I2C等各種通信外設(shè)接口,,非常適用于工業(yè)現(xiàn)場(chǎng)通信產(chǎn)品的開(kāi)發(fā)設(shè)計(jì)。更具有吸引力的是,,該芯片是高度集成的片上系統(tǒng)處理器,,擁有比ARM9性能更先進(jìn)的250 MHz ColdFire V4內(nèi)核,支持Linux,、Windows CE和其他許多嵌入式操作系統(tǒng)的存儲(chǔ)器管理單元(MMU),,可方便地完成10個(gè)串口驅(qū)動(dòng)及以太網(wǎng)TCP/IP協(xié)議棧和兩個(gè)CAN設(shè)備的驅(qū)動(dòng)及文件系統(tǒng)的開(kāi)發(fā)。利用MCF54418微處理器設(shè)計(jì)的通信管理機(jī)具有集成度高,、性能優(yōu)異和配置靈活等特點(diǎn),,可大大提高系統(tǒng)設(shè)計(jì)的靈活性和可擴(kuò)展性。
1 現(xiàn)場(chǎng)通信管理機(jī)的原理框圖和設(shè)計(jì)
本文設(shè)計(jì)了面向工業(yè)現(xiàn)場(chǎng)通信需求的通信管理機(jī),,其原理框圖如圖1所示,。它有兩個(gè)以太網(wǎng)通道,可以組成雙以太網(wǎng)環(huán)網(wǎng)向上位機(jī)調(diào)度系統(tǒng)傳輸數(shù)據(jù),,IEEE1588對(duì)時(shí)功能可以保證傳輸數(shù)據(jù)的實(shí)時(shí)性,。8個(gè)RS232/RS485通信接口可用來(lái)處理RS485網(wǎng)絡(luò)和RS232設(shè)備數(shù)據(jù),每個(gè)RS485網(wǎng)絡(luò)可以連接128個(gè)RS485設(shè)備,。兩個(gè)CAN網(wǎng)絡(luò)接口,每個(gè)可連接128個(gè)CAN設(shè)備,。微處理器USB Host接口用來(lái)連接USB存儲(chǔ)設(shè)備,,主要存儲(chǔ)一些通信管理協(xié)議和裝置配置數(shù)據(jù)。本裝置還有1 GB的DDR2 SDRAM和2 GB的Nand Flash存儲(chǔ)器,,并且該處理器可以支持主流的6/8個(gè)Bank DDR2芯片,。此外,該系統(tǒng)還具有看門(mén)狗,、RTC實(shí)時(shí)時(shí)鐘,、人機(jī)交換界面等接口。
本設(shè)計(jì)的軟件采用2.6.29標(biāo)準(zhǔn)Linux操作系統(tǒng)內(nèi)核及Jffs2文件系統(tǒng),,支持網(wǎng)絡(luò)文件系統(tǒng)調(diào)試,。采用Nand Flash啟動(dòng)、雙以太網(wǎng)驅(qū)動(dòng)支持NFS,Web Server,,USB驅(qū)動(dòng)支持Mass Storage類(lèi)設(shè)備,。
2 系統(tǒng)硬件原理設(shè)計(jì)及主要芯片介紹
2.1 DDR2芯片設(shè)計(jì)
本設(shè)計(jì)中的DDR2芯片采用1 GB容量8個(gè)Bank的DDR2芯片MT47H128M8,總線主頻為250 MHz,,總線數(shù)據(jù)寬度為8 bit,。DDR2電源為1.8 V,采用DDR2專(zhuān)用芯片LP2997MR供電以確保系統(tǒng)供電穩(wěn)定,。在DDR2系統(tǒng)設(shè)計(jì)中,,由于總線速度達(dá)250 MHz,最需要注意的就是高速信號(hào)的完整性,,所有的信號(hào)都需要加串行端接進(jìn)行阻抗匹配,。此外,在布線時(shí)應(yīng)遵循以下的規(guī)則:差分時(shí)鐘信號(hào)的正負(fù)端在端接電阻前后都要按照差分走線方式嚴(yán)格匹配走線長(zhǎng)度,,并且需要放大與其他信號(hào)線的間距,,建議大于10 mil以上,并且最好有地線包裹,,防止線間串?dāng)_,。差分?jǐn)?shù)據(jù)選通線的正負(fù)端在端接電阻前后都要按照差分走線方式,其他的數(shù)據(jù)線(寫(xiě)控制等信號(hào))的走線必須和數(shù)據(jù)時(shí)鐘走線在端接電阻前后匹配,,所有的信號(hào)都盡可能在內(nèi)層走線,,且盡可能短。
2.2 雙以太網(wǎng)PHY設(shè)計(jì)
以太網(wǎng)MAC采用了雙以太網(wǎng)接口的設(shè)計(jì)方案,,因此采用了單芯片的DP83849雙以太網(wǎng)PHY芯片,。微處理器通過(guò)RMII的接口與PHY芯片連接,主時(shí)鐘使用50 MHz,,PHY芯片通過(guò)帶網(wǎng)絡(luò)變壓器的RJ45接口引出來(lái),,可以直接連接網(wǎng)線與外部網(wǎng)絡(luò)通信。它可以用作網(wǎng)絡(luò)文件系統(tǒng)的調(diào)試更新,,也可用于網(wǎng)絡(luò)軟件更新,、網(wǎng)頁(yè)訪問(wèn)等多種網(wǎng)絡(luò)通信功能。在硬件設(shè)計(jì)時(shí)需要注意EMI干擾和防雷增加共軛扼流線圈,,以太網(wǎng)RX+,、RX-,TX+,、TX-信號(hào)線應(yīng)嚴(yán)格按差分信號(hào)線布線規(guī)則進(jìn)行布線,,以確保傳輸信號(hào)的完整性和可靠性。
2.3 RS232/RS485通信接口
MCF54418芯片集成了最多10個(gè)異步串行設(shè)備(U0~U9)和兩個(gè)CAN設(shè)備,。由于一些串口與CAN設(shè)備信號(hào)復(fù)用,,因此實(shí)際設(shè)計(jì)中只設(shè)計(jì)了8個(gè)RS232/RS485通信接口和兩個(gè)CAN總線接口,。設(shè)計(jì)中RS485通信接口采用了免控制零延遲RS485電路,其既可以節(jié)省RS485的收發(fā)控制信號(hào),,又可以完全避免RS485通信中普遍存在的以下問(wèn)題:(1)發(fā)送數(shù)據(jù)存在轉(zhuǎn)換延時(shí),,這無(wú)形中占用了系統(tǒng)處理時(shí)間;(2)發(fā)送狀態(tài)轉(zhuǎn)換若太快或太慢將會(huì)造成數(shù)據(jù)丟失甚至通信崩潰,;(3)在收發(fā)數(shù)據(jù)轉(zhuǎn)換時(shí)容易引入干擾,,導(dǎo)致系統(tǒng)收到雜亂數(shù)據(jù)引起數(shù)據(jù)處理錯(cuò)誤。免控制零延遲RS485電路如圖2所示,。
圖2中,,U1為RS485驅(qū)動(dòng)芯片,其信號(hào)接收發(fā)送控制端DE和RE不經(jīng)微處理器控制,,而是直接經(jīng)U2反向器接到收發(fā)送信號(hào)輸出端,。通常當(dāng)系統(tǒng)發(fā)送完數(shù)據(jù)時(shí),TX信號(hào)自動(dòng)變?yōu)楦唠娖?,?jīng)U2反向變?yōu)榈碗娖?,RE引腳有效關(guān)閉發(fā)送電路自動(dòng)轉(zhuǎn)換到接收狀態(tài)。
當(dāng)發(fā)送數(shù)據(jù)時(shí),,若發(fā)送0信號(hào),,則TX為低電平,經(jīng)U2反向后,,DE為高電平,,發(fā)送電路允許工作,接收電路禁止工作,。此時(shí),,輸出端A、B產(chǎn)生標(biāo)準(zhǔn)低電平差分信號(hào),,0信號(hào)被送到RS485總線上,。若發(fā)送1信號(hào),則TX為高電平,,經(jīng)U2反向后,,DE為低電平,接收電路允許工作,,發(fā)送電路禁止工作。此時(shí),,輸出端A,、B由于有R1、R2,、R3電阻鉗位,,總線產(chǎn)生標(biāo)準(zhǔn)高電平差分信號(hào),,從而使遠(yuǎn)端RS485接收器也能可靠地接收到1信號(hào)。
綜上所述,,本電路的關(guān)鍵在于U2和總線偏置電阻,。其中U2選用單邏輯門(mén)電路SN74AHC1G14DBVT,與常規(guī)分離元件搭接的非門(mén)電路不同,,其能夠確??刂菩盘?hào)可靠翻轉(zhuǎn),保證轉(zhuǎn)換時(shí)間在幾個(gè)納秒之內(nèi),。這么短的切換時(shí)間相對(duì)微秒級(jí)波特率的RS485通信時(shí)間,,延遲幾乎為零。因此,,本電路能夠準(zhǔn)確地保證系統(tǒng)工作在半雙工傳送模式,,即自動(dòng)符合RS485半雙工傳傳輸協(xié)議。整個(gè)通信過(guò)程不需要讀寫(xiě)轉(zhuǎn)換控制操作,,轉(zhuǎn)換完全由硬件本身完成,,并提高了系統(tǒng)通信效率。
本通信管理機(jī)已成功應(yīng)用到某礦山電力設(shè)備監(jiān)控系統(tǒng)中,,且性能可靠,,為用戶(hù)取得了良好的經(jīng)濟(jì)效益。
參考文獻(xiàn)
[1] 李晶皎,,王愛(ài)俠,,張廣淵.ColdFire系列32位微處理器與嵌入式Linux應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2005.
[2] Freescale Semiconductor. MCF5441x reference manual,, Rev 2[Z]. 2009.
[3] Micron Technology,, Inc. MT47H128M8-DDR2 SDRAM Datasheet[Z]. 2004.