色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C6000 DSP代碼進行板級在線編譯及下載的方法介紹

星星科技指導員 ? 來源:TI ? 作者:TI ? 2023-03-30 10:27 ? 次閱讀

傳統的C6000 DSP軟件是通過CCS在WINDOWS PC上進行編譯調試,測試完畢把編譯好的可執行文件燒錄到FLASH中。通過設置DSP啟動模式從FLASH啟動,上電即可實現DSP正常運轉。當前ARM處理器性能日益增強,在很多應用中系統中會有ARM+DSP的方案。本文提出一種新思路,通過ARM來在線編譯DSP的代碼,在線下載DSP的程序,并啟動DSP運行。這種方法可以帶來以下好處:

1、可以動態更新DSP的代碼。通過集成不同的DSP庫文件可以實現DSP應用和支持庫分離,在DSP運行時才進行庫和應用連接,極大的提高DSP軟件的靈活性。

2、DSP可以不需要FLASH,有利于節省BOM成本。

本文以AM5728 EVM+C6678 EVM為例實現了DSP程序板級在線編譯和下載。C6678是目前TI主推的多核高性能DSP,此芯片有8個C66 DSP CORE,支持多種啟動模式SRIO/Ethernet/PCIe/I2C/SPI/Hyperlink。本文使用AM5728 A15 ARM來進行DSP代碼的編譯連接,通過網口下載到C6678板上,并啟動6678的8個DSP CORE運行。

一、安裝AM5728 EVM運行環境

本步會在AM5728 EVM上安裝ARM LINUX系統和C6000 DSP的編譯器。步驟如下:

1、使用最新的AM5728 LINUX SDK,本文測試的版本是ti-processor-sdk-linux-am57xx-evm-05.02.00.10。先制作一張啟動SD卡,具體操作方法可以參考SDK USER GUIDE。

2、AM5728 EVM可以順利啟動后,下載DSP的編譯器到EVM上,這是在ARM下運行的DSP編譯器。

poYBAGQk85uATl3dAADMBKvIfhk191.jpg

3、把下載的文件放到AM5728 EVM上面運行安裝。安裝完畢可以在文件系統/user/bin/下面找到cg6x、hex6x等編譯工具。注意:編譯器的頭文件和庫文件默認安裝路徑在/usr/share/ti/cgt-c6x/include和/usr/share/ti/cgt-c6x/lib

4、 至此,AM5728 EVM的環境準備好了,可以編寫makefile通過command line的方式來編譯C66 DSP的代碼,具體實現方法見步驟三。

二、準備C6678 EVM

本步會把C6678 DSP配置成ETHERNET BOOT的模式:

1、C6678 EVM DIP撥碼開關配置如下:

SW3(pin1, pin2, pin3, pin4): off, on, off, on

SW4(pin1, pin2, pin3, pin4): on, on, on, off

SW5(pin1, pin2, pin3, pin4): on, on, off, off

SW6(pin1, pin2, pin3, pin4): off, on, on, on

2、上述步驟1即可實現DSP ETHERNET BOOT,我們也可以用如下的方法來驗證是否成功。EVM和PC直連,上電,通過wireshark工具應該可以抓到bootp數據包,如下:

pYYBAGQk85yAWIPsAACxI00pzIg387.jpg

大概3秒一次。(如果收不到這個數據包,可能需要更新EVM的FPGA程序,請聯系TI技術支持索取FPGA更新軟件。)

至此6678已經處在ETHERNET BOOT的啟動方式下。

三、在AM5728 EVM上編譯C6678程序

1、在如下地址下載本文用到的DEMO:https://e2echina.ti.com/question_answer/dsp_arm/c6000_multicore/f/53/t/170590可以通過TFTP工具把這個DEMO放到AM5728文件系統中。

2、在AM5728 EVM上解壓縮后可以看到emac_boot_mc.zip,這是本文用到的測試代碼,可以把它解壓縮。由于軟件編譯需要CSL庫的支持,可以把最新的CSL庫復制到AM5728的文件系統。

CSL庫下載地址:http://software-dl.ti.com/processor-sdk-rtos/esd/C667x/latest/index_FDS.htmlPC上安裝后把pdk_C6678_xxxx這個目錄復制到AM5728文件系統。本文把pdk_C6678_1_1_2_6目錄復制到文件系統。

3、在AM5728 EVM上通過控制臺使用如下命令進行編譯:

cl6x -mv6600 --include_path="/home/root/boot/emac_boot_mc/pdk_C6678_1_1_2_6/packages/" --include_path="/home/root/boot/emac_boot_mc/pdk_C6678_1_1_2_6/packages/ti/csl" --include_path="/usr/share/ti/cgt-c6x/include" --abi=eabi --preproc_with_compile "./core0_start_others.c"

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core0.out" "./core0_start_others.obj" "./core0_start_other.cmd" -llibc.a

