基于PC机并口与DSP的HPI接口通信设计.docx

上传人:b****4 文档编号:5006995 上传时间:2022-12-12 格式:DOCX 页数:13 大小:91.11KB
下载 相关 举报
基于PC机并口与DSP的HPI接口通信设计.docx_第1页
第1页 / 共13页
基于PC机并口与DSP的HPI接口通信设计.docx_第2页
第2页 / 共13页
基于PC机并口与DSP的HPI接口通信设计.docx_第3页
第3页 / 共13页
基于PC机并口与DSP的HPI接口通信设计.docx_第4页
第4页 / 共13页
基于PC机并口与DSP的HPI接口通信设计.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

基于PC机并口与DSP的HPI接口通信设计.docx

《基于PC机并口与DSP的HPI接口通信设计.docx》由会员分享,可在线阅读,更多相关《基于PC机并口与DSP的HPI接口通信设计.docx(13页珍藏版)》请在冰豆网上搜索。

基于PC机并口与DSP的HPI接口通信设计.docx

基于PC机并口与DSP的HPI接口通信设计

学号09750214

天津城市建设学院

DSP原理及应用

设计说明书

基于PC机并口与DSP的HPI接口通信设计

 

起止日期:

2012年12月17日至2012年12月22日

 

学生姓名

崔开

班级

09电气2班

成绩

指导教师(签字)

 

控制与机械工程学院

2012年12月22日

天津城市建设学院

课程设计任务书

2012—2013学年第一学期

控制与机械工程学院学院电气工程及其自动化专业09电气2班级

课程设计名称:

DSP原理及应用

设计题目:

基于PC机并口与DSP的HPI接口通信设计

完成期限:

自2012年12月17日至2012年12月22日共1周

设计依据、要求及主要内容(可另加附页):

一、课程设计的目的

通过本课程设计,锻炼学生查阅资料、方案比较、运用知识的能力。

使学生掌握C54系列DSP芯片的结构、原理和典型应用,并且能够熟悉DSP的开发流程和基本的设计方法,既巩固所学的基础理论知识,又为学生日后从事开发设计奠定基础。

二、课程设计的内容及要求

主机接口HPI是一种高速、异步并行接口,本次设计要实现TMS320C54X通过HPI与PC机并行通信,完成:

1、设计相关硬件电路。

2、通信软件设计。

3、书写设计说明书

三、参考资料:

1、吴冬梅张玉杰北京大学出版社DSP技术及应用

2、戴明桢周建江北京航天航空大学出版社TMS320C54XDSP结构、原理及应用

3、王安民陈明欣清华大学出版社TMS320C54XXDSP实用技术

4、苏涛.DSP实用技术.西安:

西安电子科技大学出版社

5、米根锁,王瑞峰.用DSP的主机接口HPI实现DSP与PC机间通信[J].自动化与仪器仪表,2005,31(6):

75-76.

指导教师(签字):

批准日期:

年月日

教研室主任(签字):

 

摘要:

以TMS32C542为例,介绍了其系列DSP(digitalsignalprocess—ing)芯片HPI(hostportinterface)口的各个组成部分及其功能,并以AT89C51单片机作为主处理机,阐述了与TMS320C542之间实现数据共享的方法,成功地解决了主处理机通过HPI接口对DSP内部数据进行在线修改和实时监控的问题。

最后给出了如何用HPI口实现程序的加载引导,以提高程序运行速度的方法。

关键词:

TMS320C54X;DSP;HPI口;

一、总体设计方案

DSP作为一种先进的可编程处理器,近几年来应用极其广泛。

其中,TMS32OC54X是TI公司推出的定点系列数字信号处理芯片,它具有运算速度高、CPU结构优化、功耗低和智能化外设等特点,特别适用于实时嵌入式系统的开发。

它已成为数字产品设计中低成本、低功耗、高性能的数字信号处理芯片的首选,在便携式仪器、消费类电子、医疗设备等领域得到广泛的应用。

但我们在学习中发现TMS320C54X系列芯片存在2个应用问题:

①DSP应用系统一旦开发完成投入使用后,再想对DSP内的数据进行监控,或者在线修改很不方便,不管是接串口,还是接I/O口都要占用DSP的硬件资源,同时软件的开销也非常大。

