采用可编程逻辑器件实现温控电路接口及其与DSP通信接口的设计_第1页
采用可编程逻辑器件实现温控电路接口及其与DSP通信接口的设计_第2页
采用可编程逻辑器件实现温控电路接口及其与DSP通信接口的设计_第3页
采用可编程逻辑器件实现温控电路接口及其与DSP通信接口的设计_第4页
采用可编程逻辑器件实现温控电路接口及其与DSP通信接口的设计_第5页
全文预览已结束

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

※用可编程逻辑器件实现温控电路接口及其与DSP通信接口的设计

(原文来源:微计算机信息李森;张春熹;李保国;林恒在此特别鸣

谢!)

1引言

采用光纤陀螺的捷联惯性导航系统是一种极具发展潜力的导航系统,对于

其核心部件的光纤陀螺,尤其是中高精度光纤陀螺,环境温度带来的漂移是不

容忽视的,因此对系统进行温度控制很有必要。温度控制电路是整个温控系统

的硬件基础,其中涉及到温度采集,与微处理器通信,串口输出,控制数模转

换芯片等多个组成部分。本文提出一种高效实用的FPGA接口设计,它能够完成

协调各个组成部分有序工作,准确、快速实现数据传输,严格控制信号时序等

工作。

温控电路整体结构

F??

P“

G电

A

II

上位帆

fflI温控电路的整体结构框图

温控电路的整体结构框图如图1所示。其中包括七路温度传感器,DSP,

232接口芯片,DAC,后端控制电路,上位机和FPGA等多个组成部分。FPGA接

口是整个电路的核心。其中,温度传感器采用DALLAS公司的DS18B20,它采

用l-wire总线协议,仅需1根数据线进行通信。DSP采用红公司的

TMSVC33,它可以实现高速浮点运算。232接口芯片采用MAXIM公司的

MAX3232,支持高达120kbps的传输速率。D追采用TI公司的TLV5620I,它是

通过4条串行信号控制的8位4路数模转换芯片。FPGA选用ALTERA公司的

ACEX系列的EP1K100,它时钟频率高,具有丰富内部资源,提供大量可编程10

管脚,配置十分方便。基于FPGA的温控电路接口在整个电路中具有非常重要

的作用。FPGA本身的高速并行结构为整个电路的性能提供了可靠保证。温控

电路工作流程温控电路的工作流程如图2所示。FPGA与七路温度传感器通

信,读取温度值,并存储于内部存储器中,每秒更新一次。FPGA发送中断信号

通知DSP读取FPGA中存储的温度值,DSP根据当前温度值和控制算法计算出

控制量。而后将温度值和控制量打包成•帧数据发送

给FPGAoFPGA将DSP发送来的数据存储在内部存储器后,对数据进行操

作,生成输出信号。FPGA一方面将数据串行发送给232接口芯片,然后通过

232串口发送给上位机。上位机可通过监视软件实时观测温度值和控制量的变

化情况,方便系统调试与评估;另一方面从数据中提取出控制量,将其串行输

出到DAC,数字控制信号经过DA转换后输出模拟控制电压到后端控制电路,实

现对七路温度的闭环控制。

图2温控电路的r作流程

4.FPGA与外围电路之间的通信接口FPGA与外围电路之间的通信接口主要

包括与温度传感潜,DSP,232接口芯片和DAC的通信接口四个部分。

(1)与温度传感器的通信接口

本方案的温度传感器采用DS18B20,它通过硬件非常简单的l-wire总线通

信,由于硬件简单所以通信协议比较复杂。要实现与它的通信接口将占用大量

FPGA片内资源,而且不方案要进行七路温度采集,因此优化程序设计,减少冗

余,节省资源显得尤为重要【2】。

(2)与DSP的通信接口

DSP与FPGA的组合已经成为当今数字电路中非常流行的模式。FPGA非常适

合与DSP配合。本方案中,DSP与FPGA的通信接口主要由数据总线,地址总

线和一些控制信号组成。FPGA和DSP之间由8位数据总线连接,数据以字节

形式并行传输。DSP通过地址总线对FPGA的片内资源寻址。控制信号主要包括

复位信号,中断信号和读写信号。

(3)与232接口芯片的通信接口FPGA与232接口芯片的通信是通过收发

两条数据线实现的。本方案中,只存在温控系统到上位机的单向数据传输,故

仅需一条发送数据线就可以完成与232接口芯片的通信。

