HPI通讯协议.doc
上传人:sy****28 上传时间:2024-09-14 格式:DOC 页数:3 大小:57KB 金币:18 举报 版权申诉
预览加载中,请您耐心等待几秒...

HPI通讯协议.doc

HPI通讯协议.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

18 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第页共NUMPAGES3页ARM和DSP间HPI通讯协议拟定:2007-7-19此通信协议定义了ARM(AT91RM9200)与DSP(TMS320DM642)之间信息交换的规则。通信协议分为三个层次:No层次协议内容及作用3表示层指定每条命令具体含义、参数、执行时限等参数。2传输层规定数据传递流程、传送区域、数据格式、应答机制。1物理层ARM与DSP机之间的通信介质及其连接,电气功能和规程,确保数据传输正确可靠。一、物理层由于DM642具备32位HPI接口,目前物理层采取32位并行通信方式,通过缓冲器将DM642的HPI接口相应的寄存器映射至ARM外部存储器空间,各寄存器映射在ARM端的具体地址如下表所示,ARM利用这些寄存器可访问DSP的指定存储区域。名称地址寄存器功能描述HPIC0x80000000HPI控制寄存器HPIA0x80000004HPI地址寄存器,指定要访问的DSP端的存储器地址HPIDF0x80000008HPI固定地址访问数据寄存器HPIDA0x8000000CHPI地址自增长访问数据寄存器其中HPIC各位的定义如下表:ARM可访问位操作功能如下表所示,其它位对ARM端为只读,且恒为0。位名称功能描述HINTDSP写此位向ARM发送中断,ARM写1清除中断DSPINTARM写1向DSP发送中断HWOB16位HPI访问时表示高低半字。ARM在每次数据交换时,先向HPIA写入要操作的目的地址,通过HPIDF可操作指定地址,而对HPIDA的访问,将会使地址自动加1。通过这四个寄存器,ARM可访问DSP端的所有存储空间,而我们指定一个区域用于双方通信。有关HPI的详细说明请参见TM320C6000DSPHostPortInterface(HPI)ReferenceGuide。二、传输层1.命令/应答包格式及存放地址约定本协议规定ARM发给DSP的报文称为命令包,DSP反馈给ARM的报文称为应答包,这两种报文物理上都存放在DSP端的指定存储区域内,命令包存放的区域称为命令区,应答包存放的区域称为应答区。命令包须由ARM通过HPI寄存器写入,应答包虽由DSP产生并通知ARM,但仍然需要ARM主动地去读取,这是由HPI口的特性所决定的。ARM和DSP间的通信流程为ARM先向命令区写入命令包,然后利用DSPINT位通知DSP;而DSP处理完命令后,如果表示层命令需要应答,则将应答命令包写入应答区域,尔后通过HINT位通知ARM(中断线IRQ4),ARM则到应答区读回应答包。命令包格式及命令区划分命令包格式:命令字命令参数长度校验和命令参数命令包详细定义表:名称长度功能说明命令字1字标识命令含义命令参数长度1字所带参数长度(0-256)校验和1字命令字、参数长度、以及命令参数之累加和。命令参数0-256字命令所带参数其中命令字长度为4字节,前三字节固定为“WIS”,最后一字节为命令号,如下表所示。名称长度内容固定前导3字节字符串“WIS”命令号1字节命令序号,0~255命令区地址如下表所示,ARM将这些地址写入HIPA后,通过HIPDF或HPIDA写入命令包。名称DSP端地址命令字0x82000000命令参数长度0x82000004校验和0x82000008命令参数0x8200000C~0x82000408应答包格式及应答区地址应答包格式:应答字应答参数长度校验和应答参数起始地址应答包详细定义表:名称长度功能说明应答字1字标识应答含义应答参数长度1字应答参数长度校验和1字应答字、参数长度、以及应答参数起始地址之累加和。应答参数起始地址1字存放应答参数的起始地址其中应答字长度为4字节,格式如下表所示。名称长度内容固定前导2字节字符串“AC”应答命令号1字节应答命令号,0~255执行结果1字节表示DSP对收到的命令包的结果执行结果用来表示命令的处理结果,包括命令包校验是否正确,执行是否成功,出错原理等内容,目前先定义几种结果,其他未用值以后可做为扩充。执行结果值含义00命令包校验错01命令执行失败02命令执行成功03-FF暂保留为错误号应答区地址如下表所示,ARM将这些地址写入HIPA后,通过HIPDF或HPIDA读回应答包,而应答参数需要根据包中给出的参数起始地址和长度重新进行读取,考虑到视频图像等大数据量的传输,应答参数未固定在应答区内,其存放地址是动态变化的。名称DSP端地址应答字0x8200040C应答参数长度0x82000410校验和0x82000414应答参数起始地址0x82000418三、表示层1.命令集表示层定义每一条命令的具体含义、参数长度,是否需要应答以及应答时限等参数,目前用做实验暂定几条命令,如下表所示