②在DSP扩展程序/数据存储器时,FLASH因其烧写方便而较为常用,但这类器件数据存取速度慢,难以满足DSP系统高速运行的要求。

这也是限制TMS320C54X广泛应用的一个因素。

此外,TI的TMS320C54系列DSP芯片内部提供了标准的8位HPI主机接口,用来与主设备或者主处理器接口,在通过HPI口和主机通信的过程中,完全没有硬件和软件的开销,而由DSP自身的硬件协调冲突,从而不会打断DSP正常程序的运行,且利用HPI口,还能成功地进行程序加载引导。

传感器采集到的模拟信号经过滤波放大后,由模/数转换器转换成相应的数字信号,再由DSP(TMS320C54x)进行数字信号处理,将处理后的数据通HPI(主机接口)传送到单片机(C8051F020)中,单片机内嵌入TCP/IP协议,它主要负责数据的远程通信,完成网络数据的拆包与主机接口数据的打包。

单片机通过并行接口与以太网控制器连接,以中断方式实现并行通信。

以太网控制器接收到网络传输到的数据后,通过MAC比较、CRC校验后,存到接收缓冲区;收满一帧后,以中断方式通知单片机。

单片机对接收到的数据进行判断,如果是UDP数据包,则检查IP地址和端口号,如果正确则接收数据包,并解包,然后将数据部分发送至DSP。

反之,如果接收到DSP发送来的数据,则将数据按照UDP协议格式打包,然后送到以太网控制器中的发送缓冲区,传输到网络上。

TMS320C54x系列DSP与PC机通信的方式有两种:

一种是利用DSP的主机接口HPI与PC并行口连接,由软件来设定通信波特率和握手方式。

另一种方式是通过专用的异步通信芯片来实现,它可以实现DSP与PC机的高速数据通信。

本次设计主要采用第一种方式来实现。

图1硬件系统框图

二、硬件系统设计

通过TMS320C5416DSP的HPI接口与C8051F020单片机连接可以实现CPU间的级连,使系统达到双CPU的处理速度。

硬件连接如图2所示。

图2TMS320C54X与C8051F020的连接

以TMS320VC54x(简称为54x)包含的增强型HPI-8接口为例,它与外部主机或微处理器的连接,其具有单独的8根数据线HD0~HD7和10根控制线。

控制信号的时序逻辑。

主机主动通过HPI口访问DSP,除了对主机发中断(通过置HPIC寄存器的HINT位,可以使HINT线有效)或清除主机发来的中断(通过清HPIC寄存器的DSPINT标志)需要DSP干涉外,54x的CPU几乎不用进行其他操作,片内的DMA通道会自动辅助完成RAM区和HPI数据寄存器的数据传输。

主机由HCNTL0/1线来确定选择HPI的某个控制寄存器。

通过对这4个寄存器的访问,就可以在所设安全机制的允许范围下读/写DSP的所有或部分片内RAM。

由于DSP最小的存储单位是字(16位),因此对于HPI-8,每个的传递必须要有2个传递周期才能完成。

HBLL信号用于区分传递的字节是当前字的第一字节还是第二字节。

通过设置HPIC寄存器的BOB位,可以决定第一字节是这个字的高字节还是低字节。

通过HPI实现程序下载属于54x程序加载的五种途径之一。

在需要与主机连接的应用设计中,采用HPI程序加载方式可以使电路设计简化,省去外部并行或串行的ROM或FLASH程序存储器。

DSP的主机接口有两种工作方式,共用寻址方式(SAM)和仅主机寻址方式(HOM)。

DSP和单片机都可以访问片内存储器,当单片机与DSP访问冲突时,单片机有优先权,DSP则等待一个周期。

单片机先向DSP写入控制字,设置工作模式,然后将访问地址写入HPIA,再对HPID进行读写,即可读出和写入指定的存储单元。

由HBIL、HC2NTL1、HCNTL0区分16位数据的高、低字节。

将单片机的低三位地址线A2、A1、A0分别接到HBIL、HCNTL1、HCNTL0上。

单片机向DSP存储器写数据的部分代码如下:

;单片机向HPIC写控制字0000H0000000

movDPTR,#4000H

movA,#00H

movx@DPTR,A ;第一字节,HCNTL1/0=00,HBIL=0

movDPTR,#4004H

movA,#00H

movx@DPTR,A ;第二字节,HCNTL1/0=00,HBIL=1

;向HPIA寄存器写要访问的地址1000H

movDPTR,#4002H

movA,#10H

movx@DPTR,A ;第一字节,HCNTL1/0=10,HBIL=0

movDPTR,#4006H

movA,#00H

movx@DPTR,A ;第二字节,HCNTL1/0=10,HBIL=1

;向HPID寄存器写数据1234H

movDPTR,#4001H

movA,#12H

movx@DPTR,A ;第一字节,HCNTL1/0=01,HBIL=0

movDPTR,#4005H

movA,#34H

movx@DPTR,A ;第二字节,HCNTL1/0=01,HBIL=1

C8051F020单片机和DSP芯片上有丰富的片上资源。

C8051F020芯片上有可编程增益放大器的ADC,可供扩展;可程控更新的DAC;64kB在系统可编程FLASH存储器;外部存储器接口,SPI、SMBus和UART串行接口等,方便扩展键盘、LCD液晶显示屏等外围设备。

TMS320C54xDSP提供了McBSPs(多通道缓冲串口),允许与其他的54x设备、编解码器等进行直接接口;包括6通道的DMA控制器,用于执行独立的数据传输。

因此选择这样的SOC(片上系统)作为该智能仪器的网络接口的核心器件,使得该接口具有广泛的扩展功能。

TMS320C5416芯片介绍

TMS320VC5416是TI 新一代16 位定点数字信号处理器,它的微处理器采用修正的增强型哈佛结构,操作速度可达160MIPS 。

片内有CPU、8条总线、RAM、ROM及片内外设等硬件配置。

以及高度专业化的指令系统,使其具有集成度高、扩展性好、处理功能强、功耗低等优点,可以满足众多领域的适时性处理要求等特点。

目前,TMS320C5416都有C语言和汇编语言开发工具,这使得开发DSP程序更加方便和高效。

在某些情况下使用C语言会比较好,但是有时就需要用汇编语言,这时我们就可以采用C语言和汇编语言的混合编程方法来实现,以达到最佳地利用DSP芯片软硬件资源的目的。

在CVDD为核心CPU是电源的同时,DVDD为输入/输出接口提供电源。

VSS既是提供输入/输出接口电源又是CPU电源。

图3TMS320C5416芯片引脚图

三、软件系统设计

在硬件设计的基础上,从HPI到PC并行端接口的软件设计可以分为两部分:

引导装载阶段和核心阶段。

通过实例,核心过程集中了数据传输的几种情况主要包括:

1、通信协议:

数据从程序存储区传输到PC;

数据从数据存储区传输到PC;

数据从PC传输到程序存储区;

数据从PC传输到数据存储区;

2、程序的执行:

在一个应用中并不是上面的几种传输情况都是必需的,但其中通信协议是必须的程序,因为主机和DSP芯片之间只有依靠该协议才能交换信息,如执行程序的命令、起始地址、传输数据的数量等。

下面是用TMS320C54x汇编语言实现上述的核心软件部分。

程序主要由主程序、DPM、DDM、DLD、DLP、DMPREG、HOSTACK和EXECUTE等模块组成,各种模块的作用如下。

(1)DPM:

数据从程序存储区传输到PC。

(2)DDM:

数据从数据存储区传输到PC。

(3)DLD:

数据从PC传输到程序存储区。

(4)DLP:

数据从PC传输到数据存储区

(5)DMPREG:

保存环境到RAM中的系统堆栈。

(6)HOSTACK:

主机已经确认任务结束。

(7)EXECUTE:

从给定的地址开始执行程序。

 

 

图4主程序流程图

四、心得体会

这次的课程设计,从开始接到论文要求到题目的实现,再到论文文章的完成,我学到了很多知识也有很多感受,我开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己的作品一步步完善起来,每一次改进都是我学习的收获,每一次试验的成功都会让我兴奋好一段时间。

