當(dāng)前位置:首頁(yè) > 智能硬件 > 智能硬件
[導(dǎo)讀]本文所敘述的引導(dǎo)方法在四通道數(shù)據(jù)采集系統(tǒng)中得到了有效的驗(yàn)證,并且整個(gè)過程操作起來非常方便快捷。

1 Bootloader分析

       TI公司的DSP芯片出廠時(shí),在片內(nèi)ROM中固化有引導(dǎo)裝載程序Bootloader,其主要功能就是將外部的程序裝載到片內(nèi)RAM中運(yùn)行,以提高系統(tǒng)的運(yùn)行速度。

       TMS320VC5409是TI公司的一款定點(diǎn)DSP芯片,其指令周期可達(dá)10ns,片內(nèi)有32K×16位的RAM,性價(jià)比極高,被廣泛應(yīng)用在嵌入式系統(tǒng)、數(shù)據(jù)采集系統(tǒng)中。TMS320VC5409的Bootloacler程序位于片內(nèi)ROM的0F800H~0FBFFH空間。系統(tǒng)上電時(shí),DSP將檢查外部引腳MP/MC的狀態(tài),如果該引腳為高電平,則DSP按微處理器模式啟動(dòng);如果該引腳為低電平,則DSP按微計(jì)算機(jī)模式啟動(dòng)。此時(shí),系統(tǒng)從0FF80H地址處開始執(zhí)行程序,0FF80H是Bootloader的中斷矢量。因此,如果系統(tǒng)上電時(shí)MP/MC的狀態(tài)為低電平,DSP將從FF80H處跳轉(zhuǎn)到F800H開始執(zhí)行TI的Bootloader自動(dòng)裝載程序。

       進(jìn)入Bootloader程序后,首先檢查DSP引腳INT2的狀態(tài),如果為低電平,則進(jìn)入HPI引導(dǎo)裝載模式,如果INT2為高電平則接下來檢查INT3引腳。如果INT3引腳為低電平,則進(jìn)入串行EEPROM引導(dǎo)裝載模式,如果INT3為高電平則進(jìn)入并行引導(dǎo)裝載模式。當(dāng)并行引導(dǎo)裝載模式失敗后,系統(tǒng)會(huì)自動(dòng)進(jìn)入串行口引導(dǎo)裝載模式.串行口引導(dǎo)裝載失敗后,系統(tǒng)又將進(jìn)入I/O口引導(dǎo)裝載模式。

       當(dāng)進(jìn)入并行引導(dǎo)裝載模式后,DSl 首先讀取地址為0FFFFH的I/O空間單元,并將該單元的值作為引導(dǎo)表的首地址.在數(shù)據(jù)地址空間中讀取引導(dǎo)表的第一個(gè)字,如果該字的值為10AAH,則進(jìn)入16位引導(dǎo)模式,如果低字節(jié)為08H,則再進(jìn)一步讀取下一個(gè)值,如果該值的低字節(jié)為AAH,則進(jìn)人8位引導(dǎo)模式。如果從I/o地址空間中讀取的引導(dǎo)表首地址所對(duì)應(yīng)的引導(dǎo)表中得不到正確的引導(dǎo)信息,那么DSP將會(huì)從數(shù)據(jù)空間的0FFFFH地址再去讀一個(gè)字作為引導(dǎo)表首地址,進(jìn)而再?gòu)囊龑?dǎo)表首地址讀取一個(gè)字。如果該字為lOAAH,則立即進(jìn)入l6位引導(dǎo)模式,否則,將按8位方式處理:從0FFFFH讀取一字節(jié)作為引導(dǎo)表首地址的低字節(jié),從0FFFEH讀取一字節(jié)作為引導(dǎo)首地址的高字節(jié),再?gòu)囊龑?dǎo)表首地址讀取一個(gè)值,如果低字節(jié)為08H,則再讀引導(dǎo)表的下一個(gè)值,如果為AAH,則說明外部存儲(chǔ)器是8位寬度,進(jìn)入8位引導(dǎo)裝載模式;如果以上步驟不能獲取正確的引導(dǎo)信息,那么DSP將進(jìn)人串行口引導(dǎo)裝載模式。

       如果并行引導(dǎo)裝載成功,DSP將從裝載后新的程序開始地址執(zhí)行程序。詳細(xì)的并行引導(dǎo)流程圖如圖1所示。

流程圖


2 硬件設(shè)計(jì)

       在本系統(tǒng)中,FLASH選用的是Atmel公司的AT29LVl024,AT29LVl024容量為64K×16位,可以滿足一般的應(yīng)用要求,并且其工作電壓為3V~3.6V,可以直接與TMS320VC5409接口而不必再使用電壓接口芯片進(jìn)行轉(zhuǎn)接,使硬件電路更為簡(jiǎn)單。

       從TMS320VC5409的存儲(chǔ)器空間映射得知,在MP/M C=0 時(shí),外部存儲(chǔ)器空間映射的地址范圍為8000H-FFFFH共32K,因此Flash中的程序部分必須位于8000H~FFFFH的地址范圍,才能成功引導(dǎo)。筆者的程序量小于32K×16位,因此可以將Flash的地址線A0-A15直接與DSP的地址線AO~Al5相連,然后將程序燒錄到Flash的32K之后的位置,這樣程序剛好位于DSP的8000H~FFFFH范圍。如果程序量大于32K字,則可將Flash的前32K地址編碼在DSP的8000H~FFFFH范圍.采用分頁(yè)的方式,逐步裝載需要運(yùn)行的程序。 本文中,采用從DATA空間引導(dǎo),具體的電路連接如圖2所示。

