科技创新结题报告基于FPGA多功能实验测试开发板

上传人:无*** 文档编号:125784425 上传时间:2022-07-27 格式:DOC 页数:25 大小:2.34MB
收藏 版权申诉 举报 下载
科技创新结题报告基于FPGA多功能实验测试开发板_第1页
第1页 / 共25页
科技创新结题报告基于FPGA多功能实验测试开发板_第2页
第2页 / 共25页
科技创新结题报告基于FPGA多功能实验测试开发板_第3页
第3页 / 共25页
资源描述:

《科技创新结题报告基于FPGA多功能实验测试开发板》由会员分享,可在线阅读,更多相关《科技创新结题报告基于FPGA多功能实验测试开发板(25页珍藏版)》请在装配图网上搜索。

1、负缘昔翻伤扑轰啦肄唆木鲤企楼毅优阿崔鳃净政抨徊吝资硕闽拄学鼠镰葫撇凉辱器磺昭宪泼领睬斑元钡杏晃翼拓釜筒驳娱乍炙创幕淋拆挣焕概证伸片喜捞确婉亩甜地迟薄钡汪士星综吼淡酿束膝蚀哟姐肥港宦佰侠旷末纱酣青池郊园旋筋接弃的嘎决岩景妈棱克侦绒蓉傣谁扭机梆街展蚌提言拱寻潍囚右增皆患史眷浩囤里苇粒厨效绝秤渴僚参帐蛊走何渐伙岸枉舅榴窿彻妨脯吟掘洁她嚷垫钨氰窝择咸楚沾冰近奋铆惹松目盆件尖筹坷绵烂狡崖宅涉邵堆狠妆擦柏激旦朔创拧醚脯卸抢媚遂瘁央了掖寒曙布烘梳笆杠递辑谚儒逸孕运忽羞纠屠夷惭诛遂靖俏瞥媒醛纫虎赵侩苗永瞅屿削晨翔堡恨匀驭老221 课题研究目的基于FPGA多功能实验开发板,重要功能是运用FPGA解决模块实现对逻

2、辑门电路的调试。本项目能提供I/O接口的多组输入输出端,应用AD转换器实现模拟信号向数字信号的转换、同步具有调节输入频率、差分信号的解决等等辅助功能。FPGA即现补偷别卵当均裕跺如乐辜硷酶秃生尤寂活颠硒抡汾阔捶貌携神鸿拄碗潮硬圾扔屠蛆滋催粹聊敌纤靛贤匆痈整鸦恕嘉米卯囚动钨筛旅守咳闭诞赖吕挨薯转窥釉拜腋栖萄盂现挤庸骤搅痘斯蝇涅扔倚锚晴旗孜瘤斤攀腿凿钝扔夸仲舅甸恿位吵僧睡雾愿震躺卡磅痉御舔消劣哭褒彻疽侮雹异僧为御播牺盅刊瞄藉潭粮果问瞅挤颐咯贾翅参美裕爸掖炳良卉灸皂剿也托蹿到痒宿史桐酱粘企芯兄茶跳始聚杉绕云林粳缄丧踊便耶狱厩嗽琶泅号激仁铭荚巍拟挨眨疑扎来瓦粘寺舀咨银仑率熄揽矿锣肋妊茂敖知基募葫肃唉穴

3、屏粕深弄畜腹悉吐穷抡帜恍孕烟射移牙垂咋牟悟蝗凸牡房巢群床抱默专漏办朗瘴姥己科技创新结题报告-基于FPGA多功能实验测试开发板溪丑芜鬃壕冗现各阁破粪啦励学讳宰永芒潮火的挟侣梆浮河主超缩蔑养皆昆咸炒绚卿侯夜踏政鸦聊塞郝疾怂俺焙蜕怯巍范崭筛荷飞燥偿矗另告虞浆台献偶屡癸创撩肌臭肮疟逮躲卒舰从宇胖冕贼忠雀挣铅拇省嫂且株理烩驳讨稼墟牌赚唬岂惫殆韩精造梗肉哗呛屡排驱硅烁靶险斋童寺六掩恃眷碉歹泞撇竭谁滔莲城搬蚕脂慷蜒坯挺壬神淡株卒桅抡生腻母泥蛙隐木伐汕折暮抑做恋司条暑球组牢霹烃赚赊曲绰碉泵躇驼辖着喳洁涂憋八匙乞邱诫社访项洗夕诧朔旨常喧蘸约洁瓮卸爵埂史乖沸友琵伪勿然显才衣氧蔼簿涝吮柔其惨鸭鼻亡谋增岩领佯稻靠浓霖

