當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]HPI在MCU和DSP接口中的應(yīng)用

描述HP I接口的工作原理及C8051F060和TMS320VC5409 (簡(jiǎn)稱C5409)之間的接口電路設(shè)計(jì),給出了HP I接口的軟件設(shè)計(jì)。該系統(tǒng)具有設(shè)計(jì)靈活、數(shù)據(jù)傳輸速度快、適用于其他含有HP I接口的DSP應(yīng)用系統(tǒng),為開(kāi)發(fā)人員提供了一種便捷穩(wěn)定的數(shù)據(jù)共享、傳輸方式。

  1 TMS320VC5409的HPI - 8接口

  C5409的HP I - 8是一個(gè)增強(qiáng)型8位HP I8接口,主要用來(lái)與主處理器接口。C5409 內(nèi)部有32K的RAM空間,除了DSP本身可以訪問(wèn)該RAM區(qū)域外,主機(jī)也可以通過(guò)HP I口實(shí)現(xiàn)對(duì)整個(gè)RAM的訪問(wèn),從而實(shí)現(xiàn)主機(jī)與DSP的通信。HPI - 8接口通過(guò)HP I控制寄存器HP IC、地址寄存器HP IA、數(shù)據(jù)寄存器HP ID等3個(gè)HPI寄存器進(jìn)行控制和實(shí)現(xiàn)數(shù)據(jù)傳輸。各寄存器功能如下:HPI - 8地址寄存器(HP IA) ,該寄存器只能由主機(jī)對(duì)其直接訪問(wèn),寄存器中存放當(dāng)前尋址HP I - 8 存儲(chǔ)單元地址。HPI - 8邏輯控制單元(HPIC) 。主機(jī)和C5409都能對(duì)它進(jìn)行直接訪問(wèn),它映射到C5409 的數(shù)據(jù)空間002CH單元。HPIC只有4位用于控制HPI的操作,由于HP IC的高8位和低8位是相同的,因此這4位分別位于高字節(jié)和低字節(jié)的低4位。B it0 /8 (BOB) ———用于字節(jié)順序控制, BOB = 1表示第1個(gè)字節(jié)為低字節(jié),否則第1個(gè)字節(jié)為高字節(jié)。B itl/9 ( SMOD) ———訪問(wèn)模式控制, SMOD = l表示共享訪問(wèn)模式( SAM) ,否則為主機(jī)訪問(wèn)模式(HOM) 。B it2 /10 (DSP INT) ———主機(jī)通過(guò)將該位寫(xiě)l來(lái)向DSP發(fā)送1次HP I中斷。B it3 /11 (H1NT) ———DSP通過(guò)向該位置l,使外部引腳H INT產(chǎn)生一個(gè)低電平作為給主機(jī)的中斷,中斷的清除必須由主機(jī)向該位寫(xiě)l來(lái)清除。HP I - 8數(shù)據(jù)鎖存器(HP ID) ,只能由主機(jī)對(duì)其進(jìn)行訪問(wèn),主機(jī)通過(guò)讀寫(xiě)該寄存器來(lái)實(shí)現(xiàn)對(duì)共享RAM的讀寫(xiě), RAM的地址則由HP IA地址寄存器的內(nèi)容來(lái)決定。因此,主機(jī)對(duì)DSP的訪問(wèn)過(guò)程是,先往HPI地址寄存器HP IA寫(xiě)入欲訪問(wèn)的地址,然后再對(duì)數(shù)據(jù)寄存器HP ID進(jìn)行讀或?qū)懺L問(wèn)。

  HP I接口信號(hào)包括:

  HCS———片選信號(hào)。作為HP I - 8的使能輸入端,在每次尋址期間為低電平,在兩次尋址期間也可以停留在低電平。

  HAS———地址選通信號(hào),此信號(hào)用于主機(jī)的數(shù)據(jù)線和地址線復(fù)用的情況。當(dāng)不用時(shí)此信號(hào)應(yīng)接高。

  HB IL———字節(jié)識(shí)別信號(hào),用于識(shí)別主機(jī)傳送過(guò)來(lái)的是第一個(gè)字節(jié)還是第二個(gè)字節(jié)。當(dāng)HB IL = 0時(shí)為第一個(gè)字節(jié), HB IL = 1時(shí)為第二個(gè)字節(jié)。

  HCNTL1 /HCNTL0———主機(jī)控制信號(hào), HP I寄存器的訪問(wèn)地址信號(hào),主機(jī)用來(lái)選擇訪問(wèn)的HP I寄存器。當(dāng)HCNTL1 /HCNTL0為00時(shí),表明主機(jī)訪問(wèn)HP IC;當(dāng)為01時(shí),表明主機(jī)訪問(wèn)用HP IA指向的HP ID,每讀一次, HP IA事后增加1,每寫(xiě)一次, HP IA事先增加1;當(dāng)為10時(shí),表明主機(jī)訪問(wèn)HP IA;當(dāng)為11時(shí),表明主機(jī)訪問(wèn)HP ID,而HP IA不受影響。當(dāng)主機(jī)訪問(wèn)HP I時(shí),先完成外部接口部分的操作,即先初始化HP IC寄存器,然后初始化HP IA寄存器,再?gòu)腍P ID寄存器中讀出或?qū)懭霐?shù)據(jù),一般在DSP的初始化程序中對(duì)HPIC進(jìn)行了初始化后就無(wú)須再對(duì)HP IC操作了,其余的工作就完全由主機(jī)完成。HPI的傳送控制是由HP I - 8內(nèi)部選通信號(hào)實(shí)現(xiàn)的, 由3 個(gè)信號(hào)完成: /HDS1、/HDS2、/HCS。由圖1HP I - 8 內(nèi)部選通邏輯電路圖可知,只有當(dāng)/HDS1、/HDS2信號(hào)不同時(shí)為零,且/HCS信號(hào)為低電平時(shí),內(nèi)部HP I才被選通。

 

  圖1 HP I - 8內(nèi)部選通邏輯電路圖

  2 HP I接口設(shè)計(jì)

  2. 1 HPI接口電路設(shè)計(jì)

  C8051F060與C5409的HP I接口電路圖如圖2所示。圖中將C8051F060的端口P1和HPI的8位數(shù)據(jù)線HD0~HD7相連作為數(shù)據(jù)傳輸通道, P20 ~P23 設(shè)置為輸出以控制HP I口的操作。其中P20 和P21 分別連接HCNTL0和HCNTL l以實(shí)現(xiàn)對(duì)HPIC、HP IA 和HP ID寄存器的訪問(wèn), P22連接字節(jié)識(shí)別信號(hào)HB IL 可控制讀寫(xiě)數(shù)據(jù)是屬16位字的第一字節(jié)還是第二字節(jié),P23作為讀寫(xiě)控制選通信號(hào)連接HR /W, P24 與P25分別連接/HDS1和/HDS2,同與P26相連的信號(hào)/HCS一起作為數(shù)據(jù)選通信號(hào)來(lái)鎖存有效的HCNTL0 /1、HB IL和HR /W 信號(hào)。地址鎖存信號(hào)/HAS與P27 相連,為簡(jiǎn)化設(shè)計(jì),可以直接將/HAS和/HDS2置為高電平, /HCS置為低電平。P33作為檢測(cè)HRDY信號(hào)的輸入端,當(dāng)HP I準(zhǔn)備好時(shí), HRDY輸出高電平有效。P34作為輸入與HP I口的主機(jī)中斷信號(hào)/H INT相連。由HP I接口的原理可知,在HCNTL0 /1、HB IL 和HR /W信號(hào)有效之后,設(shè)置HDS1、/HCS為低電平可實(shí)現(xiàn)讀寫(xiě)的數(shù)據(jù)選通,從而完成C8051F060對(duì)C5409HPI口的讀寫(xiě)操作。在數(shù)據(jù)交換過(guò)程中, C8051F060向HPI發(fā)送數(shù)據(jù)可通過(guò)置C5409 的HPI控制寄存器HPIC中的DSPINT位為1 來(lái)中斷C5409。C8051F060 接收來(lái)自HPI的數(shù)據(jù)時(shí)則可用查詢方式。當(dāng)C5409準(zhǔn)備發(fā)送數(shù)據(jù)時(shí),置/H INT信號(hào)為低。當(dāng)C8051F060查詢到P34為低時(shí),系統(tǒng)將調(diào)用接收數(shù)據(jù)子程序來(lái)實(shí)現(xiàn)數(shù)據(jù)的接收。

 

  圖2 C8051F060與C5409的HP I接口電路圖

  2. 2 HPI接口軟件設(shè)計(jì)

  HP I的數(shù)據(jù)傳輸分外部傳輸和內(nèi)部傳輸。外部傳輸是指主機(jī)和HP I寄存器之間的傳輸,由主機(jī)發(fā)出指令完成。內(nèi)部傳輸是指HP I寄存器和DSP內(nèi)部RAM之間的傳輸,由DSP內(nèi)部的DMA 控制器自動(dòng)完成。主機(jī)在進(jìn)行外部傳輸時(shí),要先檢查內(nèi)部傳輸是否完成,這是通過(guò)檢測(cè)HRDY信號(hào)實(shí)現(xiàn)的。外部傳輸操作的一般步驟是:檢查HRDY信號(hào)的電平。為高,表示可以進(jìn)行傳輸;為低,表示DSP正在進(jìn)行內(nèi)部傳輸,此時(shí)不能進(jìn)行外部傳輸。主機(jī)對(duì)HP I - 8口進(jìn)行數(shù)據(jù)讀寫(xiě)需要三個(gè)步驟:設(shè)置控制寄存器,寫(xiě)地址寄存器,讀寫(xiě)數(shù)據(jù)寄存器。在寄存器讀寫(xiě)過(guò)程中,主機(jī)通過(guò)端口發(fā)送控制信號(hào),檢測(cè)狀態(tài)信號(hào),完成對(duì)HP I口訪問(wèn)的時(shí)序模擬,雙方通過(guò)向?qū)Ψ桨l(fā)送中斷通知對(duì)方數(shù)據(jù)已經(jīng)準(zhǔn)備好,通過(guò)檢測(cè)對(duì)方設(shè)置的狀態(tài)判斷對(duì)方是否準(zhǔn)備好接受數(shù)據(jù)。

   [!--empirenews.page--]具體設(shè)置過(guò)程如下:

 

  a) 首先初始化HP IC 寄存器,特別是BOB 位。具體方法為:先設(shè)置HCNTL1 =HCNTL0 = 0,選擇將要對(duì)HP IC進(jìn)行操作。然后將HP IC的值寫(xiě)入HP I。注意HP IC的高8位和低8位是一樣的。

  b) 設(shè)置地址寄存器HP IA。先設(shè)置HCNTL1 =1&HCNTL0 = 0,選擇將要對(duì)HP IA進(jìn)行操作。然后將要訪問(wèn)的C54x片內(nèi)RAM的地址寫(xiě)入HP I,高8位先寫(xiě),低8位后寫(xiě)。

  c) 讀寫(xiě)C54x的片內(nèi)RAM。先設(shè)置HCNTL1 /0,選擇將要對(duì)數(shù)據(jù)鎖存器HP ID 進(jìn)行操作。如果設(shè)置HCNTL1 = 0&HCNTL0 = 1,表示使用地址自動(dòng)增加模式;如果設(shè)置HCNTL0 = HCNTL1 = 1 時(shí),表示不使用地址自動(dòng)增加模式,這時(shí)完成讀寫(xiě)操作后,地址寄存器HP IA將不會(huì)變。

  以下是C8051F060的HP I接口程序:

  (1) 讀HPID寄存器程序

  unsigned int HP ID_Read ( )

  {

  unsigned char H_Byte,L_Byte;

  HDS2 = 1;

  HCS = 0;         使能HP I

  HCNTL0 = 1;

  HCNTL1 = 0; 主機(jī)可讀寫(xiě)HPID

  HB IL = 0; 當(dāng)前是第一字節(jié)

  HRW = 1; 主機(jī)要求讀選通HPI

  HDS1 = 0; 開(kāi)始數(shù)據(jù)操作

  H_Byte = P1; 讀出高8位數(shù)據(jù)

  Delay(2) ; 等待數(shù)據(jù)讀出完成

  HDS1 = 1; 結(jié)束數(shù)據(jù)操作

  HB IL = 1; 當(dāng)前是第二字節(jié)

  HRW = 1; 主機(jī)要求讀選通HPI

  HDS1 = 0; 開(kāi)始數(shù)據(jù)操作

  L_Byte = P1; 讀出低8位數(shù)據(jù)

  Delay(2) ; 等待數(shù)據(jù)讀出完成

  HDS1 = 1; 結(jié)束數(shù)據(jù)操作

  }

  (2) 寫(xiě)HPID寄存器程序

  void HPID_Write ( unsigned intW_data)

  {

  HDS2 = 1;

  HCS = 0; 使能HP I

  HCNTL0 = 1;

  HCNTL1 = 0; 主機(jī)可讀寫(xiě)HPID

  HB IL = 0; 當(dāng)前是第一字節(jié)

  HRW = 0; 主機(jī)要求寫(xiě)選通HPI

  HDS1 = 0; 開(kāi)始數(shù)據(jù)操作

  P1 = ( unsigned char) ( (W_data > > 8) &0xFF) ;  寫(xiě)入高8位數(shù)據(jù)

  Delay(2) ; 等待數(shù)據(jù)寫(xiě)入完成

  HDS1 = 1; 結(jié)束數(shù)據(jù)操作

  HB IL = 1; 當(dāng)前是第二字節(jié)

  HRW = 0; 主機(jī)要求寫(xiě)選通HPI

  HDS1 = 0; 開(kāi)始數(shù)據(jù)操作

  P1 = ( unsigned char) (W_data&0xFF) ;  寫(xiě)入低8位數(shù)據(jù)

  Delay(2) ; 等待數(shù)據(jù)寫(xiě)入完成

  HDS1 = 1; 結(jié)束數(shù)據(jù)操作

  }

  3 結(jié)束語(yǔ)

  本設(shè)計(jì)方案具有硬件結(jié)構(gòu)簡(jiǎn)單、使用方便等優(yōu)點(diǎn),有很好的使用價(jià)值。經(jīng)在某導(dǎo)航系統(tǒng)中實(shí)際使用的效果來(lái)看,證明該設(shè)計(jì)方案簡(jiǎn)單、性能穩(wěn)定、高效可靠,達(dá)到了預(yù)期的設(shè)計(jì)目的。

本站聲明: 本文章由作者或相關(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工具的開(kāi)發(fā)耗時(shí)1.5...

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

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(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ì)開(kāi)幕式在貴陽(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ù)字世界的話語(yǔ)權(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)閉