基于A(yíng)RM與DSP的智能儀器系統設計

發(fā)布時(shí)間:2012-1-9 17:13    發(fā)布者:1770309616
關(guān)鍵詞: arm , dsp , 系統設計 , 智能儀器
1引言
隨著(zhù)智能儀器及控制系統對實(shí)時(shí)性信號處理的要求不斷提高和大規模集成電路技術(shù)的迅速發(fā)展。越來(lái)越迫切的要求有一種高性能的設計方案與之相適應,將DSP技術(shù)和ARM技術(shù)結合起來(lái)應用于嵌入式系統中,將會(huì )充分發(fā)揮兩者優(yōu)勢以達到智能控制系統中對數據的實(shí)時(shí)性、高效性的通信要求。該嵌入式系統要求實(shí)時(shí)響應,具有嚴格的時(shí)序性。其工作環(huán)境可能非常惡劣,如高溫、低溫、潮濕等,所以系統還要求非常高的穩定性。
2嵌入式系統的總體設計
2.1核心器件的主要功能
ARM和DSP分別選用Cirrus Logic公司的EP7312、TI公司的TMS320VC5402。充分利用ARM豐富的片上資源和DSP強大的信號處理功能,實(shí)現高效性、實(shí)時(shí)性的信號處理及網(wǎng)絡(luò )通信功能。
EP7312是專(zhuān)為高性能、超低功耗產(chǎn)品而設計的微處理器,采用ARM7TDMI處理器內核,具有8kB高速緩沖存儲器,支持存儲器管理單元,片內集成了液晶顯示器控制器,鍵盤(pán)掃描器,數字音頻接口,完全的JTAG等功能,廣泛地應用于嵌入式領(lǐng)域。TMS320C54xDSP提供了McBSPs(多通道緩沖串口);6通道的DMA控制器;可以與外部處理器直接通信的8位增強HPI(主機接口)。選擇這樣的SOC(片上系統)作為該系統的核心器件,使得其穩定可靠并具有廣泛的擴展功能。
2.2系統總體設計及工作原理
系統總體設計框圖如圖1所示。本系統主要是實(shí)現信號的實(shí)時(shí)性處理及傳輸,滿(mǎn)足工業(yè)現場(chǎng)及各種測量?jì)x器的高可靠性要求。ARM有豐富的片上資源,適合嵌入式系統的開(kāi)發(fā),在該嵌入式系統中,ARM主要負責操作系統的運行、任務(wù)管理和協(xié)調以及DSP的控制任務(wù),完成數據的遠程通信。擴展了外部擴展了多種外設,如通用串口、LCD顯示屏,以太網(wǎng)接口。通過(guò)連接以太網(wǎng)控制器實(shí)現網(wǎng)絡(luò )化功能。在A(yíng)RM中移植了Linux操作系統和實(shí)現了系統外部硬件接口的驅動(dòng)程序。由DSP執行計算密集型操作,實(shí)現多種信號處理算法,然后將處理后的數字信號通過(guò)主機口接口(HPI)與ARM通信。再由ARM通過(guò)以太網(wǎng)控制器將數據傳輸到網(wǎng)絡(luò ),實(shí)現了遠程控制與監測。

圖1 系統總體硬件框圖
3系統硬件具體設計方案
3.1ARM與DSP的接口設計
EP7312和TMS320VC5402連接的接口電路如圖2所示。VC5402通過(guò)HPI與ARM進(jìn)行連接。ARM先向DSP寫(xiě)入控制字,設置工作模式,然后將訪(fǎng)問(wèn)地址寫(xiě)入地址寄存器(HPIA),再對數據鎖存器(HPID)進(jìn)行讀寫(xiě),即可讀出和寫(xiě)入指定的存儲單元。主機由兩根地址線(xiàn)A2、A1可以尋址到HPI接口的所有控制寄存器、地址寄存器和數據寄存器;由HBIL、HCNTL1、HCNTL0區分16位數據的高、低字節。當向HBIL=0的地址寫(xiě)入數據時(shí),表示是第一個(gè)字節,向HBIL=1的地址寫(xiě)入數據表示第二個(gè)字節。尋址過(guò)程中HCS要為低電平。

