RSS
热门关键字:
当前位置 : 主页>通信技术>通信设备>列表

基于FPGA DSP架构的高速通信接口设计与实现

来源:我要研发网 作者:52rd.info 时间:2008-05-18 点击:



  在雷达信号 dspfpga 处理、数字图像处理等领域中,信号处理的实时性至关重要。由于fpga芯片在大数据量的底层算法处理上的优势及dsp芯片在复杂算法处理上的优势,dsp fpga的实时信号处理系统的应用越来越广泛。adi公司的tigersharc系列dsp芯片浮点处理性能优越,故基于这类。dsp的dsp fpga处理系统正广泛应用于复杂的信号处理领域。同时在这类实时处理系统中,fpga与dsp芯片之间数据的实时通信至关重要。

字串5

  tigersharc系列dsp芯片与外部进行数据通信主要有两种方式:总线方式和链路口方式。链路口方式更适合于fpga与dsp之间的实时通信。随着dspfpga实时信号处理运算量的日益增加,多dsp并行处理的方式被普遍采用,它们共享总线以互相映射存储空间,如果再与fpga通过总线连接,势必导致fpga与dsp的总线竞争。同时采用总线方式与fpga通信,dsp的地址、数据线引脚很多,占用fpga的i/o引脚资源太多。而dspfpga采用链路口通信不但能有效缓解dsp总线上的压力,而且传输速度快,与fpga之间的连线相对也少得多,故链路口方式更适合于fpga与dsp之间进行实时数据通信。

字串9

  ts201与ts101的性能比较,但没有针对两者的链路口进行详细介绍,本文对两者的链路口进行了细致的分析和比较。所设计的采集系统中,dsp与fga的通信仅限于fpga发、ts101收的单工通信;给出了fpga内部没计ts101链路口的框图,但只给出了简单的介绍,无法给设计者以参考。本文采用altera公司cyclone系列芯片ep1c12实现了与ts101/ts201两种芯片的链路口的双工通信,并给出了具体的设计实现方法。其中ts101的设计已经成功应用于某信号dspfpga处理机中。

字串5

  1 ts101和ts201的链路口分析与比较 字串2

  ts101和ts210都是高性能的浮点dspfpga处理芯片,目前两者都广泛应用于复杂的信号处理领域。ts201是继ts101之后推出的新型芯片,核时钟最高可达600mhz,其各类性能也相对优于ts101,而且ts201的链路口采用了低压差分信号lvds技术,功耗更低、抗噪声性能更好。表1列出了两种dspfpga芯片链路口性能的详细比较,其中ts101核时钟工作在250mhz,ts201核时钟工作在500mhz。

字串7

基于FPGA DSP架构的高速通信接口设计与实现

字串2

  由于ts101收发端共用一个通道,所以只能dspfpga实现半双工通信。而ts201将收发端做成两个独立通道,可实现全双工通信,理论上数据的传输速率可以提高一倍。虽然ts201的链路口收发通道独立,但实际上二者的收发dspfpga机制大体相同,都是靠收发缓存和移位寄存器收发数据。然而fpga内部的链路口设计不必拘泥于此,只要符合链路口通信协议并达成dspfpga通信即可。 字串1

  2 fpga与dsp的链路口通信 字串1

  2.1 链路口通信协议分析

字串4

  ts101的链路口共有11根引脚,通过dspfpga8根数据线(lxdat[7..0],这里x可以是0、1、2或3,代表ts101或ts201的0号~3号链路口中的一个,以下同)进行dspfpga数据传输,并采用3根控制线(lxclkout、lxclkin、lxdir)来控制数据传输时钟、通信的握于和数据传输方向。其中lxdir为通知链路口当前工作状态是接收或发送的输出引脚,可悬空不用。ts201的链路口共24根引脚,接收和发送各12根引脚,通过lvds形式的数据线(lxdat_p/n[3..0])和时钟线(lxclk_p/n)进行数据传输,并采用lxack和lxbcmp#(‘#’代表信号低有效)来通知接收准备好和dspfpga数据块传输结束。

字串3

  采用fpga与dsp通过链路口通信的关键是令双方通信的握手信号达成协议,促使数据传输的进行。实际上,如果考虑ts201的lvds信号形式已经被转换完毕,则ts101和ts201链路口传输的数据形式是一样的,都是时钟双沿触发的ddr数据,并且每次传输的数据个数都是4个长字(即128bit)的整数倍。鉴于以上两种芯片链路口数据的共同点,所以采用fpga与两类芯片通信时,接收和发送的数据缓存部分的设计应该是很相近的,只是通信dspfpga握手信号部分的设计应当分别加以考虑。下面分别给予介绍。

字串3

  2.2 基于fpga的ts101链路口设计 字串8

  图1给出了fpca与ts101进行半双工链路口通信的设计(对lxclkout、lxclkin均以fpca的角度来叙述),该接口由接收、控制和发送dspfpga三部分组成。本设计fpga时钟为40mhz,ts101核时钟上作在250mhz,链路口时钟设定为dsp核时钟的8分频,fpga与dsp的实际数据传输率为62.5mbps。

字串4

基于FPGA DSP架构的高速通信接口设计与实现

字串8

  (1) 接收部分:由编码和缓存两部分组成。由于链路口的数错是ddr形式的,不方便数据的缓存,本文采用quartusii megafunctions中的altddio模块将上升沿数据和下降沿数据分开。注意这个模块的下降沿数据输出会滞后上升沿数据1个时钟周期,输出时应该用链路口dspfpga时钟信号(lxclkin)通过d触发器来将数据对齐。该模块的inclock一定要用链路口时钟信号以保证数据的正确读取,如图2所示。又由于dsp内部数据是32位的长字,所以写入接收缓存前应该用一组d触发器将数据进行32bit对齐,这里注意dsp链路口先传输32位dspfpga数据中的低8位。

字串4

基于FPGA DSP架构的高速通信接口设计与实现 字串4

  (2) 控制部分:由令牌转换模块和控制模块组成,是整个设计的核心部分,完成对各部分的控制和与fpga内部进行通信(通过ctl一组信号)。ts101的链路口通信握手是dspfpga靠两根时钟信号验证令牌指令完成,即当发送端驱动原本为高的lxclkout信号为低电平,以此作为令牌请求向接收端发出。如果接收端准备好接收,则接收端驱动lxclkin为高;如果令牌发出6个时钟周期后,lxclkin信号仍然为高,则肩动数据传输(以上时钟信号都以发送端视角分析)。本设计中,令牌转换模块负责验证令牌和发送令牌。这里要注意,由于 用来dspfpga验证令牌低电平个数的时钟信号(pll_32ns)是由fpga时钟信号(clk)通过锁相环倍频得到,与dsp链路口时钟异步,故验证令牌时,当计数器计到5个低电平时即可认为已达成通信握手,否则可能会丢失数据。达成握手后通知控制模块向接收或发送缓存输出控制信号,其中接收控制信号包括写缓存时钟和写使能。发送控制信号包括读缓存时钟、读使能和dsp中断信号(dsp_irq),其中写缓存时钟通过对链路口时钟分频得到,读缓存时钟由锁相环倍频fpga工作时钟得到。

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
相关文章