这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » FPGA » TS101S型DSP与PCI总线的简易接口设计

共1条 1/1 1 跳转至

TS101S型DSP与PCI总线的简易接口设计

高工
2007-08-31 17:27:06     打赏

  1 引言

       DSP+PCI数字信号处理方案可利用PC的强大功能实现对DSP的操作控制、数据分析和操作监视等。例如系统无需再有专门的人机界面(如键盘、监视屏),只需将数据上传至PC中显示即可。也可将PC作为主控机实现对数据流上下行的控制和工作模式选择等。DSP+PCI方案能充分满足数字图像、语音处理、高速实时数据处理等领域的应用,为DSP系统的低成本实现提供了解决方案。

                          

  2 TS101S型DSP介绍

       本系统采用美国Analog Device公司的 
高性能TIGER SHARC 101S(简称TS101S)作为主处理器。TS101S处理器劫持32bit和64bit浮点,以及8、16、32和64bit定点处理。它的静态超量结构使其每周期能执行多达4条指令,进行24个16bit定点运算和6个浮点运行。其内部有3条相互独立的128bit宽数据总线,每条连接3个2Mbit内部存储块中的一个,提供4字节的数据、指令、I/O访问和14.4Gbyte/s的内部存储带宽。以300MHz时钟运行时,其内核指令周期为3.3ns。在发挥其单指令多数据特点后,TS101S每秒可以进行了24亿次40bitMAC运算或6亿次80bitMAC运算。以300MHz时钟运行时,完成1024点复数FFT(基2)仅需32.78μs,1024点输入50抽头FIR需91.67μs。TS101S有强大的链路口传输功能,每个链路口传输速度达到250Mbyte/s。总的链路数据率达1Gbyte/s(4个链路口),超过了外部口的传输速率(800Mbyte/s)。

  3 PCI介绍

       PCI(Peripheral Component Interconnect)总线是一种不依附于某个具体处理器的高性能局部总线,因此开发PCI设备可独立于处理器,具体由一个桥接电路(PCI桥)实现对这一层的管理,并实现上下之间的接口数据传送。可以把PCI桥描述为实现通用总线与PCI总线的地址映射、协议转换、数据缓存等功能的逻辑接口。 

                           

       3.1 PCI桥的实现

       开发者可以根据PCI总线规范所定义的电气特性、时序要求来进行接口设计。一种方式是使用可编程逻辑器件(FPGA/CPLD)根据实际需要的功能来设计,这种方式的成本低、灵活性高,但需要对PCI总线协议有充分的掌握,或者需要生产可编程逻辑器件的厂商提供PCI接口功能模块。由于PCI总线的规范较复杂,一般用户都会选择专用的PCI接口电路,无需详细理解底层的PCI总线协议,而只理解到应用层即可。因此,本文介绍的系统采用后一种方案,PCI接口电路采用现在市场上使用较普通的PLX公司的PCI9054。

  3.2 PCI9054

       PCI9054采用先进的PLX数据流水线结构技术,是32位、33MHz的PCI总线主I/O加速器,符合PCI本地总线规范2.2版,有M、C、J三种模式。针对不同的处理器及局总线特性可选,尽量减少中间逻辑;具有可选的串行E2PROM接口,本地总线时钟可和PCI时钟异步。PCI9054内部有6种可编程的FIFO,以实现零等待突发传输及本地总线和PCI总线之间的异步操作,支持主模式、从模式、DMA传输方式,功能强大,可应用于适配卡和嵌入式系统。

  1 引言

       DSP+PCI数字信号处理方案可利用PC的强大功能实现对DSP的操作控制、数据分析和操作监视等。例如系统无需再有专门的人机界面(如键盘、监视屏),只需将数据上传至PC中显示即可。也可将PC作为主控机实现对数据流上下行的控制和工作模式选择等。DSP+PCI方案能充分满足数字图像、语音处理、高速实时数据处理等领域的应用,为DSP系统的低成本实现提供了解决方案。

                          

  2 TS101S型DSP介绍

       本系统采用美国Analog Device公司的 
