中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      MPC8272總線與DSP HPI總線接口的FPGA實現

      時間:2024-07-04 14:03:11 材料畢業論文 我要投稿
      • 相關推薦

      MPC8272總線與DSP HPI總線接口的FPGA實現

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

        (3) HHWIL (半字指示選擇)
        HHWIL指示當前的為第一個或是第二個半字傳輸,但需要注意的是,它并不代表是最高有效的(most significant)還是最低有效的(least significant),而決定的依據是HPIC中的HWOB位的狀態。對于第一個半字,HHWIL必須被驅動為低電平;對于第二個半字,HHWIL必須被驅動為高電平。
        (4) HR/W (讀/寫操作指示)
        HR/W為高電平,表示從HPI接口讀;HR/W為低電平,表示向HPI接口寫。
        (5) HRDY (輸出準備好)
        (6) HCS,HDS1,HDS2(選通信號)
        當HCS有效,并且HDS1和HDS2中僅有一個有效時,內部觸發信號HSTROBE有效。這三個信號的組合邏輯其實就是片選和讀/寫信號構成的組合邏輯,因此,可直接與主機的片選和讀/寫信號相連。如下圖所示:
        
        (7) HAS (地址輸入選通)
        在TMS320C6421 HPI接口中目前沒有用,連接到邏輯高電平。
        (8) HINT(向主機輸出的中斷)
        三、HPI接口寄存器簡介
        如上所述,主機通過HPI接口對DSP的訪問實際上是通過三個寄存器來實現的,下面就針對這三個專用寄存器進行介紹。
        (1)HPI控制寄存器(HPIC)
        HPIC中每一位都有特定的功能,在對HPI進行訪問的過程中需要特別注意。簡要介紹一下這些功能位的作用。
        ①HWOB(半字順序位)
        如果HWOB=1,第一個半字為最低有效;如果HWOB=0,第一個半字為最高有效。HWOB對地址和數據都起作用,如果采用HPI16模式,在訪問數據或者地址寄存器之前,應該首先初始化HWOB位。
        ②DSPINT(主機產生的Processor-to-CPU中斷,用于HPI啟動方式中將DSP內核從復位狀態中喚醒)
        ③HINT(DSP-to-Host中斷,即通過向此位寫入特定值來產生對主機的中斷)
        (2) HPI地址寄存器(HPIA)
        存放32bit數據,指向將要訪問的DSP地址空間中的地址。
        (3) HPI數據寄存器(HPID)
        在寫操作中存放將要寫入HPIA所指向地址的數據,在讀操作中為HPIA所指向地址中的數據。
        四、HPI接口讀寫時序
        ⑴HPI接口讀時序
        
        ⑵HPI接口寫時序
        
        五、HPI接口硬件設計
        從C6421 HPI寄存器的編址方式可以看出,主機需兩根地址線尋址到HPI接口的控制寄存器、地址寄存器和數據寄存器,因此選擇主機的地址線A29、A28連接C6421 HPI的HCNTL1、HCNTL0。選擇主機的地址線A30連接到C6421 HPI的HHWIL,作為半字指示選擇。HPI的選通由HCS、HDS1、HDS2三根信號線共同作用,最后的HPI使能信號(STROBE)為HDS1異或HDS2后,再與HCS進行與非運算的結果。HCS、HDS1、HDS2信號由FPGA產生。TA為MPC8272傳輸結束標識,HPI口HRDY有效后FPGA向CPU發送TA,保證HPI數據正確讀出。C6416 HPI的HINT信號可以直接連接到主機的IRQ引腳上實現HPI對主機的中斷信號連接,也可通過FPGA連接到主機,使控制更靈活。
        六、地址空間分配
        由于C6421為16位的HPI口,其內部總線為32位,所以每次讀寫要分兩次,一次為高16位,一次為低16位,由HHWIL來選擇(0-First Half Word, 1-Second Half Word),設定HPIC.HWOB = 0(First Half Word =高16位, Second Half Word = 低16位)。C6421的HPI接口映射為MPC8272的4對地址空間,由MPC8272 CS3控制,配置CS3為16位寬的GPCM訪問模式,如下地址分配:
        HPIC:0x0D000000(高16位), 0x0D000002(低16位)。
        HPIA: 0x0D000004(高16位), 0x0D000006(低16位)。
        HPID_FIX: 0x0D00000C(高16位), 0x0D00000E(低16位),C6421地址由當前的HPIA決定。
        HPID_Auto: 0x0D000008(高16位), 0x0D00000A(低16位) C6421地址自動加1。
        七、HPI接口相關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功能很強大,C6421 HPI接口相對于MPC8272來說為慢速外部設備,TA為MPC8272傳輸結束標識,HPI口HRDY有效后FPGA向CPU發送TA,保證HPI數據正確讀出。因此在VHDL程序中設計了狀態機,當HRDY信號有效后就立即結束本次訪問,否則經過一段時間的延遲后強制結束本次訪問,這樣可以避免接口長時間占用總線,影響系統性能。
        八、結束語
        本文使用VHDL語言和FPGA,設計了MPC8272與DSP之間的HPI接口。之所以使用FPGA,是因為在系統中FPGA還包含有其他的功能設計。如果只有MPC8272與DSP之間的HPI接口設計,使用CPLD即可完成,而不必浪費FPGA的資源。
        參考文獻:
        1、TMS320C6421 Fixed-Point Digital Signal Processor datasheet。TI公司提供
        2、TMS320C642x DSP Host Port Interface (HPI) User’s Guide。TI公司提供

      【MPC8272總線與DSP HPI總線接口的FPGA實現】相關文章:

      談DSP HPI總線與MPC8272總線接口的FPGA實現03-08

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

      基于DSP和FPGA的ARINC429機載總線接口板的硬件設計03-18

      PCI總線協議的FPGA實現及驅動設計03-18

      利用ISA總線實現對DSP芯片VC5402的軟配置03-19

      高速PCI總線接口模塊設計03-08

      高速PCI總線接口卡的開發03-18

      基于PCI總線的CAN卡的設計與實現03-18

      USB總線接口芯片CH371及其應用03-18

      主站蜘蛛池模板: 亚洲老熟妇愉情magnet| 青青草免费激情自拍视频| 乐清市| 中文字幕精品亚洲二区| 日女av天堂成人在线| 少妇被爽到自拍高潮在线观看| 96精品免费视频大全| 亚洲中文字幕乱码免费播放| 日韩av一区在线播放| 成人综合亚洲国产成人| 亚洲色欲色欲大片WWW无码| 亚洲乱码中文字幕综合69堂| 98精品国产高清在线xxxx| 久久久精品国产亚洲av日韩| 亚洲欧洲国无码| 91久久国产福利自产拍 | 国产码欧美日韩高清综合一区| 十堰市| 古丈县| 北海市| 徐州市| 淮安市| 一区二区三区不卡免费av| 青岛市| 午夜无码国产18禁| 抚远县| 久久久久国产精品四虎| 亚洲情精品中文字幕有码在线| 呼玛县| 婷婷色在线视频中文字幕| 色婷婷亚洲十月十月色天| 人妖在线网国产一二三四| 亚洲av粉嫩性色av| 国产一区二区三区视频免费在线 | 杭锦旗| 阜平县| 少妇熟女淫荡丰满| 一本色道久久综合亚洲精品蜜臀 | 一本一本久久a久久精品综合| 亚洲国产精品综合久久20| 国内精品国产三级国产a久久|