积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> 接口设计 >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
视频监控系统中ARM与DSP的HPI接口设计
 
作者:邓健志,程小辉   来源:微计算机信息    点击数:128   更新时间:2008-5-26
您可以添加到网摘 让更多人关注此文章:

    摘要:本文介绍了ARM S3C44B0X与DSP TMS320DM642的主要特点以及HPI接口的原理,提出了一个采用HPI设计ARM与DSP通信接口的方案,该方案应用在基于ARM与DSP的嵌入式视频监控系统的设计上,在两者之间建起一个高速数据通道,进一步提高了视频监控设备的性能。
关键词:嵌入式系统;S3C44B0X;TMS320DM642;HPI主机接口

1 引言


随着网络技术、图像处理技术及嵌入式技术日趋成熟,视频监控技术得到广泛的应用。银行、工厂、政府、学校等部门,都设置有监控系统。尤其是在国际上一系列恐怖事件后,人们更感到监控系统的重要。而且要求视频监控设备有高清晰的视频效果的同时,还能对现场进行实时控制。所以,此类设备不但要有更高的数据处理能力和处理精度,还要有强大的系统控制、管理能力以及高速的网络数据传输速率。


目前,市面上主流的视频监控设备,大致可以分成两类,一是基于通用微处理器,二是基于数字信号处理器DSP。两种芯片在功能上有各自的特点,通用芯片适用于系统控制、管理和信息通讯等,DSP芯片则更适合执行复杂的数字计算、音视频数据处理等。若两种芯片协同工作,就能一定程度上克服各自的不足,更好的发挥他们的优势。基于这个考虑,本文提出了一个通用微处理器(ARM)与DSP的接口设计方案,以实现两者的实时通信。


2 系统概述


2.1 ARM7 S3C44B0X的特点


S3C44B0X是SAMSUNG公司推出的一款16/32位的RISC(Reduced Instruction Set Computer)构架的处理器,它采用的是ARM7TDMI内核,最高工作频率可以达到66MHz。这是一款高性能、低功耗的微处理器,内部集成了丰富的资源,包括:8KB的Cache、RAM、LCD控制器、DMA、UART和IIC总线接口等。主要用于GPS定位系统、无线通信、手持设备、监控系统和车载装置的开发。


S3C44B0X的存储系统支持256MB的空间,划分成各32MB的8部分。系统存储器分配为BANK0~BANK7。可以分别用作外部存储器和LCD、USB等外设的连接。其中,Bank0接FLASH,用于存放系统BIOS。Bank1接FLASH硬盘,用作系统硬盘,构建文件系统。Bank2接USB口,Bank3接LCD模块,Bank6接SDRAM,Bank4、Bank5、Bank7保留。


2.2 DSP TMS20DM642的特点


TMS320DM642(简称DM642)是TMS320C6000系列中性能最好的一款定点DSP,基于美国德州仪器公司开发的Veloci TI第二代高性能超长指令字VLIW(Very Long Instruction Word)构架而设计,芯片采用两级缓存的结构,能够支持一系列功能强大的外设。DM642拥有大量片上资源:64-bit 外部存储器接口、加强型DMA控制器、16/32位HPI接口、IIC总线、GPIO、多媒体卡控制器、USB、多通道音频接口、10/100Mbs以太网、管理数据输入输出模块等,是一款性能优越的多媒体处理器,是设计数字音视频处理系统的首选。


2.3主机接口HPI介绍


HPI(Host-Post Interface)接口是DSP与主机相连接的一个并行通信口,是构建主从式系统,实现主机与从机通信的重要接口。主机通过HPI可以访问DSP内全部的存储空间及地址空间映射的外设,进而控制DSP,实现数据交换。DM642的HPI接口有HPI16和HPI32两种工作方式,在HPI16的方式下,高16位数据端口HD[31:16]还可又用于PCI接口通信。


DM642的HPI接口信号线有:32条主机数据总线,在非复用模式下,数据总线只传输数据信号,而在复用模式下,还可用于地址信号的传输;HR/W_(_表示负逻辑有效)是HPI接口的读/写信号使能;HCS_、HDS1_、HDS2_是片选信号,三者在DSP的内部,经过一个逻辑门,作为数据的读/写控制逻辑;HRDY_是就绪信号,当输出为低电平,表示接口忙,反之,表示可以对接口进行操作;通过控制HRDY_,可以实现主机与DSP的握手通信;HINT_为DSP对主机的中断请求输出;HHWL用于在16位模式下识别高低半字;HAS_是地址选通信号;HCNTL0/1是HPI接口的功能选择位,HCNTL0/1的功能描述如表1。


表1  HCNTL0/1功能描述



















HCNTL[0:1]


功能描述(复用模式下)


00


HPI控制寄存器(HPIC)读/写操作


01


HPI地址寄存器(HPIA)读/写操作


10


HPI数据寄存器(HPID)以自增方式读/写操作


11


HPID读/写操作


HPI寄存器共占用了256KB的内存空间,对应的16进制地址范围是:0X01880000~0X018BFFFF。其中,HPIC的起始地址为0X01880000,HPIA写的起始地址0X01880004,HPIA读的起始地址为0X01880008,其他地址空间保留。在CPU对HPI进行读写操作时,必须正确的设置HPI寄存器。


3 接口设计


3.1 HPI接口读/写时序


读/写时序是实现计算机操作的重要一点,如果操作时序不相符,就会导致读/写数据出错,甚至是操作失败。所以,满足操作时序是实现计算机操作的先决条件之一。DM642的HPI接口操作时间为1.3ns~12ns或大约5个CPU时钟脉冲。S3C44B0X的最高时钟频率可达66MHz(约为15.2ns),由此可知DM642的HPI与S3C44B0X在读/写时序上的满足要求,接口通信可以实现。DM642的HPI32读/写时序如图1,设计接口时,必须遵守该时序。由时序图可知,控制HPI的读/写时序,通过控制HCNTL、HR/W_ 、HSTROBE_、HCS_以及HRDY_这几个信号端口就能实现。




