数电自主实验——多功能电子表的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
多功能电子表的设计与实现
——基于Basys2开发板电路设计及仿真1.实验目的
1.了解有关FPGA的基本知识以及在电路设计的应用;
2.了解并学会利用Verilog HDL硬件开发语言设计特定功能的电路,加深对知识的理解;3.了解Basys2开发板的特点并利用其元件在硬件上实现电路功能;
4.在完成电路设计的过程中积累实际工程开发的经验;
5.培养对于新型实验器材的理解和学习能力;
6.在实验中练习并熟悉有关嵌入式系统开发的过程,为未来的学习打下基础。
2.总体设计方案或技术路线
1.查阅资料,了解Basys2工作相关特点,对于FPGA的开发过程有初步认识;
2.学习Verilog HDL硬件开发语言,阅读相关程序实例加深对于编程语言及模块的理解;3.确定本次试验电子表的功能,编写程序进行实现;
4.对于编写程序进行调试,修改编写过程中出现的语法错误;
5.再对上一步中调试好的程序进行仿真,编写仿真代码,分析输出并进一步修改程序;6.对于仿真好的程序建立ucf文件进行引脚约束及综合,生成bit文件;
7.将bit文件烧写到开发板中,在硬件中实现预定功能;
8.对整个实验过程进行总结,分析输出效果并寻找改进方法。
3.实验电路图
由于本实验的电路设计基本全部由Verilog HDL硬件编程语言完成(具体代码附于报告结尾处),因此,没有具体芯片电路图。
而在仿真软件中,提供了实验电路的RTL级原理图和技术原理图。因此我们可以利用ISE Design Suite 14.7电路设计和仿真软件自动生成实验电路的原理图,具体操作过程为,在编写好程序后,双击鼠标左键选择运行Synthesize - XST对电路进行综合,综合成功后,在其子目录下会有View RTL Schematic和View Technology Schematic两个选项,双击这两个选项即可查看该电路的RTL级原理图和技术原理图(如下图)。
由于电路的搭建主要由代码实现,因此软件提供的主要为电路的输入输出原理图,而非具体的电路图,但对于工程的建立与调试已经足够,也就不需要另画详细的电路图了
RTL级原理图:
技术原理图:
4. 仪器设备名称、型号
1.Basys2 FPGA开发板(配有电源及烧写程序线,可与PC计算机相连);
2.Xilinx电路设计及仿真软件ISE Design Suite(版本号14.7);
3.PC计算机,Win7系统;
5.理论分析或仿真分析结果
1.电路理论及功能分析
本实验的目的是设计一个电子表,目前市面上销售的电子表主要有以下功能:时钟计时、
调整时间、秒表和照明及发送信号功能(由于Basys2开发板上没有自带蜂鸣器,因此闹钟功能相对较难实现)。
记时功能,以一秒为单位,由Basys2内部时钟可以使得led显示数码管在每秒可以自动加一,从而实现电子表的计时功能,同时需要一个开关控制继续和暂停,并且在暂停的情况下,通过按键来控制数码管调节时间;
调整时间,在电子表处在计时功能下,操纵按键可以控制相应位数的数码管变化,可以调整时间;
秒表功能,通过开发板上的开关控制数码管一0.01秒的精度进行计时,并且之前的暂停信号在秒表功能下依然有效,此外,还可通过另一个开关对于秒表的清零进行控制;
照明及发送信号功能,通过功能选择开关控制进入照明模式,可以使开发板上的8位led 灯按次序进行一定周期的闪烁,完成照明以及必要时发送信号的功能。
各模块流程图如下图所示:
结束
电子表效果图
2.实验元器件介绍
(1)可编程逻辑器件FPGA
FPGA(Field-Programmable Gate Array)即现场可编程门阵列,是近年来十分流行的可编程元件,它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点,因此在工程中得到了广泛的应用。
对于FPGA的开发,通常以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至FPGA 上进行测试,是现代IC设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块。
(2)Xilinx公司Basys2开发板
Basys2是围绕着Xilinx公司的Spartan-3E FPGA芯片和一个Atmel AT90USB USB控制器搭建的,它提供了完整、随时可以使用的硬件平台,并且它适合于从基本逻辑器件到复杂控制器件的各种主机电路。可兼容所有版本的ISE电路设计和仿真软件。
3.实验仿真
利用ISE软件对于各个功能进行仿真,仿真时要建立Verilog Test Fixture文件,同时还要加入时钟信号,具体代码如下:
parameter PERIOD = 20; //开发板自身晶振50MHz
always begin
CLK = 1'b0;
#(PERIOD/2) CLK = 1'b1; #(PERIOD/2);
end
具体各功能仿真如下图:
照明及信号发送功能:
秒表功能:
计时功能:
6.详细实验步骤及实验结果数据记录(包括各仪器、仪表量程及内阻的记录)
1.确定本次试验电子表的功能,具体模块如以上部分介绍,并利用Verilog HDL语言编写程序进行实现(具体源程序文件附在报告后);
2.对于编写程序在ISE Design Suite 14.7软件中选择Check Syntax选项进行编译,修改编写过程中出现的语法错误;
3.再对上一步中调试好的程序进行仿真,编写仿真代码,分析输出并进一步修改程序;4.对于仿真好的程序建立ucf文件进行引脚约束(ucf文件代码附在报告后);
5.对于程序文件和引脚约束文件在ISE Design Suite 14.7软件中选择Synthesize – XST选项进行程序的综合