文档库 最新最全的文档下载
当前位置:文档库 › 数字系统设计与verilog_HDL_王金明 _第四版__EDA期末知识点复习(宁波 工程学院电科版)

数字系统设计与verilog_HDL_王金明 _第四版__EDA期末知识点复习(宁波 工程学院电科版)

数字系统设计与verilog_HDL_王金明    _第四版__EDA期末知识点复习(宁波    工程学院电科版)
数字系统设计与verilog_HDL_王金明    _第四版__EDA期末知识点复习(宁波    工程学院电科版)

1、采用硬件描述语言(HDL)进行电路设计的优势。

1)更适合用于描述规模大、功能复杂的数字系统

2)语言标准化、便于设计的复用、交流、保存和修改

3)设计与工艺的无关性,宽范围的描述能力,便于组织大规模、模块化的设计

2、Verilog模块的结构

模块声明:包括模块名字、模块输入、输出端口列表,结束关键字为endmodule

端口定义:格式为:input: 端口名1,端口名2…端口名n;

output: 端口名1,端口名2…端口名n;

inout: 端口名1,端口名2…端口名n;

3、标识符是用户在编程时给verilog对象起的名字,模块、端口和实例的名字都是标识符。标识符可以是任意一组字母、数字以及符

号“$”和“_”的组合,但标识符的第一个字符必须是字母(a-z,A-Z)或者是下划线“_”,标识符最长可包含1023个字符,此外,标识符区分大小写。

4、整数写法:+/-

1、在较长的数之间可用下划线分开

2、当数字不说明位宽时,默认值为32位

3、 X或(z)在二进制中代表1位x(或z),在八进制中代表3位,在16进制中代表4位

4、如果没有定义一个整数的位宽,其宽度为相应值中定义的位数。

5、如果定义的位宽比实际的位数长,通常在左边填0补位,但如果最左边一位为x或z,就相应的用x或z左边补位。

6、 “?”是高阻态z的另一种表示符号,在数字的表示中,字符“?”和z 是完全等价的,可相互代替。

7、整数可以带符号,并且正负号应写在最左边,负数通常表示为二进制补码的形式。

8、当位宽与进制缺省时表示的是10进制数

9、在位宽和‘之间,以及进制和数值之间允许出现空格,但’和进制之间以及数值之间是不能出现空格的。

要求掌握整数正确的书写方式。

5、向量:宽度大于1位的变量;

标量:宽度为1位的变量。

定义2个8位reg型矢量:reg [7:0] ra, rb;

6、运算符

(1)注意:逻辑运算符,例如逻辑与&&、逻辑或||、逻辑非!,运算结

果是1位的。如果操作数不止1位的话,则应将操作数作为一个整体来对待,即如果操作数全是0,则相当于逻辑0,但只要某一位是1,则操作数就应该整体看作逻辑1。

例如:若A = 4’b0000, B = 4’b0101,则有:

A &&

B = 0;

(2)位拼接运算符:{ }将两个或多个信号的某些位拼接起来

7、initial语句和always语句的区别:initial语句常用于仿真中的初始化,initial过程块中的语句只执行一次,不带触发条件;always块内的语句则是不断重复执行的,Always过程语句是可综合的,带有触发条件。

8、posedge:上升negedge:下降

弄清楚同步和异步的概念。

例如:如果Nreset和Nset是异步,时钟clock上升沿触发。

always @(posedge clk or posedge rst_n )

if (! rst_n ) Q<=0;

else if(Nset) Q<=1;

else Q<=D;

9、阻塞赋值与非阻塞赋值的区别:非阻塞赋值在整个过程块结束时才完成赋值操作;阻塞赋值在该语句结束时就立即完成赋值操作。在always过程块中,阻塞赋值可以理解为赋值语句是顺序执行的,而非阻塞赋值可以理解为赋值语句是并发执行的.

10、条件语句,条件语句也称分支语句。

11、顺序执行:阻塞赋值语句;

并发执行:非阻塞赋值语句。

12、用行为语句设计一个8位计数器,每次在时钟的上升沿,计数器加1,当计数器逸出时,自动从零开始重新计数。计数器有同步复位端。module count(count,reset,clk);

input clk,reset;

output clk,reset;

output [7:0] count;

reg count;

always @(posedge clk)

if(reset==1)

begin

count=8'b0;

end

