翻新时间: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公司提供
下载文档
网友最新关注
- 我的好妈妈
- 小狗
- 晨练
- 爱护环境的小白兔
- 晚霞中的云朵
- 教室里的小客人
- 会治病的啄木鸟
- 我爱春天
- 小草在哭泣
- 我不怕踩虫子了
- 我的家乡
- 回到恐龙世界
- 我的超级理想
- 自画像
- 妈妈的泪花
- 六一儿童节活动安全方案
- 高考安全保卫方案
- 教育系统普法教育工作要点
- 教育教学工作执行方案
- 党性分析个人整改措施
- 大学四年个人目标计划
- 三年大学生涯个人发展规划
- 县第六次人口普查户口整顿方案
- 乡镇廉政建设实施意见
- 小学生迎“六一”儿童节作文竞赛方案
- 关于社会治安综合治理宣传月活动策化方案
- 教师读书学习规划
- 大学新任班长新学期工作规划
- 整治不良风气方案
- 小学教师新学期计划
- 我国军婚保护制度的法理解说(1)论文
- 中国政府体制改革的过去与未来
- 意大利法中违约解除效果实证考察(1)论文
- 天地大舞台——解析义和团运动戏剧性格的启示
- 作为艺术家的易卜生:易卜生与中国重新思考(会员资料)
- 超越主体论文艺学—新整体论文艺学论纲 (会员资料)
- 论我国《公司法》对中小股东权益的保护(1)论文
- 政府的规模与范围(中)
- 市政道路上的井盖致人损害赔偿责任承担问题研究(1)论文
- 民主制度与经济发展的相互关系
- 民事诉讼简易程序比较研究(1)论文
- 理想与人道的二律背反——解读话剧《切·格瓦拉》
- 村庄选举研究的两种进路
- 大众文化·文化殖民·媒介帝国主义
- 依靠直觉进行儿童美术教育的探索
- 《四季》教学设计(第一课时)
- 《比尾巴》教学设计
- 《我选我》教案
- 《小白兔和小灰兔》教案
- 《自己去吧》教学片断及反思
- 《小壁虎借尾巴》教案
- 《要下雨了》教案
- 《阳光》教案(新课标)
- 《秋天的图画》教学设计
- 《四季》教案(新课标)
- 《“红领巾”真好》教案
- 《四个太阳》教学设计
- 《两只小狮子》教案
- 《乌鸦喝水》教案
- 《王二小》教案