HPI讯协议.docVIP

  • 13
  • 0
  • 约1.01万字
  • 约 4页
  • 2017-06-13 发布于河南
  • 举报
HPI讯协议

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的指定存储区域。 名称 地址 寄存器功能描述 HPIC 0HPI控制寄存器 HPIA 0HPI地址寄存器,指定要访问的DSP端的存储器地址 HPIDF 0HPI固定地址访问数据寄存器 HPIDA 0x8000000C HPI地址自增长访问数据寄存器 其中HPIC各位的定义如下表: ARM可访问位操作功能如下表所示,其它位对ARM端为只读,且恒为0。 位名称 功能描述 HINT DSP写此位向ARM发送中断,ARM写1清除中断 DSPINT ARM写1向DSP发送中断 HWOB 16位HPI访问时表示高低半字。 ARM在每次数据交换时,先向HPIA写入要操作的目的地址,通过HPIDF可操作指定地址,而对HPIDA的访问,将会使地址自动加1。通过这四个寄存器,ARM可访问DSP端的所有存储空间,而我们指定一个区域用于双方通信。 有关HPI的详细说明请参见TM320C6000 DSP Host Port Interface(HPI) Reference Guide。 二、传输层 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端地址 命令字 0命令参数长度 0校验和 0命令参数 0x8200000C~0x8 应答包格式及应答区地址 应答包格式: 应答字 应答参数长度 校验和 应答参数起始地址 应答包详细定义表: 名称 长度 功能说明 应答字 1字 标识应答含义 应答参数长度 1字 应答参数长度 校验和 1字 应答字、参数长度、以及应答参数起始地址之累加和。 应答参数起始地址 1字 存放应答参数的起始地址 其中应答字长度为4字节,格式如下表所示。 名称 长度 内容 固定前导 2字节 字符串“AC” 应答命令号 1字节 应答命令号,0~255 执行结果 1字节 表示DSP对收到的命令包的结果 执行结果用来表示命令的处理结果,包括命令包校验是否正确,执行是否成功,出错原理等内容,目前先定义几种结果,其他未用值以后可做为扩充。 执行结果值 含义 00 命令包校验错 01 命令执行失败 02 命令执行成功 03-FF 暂保留为错误号 应答区地址如下表所示,ARM将这些地址写入HIPA后,通过HIPDF或HPIDA读回应答包,而应答参数需要根据包中给出的参数起始地址和长度重新进行读取,考虑到视频图像等大数据量的传输,应答参数未固定在应答区内,其存放地址是动态变化的。 名称 DSP端地址 应答字 0x8 应答参数长度 0校验和 0x82000414

文档评论(0)

1亿VIP精品文档

相关文档