当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。

我相信其中的酸甜苦辣最终都会化为甜美的甘泉。

 

五、参考文献

[1]TMS320C54xDSKplusUser'sGuide.TexasInstrument.,October.1996

[2]戴明桢周建江.TMS320C54xDSP结构、原理及应用[M].北京:

北京航空航天大学出版社,2001.67-72.

[3]王士元.C高级实用程序设计[M].北京:

清华大学出版社,1996

[4]王旭,何友,黄永峰.2001.IP电话网关的语音压缩数据处理.电子技术应用,2001(6):

1-5

[5]沈漫源,顾江敏,徐佩霞.2000.新一代定点DSP在网络电话系统中的应用.电讯技术,2000

(2):

1-5

[6]罗华,袁祝新.2001.VoIP关键技术及应用.MODENCOMPUTER2001(10):

1-3

[7]陈启祥,张明武.2000.IP电话系统结构分析与设计.计算机工程,27(6):

1-3

[8]施寒潇,朱巧明,吕强.2002.基于Internet的语音交互系统的设计和实现.电子工程师,28(3):

1-3

 

六、附录

附录1

.deftmp,buttptr,scratch,command,starded,length,dump

.defmain,start,hack,lddm,ldld,ldlp,ldpm,exec

.defspecial,trapx

.bssbuttptr

.bsstmpl

.bsstmpl

.bssscratch.1

.bssusp.1

.bssblank.3

.bssSTACK.12

.bssTMPSTK.12

.bssPC.1

Command.usect”COMMS”,512.1

Statadd.setcommand+1

Length.setcommand+2

Dump.setcommand+3

HOSTACK.macro

Hack

Ldmhpic,a

And#08h,a

Bchack,anep

Ret

.endm

DPM.MACRO

LDstatadd,0,a

Mvdmlength,ar,7

Stm#dump,ar5

Nop

Nop

loop:

reada*ar5+

add#1.0.a

banzloop,*ar7

stm#0ah,hprc

Callhack

Ret

.endm

DLP.macro

Ldstartaadd,0,a

Mvdmlength,ar7

Stm#dump,ar5

Nop

Nop

Loop:

writa*ar5+

Add#1,0,a

Banzloop,*ar7-

Stm#0ah,hpic

Callhack

.endm

DMPREG.macro

Trapx

Ssbxintm

Pshtnbl

Ldmsp,b

Stm#STACK+12,SP

PSHMST0

PSHMST1

Pshmtim

Pshmar5

Pshmar6

Pshmar7

Pshmag

Pshmah

Pshmal

Stlmb,sp

Nop

Nop

Popmbl

Ld#0,dp

Popmal

StlA,PC

Ldmifc,a

Or#0204h,0.a

Stlma,ifr

Ld#command,dp

Stm#0ah,hpic

.endm

EXECUTE.macro

Popmal

Ldstartadd,0,a

Nop

Pshmal

Ld#0,dp

Ldmsp,a

Stla,usp

Stm#STACK+3,sp

Stm#0ffffh,ifr

Popmal

Popmah

Popmag

Popmar7

Popmar6

Popmar5

Popmtim

Popmst1

Popmst2

Nop

Nop

.endm

HPINT

.bsstrap

.space2*16

Startssbxintm

Ld#0,dp

Stm#0fffh,ift

Stm#0200h,imr

St#0000h,72h

St#2a00h,71h

Rsbxsxm

Stm#TMPSTK+12,SP

Ld#1020H,0,A

STMA,PMST

Stm#0swwar

Callhack

Stm#0ah,hpic

Ld#command,dp

Redo

Asbxintm

Rsbxxf

Idmifr,a

Main

Idmifr,a

Or#0204h,0,a

Stlma,ifr

Mvdmcommand,ar6

Nop

Nop

Nop

Lddmbanzldpm.*ar5-

DDM

Ldpmbanzldld,*ar5-

DPM

Ldldbanzldlp,*ar5-

DLD

Ldlpbanzexec,*ar5-

DLP

Execbanzspecial,*ar5-

EXECUTE

HOSTACK

TrapDMPREG

附录2

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

当前位置:首页 > 求职职场 > 简历

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

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