cl6x -mv6600 --include_path="/home/root/boot/emac_boot_mc/pdk_C6678_1_1_2_6/packages/" --include_path="/home/root/boot/emac_boot_mc/pdk_C6678_1_1_2_6/packages/ti/csl" --include_path="/usr/share/ti/cgt-c6x/include" --abi=eabi --preproc_with_compile "./simple.asm"

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core1.out" "./simple.obj" "./core1.cmd" -llibc.a

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core2.out" "./simple.obj" "./core2.cmd" -llibc.a

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core3.out" "./simple.obj" "./core3.cmd" -llibc.a

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core4.out" "./simple.obj" "./core4.cmd" -llibc.a

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core5.out" "./simple.obj" "./core5.cmd" -llibc.a

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core6.out" "./simple.obj" "./core6.cmd" -llibc.a

cl6x -mv6600 -z --abi=eabi -i"/usr/share/ti/cgt-c6x/include" -i"/usr/share/ti/cgt-c6x/lib" --reread_libs --xml_link_info="emac_boot_mc_linkInfo.xml" --rom_model -o "core7.out" "./simple.obj" "./core7.cmd" -llibc.a

4、把8個.out文件復制到boot目錄。

四、使用AM5728 EVM制作并下載6678的程序

本 步驟可以把8個.out文件通過工具合成一個用于網絡發送的文件,并發送到6678EVM上運行。

1、AM5728 EVM控制臺執行EMACboot_8core.sh腳本,這個腳本可以把8個.out文件合成一個用于網絡發送的multi_core.eth文件。腳本如下:

hex6x core0.rmd

hex6x core1.rmd

hex6x core2.rmd

hex6x core3.rmd

hex6x core4.rmd

hex6x core5.rmd

hex6x core6.rmd

hex6x core7.rmd

./mergebtbl core0.btbl core1.btbl core2.btbl core3.btbl core4.btbl core5.btbl core6.btbl core7.btbl multi_core.btbl

./bootpacket multi_core.btbl multi_core.eth FF-FF-FF-FF-FF-FF FF-FF-FF-FF-FF-FF

2、注意,mergebtbl和bootpacket源碼都在boot目錄,可以通過編譯器交叉編譯后放到AM5728 EVM上運行。

../ti-processor-sdk-linux-am57xx-evm-05.02.00.10/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-linux-gnueabihf-gcc -o mergebtbl mergebtbl.c

../ti-processor-sdk-linux-am57xx-evm-05.02.00.10/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-linux-gnueabihf-gcc -o bootpacket bootpacket.c

3、通過交叉編譯器編譯工具pcsendpkt,這是網絡數據包發送工具。

../ti-processor-sdk-linux-am57xx-evm-05.02.00.10/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-linux-gnueabihf-gcc -o pcsendpkt pcsendpkt.c

4、6678EVM上電,并通過網口直連AM5728 EVM。在AM5728 EVM控制臺輸入如下命令:

ifconfig eth1 192.168.1.10

arp -s 192.168.1.12 ff:ff:ff:ff:ff:ff

這兩個命令分別配置AM5728和6678的IP地址。

./pcsendpkt multi_core.eth 192.168.1.12
如下圖,表示發送完成。

pYYBAGQk85yAdwQcAAA7bulk2B4107.jpg

五、通過CCS JTAG查看6678運行結果。

通過仿真器連接6678 CORE1~CORE7任意一個核,可以看到A1寄存器是0x11223344表示啟動成功。

poYBAGQk852AQPUcAADKMzf2VcA478.jpg

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19280

    瀏覽量

    229773
  • dsp
    dsp
    +關注

    關注

    553

    文章

    7998

    瀏覽量

    348860
  • ARM
    ARM
    +關注

    關注

    134

    文章

    9091

    瀏覽量

    367492
