DSP课设HPI主机接口应用.doc

上传人:b****1 文档编号:230338 上传时间:2022-10-07 格式:DOC 页数:18 大小:92.50KB
下载 相关 举报
DSP课设HPI主机接口应用.doc_第1页
第1页 / 共18页
DSP课设HPI主机接口应用.doc_第2页
第2页 / 共18页
DSP课设HPI主机接口应用.doc_第3页
第3页 / 共18页
DSP课设HPI主机接口应用.doc_第4页
第4页 / 共18页
DSP课设HPI主机接口应用.doc_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

DSP课设HPI主机接口应用.doc

《DSP课设HPI主机接口应用.doc》由会员分享,可在线阅读,更多相关《DSP课设HPI主机接口应用.doc(18页珍藏版)》请在冰豆网上搜索。

DSP课设HPI主机接口应用.doc

成绩评定表

学生姓名

班级学号

专业

电子信息工程

课程设计题目

HPI主机接口应用

组长签字:

成绩

日期

20年月日

课程设计任务书

分院(系)

信息科学与工程学院

专业

电子信息工程

学生姓名

学号

设计题目

HPI主机接口应用

内容及要求:

1.完成TMS320C5509使用HPI与89S51连接

2.完成DSP对HIP口初始化设计

工作计划与进度安排:

2012年12月31日 选题、查阅资料及编写软件程序(或硬件原理图设计)。

2013年01月01-11日 课内上机调试程序及仿真。

2013年01月01-11日 课外上机调试程序及仿真。

2013年01月01-11日 调试出结果、调试结果验收并写报告。

2013年01月01-11日修改报告及提交报告电子版(修改之后)。

2013年01月01-11日正式提交报告(打印版)及参加第一次答辩。

指导教师(签字):

年月日

分院院长(签字):

年月日

II

沈阳理工大学信息科学与工程学院DSP课程设计报告

摘要

以TMS320C5509为例,介绍了其系列DSP(digitalsignalprocessing)芯片HPI(hostportinterface)口的各个组成部分及其功能,并以89S51单片机作为主处理机,阐述了其与TMS320C509之间实现数据共享的方法,最后通过DSP芯片成功初始化HPI接口,完成了主机与DSP芯片的连接和通信。

关键词:

DSP;TMS320C55x;HPI接口;单片机

目录

1相关知识 3

1.1TMS320C55x开发环境 3

1.1HPI接口 3

2设计任务及目的 4

2.1设计任务 4

2.2设计目的 4

3设计原理 5

3.1HPI-8接口结构 5

3.2HPI-8接口信号和控制寄存器 6

3.3HPI-8基本功能描述 8

4程序清单 10

4.1TMS320C55xHPI接口DSP端程序 10

4.2TMS320C55xHPI接口单片机端程序 12

5结论 15

6参考文献 16

1相关知识

1.1TMS320C55x开发环境

C55x编程可以采用汇编语言,也可以采用C/C++语言,本次编程主要采用汇编语言完成,所以执行效率高。

C55x的软件开发环境是CCSv3.1(CodeComposerStudio),是IT公司推出的用于开发DSP芯片的集成环境,它集编辑、编译、链接、软件仿真、硬件调试、以及实时跟踪功能于一体。

1.2HPI接口

HPI是HOSTPORTINTERFACE的简称。

HPI是一个与主机通信的并行接口,主要用于DSP与其他总线或CPU进行通信。

信息可通过‘C54x的片内存储器与主机进行数据交换。

不同型号的器件配置不同的HPI口,可分为8位标准标准HPI接口、8位增强型HPI接口和16位增强型HPI接口。

TMS320C5402芯片的HPI接口分为HPI8(8位主机接口)和HPI16(16位主机接口)两种,其应用方式大同小异,主要介绍HPI8。

HPI8实际上是一个8位的并行端口,主机通过它可以直接访问DSP片内的一段RAM。

在早期的DSP中,这段公用的RAM是一段2K字的双口RAM(对于TMSVC5402则可以访问所有的片内RAM)。

当主机和DSP同时访问同一地址时,主机优先。

由于TI的DSP芯片都是16位的,而HPI8只有8根数据线,所以数据的传输必须以字节为单位。

在DSP与主机传送数据时,HPI能自动地将外部接口传来连续的8位数组合成16位数后传送给主机。

2设计任务及目的

2.1设计任务

(1)熟悉DSP指令的用法

(2)掌握TMS320C5509的特点

(3)了解HPI接口的原理

(4)掌握单片机与DSP芯片的连接方法

(5)编写HPI初始化程序,在DSP芯片上运行

2.2设计目的

HPI主机接口是DSP芯片内部用于并行通信的一种接口部件,它主要用于将DSP和其他外部总线或CPU进行连接。

HPI接口通过HPI控制寄存器(HPIC)、HPI地址寄存器(HPIA)和HPI数据寄存器(HPID)以及HPI内存区,实现和主机之间的通信。

其主要特点是接口所需要的外围硬件很少,HPI接口单元允许芯片直接利用一个或两个数据选通信号、一个独立或复用的地址总线、一个独立或复用的数据总线连接到微控制器(MCU)上,主机和DSP可以独立地对HPI接口操作,主机和DSP的握手可通过中断方式快速实现。

另外,主机还可以通过HPI接口装载DSP应用程序、接受DSP运行结果、判断或决定DSP的运行状态和工作方式,HPI主机接口为DSP芯片的接口开发提供了一种方便、快捷的方法。