else if (count=8'b11111111)

begin

count=9'b0;

end

else if

begin

count=count+1;

end

end module

13奇偶校验位产生器的Verilog HDL描述:

module parity(evrn_bit,odd_bit,a);

input[7:0] a; output even_bit,odd_bit;

assign even_bit=^a; //生成偶校验位

assign odd_bit=~even_bit; //生成奇校验位endmodule;

14、课本197页:8.2 有限状态机的Verilog描述

参考例8.3,例8.7,学会用有限状态机设计序列检测器。module fsm_seq1111(x,z,clk,reset);

input x,clk,reset;

output reg z;

reg[4:0] state;

parameter S0=’d0,S1=’d1,S2=’d2,S3=’d3,S4=’d4; always @(posedge clk)

begin if(reset) begin state<=S0;z<=0; end

else casex(state)

S0: begin if(x==0) begin state<=S0;z<=0;end else begin state<=S1;z<=0;end end

S1: begin if(x==0) begin state<=S0;z<=0;end else begin state<=S2;z<=0;end end

S2: begin if(x==0) begin state<=S0;z<=0;end else begin state<=S3;z<=0;end end

S3: begin if(x==0) begin state<=S0;z<=0;end else begin state<=S4;z<=1;end end

S4: begin if(x==0) begin state<=S0;z<=0;end else begin state<=S4;z<=1;end end

default: state<=S0;

endcase

end

endmodule

15、状态机设计流水灯:

module led_water(clk50M,rst,led);

input clk50M;

output[7:0] led;

input rst;

wire clk_5hz;

reg[7:0] led_r;

reg[3:0] state;

reg[23:0] count;

parameter s0='d0,s1='d1,s2='d2,s3='d3,

s4='d4,s5='d5,s6='d6,s7='d7,

s8='d8,s9='d9,s10='d10,s11='d11,

s12='d12,s13='d13,s14='d14,s15='d15;

always @(posedge clk50M)

begin

if(count==10000000)

begin count<=1'b0;end

else

count<=count+1'b1;

end

assign clk_5hz=count[23];

assign led=led_r;

always @(posedge clk_5hz)

begin

if(!rst) state=s0;

else case(state)

s0: begin led_r=8'b01111111; state<=s1;end s1: begin led_r=8'b10111111; state<=s2;end s2: begin led_r=8'b11011111; state<=s3;end s3: begin led_r=8'b11101111; state<=s4;end s4: begin led_r=8'b11110111; state<=s5;end s5: begin led_r=8'b11111011; state<=s6;end s6: begin led_r=8'b11111101; state<=s7;end s7: begin led_r=8'b11111110; state<=s8;end s8: begin led_r=8'b11111100; state<=s9;end

s9: begin led_r=8'b11111000; state<=s10;end s10: begin led_r=8'b11110000; state<=s11;end s11: begin led_r=8'b11100000; state<=s12;end s12: begin led_r=8'b11000000; state<=s13;end s13: begin led_r=8'b10000000; state<=s14;end s14: begin led_r=8'b00000000; state<=s15;end s15: begin led_r=8'b10100101; state<=s0;end default: begin led_r=8'b11111111;state<=s0;end endcase

end

endmodule

16、超前进位加法器的Verilog HDL描述:

module add_ahead (sum,cout,a,b,cin);

input[7:0] a,b; input cin;output[7:0] sum;

output cout;wire[7:0] G,P; wire[7:0] C,sum;

assign G[0]=a[0]&b[0];

assign P[0]=a[0]|b[0];

assign C[0]=cin;

assign sum[0]=G[0]^P[0]^C[0];

assign G[1]=a[1]&b[1];

assign P[1]=a[1]|b[1];

assign C[1]=G[0]|(P[0]&cin);

assign sum[0]=G[0]^P[0]^C[0];

assign G[2]=a[2]&b[2];

assign P[2]=a[2]|b[2];

assign C[2]=G[1]|(P[1]&C[1]);

assign sum[2]=G[2]^P[2]^C[2];

assign G[3]=a[3]&b[3];

assign P[3]=a[3]|b[3];

assign C[3]=G[2]|(P[2]&C[2]);

assign sum[3]=G[3]^P[3]^C[3];

assign G[4]=a[4]&b[4];

assign P[4]=a[4]|b[4];

assign C[4]=G[3]|(P[3]&C[3]);

assign sum[4]=G[2]^P[2]^C[2];

assign G[5]=a[5]&b[5];

assign P[5]=a[5]|b[5];

assign C[5]=G[4]|(P[4]&C[4]);

assign sum[5]=G[5]^P[5]^C[5];

assign G[6]=a[6]&b[6];

assign P[6]=a[6]|b[6];

assign C[6]=G[5]|(P[5]&C[5]);

assign sum[6]=G[6]^P[6]^C[6];

assign G[7]=a[7]&b[7];

assign P[7]=a[7]|b[7];

assign C[7]=G[6]|(P[6]&C[6]);

assign sum[7]=G[7]^P[7]^C[7];

assign cout=G[7]|(P[7]&C[7]);

endmodule

17、课本227页:9.4 奇数分频与小数分频

奇数分频的方法:用两个计数器,一个由输入时钟上升沿触发,一个由输入时钟下降沿触发,最后将两个计数器的输出相或,即可得到占空比为50%的方波波形。

小数分频的方法:1)用数字锁相环实现。先利用锁相环电路将输入时钟倍频,然后利用分频器对新产生的高频信号进行分频得到需要的时钟频率。2)先设计两个不同分频比的整数分频器,然后通过控制两种分频比出现的不同次数来获得所需的小数分频值,从而实现平均意义上的小数分频。

偶数次分频的方法:比如进行2n次分频,只需在计数到n-1时,波形翻转即可;或者在最后一级加一个2分频器也可实现。

IIR数字滤波器设计原理

IIR 数字滤波器设计原理 利用双线性变换设计IIR 滤波器(只介绍巴特沃斯数字低通滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数)(s H a ,然后由)(s H a 通过双线性变换可得所要设计的IIR 滤波器的系统函数)(z H 。 如果给定的指标为数字滤波器的指标,则首先要转换成模拟滤波器的技术指标,这里主要是边界频率 s p w w 和的转换,对s p αα和指标不作变化。边界频率的转换关系为)21tan(2w T =Ω。接着,按照模拟低通滤波器的技术指标根据相应 设计公式求出滤波器的阶数N 和dB 3截止频率c Ω;根据阶数N 查巴特沃斯归一 化低通滤波器参数表,得到归一化传输函数 )(p H a ;最后,将c s p Ω=代入)(p H a 去归一,得到实际的模拟滤波器传输函数)(s H a 。之后,通过双线性变换法转换公式 11 112--+-=z z T s ,得到所要设计的IIR 滤波器的系统函数)(z H 。 步骤及内容 1) 用双线性变换法设计一个巴特沃斯IIR 低通数字滤波器。设计指标参数为: 在通带内频率低于π2.0时,最大衰减小于dB 1;在阻带内[]ππ,3.0频率区间上,最小衰减大于dB 15。 2) 以π02.0为采样间隔,绘制出数字滤波器在频率区间[]2/,0π上的幅频响应特 性曲线。 3) 程序及图形 程序及实验结果如下: %%%%%%%%%%%%%%%%%%

%iir_1.m %lskyp %%%%%%%%%%%%%%%%%% rp=1;rs=15; wp=.2*pi;ws=.3*pi; wap=tan(wp/2);was=tan(ws/2); [n,wn]=buttord(wap,was,rp,rs,'s'); [z,p,k]=buttap(n); [bp,ap]=zp2tf(z,p,k); [bs,as]=lp2lp(bp,ap,wap); [bz,az]=bilinear(bs,as,.5); [h,f]=freqz(bz,az,256,1); plot(f,abs(h)); title('双线性z 变换法获得数字低通滤波器,归一化频率轴'); xlabel('\omega/2\pi'); ylabel('低通滤波器的幅频相应');grid; figure; [h,f]=freqz(bz,az,256,100); ff=2*pi*f/100; absh=abs(h); plot(ff(1:128),absh(1:128)); title('双线性z 变换法获得数字低通滤波器,频率轴取[0,\pi/2]'); xlabel('\omega'); ylabel('低通滤波器的幅频相应');grid on; 运行结果: 00.050.10.150.20.25 0.30.350.40.450.500.1 0.2 0.3 0.40.50.60.70.8 0.9 1 双线性z 变换法获得数字低通滤波器,归一化频率轴 ω/2π低通滤波器的幅频相应

