• <sub id="h4knl"><ol id="h4knl"></ol></sub>
    <sup id="h4knl"></sup>
      <sub id="h4knl"></sub>

      <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
      1. <strong id="h4knl"></strong>

      2. MPC8272總線與DSP HPI總線接口的FPGA實(shí)現(xiàn)

        時(shí)間:2024-07-04 14:03:11 材料畢業(yè)論文 我要投稿
        • 相關(guān)推薦

        MPC8272總線與DSP HPI總線接口的FPGA實(shí)現(xiàn)

          論文關(guān)鍵詞: DSP HPI MPC8272 FPGA VHDL源代碼
          論文摘要:通過對(duì)TI公司TMS320C6421 DSP HPI接口信號(hào)和接口總線時(shí)序的分析,以VHDL語言為工具,使用Altera的FPGA芯片EP3C40F780C8,設(shè)計(jì)完成MPC8272總線和TMS320C6421 DSP HPI總線之間的通信接口,并在實(shí)際的產(chǎn)品中得到運(yùn)用,給出與整個(gè)接口設(shè)計(jì)相關(guān)的VHDL源代碼。對(duì)于類似的DSP HPI接口設(shè)計(jì),此文章具有參考和指導(dǎo)意義。
          一、HPI概述
          HPI(Host-Port Interface)主機(jī)接口,是TI高性能DSP上配置的與主機(jī)進(jìn)行通信的片內(nèi)外設(shè)。通過HPI接口,主機(jī)可以非常方便地訪問DSP的所有地址空間,從而實(shí)現(xiàn)對(duì)DSP的控制。
          TMS320C6421的HPI接口是一個(gè)16bit寬的并行端口。主機(jī)(host)對(duì)CPU地址空間的訪問是通過EDMA控制器實(shí)現(xiàn)的。 HPI接口的訪問主要通過三個(gè)專用寄存器來實(shí)現(xiàn),它們分別是HPI控制寄存器(HPIC)、HPI地址寄存器(HPIA)和HPI數(shù)據(jù)寄存器(HPID)。
          二、HPI接口信號(hào)簡(jiǎn)介
          (1) HD[15∶0](數(shù)據(jù)總線)
          (2) HCNTL[1∶0](控制HPI訪問類型)
          如前所述,對(duì)HPI的訪問需要通過三個(gè)寄存器,即HPI地址寄存器(HPIA),HPI數(shù)據(jù)寄存器(HPID)和HPI控制寄存器(HPIC)來實(shí)現(xiàn)。HCNTL[1∶0]就是用于選擇這三個(gè)寄存器的專用引腳。

          (3) HHWIL (半字指示選擇)
          HHWIL指示當(dāng)前的為第一個(gè)或是第二個(gè)半字傳輸,但需要注意的是,它并不代表是最高有效的(most significant)還是最低有效的(least significant),而決定的依據(jù)是HPIC中的HWOB位的狀態(tài)。對(duì)于第一個(gè)半字,HHWIL必須被驅(qū)動(dòng)為低電平;對(duì)于第二個(gè)半字,HHWIL必須被驅(qū)動(dòng)為高電平。
          (4) HR/W (讀/寫操作指示)
          HR/W為高電平,表示從HPI接口讀;HR/W為低電平,表示向HPI接口寫。
          (5) HRDY (輸出準(zhǔn)備好)
          (6) HCS,HDS1,HDS2(選通信號(hào))
          當(dāng)HCS有效,并且HDS1和HDS2中僅有一個(gè)有效時(shí),內(nèi)部觸發(fā)信號(hào)HSTROBE有效。這三個(gè)信號(hào)的組合邏輯其實(shí)就是片選和讀/寫信號(hào)構(gòu)成的組合邏輯,因此,可直接與主機(jī)的片選和讀/寫信號(hào)相連。如下圖所示:
          
          (7) HAS (地址輸入選通)
          在TMS320C6421 HPI接口中目前沒有用,連接到邏輯高電平。
          (8) HINT(向主機(jī)輸出的中斷)
          三、HPI接口寄存器簡(jiǎn)介
          如上所述,主機(jī)通過HPI接口對(duì)DSP的訪問實(shí)際上是通過三個(gè)寄存器來實(shí)現(xiàn)的,下面就針對(duì)這三個(gè)專用寄存器進(jìn)行介紹。
          (1)HPI控制寄存器(HPIC)
          HPIC中每一位都有特定的功能,在對(duì)HPI進(jìn)行訪問的過程中需要特別注意。簡(jiǎn)要介紹一下這些功能位的作用。
          ①HWOB(半字順序位)
          如果HWOB=1,第一個(gè)半字為最低有效;如果HWOB=0,第一個(gè)半字為最高有效。HWOB對(duì)地址和數(shù)據(jù)都起作用,如果采用HPI16模式,在訪問數(shù)據(jù)或者地址寄存器之前,應(yīng)該首先初始化HWOB位。
          ②DSPINT(主機(jī)產(chǎn)生的Processor-to-CPU中斷,用于HPI啟動(dòng)方式中將DSP內(nèi)核從復(fù)位狀態(tài)中喚醒)
          ③HINT(DSP-to-Host中斷,即通過向此位寫入特定值來產(chǎn)生對(duì)主機(jī)的中斷)
          (2) HPI地址寄存器(HPIA)
          存放32bit數(shù)據(jù),指向?qū)⒁L問的DSP地址空間中的地址。
          (3) HPI數(shù)據(jù)寄存器(HPID)
          在寫操作中存放將要寫入HPIA所指向地址的數(shù)據(jù),在讀操作中為HPIA所指向地址中的數(shù)據(jù)。
          四、HPI接口讀寫時(shí)序
          ⑴HPI接口讀時(shí)序
          
          ⑵HPI接口寫時(shí)序
          
          五、HPI接口硬件設(shè)計(jì)
          從C6421 HPI寄存器的編址方式可以看出,主機(jī)需兩根地址線尋址到HPI接口的控制寄存器、地址寄存器和數(shù)據(jù)寄存器,因此選擇主機(jī)的地址線A29、A28連接C6421 HPI的HCNTL1、HCNTL0。選擇主機(jī)的地址線A30連接到C6421 HPI的HHWIL,作為半字指示選擇。HPI的選通由HCS、HDS1、HDS2三根信號(hào)線共同作用,最后的HPI使能信號(hào)(STROBE)為HDS1異或HDS2后,再與HCS進(jìn)行與非運(yùn)算的結(jié)果。HCS、HDS1、HDS2信號(hào)由FPGA產(chǎn)生。TA為MPC8272傳輸結(jié)束標(biāo)識(shí),HPI口HRDY有效后FPGA向CPU發(fā)送TA,保證HPI數(shù)據(jù)正確讀出。C6416 HPI的HINT信號(hào)可以直接連接到主機(jī)的IRQ引腳上實(shí)現(xiàn)HPI對(duì)主機(jī)的中斷信號(hào)連接,也可通過FPGA連接到主機(jī),使控制更靈活。
          六、地址空間分配
          由于C6421為16位的HPI口,其內(nèi)部總線為32位,所以每次讀寫要分兩次,一次為高16位,一次為低16位,由HHWIL來選擇(0-First Half Word, 1-Second Half Word),設(shè)定HPIC.HWOB = 0(First Half Word =高16位, Second Half Word = 低16位)。C6421的HPI接口映射為MPC8272的4對(duì)地址空間,由MPC8272 CS3控制,配置CS3為16位寬的GPCM訪問模式,如下地址分配:
          HPIC:0x0D000000(高16位), 0x0D000002(低16位)。
          HPIA: 0x0D000004(高16位), 0x0D000006(低16位)。
          HPID_FIX: 0x0D00000C(高16位), 0x0D00000E(低16位),C6421地址由當(dāng)前的HPIA決定。
          HPID_Auto: 0x0D000008(高16位), 0x0D00000A(低16位) C6421地址自動(dòng)加1。
          七、HPI接口相關(guān)VHDL代碼
          output wire c6421_hasn, c6421_hcsn, c6421_hdsn1, c6421_hdsn2,
          assign c6421_hasn = 1’B1;
          assign c6421_hcsn = cs3;
          assign c6421_hdsn1 = wen;
          assign c6421_hdsn2 = oen;
          reg [7:0] st_ta;
          reg tax;
          wire tax001 = (zzz_cnt==256) ? 0 : 1 ;
          wire tax002 = (zzz_cnt==256+8) ? 0 : 1 ;
          wire tax003 = (zzz_cnt==256+16)? 0 : 1 ;
          wire tax004 = (zzz_cnt==256+32)? 0 : 1 ;
          reg c6421hcsn_start;
        always @(posedge clk_cpu)
        if (zzz_cnt==5) c6421hcsn_start <= 1;
        else c6421hcsn_start <= 0;
        always @(posedge clk_cpu) begin

        if (c6421hcsn_start) begin
        st_ta <= STA_CHECKRD;
        tax <= 1;
        end
        else if (STA_CHECKRD == st_ta) begin
        if (c6421_hrdyn)
        st_ta <= STA_CHECKRD;
        else
        st_ta <= STA_GEN;
        tax <= 1;
        end
        else if (STA_GEN == st_ta) begin
        st_ta <= STA_END;
        tax <= 0;
        end
        else begin
        tax <= 1;
        end
        end
          assign ta = (~cs3) ? (tax & tax001 & tax002 & tax003 & tax004): 1’BZ;
          MPC8272功能很強(qiáng)大,C6421 HPI接口相對(duì)于MPC8272來說為慢速外部設(shè)備,TA為MPC8272傳輸結(jié)束標(biāo)識(shí),HPI口HRDY有效后FPGA向CPU發(fā)送TA,保證HPI數(shù)據(jù)正確讀出。因此在VHDL程序中設(shè)計(jì)了狀態(tài)機(jī),當(dāng)HRDY信號(hào)有效后就立即結(jié)束本次訪問,否則經(jīng)過一段時(shí)間的延遲后強(qiáng)制結(jié)束本次訪問,這樣可以避免接口長(zhǎng)時(shí)間占用總線,影響系統(tǒng)性能。
          八、結(jié)束語
          本文使用VHDL語言和FPGA,設(shè)計(jì)了MPC8272與DSP之間的HPI接口。之所以使用FPGA,是因?yàn)樵谙到y(tǒng)中FPGA還包含有其他的功能設(shè)計(jì)。如果只有MPC8272與DSP之間的HPI接口設(shè)計(jì),使用CPLD即可完成,而不必浪費(fèi)FPGA的資源。
          參考文獻(xiàn):
          1、TMS320C6421 Fixed-Point Digital Signal Processor datasheet。TI公司提供
          2、TMS320C642x DSP Host Port Interface (HPI) User’s Guide。TI公司提供

        【MPC8272總線與DSP HPI總線接口的FPGA實(shí)現(xiàn)】相關(guān)文章:

        談DSP HPI總線與MPC8272總線接口的FPGA實(shí)現(xiàn)03-08

        CAN總線控制器與DSP的接口03-07

        基于DSP和FPGA的ARINC429機(jī)載總線接口板的硬件設(shè)計(jì)03-18

        PCI總線協(xié)議的FPGA實(shí)現(xiàn)及驅(qū)動(dòng)設(shè)計(jì)03-18

        利用ISA總線實(shí)現(xiàn)對(duì)DSP芯片VC5402的軟配置03-19

        高速PCI總線接口模塊設(shè)計(jì)03-08

        高速PCI總線接口卡的開發(fā)03-18

        基于PCI總線的CAN卡的設(shè)計(jì)與實(shí)現(xiàn)03-18

        USB總線接口芯片CH371及其應(yīng)用03-18

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码
      3. <sub id="h4knl"><ol id="h4knl"></ol></sub>
        <sup id="h4knl"></sup>
          <sub id="h4knl"></sub>

          <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
          1. <strong id="h4knl"></strong>

          2. 日韩精品一区二区五月婷 | 日韩精品一区二区三区在线观看l | 午夜色福利久久免费 | 日韩、欧美、中文三级 | 日本久久一区一本精品 | 亚洲国产另类久久久精品网站 |