久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久


曙海教育集團(tuán)論壇DSP專區(qū)DSP6000系統(tǒng)開發(fā) → HELLODSP TIC6000


  共有8270人關(guān)注過本帖樹形打印

主題:HELLODSP TIC6000

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發(fā)短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
HELLODSP TIC6000  發(fā)帖心情 Post By:2010-11-22 14:24:37

  最近在hellodsp(http://www.hellodsp.com)申請了個(gè)版主,本來是要申請TMS320C6000版塊的,不過這個(gè)版塊已經(jīng)有兩位優(yōu)秀的版主,我是做圖像處理的,于是就鎖定“語音視頻處理”版塊了,不過6000版塊我還是會經(jīng)常去,看到很多初學(xué)者在問一些入門的問題,有些提問題的同志對問題描述地也不夠清楚,可能更多的是想提問題可不知道怎么提吧,我剛學(xué)DSP的時(shí)候也一樣,碰到問題了不知道怎么把問題表述清楚,真有啞巴吃黃連的痛楚。最近有空回憶下自己學(xué)DSP的過程,算是個(gè)人經(jīng)歷吧,希望對大家有用。

我的經(jīng)歷
      錯(cuò)過第一次學(xué)習(xí)機(jī)會
      我2000年進(jìn)入大學(xué),專業(yè)通信工程。入學(xué)的時(shí)候成績不錯(cuò),還拿過一等獎學(xué)金,自以為自己很聰明。當(dāng)時(shí)我們學(xué)院有個(gè)科技協(xié)會,簡稱科協(xié),那時(shí)的科協(xié)會長是個(gè)大四的學(xué)兄,給人印象深刻,感覺他很厲害,就入了科協(xié),第一堂課是用555做個(gè)流水燈,科協(xié)已經(jīng)把印制板做好,我只用把器件焊上去就行了,燈是亮了很好玩,于是自己琢磨電路的原理,那時(shí)是個(gè)剛?cè)雽W(xué)的小子,什么也不懂,看那東西根本搞不懂,感覺太難了,后來慢慢就不去參加活動,再后來放棄了。
      現(xiàn)在想想那個(gè)時(shí)候太輕言放棄了,包括后來大學(xué)里自學(xué)51單片機(jī)、學(xué)FPGA都是只淺嘗則止,而沒有持之以恒,以至于后來錯(cuò)過了很多很多機(jī)會。所以在這里要告訴大家,也告訴我自己,學(xué)技術(shù)一定要堅(jiān)持,不管碰到什么困難,絕不能輕言放棄,堅(jiān)持就會有進(jìn)步,就像長跑,總有幾個(gè)困難點(diǎn),堅(jiān)持過去就覺得不是那么困難,水平才會有提升。
       第一次使用C51
       說起這個(gè),不得不感謝下我的一個(gè)大學(xué)室友,是他帶我入門C51,第一次用protel畫印制板,第一次申請免費(fèi)樣片、第一次編寫調(diào)試程序,第一次使用示波器等等,這些都得歸功于他的指導(dǎo)。
       時(shí)間過得很快,一轉(zhuǎn)眼就大四了,想想自己大學(xué)游戲玩了三年,學(xué)業(yè)荒廢,畢業(yè)設(shè)計(jì)這個(gè)機(jī)會一定要把握住,不然自己沒什么資本找工作啊,于是在選題的時(shí)候選了個(gè)單片機(jī)的題目“基于DDS的信號發(fā)生器設(shè)計(jì)”。雖然之前接觸過51、protel,不過那都是看看書而已,實(shí)際做起來什么都不會,我確定的方案是用C51去控制AD9853輸出相應(yīng)頻率的波形,當(dāng)然這里離不開鍵盤和LCD顯示,AD9853是從AD公司申請的樣片,那時(shí)我第一次知道還有免費(fèi)午餐,大公司真的不錯(cuò),記得當(dāng)時(shí)TIDSP都可以申請,我就申請了一片6202,不過后來沒那么容易申請了,這次我堅(jiān)持了下來,一步一步地做,最終圓滿完成了畢業(yè)設(shè)計(jì)。
       我是幸運(yùn)的,因?yàn)樯磉吘陀袀€(gè)很好的老師,初學(xué)者大都沒有這樣的條件,即便如此,初學(xué)者還是應(yīng)充分挖掘身邊的資源,將它們都利用起來,這樣你才能更接近成功。
       接觸DSP
       2004畢業(yè)后我到一個(gè)研究所工作,我所在的部門是做視頻跟蹤器的,主要用DSP+FPGA,對我來說入魚得水,因?yàn)槲覍︖@些東西很有興趣。當(dāng)時(shí)我的同事們用的還是TI C50DSP,這個(gè)很多人可能聽都沒聽過,TI的DSP按時(shí)間大概經(jīng)歷了這幾個(gè)系列,C25-C50-V33-2000-5000-6000,C50的功能很有限,只有匯編開發(fā)環(huán)境,因?yàn)楣δ芎唵危詫W(xué)起來也相對容易,加上我有51的基礎(chǔ),很快就上手了,一年半后部門器件換代直接換成了64xx,由于受C50的影響,我們開發(fā)還是習(xí)慣用匯編,2006年5月前后,我率先用C開發(fā)產(chǎn)品,取得了不錯(cuò)的效果。
       這當(dāng)中我接觸到了很多,由于我個(gè)人性格的原因,學(xué)什么都想學(xué)精,走了很多彎路。比如PCB剛開始用protel,后來發(fā)現(xiàn)它畫復(fù)雜板子的時(shí)候不方便,于是學(xué)用allegro,后來又學(xué)SI;DSP也是,6000會用了想學(xué)2000、5000,后來發(fā)現(xiàn)自己很幼稚,其實(shí)一到二門精通了足以,學(xué)什么要注意學(xué)習(xí)理念,工具平臺這些始終是外家功夫,要勤修內(nèi)功。