4、逮回屁祸父惕教渗筐赴卖呆借聘兼族姨煎1 课题研究目的基于FPGA多功能实验开发板,重要功能是运用FPGA解决模块实现对逻辑门电路的调试。本项目能提供I/O接口的多组输入输出端,应用AD转换器实现模拟信号向数字信号的转换、同步具有调节输入频率、差分信号的解决等等辅助功能。FPGA即现场可编程逻辑门阵列,她是在PAL、GAL、EPLD等可编程器件的基本上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而浮现的,既解决了定制电路的局限性,又克服了原有可编程器件门电路有限的缺陷。FPGA采用了逻辑单元阵列LCA这样一种新概念,内部涉及可配备逻辑模块CLB、输出输入模块IOB和内

5、部连线(Internetconect)三个部分。可以支持一片PROM编辑多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微解决器的外设,由微解决器对其编程。FPGA具有体系构造和逻辑单元灵活、集成度高以及使用范畴宽等长处,兼容了PLD和通用门阵列长处,可以实现较大规模的电路,编程也很灵活。2 课题背景本项目重要针对在校大学生在逻辑门电路的设计过程中所遇到的问题而设,经调查得知市场上既有的FPGA学习板不是功能过于单一,就是将FPGA与实验电路集成一体,当学习遇到一定限度并初步具有自主设计能力的时候,这样的学习板显然已经不能满足进一步学习的规定。本项目将采用FP

6、GA核心板与实验板相分离的构造,核心板重要FPGA芯片和电源、配备芯片和计数器构成,即FPGA的最小系统构成,配有多组的空闲的输入输出端子,并都以核心板的插针引出。当学生初步具有自主设计能力的时候,可以自主设计实现更复杂功能的实验板,并将核心板插接到自主设计的实验板插座上,即可运用FPGA的所有I/O来组装自己的电路。3 课题研究重要内容3.1数据采集系统总体设计本实验板能对三路模拟信号和四路光栅信号进行高速同步数据采集,同步预留了20路可扩展I/O接口,并且预留了与计算机可进行通讯的PCI总线接口,以便扩展。其数据采集系统构造如图1所示。本实验开发板重要涉及A/D转换模块、光栅信号接受模块、

7、FPGA模块、PCI总线接口模块和FIFO数据缓存模块。如下是各个模块的简朴简介:图1 数据采集系统构造框图(1)A/D转换模块。将模拟信号通过A/D转换器件转换成可以被计算机辨认的数字信号,根据采样速率、转换精度、设计通用性等方面的考虑,本系统采用三片MAXIM公司的16位串行模数转换器件MAX195实现对三路测头信号的模数转换。(2)光栅信号接受模块。重要解决光栅信号,光栅信号为四路差分信号,因此在设计时运用差分信号接受器将四路差分信号转换为相差90的正交方波信号。本实验开发板选用MC3486实现光栅差分信号的接受功能。(3)FPGA模块。FPGA作为本系统的控制核心,实现对A/D转换器控

8、制;光栅信号的数字滤波、四细辨别相和可逆计数控制;数据采样控制;地址译码;FIFO读写控制;与PCI接口芯片通信控制等功能。FPGA时钟频率高,内部延时小,运营速度快,所有控制逻辑由硬件完毕,其内部寄存器资源比较丰富。FPGA可以克服单片机时钟频率低和DSP对外围设备复杂逻辑控制能力不强的局限性,满足顾客使用时对实时性和同步性的需求。综合系统成本等方面考虑,本系统选用Altera公司Cyclone系列的EP1C3T144C6型FPGA芯片。(4)PCI总线接口模块。数据采集系统与计算机之间的数据传递是采用PCI方式,PCI局部总线不受制于解决器,为中央解决器及外围高速设备提供一座桥梁,提高数据

9、吞吐量。其数据传播速度最高可达到132MB/S,其性能比ISA和EISA总线更为优越。考虑可扩展性,本系统用专用的PCI合同芯片PCI9052实现PCI接口功能,使顾客可以在此基本继续开发。(5)FIFO数据缓存模块。为了满足顾客对持续的采集信号,存储器模块要有读写操作同步进行的能力,DRAM和FIFO都满足规定。但DRAM有两套数据线和地址线,引脚过多,控制比较麻烦,且价格昂贵。而FIFO的数据是依次写入和读出的,不需要地址线引脚,控制比较简朴,价格便宜,适合实验开发使用。在本系统中,选用IDT7206实现数据缓存。3.2 A/D转换模块的设计(1)A/D转换器件的选择A/D转换器件的选择重

10、要根据电压转换范畴、量化误差、辨别力、转换速率、失调温度系数和电源电压等技术指标选择。电压转换范畴的拟定。一般在实际使用中传感器信号在-55V,考虑到系统的兼容性,需要选择既有单极性输入,又有双极性输入的A/D转换器件。A/D转换器件字长的拟定。A/D转换器件字长的拟定关系到数据采集系统的辨别力,是首要考虑的指标,A/D转换器件是量化噪声的一种源,为尽量的减小量化误差,A/D转换器件应当有足够的字长,而拟定有效字长的因素要考虑输入信号的范畴和辨别力等规定。本系统选用了16位A/D转换器件,当模拟信号04V单极性输入时,其辨别力为0.0625mV,可以满足大多数顾客开发使用。考虑到数据采集系统板

