欧美自拍小视频_国产片在线免费观看_中文字幕啪啪_成人av高清在线_欧美一区二区视频免费观看_亚洲国产激情


曙海教育集團論壇DSP專區DSP6000系統開發 → 基于PCI總線的DSP系統可執行文件在線實時下載技術


  共有8297人關注過本帖樹形打印

主題:基于PCI總線的DSP系統可執行文件在線實時下載技術

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


加好友 發短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
基于PCI總線的DSP系統可執行文件在線實時下載技術  發帖心情 Post By:2010-11-22 14:32:53

引 言

從主機向DSP下載可執行文件的常用方式有:(1)利用仿真器,通過USB總線和JTAG端口,把可執行文件從主機下載進DSP。這種方式適用于軟件研制階段。(2)利用燒寫器,把可執行文件燒寫進硬件電路板上的Flash芯片中。DSP上電復位之后,將固化在Flash芯片中的代碼讀入DSP的片上RAM或片外RAM映射成的存儲區域里。這種方式適用于軟件調試結束、需要將其固化在電路板上的階段。固化之后,整個系統可以脫離主機運行。

在軟件無線電系統的實際應用過程中,還需要這樣一種下載方式:從主機直接向DSP下載可執行文件并且啟動程序運行。這些可執行文件是已經經過調試、滿足要求的功能模塊。主機將它們分別實時下載并啟動運行,能夠迅速地切換整個軟件無線電系統的業務模式,使系統迅速地滿足不同場合的要求,從而把系統面向廣大用戶的通用性與面向特定用戶的專用性很好地結合起來。

1 以DSP為核心的軟件無線電硬件平臺簡介

圖1是本文實例的硬件平臺框圖。A/D的工作方式由FPGA控制,外界模擬信號通過A/D采樣,進入雙口RAM,DSP從雙口RAM里讀取采樣數據。DSP芯片采用TI公司推出的TMS320C6000系列中的C6701,它通過EMIF與SDRAM和SBRAM芯片相連。PCI芯片AMCCS5933在主機和DSP之間起橋梁作用,它使得主機可以通過PCI總線訪問DSP的所有存儲空間,DSP也可以通過PCI總線向主機發送信息。

圖片點擊可在新窗口打開查看

2 從主機通過PCI總線向DSP下載可執行文件

2.1 實現流程

圖2顯示了下載可執行文件的整個流程。

圖片點擊可在新窗口打開查看

2.2 文件格式轉換

開發運行在TMS32C6000系列DSP上的程序時,通常都使用TI公司推出的集成開發環境CCS。編譯通過之后,會生成一個可執行文件*.out。下載到DSP中的就是該*.out文件里的代碼。

以文件loadProgTest.out為例,闡述文件格式的轉換過程:

首先把loadProgTest.out文件轉換成十六進制格式的文件,編寫一個名為loadProgTest.cmd的文件,內容如下:

各條語句的含義如下:

圖片點擊可在新窗口打開查看

第1行是out文件名;第2行表示輸出ASCII的十六進制格式;第3行指明轉換后的十六進制文件為image模式;第4行表示生成名為loadProgTest.mxp的文件,可以從該文件中看到各段所占的存儲單元;第5行和第6行分別指明memory和ROM的寬度;第7行指明little-endian方式(如果需要使用big-endian方式,把L改為M即可)。

可執行文件中的代碼從組織形式上分成若干段,從內容上則分為程序代碼和數據代碼。第10行表示在DSP的存儲區域中,為程序代碼開辟的空間是從地址0x00000000到0x0000ffff;程序代碼轉換成十六進制格式之后,將被寫入loadProgTest.hex文件。第11行表示在DSP的存儲區域中,為數據代碼開辟的空間是從地址0x80000000到0x8000ffff;數據代碼轉換成十六進制格式之后,將被寫入loadProgTest.a10文件。

編寫好loadProgTest.cmd文件之后,從CCS安裝目錄下拷貝出一個名為hex6x.exe的應用程序,把它和loadProgTest.out文件以及loadProgTest.cmd文件放在同一個文件夾里。執行命令行hex6x loadProgTest.cmd。

執行完后,將生成3個文件:loadProgTest.mxp、loadProgTest.hex和loadProgTest.a10。

其次,把loadProgTest.hex和loadProgTest.a10 2個文件分別轉換為頭文件

