![]() |
|
||||||||||||||
| . 网站首页 . 新闻 . 新品 . 方案 . 专访 . 活动 . DSP . EDA . 评测室 . 技术文库 . 会员区 . 商城 . 服务导航 . 邮购 . 资源 . | ||
|
||
|
|||||
| 用CPLD实现DSP与PLX9054之间的连接 | |||||
作者:李 松 等 文章来源:国外电子元器件 点击数: 更新时间:2004-9-28 ![]() |
|||||
|
关键词:PCI总线;TMS320C6711b;HPI(host port interface);局部总线;PLX9054 CPLD是一种复杂的用户可编程逻辑器件。它以操作灵活,开发迅速,投资风险低,可多次编程擦写和在系统可编程(In System programmability)等特点而成为一种可优化硬件电路设计且具竞争力的产品。近年来,随着微电子集成工艺的不断发展,各种系列的CPLD可为简单PAL综合设计到先进实时硬件现场升级等全部范围内的任务设计提供全套的解决方法。本文将给出如何使用Xilinx公司的CPLD器件XC9500LV实现PLX9054的局部总线 (local bus)和DSP的HPI口之间的实时通信方法。采用这种设计可以以单字或DMA方式完成主机与DSP之间的高速数据传输,传输速率可达到16Mb/s。该方法可广泛应用于实时图形、图像及动画处理等场合。
1 设计需求 1.1 local bus接口要求 PLX9054是PCI接口专用主从器件,包括通信、网络、磁盘控制、多媒体等高性能接口功能。PLX9054可以以多种方式实现从pci bus端到local bus端(局部总线)的数据转移, 如直接传输,DMA控制传输等。通过pci bus和local bus之间以六个可编程FIFO的不同连接可实现突发并发传输, 同时也可通过串行EEPROM或PCI主控设备对PLX9054内部的配置寄存器进行设置,其简化框图如图1所示。图中,通过配置EEPROM可设置PLX9054作为PCI总线的从设备工作在C模式下(数据、地址总线非复用),该模式下的local bus数据宽度为16bit,同时,通过使能外部设备就绪信号READY还可以禁止无限爆发操作(屏蔽BTERM bit)。 Local bus端的读、写时序基本相同,图2所示是其单字读写操作时序。以写周期为例,首先,PLX9054通过置LHOLD信号有效来申请local bus的主控权,在收到local bus仲裁的响应信号LHOLDA之后,PLX9054将成为local bus的主控,随后置ADS信号为低,使得地址总线信号LA[31:2]、字节使能信号LBE[3:0]和读写选择信号LW/ R 进入有效状态,一个LCLK周期之后,9054停止驱动ADS,这时,地址总线LA[31:2]上的地址信号将保持有效直至数据线上的数据有效并保持一个LCLK周期。数据线LD[15:0]上的数据信号由READY驱动, READY表示local bus设备已经准备好,可以发送或者接收数据。BLAST信号由PLX9054提供,BLAST信号为低表示一次传输的最后一个字节,BLAST的上升沿可用于标志一次数据传输的完成。一个LCLK周期之后,PLX9054拉低LHOLD以放弃对local bus的主控权,此后,local bus仲裁响应9054的LHOLD信号,并拉低LHOLDA以收回local bus主控权,这时的local bus置于闲置状态。这里,PLX9054作为local bus主控权的唯一申请者,只要提出总线申请,local bus仲裁就会立即响应该申请。 1.2 HPI口设计要求 HPI口是一种数据宽度为16bit的并行端口(C64**系列DSP中,HPI口的数据宽度达到32bit)。通过HPI口,主机可以直接对CPU的存储器空间进行操作。在C621*/C671*系列DSP中,没有留出专门的EDMA通道来执行HPI口的访问操作,而是直接将HPI口连接到内部的地址产生硬件上,因而提高了对内部存储空间的访问速度。HPI口内部加入了两个八级深度的读写缓冲,可以执行地址自增的读写操作,提高读写操作的吞吐量。HPI口为内部CPU提供了标准32bit的数据接口,同时为外部主机也提供了一个经济的16bit接口,所以对外部主机而言,每次读写必须执行成对的16bit操作。 HCNTL[1:0]:控制HPI的操作类型; HHWIL:半字确认输入,“0”,“1”分别表示一次字传输的第一个半字和第二个半字; HR/W:读/写选择; HRDY:就绪状态标志; HINT:中断标志,DSP向主机提出中断; HAS:区别地址/数据复用总线的数据与地址; HDS1,HDS2,HCS:数据选通输入,三者配合可用于产生一个HPI内部选通信号HSTROBE: HSTROBE =[NOT(HDS1 XOR HDS2)] OR HCS; 对于一个写HPI口的操作,应首先使能HCS,变化HDS1或HDS2,可使HSTROBE信号产生一个下降沿,HPI口在这个下降沿采样控制信号HCNTL1:0、HHWIL和HR/W,同时在使能HCS的同时扇出HRDY,以使主机进入等待状态,直到HRDY产生下降沿,表明HPID已清空,可以接收新的数据。此时HSTROBE也将产生一个上升沿,并采样HD15:0上的数据并将其送入HPID,以完成第一个半字的写入。对于第二个半字的写入,由于32bit的HPID已经清空,可以直接写入数据,不会出现未准备好的情况,所以HRDY一直保持为低,与第一个字节的写入相同,该操作也在HSTROBE的下降沿采样控制信号,并在HSTROBE的上升沿采样数据总线HD[15:0]的数据并送入HPID,以完成一个32bit的写入操作。 图3是HPI的读、写时序图,这里HAS一直接高电平。 该系统中CPLD的功能主要是完成local bus端和HPI端口之间控制信号和数据总线的连接,并保证数据传输的可靠性。通过以上对local bus和HPI读写时序的分析可见,一些关键信号,如HCS、READY、HRDY的时序设计很重要,实际上,整个CPLD设计的主要任务也是围绕这几个信号的设计展开的。 对于其它一些控制信号(如高低字节标志信号HHWIL),由于它们是随着HSTROBE上升沿的出现不断产生0和1的交替变化,所以,可用HDS2作为时钟输入的两分频电路来产生HHWIL;而local bus申请应答信号LHOLDA,则可由LHOLD信号经一个LCLK的延迟后输出产生;HCNTL[0:1]接两根地址线,以便由上层驱动程序来控制对HPI口内部不同寄存器的访问,并由LW/ R接反相器来产生R/ W信号。其原理图如图4所示。 本文提供的这种设计方法经过实际运行检验,可以保证PLX9054和DSP之间的可靠连接,且逻辑关系简单。由于数据线可以完全独立于CPLD之外直接连接,可有效节约成本,因而具有较高的实用价值和经济价值。 |
|||||
| 欢迎点击进入:TI德州中文网 (国内唯一针对TI应用的中文技术网站) 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| 没有相关文章 |
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登录 | | |||
|
|