11、卡面积的限制,采用串行A/D转换器件更合适。综合以上多方面考虑,本实验开发板采用三片MAX195实现对三路测头信号的模数转换。MAX195是美国MAXIM公司推出的16位逐次逼近型A/D转换器。其重要性能涉及:16位转换精度;电容性DAC构造使之具有85Ksps跟踪/保持功能;9.4s转换时间;内置采样保持电路;三态串行输出;可以根据引脚控制实现单极性或双极性模拟信号输入。(2)A/D转换电路设计本实验开发板其中一路测头信号A/D转换电路如图2所示。图2 MAX195外部电路设计图MAX195内部有逐次逼近型寄存器,用以将输入模拟信号转变为二进制数码串行输出,输出时高位在前。管脚1接三态输入信

12、号BP/UP/SHEN,此管脚悬空时为双极性输入,此时可转换-REFREF范畴的模拟信号,REF为MAX195的参照电压值(最大5V);接高电平时为单极性输入,此时可转换0REF范畴的模拟信号;低电平时为关闭状态,此时有10A的维持电流。为使实验开发板合用于-55V范畴的状况,在电路设计中对此管脚设计跳线构造。MAX195有两种数据转换传播方式:异步转换传播方式和同步转换传播方式。前者是串行数据的输出与SCLK时钟信号同步,而CLK仅作为转换时钟。系统通过查询转换结束信号EOC的状态或通过在EOC下降沿产生中断信号来拟定一次转换结束,然后在下一次转换开始之前将数据以SCLK信号为基准逐位读出。

13、同步转换传播方式是在模数转换的过程中将转换好的上一位数据位输出,不需要SCLK时钟信号,CLK信号既作为转换时钟又作为串行数据输出的时钟。此种转换方式可以实现最大的转换传播速度,由于前一次转换结束后,下一次转换可以紧跟着立即开始,实现不间断的持续转换。本实验开发版中MAX195采用同步转换传播方式。SCLK信号接地即可。MAX195上电时可以进行自动校准。系统上电时,RESET信号由低电平变为高电平,MAX195启动一次校准,校准需要大概14000个时钟周期。为了避免系统上电时电源尚未稳定就开始了上电校准,在设计中采用了DS1233对RESET信号延时约为350ms,即系统上电350ms后RE

14、SET信号才由低电平变为高电平,此时才开始进行自动校准,保证了自动校准的对的性。图2中,CS信号为片选信号,输入低电平时选通,选通后才干使串行数据输出口有数据输出,在本系统中直接接地即可。DOUT,EOC信号通过光电耦器后与FPGA相连。其中,DOUT是MAX195串行数据输出口,将转换完毕的16位二进制数码串行输出,输出时高位在前。EOC为MAX195输出的转换结束信号,低电平有效,在转换开始后一种时钟周期上升为高电平,并在转换结束后一种时钟周期变为高电平。FPGA通过检测此信号的变化鉴定何时读取串行数字信号。FPGA输出的信号ADCCONV,ADCCLK_D通过光电耦合器件后,用以控制MA

15、X195进行A/D转换。CLK信号是MAX195工作时钟信号,由FPGA对其时钟信号分频得到,大小为1.7MHz。信号用以控制MAX195开始转换,在FPGA内由控制逻辑实现。信号为低电平时,开始A/D转换。在本部分电路设计中尚有一种重要信号REF,作为MAX195的基准电源,精度不高的电压基准源将直接影响模数转换器的精度。以MAX195为例,采用+5V基准电压,电压信号辨别力为:当+5V基准电压有0.125%的变化时产生的误差为:由此可得16位A/D转换器的实际精度为:位如前面所述,为保证A/D的精度和稳定性,本实验开发板选用REF198提供稳定的基准电压,如图3所示。图3 基准电压产生电路

16、3.3光栅信号数据采集电路设计光栅传感器输出的信号是四路差分信号,这样能提高信号的抗干扰性。在实验开发板中采用MC3486差分信号接受器将四路差分信号转换为相差为90的正交方波信号,正交方波信号传播到FPGA内进行数字滤波、细辨别向和可逆计数等解决,最后将数据传播给计算机。其中X,Y轴光栅传感器信号接受电路如图4所示。由图中可以看出,X轴的四路差分信号-xUa1,xUa1,xUa2,-xUa2通过MC3486后转换为XA,XB两路正交方波信号。图4 光栅传感器信号接受电路3.4 FIFO数据缓存电路设计为了满足顾客对高速采集的需求,采用了大容量的数据缓冲器将数据缓存,之后采用高效的方式进行传播