dsp與flash接口電路


       Flash的地址線AO-A15直接與DSP的低16根地址線A0-A15相連。

       Flash的16位數(shù)

       據(jù)線DO-D15直接接DSP的16位數(shù)據(jù)總線D0-D15。

       FLASH的寫信號(hào)WE直接接高電平(因?yàn)閷?duì)Flash的編程采用編程器燒錄)。

       Flash的片選信號(hào)CE直接接低電平或者接DSP的DS引腳。 Flash的讀信號(hào)OE接DSP的存儲(chǔ)器讀信號(hào)MSTRB。

       DSP的MP/MC引腳接低電平。

       DSP的INTl-INT3引腳通過上拉電阻接高電平。

3 代碼設(shè)計(jì)和數(shù)據(jù)轉(zhuǎn)換

       硬件設(shè)計(jì)完成后,可以編寫一段代碼進(jìn)行測(cè)試。

       在TI的DSP開發(fā)環(huán)境CCS中建立一個(gè)工程項(xiàng)目test pjt,包括三個(gè)文件:test_main.c、test_vector.asm和load.cmd。

       需要說明的是,雖然DSP和Flash都是16位的,但是一般的編程器都是按8位從.hex文件中讀取數(shù)據(jù).每讀一個(gè)字節(jié),地址就會(huì)增加1,因此連接命令文件中必須將memwidth和romwidth的值設(shè)置為8,否則編程器讀取hex文件時(shí)會(huì)出現(xiàn)錯(cuò)誤,這通常是導(dǎo)致引導(dǎo)過程失敗的主要原因。 連接命令編寫完畢后,將test.out文件、連接命令文件load.cmd以及hex500.exe文件拷貝到同一目錄下,在Windows系統(tǒng)命令提示下進(jìn)入該目錄,執(zhí)行命令行:

       hex500 I0ad.cmd

       即可生成test.hex文件,同時(shí)還生成mxp文件test.mxp,供查看詳情。

       test.hex文件生成后,運(yùn)行編程器燒錄軟件(本設(shè)計(jì)用的是西爾特的suPERPRO 6 8 0),選擇器件為 AT29LVl024。打開test.hex文件,此時(shí)會(huì)發(fā)現(xiàn)AT29LVl024的地址范圍是0 0 0 0 0H-1FFFFH共128K,而不是0000H-FFFFH,這就是為什么需要將存儲(chǔ)器數(shù)據(jù)寬度設(shè)定為8以及將程序燒錄起始地址bootorg設(shè)置為0xl8000的原因。0x18000除以2為0x0C000,也即,燃錄地址Oxl8OOO在系統(tǒng)中的地址為OxOC000,位于8000H~FFFFH的外部存儲(chǔ)器映射范圍內(nèi)。

       另外,還發(fā)現(xiàn)編程器軟件打開的test.hex文件中,最后兩字節(jié)并不是引導(dǎo)表的首地址(這大概是HEX500有什么bug的緣故吧),因此需將1FFFEH的內(nèi)容改為COH,將1FFFFH的內(nèi)容改為00H,C000H是本例中引導(dǎo)表在實(shí)際DSP系統(tǒng)中的首地址。將18000H的內(nèi)容從08H改為10H,此處為08H是因?yàn)檫B接命令文件中的數(shù)據(jù)寬度設(shè)置為8位,而系統(tǒng)中DSP和Flash的實(shí)際數(shù)據(jù)寬度都為16位,引導(dǎo)過程應(yīng)該采用16位引導(dǎo)裝載。因此需要將08H改為10H。修改完成后,還需將整個(gè)文件的高低字節(jié)進(jìn)行交換,因?yàn)榫幊唐鞔蜷_的.hex文件高字節(jié)在前,低字節(jié)在后,而16位Flash的編程是低字節(jié)在前高字節(jié)在后。經(jīng)過如此修改和調(diào)整后,即可對(duì)Flash器件進(jìn)行編程了。

       將編程后的Flash裝到系統(tǒng)中,用示波器查看DSP的引腳XF,如果有方波出現(xiàn),則說明引導(dǎo)裝載已經(jīng)成功,程序代碼已被調(diào)入到內(nèi)部RAM中運(yùn)行。

結(jié)語

       本文所敘述的引導(dǎo)方法在四通道數(shù)據(jù)采集系統(tǒng)中得到了有效的驗(yàn)證,并且整個(gè)過程操作起來非常方便快捷。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