数字电子系统设计报告模板

宁波工程学院 数字电子系统设计报告 设计题目: 学院名称:电子与信息工程学院 专业班级:电科12-X 学生姓名:XXX 学号:13401090XXX 指导教师:苏树兵 起讫时间:2016年06月20日至2016年06月29日

目录第一章设计任务 1.1 基本要求 1.2 发挥部分 第二章整体方案设计 2.1 基本原理及整体系统框图 2.2 算法设计 第三章硬件电路设计(按模块)3.1 XX电路设计(有几个写几个) 3.2 整体电路图 3.3 整机元件清单 第四章系统软件设计 4.1 主程序流程图 4.2 子程序流程图(有几个写几个) 第五章系统测试与结果分析 5.1 XX电路的调测 5.2 整体指标测试(有数据的需要附上)5.3 结果分析 第六章设计小结 6.1 设计任务完成情况 6.2 问题及改进 6.3心得体会 第七章任务分配及自评分 附录1 系统程序 附录2 实物图 参考文献

第一章技术指标 1.整体功能要求 频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值。其扩展功能可以测量信号的周期和脉冲宽度。 2.系统结构要求 数字频率计的整体结构要求如图所示。图中被测信号为外部信号,送入测量电路进行处理、测量,档位转换用于选择测试的项目------频率、周期或脉宽,若测量频率则进一步选择档位。 数字频率计整体方案结构方框图 3.电气指标 3.1被测信号波形:正弦波、三角波和矩形波。 3.2 测量频率范围:分三档: 1Hz~999Hz 0.01kHz~9.99kHz 0.1kHz~99.9kHz 3.3 测量周期范围:1ms~1s。 3.4 测量脉宽范围:1ms~1s。 3.5测量精度:显示3位有效数字(要求分析1Hz、1kHz和999kHz的测量误

基于eda的数字钟程序设计

一、课题要求: (1)技术要求:1、掌握多功能数字钟的工作原理。 2、应用EDA技术,VHDL语言编写程序。 3、层次化设计,设计原理框图。 4,、硬件设计及排版。 (2)功能要求:1、基本功能:能进行正常的时、分、秒计时功能,分别 由6个数码管显示24小时、60分钟、60秒的计数器 显示。 2、扩展功能:(1)能够利用按键实现“校时”“校分” “清零”功能。 (2)能利用扬声器做整点报时,整点前 五秒短声,整点长声。 (3)本人工作:负责软件部分,,编写各部分模块的VHDL程序,并且锁定 引脚,将程序下载到芯片中。 二、设计方案: 原理框图: 数字钟原理框图 一共有11个小模块:分频,片选,按键,小时,分,秒,显示模块,七段显示译码器,报时,扬声,36译码器。 左边第一个是时钟信号输入端,50Mhz到分频模块。第二个为清零按键,第三个为校分按键,第四个为校时按键。 右边第一个为七段显示译码器输出端,第二个为扬声器输出端,第三个为6个数码管输出端。

中间模块为数字钟的核心,有计时,报时,校时功能。 三、单元模块设计 1、分频模块 该模块是将时钟脉冲50Mhz分频到1000、500和1,分别给报时模块和及时模块。

2、秒模块 仿真图

该模块为60进制计数器,有分频模块得到的1hz进行计时,计时输出为秒的数值,在计时到59时进位1到co端。当按下s3时,秒清零。 3.、分模块 仿真图

该模块也为60进制计数器,计时输出为分的数值。在EN信号有效且时钟来时,计数器加1、在s2按下时,EN使能端有效,实现校分功能。 4、时模块 仿真图 该模块为24进制计数器,计时输出为小时的数值,在EN信号到来时,计数器

FIR数字滤波器设计与使用

实验报告 课程名称:数字信号处理指导老师:刘英成绩:_________________实验名称: FIR数字滤波器设计与使用同组学生姓名:__________ 一、实验目的和要求 设计和应用FIR低通滤波器。掌握FIR数字滤波器的窗函数设计法,了解设计参数(窗型、窗长)的影响。 二、实验内容和步骤 编写MATLAB程序,完成以下工作。 2-1 设计两个FIR低通滤波器,截止频率 C =0.5。 (1)用矩形窗,窗长N=41。得出第一个滤波器的单位抽样响应序列h 1(n)。记下h 1 (n) 的各个抽样值,显示h 1 (n)的图形(用stem(.))。求出该滤波器的频率响应(的N 个抽样)H 1(k),显示|H 1 (k)|的图形(用plot(.))。 (2)用汉明窗,窗长N=41。得出第二个滤波器的单位抽样响应序列h 2(n)。记下h 2 (n) 的各个抽样值,显示h 2(n)的图形。求出滤波器的频率响应H 2 (k),显示|H 2 (k)|的 图形。 (3)由图形,比较h 1(n)与h 2 (n)的差异,|H 1 (k)|与|H 2 (k)|的差异。 2-2 产生长度为200点、均值为零的随机信号序列x(n)(用rand(1,200)0.5)。显示x(n)。 求出并显示其幅度谱|X(k)|,观察特征。 2-3 滤波 (1)将x(n)作为输入,经过第一个滤波器后的输出序列记为y 1(n),其幅度谱记为|Y 1 (k)|。 显示|X(k)|与|Y 1 (k)|,讨论滤波前后信号的频谱特征。 (2)将x(n)作为输入,经过第二个滤波器后的输出序列记为y 2(n),其幅度谱记为|Y 2 (k)|。 比较|Y 1(k)|与|Y 2 (k)|的图形,讨论不同的窗函数设计出的滤波器的滤波效果。 2-4 设计第三个FIR低通滤波器,截止频率 C =0.5。用矩形窗,窗长N=127。用它对x(n)进行滤波。显示输出信号y

eda数字电子钟

唐山学院 《EDA技术》课程设计 题目数字电子钟设计 系(部) 智能与信息工程学院 班级13电本1班 姓名马建雨 学号4130208144 指导教师郭耀华、王默琦、戴彦 2016年7 月4日至7月8 日共1 周 2016年7 月8日

目录 1 引言 (1) 2 EDA技术简介 (2) 2.1 EDA技术的基本特征 (2) 2.2 硬件描述语言 (2) 3 QuartusII软件简介 (4) 3.1软件介绍 (4) 3.2 QuartusII工作环境介绍 (5) 4 课程设计说明 (8) 4.1设计内容 (8) 4.2设计要求 (8) 4.3设计目的 (8) 4.4设计思路 (8) 4.5 设计具体方案及实现 (9) 4.5.1秒、分、时计时模块 (9) 4.5.2 动态显示模块 (11) 4.5.3 整点报时模块 (13) 4.5.4 校时模块 (14) 4.6 总程序 (16) 5 总结 (17) 参考文献 (18)

1 引言 随着大规模集成电路技术和计算机技术的不断发展,在涉及通信、国防、航天、医学、工业自动化、计算机应用、仪器仪表等领域的电子系统设计工作中,EDA技术的含量正以惊人的速度上升;电子类的高新技术项目的开发也愈益依赖于EDA技术的应用。即使是普通的电子技术的开发,EDA技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的开发周期大为缩短、、性能价格比大幅提高。不言而喻,EDA技术将迅速成为电子设计领域中的极其重要的组成部分。 EDA技术的设计语言为VHDL(硬件描述语言),实验载体为可编程器件CPLD或者FPGA,进行元件模拟和仿真的目标器件为ASIC/SOC芯片。它是一种自动化设计电子产品的过程。在电子设计仿真的领域里,EDA技术的出现具有非常重要的现实意义。EDA源自于计算机辅助设计、制造、测试以及辅助工程。利用EDA工具,设计者们可以从概念、算法、协议等方面来设计电子系统。值得一提的是,在整个电子系统的设计过程中,设计电路、分析性能、布置IC 和PCB版图等步骤都可以在电脑上自动完成。 时钟是我们日常生活中必备的生活用品之一。而数字时钟的出现更是给人们的生产生活带来了极大的便利。钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 EDA技术为数字类产品提供了一个非常简便实用的开发平台。随着EDA技术的快速发展,数字时钟的应用越来越广泛,并且它在功能外观方面也有了很大的改善和提高。本文就是基于EDA技术的基础知识,利用Quartus2软件再现一个具有传统时钟功能和自动报时功能的数字时钟。 数字钟采用EDA技术设计,利用硬件描述语言VHDL按模块化方式设计、编程及时序仿真等。该数字钟能实现时、分、秒计数的显示功能,且以24小时循环计时,具有清零的功能,且能够对计时系统的小时、分钟进行调整,具有整点报时功能。整个系统包括传统数字时钟所拥有的计时模块、校时模块、译码显示模块以及整点报时模块。整个系统使用方便,功能齐全,精度高。

数字滤波器课程设计

课程设计 课程设计名称:数字信号处理课程设计 专业班级:电信1203 学生姓名:刘海峰 学号: 201216020307 指导教师:乔丽红 课程设计时间:2015/07/01-2015/07/06 电子信息工程专业课程设计任务书

说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页

一. 技术要求 ?双线性变换法设计切比雪夫II型数字IIR低通滤波器, ?要求通带边界频率为400Hz, ?阻带边界频率分别为500Hz, ?通带最大衰减1dB, ?阻带最小衰减40dB, ?抽样频率为2000Hz, 二. 设计原理 IIR滤波器的设计包括三个步骤:①给出所需要的滤波器的技术指标; ②设计一个H(z)使其逼近所需要的技术指标:③实现所设计的H(z),IIR数字滤波器设计的最通用的方法是借助于模拟滤波器的设计方法。所以IIR数字低通滤波器的设计步骤是:①按一定规则将给出的数字滤波器的技术指标转换为模拟低通滤波器的技术指标;②根据转换后的技术指标设计模拟低通滤波器G(s):③再按一定规则将G(s)转换成H(z)。 在此过程中,我们用到了很多MATLAB中的函数,如设计切比雪夫低通滤波器的函数afd_chebl、由直接型转换为级联型的函数dir2cas、双线性变换的函数bilinear等。其中afd _chebl用于实现用模拟指标设计一个低通模拟滤波器,bilinear用于利用双线性变换法将模拟低通滤波器转换为数字低通滤波器。

三.程序流程图

四:源代码(完美版) %归一化低通滤波器技术指标 clc; clear all; Ap=1; %最大通带衰减 As=40; %最小阻带衰减 W=2000; %抽样周期 Wp=400; %通带边界频率 Ws=500; %阻带边界频率 wp=2*pi*Wp/W; %归一化通带边界频率 ws=2*pi*Ws/W; %归一化阻带边界频率 Wp1=tan(wp/2); %模拟低通滤波器通带边界频率 Ws1=tan(ws/2); %模拟低通滤波器阻带边界频率 %归一化切比雪夫II型低通模拟滤波器 [N,Wn]=cheb2ord(Wp1,Ws1,Ap,As,'s'); %确定滤波器阶数和频率尺度缩放因子 [BT,AT]=cheby2(N,As,Wn,'s');%传输函数的系数 [Z,P,K]=cheb2ap(N,As);%最小阻带衰减为As(DB)的N阶归一化模拟切比雪夫2型低通滤波器的零点、极点和增益因子 [H,W]=zp2tf(Z,P,K);%传输函数有理化形式 figure; [P,Q]=freqs(H,W);

电子系统设计报告

课程设计实践报告 一、课程设计的性质、目的与作用 本次电子系统设计实践课程参照全国大学生电子设计模式,要求学生综合利用所学的有关知识,在教师的指导下,分析和熟悉已给题目,然后设计系统方案、画原理图及PCB、软件编程,并做出课程设计报告。因此,在设计中,要求学生应该全面考虑各个设计环节以及它们之间的相互联系,在设计思路上不框定和约束同学们的思维,同学们可以发挥自己的创造性,有所发挥,并力求设计方案凝练可行、思路独特、效果良好。 本课程设计的目的是为了让学生能够全面了解电子电路应用系统的整个设计过程,逐步掌握系统开发的以下相关技术: (1)熟悉系统设计概念; (2)利用所学数电、模拟电路知识,设计电路图; (3)利用PROTEL软件画原理图及PCB; (4)熟悉系统项目设计报告填写知识; (5)培养团队合作意识。 通过本课程设计,有助于学生更好地了解整个课程的知识体系,锻炼学生实际设计能力、分析和思考能力,使其理论与实践相结合,从而为后续课程的学习、毕业设计环节以及将来的实际工作打好坚实的基础。 二、课程设计的具体内容 电子系统设计实践课程就是锻炼学生系统设计、分析和思考能力,全面运用课程所学知识,发挥自己的创造性,全面提高系统及电路设计、原理图及PCB 绘画等硬件水平和实际应用能力,从而体现出电子系统设计的真谛。下面是各个设计阶段的具体内容。 1.系统方案认识 根据所设定的题目,能够给出系统设计方案与思路

题目:信号发生器产生电路,请设计一个能产生正弦波、方波及三角波电路,并制作原理图,然后阐述其原理。 基本原理: 系统框图如图1所示。 图1 低频信号发生器系统框图 低频信号发生器系统主要由CPU、D/A转换电路、基准电压电路、电流/电 压转换电路、按键和波形指示电路、电源等电路组成。 其工作原理为当分别按下四个按键中的任一个按键就会分别出现方波、锯齿 波、三角波、正弦波,并且有四个发光二极管分别作为不同的波形指示灯。2、各部分电路原理 (1)DAC0832芯片原理 ①管脚功能介绍(如图5所示) 图5 DAC0832管脚图 1) DI7~DI0:8位的数据输入端,DI7为最高位。

