版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、HPI 接口在 TI DSP 中的应用及常见问题分析简介HPI 接口是 TI 为处理器之间直接互连通讯定义的一种异步接口,大多数 TI DSP 芯片上都有HPI接口。HPI接口是从(Slave)端口,接在主机的扩展内存总线 上,DSP不能通过HPI向主机(Host)的访问,只能被主机 读写。两个DSP的 HPI接口之间不能通讯。两个DSP之间互连,可以将一个DSP (从)的HPI接到 另一个DSP (主)的扩展内存接口(EMIF)上.HPI 工作模式不同系列DSP上的HPI接口版本有所不同,区别体现在DSP对HPI的控制上, 如C6727上的UHPI可通过寄存器使能与关闭HPI接口,对主机访问
2、DSP内存空 间的控制,以及对HPI接口信号的功能复用上。但从主机访问的角度,HPI的工 作模式分为:复用模式(Multiplexed- Mode)和非复用模式(Non-multiplexed-Mode)。复用模式下没有地址线,主机访问DSP的地址信息是以数据方式送到HPIA (HPI 地址寄存)。从硬件信号的角度,地址,数据信号是由同一组数据线传递, 所以称为复用模式。非复用模式的数据线与地址线是分开的,与内存接口连接相似。非复用模式 不需要操作HPIA寄存器,主机访问的地址信息通过地址总线直接送给HPI.所有的HPI接口都支持复用模式,但不是所有芯片的HPI接口都支持非复用 模式(参考相应
3、的芯片手册确定是否支持)。除了有无HPIA的操作区别外,两 种模式的操作没有区别。因为非复用模式的操作是复用模式操作的子集,为方便 起见,本文以复用模式展开讨论。HPI 硬件信号连接HPI 接口复用模式连线如图 1 所示,根据在应用当中的必要性分为:必要的, 和可选的两组信号。可选的信号以虚线表示。DSPALEriHCSBEALEHR-WHDS1HDS2HSTROBHItDYHINTHDO:nHCN7I江gHHWTLData StrobesHostAddressDSPALEriHCSBEALEHR-WHDS1HDS2-half word1001EPIC second half word5T5H
4、PID first half word迪址自增揍式3011HPID swond half word4100HPIA fir虫 half word1HPLA second half word6110HPID fii5t half word地址卄自增模式7it1HPED second half wordHPI 寄存器功能说明HPIC (HPI Control Register)HPI控制寄存器HPIC的位图如表3所示,C6000系列DSP的HPI寄存器是 32位的,也只有低16位有效,与C5000系列DSP的HPIC寄存器定义的功能保 持一致。不同版本的HPI接口的HPIC位定义的主要不同之处在于
5、软件握手HRDY 位的有无,其它位名称可能存在细小差异,但 功能定义都是一样的。表 3:HPI Control Register151211109Rjeseived| HPIASELRjesmied| DUALHPIAHBOBSTATR-0R/WO艮昭0RAMR-076 543710HPIRSTRjemervedFETCHHRDYHINTDSPINTHWOBR-lli R-?h R.-W-0 R-iR.W- FL-W-0R-W-0RAV1C-主机在对HPI进行访问前可以通过HPIC配置字节序(HWOB)和地址寄存器 模式(DUALHPIA)。默认的配置为HW0B=0,即先访问高半;DUALHP
6、IA=O,即单地 址寄存器模式,读和写操作使用同一个HPIA;通常都采用默认的HPIC寄存器配 置。HWOB与硬件信号HWIL是没有联系的,HWIL信号必须保证先低后高分别访问 两个半字单元。至于先访问一个字当中的高或低半字,是由HWOB控制的。HPIA ( HPI Address Register)物理上存在HPIAR,HPIAW两个地址寄存器。HPIAR是读操作地址寄存器; HPIAW是写操作地址寄存器。由HPIC的DUALHPIA位来决定是采用双地址寄存器 模式还是单地址寄存器模式。如果采用双地址寄存器模式,在对HPIA操作之前, 通过设置HPIC的HPISEL位选择下一个要访问的HPI
7、A.通常为了简化在读写操作 转换时对HPIC的操作,选用单地址寄存器模式。HPIA的地址信息在不同系列DSP上有所不同:在 C5000 上,数据空间, I/O 空间只能按 16 位字寻址,程序空间按字节寻 址。HPI的DMA访问属于I/O空间,HPIA的值代表16位字 地址。如主机端要访 问DSP内存字节地址0 x100,则要往HPIA写的地址值是0 x80.在用HPI启动时, 要注意DSP代码是按字节地址链接的,即代码段的地址是字节地址,主机端要将 代码段的地址信息除 以 2再送到 HPIA.在C64 上, HPIA的值代表字节地址,但是HPI访问的数据是32位的,所以 HPI会忽略HPIA
8、地址值的低两位。在C64+的DSP 上, HPIA代表32位字地址,HPI会将字地址左移两位转换成 字节地址,主机若要访问DSP字节地址0 x100,则要赋值HPIA为0 x40.HPID (HPI Data Register)主机通过HPI对DSP的内存访问是间接访问,主机只能访问HPID,HPID与 DSP内存之间是通过HPI专属的DMA进行数据搬运的。如图3所示。图 3:HPI 读写数据流HPID的访问分为自增模式和非自增模式。在自增模式下,访问HPID后,HPIA 会自动增加指向下一个字地址,在连续访问时,自增模式因为减 少了主机对 HPIA的操作,可以增加HPI数据访问的吞吐率。非自
9、增模式下访问HPID后,HPIA 的值保持不变,主机需要更新HPIA来访问下一个地址。在写操作时,主机把数据写到HPID,HPI将第二个半字的数据通过HSTROBE 的上升沿锁存到HPID后,将HRDY置为忙状态,并启动HPI DMA将HPID的内容 搬到HPIA所指向的内存单元,然后清除HRDY指示可以进行下一次操作。在读操作时,在第一个HSTROBE的下降沿,HPI采样到HR/W为读命令,则 将HRDY置为忙状态,启动HPIDMA将HPIA指向的内存单元的数据搬到HPID,清 除 HRDY 忙状态,主机端方可结束总线访问周期,锁存数据线上的有效数据。HPI 操作流程主机对 HPI 的一次总
10、线访问周期为分三个阶段:主机发起访问, HPI 响应, 主机结束访问周期。主机发起访问:即对HPI寄存器的读,或者写命令。主机送出的硬件信 号为 HSTROBE (由 HCS, HDS1/2 产生),HR/W,HCNTLO/1,HWIL,以及 HD0:n.HPI 在HSTROBE的下降沿采样控制信号HR/W,HCNTL0 /1,HWIL判断主机的操作命令。HPI 响应: HPI 在 HSTROBE 的下降沿采样控制信号,根据控制信号做出相 应的响应。如果是写(HR/W为低)命令,则在HSTROBE的上升沿将数 据线上的 信号锁存到HCNTL0/1和HWIL指向的寄存器。如果是读命令(HR/W为
11、高),如 果是读HPIC,或者HPIA寄存器,HPI将寄存器的值直接送到数据总线上;如果 读HPID,HPI先将HRDY置为忙状态,HPI DMA将数据从HPIA指向的内存单元读 到HPID,再送到数据线上,并清除HRDY忙状态,在读HPID后半字时,数据从寄 存器直接送到数据总线上,不 会出现HRDY信号忙状态。主机结束访问周期:对于写操作,主机将数据送出后,只要满足芯片手 册中HPI对HCS的最小宽度要求,即可结束访问周期。对于读HPID操作,要等 HRDY信号由忙变为不忙,主机才能结束访问周期。两次连续的HPI操作的间隔, 在芯片手册的HPI时序参数表里有要求,最小间隔为两个HPI功能模
12、块时钟周 期。HPI 常见故障案例分析在 HPI 应用调试过程中,常遇到的问题分为:写数据不成功,读数据不正确, HRDY常高。这些问题通常都是由于时序不正确造成的,下面结合实际应用当中 的案例进行分析。写数据不成功案例的硬件连接如下:DSP HRDYDSP HAS DSP HRDYDSP HAS ,kR11II-厂|TNIS関 14DV3.2VDSP HHWILTh4:U19BDSP EWZL R3DSPAK1.1 -DSP EWZL R3DSPAK1.1 -3 arxTwkKDSP EKDYP4dsFeasTTDSP OSSIARMIT HYPERLINK l bookmark2 o Cu
13、rrent Document arx-CrdITARM A2ITARM A?Rl-HHWIL PLRDY HINTFERAME HF.-W.PCBE2 HRDYTIRDY HS:PPAR HCSTPERJ HDSl/PSERB. HDS2CBE1 HChTLOTSTO? HCN1L1-PDEVSEL首先关注核心信号 HSTROBE 由 DSP_CS,ARM_WR (HDS1), ARM_RD (HDS2)产 生,从下面时序图可以看出 ARM_WR 的下降沿是最后产生的,所以写操作时 HSTROBE 的下降沿反应的是 ARM_WR 的下降沿。写 HPIC 的时序截图如下:写 写 HPIC 的时序
14、截图如下:写 HPID 的时序截图如下:两个时序图显示主机送出的数据111b在HSTROBE (ARM_WR)的下降沿后, 很快被改变成其它值000b.在写HPID的时序截图中,第一个HSTROBE的下降后, HPI送出HRDY信号,然后数据线被改变,首先判断HPI对主机的命令做出了响 应,通过HRDY信号的出现时机,说明HPI判断这是一个读操作,可以判断为 HSTROBE的下降沿采样HR/W信号不正确。从硬件连接来看,HSTROBE (HR/W)要米样HR/W,HCNTLO/1来判断主机命令, HR/W的与HSTROBE为同一信号源,且同为下降沿,HR/W与HSTROBE的下降沿之 间的se
15、tup时间不够,采样HR/W的电平状态出现误判,认为是高电平读命令, HPI对读命令的响应则是在第一个HSTROBE的下降沿之后送出HRDY信号,并在 HRDY 之后, HPI 送出数据到总线上。对于该问题,需要对参与HSTROBE逻辑译码的HR/W信号的下降沿做延时处 理,可在逻辑电路如CPLD或FPGA里实现,以确保HSTROBE的下降沿采样到稳定 的 HR/W 电平。读数据不正确通常表现为读读HPIC,HPIA正常,但读HPID不正常,前半字为0,后半字正 确,对同一个地址读两次,第二次的数据完全正确。在案例中,用示波器观察HCS与HRDY之间的时序关系,发现HCS的上升沿 在HRDY的
16、上升沿之前,即主机在HPI数据有效之前结束了访问周期。HRDY的上 升沿其实是因为 HCS 的结束而拉高的,并非数据真正有效。用户由于没有在硬件上将HRDY与主机PowerPC的TA信号互连,没有硬件握 手机制,于是从软件配置上加大主机的总线访问周期,即增加HCS的宽度,故障 现象没有变化。原因分析:读HPID与HPIC,HPIA时序不同,读HPID操作需要HPI DMA从 HPIA所指向的地址读数据到HPID,会有时间上的延时。而读HPIC和HPIA直接从 寄存器读数据,没有延时,所以读HPIC,HPIA是正 确的。在读HPID时,HPI会 在第一个HSTROBE的下降沿后将HRDY置位,指
17、示数据未准备好的忙状态,主机 应当在总线上插入等待周期,数据准备好后HPI清除HRDY,主机才可以结束总线 周期,通过HCS的上升沿将有效数据锁存。HSTROBE 的下降沿到数据有效之间的延时与芯片及 HPI 接口的工作频率相 关,以C5502,C5501为例,在芯片手册中,这个延时参数H1在SYSCLK1与CPU 时钟的分频为 4时,最大延时为 12*2H+20(ns), H=SYSCLK1/2, 在 HPI 启动期 间,PLL没有倍频,处于旁通状态,系统输入时钟就是CPU的工作时钟,SYSCLK1 默认分频为 CPU 时钟的 4 分频,以输入时钟为 25MHz 为例,最大延时为:这个时 间
18、长度通常 超出了主机端总线周期的软件配置范围,所以通过软件配置增加 HCS的宽度不一定能满足HRDY的最大延时要求。在有的DSP芯片手册上只提供 了 HRDY 的 最小延时,最大延时与芯片的优先级设置,及系统配置相关而不确定, 比如与系统中其它主模块如EDMA同时访问DDR,那么延时与HPI的优先级,EDMA 的优先级,EDMA的burst长度,以及DDR的命令排序等配置相关,这样通过延 长主机的总线访问周期,更加不可靠。解决办法:在硬件设计之初,一定要利用HRDY硬件握手信号虽然有的芯片 HPIC寄存器提供了 HRDY软件握手方式,只能做为弥补硬件设计之初遗漏HRDY 硬件握手信号的权宜之计,软件轮循HRDY的办法会带来额外的开销,降低HPI 总线的吞吐率,增加主机软件实现的复杂度。而且有的芯片HPI不支持HRDY软 件查询方法,只能通过硬件HRDY保证数据的有效性。HRDY 常高有的系统在长时间运行中偶尔出现HRDY常高,导致主机端总线访问异常, 需要重新上电才能恢复 HPI 的正常操作。这种故障是由于 HPI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 隧道光纤传感技术方案
- 消防设施应急演练方案
- 2026年郑州电子商务职业学院单招职业技能测试题库及答案1套
- 【数学】期末复习 全册知识点滚动练课件 2025-2026学年北师大版数学八年级上册
- 滦南县网络安全培训课件
- 人工智能在金融风控中的应用-第54篇
- 2025年无锡校招小数笔试及答案
- 2025年国家电投内蒙古公司笔试及答案
- 2025年中电技术线下笔试及答案
- 2025年考公务员孕妇笔试及答案
- 2026国家电投招聘试题及答案
- 2024年人教版七7年级下册数学期末质量检测题(附答案)
- 2025 AHA 心肺复苏与心血管急救指南 - 第6部分:儿童基本生命支持解读
- 2026年大庆医学高等专科学校单招职业技能测试模拟测试卷附答案
- 中央财经大学金融学院行政岗招聘1人(非事业编制)参考笔试题库及答案解析
- 【8物(HY)期末】六安市舒城县2024-2025学年八年级上学期期末考试物理试卷
- 浇铸工安全生产责任制
- 钱大妈加盟合同协议
- 2025陕西三秦环保科技股份有限公司经理层成员市场化选聘工作5人笔试历年参考题库附带答案详解
- 松下Feeder维护保养教材
- 上海市上戏附中2025年物理高一上期末学业水平测试模拟试题含解析
评论
0/150
提交评论