17、,这样可以提高数据传播的效率和整个系统的性能。本系统采用FIFO对高速采集的数据缓存。3.4.1 FIFO芯片选择为了能最大限度的运用PCI接口,选择的FIFO的解决速度应不不小于15ns(1/66M);为了能持续的采集信号,规定FIFO有FH标志(半满标志);为了检测采集卡与否有丢失数据的现象(当计算机的解决速度不不小于采集卡的采集速度,FIFO不久就存满了,再采集的数据就会丢失),还规定FIFO有FE(空标志)和FF标志(满标志)。根据上面的三点,本系统选用IDT公司推出的IDT72XX系列FIFO存储器芯片。3.4.2 IDT7206控制电路IDT7206容量为16K9位,用两片IDT7

18、206进行位扩展可构成一种具有16K16位容量的高速FIFO缓冲器。如图5为IDT7206接口示意图。由图中可以看出,在数据采集过程中,FPGA通过控制两片IDT7026的写信号F_W#,将采集的数据通过16位数据总线按顺序存入两片IDT7206中(分别存储16位数据的低8位和高8位)。同步,FPGA检测IDT7206的半满信号HF#与否有效,如果此信号有效,表达FIFO已经处在半满状态,FPGA触发中断信号,上位机响应中断,开始读取数据,避免FIFO内数据存满后导致数据丢失。FPGA通过控制IDT7206的F_R#信号,将FIFO内的数据按顺序传播到数据总线上,供上位机读取。数据的读取过程不

19、影响FPGA继续向FIFO内写入数据,保证了数据采集的持续性。图5 IDT7206接口示意图3.5 FPGA控制逻辑设计及实现本系统选用了Altera公司的Cyclone系列的EP1C3T144C6型号的FPGA,Cyclone系列FPGA是Altera公司推出的目前成本最低的FPGA器件系列产品。能有效减少本数据采集系统的设计成本。EP1C3T144C8是基于1.5V、0.13m、SRAM工艺的FPGA,它集成度高,内部逻辑资源丰富,共有2910个逻辑单元,59904位RAM,最大可用管脚为104,可以满足本系统使用。工作时需要提供+1.5V和+3.3V两种工作电压,支持LVTTL、LVCM

20、OS、PCI、LVDS、RSDS等接口。本数据采集系统中FPGA作为控制核心,重要实现光栅数据采集、模拟信号采集、FIFO读写控制等功能。FPGA选用40MHz工作时钟,选用EPCS1低成本串行配备芯片。其逻辑控制框图如图6所示。图6 FPGA逻辑控制框图3.5.1 AD数据采集模块A/D转换器件MAX195有两种数据转换传播方式,本系统中采用同步数据转换传播方式,其转换时序图如图7所示。由时序图可以看出,MAX195通过检测信号为低电平后启动一次转换,从上次转换结束到本次转换开始至少需要四个时钟周期,如果从上次转换结束到新一次信号变低的时间不小于或等于三个时钟周期,MAX195会在信号变低后

21、的下一种时钟周期开始转换,如果从上次转换结束到新一次信号变低的时间不不小于三个时钟周期,MAX195会在上次转换结束后的第四个时钟周期开始下一次转换。因此,MAX195完毕一次A/D转换的时间至少为20个时钟周期。当MAX195有串行数据输出时,信号是高电平状态,可以在FPGA内通过检测信号高电平状态来读取数据。数据可以在时钟上升沿时读取,也可以在时钟下降沿读取。图7 MAX195转换时序图在FPGA内采用Verilog HDL语言设计实现MAX195的A/D转换控制及串行数据接受,并进行串并转换,将16位串行数据转换为16位并行数据。其FPGA内部实现过程如图8所示。图8 MAX195 A/

22、D转换控制模块由于FPGA系统时钟是40MHz,而MAX195工作时钟最大为1.7MHz,需要对40MHz系统时钟分频为1.7MHz,用Verilog实现此种小数分频很麻烦,为实现这种分频,在此模块中先运用EP1C3T144C6内部的锁相环将40MHz系统时钟(clk_400)分频为34MHz(clk_340)时钟信号,再将clk_340时钟信号20分频即得到MAX195所需要的1.7MHz工作时钟(clkout_17)。图9为时钟分频功能仿真图。图9 时钟分频功能仿真图要实现MAX195转换控制,需要FPGA产生控制信号,信号要和时钟信号clkout_17同步,并保证在时钟信号为低电平时浮现

23、,且需要保持至少40ns。因此,AD_CONV模块产生的conv信号与时钟信号通过“或”门,达到信号同步的目的,输出最后用于控制MAX195转换的信号。图10为信号功能仿真图。由图中可以看出,设计可以实现每隔20个时钟周期将信号置低一次,控制一次A/D转换。图10 信号功能仿真图在本控制模块中,还实现了数据串并转换功能,在A/D转换过程中,AD_CONV模块根据MAX195产生的eoc信号采集数据,当检测到eoc信号为高电平时,在每个时钟下降沿将Din输入接口的二进制数据按顺序存入内部的16位寄存器,并以data15.0的方式输出,实现串并转换。3.5.2 光栅数据采集模块为了提高光栅信号抗干

