基于DSP+ARM架構(gòu)的協(xié)議轉(zhuǎn)換器設計
摘要:介紹基于DSP+ARM架構(gòu)協(xié)議轉(zhuǎn)換器的系統(tǒng)組成及其工作原理,給出了DSP通過EMIF接口與FPGA無縫連接的接口實現(xiàn),DSP通過HPI接口與ARM高速接口的實現(xiàn),以及基于ARM的高速以太網(wǎng)接口。簡要介紹了基于嵌入式操作系統(tǒng);uClinux的網(wǎng)絡編程,給出了實驗結(jié)果。
本文引用地址:http://www.ex-cimer.com/article/151317.htm在測試飛行控制組件時,遙測接收設各離信息處理中心較遠,而被測數(shù)據(jù)量又極大,如果采用傳統(tǒng)的專線傳輸遙測數(shù)據(jù),則傳輸時間需幾個小時,無法滿足快速處理的要求。因此,需要研制一種協(xié)議轉(zhuǎn)換器,用來完成被測數(shù)據(jù)無損、實時、遠距離地與遠程上位機進行通信,并能接收上位機的控制指令,實現(xiàn)工作狀態(tài)的遠程交互,而測試人員通過上位機的人機界面就可以完成所有測試。
1、系統(tǒng)組成及工作原理
考慮到系統(tǒng)實時性和可靠性的要求,選擇以太網(wǎng)口作為協(xié)議轉(zhuǎn)換器與遠程上位機的數(shù)據(jù)轉(zhuǎn)發(fā)接口、以高速串口作為控制口的通信方式,采用DSP+ARM架構(gòu)的硬件解決方案。系統(tǒng)框圖如圖1所示?;竟ぷ髟恚?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/FPGA">FPGA作為數(shù)據(jù)預處理器,完成并行數(shù)據(jù)到串行數(shù)據(jù)的轉(zhuǎn)換等數(shù)據(jù)預處理任務;DSP讀取FPGA處理后的數(shù)據(jù)并完成數(shù)據(jù)壓縮;ARM作為中央處理控制器,主要從DSP系統(tǒng)中讀取已經(jīng)編碼的數(shù)據(jù)并通過以太網(wǎng)完成與上位機實時通信的任務。上位機按照數(shù)據(jù)傳輸協(xié)議、產(chǎn)品的數(shù)據(jù)遙測協(xié)議解調(diào)出各類物理變量,記錄并存儲。
圖1協(xié)議轉(zhuǎn)換器系統(tǒng)框圖
測試人員通過上位機完成工作狀態(tài)的遠程設置與查詢信息交互的任務。
2、硬件設計
2.1 TMS32OC6416及其外圍電路設計
DSP芯片選用TI公司的TMS320C6416。這是TI公司推出的高速定點DSP,它擁有處理能力強大的CPU、高達1 MB的RAM及豐富的外設接口。外設包括為CPU訪問外圍設備提供無縫接口的靈活的外部存儲器接口EMIFA和EMIFB,一個使得DSP很容易通過PCI接口無縫連接到具有PCI功能的外部主CPU上的PCI接口,一個16/32 bit寬的異步并行接口HPI(和Pal共用相同的引腳),一個提供64 bit數(shù)據(jù)通道訪問的增強型EDMA等。TMS320C6416采用3.3 V和1.4 V電源供電,其中I/O采用3.3 V電源供電,內(nèi)核采用1,4 V電源供電。TMS320C6416有符合IEEE1149,1標準的JTAG標準測試接口及相應的控制器,從而可以通過仿真器把DSP系統(tǒng)與PC機相連,進行在線調(diào)試。
2.1.1 DSP與SDRAM、Flash的接口電路
DSP處理器TMS320C6416對外有2個EMIF總線接口,分別是寬64 bit的EMIFA和寬16 bit的EMIFB。EMIFA接口具各與8、16、32、64 bit系統(tǒng)接口的功能,EMIFB接口端口支持8 bit和16 bit系統(tǒng)。EMIFA分成ACE0~ACE3四個存儲空間,每個存儲空間可以獨立配置,無縫連接多種類型的存儲器(如SRAM、Flash RAM、DDR RAM)。
為了提高系統(tǒng)運行速度,外擴兩片SDRAM芯片作為程序的運行空間、數(shù)據(jù)及堆棧區(qū)。SDRAM芯片選用同步存儲器MT48LC2M32B2TG,其容量為2 M×32 bit。TMS-320C6416通過EMIFA接口實現(xiàn)與兩片SDRAM芯片的無縫連接。
TMS320C64l6內(nèi)部沒有Flash存儲器,為了形成獨立的系統(tǒng),采用外部擴展Flash存儲器AM29LV400B存儲程序。系統(tǒng)復位時,從Flash中加載程序。TMS320C6416通過EMIFB接口實現(xiàn)與Flash芯片的無縫連接。
2.1.2 DSP與FPGA的接口電路
由于DSP處理器TMS320C6416的采樣速度及存儲空間受到自身約束限制,所以數(shù)據(jù)的采集、流向控制和數(shù)據(jù)預處理等任務由FPGA完成。FPGA芯片選用Xilinx公司低成本現(xiàn)場可編程門陣列Spartan -3E系列中的XC3S500E。XC3S500E芯片集成有⒛個Block RAM,每個RAM塊中的18 Kbit的模塊存儲器是完全同步、真正的雙端存儲器。用戶可獨立地從每個端口讀出或向每個端口寫人(但同一地址不能同時進行讀和寫)。另外,每個端口都有一個獨立的時鐘,并且對每個端口的數(shù)據(jù)寬度都可以獨立進行配置。
評論