打印
[电源]

一种基于DSP+FPGA的控制系统方案设计

[复制链接]
1385|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tianyu01|  楼主 | 2011-12-23 13:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文提到的控制系统控制通信设备的正常工作,是整个通信设备的重要组成部分。该控制系统要实现的功能为: 接收外来的信息、实时采集输入的信号,控制设备的工作状态、参数、频率、电压及完成设备的故障检测等;要求具备大量的通信功能和复杂的管理控制功能,且具备实时性、准确性。  原来普遍采用单片机加外围器件来完成这些功能,需要大量的外部电路,增加了系统成本,也增加了系统的复杂性,系统的可靠性也会受一定的影响。
  本文所提出的基于DSP+FPGA的控制系统方案,利用FPGA的容量大、可编程实现很多功能,结合DSP具有高速的信息处理能力的特点,使得本控制系统非常简洁,结构灵活,通用性强,系统也易于维护和扩展。该方案基于软件无线电的思想,是采用通用平台的设计。
  二、硬件设计
  系统硬件组成如图1所示。
  该硬件平台由DSP、FPGA、A/D、D/A、密钥存储单元、实时钟、接口电路及程序存储器组成。各关键部分的主要功能为:
  (1)DSP:参数的处理、数据的分帧、组帧、编码、通过中断实时监控各种输入信号等;
  (2)FPGA:总线控制、通信接口、数据采集、整形、组合逻辑生成、时钟信号产生等;
  (3)密钥存储单元:具有EEPROM特性,掉电保护各种参数。
  主要器件的选型如下。
  (1)DSP器件
  所选用的TI公司的TMS320LF2407是一种低价格、高性能的DSP芯片,其控制能力强,同时具有较高的运算能力,能够满足系统对微处理器的要求,从而实现较强的通信功能和复杂的管理控制功能。
  (2) FPGA 器件
  选用XILINX公司的XCV100:
  (1)其资源为10万门;
  (2)工作频率最高可达200M;
  (3)I/O端口多,端口功能可编程自定义;
  (4)内核采用2.5 V供电,端口供电电压为3.3 V,可直接与TMS320LF2407接口;  
       (5)同样封装的FPGA,其资源可达100万门,有利于系统的升级。 
  三、软件设计
  系统对软件的设计提出了较高的要求,因此,笔者完全采用VHDL和C语言来编写系统内部执行软件。
  1DSP的软件设计
  DSP软件设计在CCS2000的开发系统下用C语言设计, DSP软件采用自顶向下的设计思路,按功能划分软件模块,使程序组成模块化,主要由如图2所示的几个模块组成。
  其中总线控制模块和通信模块是2个主要的软件模块。
  总线控制模块的工作流程如图3所示,通信模块的工作流程如图4所示。
  2FPGA的软件设计
  FPGA在XILINX的软件开发系统下,用VHDL语言设计,主要实现以下功能:
  (1) 总线控制的实现
  本控制统要控制大量的分离信号、大量的参数及系统的工作参数、电压值,完成故障信息的采集、综合和上报。要求用简单、易控的串行同步通信总线控制方式(为RS—485总线接口)。总线控制的原理框图如图5所示。
  总线按位串行,双向同步方式传输信号;只由5条信号线组成:2条差分时钟线CLK+和CLK-,2条差分数据线DATA+和DATA-,一条地线GND。发送时,数据的缓存、转换及数据在时钟作用下按位串行传输;接收时,数据的同步、缓存、转换及接收中断的产生,都用VHDL语言在FPGA中实现。
  (2)通信接口的实现
  本控制系统对内、对外通信接口较多:与上方系统控制命令接口、与上方系统数据接口、设备内数据接口等。这些接口采用异步串行通信方式(SCI)通信。 FPGA内异步串口设计的原理如图6所示。
  这里充分利用FPGA的硬件可编程性,把要扩展多个异步串口,用VHDL语言在FPGA里实现,使系统硬件平台简单,而且能灵活设置波特率和通信方式。
  (3) 状态采集的实现
  有些信号是需要控制系统实时处理的,通过FPGA的采集、整形,在信号的上升和下降沿产生一定宽度的脉冲,作为DSP的中断信号。DSP在中断程序中实时读取信号的状态,控制设备工作在新的状态。

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

785

帖子

1

粉丝