- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于FPGA一路数字信号采编系统设计
1 绪论
1.1 数据采集系统的概念和意义
信号采集与处理是计算机与外部物理世界连接的桥梁,在科研、生产和人们的日常生活中,经常需要测量流量、速度、位移、温度、压力、外形等物理量,人们一般通过传感器把上述物理量转换成模拟电信号,然后将模拟电信号经过放大、滤波、数模转换等处理后送入计算机,这就是数据采集。数据采集技术是信息科学的重要分支,它不仅应用在智能仪器中,而且在现代工业生产、国防军事及科学研究等方面都得到广泛应用,无论是过程控制、状态监测,还是故障诊断、质量检测,都离不开数据采集系统[1-2]。
从严格意义上说,数据采集系统应该是用计算机控制的多路数据自动检测或巡回检测,并且能够对数据实行存储、处理、分析计算,以及从检测的数据中提取可用的信息,供显示、记录、打印或描绘的系统。总之,不论在哪个应用领域中,数据的采集与处理越及时,工作效率就越高,取得的经济效益就越大。是英文Field-Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路()领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点A/D组成。传统的数据采集器中的多路数据选择器由多个模拟开关组成,加上转换器的控制电路及数据存储器,电路所需元A/D器件较多,因此电路板设计的面积较大。如果采用现场可编程门阵列电路实现多路数据选择器、存储器及外围的一些FPGA控制电路。不仅可以减小电路板的设计体积,而且最大限度地提高系统的信号采集和处理能力。
1.3 主要研究内容
本课题的主要研究内容是,在理解数据采集原理的基础上,设计一个数据采集系统,对一路数字信号进行采集,将采集编帧后的数据存储,并通过上位机软件进行数据的分析。
2 系统总体设计
图2.1 系统整体结构图
本设计的系统框图如图2.1所示。
该系统由422接口模块、FPGA控制模块、信号存储模块、USB通讯模块以及外围电路组成。其中,USB通信模块的设计利用了已有的研究成果。
422接口负责接收外部的RS-422数字量信号,并将其送入FPGA采集。FPGA将读取到的数字量信号先进行数据编帧处理,接着存入外部FIFO中,最后控制存储于外部FLASH之中。电路的整个时序由逻辑控制模块协调控制。
FPGA控制模块由FPGA及外围电路组成。FPGA是控制模块的核心部分,完成数据信号的采集、缓冲和传输控制。该设计方案选用FPGA作为主模块,主要是考虑FPGA现场可编程特性,使用灵活方便,能够降低硬件电路设计难度。把采集到的数据外部FIFO中。FIFO半满后,FPGA读取FIFO中的数据写入存储器中Xilinx 公司的Spartan-Ⅱ系列FPGA 中的XC2S100-6PQ208实现。XCF01SVO20作为EPROM,TPS70358作为供电芯片。XC2S100-6PQ208的核心电压为2.5V,I/O口电压为3.3V,具有与通用5V数字电路直接连接的能力。速度等级是-6,采用PQFP封装类型,管脚数有208个,最大可用的用户I/O数为140个。系统门数有100000个,逻辑单元数(LC)为2700个;切片数(Slice)为1200个;BlockRAM有10个,是完全同步的双端口RAM,总容量为40K;分布式RAM位总数是38400 bits[8]。断电后,程序会保留在FPGA中,不会清除,使应用更加方便。
3.1.2 数字通信接口芯片的选择
数字通信接口选择MAX490芯片,MAX490是MAXIM公司生产的差分平衡型收发器芯片。集成片内包含1个驱动器和1个接收器.适合于RS-485及RS-422通信标准。无误差传输数据的速率可达2.5Mb/s,若通信速率为100kb/s时,通信距离可达1200m[9]。
3.1.3 外部FIFO的选择
本设计采用FIFO数据缓存器。FIFO是指先入先出队列(First Input First Output,FIFO)这是一种传统的按序执行方法,先进入的指令先完成并引退,跟着才执行第二条指令。
图3.1 IDT7206时序图容量时,表明存储器已满。
作:只要FF标志不为0,就可以进行写操作,且可以与读操作同时进行。每写一次数据,写指针自动加一,当写指针与读指针的相对位置为存储器的容量时,标志FF清零。当FF标志为0时,所进行的任何写操作都不会改变存储器中的数据,也不会改变写指针的值。此时的写禁止由内部控制。
读操作:只要EF标志不为0,就可以进行读操作,且可以与写操作同时进行。每读一次数据,读指针自动加一,当读指针与写指针的相对位置为0时,标志EF清零。当EF标志为0时,所进行的任何读操作都不会改变读指针,且读出的数据都为0FFH。
文档评论(0)