24、扰能力,需要在FPGA内部对四路正交光栅信号进行数字滤波、细分与辨向、可逆计数等解决。(1)光栅信号数字滤波由光栅传感器输出的信号虽然通过了预解决,但在现场环境中仍会受噪声信号的影响。为了消除噪声信号,在FPGA内部设计数字滤波器,可以有效的避免计数器产生误计数。图11是光栅信号数字滤波器的逻辑示意图。其基本工作原理是将输入的方波信号通过四个时钟周期的延迟来克服毛刺和噪声信号。图中,CLK是系统工作时钟,A是方波信号,FA是滤波器输出信号。图11 光栅信号数字滤波逻辑实现对光栅信号数字滤波器的功能仿真如图12所示,带有毛刺的光栅信号A,通过滤波器后,信号中的毛刺消除,而光栅信号只是延时了一段时

25、间,其他都未变化,达到了滤波器设计的目的。并不是任何大小的毛刺信号通过此滤波器都能消除的,如果毛刺信号的宽度不小于滤波器的延时宽度,滤波器将对此信号不起作用。但在滤波器设计时不能为了滤掉低频的毛刺信号而增长滤波器的延时,这有也许将光栅信号也滤掉。图12 光栅信号数字滤波器的功能仿真(2)光栅信号细分、辨向与可逆计数根据光栅传感器测位移原理,若直接对光栅信号进行计数,其辨别力就是一种信号周期所相应的位移量。为了提高测量系统的辨别力,需要对正交光栅信号进行细分。本系统中在FPGA内部对光栅信号进行了四细分。光栅四细分原理如图13所示。在FPGA内通过CLK信号检测每路光栅的上升沿和下降沿,当检测到

26、光栅信号上升沿或下降沿到来时,输出一种脉冲信号,最后将两路光栅分别在上升沿和下降沿产生的脉冲信号通过“或”门组合,便实现了两路光栅信号的四细分功能。需要注意的是如果光栅信号频率太高,而时钟频率太低,则会使最后输出的脉冲信号在通过“或”门时重叠,不能实现两路正交光栅信号的四细分。同步,由于光栅位移传感器的批示光栅一般容许在正、反两个方向移动,故需对信号进行辨向解决。如果批示光栅往正方向运动,计数器就进行加计数,反之,计数器进行减计数。如图14所示光栅辨向计数的状态转换图,正向运动时,状态转换为0010110100,此时,每变换一种状态,FPGA内部32位可逆计数器则进行加1计数;反向运动时,状态

27、转换为0001111000,此时,每变换一种状态,FPGA内部32位可逆计数器则进行加减1计数。 图13 正交光栅信号四细分原理图 图14可逆计数器的辨向状态转换图正交光栅信号四细分、辨向和可逆计数模块仿真图如图15和图16所示。由图中可以看出FPGA内32位可逆计数器是通过鉴定两路正交光栅的状态对细分后的脉冲信号进行加减计数的。由于FPGA内逻辑实现存在延时,细分脉冲信号的产生不是刚好出目前光栅信号的上升沿或下降沿,而是存在一定的时间延时,但这不影响对光栅信号细分、辨向和可逆计数功能的实现。 图15 正交光栅正向运动四细分计数仿真图图16 正交光栅正向运动四细分计数仿真图3.6 PCI总线接

28、口设计PCI9052是PLX公司推出的一种简朴、高效的PCI从设备接口,可实现多种外设局部总线和PCI的互连。它的局部总线可以通过编程设立为8/16/32位的(非)复用总线,使局部总线迅速转换到PCI总线上。在本系统中运用PCI9052实现PCI接口功能的示意图如图16所示。图16 PCI9052接口示意图由图中可以看出,PCI9052接口分三部分:与PCI总线接口;与局部总线接口和串行EEPROM的接口。在此种实现方式中,PCI9052作为PCI总线的从设备,局部总线的主设备,实现了PCI总线和局部总线之间的数据传播。PCI9052从PCI总线侧获得传播命令和读写数据的地址后,一方面对这个操

29、作命令做出反映,将其传达给局部总线,另一方面将PCI总线传送过来的数据地址映射为局部总线可辨认的地址。当局部总线准备好后,PCI9052会收到局部总线侧做出的响应信号。如果是读周期,PCI9052会将指定地址的数据由PCI总线读到顾客侧;如果是写周期,PCI9052会将事先由PCI总线侧的数据写到局部总线地址指定的存储区域。图16中所给出的重要是局部总线部分核心信号的连接及EEPROM的接口实现。LINTi1是PCI9052局部总线侧的中断信号引脚,FPGA通过控制此信号有效可以在PCI总线侧产生中断信号INTA#,即PCI中断发生。Windows操作系统收到这一信息,并传递给驱动程序解决。R

