logo资料库

HPI通信协议.docx

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
一、物理层
二、传输层
本协议规定ARM发给DSP的报文称为命令包,DSP反馈给ARM的报文称为应答包,这两种报文物理上都存
ARM和DSP间的通信流程为ARM先向命令区写入命令包,然后利用DSPINT位通知DSP;而DSP处
A.命令包格式及命令区划分
B.应答包格式及应答区地址
三、表示层
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 HPIA HPIDF HPIDA 地址 寄存器功能描述 0x80000000 HPI 控制寄存器 0x80000004 HPI 地址寄存器,指定要访问的 DSP 端的存储器地址 0x80000008 HPI 固定地址访问数据寄存器 0x8000000C HPI 地址自增长访问数据寄存器 其中 HPIC 各位的定义如下表: ARM 可访问位操作功能如下表所示,其它位对 ARM 端为只读,且恒为 0。 功能描述 DSP 写此位向 ARM 发送中断,ARM 写 1 清除中断 位名称 HINT DSPINT ARM 写 1 向 DSP 发送中断 HWOB 16 位 HPI 访问时表示高低半字。 ARM在每次数据交换时,先向HPIA写入要操作的目的地址,通过HPIDF可操作指定地址, 而对HPIDA的访问,将会使地址自动加1。通过这四个寄存器,ARM可访问DSP端的所有存 储空间,而我们指定一个区域用于双方通信。 有关HPI的详细说明请参见TM320C6000 DSP Host Port Interface(HPI) Reference Guide。 第 1 页 共 3 页
二、传输层 1.命令/应答包格式及存放地址约定 本协议规定 ARM 发给 DSP 的报文称为命令包,DSP 反馈给 ARM 的报文称为应答包,这 两种报文物理上都存放在 DSP 端的指定存储区域内,命令包存放的区域称为命令区,应答 包存放的区域称为应答区。命令包须由 ARM 通过 HPI 寄存器写入,应答包虽由 DSP 产生并 通知 ARM,但仍然需要 ARM 主动地去读取,这是由 HPI 口的特性所决定的。 ARM 和DSP 间的通信流程为ARM 先向命令区写入命令包,然后利用DSPINT 位通知DSP; 而 DSP 处理完命令后,如果表示层命令需要应答,则将应答命令包写入应答区域,尔后通 过 HINT 位通知 ARM(中断线 IRQ4),ARM 则到应答区读回应答包。 A. 命令包格式及命令区划分 命令包格式: 命令字 命令参数长度 校验和 命令参数 命令包详细定义表: 名称 命令字 命令参数长度 校验和 命令参数 长度 1 字 1 字 1 字 功能说明 标识命令含义 所带参数长度(0-256) 命令字、参数长度、以及命令参数之累加和。 0-256 字 命令所带参数 其中命令字长度为 4 字节,前三字节固定为“WIS”,最后一字节为命令号,如下表所示。 名称 固定前导 命令号 长度 3 字节 1 字节 内容 字符串“WIS” 命令序号,0~255 命令区地址如下表所示,ARM 将这些地址写入 HIPA 后,通过 HIPDF 或 HPIDA 写入命令包。 名称 命令字 命令参数长度 校验和 命令参数 DSP 端地址 0x82000000 0x82000004 0x82000008 0x8200000C~0x82000408 B. 应答包格式及应答区地址 应答包格式: 应答字 应答参数长度 校验和 应答参数起始地址 第 2 页 共 3 页
应答包详细定义表: 名称 应答字 应答参数长度 校验和 应答参数起始地址 长度 1 字 1 字 1 字 1 字 功能说明 标识应答含义 应答参数长度 应答字、参数长度、以及应答参数起始地址之 累加和。 存放应答参数的起始地址 其中应答字长度为 4 字节,格式如下表所示。 名称 固定前导 应答命令号 执行结果 长度 2 字节 1 字节 1 字节 内容 字符串“AC” 应答命令号,0~255 表示 DSP 对收到的命令包的结果 执行结果用来表示命令的处理结果,包括命令包校验是否正确,执行是否成功,出错原 理等内容,目前先定义几种结果,其他未用值以后可做为扩充。 执行结果值 含义 00 01 02 03-FF 命令包校验错 命令执行失败 命令执行成功 暂保留为错误号 应答区地址如下表所示,ARM 将这些地址写入 HIPA 后,通过 HIPDF 或 HPIDA 读回应 答包,而应答参数需要根据包中给出的参数起始地址和长度重新进行读取,考虑到视频图 像等大数据量的传输,应答参数未固定在应答区内,其存放地址是动态变化的。 名称 应答字 应答参数长度 校验和 应答参数起始地址 DSP 端地址 0x8200040C 0x82000410 0x82000414 0x82000418 三、表示层 1.命令集 表示层定义每一条命令的具体含义、参数长度,是否需要应答以及应答时限等参数,目 前用做实验暂定几条命令,如下表所示。 命令描述 命令号 0x00 0x01 采一帧图像 DSP 是否在线? 参数长度及含义 应答时限 无参数 通道号 50ms 100ms 目前暂时只定义了上述 2 条命令,在此基础上根据实际需要,还可进行扩展。 第 3 页 共 3 页
分享到:
收藏