編寫一個C語言應用程序,利用C語言中的文件庫函數,新建一個名叫code.h的頭文件,然后打開loadProgTest.hex,按從前到后的順序逐一讀取其中的字符。每讀取8個字符,就在這8個字符中最先讀取的字符前面加上“0x”,然后把它們寫入頭文件code.h。這樣,就把loadProgTest.hex中的程序代碼組織成了一個數組,存放進code.h頭文件。用同樣的方法,把loadProgTest.a10中的數據代碼組織成一個數組,存放進data.h頭文件里。

經過了上述轉換之后,就可以把頭文件code.h和data.h中的數組,即可執行文件loadProgTest.out中的代碼下載進DSP中了。

2.3 下載代碼

下載代碼之前要做的準備工作是把DSP的BOOT方式設置為HPI方式(HPI指DSP的主機并行端口),并給DSP一個復位脈沖,以鎖存HPI的BOOT方式。這時,DSP的內核將處于reset狀態。

設置并鎖存DSP的BOOT方式之后,就可以向它下載代碼了。下載代碼的過程全部在PCI驅動程序里完成,主機可以通過HPI訪問DSP的所有存儲空間。本實例中,下載程序代碼時,首先配置HPI控制寄存器HPIC為0x00010001,其次配置HPI地址寄存器HPIA為0x00000000,這是程序代碼在DSP存儲空間中的起始存儲地址,然后把code.h里的數組寫進自動增量模式的HPI數據寄存器HPID。下載數據代碼的步驟和下載程序代碼一樣,只是要把HPIA配置成0x80000000,這是數據代碼在DSP存儲空間中的起始存儲地址。

2.4 啟動程序運行

成功下載可執行文件的代碼之后,主機向HPIC寄存器中的DSPINT位寫入1。這個動作同樣是在PCI驅動程序里完成。只要DSPINT=1,DSP的內核將被喚醒,自動從0x00000000處開始執行已下載的程序。

圖2是一個演示實例,程序功能是向地址0x80007000至0x80007010的DSP存儲區寫入0x12345678。可以看到下載程序前后DSP存儲區的內容變化。

圖片點擊可在新窗口打開查看

3 結 論

通過轉換可執行文件的格式,把DSP設置成HPI的BOOT方式,復位DSP,下載可執行文件代碼,設置HPIC寄存器的DSPINT位為1,可以實現從主機通過PCI總線在線下載可執行文件、并且啟動程序運行的目的。本文中的實例DSP采用了TMS320C6701,對于其它型號的DSP,本文同樣具有指導意義。


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

返回版面帖子列表

基于PCI總線的DSP系統可執行文件在線實時下載技術








簽名
主站蜘蛛池模板: 高清视频 一区二区三区四区 | 在线看片无码永久免费aⅴ 在线看片无码永久免费视频 | 在线看片人成视频免费无遮挡 | 狠狠夜色午夜久久综合热91 | 日韩高清在线二区 | 日韩一区二区在线免费观看 | 亚洲娇小与黑人巨大交 | 日韩 ed2k| 伊人情人综合网 | 一区二区视频在线免费观看 | 真人啪啪高潮喷水呻吟无遮挡 | 日本免费精品一区二区三区 | 看全大色黄大色黄大片一级爽 | 色婷婷五月综合亚洲小说 | 99久久亚洲精品无码毛片 | 色综合久久91 | 欧美日韩亚洲一区二区 | 免费一级特黄视频 | 国产精品嫩草影院永久一 | 亚州精品一区二区三区 | 国产成人无精品久久久久国语 | 久久亚洲av成人无码电影a片 | 国产精品亚洲日韩欧美色窝窝色欲 | 成人做爰高潮片免费视频 | 欧美激情一区二区亚洲专区 | 亚洲av无码专区亚洲av桃 | 久久大香伊蕉在人线国产昨爱 | 宅男666在线 | 国模大尺度啪啪 | 国产亚洲精品久久久性色情软件 | 影音先锋天堂网 | 好男人www在线影院官网 | 5x性区m免费毛片视频看看 | 男人的天堂欧美 | 久久久国产精品va麻豆 | 国产在线不卡一区二区三区 | 亚洲热色| 国产精自产拍久久久久久 | 免费看一级大片 | 国产成人精品高清在线 | 色综合久久手机在线 |