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

上传人:b****4 文档编号:4834541 上传时间:2022-12-10 格式:DOCX 页数:11 大小:197.86KB
下载 相关 举报
FPGA课设DAC0832接口电路程序设计.docx_第1页
第1页 / 共11页
FPGA课设DAC0832接口电路程序设计.docx_第2页
第2页 / 共11页
FPGA课设DAC0832接口电路程序设计.docx_第3页
第3页 / 共11页
FPGA课设DAC0832接口电路程序设计.docx_第4页
第4页 / 共11页
FPGA课设DAC0832接口电路程序设计.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

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

《FPGA课设DAC0832接口电路程序设计.docx》由会员分享,可在线阅读,更多相关《FPGA课设DAC0832接口电路程序设计.docx(11页珍藏版)》请在冰豆网上搜索。

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

FPGA课设DAC0832接口电路程序设计

DAC0832接口电路程序设计

摘要

根据DAC0832输出控制时序,利用接口电路图,通过改变输出数据设计一个锯齿波发生器。

分析了TI公司的DA芯片DAC0832的工作原理,利用VHDL硬件描述语言中状态机的设计方法设计实现了DA芯片DAC0832与FPGA的接口电路,对FPGA的系统时钟进行分频处理得到的频率为762.9Hz的锯齿波。

在QuartusII中完成时序仿真实践证明设计的电路能够稳定、可靠的工作。

关键词:

接口电路;DAC0832;EDA;VHDL;FPGA

 

Abstract

AccordingtotheDAC0832outputsequencecontrol,usingtheinterfacediagram,bychangingtheoutputdatatodesignasawtoothwavegenerator.AnalyzedtheworkingprincipleofDADAC0832chipofTIcompany,usingVHDLhardwaredescriptionlanguagedesignmethodofstatemachinedesignhasrealizedtheDADAC0832andFPGAchipinterfacecircuit,systemclockfrequencydivisionprocessingonFPGAsawtoothwavefrequencyis762.9Hz.IntheQuartusIIcompletetimingsimulationproveddesignedcircuitcanworkstableandreliable.

Keywords:

interfacecircuit;DAC0832;EDA;VHDL;FPGA

 

1.前言.................................................1

2.EDA概述.............................................1

2.1硬件描述语言....................................2

2.1.1Verilog-HDL................................2

2.1.2VHDL.......................................3

2.2可编程逻辑器件..................................4

2.3EDA软件........................................6

3.DAC0832接口电路设计原理.............................6

3.1DAC0832接口电路设计............................6

3.2DAC0832接口电路程序设计........................7

4.软件设计与仿真.......................................8

4.1VHDL程序设计...................................8

5.软件仿真...........................................10

5.1编辑和输入设计文件.............................10

5.2创建工程.......................................11

5.3全程综合与编译.................................12

5.4仿真测试.......................................12

6.课设总结...........................................13

参考文献..............................................15

1.前言

数模转换器(即DAC)是数字世界和模拟世界之间的桥梁。

人类生活在模拟世界中,虽然数字器件及设备的比重日益增强,但是DAC的发展仍是必不可少的。

DAC现已广泛用于多种领域,从航空航天、国防军事到民用通信、多媒体、数字信号处理,都涉及到DAC的应用。

FPGA是目前广泛采用的一种可编程器件。

随着微电子技术的发展。

现场可编程门阵列(FPGA)得到了飞速的发展。

FPGA的时钟延迟可达到纳秒级,结合其并行工作的方式,在超高速、实时测控方面有非常广阔的应用前景,具有工作速度快、集成度高和现场可编程的优点。

2.EDA概述

20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。

在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。

这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。

这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。