(4)与DAC的通信接口

本方案选用TI公司的TLV5620I芯片作为DAC。它是8位4路电压数摸黄

换器。对于它的数字控制基于由4条信号线组成的串行总线。包括CLK,

DATA,1戏迫_和LDAC四种信号。5FPGA的逻辑设计

在温控电路的总体方案,硬件结构,工作流程和接口协议都确定后,就可

以进行FPGA的逻辑设计了。FPGA的逻辑设计是整个温控电路接口设计的重中

之重。它基于verilog硬件描述语言。良好的FPGA逻辑设计应该是时序清

晰,运行稳定,结果明确和节省资源的。它能够保证整个系统的可靠,稳定和

高效。FPGA的逻辑模块图如图3所示。FPGA内部逻辑大致分为RESET模块,

DS18B20接口模块,总线控制模块,DSP接口模块,双口幽模块,232接口模

块和DAC接口模块等几部分。

(1)RESET模块该模块生成全局复位信号。是所有模块中优先级最高的。

系统上电后,该模块将复位信号拉低并持续1秒而后拉高,对DSP和FPGA内

部其他模块进行复位c

(2)DS18B20接口模块该模块用于实现与DS18B20通信,读取并存储温

度值。它包含2个子模块。

一、温度采集模块

该模块实现与DS18B20的通信协议。首先通过一个初始化序列对DS18B20

进行初始化,包括一个由主机发出的复位脉冲和其后由从机发出的存在脉冲。

探测到存在脉冲之后,代表初始化完成,模块将发送ROM操作命令。本方案

中,执行SKIPROM跳过ROM匹配。之后将发送存储器操作命令。温度转化和

读取温度就在这部分完成。其中每一次读写操作都需要严格按照DS18B20的读

写时隙进行。该模块复杂程度高和占用资源多,是整个FPGA中的重要模块。

本方案一共有七路温度采集模块,它们的并行结陶使得系统可以方便地实现对

七路温度的实时监控。二、温度存储模块

该模块的主要构成部分是一个14*8位存储器,用于存储七路温度数值,每

一路数值需要2个8位重在盎存放。存储完毕后,等待DSP读取。

(3)DSP接口模块该模块主要用于与DSP进行通信。它包含3个子模块。

一、DSP写信号同步模块DSP的数据写入在写信号控制下完成。由于DSP和

FPGA采用不同的时钟源,所以DSP产生的写信号无法和FPGA的主时钟同步。

这样就会导致写数据错误。该模块用于将DSP写信号与FPGA的主时钟同步。

二、中断生成模块由于本方案中,温度值每秒更新一次。在温度值更新后,通

过中断信号通知DSP读取温度值。该模块用于生成周期为1秒的中断脉冲。

三、寻址模块该模块对FPGA片内资源进行编址,由DSP的地址总线控制

寻力匕准确读写所需的数据.

(4)总线控制模块DSP和FPGA之间的数据总线是双向总线,总线控制模

块用于控制总线的数据流向。当DSP从FPGA中读取温度值时,总线控制模块

将温度存储模块和数据总线相连,输出数据。当DSP向FPGA中写数据时,总

线控制模块将数据总线和双口RAM模块相连,输入数据。

(5)双口RAM模块该模块主要实现以下三个功能:当DSP写数据时,将

数据存储于内部存储器中;当数据存储完毕后,将其中的控制量发送给DAC控

制模块;与串口发送模块通信,将所有数据依次串行输出。

(6)232接口模块该模块用于实现串口数据输出,它包含2个子模块:

一、串口波特率模块串口通信协议要求数据收发双方有相同的波特率。该模块

用于设定串口通信波特率。二、串口发送模块

双口RAM模块将数据存储完毕后,将给串口发送模块一个标志信号。串口

发送模块接到此信号后,依次将双口RAM模块中存储的数据串行输出。

(7)DAC接口模块该模块包含2个子模块:一、DAC时钟模块DAC需要

特定频率范围的时钟来驱动。该模块用于生成驱动DAC的时钟信号。二、DAC

控制模块

该模块用于生成DAC控制信号。它的基本原理是将双口RAM模块输出的7

路控制量存储在内部存储器,然后根据DAC的接口协议生成CLK,DATA,LOAD

和LDAC等控制信号,这些信号将驱动DAC的工作,将数字控制量转换成模拟

电压值。

结束语

FPGA接口设计需要综合考虑硬件连接,工

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论