總結(jié)及建議
      1)選好自己的工具和平臺學(xué)DSP當(dāng)然首先要選擇一款DSP(這里主要說TI的DSP,AD公司的不熟這里就不說了)。如果是個(gè)人學(xué)習(xí)的話主要看個(gè)人需要和應(yīng)用場合,比如做圖像處理那當(dāng)然首推TI6000了,初學(xué)者不必將DSP分出三六九等,各個(gè)系列沒有明顯的優(yōu)劣,但有明確的應(yīng)用領(lǐng)域,2000偏接口控制,5000偏語音,6000適合做大數(shù)據(jù)量信號處理,比如圖像、雷達(dá)等等。初學(xué)者最好有個(gè)開發(fā)板,不然無異于紙上談兵,2000、5000的開發(fā)板相對便宜,6000的就比較昂貴。
       就上手容易度來說,我個(gè)人覺得6000更易上手,6000的結(jié)構(gòu)較2000、5000明了清晰,硬件上的條條框框比較少,你不需要看很多的硬件結(jié)構(gòu)資料就能著手編程,這個(gè)大概是技術(shù)的進(jìn)步吧。不過還是這句話,應(yīng)用場合決定你的選擇。
       2)自己先動手
       初學(xué)者如果會C語言語法,在看過一些資料后就可以著手寫自己的第一個(gè)程序,如果寫不出來,看看TI最初級的例程,完成自己第一個(gè)程序。我給我們單位新同事做6000培訓(xùn)的時(shí)候,給他們的第一個(gè)題目就是寫一個(gè)程序讓LED燈不停閃爍,這個(gè)燈可能接在GPIO上或者通過EMIF譯碼與FPGA配合控制(后者可能更有意義),更進(jìn)一步的程序是控制閃爍的頻率。我比較喜歡讓他們用GPIO和EMIF,它們可能是6000里最簡單和用的最多的外設(shè)了,它們是初學(xué)者最早要攻克的堡壘。
       初學(xué)者往往對硬件結(jié)構(gòu)和軟件的配合沒有概念,對片內(nèi)存儲空間、片外存儲空間、片上外設(shè)這些概念沒有實(shí)在的理解,這些概念需要自己的反復(fù)的思考、反復(fù)的實(shí)驗(yàn)、反復(fù)的體會才能最終搞清楚,這些弄明白了你也就入門了。
       初學(xué)者比較忌諱看太多和太復(fù)雜的例程,看得太多你的思緒會比較亂,看得太復(fù)雜你會心浮氣躁,復(fù)雜的例程一般它都有相對復(fù)雜的編程結(jié)構(gòu),這個(gè)初學(xué)者是很難體會到的,所以剛開始不要看,等你寫了20到30個(gè)程序的時(shí)候再試著看相對復(fù)雜的例程。
       3)多動手
       這個(gè)不用多說了,光看不練假把式。
       4)片上外設(shè)
      這里拿DM642來說,我把常用的外設(shè)由簡單到復(fù)雜排個(gè)序:GPIO-TIMER-EDMA-EMIF-I2C-MCASP-VideoPort-EMAC、MDIO,MCASP我沒用過,不過看過資料感覺不復(fù)雜,我給初學(xué)者的建議是先把前面4個(gè)學(xué)清楚,可以先學(xué)GPIO這個(gè)真的是簡單,剛開始不要急著用CSL,用匯編或是C寫個(gè)程序讓某個(gè)GPIO腳上輸出波形,這樣有助于理解片上外設(shè)以及有關(guān)的概念。前面4個(gè)明白了后面的具體用到再學(xué),這個(gè)時(shí)候你可以看TI相應(yīng)的例程,拿來用就可以。
       5)匯編、C和線性匯編
       現(xiàn)在開發(fā)6000的標(biāo)準(zhǔn)流程是先用C寫,C的好處很多這里不說了,有太多的文章在論述,不過對于準(zhǔn)備做優(yōu)化的同志們來說,匯編不會也不行,用匯編相對于C更助于你理解6000的架構(gòu),很多初學(xué)者對C語言中用指針對某個(gè)空間操作不理解,用匯編寫的話相對要好理解的多。
       大家不必對匯編心存畏懼,其實(shí)它也很簡單,只不過它比較晦澀,用它開發(fā)整個(gè)系統(tǒng)的時(shí)間上的花費(fèi)太多,不過關(guān)鍵算法的優(yōu)化有時(shí)還是離不開它,TI目前還提供線性匯編,它是匯編和C的折中,兼?zhèn)鋮R編的效率和C的易開發(fā)性。
       匯編和C都只是工具,關(guān)鍵還是你對架構(gòu)的理解和編程理念,所以選擇哪個(gè)都有道理,通過工具去探索架構(gòu)而已。我個(gè)人覺得初學(xué)者主要應(yīng)學(xué)習(xí)C,畢竟它是主流,可以用匯編寫4-5個(gè)小程序,熟悉它的語法就行,日后用它做優(yōu)化也不會什么都不知道,而且也助于對硬件架構(gòu)的理解。