图1 HPI32的读/写时序图                  


3.2硬件设计


在本设计方案中,S3C44B0X和DM642都是32位的处理器,且DM642有HPI32模式。为了充分利用资源,发挥其优势,采用32位模式设计接口。硬件电路如图2所示。




                     图2  硬件接口方块电路图


各引脚连接说明如下:


①HD[31:0]与CPU的数据线D[31:0]相连。在HPI接口的复用模式,32条数据线HD[31:0]除了传输数据外,还需传输地址信号。


②片选信号HCS_接nGCS4。HPI接口映射到保留的系统存储器BANK4,主机通过操作BANK4就能控制HPI。


③因S3C44B0X没有HR/W_信号,所以用A1代替,与之相连。A2、A3接HCNTL0/1,用作接口功能选择。nOE和nWBE分别接HDS1_和HDS2_作为HPI的读/写控制信号输入。


④nEWAIT接HRDY_。由于DM642的HRDY_与nEWAIT的有效逻辑电平相反,所以要通过一个非门连接。EINT1接HINT_,用来DSP向主机发中断请求。


⑤HPI32方式下,HHWL和地址选通信号HAS_无需使用,固定接上拉电阻(高电平)。


3.3 软件设计


主机通过HPI接口访问DSP内部RAM,通过控制寄存器HPIC、地址寄存器HPIA、数据寄存器HPID实现RAM的读/写。ARM主机与DSP从机的通信就是对这几个寄存器的操作。在编写接口驱动时,HPI接口是被看作接到主机RAM的外设,由硬件设计可知,它被映射到BANK4的存储空间(对应的存储器地址是0X08000000~0X0A000000)。


结合时序分析和硬件的设计,可以编写接口驱动。驱动主要包括两部分:首先是HPI寄存器初始化,然后是HPI接口的读/写代码。以下是HPI接口驱动的部分代码。


/* 地址及数据初始化 */


#define BASE_ADDR    0X08000000   // 定义基地址


/* HPIC、HPIA、HPID读写地址的偏移量 */


#define HPIC_WR             0X00


#define HPID_A_WR            0X04


#define HPIA_WR                0X0C


#define HPIC_R                   0X10


#define HPID_A_R               0X14


#define HPIA_R                   0X1C


/* HPI读、写代码 */


unsigned long hpi_read_data (unsigned long addr)


{ unsigned long data;


data=read_data(BASE_ADDR+HPID_R);  // 读取数据


 return(data);  }


unsigned long hpi_write_data (unsigned long addr)


{ unsigned long data;


 set_addr(addr);  // 设置起始地址


 write_data(BASE_ADDR+HPID_WR);  }  // 写入数据


4 结语


       在主从式视频监控系统中,通过HPI接口的设计,实现了S3C44B0X与DM642的高速通信。S3C44B0X运行的HPI读/写程序,通过设置相应的中断控制信号和对HPIC、HPIA、HPID三个寄存器的操作,实现对DM642内存空间的访问,并且可以控制映射到内存空间的数据采集终端及其他外设,从而实现了双核间的数据交换。由此证明,在S3C44B0X与DM642构建的主从式系统中,利用HPI设计的接口电路可以准确、实时的实现两个芯片间的数据通信。  


本文作者创新点:采用HPI32(32位)方式设计主从式系统的通信接口,与HPI16(16位)和HPI8(8位)相比,速度更快,双核的协同工作性能更优。


参 考 文 献


[1]SAMSUNG.S3C44B0X USER`S MANUAL[Z]. http://www.samsung.com


[2]TEXAS INSTRUMENTS.TMS320DM642 USER`S MANUAL[Z]. http://www.ti.com


[3]李岩,荣盘祥编著.基于S3C44B0X嵌入式uCLinux系统原理及应用[M].北京:清华大学出版社.2005


[4]汪春梅,孙洪波编著.TMS320C5000 DSP系统设计与开发实例[M].北京:电子工业出版社.2004


[5]徐铮,刘方.ARM S3C4510B与DSP C5416的接口设计[J].仪器仪表用户. 2005.6.93-94


[6]杨健,张慧慧,于东琴等,一种HPI技术在双机系统通信中的应用[J].微计算机信息. 2006.22.127-129

[1]



相关文章
· 基于 TPS54310的雷达视频信号模拟器的电源设计[15]
· ARM联手IBM等三家公司开发32nm和28nm SOC[27]
· S3C4480X平台上μC/OS-Ⅱ的中断系统设计[38]
· S3C4480X平台上μC/OS-Ⅱ的中断系统设计[56]
· 基于DSP+μC/OS-Ⅱ的励磁系统的研究[46]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
ARM联手IBM等三家公司开发32n
Hitachi Elect
中国芯片供需缺口达七成
西班牙研发出视觉鼠标 眨眼
首条OLED生产线昆山投产 
宇航服电子元器件:航天员的“生命保护
美研发出可卷曲太阳能电池
美国研发嗅觉感受器获新进展 
首尔半导体就日亚(NICHIA)专利
MIPS 科技授权国家集成
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
写给迷茫中的嵌入式新手...
Arm/DSP/FPGA的比较...
Arm/DSP/FPGA的比较...
Arm/DSP/FPGA的比较...
[分享]逆变器的买与用...
[分享]电力系统直流电源装置的...
单片机如何控制TFT真彩色LC...
请教:2051的C程序...
中国为何没有世界级的企业和企业...
AVR的EEPROM,到底怎么...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网