EDA数字时钟课程设计报告

EDA技术及应用课程设计说明书 2013 届电子信息工程专业班级 题目数字时钟 学号 姓名 指导教师 二О一五年月日

一、基本原理 一个完整的时钟应由三部分组成:秒脉冲发生电路、计数显示部分和时钟调整部分。 秒脉冲发生电路原理:一个时钟的准确与否主要取决于秒脉冲的精确度。为了保证计时准确我们对系统时钟48MHz进行了48000000分频,从而得到1Hz的秒脉冲。 计数显示部分原理:显示部分是用数码管LED实现的,这里使用的是共阳极的数码管如图所示8个数码管,其中左边两个数码管用来显示时的个位和十位、中间的显示分的个位和十位、最右边两个显示分的个位和十位。 时钟调整部分原理:校时电路里定义key[0]、key[1]和k2、k3分别用于控制时钟的计时开始、清零和调整功能中的时的加1、分的加1处理,从而完成对现在的时间调整。本实验电路校时电路在此完成了暂停、清零、时调整和分调整。

二、硬件设计 芯片图: 图1 数字时钟原理图 程序的调试工作都是在电脑上完成的,通过程序的输入、原理图的建立、管脚分配、编译、仿真、再下载到芯片进行运行。

电路中采用共阳极连接的七段数码管,通过程序的控制扫描驱动来显示时钟的时-分-秒。