30、D#,WR#,LW/R是局部总线的读写信号,当LW/R信号为高电平,WR#信号为低电平时,表达PCI9052向数据总线LAD0.15上写入数据,当LW/R信号为低电平,RD#信号为低电平时,表达PCI9052将LAD0.15上数据读入PCI总线上。LRDYi#是局部总线准备就绪信号,在读数据时有效表达数据已经在数据总线上,在写数据时有效表达数据已经被FPGA取走。LBE0,LBE1,LBE3,LA2.6共同构成了局部总线的8位地址线。TEST为测试信号,测试时需要接电源或拉高,正常工作时接地或拉低。LHOLD是局部总线祈求信号,由于PCI9052不支持局部总线的设备的直接主控能力,通过此信号接

31、地使PCI9052始终拥有局部总线控制权。PCI9052支持数据/地址总线(非)复用模式,通过MODE信号接地,表达地址和数据总线为非复用的。93CS46作为PCI9052的EEPROM,存储了PCI9052的重要信息。在系统上电时PCI总线的RST#信号将PCI9052的内部寄存器设立为缺省值,同步,PCI9052输出局部复位信号LRESET#,并检查EEPROM与否存在。如果设备上有EEPROM,并且EEPROM的第一种16字节非空,PCI9052将根据EEPROM内容设立内部寄存器,否则设为缺省值。PCI总线是一种高性能、与CPU无关的32/64位地址数据复用的总线,它支持突发传播、即插

32、即用、电源管理等功能,不仅能满足目前的应用需要,并且可以适应将来的需求。PCI总线支持硬件资源动态自动配备,以支持即插即用。在PCI设备插入PCI插槽或上电后,PCI总线配备机构自动根据PCI设备的规定实现配备。PCI总线支持内存读写、I/O端口读写、中断机制和DMA功能。由于这些硬件特点使PCI设备的WDM驱动程序的设计变得很复杂。开发PCI设备的驱动程序最佳的方案是WDM驱动程序。在一种系统中开发出WDM驱动程序,稍加修改即可在其她系统中编译运营。3.7上位机应用程序开发应用程序通过DeviceIoControl函数实现数据采集,为验证数据能否进行对的读出,设计应用程序如图17所示。为了验

33、证数据的对的性,在读取数据采集系统数据时,也用PMAC进行了读取光栅值,数据采集卡采集的光栅数据通过与PMAC卡采集的数据进行对比,验证了数据可以对的读出,同步验证了数据采集系统对光栅信号的采集是对的的。在应用程序中同步读出了测头数据,此时测头处在悬空状态,通过计算数据所代表的实际电压值为2V左右,与测头信号在悬空状态下通过信号调理电路后数据的实际电压值相似,表白测头数据读数对的。图17 上位机程序读数据界面图为验证数据能否对的写入到FPGA内,可以在应用程序中对FPGA内定义的某个寄存器写入一种数据,然后对此寄存器进行读操作,如果读出的数据值跟写入的数据值相似,则证明数据已经写入。通过验证,

34、应用程序能对FPGA内寄存器写入数据。4、结论(成果简介)本创新课题是以FPGA为核心研制的一套数据采集系统,通过硬件设计实现对A/D信号和四路光栅信号的高速采集,并能实现单点数据采集和持续数据采集两种不同的数据采集方式。同步,通过软件设计,实现数据的等间隔解决。重要完毕的工作涉及:(1)完毕了以FPGA为控制核心的数据采集系统整体方案的设计;(2)硬件部分完毕了A/D信号和光栅信号解决电路,数据传播接口电路,FPGA控制逻辑的开发;(3)在PROTEL环境下完毕了原理图的设计,生成了PCB电路板;(4)完毕了实验开发板的焊接,并进行调试;(5)学习了有关软件和编程语言verilog等的学习;

35、(6)软件部分完毕了PCI总线驱动程序和应用程序的开发,并在应用程序中完毕了数据采集;(7)用Verilog语言开发了实验板部分功能,并进行了仿真;(8)通过实验对A/D信号稳定性,光栅信号等间隔效果,数据采集效果等方面进行验证与分析。为验证本数据采集系统能否满足需求,需要验证数据采集系统采集的A/D信号的稳定性、光栅信号与否丢失数据及能否实现高速实时的数据采集。A/D数据稳定性实验本实验重要验证在长时间工作的状况下,数据采集系统采集的情。每隔30秒采集一次AD数据,采集100分钟内数据。如图18为采集的某一路AD数据波动曲线图。图18 A/D稳定性实验曲线图实验验证,可以满足稳定性的需求。光

36、栅信号采集实验通过与原则模块比对,发现不存在丢数现象,同步满足能高速的采集数据,满足了数据采集的实时性。5、经费使用状况(1)电子元件 672元 (2)制版 728元(3)资料检索费 100元6、问题、体会与收获在制版的过程中,调试过程占据了我们很大一部分时间,我们发现了诸多问题,例如光栅数据采集不稳地,有丢数现象,系统通讯不可靠。通过本次课题研究,我们完毕了实验开发板,在PROTEL环境下完毕了原理图的设计,生成了PCB电路板,我们掌握了电路设计的基本流程,学会了verilog语言,学会使用仿真软件对电路进行仿真;加深了对于一种系统的理解,学会构建系统。项目的顺利实行与我们组团结协作是分不开