收藏 人收藏

    評論

    相關推薦

    DSP6000系統介紹

    1.1實時系統介紹1.2 DSP的歷史和特點1.3 DSP的選擇 第2章 C6000 DSP的開發環境CCS 2.1
    發表于 01-10 14:06

    c6000 c代碼的優化

    關于c6000系列的C代碼優化總結,在hellodsp上看到的好帖,拿來共享一下~~~
    發表于 08-03 15:24

    TMS320C6000 DSP培訓 TI技術服務

    的一些基本實驗如:FIR濾波器實驗、無限脈動響應濾波器、以及數理分析方法快速傅立葉變換(FFT)在DSP中的應用。 本課程是TMS320C6000DSP的基礎課程,重點介紹
    發表于 03-19 10:20

    TMS320C6000 DSP培訓 TI DSP以及MSP430技術服務

    的一些基本實驗如:FIR濾波器實驗、無限脈動響應濾波器、以及數理分析方法快速傅立葉變換(FFT)在DSP中的應用。 本課程是TMS320C6000DSP的基礎課程,重點介紹
    發表于 04-09 15:37

    使用c_intrinsics_host_port在PC上模擬C6000DSP浮點指令

    ,因此第(3)步和第(2)步基本是同一步驟了。而采用Host Instrinsics則可以將第一步也簡化,直接調用對應DSPc函數,在PC上則生成PC的代碼,在DSP上則生成
    發表于 12-26 15:07

    C6000 DSP代碼進行板在線編譯下載方法

    傳統的C6000 DSP軟件是通過CCS在WINDOWS PC上進行編譯調試,測試完畢把編譯好的可執行文件燒錄到FLASH中。通過設置
    發表于 11-10 08:15

    TMS320C6000系列DSPC代碼優化方法

    對于TMS320C6000(簡稱C6000)硬件平臺選用C語言編程時,可利用C6000 優化方法優化C
    發表于 04-16 09:31 ?24次下載

    C6000系列DSP體系結構介紹

    C6000系列DSP體系結構介紹,下來看看
    發表于 06-06 16:03 ?20次下載

    面向TI公司C6000系列DSP的電源系統設計

    面向TI公司C6000系列DSP的電源系統設計
    發表于 10-23 14:07 ?6次下載
    面向TI公司<b class='flag-5'>C6000</b>系列<b class='flag-5'>DSP</b>的電源系統設計

    基于C6000系列DSP的MPEG

    更高。由于MPEG-4編碼算法復雜,需要存儲的數據量大,無論是存儲空間分配、數據傳輸還是運算速度對DSP來說都是挑戰。本文介紹了基于C6000系列DSP的MPEG-4視頻編碼卡的軟硬件
    發表于 11-28 12:42 ?430次閱讀

    C6000 DSP代碼進行板在線編譯下載方法介紹

    C6000 DSP代碼進行板在線編譯
    發表于 11-01 08:25 ?0次下載
    <b class='flag-5'>C6000</b> <b class='flag-5'>DSP</b><b class='flag-5'>代碼</b><b class='flag-5'>進行板</b><b class='flag-5'>級</b><b class='flag-5'>在線</b><b class='flag-5'>編譯</b>及<b class='flag-5'>下載</b>的<b class='flag-5'>方法</b><b class='flag-5'>介紹</b>

    OMAPL138B C6000 DSP+ARM處理器數據表

    電子發燒友網站提供《OMAPL138B C6000 DSP+ARM處理器數據表.pdf》資料免費下載
    發表于 08-07 09:15 ?0次下載
    OMAPL138B <b class='flag-5'>C6000</b> <b class='flag-5'>DSP</b>+ARM處理器數據表

    OMAP-L132 C6000? DSP+ARM處理器數據表

    電子發燒友網站提供《OMAP-L132 C6000? DSP+ARM處理器數據表.pdf》資料免費下載
    發表于 08-07 09:29 ?0次下載
    OMAP-L132 <b class='flag-5'>C6000</b>? <b class='flag-5'>DSP</b>+ARM處理器數據表

    OMAP-L138 C6000 DSP+ARM處理器數據表

    電子發燒友網站提供《OMAP-L138 C6000 DSP+ARM處理器數據表.pdf》資料免費下載
    發表于 08-07 09:36 ?0次下載
    OMAP-L138 <b class='flag-5'>C6000</b> <b class='flag-5'>DSP</b>+ARM處理器數據表

    CRS編譯碼原理和在TI C6000 DSP上的優化實現

    電子發燒友網站提供《CRS編譯碼原理和在TI C6000 DSP上的優化實現.pdf》資料免費下載
    發表于 09-10 14:25 ?0次下載
    CRS<b class='flag-5'>編譯</b>碼原理和在TI <b class='flag-5'>C6000</b> <b class='flag-5'>DSP</b>上的優化實現
    主站蜘蛛池模板: 毛片在线播放网址| 国产色综合色产在线视频| 色多多旧版污污破解版| 久久re这里视频精品8| 村上里沙快播| 中文字幕欧美日韩VA免费视频| 色百度网址大全| 麻豆免费高清完整版| 国产色情短视频在线网站| www.伊人网| 中文在线观看| 亚洲日韩中文字幕区| 色欲狠狠躁天天躁无码中文字幕 | 破女在线观看视频| 黄色天堂网站| 国产精品无码视频一区二区| 手机在线观看毛片| 欧美人成在线观看ccc36| 九九热国产视频| 国产亚洲精品影视在线| 伊人久久天堂| 性欧美video另类hd高清| 精品久久综合1区2区3区激情| 大学生一级毛片免费看| 99精品电影| 2021国产精品| 中国人泡妞xxxxxxxx19| 亚洲色欲国产AV精品综合| 忘忧草在线社区WWW日本直播| 久草国产在线播放| 国产午夜精品一区理论片飘花| 调教椅上的调教SM总裁被调教| 99久久久免费精品国产| 最新果冻传媒在线观看免费版| 一个人看的HD免费高清视频| 亚洲人成电影网站色2017| 亚洲地址一地址二地址三| 无码乱人伦一区二区亚洲| 午夜射精日本三级| 亚洲 天堂 欧美 日韩 国产| 乌克兰内射私拍|