CPLD在嵌入式系統(tǒng)與CAN總線網(wǎng)絡(luò)的應(yīng)用
時(shí)間:2008-04-07 16:14:00來(lái)源:ronggang
導(dǎo)語(yǔ):?可編程邏輯器件PLD(ProgrammablelogicDevice)就是由用戶進(jìn)行編程實(shí)現(xiàn)所需邏輯功能的數(shù)字專(zhuān)用集成電路ASIC
1.引言
可編程邏輯器件PLD(ProgrammablelogicDevice)就是由用戶進(jìn)行編程實(shí)現(xiàn)所需邏輯功能的數(shù)字專(zhuān)用集成電路ASIC??删幊踢壿嬈骷诂F(xiàn)代電子工程設(shè)計(jì)中得到了廣泛應(yīng)用。它是在PAL,GAL等邏輯器件的基礎(chǔ)上發(fā)展起來(lái)的,具有高密度,高速度,低功耗體系結(jié)構(gòu)和邏輯單元,靈活以及運(yùn)用范圍寬等特點(diǎn),同時(shí)還具有設(shè)計(jì)周期短,制造成本低,開(kāi)發(fā)工具先進(jìn),標(biāo)準(zhǔn)產(chǎn)品無(wú)需測(cè)試,質(zhì)量穩(wěn)定及可實(shí)時(shí)布線檢驗(yàn)等優(yōu)點(diǎn)。
現(xiàn)場(chǎng)總線技術(shù)廣泛應(yīng)用于工業(yè)和軍用測(cè)控局域網(wǎng)中,它可以實(shí)現(xiàn)較遠(yuǎn)距離、較快速度的信息傳輸,而且只需要雙絞線作為傳輸媒介,簡(jiǎn)單可靠。但是,在該技術(shù)應(yīng)用中總線控制器與微機(jī)之間的接口電路一般采用單片機(jī)來(lái)實(shí)現(xiàn)。采用這種方式將導(dǎo)致較長(zhǎng)的研發(fā)周期和龐大的電路,且難于實(shí)現(xiàn)高速數(shù)據(jù)傳輸。本文利用CPLD成功地實(shí)現(xiàn)了嵌入式系統(tǒng)與CAN總線網(wǎng)絡(luò)的通信,速度快,易于實(shí)現(xiàn),而且非常穩(wěn)定。
本系統(tǒng)采用的器件是Altera公司的CPLD,屬于MAX7000系列。Altera公司的CPLD器件主要包括MAX系列、ACEX系列、FLEX系列和APEX系列。其中MAX系列器件為高速實(shí)際應(yīng)用提供了非常高的性價(jià)比,這基于它先進(jìn)的MAX架構(gòu)。MAX7000系列提供了速度最快的可編程邏輯器件解決方案,它基于CMOSEEPROM工藝,傳播延遲最小為3.5ns。
2.CPLD實(shí)現(xiàn)接口電路
實(shí)時(shí)控制系統(tǒng)中,測(cè)控局域網(wǎng)利用CAN控制器實(shí)現(xiàn)微機(jī)間的數(shù)據(jù)傳輸。其基本的設(shè)計(jì)思想是:由于PC總線協(xié)議與CAN控制器不一致,因而在它們中間設(shè)計(jì)了一個(gè)硬件電路作為接口來(lái)實(shí)現(xiàn)轉(zhuǎn)換。PC地址與數(shù)據(jù)總線是分離的,而CAN控制器數(shù)據(jù)與地址線通過(guò)分時(shí)復(fù)用來(lái)實(shí)現(xiàn)地址與數(shù)據(jù)分離,剛好與單片機(jī)一致。單片機(jī)技術(shù)雖然較成熟,但是,由于涉及單片機(jī)編程和開(kāi)發(fā)的周期較長(zhǎng),且采用單片機(jī)系統(tǒng)需要較龐大的外圍電路,不利于研制系統(tǒng)應(yīng)用于嵌入式系統(tǒng)中。因此,用可編程邏輯器件設(shè)計(jì)接口電路,可以有效解決這些問(wèn)題。
本系統(tǒng)采用“主-從”式點(diǎn)對(duì)點(diǎn)通信。系統(tǒng)硬件由兩臺(tái)PC104主機(jī)和兩塊CAN總線通信模塊組成,如圖1所示。主機(jī)采用CPU主頻為300MHz的奔騰處理器;CAN總線控制器位SJA1000T;一帶屏蔽的雙絞線作為系統(tǒng)總線;通信波特率可用軟件設(shè)置為1Mbps;為了提高通信的可靠性,用CAN控制器的報(bào)文篩選器對(duì)報(bào)文進(jìn)行篩選,來(lái)對(duì)由于干擾而產(chǎn)生的錯(cuò)誤報(bào)文進(jìn)行濾波。
本系統(tǒng)主要是利用主機(jī)PC(PC104)采集多個(gè)下位機(jī)從被控對(duì)象得到的數(shù)據(jù),并進(jìn)行實(shí)時(shí)控制和綜合調(diào)度,其原理框圖如圖2所示。
其中CPLD完成從CAN控制器到PC總線的數(shù)據(jù)轉(zhuǎn)換。CAN控制器負(fù)責(zé)從總線上采集數(shù)據(jù)。總線驅(qū)動(dòng)部分由89C250完成總線驅(qū)動(dòng);光電隔離器完成CAN控制器與傳輸電纜的信號(hào)隔離,防止電纜上的非規(guī)則信號(hào)對(duì)CAN控制器產(chǎn)生干擾。
3.MAX+PLUSⅡ程序設(shè)計(jì)
Altera公司的MAX+PLUSⅡ是一個(gè)高效實(shí)用的工具。直接采用原理圖輸入方式,進(jìn)行編譯后寫(xiě)入器件中;同時(shí)可在線更改寫(xiě)入內(nèi)容,修改和調(diào)試簡(jiǎn)單易行。利用MAX+PLUSⅡ可以對(duì)輸入輸出關(guān)系進(jìn)行在線調(diào)試和仿真,開(kāi)發(fā)和調(diào)試周期短而高效。MAX+PLUSⅡ的軟件設(shè)計(jì)的流程包括設(shè)計(jì)輸入、功能仿真、編譯、后仿真、編程驗(yàn)證幾個(gè)部分。
本文所論述的系統(tǒng)已經(jīng)實(shí)現(xiàn)并進(jìn)行通信測(cè)試,在最高通信速度、通信距離、熱冗余和冷冗余實(shí)驗(yàn)等測(cè)試中都取得了良好的表現(xiàn)。這里僅論述邏輯設(shè)計(jì)輸入和功能仿真。
CPLD主要用于實(shí)現(xiàn)PC接口板的地址選擇比較器和CAN控制器到PC總線的數(shù)據(jù)轉(zhuǎn)換,其設(shè)計(jì)輸入如圖3所示。
其中compare完成選址功能,MUX2×8完成總線轉(zhuǎn)換。
4.仿真實(shí)驗(yàn)
為簡(jiǎn)明起見(jiàn),這里僅給出核心的部分時(shí)序仿真圖形,如圖4所示。
由仿真波形可知,在PC總線的讀寫(xiě)操作進(jìn)行時(shí),地址和數(shù)據(jù)很好的實(shí)現(xiàn)了轉(zhuǎn)換,讀寫(xiě)的周期完整,觸發(fā)迅速,保證轉(zhuǎn)換的準(zhǔn)確和迅速,滿足了設(shè)計(jì)的要求。
5.結(jié)論
可編程邏輯器件的應(yīng)用已經(jīng)成為現(xiàn)代電子電路設(shè)計(jì)中的高效方式,它可以實(shí)現(xiàn)高效率、可靠的設(shè)計(jì),也可以進(jìn)一步提高電路的集成度;使用它設(shè)計(jì)的CAN通信卡可以作為通信接口而滿足嵌入式系統(tǒng)的要求。同時(shí),基于PC104系統(tǒng)的CAN通信的通信效率較高,具有較強(qiáng)的實(shí)時(shí)性,可以滿足工業(yè)現(xiàn)場(chǎng)高速通信的需要,也可為復(fù)雜控制系統(tǒng)實(shí)現(xiàn)實(shí)時(shí)控制提供強(qiáng)有力的工具。
標(biāo)簽:
中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。