《华科计算机数字逻辑实验报告 D触发器设计.doc》由会员分享,可在线阅读,更多相关《华科计算机数字逻辑实验报告 D触发器设计.doc(5页珍藏版)》请在金锄头文库上搜索。
1、实验名称: D触发器设计 专业班级: 学 号: 姓 名: 同组成员: 指导教师: 报告日期: 2013.6.11 1、系统需求PC 个人计算机ISE14.2 软件D.V 文件D.UCF 文件USB下载线Adept软件开发板Basys22、实验内容:用电平异步时序逻辑电路,实现上升沿触发的D触发器(无空翻).需要一个复位信号RESET,和一个置位信号RET,均为低电平有效.接线:输入信号:D- 接板子上SW0(FPGA内部“p11”);;CP-接FPGA内部“B8”(50MHz);RESET-L3;SET- K3;输出信号:Q-接板子上灯ld0(FPGA内部“m5”);Q(非)-M11;3、实验
2、目的 :当你完成整个项目之后,你将学会以下的功能.(1)用ISE14.2 的软件开启一个 Spartan3E的项目.(2)撰写一个简单的Schematic原理图,用语法检查器(Syntax Check)来修正语法的错误(3)产生测试模板(Test Bench) 来辅助你的设计.(4)加入系统所需的Constraints 文件.(UCF file)(5)完成整个设计程.并产生D.bit文件。(6)用Adept软件来烧录D.bit 文件到FPGA.4、实验过程4.1 verilog代码timescale 1ns / 1psmodule D3( input d, input clk, input s
3、et, input reset, output q, output qn ); reg qt,qnt;always (posedge clk or negedge set or negedge reset)beginif (!reset) beginqt = 0; /异步清0,低电平有效qnt = 1;endelse if (!set) beginqt = 1; /异步置1,低电平有效qnt = 0;endelse beginqt = d;qnt = d;endendassign q = qt;assign qn = qnt;endmodule4.2 设计仿真4.2.1编辑激励:timesca
4、le 1ns / 1psmodule test;/ Inputsreg d;reg clk;reg set;reg reset;/ Outputswire q;wire qn;/ Instantiate the Unit Under Test (UUT)D3 uut (.d(d), .clk(clk), .set(set), .reset(reset), .q(q), .qn(qn);always #20 clk = clk;always #10 d = $random%2;always begin#100 set = 1b0;#10 set = 1b1;endalways begin#200
5、 reset = 1b0;#10 reset = 1b1;endinitial begin/ Initialize Inputsd = 0;clk = 0;set = 1;reset = 1;/ Wait 800 ns for global reset to finish#800; / Add stimulus hereEndEndmodule4.22 仿真模拟图图 1:仿真结果4.3 创建约束Ucf文件内容:#Created by Constraints Editor (xc3s100e-cp132-4) - 2013/06/01NET clk TNM_NET = clk;TIMESPEC
6、TS_clk = PERIOD clk 20 ns HIGH 50 %;# PlanAhead Generated physical constraints NET clk LOC = B8;NET d LOC = P11;NET q LOC = M5;NET qn LOC = M11;NET reset LOC = L3;NET set LOC = K3;4.4 下载到板子5.感想没有用原理图方式做,因为在仿真时怎么都过不了,所以就用verilog做了。就觉得语法规则还不熟悉,但是思路比较简单,因为逻辑功能都知道了。后来看别人用原理图做出来了,其实只要图画出来就行了,激励的编辑可能开始一些语法有错误。