圖2 EP7312與TMS320VC5402的連接
DSP的HPI接口片選信號使用EP7312擴展片選信號nCS4,HPI各個(gè)特殊功能寄存器的映射地址如下:
#defineHPIC0*(volatileunsignedchar*)0x40000000
#defineHPIC1*(volatileunsignedchar*)0x40000001
#defineHPIA0*(volatileunsignedchar*)0x40000004
#defineHPIA1*(volatileunsignedchar*)0x40000005
#defineHPID0*(volatileunsignedchar*)0x40000006
#defineHPID1*(volatileunsignedchar*)0x40000007
設置好DSP的狀態(tài)后,DSP向ARM發(fā)送中斷,通知ARM已將數據準備好,等待ARM發(fā)中斷,DSP在中斷中對接收的數據進(jìn)行處理。ARM在初始化后,等待DSP發(fā)送中斷通知ARM數據已經(jīng)準備好。ARM在檢測到中斷后,先判斷中斷是否有效,再從HPI口讀寫(xiě)數據,在完成向HPI口發(fā)送數據后,向DSP發(fā)送中斷通知DSP接收數據。ARM通過(guò)控制端口信號模擬接口時(shí)序,來(lái)完成對HPI口寄存器的訪(fǎng)問(wèn)。由于DSP在BOOT過(guò)程中向ARM發(fā)送了中斷,所以ARM在初始化時(shí)要清除這個(gè)中斷,并且在數據交互之前要設置控制寄存器中的BOB位,指示高地址在前還是低地址在前。這一步在程序初始化時(shí)由ARM來(lái)完成。
3.2ARM與以太網(wǎng)控制器之間的通信設計
系統平臺實(shí)現了以太網(wǎng)接口。提供了以太網(wǎng)芯片的驅動(dòng),支持網(wǎng)絡(luò )功能。以太網(wǎng)控制芯片的數據、地址和控制信號與EP7312的總線(xiàn)相連,如圖3所示。片選信號使用EP7312的擴展片選信號nCS2。


