基于TMS320C6416T的CPCI信號處理板設計

發(fā)布時(shí)間:2009-12-1 10:32    發(fā)布者:bakedham
關(guān)鍵詞: CPCI , TMS320C6416T , 信號處理板
作者:中國電波傳播研究所 高榮山    來(lái)源:電子設計應用2009年第11期

引言

CPCI規范是由PICMG制定的一種開(kāi)放工業(yè)計算機標準,用于工業(yè)和嵌入式應用。CPCI系統背板和CPCI板卡采用標準的2mm高密度氣密性針孔連接器,提高了系統可靠性。在電氣、邏輯和軟件功能等方面,其與PCI標準完全兼容,使得基于PCI技術(shù)的豐富軟件工具同樣可以在CPCI系統中使用。另外,CPCI可采用IEEE 1101.11后端輸出方式,使系統維護更加便捷。

CPCI板卡的尺寸分3U(100mm×160mm)和6U(160mm×233mm)兩種,3U系統只提供32位/64位的PCI系統總線(xiàn),6U的系統除了提供32位/64位的PCI系統總線(xiàn)外,還通過(guò)連接器接口J3、J4、J5實(shí)現自定義總線(xiàn),可用作高速數據通信或通用輸入/輸出線(xiàn)等,適用于數字化高速處理的模塊化設計應用。

本文利用TMS320C6416T內部集成的32位、33MHz PCI主/從接口,給出了6U的CPCI信號處理板卡設計方案,并對其軟件設計特別是DSP的二次引導程序做了說(shuō)明。

硬件設計

CPCI板卡有J1~J5五個(gè)連接器接口,其中只有J1是必須有的,為32位PCI信號接口。J2為64位擴展PCI信號。對于主控板以外的CPCI板卡,J3、J4、J5可用作用戶(hù)自定義接口。本文所設計的CPCI板卡使用J1、J4、J5接口,主要由DSP、FPGA、SDRAM、FLASH等組成。板卡以TMS320C6416T為核心,通過(guò)高性能FPGA實(shí)現AD數據采集后的預處理,然后經(jīng)64位寬的EMIFA總線(xiàn)傳入 TMS320C6416T中進(jìn)行數字信號處理,處理數據可通過(guò)32位PCI總線(xiàn)、光收發(fā)器或CPCI自定義總線(xiàn)傳輸至外部設備。CPCI的J1接口為32 位、33M的PCI接口信號,與TMS320C6416T的PCI外設連接。DSP通過(guò)EMIFA的CE0存儲空間連接4片SDRAM芯片 MT48LC32M16A2,擴展成64位寬度的128MB存儲器,CE1、CE2空間連接FPGA,通過(guò)J4、J5擴展。EMIFB的CE1空間通過(guò) FLASH芯片S29LV016D擴展2MB的FLASH,用于系統的自舉。系統框圖如圖1所示。


圖1 CPCI板卡框圖

處理板通過(guò)高速16位ADC芯片LTC2206實(shí)現模數轉換,然后將數據傳輸到FPGA進(jìn)行數據預處理,包括數字下變頻及緩存等,之后經(jīng)64位EMIFA 總線(xiàn)通過(guò)EDMA傳到DSP中進(jìn)行數字信號處理,最后通過(guò)CPCI總線(xiàn)傳輸到主機。板卡通過(guò)帶選擇器的時(shí)鐘分配器SY89464實(shí)現內外時(shí)鐘的控制和單端時(shí)鐘到差分時(shí)鐘的轉換。FPGA的配置芯片采用EPC16,配置方式為PS,EPC和FPGA通過(guò)JTAG鏈實(shí)現編程。

TMS320C6416T通過(guò)SDRAM擴展256MB存儲空間,SDRAM采用512Mb芯片MT48LC32M16A2,位寬為16位,通過(guò)4個(gè)此芯片擴展為64位。

EMIFB的CE1空間通過(guò)FLASH擴展BOOTROM空間,采用FLASH芯片S29AL016D實(shí)現,S29AL016D有8位byte和16位word兩種方式,通過(guò)引腳byte#設置,這里使用8位數據格式。

PCI接口信號的連接如圖2所示,使能TMS320C6416T的PCI接口對應PCI_en引腳置高。該接口符合PCI 2.2規范,為33M、32位的PCI主/從接口。


圖2 TMS320C6416T的PCI接口電路圖

上電后DSP自動(dòng)從4KB的EEPROM芯片93LC66B讀取配置信息。DSP與上位機可通過(guò)EDMA進(jìn)行數據傳輸。

這里,DSP的輸入時(shí)鐘采用50M晶振通過(guò)零延遲時(shí)鐘緩沖分配器CY2308輸出,DSP的EMIFA、EMIFB外接存儲器時(shí)鐘為100MHz,也通過(guò)晶體振蕩器連接CY2308給出。

DSP和FPGA的核電壓均為1.2V,I/O電壓為3.3V,1.2V通過(guò)CPCI接口的5V電壓經(jīng)開(kāi)關(guān)電源控制芯片TPS54612實(shí)現,3.3V經(jīng)LDO芯片MIC29300實(shí)現。電路如圖3所示。


圖3 電源電路圖

軟件設計

板卡的軟件設計包括DSP的Boot程序、上位機的驅動(dòng)程序及信號處理板需要實(shí)現的專(zhuān)門(mén)算法程序。這里重點(diǎn)介紹TMS320C6416的二次Bootloader程序設計。

