位置:51电子网 » 技术资料 » 通信网络

双异步串口经AT89C2051与TMS320VC5402HPI口通信的解决方案

发布时间:2007/8/28 0:00:00 访问次数:586

    摘要:提出了两个微机串口与DSP处理器(TMS320VC5402)HPI(Host Port Interface)口通信问题的解决方案,该方案采用单片机(AT89C2051)实现数据的串/并、并/串转换,并控制DSP的HPI实现共享总线。给出了硬件连接电路和用FPGA作为总线仲裁器的设计思路,介绍HPI口的操作过程,单片机与微机串口之间通信的硬件设计方法。

    关键词:DSP 单片机 HPI 串行通信 FPGA

本文所介绍的是我所正在研制的卫星CDMA接收机未端DSP与微机串口通信的接口电路。由于CDMA接收机支持两个独立CDMA信道的接收,并将两路解调后的数据分别经串口送至不同的计算机做后续的处理,故接收机需要带两个RS232接口。

微机的异步串口与DSP处理器通信的方法通常有三种,第一种方法是采用异步通信芯片扩展串口,如用TI公司的TL16C550完成数据的串/并、并/串变换。由地TL16C550提供了丰富的控制管脚和应答信号,对其只需设置一些寄存器就可以进行灵活的控制,故编程比较简单,但对其数据的读取或写入则需要用到DSP的数据总线。第二种方法是将DSP的I/O口XF和BIO,或者将DSP的McBSP口用软件模拟成异步串口。用这种方法,虽然DSP与微机串口之间无需串/并变换器件,硬件构成十分简单,但DSP的编程比较复杂,用I/O口线模拟串口需要占用两个定时器资源,并且只有在DSP操作不繁忙的情况下这种方法才可行。第三种方法是用单片机实现数据的串/并、并/串转换。与第一种方法相比较,这种方法增加了对单片机的编程,但单片机可以作为控制器操作DSP的HPI口,对DSP存储器的数据上发可完全由单片机发起,DSP几乎无需作任何操作,也无需用到数据总线。在DSP处理过程复杂、运算量大的情况下,这种方法特别有用。

在本系统中,我们采用的DSP处理器是高性能、低功耗的TMS320VC5402,用以实现系统的MAC层控制和数据的编、解码工作,处理器的工作量很大。另外DSP数据总线需要与作为基带处理器的FPGA芯片(APEGEP20K600E)交换数据,为避免引入额外的控制逻辑实现与数据总线复用,采有单片机控制HPI口的方法实现DSP与双串口的通信。考虑到FPGA芯片的存在及节省成本,没有采用价格贵且需用高级仿真器开发的双串口单片机(如DS80C320),而是采用两片AT89C2051,并借用物理层FPGA的冗长资源作为总线仲裁器来实现同样的功能。

1 TMS320VC5402 HPI口结构

TMS320VC5402上的HPI口是增强型的8bit主机接口(Enhanced 8 bit host port interface),专门用于与主机进行通信,通过它主机可以访问TMS320VC5402片仙16K的RAM空间。这一接口由一个8bit的双向数据总线和不同的控制管脚组成,能够支持按高、低字节传送16bit数据。TMS320VC5402提供三个跟HPI操作相关的寄存器--地址寄存器HPIA、数据寄存器HPID和控制寄存器HPIC。TMS320VC5402只能访问控制寄存器,而主机则对这三个寄存器都可以访问。主机欲随机访问TMS320VC5402的片内RAM,需要先发送一个16bit地址到HPI地址寄存器(HPIA),然后通过数据寄存器(HPID)访问该地址所指向的存储单元。主机欲连续访问一段RAM空间,则要先送该段的自地址到HPIA,然后以地址自动加一的方式访问,即主机每访问一个存储单元后HPIA自动指向下一个单元。

HPI接口还提供了中断逻辑同主机进行软件握手。主机可通过对控制寄存器HPIC的第二位(DSPINT)置1中断DSP芯片;DSP芯片可通过对HPIC的第三位(HINT)置1中断主机,此时HPI的引脚HINT被置为低电平,从而向主机发出中断请求;主机还可设置HPIC的位HINT为1使HINT脚回到高电平,从而清除中断信号。

下面给出HPI口相关管脚说明:

HD0~HD7是8位双向数据线,与单片机P1口相连,用于交换数据。