圖3以太網(wǎng)接口原理圖
RTL8019默認的I/O基地址是300H,用到的地址空間為300H~3FFH,因此使用到EP7312的低4位地址線(xiàn),將RTL8019上的SA19~SA10和SA7~SA5接為地,SA9、SA8接為VCC。RTL8019AS使用的是16位數據總線(xiàn)方式,因此,將RTL8019上的IOCS16B引腳通過(guò)10K的上拉電阻接為VCC;通過(guò)IO模式讀寫(xiě)以太網(wǎng)控制器,所以SMEMRB和SMEMWB引腳通過(guò)上拉電阻接為VCC。
當EP7312向網(wǎng)上發(fā)送數據時(shí),先將一幀數據通過(guò)遠程DMA通道送到RTL8019AS中的發(fā)送緩存區,然后發(fā)出傳送命令;當RTL8019AS完成了上一幀的發(fā)送后,再開(kāi)始此幀的發(fā)送。RTL8019AS接收到的數據通過(guò)MAC比較、CRC校驗后,由FIFO存到接收緩沖區;收滿(mǎn)一幀后,以中斷的方式通知EP7312。FIFO邏輯對收發(fā)數據作16字節的緩沖,以減少對本地DMA請求的頻率。
以太網(wǎng)控制器有兩個(gè)指針寄存器來(lái)控制緩沖區的存儲過(guò)程,當前頁(yè)面指針curr和邊界指針bnry。curr指向新接收到幀的起始頁(yè)面,即接收緩沖環(huán)的寫(xiě)頁(yè)面指針;bnry指向讀過(guò)的最后一個(gè)頁(yè)面,即接收緩沖環(huán)讀頁(yè)面指針。自定義指針next_page,表示存儲分組緩沖區的邊界,初始值為next_page=bnry,讀取一頁(yè)數據后由軟件執行bnry加1,curr自動(dòng)加1。curr不等于bnry時(shí),表示有新的數據包在緩沖區中,讀取一包的前四個(gè)字節,前四個(gè)字節并不是以太網(wǎng)數據包的內容。分別表示數據包存放的頁(yè)地址和已接收的數據的字節數。如果curr=0,表示讀取出錯,返回null。如果bnry>0x7f,則bnry=0x4c。
4嵌入式系統軟件設計
4.1BootLoader的設計
該嵌入式系統引入了Linux操作系統,可以給系統下的任務(wù)提供調度機制,簡(jiǎn)化任務(wù)中的需求操作,當需求變化時(shí)只需要改變任務(wù)內容,然后重新和操作系統發(fā)布即可。
本系統中EP7312采用的是外部啟動(dòng)方式,也就是從CS[0]片選的外部NORFLASH啟動(dòng),系統啟動(dòng)后,執行啟動(dòng)代碼,即初始化CPU、內存控制器以及片上設備,然后配置存儲映射。啟動(dòng)代碼隨后執行一個(gè)引導裝載程序bootloader,將內核從FLASH中解壓到SRAM中,然后跳轉到內核的第一條指令處執行,內核運行。
bootloader完成從硬件啟動(dòng)到操作系統啟動(dòng)的過(guò)渡,用于初始化硬件和啟動(dòng)操作系統。在內核運行之前需要bootloader作為系統驅動(dòng)程序完成加載內核和一些輔助性的工作,然后跳轉到內核代碼的起始地址并執行。對于該系統來(lái)說(shuō)選擇EP7211所使用的bootloader—Shoehorn,然后做一些改動(dòng)。如調整系統各個(gè)寄存器的地址值;設定SDRAM控制器;調整UART1的波特率等。Shoehorn代碼分為host端和target端兩部分,一部分由eth.c、serial.c、shoehorn.c和util.c組成,由這些文件編譯生成host端的可執行文件shoehorn;另一部分由ini.s和loader.c組成,編譯生成一個(gè)小于2KB的文件loader.bin,這個(gè)二進(jìn)制文件會(huì )被下載到target端的SRAM中用來(lái)引導系統的啟動(dòng)。通過(guò)一系列的主機與開(kāi)發(fā)板之間的握手通信、下載程序的方式使得代碼相對分散,減小開(kāi)發(fā)板上起始代碼的大小,以滿(mǎn)足目標板上下載代碼的限制。
4.2內核的配置
該嵌入式系統選擇了較成熟穩定的Linux-2.4.13版本內核。為了避免修改內核定制代碼
時(shí)造成代碼的不穩定和失去代碼的靈活性,可以通過(guò)選擇合適的版本內核,修改該配置文件,裁剪不必要的功能,再編譯出符合新配置的內核,得到既滿(mǎn)足應用功能要求同時(shí)體積又小的內核,產(chǎn)生一個(gè)隱藏文件/usr/src/linux/.config。該文件記錄了對內核具體功能模塊的選擇和配置。
內核配置時(shí),大部分的選項都可以使用缺省值,只有小部分需要根據需求選擇,將與內核關(guān)系比較近且經(jīng)常用到的功能代碼直接編譯進(jìn)內核;將不經(jīng)常用到的代碼編譯為可加載模塊,有利于減小內核的長(cháng)度,增加靈活性。
4.3驅動(dòng)程序的設計
在Linux操作系統中驅動(dòng)程序是操作系統內核與硬件設備直接的接口。驅動(dòng)程序屏蔽了硬件的細節。在應用程序看來(lái)硬件設備只是一個(gè)設備文件,應用程序可以像操作普通文件一樣對硬件設備進(jìn)行操作。
設備驅動(dòng)程序可以設計模塊化方式。不必編譯進(jìn)內核,而是被分別編譯并鏈接成一組目標文件,這些文件可以被載入正在運行的內核,或從正在運行的內核中卸載?梢詼p少內核的長(cháng)度,具有很大的靈活性。
4.4DSP中信號處理算法的實(shí)現
多數傳感器對于溫度、濕度、電源的波動(dòng)等環(huán)境因素都存在著(zhù)交叉靈敏度,產(chǎn)生較大的誤差,測量精度和穩定性都受到一定的影響。在DSP中采用數據融合技術(shù)可以消除干擾,提高傳感器的測量精度。數據融合是通過(guò)組合,將傳感器數據之間進(jìn)行相關(guān),以從輸出元素獲得更多的信息。保證在環(huán)境干擾變化很大的情況下也可以有較高的測量精度和穩定性。采用軟件方法對傳感器數據融合處理被證明是一種很好的方法。
該系統的網(wǎng)絡(luò )功能可以將多個(gè)功能相同或不同的嵌入式智能儀器連接在一起組成智能傳感器網(wǎng)絡(luò )。每個(gè)智能儀器節點(diǎn)都具有數據采集、數據處理和通信的功能。信息融合技術(shù)可以將來(lái)自多個(gè)傳感器的數據進(jìn)行多級別、多方面、多層次的處理,從而產(chǎn)生新的有意義的信息,而這種新信息是任何單一傳感器所無(wú)法獲得的準確度更高的表征客觀(guān)環(huán)境的信息。這種技術(shù)在傳感器網(wǎng)絡(luò )中有著(zhù)舉足輕重的作用。
5結束語(yǔ)
該嵌入式智能儀器系統的設計,為儀器儀表方便有效的接入以太網(wǎng)提供了很好的解決方案,實(shí)現了遠程控制和實(shí)時(shí)性的數據傳輸。由于采用并發(fā)多任務(wù)技術(shù)處理該嵌入式系統復雜的外部事件,以及控制軟件系統的復雜性,保證了系統的實(shí)時(shí)性能。該嵌入式系統的軟硬件配置精簡(jiǎn),抗干擾能力符合環(huán)境要求;裝配結構便于檢修。這種嵌入式智能儀器系統的實(shí)現使嵌入式設計在數據處理及檢測控制領(lǐng)域里得到了很好的應用。

Source:互聯(lián)網(wǎng)
本文地址:http://selenalain.com/thread-85065-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页