TMS320C6416T的程序加載方式有HPI、ROM、Noboot、JTAG等幾種,通過(guò)上電時(shí)BEA[18:19]的值決定,板卡中可通過(guò)撥碼開(kāi)關(guān)進(jìn)行設置。使用ROM加載可實(shí)現系統上電自動(dòng)加載,其加載過(guò)程是:DSP內部Bootloader程序將保存于外部ROM(FLASH)中的前1K字節長(cháng)度的程序自動(dòng)搬到DSP內部RAM 0地址處,然后從0地址開(kāi)始執行程序。由于應用程序一般都大于1K字節,所以必須用二次引導的方法。二次引導程序放在FLASH的前1K字節中,這樣 DSP自動(dòng)Boot完成后就從0地址開(kāi)始執行二次引導程序。當所有的數據都搬運完畢后,DSP跳轉到主程序的入口處,并開(kāi)始執行主程序。為了實(shí)現這一引導過(guò)程,首先需要在驗證好的算法程序工程文件中加入二次Boot的搬移文件,并修改CMD文件,通過(guò)CCS編譯成out文件后,通過(guò)hex工具轉換成.hex文件,再轉變文件格式成bin二進(jìn)制數據文件格式,最后通過(guò)另外的FLASH燒寫(xiě)工程文件寫(xiě)入到FLASH中。

TMS320C6416T只支持8位的ROM加載。ROM中的程序存儲格式需要與芯片的大小端存儲模式一致。

搬移文件Boot.asm采用匯編語(yǔ)言實(shí)現,實(shí)現1K代碼的搬移。

CMD文件中應將Boot段分配為從地址0開(kāi)始的1K空間,FLASH空間從0x64000000開(kāi)始,長(cháng)度也為1K,即分配為:

MEMORY
{
   BOOT  : origin = 0x00000000, len = 0x00000400
ISRAM  : origin = 0x00000400, len = 0x000ffc00 ;DSP的內部L2空間
FLASH  : origin = 0x64000000, len = 0x00000400
}

利用CCS經(jīng)工程文件編譯生成.out文件后,再利用其自帶的Hex轉換工具hex6x.exe轉換成hex文件,轉換時(shí)需要首先編寫(xiě)一個(gè)cmd命令文件, 說(shuō)明需要轉換的out文件名、存儲器寬度、Flash起始地址和長(cháng)度、hex輸出文件名等。如cmd文件名為myHex_cmd,則調用格式為:

hex6x.exe myHex_Cmd.cmd

hex文件以行為單位。每行以字符 ‘:’ (0x3a)開(kāi)頭,以回車(chē)和換行符(0x0d、0x0a)為結束。每行開(kāi)始和結束之間的所有內容都是以字符形式表現的。通過(guò)C程序將hex文件轉換為 bin文件,在燒寫(xiě)FLASH的工程中以.h頭文件保存定義為data數組。然后在CCS中通過(guò)FlashBurn的工程文件將data數據燒寫(xiě)到 FLASH中,即可實(shí)現DSP的上電自舉。

FlashBurn工程文件主要實(shí)現S29AL016D的編程。S29AL016D的編程流程圖如圖4所示。


圖4 FLASH寫(xiě)操作流程圖

按照S29AL016D的命令格式和程序流程,燒寫(xiě)FLASH子程序如下。其中,*data為要寫(xiě)入的數組,nByte為數據個(gè)數。

void BurnFlash(unsigned char *data, unsigned long nBytes)
{
unsigned short timeout;
unsigned char c;
while(nBytes--)  
{
*(volatile char *)0x64000AAA = (char)0xaa;
*(volatile char *)0x64000555= (char)0x55;
*(volatile char *)0x64000AAA = (char)0xa0;
*flashnext = *data;
c = *data++;
timeout = 0;
do
timeout += 1;
while(*flashnext != c && timeout < (unsigned short)0xffff);
flashnext++;
}
}

對于上位機驅動(dòng)程序,在Windows系統中,PCI設備需要專(zhuān)用的驅動(dòng)程序,系統上電后會(huì )自動(dòng)掃描PCI總線(xiàn)上的設備,本文通過(guò)WindRiver開(kāi)發(fā)工具實(shí)現驅動(dòng)程序。設置好DSP的PCI寄存器DSPP,即可直接訪(fǎng)問(wèn)DSP的預存取4M空間,設置DSP的寄存器RSTSRC的值,即可產(chǎn)生PCI中斷。

結語(yǔ)

CPCI總線(xiàn)系統在當前工控、通信領(lǐng)域獲得廣泛應用,本文通過(guò)TMS320C6416T給出了CPCI信號處理板卡的具體設計方案,對DSP的二次引導程序的設計進(jìn)行了詳細說(shuō)明,對CPCI板卡的設計具有很好的指導意義。

參考文獻

1. TMS320C6416T Fixed-point Digital Signal Processors. Texas Instruments Incorp.2004.3

2. StratixIIGX Device Handbook. Altera Corp.2007.8

3. 任麗香,馬淑芬,李方惠.TMS320C6000系列DSPs的原理與應用[M].北京:電子工業(yè)出版社,2000
本文地址:http://selenalain.com/thread-6207-1-1.html     【打印本頁(yè)】

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

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