版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于usb2.0的tms320vc5402 hpi自舉當(dāng)前,(digital signal processor)芯片已經(jīng)廣泛應(yīng)用于通信、信號處理、雷達(dá)、圖像處理等多個領(lǐng)域,其強(qiáng)大、高效的運(yùn)算能力,是其他微處理器無法比擬的。為充分發(fā)揮dsp運(yùn)算高效的優(yōu)勢,用戶程序通常在dsp內(nèi)部ram中運(yùn)行,這就需要利用dsp的自舉引導(dǎo)(boot loader)功能。在dsp多機(jī)系統(tǒng)中,hpi自舉是首選。目前,采納hpi自舉的實(shí)例主要有兩種,一種是用作為主控制器,通過pc機(jī)串口或者外掛的存儲器得到要下載的dsp用戶程序數(shù)據(jù),這種計劃無法實(shí)現(xiàn)系統(tǒng)與pc機(jī)之間數(shù)據(jù)的實(shí)時高速傳輸;另一種是用pc機(jī)并口里控制dsp h
2、pi接口,從而把程序?qū)懭雂sp 的內(nèi)部ram,該計劃無法滿足系統(tǒng)的即插即用要求。接口具有即插即用,速度快(最高可達(dá)480mbps)等特點(diǎn),可成為pc機(jī)的外圍設(shè)備擴(kuò)展中應(yīng)用日益廣泛的接口標(biāo)準(zhǔn),基于usb對dsp實(shí)現(xiàn)hpi自舉,可以降低成本,也便于dsp與pc機(jī)的高速數(shù)據(jù)通信,鑒于此種考慮,本文介紹一種利用usb2.0接口控制芯片(cy7c6801356pvc)實(shí)現(xiàn)tms320vc5402自舉的實(shí)現(xiàn)計劃。芯片介紹usb2.0芯片及其gpif簡介本計劃采納的usb2.0接口控制芯片是cvpress公司的cy7c6801356pvc,該系列芯片是世界上第一款支持usb2.0的集成微控制器芯片,它集成有
3、usb2.0、智能串行接口引擎(sie)、增加的8051微處理器,通用可編程接口(gpif)、片上ram和fifo存儲器。該系列芯片的智能引擎也支持usb1.1協(xié)議,因此,它具有很好兼容性。cy7c68013與外設(shè)有主/從兩種接口方式:可編程接口gpif和slave fifo,可編程接口gpif是一個微狀態(tài)機(jī),可由軟件編寫讀寫控制時序,也可以作為usb fifo的主控制器與dsp舉行無縫銜接,gpif可工作在自動模式,usb總線和gpif接口域挺直舉行數(shù)據(jù)傳輸,無需8051內(nèi)核挺直參入,以此解決usb2.0高速傳輸?shù)摹捌款i”問題,gpif與8051內(nèi)核關(guān)系1所示。dsp芯片及其hpi簡介tms
4、320vc5402是ti公司的一款性價比極高的低功耗定點(diǎn)數(shù)字信號處理器(dsp),該芯片的主機(jī)接口(hpi,host port interface)被稱為hpi8。這種hpi8接口的最大特點(diǎn)是它允許主機(jī)拜訪dsp的囫圇片內(nèi)空間。hpi接口通過hpi控制寄存器(h)、地址寄存器(hpia)數(shù)據(jù)寄存器(hpid)和hpi內(nèi)存塊來實(shí)現(xiàn)與主機(jī)的數(shù)據(jù)通信。主處理器對hpi的拜訪由內(nèi)外兩部分組成,其中外部主要為主處理與hpi寄存器交換數(shù)據(jù),而內(nèi)部則用于為hpi寄存器與dsp存儲單元交換數(shù)據(jù)(由dma自動完成)。在舉行數(shù)據(jù)地實(shí)時通信時,dsp與主機(jī)可以通過中斷信號舉行握手。其詳細(xì)實(shí)現(xiàn)可通過設(shè)置hpic寄存器
5、的hint、dspint位來對對方舉行中斷。硬件設(shè)計設(shè)計原理自舉從本質(zhì)上說就是dsp上電后,在bootloader引導(dǎo)下,獵取應(yīng)用程序并開頭運(yùn)行的過程,tms320vc5402上電以后,當(dāng)mp/mc為低電平常,系統(tǒng)將從片內(nèi)rom的off80h開頭執(zhí)行,此處的跳轉(zhuǎn)命令使程序跳轉(zhuǎn)至bootloader程序入口處(of800h處)。bootloader程序先清除ifr,并設(shè)置hpi入口點(diǎn)(0x7f)的值為0,置hint為低,再檢測int2是否置位(置位可以通過將hint和int2相連來實(shí)現(xiàn)),如置位則舉行hip自舉,具過程2所示。dsp復(fù)位之后,如檢測到hpi自舉方式有效,就可以舉行hpi自舉引導(dǎo),
6、基于usb總線的hpi自舉,就是在bootloader引導(dǎo)下,通過usb接口控制芯片把程序數(shù)據(jù)由主機(jī)(pc)寫入dsp內(nèi)部ram(daram)并使dsp開頭運(yùn)行的過程,該自舉過程分為三個步驟:一是寫hpic,以設(shè)置hpi控制參數(shù);二是寫hpia,設(shè)置拜訪dsp的首地址;三是通過hpid下載程序。首先,推進(jìn)ezusb control panel下載cy7c68013的固件程序。當(dāng)重枚舉結(jié)束,驅(qū)動程序(ezusb.sis)重新安裝勝利后,在control panel中通過發(fā)送哀求的方式由端點(diǎn)0向hpic(主要設(shè)置bob位,確定字節(jié)協(xié)作)發(fā)送兩個相同的8位控制字,而當(dāng)hpic初始化完成之后,再通過端
7、點(diǎn)0設(shè)置欲下載程序段到dsp中的首地址hpia。hpic、hpia設(shè)置好之后,就可以通過端點(diǎn)2下載dsp程序代碼段,程序代碼段需要分段下載,事實(shí)上,cy7c68013通過端點(diǎn)2把數(shù)據(jù)寫入hpid,然后,dsp根據(jù)hpia指定的地址,由dma自動將hpid中的數(shù)據(jù)寫到ram,接口控制時序可由gpif軟件編程控制,程序數(shù)據(jù)分段下載完畢之后,再將程序的入口地址通過端點(diǎn)0寫入0x7f處,在主機(jī)下載程序的過程中,dsp將向來檢測0x7f是否為0,如不為0,即判定dsp已由主機(jī)舉行了hpi自舉加載,并根據(jù)該值跳轉(zhuǎn)pc指針,以開頭運(yùn)行,進(jìn)而完成hpi自舉。硬件本設(shè)計用cy7c6801356pvc與tms32
8、0vc5402的hpi口相銜接,接口挑選gpif模式,硬件電路3所示,該計劃中,hcntl1:0與gpif的低位地址線pa3、pa2相連,以挑選需要拜訪的hpi的hpia、hpic,hpid寄存器,ctl0接至hr/w,可作為讀寫控制信號,hds1與輸出信號線ctl1相連,以作為hpi拜訪的選通信號,hbil與輸出信號線ctl2相連,已用于識別傳輸?shù)氖堑谝粋€字節(jié)還是其次個字節(jié),hrdy接輸入信號線rdy0。用于通過主機(jī)查詢hpi口的狀態(tài),hint、int2與int0銜接,可確保hpi自舉有效,hcs接gnd,可使hpi片選信號有效,hpiena接高電平常,hpi使能,has、hds2接高電平常
9、,信號線禁用。數(shù)據(jù)線pd7:0與hd7:0相連,可在控制時序作用下傳輸一切數(shù)據(jù)信號。hpi接口控制時序由ctl0、ctl1、ctl2引腳輸出,在自舉過程中,系統(tǒng)將關(guān)閉cy7c68013全部的中斷,若要通過中斷實(shí)現(xiàn)數(shù)據(jù)通信的握手,可以在自舉完畢打開cy7c68013的中斷。cy7c68013的詳細(xì)配置為:啟用gpif接口控制數(shù)據(jù)傳輸,gpif接口采納內(nèi)部時鐘(48mhz);端點(diǎn)2設(shè)置為批量傳輸輸出端點(diǎn),最大傳輸值是512字節(jié),雙緩沖;終端4、8禁用。端點(diǎn)6可作為批量傳輸輸入端點(diǎn)來向主機(jī)傳輸數(shù)據(jù),需要解釋的是端點(diǎn)6不是自舉所必須的。軟件設(shè)計dsp應(yīng)用程序設(shè)計實(shí)現(xiàn)tms320vc5402 hpi自舉
10、的前提是生成dsp應(yīng)用程序的分段hex代碼文件,在ccs中可用匯編語言,等編寫應(yīng)用程序源代碼,經(jīng)匯編、鏈接、編譯后,生成可執(zhí)行的公共目標(biāo)文件格式(coff)的文件,coff文件不能用于hpi自舉引導(dǎo),而需要利用ti公司的文件格式轉(zhuǎn)換工具h(yuǎn)ex00.exe,將coff文件轉(zhuǎn)換為hex格式文件。格式轉(zhuǎn)換的關(guān)鍵是正確編寫hex指令文件,下面研究如何編寫這種指令文件,例如將包含text段的源程序鏈接、編譯生成test.out文件,編寫指令文件時,可利用hex500.exe將test.out轉(zhuǎn)換為對應(yīng)text段的hex文件,指令文件test為.cmd如下:i /生成intel格式test.out /輸入
11、文件romspage 0:rom1:org0x2000,length0x2000,romwidth16,memwidth16,filestest1.hex /text段的起始地址為0x2000 /如有多端就可增強(qiáng)多個rom sectionstext:paddr0x2000 /如有多端就可增強(qiáng)多個部分在dos環(huán)境下,利用hex500.exe轉(zhuǎn)換指令文件test.cmd,就可得到test1.hex文件,通過cy7c68013把test1.hex文件寫入dsp內(nèi)部ram,再把程序的入口地址寫入0x7f處,便可完成自舉。usb固件程序設(shè)計公司提供有usb的輔助開發(fā)工具:ezusb control pa
12、nel,gpif designer。通過gpif designer可以生成gpif波形圖及相應(yīng)的c源代碼gpif.c。cypress公司同時提供了固件程序框架,因而可把gpif.c加入固件程序框架舉行開發(fā),從而提高開發(fā)效率。本計劃中,固件程序設(shè)計的重點(diǎn)是對gpif的編程,以便生成符合hpi接口的時序的波形描述代碼,以用于控制數(shù)據(jù)傳輸,hpi自舉需要的gpif控制波形描述符為:單字節(jié)寫(兩種),fifo寫。hpia、hpic的初始化需要單字節(jié)寫控制時序,程序代碼寫入hpid需要fifo寫控制時序,若要實(shí)現(xiàn)二者的數(shù)據(jù)通信,還需要單字節(jié)讀、fifo讀等控制波形描述符。hpic、hpia的初始值是在e
13、zusb control panel中通過創(chuàng)造商哀求工具欄由ep0發(fā)送的,固件程序中還要有相應(yīng)的哀求處理程序,以完成詳細(xì)的設(shè)置,如假定hpic哀求類型的id為0xb6.hpic0x0101(bob位為1),則哀求工具欄的詳細(xì)參數(shù)應(yīng)為:req0xb6,value0x0000,index0xbeef,length2,dir0,hex bytes0101,固件中應(yīng)加入的哀求處理程序?yàn)椋篶ase 0xb6:epobcl0; /ep0使能while(ep01statbmep0bsy); /等待epo數(shù)據(jù)接收完畢while(!hpi_rdy); /等待hpi處理完畢ioa0x00; /挑選hpic寄存器g
14、pifwfselect0x1e; /挑選寫低字節(jié)的單字節(jié)寫控制波形while(?。╣piftrig0x80);xgpifsgldatlxep0buf0; /寫低字節(jié)數(shù)據(jù)gpifwfselect0x4e; /挑選寫高字節(jié)的單字節(jié)寫控制波形while(!(gpiftrig0x80);xgpifsgldatalxep0buf;/寫高字節(jié)數(shù)據(jù)break;設(shè)置程序下載的首地址(hpia值)的哀求處理程序與設(shè)置hpic的程序基本相同,只需根據(jù)哀求類型的id,來轉(zhuǎn)變拜訪寄存器的地址即可,拜訪hpia時,hcntl1:010b,即ioa0x08。拜訪hpid下載程序數(shù)據(jù)時,可采納大端點(diǎn)ep2自動打包方式(au
15、toin1),即將數(shù)據(jù)發(fā)送到端點(diǎn)后,自動傳到fifo中,等待寫hpid條件具備,再啟動gpif,以將程序數(shù)據(jù)寫入hpid,拜訪hpdi可采納地址自動增強(qiáng)模式(hcntl1:001b),寫數(shù)據(jù)前,地址自動加1,這樣,數(shù)據(jù)便可以經(jīng)過dsp內(nèi)部dma自動寫入內(nèi)部ram,寫hpid的程序如下:if(gpiftrig0x80) /gpif接口是否處于空閑狀態(tài)if(?。╡p24fifoelgs0x02) /自動向量是否可以拜訪ep2fifo中數(shù)據(jù)ioa0x04; /挑選hpid寄存器,且拜訪時地址自動增強(qiáng)while(!hpi_rdy); /等待hpi處理完畢syncdelay;gpiftcb1ep2fif
16、obch; /寫入的字節(jié)數(shù)syncdelay;gpiftcb0ep2fifobcl;syncdelay;gpiftriggpif_ep2; /啟動寫數(shù)據(jù)syncdelay;while(?。╣piftrig0x80) /等待寫入完畢;syncdelay;這樣程序數(shù)據(jù)就可以分段通過端點(diǎn)2寫入dsp內(nèi)部ram,最后再把入口地址寫入0x7f,以完成hpi自舉,值得注重的是,采納此種方式拜訪hpid時,寫入hpia的初值為程序入口的一個地址,例如,寫test1.hex時,應(yīng)設(shè)定hpia0x1fff。為縮短開發(fā)周期,本設(shè)計采納開發(fā)包中通用驅(qū)動(ezusb.sys)和ezusb control panel舉行開發(fā)、調(diào)試、也可以對通用驅(qū)動、控制面板的源程序在vc環(huán)境(需要ddk的支持)下舉行二次開發(fā),以便編譯
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中央2025年全國市長研修學(xué)院(住房和城鄉(xiāng)建設(shè)部干部學(xué)院)招聘6人筆試歷年參考題庫附帶答案詳解
- 2025年廣西柳州市生態(tài)環(huán)境局下屬事業(yè)單位招聘中高級(急需緊缺)人才擬聘用人選歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年廣西來賓市文化廣電和旅游局招聘1人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年廣西崇左市創(chuàng)建文明城市指揮部辦公室招聘5人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年廣西南寧青秀區(qū)信訪局招聘1人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年度滅四害服務(wù)合同(含病蟲害防治項(xiàng)目施工合同管理)2篇
- 2025年廣西南寧經(jīng)濟(jì)技術(shù)開發(fā)區(qū)吳圩鎮(zhèn)招聘8人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年廣西南寧師范大學(xué)高層次人才招考聘用高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年廣西南寧市青秀區(qū)人民政府辦公室招聘2人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年廣西南寧市良慶區(qū)人力資源和社會保障局招聘1人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年日語培訓(xùn)機(jī)構(gòu)市場供需現(xiàn)狀及投資戰(zhàn)略研究報告
- 2024年公安機(jī)關(guān)理論考試題庫附參考答案(基礎(chǔ)題)
- 歷史-廣東省大灣區(qū)2025屆高三第一次模擬試卷和答案
- 2024年安全生產(chǎn)法律、法規(guī)、標(biāo)準(zhǔn)及其他要求清單
- 2023年高考文言文閱讀設(shè)題特點(diǎn)及備考策略
- 抗心律失常藥物臨床應(yīng)用中國專家共識
- 考級代理合同范文大全
- 2024解析:第三章物態(tài)變化-講核心(原卷版)
- DB32T 1590-2010 鋼管塑料大棚(單體)通 用技術(shù)要求
- 安全行車知識培訓(xùn)
- 2024年安徽省高校分類對口招生考試數(shù)學(xué)試卷真題
評論
0/150
提交評論