基于CPCI總線的智能A/D,D/A模塊設(shè)計(jì)
0 引 言
在工業(yè)控制領(lǐng)域,為了實(shí)現(xiàn)采集和控制功能,經(jīng)常會(huì)使用到A/D,D/A模塊。在實(shí)際使用中A/D,D/A模塊和主機(jī)之間通信方式可以有很多選擇。比如RS 232,RS 422,網(wǎng)絡(luò)等接口方式。在該設(shè)計(jì)中A/D,D/A模塊通過CPCI總線與主機(jī)通信,通過A/D接口采集數(shù)據(jù),經(jīng)過伺服控制軟件處理,輸出模擬量驅(qū)動(dòng)執(zhí)行機(jī)構(gòu)。
從而實(shí)現(xiàn)一個(gè)閉環(huán)的控制。另外通過對(duì)DSP軟件的修改,該模塊還可以單獨(dú)實(shí)現(xiàn)A/D或者D/A功能。
該設(shè)計(jì)中A/D,D/A模塊具備以下功能:
(1)提供2路16位A/D,輸入信號(hào)范圍±5 V,精度要求小于士16 LSB;
(2)提供2路16位D/A,輸出信號(hào)范圍±5 V,精度要求小于土8 LSB,受系統(tǒng)復(fù)位控制;
(3)使用TI公司DSP(TMS320VC33)作為板載處理器,該DSP主要實(shí)現(xiàn)管理A/D和D/A、運(yùn)行控制算法、與主機(jī)通信功能,并受系統(tǒng)復(fù)位控制;
(4)DSP與主機(jī)采用雙口RAM(IDT7133)實(shí)現(xiàn)數(shù)據(jù)交換功能。
1 設(shè)計(jì)原理
如圖1硬件結(jié)構(gòu)框圖所示,該模塊采用TI公司高性能CPU器件TMS320VC33為核心。模塊通過PCI9052芯片與CPCI總線連接,PCI9052的本地總線的信號(hào)連接到雙口RAM的一端。雙口RAM的另一端通過電平緩沖器連接DSP。
DSP核心電路包括DSP芯片TMS320VC33、數(shù)據(jù)RAM CY7C1041VC33、程序FLASH芯片SST39VF800A組成;DSP的地址、數(shù)據(jù)、控制總線通過電平緩沖器件連接雙口RAM、A/D芯片、D/A芯片、CPLD。DSP通過雙口RAM芯片與主控計(jì)算機(jī)進(jìn)行數(shù)據(jù)交換;A/D芯片的初始化以及讀寫操作也由DSP負(fù)責(zé)完成;DSP控制D/A芯片輸出模擬信號(hào);CPLD內(nèi)部主要實(shí)現(xiàn)組合邏輯功能,將DSP輸入的控制信號(hào)譯碼,然后輸出給雙口RAM以及A/D,D/A等功能芯片使用。
雙口RAM芯片是實(shí)現(xiàn)智能板的重要組成,由于DSP與主控計(jì)算機(jī)的地址空間資源是分別進(jìn)行獨(dú)立分配的,無(wú)法直接進(jìn)行互相訪問,在兩者之間需要一個(gè)數(shù)據(jù)緩沖,雙口RAM的特點(diǎn)使其可以滿足這個(gè)要求。
2 實(shí)現(xiàn)方法
2.1 主要原器件選擇
在該設(shè)計(jì)中采用成熟技術(shù),選用常用、可靠的控制芯片,結(jié)合一些常用的外圍電路和專用電路實(shí)現(xiàn)全部的功能。即選擇PC19052作為接口芯片,利用該芯片實(shí)現(xiàn)PCI總線從接口邏輯。
選擇TMS320VC33作為板載處理芯片,該芯片是TI公司推出的專門用于實(shí)現(xiàn)浮點(diǎn)運(yùn)算的高性能DSP,數(shù)據(jù)處理能力強(qiáng),并且包含豐富的外圍電路擴(kuò)展接口。
為了實(shí)現(xiàn)模塊上的電平轉(zhuǎn)換功能,選擇應(yīng)用比較廣泛SN74ALVC164245DL作為電平轉(zhuǎn)換緩沖芯片。
2.2 PCI9052與雙口RAM硬件接口實(shí)現(xiàn)
如圖2所示PCI9052與雙口RAM連接的本地總線信號(hào)包括地址、數(shù)據(jù)、控制信號(hào)3個(gè)部分。地址總線寬度為12位,數(shù)據(jù)總線寬度為16位,因此尋址空間為2 KB的16 b地址空間??刂菩盘?hào)包括讀寫控制信號(hào)和外設(shè)準(zhǔn)備完成信號(hào),當(dāng)雙口RAM將外設(shè)準(zhǔn)備完成信號(hào)拉低后,主機(jī)就可以通過輸出讀寫控制信號(hào)對(duì)雙口RAM進(jìn)行讀寫的操作。
2.3 DSP設(shè)計(jì)核心電路設(shè)計(jì)
DSP是整個(gè)設(shè)計(jì)核心,DSP核心電路由DSP芯片、FLASH和RAM三個(gè)部分組成。DSP通過雙口RAM與處理計(jì)算機(jī)交換數(shù)據(jù)。
如圖3所示,DSP核心電路設(shè)計(jì)如下所述。DSP的電源包括核心工作電壓1.8 V與I/O電壓3.3 V兩種,分別由板上電源模塊提供。時(shí)鐘信號(hào)由外接晶振提供。復(fù)位信號(hào)由CPLD提供,由于DSP的I/O電壓為3.3 V,在與I/O電平標(biāo)準(zhǔn)為+5 V的信號(hào)連接時(shí)需要進(jìn)行3.3~5 V之間的電平轉(zhuǎn)換。中斷信號(hào)同樣通過電平轉(zhuǎn)換器件連接到CPLD。地址和數(shù)據(jù)總線根據(jù)實(shí)際設(shè)計(jì)的需要連接功能器件。JTAG接口連接到模塊的一個(gè)標(biāo)準(zhǔn)的雙列14腳直插連接器上。Page0~3信號(hào)通過電平轉(zhuǎn)換器件連接到CPLD。
2.4 電源設(shè)計(jì)
系統(tǒng)電源包括+5 V.3.3 V,1.8 V,+15 V,-15 V。
DSP芯片核心電壓為1.8 V,I/O電壓為3.3 V,所以需要該板提供3.3 V和1.8 V兩個(gè)電壓源。D/A芯片需要提供+15 V,-15 V兩種電源。+5 V電源是由系統(tǒng)提供,其他的電源均由+5 V電源轉(zhuǎn)換獲得。
對(duì)于線性穩(wěn)壓來說,其特點(diǎn)是電路結(jié)構(gòu)簡(jiǎn)單,所需元件數(shù)量少,輸入/輸出壓差可以很大,但其致命弱點(diǎn)就是效率低,功耗高。DC-DC電路的特點(diǎn)是效率高,升降壓靈活,缺點(diǎn)是干擾和紋波較大。
對(duì)比凌特公司、國(guó)家半導(dǎo)體公司、德州儀器公司等的同類型電壓轉(zhuǎn)換芯片,選取德州儀器公司的TPS73HD318模塊作為3.3 V和1.8 V電壓轉(zhuǎn)換芯片。選用RECOM公:REC3-0515DRW完成+5 V和+15 V,-15 V之間電壓轉(zhuǎn)換。他們具有90%以上的轉(zhuǎn)換效率、簡(jiǎn)單的外圍電路、更小的封裝、2.5%以下的紋波電壓等特點(diǎn)。
2.5 復(fù)位設(shè)計(jì)
如圖4所示,復(fù)位的輸入包括兩個(gè)部分:MAX1232輸出的RESETA和電源芯片TPS73HD318輸出的RESETB。MAX1232的輸入為手動(dòng)復(fù)位信號(hào)輸入和看門狗喂狗信號(hào)輸入。手動(dòng)復(fù)位信號(hào)來自復(fù)位按鈕,喂狗信號(hào)來自CPLD。復(fù)位輸出2個(gè)信號(hào)分別給DSP,D/A使用。
2.6 電平轉(zhuǎn)換設(shè)計(jì)
由于DSP的接口電平為3.3 V,CPLD和PC19052接口電平為5 V,為了將兩部分兼容起來,需要使用電平轉(zhuǎn)換緩沖芯片。如圖5所示該器件有兩個(gè)供電電源、兩個(gè)方向控制端、兩個(gè)使能端。通過連接不同的電壓源可以為器件的信號(hào)引腳提供不同的電平。
2.7 A/D,D/A設(shè)計(jì)
A/D和D/A芯片通過電平緩沖期間與DSP的地址數(shù)據(jù)總線連接,由DSP芯片負(fù)責(zé)A/D和D/A的初始化以及讀寫控制。
3 CPLD邏輯設(shè)計(jì)
CPLD片內(nèi)邏輯實(shí)現(xiàn)描述框圖見圖6。在CPLD內(nèi)部主要實(shí)現(xiàn)了三個(gè)的功能,與DSP總線的邏輯接口、內(nèi)部的寄存器、控制邏輯。
與DSP總線的接口邏輯實(shí)現(xiàn)與DSP邏輯接口,使DSP對(duì)CPLD的內(nèi)部寄存器可以進(jìn)行訪問。狀態(tài)寄存器為只讀寄存器,用來讀取中斷狀態(tài)、與雙口RAM進(jìn)行通信的標(biāo)志位等信息;控制寄存器為只寫寄存器,用來控制中斷屏蔽、修改通信的標(biāo)志位。組合邏輯主要用來進(jìn)行地址譯碼、讀寫譯碼。
4 DSP軟件設(shè)計(jì)
DSP軟件開發(fā)主要是在TI提供的集成開發(fā)環(huán)境CCS下,充分利用實(shí)時(shí)操作系統(tǒng)DSP/BIOS的強(qiáng)大功能,結(jié)合自己特定的處理算法.快速構(gòu)筑一個(gè)滿足需求的高效率的軟件系統(tǒng)。在設(shè)計(jì)中,對(duì)DSP的初始化是必須的,該設(shè)計(jì)主要應(yīng)用于實(shí)時(shí)控制系統(tǒng)中,其電路的主要功能是用于采集、運(yùn)算、輸出。程序流程圖如圖7所示,上電后存儲(chǔ)在FLASH內(nèi)的程序開始運(yùn)行,DSP開始依次初始化RAM存儲(chǔ)器、CPLD內(nèi)部寄存器、A/D寄存器、D/A寄存器。初始化完成后開始讀取A/D輸入,由于A/D轉(zhuǎn)換速度比讀取的速度慢,在讀取過程中需要查詢A/D轉(zhuǎn)換狀態(tài),等待A/D芯片輸出轉(zhuǎn)換完成信號(hào)。將讀取的數(shù)據(jù)寫入雙口RAM的指定位置,并刷新雙口RAM和CPLD內(nèi)部的標(biāo)志位,通知主機(jī)讀取數(shù)據(jù)。對(duì)A/D數(shù)據(jù)進(jìn)行運(yùn)算,根據(jù)運(yùn)算結(jié)果控制D/A輸出,等待查詢D/A轉(zhuǎn)換完成之后,程序再次跳轉(zhuǎn)至讀取A/D。
5 結(jié) 語(yǔ)
將該設(shè)計(jì)用于某一伺服控制系統(tǒng),實(shí)現(xiàn)了系統(tǒng)功能,同時(shí)對(duì)系統(tǒng)的穩(wěn)定性和可靠性給予了足夠的關(guān)注。經(jīng)長(zhǎng)時(shí)間考核,本系統(tǒng)運(yùn)行穩(wěn)定可靠。
評(píng)論