VHDL语言的AD采样控制器设计.doc_第1页
VHDL语言的AD采样控制器设计.doc_第2页
VHDL语言的AD采样控制器设计.doc_第3页
VHDL语言的AD采样控制器设计.doc_第4页
VHDL语言的AD采样控制器设计.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

2011级学生EDA课程设计 EDA课程设计报告书课题名称 VHDL语言的A/D采样控制器姓 名*学 号*院、系、部物理与电子科学系专 业电子信息科学与技术指导教师* 2013年11月20日一、设计任务及要求:设计任务:1、利用ADC08138高速串行接口IO配置8个通道的输入多路转换器具有电压参考及跟踪保持功能。 2、用VHDL程序来控制ADC08138的主要程序要 求: 首先进行预设计,根据设计的任务要求,先确定设计方案,然后进行硬件电路的初步设计,在计算机上画出硬件电路图,在老师的指导下进行修正硬件电路图,并对所涉及的参数进行计算。在确定硬件的基础上,要进行软件的总体设计,包括软件主流程的设计以及各子程序的设计,同时,要写出详细的操作说明。然后进入硬件的调试及编程工作,设计组内的同学可根据任务分工,有调试硬件各功能模块的,有进行整体程序的编制的,各模块的编制过程中要注意资源的衔接。最后进入联机调试,联机调试的原则也要采用分步走的原则,各个功能模块要逐步套入,通过一个再增加一项功能,从而达到设计的总体要求,不要上来编制个最大的程序,最后无法查找错误。最后写出设计报告。指导教师签名: 年 月 日 二、指导教师评语:指导教师签名: 年 月 日 三、成绩 指导教师签名: 年 月 日 目 录一、绪 言1二、系统设计12.1 ADC08138介绍12.2 软件流程图3三、VHDL程序设计4四、计算机仿真分析6五、结束语6六、参考文献7 一、绪言 现场可编程门阵列FPGA(Field Programmable Gate Array)是80年代中期在PAL、GAL等逻辑器件的基础之上发展起来的一种可编程逻辑器件,特点是高集成度、高速和高可靠,开发周期短,投资风险小,产品上市快。VHDL是目前通用的硬件描述语言(HDL,Hardware Description Language)之一,可用来描述一个数字电路的输入、输出以及相互间的行为与功能。其特有的层次性由上而下的结构式语法适合大型项目的设计,并且修改方便、移植性强,其源代码已成为一种输入标准,可用于各种不同的EDA工具。使用VHDL来设计数字系统已成为当今电子设计技术的一种趋势。由于FPGA本质上仍是数字逻辑电路,当需要控制模拟量时,就必须在外围增加A/D 转换,进行相应控制。与微处理器或单片机相比,FPGA更适用于直接对高速A/D器件的采样控制。许多文献介绍了并行工作的A/D器件与FPGA接口,本文以高速串行I/O A/D转换器ADC08138与ALTERA公司的EP1K30接口为例,介绍了基于VHDL语言用FPGA来控制串行A/D的电路设计技术。 二、系统设计2.1 ADC08138介绍 ADC08138是有8通道的8位逐次逼近式串行I/O A/D转换器,模拟输入可配置成单端、差分和准差分模式。ADC08138能提供2.5V带隙派生基准电压,串行数据联系只需要很少的I/O口,不需要零点及满量程调节,带有模拟输入采样保持器及8路输入转换器,功耗低(最大值20mW)、转换时间快(f=1 MHz,8us最大值)。广泛应用于数字传感器、过程控制、监测等领域。 用FPGA设计的采样控制器ADPT与ADC08138的接口电路如图1所示。/CS为AD08138的片选信号。转换开始时为低电平。 图1 采样控制器与ADC08138接口控制图每个时钟上升沿数据从DI输入到其内部的MUX地址转换寄存器。出现在线上的第一个逻辑“1”为启动位“START”。启动位后的第2位到第4位分别为SGL/DIFF、SELECT CIT 1、SELECT BIT 0。由它们来决定ADC08138的工作方式。 其中SGL/DIFF与COM决定是按单端、差分还是准差分方式进行工作。单端输入方式时COM接地;差分输入方式限制在相邻的通道,而不能分别与其它通道作差分方式,差分输入时可以选择相反极性。COM可用于准差分输入,在这种模式下,该引脚的电压可看作其它输入通道的“ - ”输入,这电压可以不一定是模拟地,准差分输入可转换任何模拟输入电压与公用端电压之间的差值。ODD/SIGN决定奇偶通道的工作和符号。如单端方式时0为偶数通道,1为奇数通道。具体定义如表1所示。 当SARS为高电平时,表示正处于转换状态,这时DI线无效。内部自动加入1/2个时钟后开始采样,每个时钟下降沿数据送至DO端,D0为数据输出端。经过8个时钟周期,转换结束,SARS为低电平。 /SE为移位方式控制端,高电平时,移出的数据即转换的结果,先是高位字节(MSB);低电平时,先移出低字节(LSB)。VrefOUT 提供2.5V的带隙基准电压,这电压不随温度、电源电压、负载电流的变化改变,可以与VrefIN直接相连,为模拟输入提供0至2.5V的电压范围CH0至CH7为8个输入模拟通道。 表1 ADC08138MUX地址 单端MUX模式 MUX地址 模拟单端通道号SY-ARTSGL/DIFODD/SIGN SELECT01234567COM1011000+-11001+-11010+-11011+-11100+-11101+-11110+-11111+- 差分MUX模式 MUX地址 模拟差分通道对SY-ARTSGL/DIFODD/SIGN SELECT 0 1 2 3100123456710000+-10001+-10010+-10011+-10100-+10101-+10110-+10111-+ 2.2 软件流程图 图 2 软件流程图三、VHDL程序设计由于ADC08138的输入配置可以用软件来控制,在每个转换中它可以随需要来修改。一个通道可以在一次转换中作为单端,以地为参考的输入模式,在另一次转换中又可配置为差分通道的一部分。图1中ADPT部分为用VHDL程序来实现的对ADC08138控制。其中CSAD为低电平时ADPT启动。CLKAD由外部给出时钟频率,经过分频后通过CLK提供给ADC08138工作频率。ADPT通过CS对ADC08138片选,同时和输出的DI一起控制着ADC08138进行通道地址转换,由ADDR0-ADDR3输出转换通道地址。当接收到ADC08138的SARS管脚由低到高的电平后,DO输入串行数据。经过一段时序后,从DOAD0-DOAD7并行输出,同时ADOV由低变为高电平,发出转换完毕的信号。 ADPT部分主要由分频器、通道地址产生器、PISO(并行输入串行输出)、SIPO(串行输入并行输出)等组成,原理图如图2所示。其中分频器由frqcomponent及frq1 component组成,通道地址产生器由adcntr component构成,PISO、SIPO分别由adoutcomponent及adin component 来实现 图 3 采样控制器ADPT结构图 分频器实质上就是一个计数器。若时钟源为10MHz,,则用一个自由计数器来产生所需的频率即可。这里是用双进程的有限状态机(FSM)来设计通道地址产生器。当addr =0000时表示没有通道被选择,ADC08138没有工作。通道1-8对应着CH0-CH7。其中control为时序进程:circulation组合进程,如果使用差分输入模式,只需修改相应的地址即可。FMS的优点是VHDL综合器易于优化,容易形成性能良好的时序逻辑模块,容易读懂修改。 PISO(并行输入串行输出)模块及SIPO( 串行输入并行输出)模块可参见文献3。需注意的是PISO当CLK.CS=1时加载通道地址。SIPO 当sars=1时开始计数,这和ADC08138的工作时序是一致的。 四、计算机仿真分析 用Max+plus进行输出控制部分波形仿真如图4所示。由于ADC08138的转换状态由SARS给出,数据由DO给出,图中给出了对frq1 component、adcntr component及adout component三个模块的组合进行仿真的结果,其中clk周期为100s。CSAD为低电平时ADPT开始工作。当CS由低到高跳变时,若要选通通道0,则将数据从DI 输入到其内部的MUX地址转换寄存器,如图中adpo2值为18,同时ADDR输出转换通道地址为1 。由图4可见,仿真波形与对ADC08138要求的控制相一致,达到了设计目的。 图 4 仿真波形图五、结束语 本实验用于交流电机调速系统中的A/D转换部分。实验时另增加了显示模块,显示结果验证了该控制程序的正确性。用FPGA来实现控制电路有很多优点。不仅可进行任意次数的编程,而且可在工作中快速编程。FPGA的集成度非常高,这样许多中规模集成电路和许多分离元件组合才能完成的功能可以用它来完成,使电路的体积减小、可靠性提高、成本下降。FP-GA的速度可以做的很高。ALTERA公司提供的芯片内部速度可达200MHz,时钟速度可达822MHz,并且管脚之间的延迟低于3.5ns。随着VHDL和Verilog HDL语言的迅速推广,FPGA的应用领域将会越来越广泛。六、参考文献:1 潘松,王国栋.VHDL 实用教程M.成都:电子科技大学出版社,20012 National Semiconductor Corporation.Nationals Analong & Interface Products Databook,20023 林明权.VHDL数字控制系统设计范例M北京:电子工业出版社,20034 黄正瑾,徐坚,章小丽等.CPLD系统设计技术入门与应用M.北京:电子工业出版社,2002附录1部分源程序VHDL代码如下:Process( clk )BeginIf clkevent and clk=0thenQ = q+1;End if;end process;Clk ad =q(9);这里输出的是ADC08138的典型频率10MHz,其极限值为1MHz。实验的难点之一在于时序的配合上,每一次通道转换时都需要重新启动片选信号。其中读数时先读取的是高字节。在实验中采用了如下程序: process(cs.ad,clk ) variable q:integer range 0 to 15; begin If cs.ad=1then Clk.cs =1; Q:=0; Elsif clkevent and clk=0 then If q 15 then Clk.cs =0; Q:=q+1; Else Clk.csadpo =00000; Addr =0000; Next.stateadpo =11000;- - - ch0 Addr =0001; Next.stateadpo =11100;- - -ch1 Addr =0010; Next.stateadpo =1100

温馨提示

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

评论

0/150

提交评论