程序中的按键设定为K1暂停、K2清零、K3调时、K4调分元件清单: 三、数字时钟的Verilog实现 管脚的分配: 程序: module clock(clk,s1,,s2,key,dig,seg); //模块名clock input clk,s1,s2; //输入时钟 input[1:0]key; //输入按键 output[7:0]dig; //数码管选择输出引脚

电子系统设计课程设计

《电子系统设计课程设计》项目设计书 项目名称打地鼠 小组成员1 小组成员2 小组成员3 专业 任课教师 成都理工大学信科院电子系 2013年6月

1项目名称,并简要说明应用背景。 项目名称:打地鼠 应用背景:打地鼠游戏是人们生活中常见的一种休闲小游戏。此游戏玩法简单,考验人们的反应速度。开发者可以根据人们兴趣开发出具有多功能的打地鼠游戏,比如升级、道具、过关等,增加游戏的趣味性。 2项目设计需求(包括功能描述和性能设计指标) 功能描述: 1.启动系统,液晶屏第一排随机显示一个1-9的数字,显示地鼠(?)或地雷(*),中间显示剩余时间,右边显示分数;液晶屏第二排显示游戏的英文名称——打地鼠。 2.开始游戏后,在背景音乐伴随下显示“Ready Go!!!”,之后正式进入游戏游戏历时2min,随着时间的增加,数字显示速度加快,游戏中课随时按K10键暂停,再次按则恢复游戏。 3.进入游戏界面后,随机产生地鼠和地雷(地雷产生的概率为10%),但随着时间的增加,地雷出现的概率会增加,数字更新的速度也越快。按键分别对应独立键盘的9个按键,按下某个键即代表击打相应位置。 4.若击中地鼠:正常情况下分数加1,若在较短时间(实际为地鼠产生到消失的前一半时间内)击中,则“快速反应,双倍加分”,即分数加2。若击中地雷,则分数减1,若未按下相应键,则分数加1。

5.游戏结束,背景音乐停止,保留最高分,分数和时间在按复位后刷新。 性能设计指标:能通过复位,玩家可以持续玩游戏。自动保存和人为清除游戏数据。 3设计方案 3.1 系统设计框图及原理阐述 设计框图: 原理阐述: 1)复位电路 复位条件:89C52单片机复位需要一个长达24个时钟周期的高电平才能复位,复位的作用就是使程序的指针指向地址0,每个程序都是从地址0开始执行,所以复位的概念就是让程序从头开始执行。

EDA课程设计 多功能数字钟设计程序清单 数字系统设计与verilog HDL(第四版) 王金明

EDA课程设计 多功能数字钟设计程序清单 数字系统设计与verilog HDL(第四版) 王金明 /*引脚锁定基于DE2一70,芯片为EP2C70F896,信号定义如下: Clk50m: 50MHz 时钟输, mode: 模式选择0:计时模式1:设置闹钟模式 mcheck: 手动调整时间 turn: 手动调整时间,在时、分之间选择 change: 对选中的数据调整 led hourl,led_hour0,led_minul,led_minu0,led_secl,led sec0; alert: 闹钟输出 ld_alert: 是否设置了闹钟 ld_hour,id_min,ld_sec:在调整时,指示选中了时,分还是秒*/ moduleclock(clk50m,mode,turn,change,mreset,led_hour1,led_hour0,led_minu1,led _minu0,led_sec1,led_sec0, alert,ld_alert,ld_check,ld_hour,ld_min,ld_sec); input clk50m; input mode; // key0键 input turn; //keyl键 input change; // key2 键 input mreset; //switch0复位,低电平有效 output alert; //gpioO->IOAO output ld_alert; //ledgO-led19 output ld_check; //ledgl-led22 output ld_hour; //ledr3-led13 output ld_min; //ledr9-led9