高性能TIGER SHARC 101S(简称TS101S)作为主处理器。TS101S处理器劫持32bit和64bit浮点,以及8、16、32和64bit定点处理。它的静态超量结构使其每周期能执行多达4条指令,进行24个16bit定点运算和6个浮点运行。其内部有3条相互独立的128bit宽数据总线,每条连接3个2Mbit内部存储块中的一个,提供4字节的数据、指令、I/O访问和14.4Gbyte/s的内部存储带宽。以300MHz时钟运行时,其内核指令周期为3.3ns。在发挥其单指令多数据特点后,TS101S每秒可以进行了24亿次40bitMAC运算或6亿次80bitMAC运算。以300MHz时钟运行时,完成1024点复数FFT(基2)仅需32.78μs,1024点输入50抽头FIR需91.67μs。TS101S有强大的链路口传输功能,每个链路口传输速度达到250Mbyte/s。总的链路数据率达1Gbyte/s(4个链路口),超过了外部口的传输速率(800Mbyte/s)。

  3 PCI介绍

       PCI(Peripheral Component Interconnect)总线是一种不依附于某个具体处理器的高性能局部总线,因此开发PCI设备可独立于处理器,具体由一个桥接电路(PCI桥)实现对这一层的管理,并实现上下之间的接口数据传送。可以把PCI桥描述为实现通用总线与PCI总线的地址映射、协议转换、数据缓存等功能的逻辑接口。 

                           

       3.1 PCI桥的实现

       开发者可以根据PCI总线规范所定义的电气特性、时序要求来进行接口设计。一种方式是使用可编程逻辑器件(FPGA/CPLD)根据实际需要的功能来设计,这种方式的成本低、灵活性高,但需要对PCI总线协议有充分的掌握,或者需要生产可编程逻辑器件的厂商提供PCI接口功能模块。由于PCI总线的规范较复杂,一般用户都会选择专用的PCI接口电路,无需详细理解底层的PCI总线协议,而只理解到应用层即可。因此,本文介绍的系统采用后一种方案,PCI接口电路采用现在市场上使用较普通的PLX公司的PCI9054。

  3.2 PCI9054

       PCI9054采用先进的PLX数据流水线结构技术,是32位、33MHz的PCI总线主I/O加速器,符合PCI本地总线规范2.2版,有M、C、J三种模式。针对不同的处理器及局总线特性可选,尽量减少中间逻辑;具有可选的串行E2PROM接口,本地总线时钟可和PCI时钟异步。PCI9054内部有6种可编程的FIFO,以实现零等待突发传输及本地总线和PCI总线之间的异步操作,支持主模式、从模式、DMA传输方式,功能强大,可应用于适配卡和嵌入式系统。

  DSP向RAM写数据→DSP通过FLAG发出握手请求到CPLD→CPLD向PCI9054的USERi发出中断信号→PCI9054查询到中断→PCI9054或RAM数据。时序如图3所示。

                 

       CPLD的程序如下:

  Library IEEE;

  Use IEEE.STD_LOGIC_1164.all;

  Use IEEE.STD_LOGIC_unsigned.all;

  Use IEEE.std_logic_arith.all;

  ENTITY PCI IS

  PORT(

  ADS:IN STD_LOGIC;

  LCLK:IN STD_LOGI 
C;

  LWR:IN STD_LOGIC;

  LHOLD:IN STD_LOGIC;

  LHOLDA:OUT STD_LOGIC;

  READY:OUT STD_LOGIC;

  OE:OUT STD_LOGIC;

  RW:OUT STD_LOGIC);

  END PCI;

  ARCHITECTURE PCI_arch OF PCI IS

  SIGNAL signal_0:STD_LOGIC;

  BEGIN

  PROCESS(LCLK)

  BEGIN

  IF LCLK'EVENT AND LCLK='1'THEN

  IF LHOLD='1'THEN

  IF ADS='0'THEN

  Signal_0<='1';

  ELSIF ADS='1'THEN

  Signal_0<='0';

  END IF;

  END IF;

  END IF;

  IF LCLK'EVENT AND LCLK='1'THEN

  IF LHOLD='1'THEN

  IF LWR='0'THEN

  OE<='0';

  RW<='1';

  ELSIF LWR='1'THEN

  OE<='1';

  RW<='0';

  END IF;

  END IF;    END IF;

  IF LCLK'EVENT AND LCLK='0'THEN

  IF LHOLD='1'THEN

  IF signal_0='1'THEN

  READY<='0';

  ELSIF signal_0='0'THEN

  READY<='1';

  END IF;

  END IF;

  END IF;

  END PROCESS;

  PROCESS(LCLK,LHOLD)

  BEGIN

  IF LCLK'EVENT AND LCLK='0'THEN

  IF LHOLD='1'THEN

  LHOLDA<='1';

  ELSIF LHOLD='0'THEN

  LHOLDA<='0';

  END IF;

  END IF;

  END PROCESS;

  END PCI_arch;

  5 结束语

       本文介绍的DSP与PCI总线的接 接方案灵活简单,减小了布板的复杂度,简化了PCI总线要求的时序,缩短了开发周期。采用该方案设计的数据处理系统工作稳定,已应用在低频信号检测领域中。

 




关键词: TS101S     总线     简易     接口     设计     实现     数据         

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]