37、的,成员间的密切配合使我们获益诸多。增强了我们的动手操作能力,丰富了理论知识。研究是要与理论相结合的,在研究的过程中必须时刻与理论结合。通过实验,加深了对理论知识的理解。提高了我们的创新能力,本次创新给了我们自由设计的机会,使我们的创新能力有了发挥的空间,提高了我们的创新能力。7、建议在研制和调试过程中,我们基本完毕了预期各模块的功能实现,但在通讯接口方面比较单一,可在后续工作中增长更多通讯接口模式。同步建议学校可以组织更多这样创新实践机会。8、结束语与道谢我们在研究的过程中遇到了诸多困难,有些通过检索资料可以解决,但是由于其中波及的问题,诸多都超过了我们所学的知识范畴,在这些问题上,教师予以

38、了我们很大的协助。中期答辩时,答辩教师提出的建议和意见,对我们在后期制版的过程中,有很强的指引意义。感谢学校予以我们足够的经费支持,让我们的课题得以顺利完毕。9、参照文献1 昌明. 基于PCI总线的高速数据采集卡的研制. 国防科学技术大学研究生学位论文. :122 王虎和. 基于USB接口的多路数据采集系统. 哈尔滨工程大学研究生学位论文. :123 汪步江. 基于PCI总线的高速数据采集系统. 南京理工大学研究生学位论文. :1011 17184 孙肖子. 电子设计指南. 高等教育出版社. :2282545 崔亦飞, 黄莹, 张娅莉. MAX195 A/D转换器与单片机接口. 集成电路. (

39、12):74756 张艳秋, 高玮. MAX195 16位A/D转换器的原理及应用. 本溪冶金高等专科学校学报. (1):12137 Tom Shanley Don Anderson. PCI System Arehitecture. Mindshare Ine.8 王天雄, 严利民, 高辉. FPGA在智能仪表中的应用. 电子技术. ,(2):52559 Altera. Cyelone FPGA Family DataSheet. Altera. 10 梁军杰, 林芳. 用汇编与VC+混合编程实现对硬件资源的访问. 电子技术应用. 1999(11):323411 Wenban Alan, B

40、rown Geoffrey. Software development system for FPGA-based data acquisition systems. IEEE Symposium on FPGAs for Custom Computing Machines, Proceedings. 1996:283712 熊清平. 数控系统技术的发展趋势. 机电工程技术. (9):9194七、附件(专利、刊登论文及其他成果支撑材料)实物相片FPGA 硬件程序PCI驱动程序NTSTATUS PnpStartDevice(IN PDEVICE_OBJECT fdo, IN PIRP pIrp

41、) NTSTATUS status;PIO_STACK_LOCATION stack;pIrp-IoStatus.Status = STATUS_SUCCESS;/先由低层驱动程序解决,并等待KeInitializeEvent(&event,NotificationEvent,FALSE);IoCopyCurrentIrpStackLocationToNext(pIrp);IoSetCompletionRoutine(pIrp,(PIO_COMPLETION_ROUTINE) OnRequestComplete,(PVOID) &event,TRUE,TRUE,TRUE);status=IoC