結(jié)束
       就寫這么多了,一家之言,里面有很多廢話,希望對初學(xué)者有點(diǎn)幫助,拋磚引玉,也希望高手們多多寫出自已的經(jīng)驗(yàn)。

優(yōu)化一起放過來了~~~
關(guān)于優(yōu)化我的經(jīng)驗(yàn)是這樣的:
一、首先考慮從系統(tǒng)結(jié)構(gòu)上優(yōu)化,比如盡量減少待處理數(shù)據(jù)的無謂搬移,考慮你DSP片內(nèi)存儲量和每次處理數(shù)據(jù)量對系統(tǒng)結(jié)構(gòu)優(yōu)化,這部分的優(yōu)化應(yīng)該最早做;
二、其次從算法層面上著手,看采用的算法有沒有更好更簡單的計(jì)算方法,算法是否有某種對稱性,可否采用更合適的數(shù)據(jù)結(jié)構(gòu)等等,這方面的優(yōu)化比程序上的優(yōu)化更明顯;
三、如果算法層面暫時(shí)無更好的優(yōu)化辦法,看看軟件結(jié)構(gòu)能否優(yōu)化。
比如:
         1)多層的循環(huán)結(jié)構(gòu)能否減層。我經(jīng)常看到這樣的程序:
             for(i = 0; i++; i< A)
                 for(j = 0; j++ j< B)
                 {
                       E[j]  = C[j] - D[j];
                 }
             這個(gè)可以優(yōu)化成:
             for(i = 0; i++; i<A*B)
             {
                     E = C - D;
             }
            2) 關(guān)鍵循環(huán)結(jié)構(gòu)中的條件、跳轉(zhuǎn)指令應(yīng)盡量避免,哪怕會增加一些循環(huán)次數(shù),循環(huán)中沒有條件指令優(yōu)化器更容易優(yōu)化;
            3)關(guān)鍵循環(huán)不要調(diào)用子函數(shù)
            其它還有一些,具體可以看看手冊,手冊上講的很清楚
