基于FPGA的可重构智能仪器设计

基于FPGA的可重构智能仪器设计,第1张

引言

  传统测试系统由于专用性强、相互不兼容、扩展性差、缺乏通用化、模块化,不能共享 软硬件组成,不仅使开发效率低下,而且使得开发一套复杂测试系统的价格高昂[1]。 目前,传统的分析仪表正在更新换代,向数字化,智能化方向迈进[2]。改变以往由仪器 生产厂家定义仪器功能、用户只能使用的局面,使用户可自定义仪器、根据不同测试需求对 仪器进行重构,已经成为现代测试技术发展的一个重要方面。由于其能够大大减少测试设备 的维修成本、提高资源利用率,可重构仪器技术已引起高度重视。

  1 可重构技术

  目前对可重构性还没有形成公认的定义。可重构性一般是指在一个系统中,其硬件模块 或(和)软件模块均能根据变化的数据流或控制流对结构和算法进行重新配置(或重新设置)。

  在可重构系统(Reconfigurable System)中,硬件信息(可编程器件的配置信息)也可 以像软件程序一样被动态调用或修改。这样既保留了硬件计算的性能,又兼具软件的灵活性。 尤其是大规模可编程器件FPGA 的出现,实时电路重构思想逐渐引起了学术界的关注[3]。可 重构的实现技术又很多种方式,包括DSP 重构技术、FPGA 重构、DSP+FPGA 重构、可重 组算法逻辑体系结构、可进化硬件(EHW)、本地重构/Internet 远程重构、SOPC/SOC 重构。

  可重构技术具有以下优点:

  1)可重构技术能够高效地实现特定功能。可重构逻辑器件上都是硬连线逻辑,它通过 改变器件的配置来改变功能。2)可重构技术能够动态改变器件配置,灵活满足多种功能的 需求。3)可重构技术适合恶劣工作环境下的应用。利用可重构逻辑器件的一个优势是不需 要微处理器必需的散热系统,大大减少了电子产品占据的空间。4)可重构技术具有强大的 技术支持来加速产品开发。5)可重构技术的使用能够大大降低系统成本。另外,对于不会 同时被使用的功能,可考虑利用动态重构技术在不同的需求时段里分别实现,做到“一片多 用”,节省了资源、空间和成本。

  2 可重构智能仪器硬件设计

  2.1 可重构仪器硬件结构

  可重构智能仪器技术将先进的微电子技术、半导体技术和微处理器技术引入仪器设计领 域,通过构建通用的硬件平台,最终由用户通过选择不同的软件来实现不同的仪器功能,因 此软硬件在可重构仪器设计技术中同样关键。

  可重构智能仪器硬件结构由 Nois II 处理器系统(包括可重构FPGA 芯片、FPGA 片外 系统)和计算机组成,其硬件结构框图如图1 所示。

 

 基于FPGA的可重构智能仪器设计,第2张

 

  可重构 FPGA 选用Altera 公司Cyclone II 系列中的EP2C35F672C6 芯片,片外系统主要 包括SDRAM 存储器、Flash 存储器、模数转换芯片、数模转换芯片、EPC16 增强型配置芯 片、MAX232 芯片等组成。片外系统实现数据的采集、预处理、存储和输出等功能。

  2.2 控制核

  在基于 FPGA 的可重构智能仪器中,EP2C35F672C6 是整个系统的核心,为了实现FPGA 与其他芯片、器件的正确通信、数据交换,需要在FPGA 上配置Nios II 软核处理器以及其 他控制器核。

  (一)Nios II 嵌入式处理器的设置。首先在Quartus II 下建立一个Project,在SOPC Builder 中选择组件列表中的Nios II Processor-Altera CorporaTIon,考虑到芯片的性能以及资 源利用率,选择Nios II/s(标准型)CPU,在Cache & TIghtly Coupled Memories 标签下设置 InstrucTIon Cache 为4KB。在JTAG Debug Module 标签下选择Level 3,可设置2 个硬断点、 2 个数据触发、指令跟踪和片上系统。整个Debug 模块将占用2400~2700 个LE,4 个M4K。

  (二)添加SDRAM 控制器内核。在SOPC Builder 组件选择栏中选择Avalon Components→Memory→SDRAM Controller,加入SDRAM 控制器核,。在Data Width(数据 总线宽度)下拉列表框中选择16Bits,其余设置不变,因为都满足SDRAM 芯片IS42S16400 的参数要求。TIming 选项卡的参数也满足芯片要求,不必修改。

  (三)添加 FLASH 控制器。在对硬件系统进行编程控制时,Flash 用于存储应用程序。 在SOPC Builder 的组件选择栏中选择Avalon Components→Bridge→Avalon Tri-State Bridge, 加入Avalon 三态总线桥; 在SOPC Builder 的组件选择栏中选择AvalonComponents→Memery→Flash Memery(Common Flash Interface),添加CFI 控制器。

  ( 四) 定时器设置。在SOPC Builder 组件选择栏中选择Avalon Components→Other→Interval timer,加入定时器核。定时器的硬件配置选项会影响定时器的 硬件结构,SOPC 提供了简单周期中断配置、完全功能配置和看门狗配置三种硬件配置。

  (五)添加 SPI 核。采用的A/D 转换芯片和D/A 转换芯片都是基于SPI 总线进行数据 传输的,要实现Nios II 系统对转换芯片的控制必须添加SPI 核。在SOPC Builder 组件选择 栏中选择Avalon Components→Communication→SPI(3 Wire Serial),配置SPI 核。由于用到 的模数转换芯片AD7810 和数模转换芯片AD5611 对于Nios II 系统来说都是从SPI 器件, 所以在FPGA 中添加两个主SPI 核分别控制A/D 和D/A 转换芯片。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2474385.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-04
下一篇 2022-08-04

发表评论

登录后才能评论

评论列表(0条)

保存