HCNTL1/0的组合用于选择主机所访问的HPI寄存器,00表明主机访问HPIC;10表明访问HP

    摘要:提出了两个微机串口与DSP处理器(TMS320VC5402)HPI(Host Port Interface)口通信问题的解决方案,该方案采用单片机(AT89C2051)实现数据的串/并、并/串转换,并控制DSP的HPI实现共享总线。给出了硬件连接电路和用FPGA作为总线仲裁器的设计思路,介绍HPI口的操作过程,单片机与微机串口之间通信的硬件设计方法。

    关键词:DSP 单片机 HPI 串行通信 FPGA

本文所介绍的是我所正在研制的卫星CDMA接收机未端DSP与微机串口通信的接口电路。由于CDMA接收机支持两个独立CDMA信道的接收,并将两路解调后的数据分别经串口送至不同的计算机做后续的处理,故接收机需要带两个RS232接口。

微机的异步串口与DSP处理器通信的方法通常有三种,第一种方法是采用异步通信芯片扩展串口,如用TI公司的TL16C550完成数据的串/并、并/串变换。由地TL16C550提供了丰富的控制管脚和应答信号,对其只需设置一些寄存器就可以进行灵活的控制,故编程比较简单,但对其数据的读取或写入则需要用到DSP的数据总线。第二种方法是将DSP的I/O口XF和BIO,或者将DSP的McBSP口用软件模拟成异步串口。用这种方法,虽然DSP与微机串口之间无需串/并变换器件,硬件构成十分简单,但DSP的编程比较复杂,用I/O口线模拟串口需要占用两个定时器资源,并且只有在DSP操作不繁忙的情况下这种方法才可行。第三种方法是用单片机实现数据的串/并、并/串转换。与第一种方法相比较,这种方法增加了对单片机的编程,但单片机可以作为控制器操作DSP的HPI口,对DSP存储器的数据上发可完全由单片机发起,DSP几乎无需作任何操作,也无需用到数据总线。在DSP处理过程复杂、运算量大的情况下,这种方法特别有用。

在本系统中,我们采用的DSP处理器是高性能、低功耗的TMS320VC5402,用以实现系统的MAC层控制和数据的编、解码工作,处理器的工作量很大。另外DSP数据总线需要与作为基带处理器的FPGA芯片(APEGEP20K600E)交换数据,为避免引入额外的控制逻辑实现与数据总线复用,采有单片机控制HPI口的方法实现DSP与双串口的通信。考虑到FPGA芯片的存在及节省成本,没有采用价格贵且需用高级仿真器开发的双串口单片机(如DS80C320),而是采用两片AT89C2051,并借用物理层FPGA的冗长资源作为总线仲裁器来实现同样的功能。

1 TMS320VC5402 HPI口结构

TMS320VC5402上的HPI口是增强型的8bit主机接口(Enhanced 8 bit host port interface),专门用于与主机进行通信,通过它主机可以访问TMS320VC5402片仙16K的RAM空间。这一接口由一个8bit的双向数据总线和不同的控制管脚组成,能够支持按高、低字节传送16bit数据。TMS320VC5402提供三个跟HPI操作相关的寄存器--地址寄存器HPIA、数据寄存器HPID和控制寄存器HPIC。TMS320VC5402只能访问控制寄存器,而主机则对这三个寄存器都可以访问。主机欲随机访问TMS320VC5402的片内RAM,需要先发送一个16bit地址到HPI地址寄存器(HPIA),然后通过数据寄存器(HPID)访问该地址所指向的存储单元。主机欲连续访问一段RAM空间,则要先送该段的自地址到HPIA,然后以地址自动加一的方式访问,即主机每访问一个存储单元后HPIA自动指向下一个单元。

HPI接口还提供了中断逻辑同主机进行软件握手。主机可通过对控制寄存器HPIC的第二位(DSPINT)置1中断DSP芯片;DSP芯片可通过对HPIC的第三位(HINT)置1中断主机,此时HPI的引脚HINT被置为低电平,从而向主机发出中断请求;主机还可设置HPIC的位HINT为1使HINT脚回到高电平,从而清除中断信号。

下面给出HPI口相关管脚说明:

HD0~HD7是8位双向数据线,与单片机P1口相连,用于交换数据。

HCNTL1/0的组合用于选择主机所访问的HPI寄存器,00表明主机访问HPIC;10表明访问HP

相关IC型号

Warning: Undefined variable $stockkeys in G:\website_51dzw\www.51dzw.com\code\tech\view.php on line 152

热门点击

 

推荐技术资料

耳机的焊接
    整机电路简单,用洞洞板搭线比较方便。EM8621实际采... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!