资 源 简 介
目前在各行各业中应用种类繁多的测量仪器随着仪器性能指标要求的逐渐提升以及功能的不断拓展,对仪器控制系统的实时性和集成化程度等性能的要求也越来越高。目前发展的趋势是开放式、集成度向芯片级靠拢的高实时性仪器。针对目前传统的系统设计存在着功能简单、速度慢、实时性差、对数据的再加工处理能力极为有限等问题,本文根据课题需要提出了一种基于ARM+FPGA架构的高速实时数据采集嵌入式系统方案,应用在小功率半导体测量仪器上。方案采用三星S3C2410的ARM处理器进行管理控制,处理数据,界面显示;Altera公司的Cyclone系列的1C12 FPGA器件用来进行高速数据采集,提高了系统的实时性和集成化程度。 本文首先给出了ARM+FPGA架构的总体设计。硬件方面,简要讨论了ARM处理器的特点和优势,FPGA在高速采集和并行性上的优势,给出了硬件的总体结构和主要部件及相关接口。软件方面,研究了基于嵌入式Linux的嵌入式系统的构建和BootLoader的启动以及内核和根文件系统的结构,构建了嵌入式Linux系统包括建立交叉开发环境,修改移植BootLoader和裁减移植Linux内核,并且根据课题实际需要精简建立了根文件系统。 为了满足测量仪器的实时性,设计了ARM与FPGA的高速数据采集接口。进行了FPGA内部与ARM接口相关部分的硬件电路设计;通过分析ARM与FPGA内部时序的差异,针对ARM与FPGA内部FIFO时序不匹配的问题,解决了测量仪器中高速数据采集与处理速度不匹配的问题。接着,通过研究Linux设备驱动基本原理和驱动程序的开发过程,设计了Linux下的FPGA数据采集接口驱动程序,并且实现了中断传输。使得FPGA芯片通过高效可靠的驱动程序可以很好的与ARM进行通讯。 最后为了方便用户操作,进行了人机交互系统的设计。为了降低成本和提高实用性利用FPGA芯片剩余的资源实现了对PS/2键盘鼠标接口的控制,应用到系统中,大大提高了人机交互能力;通过比较分析目前比较流行的几种嵌入式GUI图形设计工具的优缺点,结合课题的实际情况选择了MiniGUI作为课题图形界面的开发。根据具体要求设计了适合测量仪器方面上使用的人机交互界面,并且移植到了ARM平台上,给测量仪器的使用提供了更好的交互操作。 本课题完成了嵌入式Linux开发环境的建立,针对课题实际硬件电路设计修改移植了bootloader,裁减移植了内核以及根文件系统的建立;设计了FPGA内部硬件电路,解决了接口中ARM与FPGA时序不匹配的问题,实现了ARM与FPGA之间的高速数据采集;设计了高速采集接口在嵌入式Linux下的驱动程序以及中断传输和应用程序;合理设计了适合测量仪器使用的人机交互界面,并巧妙设计了PS/2键盘鼠标接口,进一步提高了交互操作。