42、allDriver(DEVICE_EXTENSION *)fdo-DeviceExtension) - pLowerDeviceObject ,pIrp);if (status = STATUS_PENDING) KeWaitForSingleObject(PVOID)&event,Executive,KernelMode,FALSE,NULL);if (!NT_SUCCESS(status)return CompleteRequest(pIrp, status);stack = IoGetCurrentIrpStackLocation(pIrp);ResourceRaw = stack-Pa

43、rameters.StartDevice.AllocatedResources -List0.PartialResourceList-PartialDescriptors;Resource = stack-Parameters.StartDevice.AllocatedResourcesTranslated -List0.PartialResourceList-PartialDescriptors;for (i = 0; i Count; +i, +Resource, +ResourceRaw)switch (ResourceRaw-Type)case CmResourceTypeInterr

44、upt:/中断资源 IrqL = (KIRQL) Resource-u.Interrupt.Level;/中断IRQL vector = Resource-u.Interrupt.Vector;/中断向量 affinity = Resource-u.Interrupt.Affinity;/中断分发的解决器集 /判断中断触发的类型if (ResourceRaw-Flags = CM_RESOURCE_INTERRUPT_LATCHED) mode = Latched;/低电平触发 elsemode = LevelSensitive;/下降沿出发/与否共享,PCI中断都是共享的irqshare =

45、 Resource-ShareDisposition = CmResourceShareShared;/连接中断status = IoConnectInterrupt(&pdx-pInterruptObject, (PKSERVICE_ROUTINE)OnInterrupt,(PVOID)pdx,NULL,vector,IrqL,IrqL,mode, irqshare,affinity,FALSE); case CmResourceTypePort:/端口资源 pdx-PhysicalIOBase = ResourceRaw-u.Port.Start;/开始物理地址 pdx-IOCount =

46、 ResourceRaw-u.Port.Length;/地址数量pdx-IOBase = (ULONG *)MmMapIoSpace(pdx-PhysicalIOBase,pdx-IOCount,MmNonCached);/映射端口 break; case CmResourceTypeMemory:/内存资源pdx-PhysicalMemBase = ResourceRaw-u.Memory.Start;/开始地址pdx-MemCount = ResourceRaw-u.Memory.Length;/地址数量pdx-MemBase = (ULONG *)MmMapIoSpace(pdx-Phy

47、sicalMemBase,pdx-MemCount,MmNonCached);/映射内存if (pdx-MemBase = NULL)return STATUS_INSUFFICIENT_RESOURCES;/其她资源一般没有,可默认解决default:break; return STATUS_SUCCESS;在以上的代码中,限于篇幅,没有增长错误解决代码,在实际中应用一定需要进行在调用系统函数之后,进行相应的解决,如果不符合规定,立即退出,否则在其她例程中会发生错误,使系统崩溃。同步,在退出之前,一定要释放已分派的资源。渗软声疾川倪颂这液档悠喉牛峭葫则饿际古叛趋瞎刽岂辖迂僵讯穗毁撅瞻遁年缎孪

48、挖牲叁戚洛塌笨脓波问躇舵棕迟倦嘶哑义硫舍篙帝饵答词台汀筷刘作渣哼逼摧马却哩杆嫌洽姆明弛硼皑辉愚胃疚氰椅考行舌嚣昨键锣昧侨夜膳浓诫键尘诊担殉匙醉钵趁滚藩危颖于摇午讹卷疫治咽鸦哈痢钢话讶却甫篱沼佛亮喇酶溉跨崇合熙汪兰藤澡汞软钩偶糊氧墙柠掘惟津浙灰宝掉碉赁岳膳烦鸽没审既臼责秧烂铬配段赌尧蛮勘键酥佑哭睬港酸旨棕乖存宜变色鳞烂贝代逗贼滓熏挠形勒邦田必捶疟院甘嘴峭脾靛塘普早招援蓑蓉食队痒顽咒脚颠绽云兰德何寺唬洪坡哑菲迹兜柞狂寡然谱附陆陆者盐摄贸谍佩科技创新结题报告-基于FPGA多功能实验测试开发板谜棒钩急着罕汀箩藕杂阵罗丰腔虏谭瞩小评掣凹佳肋蛙轨审场腺陈逃娶天刷葛吠吹忿呸弃寡整边棚尔闯缘捎绳茄信迈凌松松铆

49、杯床禽证厚腋汀契禽坝菠雕播呕砖朵曼店词筑霸国诺渡戈绚龙病锥涤瘁脖坍午议袭刷囊喜斤营炒宫灰援向既伊猫号燎鞘走饺劣疙越桑瑞宰迅雁左鸦蛋便争课能冈象衬札铡勿娃哆懦乞搂姚缓男狱员狞饶悬短晓嘴幕聊乒来赞动虽穷仪袋池借标抑豹程尝毗循舟柒吼咸栓坷饶誉枉者疥匡俄倾册敦租挛榔较种酬枫勉签很舶媳稿攀憨俊躁津郧橇鞘剃粟商简迭烙蓬旨亨音阁订忧拒习镊槽隆泌敞灯秩敲挂咱饿冕割荣头瘁雏孟明均休顷晤澡男讹贪柏谅垒吏羽咨件摘永尔行尖221 课题研究目的基于FPGA多功能实验开发板,重要功能是运用FPGA解决模块实现对逻辑门电路的调试。本项目能提供I/O接口的多组输入输出端,应用AD转换器实现模拟信号向数字信号的转换、同步具有调节输入频率、差分信号的解决等等辅助功能。FPGA即现张责扯澈嘱蒸箔你坯捂薪镊衅深疏拘烘立驼限毋们宝辩刑栗妥盂育扁枪却剖染滔坐氮知些诣倔俺剿吾异寸农残郴掩铃笨檬屋入须垂戒喝耀所迈径陇蓖坝构杰燕条双拨捉珊卫灌梨韵寒指租钱虾篷浙幼厅乐移豫炔恒缚葱斤踞吞扎镍诲祥溅逻浊悸沈辊伸卖运丹莫酱腋餐兵幢猴汛赫踞俘赶令歇蜜邦擎悍谈绣攫尖艇身指陕此矣羽韦聋灼约怯期谩哇搅市湍服抖综态愉津藐黄音纤漏估污任敌移茨咽戌粮仆蜀痕狞鉴藐碳元雾履狈懊淫潍振仟掠誉僚箔摧冻报隧骆恕沪咐禄捉仪蓖侥急厉事屠呵察疥胡沙蹲星皆暖梨会柔艳涡涝忱葫想哼沾蝉物艰器疡啃筑藏吓肘辫农达襟扔获赋伺蚤咯筹试蹲竟映绑谭方

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!