数字滤波器的设计

实验报告 课程名称:数字信号与信息处理 实验名称:数字滤波器的设计 院(系): 专业班级: 姓名: 学号: 指导教师:李家星 2012年12月14日

一、实验目的: (1)实验类型:设计性实验。 (2)掌握通过零、极点设计低阶数字滤波器的设计方法。 (3)掌握IIR 和FIR 数字滤波器的设计方法,并利用所设计滤波器解决实际问题。 (4)通过分析滤波前后信号频谱的变化,使学生能深刻理解滤波的概念。 (5)对两种滤波器设计方法的进行比较。 二、实验主要仪器设备,软件 (1)硬件准备:PC 机 (2)软件准备:Matlab 语言环境 三、实验的基本原理与内容: 1)实验原理: 数字滤波器是具有某种特定频率特性的线性时不变系统。广义上,任何线性时不变离散系统都是一个数字滤波器。设计数字滤波器的任务就是需求一个因果稳定的线性是不变系统,并使系统函数H(z)具有指定的频率特性。 ()() ()n j 0 n e z j e n h z H e H j ωω ω ∑∞ ==== 低阶数字滤波器一般指一阶或二阶滤波器。因其阶次较低,可用零极点的分布来调控其频率特性;其好处处理速度快,硬件简单。另外,高阶滤波器在许多情况下由多个低阶滤波器组合来实现。 LTI 系统可在z 域中用零极点图的形式来描述。这在设计简单的滤波器时很重要,利用其可进行谱分析,只要正确地配置零极点就可达到一定的设计要求。那么,建立零极点与频率特性的关系规律:1)设计滤波器时,一定要保证结构的稳定,因此所有极点应该位于单位圆之内;2)负相位越大引起系统的延时越大,为了减少系统时延,所设计的系统零点最好也在单位圆内(或上);3)极点在单位圆附近,对应频率幅度会出现波峰;零点在单位圆上,对应频率幅度会出现波谷。 基于零极点的低阶数据滤波器模型: 低通:()111121--?-+?-=z a z a z H LP 高通:()1 1 1121--?--?+=z z z H HP αα

基于EDA技术的数字时钟设计

电子系统课程设计任务书 设计题目:基于EDA技术的数字时钟设计 设计目的:课程设计是一种复杂的学习实践过程。设计过程采用系统设计的方法,先分析任务,得到系统设计的要求,然后进行总体设计,划分子系统模块,然后进行详细设计,编写各个功能子系统VHDL代码并进行功能仿真,最后进行整个系统总装并仿真。 设计内容:设计一个采用0.5英寸LED数码管显示的数字时钟系统,工作电源5V,它采用24小时制,具有“时”、“分”、“秒”显示,并且可以校正时间显示。 设计要求: 1.由石英晶体多谐振荡器20MHz和分频器产生1Hz标准秒脉冲;(说 明:EDA试验箱中晶振频率20MHz,经试验箱内一系列二分频可将频率降低,但无法直接产生1Hz信号,需要大家根据实际情况编制分频器得到1Hz信号); 2.秒电路、分电路均为60进制计数,时电路为24进制计数; 3.数码管采用动态扫描方式; 4.能动手校时,校时模块功能可以自由发挥。比如可用两个按钮实 现校时,A按钮控制调整项目,B按钮调整数字,B按钮还可以根据按下时间长短实现慢调、快调功能。也可以用三个按钮实现增减两个方向的手动校时。校时用按钮开关不能超过4个; 5.扩展内容:1)进入校时状态后,被调整数字以2Hz闪烁; 2)24/12小时可调,处于12小时制时,要有AM/PM

显示; 3)所有开关加入防抖设计; 4)加入检测外部环境亮度功能,夜间自动降低数码管显示亮度; 5)加入整点报时电路; 6)增加秒表功能; 7)增加报闹功能。 6.以上电路功能除外部环境亮度检测电路外均由VHDL代码实现层次式设计,顶层电路可以采用EDA电路图。 设计成果: 1.课程设计说明书,要求内容完整,图表完备,条理清楚,字迹工 整,程序完整有相应的注解,仿真波形设计合理有必要的分析,引用资料要注明出处。 2.顶层电路原理图,各层电路VHDL代码及仿真波形。

实验四(IIR数字滤波器设计及软件实现)讲解学习

实验四(I I R数字滤波器设计及软件实现)

