教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 论文> 其他论文> MPC8272总线与DSP HPI总线接口的FPGA实现

MPC8272总线与DSP HPI总线接口的FPGA实现

上传者:网友
|
翻新时间:2023-08-10

MPC8272总线与DSP HPI总线接口的FPGA实现

论文关键词: DSP HPI MPC8272 FPGA VHDL源代码

一、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 (输出准备好) 当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接口硬件设计

六、地址空间分配 HPIC:0x0D000000(高16位), 0x0D000002(低16位)。

HPIA: 0x0D000004(高16位), 0x0D000006(低16位)。 HPID_Auto: 0x0D000008(高16位), 0x0D00000A(低16位) C6421地址自动加1。

七、HPI接口相关VHDL代码 assign c6421_hasn = 1’B1;

assign c6421_hcsn = cs3;

assign c6421_hdsn1 = wen; reg [7:0] st_ta;

reg tax; wire tax002 = (zzz_cnt==256+

8) ? 0 : 1 ;

wire tax003 = (zzz_cnt==256+

1

6)? 0 : 1 ;

wire tax004 = (zzz_cnt==256+

3

2)? 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 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的资源。

参考文献

2、TMS320C642x DSP Host Port Interface (HPI) User’s Guide。TI公司提供

下载文档

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

网友最新关注

友谊
当我看见......
假如风有颜色
感激妈妈
妈妈的爱
等待放学
我的梦
四季,我写一首诗
福娃迎奥运
童年你不要走
妈妈的翅膀
你是花神最勇敢的种子
爸爸的背
感悟生命的坚强
学校天天放假该有多好
任中经济责任审计大有作为
内部审计参与风险管理的途径及措施
EPC管理缺陷和内部审计探析
加强审计质量管理方法研究
试遣心涛系三农 涉农审计有作为
用审计的眼光看加大鄱阳湖生态旅游区建设
关于新医改政策框架下医院内部审计的探讨
从簿记到审计 现代会计职业的成型
浅谈商业银行信贷业务持续审计
信息技术与审计学课程整合应用及思考
浅析政策执行情况跟踪审计的组织实施
在高职审计学教学中运用案例教学的实践研究
初探当前医院内部审计管理存在问题及对策
创业板公司审计费用与盈余管理实证检验
基于XBRL的审计学教学改革研究
《春晓》教学设计之五
《看电视》教学设计之三
《春晓》教学设计之六
《两只鸟蛋》教学设计之三
《胖乎乎的小手》教学设计之二
《春晓》教学设计之四
《月亮的心愿》第一课时教学设计之一
《胖乎乎的小手》教学设计之一
《胖乎乎的小手》教学设计之三
《看电视》第一课时教学设计之一
《两只鸟蛋》教学设计之四
《两只鸟蛋》教学设计之五
《春晓》教学设计之七
《两只鸟蛋》教学设计之一
《月亮的心愿》教学设计之三