四、結(jié)合DSP系統(tǒng)的硬件結(jié)構(gòu)優(yōu)化
            1)看你處理的數(shù)據(jù)是放在片內(nèi)還是片外,如果放在片外的話這個(gè)建議將數(shù)據(jù)分塊分批倒入片內(nèi)處理,類似于流水結(jié)構(gòu);
            2)針對外部數(shù)據(jù)可對L2 cache優(yōu)化
五、結(jié)合DSP優(yōu)化器、指令系統(tǒng)等進(jìn)行優(yōu)化
           這部分可以詳細(xì)的看TI的手冊,大概有這幾個(gè)方法:
            1)優(yōu)化選項(xiàng),-o3 -pm 取消-g 等等這些選項(xiàng),如果你的軟件結(jié)構(gòu)很好,那么它們的優(yōu)化效果很明顯;
            2)加一些優(yōu)化指示符指導(dǎo)優(yōu)化,這部分看手冊,包括存儲地址無關(guān)性,SIMD(單指令多數(shù)據(jù)處理)等等;
            3)用一些專用指令,比如6000提供飽和加、溢出減指令,可以不必用條件判斷;
            4)如果效果還是不好,用線性匯編改寫你的程序,將你的優(yōu)化思想用線性匯編表述出來,一般到地步就可以了;
            5)如果線性匯編優(yōu)化未能盡顯你的優(yōu)化思想,那就匯編吧,優(yōu)化器不會再幫助你優(yōu)化,完全是你自己控制程序了,自己做軟件流水吧;
           這部分需要有比較豐富的優(yōu)化經(jīng)驗(yàn)和扎實(shí)的優(yōu)化功底,多多積累,多看資料。
最后要重點(diǎn)說下:
           優(yōu)化是沒有止境的,在對程序?qū)?xì)致優(yōu)化前要對程序每個(gè)部分測試下時(shí)間,對非常耗時(shí)的部分做優(yōu)化,一但滿足你的要求就可以,不要為了優(yōu)化而優(yōu)化,我們應(yīng)該有更重要的東西要學(xué),不要陷在優(yōu)化上而不能自拔!!

 

本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/ww303875615/archive/2009/12/10/4977742.aspx


支持(0中立(0反對(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

HELLODSP TIC6000








簽名
主站蜘蛛池模板: 日韩在线视频免费不卡一区 | 性盈盈影院在线观看 | 中国内地毛片免费高清 | 日产一区2区三区有限公司 日产一区两区三区 | 97在线视频免费公开观看 | 手机国产日韩高清免费看片 | 亚洲国产系列久久精品99人人 | 怡红院美国十次成人影院 | 精品国产一区二区三区在线 | 免费看黄色的网址 | 日本在线看小视频网址 | 高清精品女厕在线观看 | 免费观看欧美一级毛片 | 国产成人在线综合 | 中国美女乱淫免费看视频 | 欧美成人午夜免费完成 | 欧美巨大精品欧美一区二区 | 毛片1级 | 欧美在线一二三区 | 亚洲视频欧美视频 | 日韩中文字幕视频 | 韩国good三级在线观看久 | 亚洲精品手机在线 | 国产在线观看网址在线视频 | 国产精品手机在线亚洲 | 亚洲男同视频网站 | 亚洲精品午夜国产va久久成人 | 韩国a级毛片 | 波多野结衣视频免费观看 | 丰满老熟女毛片 | 老司机午夜性生免费福利 | 国产欧美视频在线观看 | 国产一国产一级毛片视频在线 | 国产三级全黄 | 久操影视| 一级视频网站 | 亚洲欧美久久一区二区 | 夜色毛片永久免费 | 深夜一级毛片 | 欧美精品一区二区三区四区 | 综合精品 |