HPI 口提供给主机端访问的寄存器只有4个,通过HCNTL[1:0]选择.
表1 HPI寄存器访问选择
由于在复用模式下数据线通常只有寄存器宽度的一半,所以一个完整的数据访问由高低半字两次访问组成,由HWIL 信号控制,HWIL 信号必须是先低后高。通常将HWIL 和HCNTL[1:0]接在主机的地址线上,将4 个寄存器映射为主机端的8 个内存单元,下表中的地址线连接方法将8 半字寄存器映射到主机的8 个连续的内存单元。这里的地址线是用来选择HPI 的寄存器,与非复用模式下的地址线直接访问DSP 的内存空间是完全不同的作用。
表2 HPI寄存器地址映射
4. HPI寄存器功能说明
HPIC (HPI Control Register)
HPI 控制寄存器HPIC 的位图如表3 所示,C6000 系列DSP 的HPI 寄存器是32 位的,也只有低16 位有效,与C5000 系列DSP 的HPIC 寄存器定义的功能保持一致。不同版本的HPI 接口的HPIC 位定义的主要不同之处在于软件握手HRDY 位的有无,其它位名称可能存在细小差异,但功能定义都是一样的。
表3 HPI Control Register
主机在对HPI 进行访问前可以通过HPIC 配置字节序(HWOB)和地址寄存器模式(DUALHPIA)。默认的配置为HWOB=0,即先访问高半;DUALHPIA=0,即单地址寄存器模式,读和写操作使用同一个HPIA;通常都采用默认的HPIC 寄存器配置。
HWOB 与硬件信号HWIL 是没有联系的,HWIL 信号必须保证先低后高分别访问两个半字单元。至于先访问一个字当中的高或低半字,是由HWOB 控制的。