10.4实验四IIR数字滤波器设计及软件实现 10.4.1 实验指导 1.实验目的 (1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法; (2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。 (3)掌握IIR数字滤波器的MATLAB实现方法。 (4)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。 2.实验原理 设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。本实验要求读者调用如上函数直接设计IIR数字滤波器。 本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。 3. 实验内容及步骤 (1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图

10.4.1所示。由图可见,三路信号时域混叠无法在时域分离。但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。 图10.4.1 三路调幅信号st 的时域波形和幅频特性曲线 (2)要求将st 中三路调幅信号分离,通过观察st 的幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB 。 提示:抑制载波单频调幅信号的数学表示式为 0001()cos(2)cos(2)[cos(2())cos(2())]2 c c c s t f t f t f f t f f t ππππ==-++ 其中,cos(2)c f t π称为载波,f c 为载波频率,0cos(2)f t π称为单频调制信号,f 0为调制正弦波信号频率,且满足0c f f >。由上式可见,所谓抑制载波单频调幅信号,就是2个正弦信号相乘,它有2个频率成分:和频0c f f +和差频0c f f -,这2个频率成分关于载波频率f c 对称。所以,1路抑制载波单频调幅 信号的频谱图是关于载波频率f c 对称的2根谱线,其中没有载频成分,故取名 为抑制载波单频调幅信号。容易看出,图10.4.1中三路调幅信号的载波频率分

eda数字钟程序及波形仿真图

部件一:60进制程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CLOCK60 IS PORT( CLK: IN STD_LOGIC; ---时钟信号NRESET: IN STD_LOGIC; ---复位端 LOAD: IN STD_LOGIC; ---置数端 D: IN STD_LOGIC_VECTOR(7 DOWNTO 0); ---输入端 CI:IN STD_LOGIC; ---始能端 CO: OUT STD_LOGIC; ---进位脉冲 QH: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); QL: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0)); END CLOCK60; ARCHITECTURE ARTCLOCK60 OF CLOCK60 IS BEGIN CO<='1'WHEN(QH="0101" AND QL="1001" AND CI='1')ELSE'0';----进位输出PROCESS(CLK,NRESET) BEGIN IF(NRESET='0')THEN -----异步复位 QH<="0000"; QL<="0000"; ELSIF(CLK'EVENT AND CLK='1')THEN------同步置数 IF(LOAD='1')THEN QH<=D(7 DOWNTO 4); QL<=D(3 DOWNTO 0); ELSIF(CI='1')THEN IF(QL=9)THEN QL<="0000"; IF(QH=5)THEN QH<="0000"; ELSE QH<=QH+1; END IF; ELSE QL<=QL+1; END IF; END IF; END IF; END PROCESS; END ARTCLOCK60; 60进制波形图如下:

数字滤波器设计论文

数字滤波器设计论文 目录 摘要 (1) 第1章绪论 (2) 1.1 数字滤波器的研究背景与意义 (2) 1.2 数字滤波器的应用现状与发展趋势 (2) 1.3 数字滤波器的实现方法分析 (4) 1.4 本章小结 (4) 第2章数字滤波器的概述 (5) 2.1 数字滤波器的基本结构 (5) 2.1.1 IIR滤波器的基本结构 (5) 2.1.2 FIR滤波器的基本结构 (7) 2.2 数字滤波器的设计原理 (8) 2.2.1 滤波器的性能指标 (8) 2.2.2 IIR数字滤波器的设计方法 (9) 2.2.3 FIR数字滤波器的设计方法 (10) 2.3 IIR滤波器与FIR滤波器的分析比较 (12) 2.4 本章小节 (13) 第3章数字滤波器的算法设计及仿真 (14) 3.1 由模拟滤波器设计IIR数字滤波器 (14) 3.1.1 巴特奥兹滤波器 (14) 3.1.2 切比雪夫滤波器 (15) 3.1.3 椭圆滤波器 (17) 3.2 用MATLAB设计数字滤波器 (18) 3.2.1 FDATool界面 (18) 3.2.2 用Fdatool进行带通滤波器设计 (20) 3.3 将系统函数由直接型化成级联型 (22) 3.3.1 二阶节系数的确定 (22) 3.3.2 系数转换成二进制码 (23)

3.4 本章小结 (25) 第4章IIR带通滤波器的VHDL描述及仿真 (26) 4.1 IIR带通滤波器的VHDL描述 (26) 4.2 IIR带通滤波器的M ODELSIM仿真 (28) 4.2.1 仿真波形 (28) 4.2.2 仿真输出 (29) 4.3 本章小节 (29) 第5章总结 (30) 5.1 滤波器功能和性能总结 (30) 5.2 设计心得和体会 (30) 第6章结束语 (31) 参考文献 (32) 附录 (33) 译文 (37) 外文原文 (41)

南京理工大学EDA设计 多功能数字钟的设计

EDA数字钟的设计 指导老师:谭雪琴 姜萍 姓名:张羊 学院:电子工程与光电技术学院专业:真空电子技术 学号:0804620127 完成时间:2011年4月

目录: 一.设计要求……………………………………………………………… 二.方案论证……………………………………………………………… 三.子模块设计…………………………………………………………… 1.频率源设计…………………………………………………………… ①模48计数器的设计……………………………………………… ②模1000计数器的设计…………………………………………… ③模2计数器的设计……………………………………………… ④ 1KHZ脉冲的设计………………………………………………… ⑤ 500HZ脉冲的设计……………………………………………… ⑥ 1HZ脉冲的设计………………………………………………… 2.计数部分电路设计…………………………………………………… ①模60计数器的设计……………………………………………… ②模24计数器的设计……………………………………………… ③计数器的设计…………………………………………………… 3.清零和保持电路的设计………………………………………………

4.校分和校时电路的设计……………………………………………… 5.报时电路的设计……………………………………………………… 6.显示电路的设计……………………………………………………… ①模6计数器的设计……………………………………………… ② 24选4(或六选一)数据选择器的设计………………………… ③动态显示设计…………………………………………………… 7.最终总体电路………………………………………………………… 四.附加闹铃功能………………………………………………………… ①频率源的设计…………………………………………………… ②闹铃的设计………………………………………………………五.编程下载……………………………………………………………… 六.实验总结和感受………………………………………………………七.参考文献………………………………………………………………

FIR数字滤波器设计及软件实现

实验五:FIR数字滤波器设计及软件实现 一、实验目的: (1)掌握用窗函数法设计FIR数字滤波器的原理和方法。 (2)掌握用等波纹最佳逼近法设计FIR数字滤波器的原理和方法。 (3)掌握FIR滤波器的快速卷积实现原理。 (4)学会调用MATLAB函数设计与实现FIR滤波器。 二、实验内容及步骤: (1)认真复习第七章中用窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理; (2)调用信号产生函数xtg产生具有加性噪声的信号xt,并自动显示xt及其频谱,如图1所示; 图1 具有加性噪声的信号x(t)及其频谱如图 (3)请设计低通滤波器,从高频噪声中提取xt中的单频调幅信号,要求信号幅频失真小于0.1dB,将噪声频谱衰减60dB。先观察xt的频谱,确定滤波器指标参数。 (4)根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MATLAB 函数fir1设计一个FIR低通滤波器。并编写程序,调用MATLAB快速卷积函数fftfilt实现对xt的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。 (4)重复(3),滤波器指标不变,但改用等波纹最佳逼近法,调用MATLAB 函数remezord和remez设计FIR数字滤波器。并比较两种设计方法设计的滤波器阶数。 友情提示: ○1MATLAB函数fir1和fftfilt的功能及其调用格式请查阅本课本;

○ 2采样频率Fs=1000Hz ,采样周期T=1/Fs ; ○ 3根据图10.6.1(b)和实验要求,可选择滤波器指标参数:通带截止频率fp=120Hz ,阻带截至频率fs=150Hz ,换算成数字频率,通带截止频率p 20.24p f ωπ=T =π,通带最大衰为0.1dB ,阻带截至频率s 20.3s f ωπ=T =π,阻带最小衰为60dB 。] ○ 4实验程序框图如图2所示。 图2 实验程序框图 三、实验程序: 1、信号产生函数xtg 程序清单: %xt=xtg(N) 产生一个长度为N,有加性高频噪声的单频调幅信号xt,采样频率Fs=1000Hz %载波频率fc=Fs/10=100Hz,调制正弦波频率f0=fc/10=10Hz. function xt=xtg N=1000;Fs=1000;T=1/Fs;Tp=N*T; t=0:T:(N-1)*T; fc=Fs/10;f0=fc/10; %载波频率fc=Fs/10,单频调制信号频率为f0=Fc/10;

数电模电数字时钟设计

扬州大学能源与动力工程学院本科生课程设计 题目:数字时钟设计 课程:数字电子技术基础 专业:电气工程及其自动化 班级:电气8888班 学号:111712345 姓名:提莫队长 指导教师:年** 蒋** 完成日期: 2013年6月14日

总目录第一部分:任务书 第二部分:课程设计报告 第三部分:设计图纸

第一部分 任 务 书

《数字电子技术基础》课程设计任务书 一、课程设计的目的 本课程是在学完《数字电子技术基础》、《数字电子技术实验》之后,集中一周时间,进行的复杂程度较高、综合性较强的设计课题的实践环节,通过该教学环节,要求达到以下目的: 1.使学生进一步掌握数字电子技术的理论知识,培养学生工程设计能力和综合分析问题、解决问题的能力; 2.使学生基本掌常用电子电路的一般设计方法,提高电子电路的设计和实验能力; 3.熟悉并学会选用电子元器件,为以后从事生产和科研工作打下一定的基础。 二、课程设计的要求 1.设计时要综合考虑实用、经济并满足性能指标要求; 2.必须独立完成设计课题; 3.合理选用元器件; 4.按时完成设计任务并提交设计报告。 三、课程设计进度安排 1、方案设计;(半天) 根据设计任务书给定的技术指导和条件,进行调查研究、查阅参考文献,进行反复比较和可行性论证,确定出方案电路,画出主要单元电路,数据通道,输入、输出及重要控制信号概貌的框图。 2、电路设计:(一天) 根据方案设计框图,并画出详细的逻辑图 3、装配图设计:(半天) 根据给定的元器件,结合逻辑图,设计出电路制作的具体装配图(即绘出组件数量,管脚号以及器件布置的实际位置)。同时配以必要的文字说明。 4、电路制作:(两天) 对选定的设计,按装配图进行装配,调试实验。 5、总结鉴定:(一天) 考核样机是否全面达到现定的技术指标,能否长期可靠地工作,并写出设计总结报。 四、设计题目及内容 1、题目:数字时钟电路 2、内容: (1)具有“时”“分”的数字显示时钟; (2)“秒”不作数字显示,只使“时”和“分”之间“:”间隔闪亮; (3)具有校分和校时功能; (4)具有整点报时功能(59分50秒开始间歇报时)。 五、设计要求 1、用中小型规模集成电路设计出所要求的电路; 2、在实验箱上安装、调试出所设计的电路; 3、部分课题要求用可编程逻辑器件(FPGA/CPLD)设计实现; 4、在EDA编程实验系统上完成硬件系统的功能仿真; 5、写出设计、调试、总结报告。 六、器件与器材

EDA数字时钟课程设计

课程设计报告 学生姓名学号 班级 专业电子信息工程 题目数字时钟设计 指导教师 2011 年11 月

一、任务和设计要求 1. 熟悉集成电路的引脚安排。 2. 掌握各芯片的逻辑功能及使用方法。 3. 了解数字钟的组成及工作原理。 4. 熟悉数字钟的设计与制作。 1.设计指标 (1)时间以24 小时为一个周期; (2)显示时、分、秒; (3)有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间; (4)计时过程具有报时功能,当时间到达整点前 5 秒进行蜂鸣报时。 2.设计要求 (1)画出电路原理图(或仿真电路图); (2)元器件及参数选择; (3)电路仿真与调试 二、设计原理 设计思路 根据系统设计要求,系统设计采用自顶向下设计方法,由时钟分频部分、计时部分、按键部分调时部分和显示部分五个部分组成。这些模块都放在一个顶层文件中。 1)时钟计数: 首先下载程序进行复位清零操作,电子钟从00:00:00计时开始。sethour可以调整时钟的小时部分, setmin可以调整分钟,步进为1。 由于电子钟的最小计时单位是1s,因此提供给系统的内部的时钟频率应该大于1Hz,这里取100Hz。CLK端连接外部10Hz的时钟输入信号clk。对clk进行计数,当clk=10时,秒加1,当秒加到60时,分加1;当分加到60时,时加1;当时加到24时,全部清0,从新计时。 用6位数码管分别显示“时”、“分”、“秒”,通过OUTPUT( 6 DOWNTO 0 )上的信号来点亮指定的LED七段显示数码管。 2)时间设置: 手动调节分钟、小时,可以对所设计的时钟任意调时间,这样使数字钟真正具有使用功能。我们可以通过实验板上的键7和键4进行任意的调整,因为我们用的时钟信号均是1HZ的,所以每LED灯变化一次就来一个脉冲,即计数一次。 3)清零功能: reset为复位键,低电平时实现清零功能,高电平时正常计数。可以根据我们自己任意时间的复位。 总体结构图

EDA数字钟程序代码

--分频器 library ieee; use ieee.std_logic_1164.all; entity fenpin is port(clk:in std_logic; qH: buffer std_logic; qout:buffer std_logic); end entity; architecture c20 of fenpin is begin process(clk) variable num : integer :=1; variable num1 : integer :=1 begin if clk'event and clk='0' then if(num=2)--0000000) --1HZ--10000000 to timer then num:=1;qout<=not qout; else num:=num+1; end if; if(num1=1)--000000) --1000HZ--10000 to wei then num1:=1;qH<=not qH; else num1:=num1+1; end if; end if; end process; end c20; --timer library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity Clock3 is port(clk:in std_logic; duan: out std_logic_vector(3 downto 0); wei: in std_logic_vector(2 downto 0); wei2: out std_logic_vector(2 downto 0) ); end entity; architecture clo of Clock3 is signal clk2:std_logic ; signal keys: std_logic_vector(2 downto 0); begin

相关文档
相关文档 最新文档