EDA是电子设计自动化(ElectronicDesignAutomation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。

EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。

EDA技术的出现,极大地提高了电路设计的效率和可靠性,减轻了设计者的劳动强度[1]。

2.1硬件描述语言

硬件描述语言(HDL)[2]是各种描述方法中最能体现EDA优越性的描述方法。

所谓硬件描述语言,实际就是一个描述工具,其描述的对象就是待设计电路系统的逻辑功能,实现该功能的算法,选用的电路结构以及其他各种约束条件等。

通常要求HDL既能描述系统的行为,又能描述系统的结构。

HDL的使用与普通的高级语言相似,编制的HDL程序也需要首先经过编译器进行语法,语义的检查,并转换为某种中间数据格式。

但与其他高级语言相区别的是,用硬件描述语言编制程序的最终目的是要生成实际的硬件,因此HDL中有与硬件实际情况相对应的并行处理语句。

此外,用HDL制程序时,还需注意硬件资源的消耗问题(如门,触发器,连线等的数目),有的HDL程序虽然语法,语义上完全正确,但并不能生成与之相对应的实际硬件,其原因就是要实现这些程序所描述的逻辑功能,消耗的硬件资源将十分巨大。

目前主要有以下两种HDL语言[3][4]。

2.1.1Verilog-HDL

Verilog-HDL语言是在1983年由GDA(GatewayDesignAutomation)公司的首创的。

主要用于数字系统的设计。

设计者可以用它来进行各种级别的逻辑设计,可以用它进行数字逻辑系统的仿真验证,时序分析,逻辑综合等。

它是目前应用最广泛的硬件描述语言之一。

其最大优点是与工艺无关性,这使得工程师在功能设计,逻辑验证阶段可以不必过多考虑门级电路及其工艺实现的具体细节,只需要利用系统设计时对芯片的要求,施加不同的约束条件,即可设计出实际电路。

实际上,这是利用EDA工具,把逻辑验证与具体工具库

匹配,把布线及延时计算由计算机自动完成,从而减轻了设计者的劳动。

Verilog-HDL把数字系统当作一组模块来描述,每一个模块具有模块接口以及关于模块内容的描述,一个模块代表一个逻辑单元,这些模块用网络相互连接,相互通信。

由于Verilog-HDL是标准

化的,所以能把完成的设计移植到不同厂家的不同芯片中去。

又由于Verilog-HDL设计的信号位数很容易改变,所以可以通过对信号位数的修改,来适应不同的硬件规模,而且在仿真验证时,仿真测试用例可以用同一种描述语言来完成。

2.1.2VHDL

VHDL语言是美国国防部于20世纪80年代后期,出于军事工业的需要开发的。

1984年VHDL被IEEE确定为标准化的硬件描述语言。

1993年IEEE对VHDL进行了修订,增加了部分新的VHDL命令与属性,增强了对系统的描述能力,并公布了新版本的VHDL,即IEEE标准的1076-1993版本。

现在,VHDL已经成为系统描述的国际公认标准,得到众多EDA公司的支持,越来越多的硬件设计者使用VHDL描述数字系统。

VHDL涵盖面广,抽象描述能力强,支持硬件的设计,验证,综合与测试。

VHDL能在多个级别上对同一逻辑功能进行描述,如可以在寄存器级别上对电路的组成结构进行描述,也可以在行为描述级别上对电路的功能与性能进行描述。

无论哪种级别的描述,都可以利用综合工具将描述转化为具体的硬件结构。

VHDL的基本结构包含有一个实体和一个结构体,而完整的VHDL结构还包括配置,程序包与库。

各种硬件描述语言中,VHDL的抽象描述能力最强,因此运用VHDL进行复杂电路设计时,往往采用自顶向下结构化的设计方法。

比较而言,VHDL语言是一种高级描述语言,适用于电路高级建模,综合的效率和效果较好。

Verilog-HDL语言是一种低级的描述语言,适用于描述门级电路,容易控制电路资源,但其对系统的描述能力不如VHDL语言。

2.2可编程逻辑器件

可编程逻辑器件(简称PLD)[5]是一种由用户编程来实现某种逻辑功能的新型逻辑器件。

它不仅速度快,集成度高,能够完成用户定义的逻辑功能外,还可以加密和重新定义编程,其允许编程次数可多达上万次。

使用可编程逻辑器件可大大简化硬件系统,降低成本,提

高系统的可靠性,灵活性。

因此,自20世纪70年代问世以后,受到广大工程人员的青睐,被广泛应用于工业控制,通信设备,智能仪表,计算机硬件和医疗电子仪器等多个领域。

目前,PLD主要分为FPGA(现场可编程门阵列)和CPLD(复杂可编程逻辑器件)两大类。

FPGA和CPLD最明显的特点是高集成度,高速度和高可靠性。

高速度表现在其时钟延时可小至纳秒级,结合并行工作方式,在超高速应用领域和实时测控方面有着非常广阔的应用前景;其高可靠性和高集成度表现在几乎可将整个系统集成于同一芯片中,实现所谓片上系统,从而大大缩小了系统体积,也易于管理和屏蔽。

Altera公司是世界上大的可编程逻辑器件供应商之一。

其主要产品有MAX7000/9000,FLEX10K,APEX20K,ACEX1K,Stratix,Cyclone等系列。

Altera公司在20世纪90年代以后发展很快,业界普遍认为其开发工具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公司是ISP(在系统可编程)技术的发明者,其主要产品有ispL2000/5000/8000,

MACH4/5,ispMACH4000等。

与Altera公司和Xilinx公司相比,Lattice的开发工具略逊一筹,大规模PLD,FPGA的竞争力也不够强,但其中小规模PLD比较有特色。

Lattice于1999年推出可编程模拟器件,现已成为全球第三大可编程逻辑器件供应商。

Actel公司是反熔丝(一次性编程)PLD的领导者。

由于其PLD具有抗辐射,耐高低温,功耗低和速度快等优良品质,在军工产品和宇航产品上有较大优势,而Altera和Xilinx公司则一般不涉足军品和宇航市场。

2.3EDA软件

目前在国内比较流行的EDA软件[6]工具主要有Altera公司的MAX+plusⅡ和QuartusⅡ,Lattice公司的ExpertLEVER和Synario,Xilinx公司的Foundation和Alliance,Actel公司的ActelDesigner等。

3.DAC0832接口电路设计原理

3.1DAC0832接口电路设计

DAC0832是采用CMOS/Si-Cr工艺实现的8位D/A转换器。

该芯片包含8位输入寄存器、8位DAC寄存器、8位D/A转换器。

DAC0832中有两级锁存器,第一级即输入寄存器,第二级即DAC寄存器,可以工作在双缓冲方式下。

 

FPGA与DAC0832接口电路原理图

FPGA_IO1~8向DAC0832的数据输入口(DI0~DI7)输送数据。

FPGA_IO9提供DAC0832数据锁存允许控制信号ILE,高电平有效。

FPGA_IO10提供DAC0832控制信号(CS:

片选信号;Xfer:

数据传输控制信号;WR1、WR2:

DAC寄存器写选通信号),低电平有效。

Iout1、Iout2、Rfb与运算放大器LM324完成电流/电压的转换(DAC0832属电流输出型)。

3.2DAC0832接口电路程序设计

 

DAC0832输出控制时序图

根据DAC0832输出控制时序,利用接口电路图,通过改变输出数据设计一个锯齿波发生器。

DAC0832是8位的D/A转换器,转换周期为1μs。

锯齿波形数据可以由256个点构成,每个点的数据长度为8位。

又因为FPGA的系统时钟为50MHz,必须对其进行分频处理,这里进行64分频,得到的锯齿波的频率为762.9Hz。

 

4.软件设计与仿真

4.1VHDL程序设计

 

DAC0832输出控制接口电路程序符号图

DAC0832接口电路程序:

-文件名:

DAC0832.VHD

--功能:

产生频率为762.9Hz的锯齿波。

--最后修改日期:

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

useieee.std_logic_arith.all;

entityDAC0832is

port(clk:

instd_logic;--系统时钟

rst:

instd_logic;--复位信号

ile:

outstd_logic;--数据锁存允许信号

cont:

outstd_logic;--控制信号(WR1、WR2、CS、Xfer)

data_out:

outstd_logic_vector(7downto0));--波形数据输出

endDAC0832;

architecturebehavofDAC0832is

signalq:

integerrange0to63;--计数器

signaldata:

std_logic_vector(7downto0);--波形数据

begin

process(clk)

begin

ifrst='1'thenq<=0;--复位,对计数器q清零

elsifclk'eventandclk='1'then

ifq=63thenq<=0;--此IF语句对系统时钟进行64分频

ifdata="11111111"thendata<="00000000";--此IF语句产生锯齿波波形数据

elsedata<=data+1;

endif;

elseq<=q+1;

endif;

endif;

endprocess;

ile<='1';cont<='0';data_out<=data;--ile、cont赋值;波形数据输出

endbehav;

5.软件仿真

5.1编辑和输入设计文件

新建一个文件夹,建立VHDL文件,输入源程序,文件存盘。

图5-1建立VHDL文件

 

5.2创建工程

打开并建立新工程管理窗口,讲设计文件加入工程中,选择目标芯片,做好相应设置。

图5-3建立工程文件

图5-4将VHDL文件加入工程

图5-5FPGA器件选择

5.3全程综合与编译

图5-6综合与编译

5.4仿真测试

打开波形编辑器,设置仿真时间区域,保存波形文件,将工程的端口信号加入到波形编辑器中,编辑输入信号,设置相应参数和格式,启动仿真器,观察仿真结果。

图5-6仿真波形

观察仿真结果,发现得到了对输入时钟这里进行64分频,得到的锯齿波的频率为762.9Hz。

6.课设总结

本文根据DAC0832输出控制时序,利用接口电路图,通过改变输出数据设计一个锯齿波发生器。

DAC0832是8位的D/A转换器,转换周期为1μs。

锯齿波形数据可以由256个点构成,每个点的数据长度为8位。

又因为FPGA的系统时钟为50MHz,必须对其进行分频处理,这里进行64分频,得到的锯齿波的频率为762.9Hz。

此次设计的中心就在于对FPGA的编程,程序设计的方式决定了输出信号的正确性。

了解VHDL的编程方式,是设计的必要前提。

在经过多次编程测试,学习前人的编程思想,借鉴不少的实例后,终于实现了8种码型的输出;同时在选FPGA芯片时,由于相同的程序放在不同的芯片上仿真时,波形中会出现一定程度的延时,导致延时大的芯片出现了短的脉冲,所以合理选择芯片也是很重要的。

通过这次设计,使我了解了数字基带信号的编码的规则,以及EDA技术的实用性,对以后从事相关事业有了一定的基础。

此次设计中也存在一些需要优化的设计,如VHDL设计可能设计的更为简便,以减少使用的资源,达到提高速度的目的等,存在许多需要改进的地方。

 

参考文献

[1]谭会生.EDA技术基础[M].湖南大学出版社,2004

[2]潘松,黄继业.EDA技术与VHDL[M].清华大学出版社,2005,7

[3]郑信源.Verilog硬件描述语言数字电路设计范例[M].北京:

机械工业出版社,2005

[4]王伟.VerilogHDL程序设计与应用[M].北京:

人民邮电出版社,2005

[5]杨贵.FPGA在数字信号处理中的应用与研究[D].湖南大学,2005,10

[6]路而红.电子设计自动化应用技术[M].北京:

高等教育出版社,2004,11

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

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

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