根据HPI接口数据总线的不同,可以分为HPI-8主机接口和HPI-16主机接口。

本次课设要求设计与HPI-8相关的接口程序。

3设计原理

3.1HPI-8接口结构

HPI-8为8位并行口,提供了C55x和外部主机接口。

C55x通过片内的RAM与主机设备交换数据。

HPI-8为从设备,它使主机能够访问C54x内部的存储区。

其接口包括一个8比特的双向数据和各种控制信号。

16为的数据分为高、低两个字节传输,用HBIL信号线来控制传输的是高字节还是低字节。

主机和HPI-8的通信通过专用的地址和数据寄存器完成,对C54x来说,这些区域不能直接读/写。

HPI控制寄存器允许主机和C54x进行读写,包括配置通信协议和控制通信(握手)的比特。

一个简单的HPI-8框图如图2.1所示:

HPI-8在8位外围接口时提供了有效地16位数据传输方式。

方法是将连续发送的字节自动组成16比特字。

当主机用HPI-8传送数据时,HPI-8控制逻辑自动进入C55x片内RAM存取数据,然后C55x在存储空间内进行读/写。

C55x和主机都能访问C55x的片内RAM。

当主机存取时必须同步于C55x时钟,以确保片内RAM读/写正确。

当C55x和主机同时读/写同一存储区域是将产生冲突,这时主机具有优先权,C55xCPU将等待一个时钟周期。

3.2HPI-8接口信号和控制寄存器

HPI-8接口控制信号主要包括以下几类:

HAS:

地址锁存(ALE)或选通输入信号,如不用则接高电平

HBIL:

地址控制输入信号,HBIL=L时,读/写第1字节;HBIL=H是,读/写第2字节。

HBIL和HPI控制寄存器(HPIC)中的BOB位结合使用

HCNTL0,HCNTL1:

地址控制输入信号,供主机选择读/写HPIC、HPIA或HPID

HCS:

HPI选通使能,主机对HPI访问期间,信号HCS要保持低电平

HD0~HD7:

HPI双向三态数据总线

HDS1,HDS2:

读/写数据选通输入信号

HINT:

输出信号,供主机产生中断时使用

HRDY:

输出信号,供主机等待时使用。

当信号为高电平时,主机可进行数据传输;为低电平时,HPI接口忙,主机不可传送数据。

HR/W:

读/写选通输入信号

HPI-8控制字寄存器包括以下几类:

(1)HPI控制寄存器(HPIC):

HPIC为16位寄存器,其高8位和低8位完全相同,各位的功能如下:

BOB:

由主机读/写,如BOB=1,主机读/写的第1字节为低字节,第2字节为高字节;如BOB=0,主机读/写得第1字节为高字节,第2字节为低字节;主机第1次存取HPIA和HPID之前,BOB必须先进行初始化。

DSPINT:

由主机写,写DSPINT=1,C55x产生DSPINT中断;写DSPINT=0,无任何影响。

HINT,主机和C55x均可读/写,该位决定C55x引脚HINT的输出状态。

C55x复位时HINT=0,C55x写HINT=1使HINT变低,可用来中断主机;主机写HINT=1可清除中断。

(2)HPI地址寄存器(HPIA):

HPIA只能由主机直接访问,它包含了当前访问所需的C55x片内RAM地址。

(3)HPI数据锁存器(HPID):

主机通过HPID与HPI内存块交换数据,HPI接口根据HPIA值,有HPI接口控制信号确定是将HPI内存单元值读入HPID,还是将HPID值写入HPI内存单元,读/写过程约需5个C55x时钟周期。

因此,主机读/写周期一般需要大于5个C55x时钟周期。

图3.2给出了HPI-8中3个寄存器的联系和工作情况:

图3.2HPI-8的控制寄存器

3.3HPI-8基本功能描述

外围HPI-8接口可以不需要或只需要很少一部分附加逻辑,就能够与各种主机相连接。

8位数据总线(HD0~HD7)用于与主机交换数据;两个控制输入(HCNTL0和HCNTL1)指示访问哪一个HPI-8寄存器;输入和HBIL一起,通常由主机地址总线驱动。

图3.3给出了HPI-8和主机设备之间的一个简单连接关系:

图3.3HPI-8连接框图

HPI-8使用中断逻辑使得软件的通信“握手”变得容易。

主机通过在HPIC寄存器中设置特定位来中断C55xCPU。

同样,C55x也能够使用HINT输出来中断主机。

C55x和主机都可以通过设置HPIC寄存器的HINT位来产生中断。

主机编程流程图如下:

4程序清单

4.1TMS320C55xHPI接口DSP端程序

typedefstruct

{inthead;//framehead

intlength;//framelength

intfunc;  //functype

intdata[253]; //thedata

}HPIFRAME;

HPIFRAMEhpiinbuf;

HPIFRAMEhpioutbuf;

#pragmaDATA_SECTION(hpiinbuf,".hpibuffer")

#pragmaDATA_SECTION(hpioutbuf,".hpibuffer")

voidmain()

{

charhpidatacnt;

HPIFRAME *hpiinbufptr=&hpiinbuf;

HPIFRAME *hpioutbufptr=&hpioutbuf

c55_init();

ser0inwrcnt=1;

ser0outrdcnt=5;

ser0inrdcnt=5;

ser0outwrcnt=1;

ser0flag=0;

for(;;)

{

if(hpirecflag>=1)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1