ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:197.60KB ,
资源ID:27095217      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27095217.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(FPGA课设DAC0832接口电路程序设计解析.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

FPGA课设DAC0832接口电路程序设计解析.docx

1、FPGA课设DAC0832接口电路程序设计解析 DAC0832接口电路程序设计 摘要 根据DAC0832 输出控制时序,利用接口电路图,通过改变输出数据设计一个锯齿波发生器。分析了TI公司的DA芯片DAC0832的工作原理,利用VHDL硬件描述语言中状态机的设计方法设计实现了DA芯片DAC0832与FPGA的接口电路,对FPGA的系统时钟进行分频处理得到的频率为762.9Hz的锯齿波。在Quartus II中完成时序仿真实践证明设计的电路能够稳定、可靠的工作。关键词:接口电路;DAC0832;EDA;VHDL;FPGA Abstract According to the DAC0832 out

2、put sequence control, using the interface diagram, by changing the output data to design a sawtooth wave generator.Analyzed the working principle of DA DAC0832 chip of TI company, using VHDL hardware description language design method of state machine design has realized the DA DAC0832 and FPGA chip

3、 interface circuit, system clock frequency division processing on FPGA sawtooth wave frequency is 762.9 Hz.In the Quartus II complete timing simulation proved designed circuit can work stable and reliable.Key words: interface circuit;DAC0832;EDA;VHDL;FPGA1.前言.12.EDA概述.12.1 硬件描述语言.22.1.1 Verilog-HDL.

4、22.1.2 VHDL.32.2 可编程逻辑器件.42.3 EDA 软件.63.DAC0832接口电路设计原理.63.1 DAC0832 接口电路设计.63.2 DAC0832 接口电路程序设计.74.软件设计与仿真.84.1 VHDL 程序设计.85. 软件仿真.105.1 编辑和输入设计文件.105.2 创建工程.115.3 全程综合与编译.125.4 仿真测试.126. 课设总结.13参考文献.151.前言数模转换器(即DAC)是数字世界和模拟世界之间的桥梁。人类生活在模拟世界中,虽然数字器件及设备的比重日益增强,但是DAC的发展仍是必不可少的。DAC现已广泛用于多种领域,从航空航天、国

5、防军事到民用通信、多媒体、数字信号处理,都涉及到DAC的应用。FPGA是目前广泛采用的一种可编程器件。随着微电子技术的发展。现场可编程门阵列(FPGA)得到了飞速的发展。FPGA的时钟延迟可达到纳秒级,结合其并行工作的方式,在超高速、实时测控方面有非常广阔的应用前景,具有工作速度快、集成度高和现场可编程的优点。2.EDA 概述20 世纪90 年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的

6、灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA 技术的迅速发展。EDA 是电子设计自动化(Electronic Design Automation)的缩写,在20 世纪90 年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA 技术就是以计算机为工具,设计者在EDA 软件平台上,用硬件描述语言HDL 完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局

7、、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA 技术的出现,极大地提高了电路设计的效率和可靠性,减轻了设计者的劳动强度1。2.1 硬件描述语言硬件描述语言(HDL)2是各种描述方法中最能体现EDA 优越性的描述方法。所谓硬件描述语言,实际就是一个描述工具,其描述的对象就是待设计电路系统的逻辑功能,实现该功能的算法,选用的电路结构以及其他各种约束条件等。通常要求HDL 既能描述系统的行为,又能描述系统的结构。HDL 的使用与普通的高级语言相似,编制的HDL 程序也需要首先经过编译器进行语法,语义的检查,并转换为某种中间数据格式。但与其他高级语言相区别的是,用硬件描

8、述语言编制程序的最终目的是要生成实际的硬件,因此HDL中有与硬件实际情况相对应的并行处理语句。此外,用HDL 制程序时,还需注意硬件资源的消耗问题(如门,触发器,连线等的数目),有的HDL 程序虽然语法,语义上完全正确,但并不能生成与之相对应的实际硬件,其原因就是要实现这些程序所描述的逻辑功能,消耗的硬件资源将十分巨大。目前主要有以下两种HDL 语言34。2.1.1 Verilog-HDLVerilog-HDL 语言是在1983 年由GDA(Gateway Design Automation)公司的首创的。主要用于数字系统的设计。设计者可以用它来进行各种级别的逻辑设计,可以用它进行数字逻辑系统

9、的仿真验证,时序分析,逻辑综合等。它是目前应用最广泛的硬件描述语言之一。其最大优点是与工艺无关性,这使得工程师在功能设计,逻辑验证阶段可以不必过多考虑门级电路及其工艺实现的具体细节,只需要利用系统设计时对芯片的要求,施加不同的约束条件,即可设计出实际电路。实际上,这是利用EDA 工具,把逻辑验证与具体工具库匹配,把布线及延时计算由计算机自动完成,从而减轻了设计者的劳动。Verilog-HDL 把数字系统当作一组模块来描述,每一个模块具有模块接口以及关于模块内容的描述,一个模块代表一个逻辑单元,这些模块用网络相互连接,相互通信。由于Verilog-HDL 是标准化的,所以能把完成的设计移植到不同

10、厂家的不同芯片中去。又由于Verilog-HDL 设计的信号位数很容易改变,所以可以通过对信号位数的修改,来适应不同的硬件规模,而且在仿真验证时,仿真测试用例可以用同一种描述语言来完成。2.1.2 VHDLVHDL 语言是美国国防部于20 世纪80 年代后期,出于军事工业的需要开发的。1984年VHDL 被IEEE 确定为标准化的硬件描述语言。1993 年IEEE 对VHDL 进行了修订,增加了部分新的VHDL 命令与属性,增强了对系统的描述能力,并公布了新版本的VHDL,即IEEE 标准的1076-1993 版本。现在,VHDL 已经成为系统描述的国际公认标准,得到众多EDA 公司的支持,越

11、来越多的硬件设计者使用VHDL 描述数字系统。VHDL 涵盖面广,抽象描述能力强,支持硬件的设计,验证,综合与测试。VHDL 能在多个级别上对同一逻辑功能进行描述,如可以在寄存器级别上对电路的组成结构进行描述,也可以在行为描述级别上对电路的功能与性能进行描述。无论哪种级别的描述,都可以利用综合工具将描述转化为具体的硬件结构。VHDL 的基本结构包含有一个实体和一个结构体,而完整的VHDL 结构还包括配置,程序包与库。各种硬件描述语言中,VHDL 的抽象描述能力最强,因此运用VHDL 进行复杂电路设计时,往往采用自顶向下结构化的设计方法。比较而言,VHDL 语言是一种高级描述语言, 适用于电路高

12、级建模, 综合的效率和效果较好。Verilog-HDL 语言是一种低级的描述语言,适用于描述门级电路,容易控制电路资源,但其对系统的描述能力不如VHDL 语言。2.2 可编程逻辑器件可编程逻辑器件(简称PLD)5是一种由用户编程来实现某种逻辑功能的新型逻辑器件。它不仅速度快,集成度高,能够完成用户定义的逻辑功能外,还可以加密和重新定义编程,其允许编程次数可多达上万次。使用可编程逻辑器件可大大简化硬件系统,降低成本,提高系统的可靠性,灵活性。因此,自20 世纪70 年代问世以后,受到广大工程人员的青睐,被广泛应用于工业控制,通信设备,智能仪表,计算机硬件和医疗电子仪器等多个领域。目前,PLD 主

13、要分为FPGA(现场可编程门阵列)和CPLD(复杂可编程逻辑器件)两大类。FPGA 和CPLD 最明显的特点是高集成度,高速度和高可靠性。高速度表现在其时钟延时可小至纳秒级,结合并行工作方式,在超高速应用领域和实时测控方面有着非常广阔的应用前景;其高可靠性和高集成度表现在几乎可将整个系统集成于同一芯片中,实现所谓片上系统,从而大大缩小了系统体积,也易于管理和屏蔽。Altera 公司是世界上大的可编程逻辑器件供应商之一。其主要产品有MAX7000/9000,FLEX10K,APEX20K,ACEX1K,Stratix,Cyclone 等系列。Altera 公司在20 世纪90 年代以后发展很快,

14、业界普遍认为其开发工具MAX+plus是最成功的EDA开发平台之一,Quartus是MAX+plus的升级版本。Xilinx 公司是FPGA 的发明者,其产品种类较全,主要有XC9500/4000,Spartan,Virtex,Coolrunner(XPLA3)等。Xilinx 公司是与Altera 公司齐名的可编程逻辑器件供应商,在欧洲用Xilinx 器件的人多,在日本和亚太地区用Altera 器件的人多,在美国则是平分秋色。全球PLD/FPGA 产品60%以上是由Altera 和Xilinx 提供的。可以讲,Altera 和Xilinx 共同决定了PLD 技术的发展方向。Lattice 公

15、司是ISP(在系统可编程)技术的发明者,其主要产品有ispL2000/5000/8000,MACH4/5,ispMACH4000 等。与Altera 公司和Xilinx 公司相比,Lattice 的开发工具略逊一筹,大规模PLD,FPGA 的竞争力也不够强,但其中小规模PLD 比较有特色。Lattic e于1999 年推出可编程模拟器件,现已成为全球第三大可编程逻辑器件供应商。Actel 公司是反熔丝(一次性编程)PLD 的领导者。由于其PLD 具有抗辐射,耐高低温,功耗低和速度快等优良品质,在军工产品和宇航产品上有较大优势,而Altera 和Xilinx 公司则一般不涉足军品和宇航市场。2.

16、3 EDA 软件目前在国内比较流行的EDA 软件6工具主要有Altera公司的MAX+plus和Quartus,Lattice 公司的Expert LEVER 和Synario,Xilinx 公司的Foundation 和Alliance,Actel 公司的Actel Designer 等。3.DAC0832接口电路设计原理3.1 DAC0832 接口电路设计DAC0832是采用CMOS/Si-Cr工艺实现的8位D/A转换器。该芯片包含8位输入寄存器、8位DAC寄存器、8位D/A转换器。DAC0832中有两级锁存器,第一级即输入寄存器,第二级即DAC寄存器,可以工作在双缓冲方式下。FPGA与D

17、AC0832接口电路原理图 FPGA_IO18向DAC0832的数据输入口(DI0DI7)输送数据。FPGA_IO9提供DAC0832数据锁存允许控制信号ILE,高电平有效。FPGA_IO10提供DAC0832控制信号(CS:片选信号;Xfer:数据传输控制信号;WR1、WR2:DAC寄存器写选通信号),低电平有效。Iout1、Iout2、Rfb与运算放大器LM324完成电流/电压的转换(DAC0832属电流输出型)。3.2 DAC0832 接口电路程序设计DAC0832 输出控制时序图根据DAC0832 输出控制时序,利用接口电路图,通过改变输出数据设计一个锯齿波发生器。DAC0832是8位

18、的D/A转换器,转换周期为1s。锯齿波形数据可以由256个点构成,每个点的数据长度为8位。又因为FPGA的系统时钟为50MHz,必须对其进行分频处理,这里进行64分频,得到的锯齿波的频率为762.9Hz。4.软件设计与仿真4.1 VHDL 程序设计DAC0832输出控制接口电路程序符号图DAC0832 接口电路程序:-文件名:DAC0832.VHD-功能:产生频率为762.9Hz的锯齿波。-最后修改日期:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arit

19、h.all;entity DAC0832 is port(clk:in std_logic; -系统时钟 rst:in std_logic; -复位信号 ile:out std_logic; -数据锁存允许信号 cont:out std_logic; -控制信号(WR1、WR2、CS、Xfer) data_out:out std_logic_vector(7 downto 0); -波形数据输出 end DAC0832; architecture behav of DAC0832 is signal q:integer range 0 to 63; -计数器signal data:std_lo

20、gic_vector(7 downto 0); -波形数据beginprocess(clk)beginif rst=1 then q=0; -复位,对计数器q清零elsif clkevent and clk=1 then if q=63 then q=0; -此IF语句对系统时钟进行64分频 if data=11111111 then data=00000000; -此IF语句产生锯齿波波形数据 else data=data+1; end if; else q=q+1; end if;end if;end process;ile=1;cont=0;data_out=data; -ile、con

21、t赋值;波形数据输出end behav;5. 软件仿真5.1 编辑和输入设计文件新建一个文件夹,建立VHDL 文件,输入源程序,文件存盘。 图5-1 建立VHDL 文件5.2 创建工程打开并建立新工程管理窗口,讲设计文件加入工程中,选择目标芯片,做好相应设置。 图5-3 建立工程文件 图5-4 将VHDL 文件加入工程 图5-5 FPGA 器件选择5.3 全程综合与编译 图5-6 综合与编译5.4 仿真测试打开波形编辑器,设置仿真时间区域,保存波形文件,将工程的端口信号加入到波形编辑器中,编辑输入信号,设置相应参数和格式,启动仿真器,观察仿真结果。 图5-6 仿真波形观察仿真结果,发现得到了对

22、输入时钟这里进行64分频,得到的锯齿波的频率为762.9Hz。6. 课设总结本文根据DAC0832 输出控制时序,利用接口电路图,通过改变输出数据设计一个锯齿波发生器。DAC0832是8位的D/A转换器,转换周期为1s。锯齿波形数据可以由256个点构成,每个点的数据长度为8位。又因为FPGA的系统时钟为50MHz,必须对其进行分频处理,这里进行64分频,得到的锯齿波的频率为762.9Hz。此次设计的中心就在于对FPGA 的编程,程序设计的方式决定了输出信号的正确性。了解VHDL 的编程方式,是设计的必要前提。在经过多次编程测试,学习前人的编程思想,借鉴不少的实例后,终于实现了8 种码型的输出;

23、同时在选FPGA 芯片时,由于相同的程序放在不同的芯片上仿真时,波形中会出现一定程度的延时,导致延时大的芯片出现了短的脉冲,所以合理选择芯片也是很重要的。通过这次设计,使我了解了数字基带信号的编码的规则,以及EDA 技术的实用性,对以后从事相关事业有了一定的基础。此次设计中也存在一些需要优化的设计,如VHDL设计可能设计的更为简便,以减少使用的资源,达到提高速度的目的等,存在许多需要改进的地方。参考文献1谭会生.EDA 技术基础M.湖南大学出版社,20042潘松,黄继业.EDA 技术与VHDLM.清华大学出版社,2005,73郑信源.Verilog 硬件描述语言数字电路设计范例M.北京:机械工业出版社,20054王伟.VerilogHDL 程序设计与应用M.北京:人民邮电出版社,20055杨贵.FPGA 在数字信号处理中的应用与研究D.湖南大学,2005,106路而红.电子设计自动化应用技术M.北京:高等教育出版社,2004,11

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1