前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇数字电路设计教程范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
论文关键词:数字电路与逻辑设计,教学模式,教学方法,实践教学
一、三本院校课程教学现状
三本学生中多才多艺的较多,平时开展各种社团活动比较频繁,学生自主创新思维活跃,但能够有条不紊自主学习的学生可能只有一少部分,许多学生对学习没有兴趣,课余时间几乎不学习。在教学过程中,刚开始学生还可以接受一些新知识,但随着教学的深入,学习难度的增大,学生感到了困难,随之学习的兴趣也越来越低,主动学习便是一句空话,学生也就是为了应付考试,甚至不少学生都是考前突击。这一特点在《数字电路与逻辑设计》课程的教学中也同样存在。要提高本课程的教学质量,我们在定位教学目标,设置教学内容,采用教学手段和方法的时候都必须以这一实际情况为前提。
二、教学理念,教育目标
三本教学有别于一本和二本,教学注重于学生应用能力和综合素质的培养,教学过程中突出培养学生应用知识,分析解决实际问题的能力,以学生为主体,以教师为主导,以教学为主线,树立能力培养目标为重中之重的思想,实现人才培养模式多元化,努力培养“宽口径、厚基础、强能力、高素质”,适应国际竞争和社会需求的应用型人才。三本教育要加强通识教育,注重文理渗透理工结合,体现本科教育的基础性和可发展性。努力探索人才培养新举措,深入推进人才培养模式改革,实现多元化人才培养新格局,大力实施“育人为本,全面发展”的人才培养战略,拓宽基础学科的范围和基础教学的内涵。
三、教材选取
考虑到三本学生理论基础较差,教材选取不应选择理论研究或理论推导比较复杂的教
材,否则会让学生还未涉及到重要的知识点就已经因为难度过大而丧失信心。教材选取要以应用为宗旨,强调理论与实践相结合。编写原则遵循由浅入深,通俗易懂,重点和难点采取阐述与比喻相结合,例题与习题相结合,实例与实验相结合,针对数字电路课程实践性强的特点,增加了与教材相应的实践环节教学内容。
四、教学内容
在三本的《数字电路与逻辑设计》教学中,应该注重基础教学,要求学生熟悉布尔代数的基本定律,掌握卡诺图与公式化简法;掌握数字电路中常用的基本单元电路和典型电路构成、原理与应用;掌握常用的中小规模组合逻辑电路和集成电路功能和设计方法。具有查阅集成电路器件手册,合理选用集成电路器件的能力。对集成芯片,重点分析电路的外特性和逻辑功,以一些典型集成电路为例介绍如何查阅集成电路手册、资料等,使学生学会在实际应用中正确选择和使用集成芯片[11]。
对于三本学生而言,在电路设计中要求学生掌握基本的设计方法,但可以适当降低对电路设计的要求,增强电路分析方法的教学。学生可以分析较复杂的电路,并且能够利用已有的电路进行修改,使电路满足自己设计的需要。
五、教学手段与教学方法
(一)采用现代化教学
《数字电路与逻辑设计》课程的特点就是电路图、逻辑图特别多,如果采用板书形式教学,既浪费课堂时间也达不到好的教学效果。教学过程中采用多媒体教学,可以使一些抽象的、难以解决的概念变得形象,易于学生接受。对于集成电路的分析和设计,为了增强演示效果,除了在PPT中添加更多的动画效果外,还可以采用Flash或Authorware软件制作动画效果,使电路的变化过程一目了然。
(二)结合实际教学
在授课过程中,针对三本学生可以结合生活中的应用举例,如目前LCD显示、数字温度计、十字路通灯控制、数字频率计、多媒体PC机里的显示卡、声卡是用数电中的数/模(D/A)转换实现图像显示和声音播放、制造业中的数控机床等都应用了数电技术。通过这些实例的介绍,可以使学生真正了解数字电路课程的重要性,从而提高对数字电路学习的兴趣和学习积极性。
(三)网络教学
网络教学可有两种方式,一是上传教师课堂教学过程的视频到校园网;二是教师制作图文并茂的课件,以及与该课程有紧密关系的资料一起上传到网上。目前大部分三本学生宿舍都可以登录校园网,学生可以在任何时间进行网络教学。网络教学的方式解决了学生传统的看书自学枯燥无味的问题。
六、实践教学
实践教学一般分为基础实验和课程设计两大部分。基础实验教学从属于理论教学,实验内容均为验证性实验。教师给出实验步骤、电路图,学生按部就班、验证结果,通过基础实验,使得学生对于课堂所学基本概念和方法的理解和掌握更加透彻,同时培养学生科学实验的精神和方法,训练严格严谨的工作作风。基础实验是理论和实际相互联系的一个重要教学环节,但是仅仅是这种以教师为主导的实验模式,不能激发起学生学习兴趣和积极性,学生仍然不善于综合运用所学知识分析和解决问题。课程设计的目标就是为了加强基础、拓宽知识面、增强学生的自主学习和工程实验能力、发展个性、启发创新、加强理论与实验。学生根据实验任务,自行设计电路和测试方案,增强学生自主学习能力,学生既动脑又动手,解决问题的能力大大提高[12]。
除此之外,还可以设置一些电子设计大赛,成立电子设计兴趣小组,在教师的指导下开展设计性和专题研究性实验,为希望进一步发展的学生提供良好的学习环境和创新研究场所,培养学生的团队协作精神,发挥学生学习的自主性和创造性,极大地提高学生的学习兴趣和动手能力。
七、结束语
随着高等教育的普及,三本学生的数量和质量也在日益增高,同时随着数字技术的广泛
普及,数字化社会已经到来,大规模、超大规模数字集成电路以其低功耗、高速度等特点, 应用越来越广泛。因此如何在有限的时间内使三本的学生扎实掌握数字电路基础知识理论和基本操作技能,培养分析问题、解决问题的能力,是教师在教学过程中需要认真思考的问题。使学生在传统的数字电路逻辑分析、逻辑设计思维训练的基础上进一步建立起现代数字电路的应用与设计思想,掌握现代电子技术的新技术和新器件,为走向实际工作岗位打下坚实的基础。
参考文献
[1] 谢丽.《数字电路与逻辑设计》教学改革实践.吉林省教育学院学报,2012年第02期
[2] 李琰,张翌呖. 数字电路的教学改革与创新.计算机光盘软件与应用,2011年第22期
[3] 李小珉,叶晓慧.深化《数字电路与逻辑设计》课程改革[J].长江大学学报(自科版),2OO4(4)
[4] 田东.数字电路课程设计的改革与探讨.实验技术与管理,2006年05期
[5] 马达灵,张云云.《数字电路》课程教学改革之我见.集宁师专学报,2008年12月第30卷第4期
[6] 邓朝霞.《数字电路》课程整合与优化的改革.广西教育学院学报,2006年第6期
[7] 张丽.高职《数字电路》课程教学方法的探索.读与写(教育教学刊),2010年04期
【关键词】Multism;数字电路;时钟;仿真分析;教学
在职业学校应用电子等相关专业的课程体系中,数字电路对于学生专业能力的形成具有极为重要的作用。数字电路主要讨论了时序逻辑电路、组合逻辑电路的设计与分析方案。其中组合逻辑电路主要侧重研究电路的输入与输出的逻辑关系,其电路的设计与分析较为简单;时序逻辑电路由于同时考虑到系统的初始状态以及输入状态,因此设计难度较大。为了能够使得在教学过程中,学生能够对于时序逻辑电路具有较好的掌握,可以应用时钟电路的设计作为一个教学项目,并使用Multism仿真软件,加强学生的直观理解,并有效提升数字电路的教学效果。
1.Multism简介
Multism是美国NI公司开发的全功能电子设计平台,又被称为虚拟实验室。软件为电子工程师以及所有的电子爱好者提供了完整的电子设计工作平台(EWB)。软件具有丰富的电子元器件库,包含常见的基本元件以及集成芯片,同时软件具备多种常见的分析测试仪器,主要包含万用表、示波器、逻辑分析仪、字信号发生器、信号源等。目前软件具备了直流分析、交流特性分析、逻辑状态分析、傅立叶分析、噪声分析等多种分析方案,能够为电路性能分析提供重要的参考。由于其功能强大,能够直观反映所设计电路的工作效果,因此在数字电路的教学过程中采用软件仿真的方案可以有效加强学生对电路的认识,提升教学效果。
2.时钟电路的设计与仿真
时钟电路设计中涉及到秒脉冲电路的设计、秒计时电路、分钟电路以及小时电路的设计。综合应用了555时基电路、计数器电路以及电路级联等方面的知识。对于学生的时序逻辑电路的设计与分析能力是一个比较综合的锻炼。
2.1 基于555时基电路的秒脉冲发生电路的设计
时钟电路计时主要是应用了74LS162计数器芯片的级联实现,计数器芯片需要标准的秒脉冲电路作为工作的CP脉冲实现精准的计时。产生秒脉冲的实现方案较多,可以采用振荡电路、555时基电路、晶振等多种方案实现。在本例中主要侧重对于数字电路知识的掌握,因此采用了555时基电路构建秒脉冲发生器。555时基电路的电路原理图以及工作波形如图1所示。
2.2 秒计时电路、分钟电路以及小时电路的设计
应用两片同步十进制计数器74LS162级联,并改变进制可以实现60进制的秒计时电路以及分钟计时电路,小时电路则使用二十四进制的方式。电路采用同步时序进行控制。秒、分钟计时电路的电路原理图如图2所示,小时电路的电路原理图如图3所示。
在时钟电路的分钟以及秒计时电路中,采用了60进制的方案,以秒计时电路为例,当计数值达到60的时候,与非门电路输出低电平控制计数器芯片的清零端,计数器清零,重新开始计数,同时秒计时电路还必须给分钟计时电路提供一个脉冲,使得分钟计时加一。分钟电路的工作原理与秒基本相同,在计时满60分钟的时候需要自身清零,同时向小时电路提供一个高电平脉冲。小时计时电路采用二十四进制,因此计数电路清零方式也与秒、分钟电路不同。整体电路采用了同步的时序,电路工作性能较为稳定。
2.3 各模块电路之间的连接
要能够完成整体时钟电路的仿真分析,需要将各个单元电路进行级联。在模拟电子产品的设计过程中单元电路级联的时候要充分考虑到阻抗特性以及耦合方式对于电路整体工作性能的影响。在数字电子产品的设计过程中,一般单元电路工作正常的前提下,只要单元电路之间连接正确都可以正常工作。各个模块之间的连接方式如图4所示。
3.数字时钟电路的功能拓展以及改进方案
本时钟电路采用了数字时序逻辑电路的方案进行了设计,能够完成对于时、分、秒的计时。但是同时也存在较多可以进一步优化的方案。主要包含以下几个方面,首现是功能的进一步拓展,可以在加上星期以及天数的计数模块,实现万年历的功能,添加温度、湿度等传感器实现温度、时间等共同显示,需要的时候还可以添加闹钟模块等;其次电路的性能也可以进一步优化,比如可以采用频率准确度更高的晶振电路提供秒脉冲信号,提升计时的精确度,可以使用DS1302计时芯片简化电路的结构等。在实际的教学过程中可以为学生提供一定的思路,指导学生在掌握本种设计方案的基础上,进行研究性学习,提升学习的积极性以及学习的实际效果。
4.结论
时钟电路是一个复杂度较小,但是较为综合的时序逻辑电路。在目前职业学校进行专业课程教学过程中,普遍存在着学生对于理论知识学习的兴趣不高,学习效果较差的现象。作为应用电子技术等相关专业的专业基础课程,数字电路在教学的过程中就要能够吸收教学改革的先进理念,应用现代化的教学手段,为学生的专业课程学习提供直观的教学方式。应用Multism软件进行时钟电路的设计,能够直观体现电路工作的性能,有效提升学生学习的积极性与主动性,改善课程的教学效果。
参考文献
[1]王斌,钱松.电子线路板设计与制作[M].北京:北京出版社,2011.
[2]夏路易,石宗义.电路原理图与电路板设计教程Protel 99SE[M].北京:北京希望电子出版社,2002.
[3]杜武林.高频电路原理与分析[M].西安:电子科技大学出版社,1990.
[4]清华大学通信教研组高频电路[M].北京人民邮电出版社,1979.
关键词:单脉冲发生器;按键消抖;FPGA;Verilog HDL
中图分类号:TN782 文献标识码:A
文章编号:1004-373X(2009)21-171-02
Elimination Buffeting of Keystroke and Single Pulse Generator
Circuit in FPGA Development Process
XING Ziru,SHI Mingjian
(Inner Mongolia University of Technology,Huhhot,010051,China)
Abstract:The circuit principle of elimination buffeting of keystroke and a single pulse generator in FPGA development are introduced,and keying single pulse generator is achieved.It solves eliminating high-frequency buffeting problem by a counter and produces the single pulse which has the same pulse width and same phase with clock cycle.Keying a single pulse generator can be applied to other independent FPGA design.The behavior and description based on Verilog HDL language are given and it is simulated in Quartus software,the method is proved logical and feasible as a result.
Keywords:single pulse generator;elimination buffeting of keystroke;FPGA;Verilog HDL
FPGA开发中常用到单脉冲发生器。一些文章介绍过产生单脉冲的电路,产生的单脉冲脉宽和相位都不能与时钟同步,只能用在要求不严格的场合。笔者目前从事的课题中需要一个与时钟周期等宽,相位与时钟周期相同的键控单脉冲发生器。键控单脉冲发生器需要按键产生单脉冲,但大多数带有FPGA芯片的开发板提供的是高频时钟脉冲,按键时会存在抖动问题。为此笔者专门设计了按键消抖电路消除抖动,为产生单脉冲提供稳定的按键信号。
1 按键消抖电路原理[1]
为了使按键消抖电路模块简洁,移植性好,在此用计数器的方式实现按键消抖的功能。
计数器模值n根据抖动信号的脉冲宽度和采样脉冲信号CLK的周期大小决定。计数器模值n=延时/脉冲信号采样周期。一般按键抖动时间为5~10 ms,甚至更长。笔者用的开发板提供的系统时钟为24 MHz,按公式计算,当计数器模值取20位,计数到219即h8_0000时,大约延时22 ms。计数期间认为是按键的抖动信号,不做采样;计数器停止计数,认为采样信号为稳定按键信号。这样就可以把按键时间小于22 ms的抖动信号滤掉。
引入一个采样脉冲信号CLK,并输入按键信号KEY。KEY输入低电平,计数器开始做加法计数,当计数到h8_0000即计数器中最高位Q19为1,计数器停止计数,输出Q19,作为按键的稳定输出,计数期间Q19输出为0;KEY输入高电平,计数器清零,Q19输出为0。所以该电路需按键22 ms才会得到有效信号。
2 键控单脉冲发生器电路原理[2,3]
键控单脉冲发生器 [4]利用上述电路解决按键消抖问题,得到稳定的信号\。用两个D触发器[5]和一个与门产生单脉冲,如图1所示。
图1 键控单脉冲发生器电路图
D触发器U2A收到稳定信号D1=1后被触发。触发器U2A中的Q1端得到与CLK同步的正向脉冲。输出Q1到D触发器U3A,得到比Q1延迟一个时钟周期的的正向脉冲,将Q2端输出取反得到一个负向脉冲。Q1与Qn2的输出作为一个与门的输入,会输出一个脉宽是原时钟周期2倍的单脉冲。
为了使得出的单脉冲脉宽与时钟周期相等,相位与时钟周期相同,对图1中电路设计做了改进,如图2所示[6]。
图2 相位调整后单脉冲发生器电路图
图2中时钟送入D触发器前加了非门,使Q1端产生与n_CLK(CLK的反向脉冲信号)同步的正向脉冲,与门输出单脉冲与CLK差半个时钟周期,作为D触发器U4A的输入D4,在CLK上升沿U4A被触发,使单脉冲脉宽与时钟周期相同,实现了等脉宽。并延迟了半个时钟周期使输出脉冲与时钟周期对应,实现了相位调整。整个单脉冲发生器的时序图如图3所示(图3中的t1,t2是任意键按下与键抬起时刻)。
图3 单脉冲发生器时序图
3 基于FPGA下的按键消抖计数器和单脉冲发生器的Verilog HDL语言描述[7,8]
图1中的按键消抖计数器电路,其进行描述的Verilog HDL语言[9]代码如下:
module kb_debounce(clk,n_rst,n_Kd,Krdy);
input clk,n_rst,n_Kd;
output Krdy;
reg[19:0] Q;
assign Krdy = Q[19];
always @ (posedge clk or negedge n_rst)
begin
if(!n_rst) Q
else if(n_Kd == 1′b1)Q
else if(Q
end
endmodule
代码中的复位n_rst和按键n_Kd都是低电平有效。键控单脉冲发生器的Verilog HDL语言代码如下:
module kb_click(clk,n_rst,n_Kd,click);
input clk,n_rst,n_Kd;
output click;
wire click,U1,U2,U3,U4;
kb_debounce(.clk(clk),.n_rst(n_rst),.n_Kd(n_Kd),.Krdy(U1));
DFF (.clk(~clk),.n_rst(n_rst),.D(U1),.Q(U2));
DFF(.clk(~clk),.n_rst(n_rst),.D(U2),.Q(U3));
assign U4=(U2 &~U3);
DFF(.clk(clk),.n_rst(n_rst),.D(U4),.Q(click));
Endmodule
代码中还用到了D触发器DFF,实现这个模块的代码比较简单,此处从略。
4 结 语
该文中的设计,实现了键控单脉冲发生器,产生脉宽等于时钟脉冲,输出脉冲与时钟周期对应的单脉冲,并解决了按键消抖问题,可以应用到各种需要产生单脉冲的FPGA电路设计中。
按键消抖电路可独立地应用于其他FPGA电路设计中。本文中设计的20 b计数器是根据笔者课题需要而定。其他设计中可以根据按键抖动时间可利用公式计算出计数器模值设计计数器。
参考文献
[1]实用可控的按键抖动消除电路[EB/OL]..
[2]余孟尝.数字电子技术基础[M].北京:高等教育出版社,1999.
[3]\罗斯.数字系统设计与VHDL[M].金明录,刘倩,译.北京:电子工业出版社,2008.
[4]单脉冲发生器电路[EB/OL]..
[5]李亚伯.数字电路与系统 [M].北京:电子工业出版社,2001.
[6]王兢.数字电路与系统[M].北京:电子工业出版社,2007.
[7]夏宇闻.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,1996.
[8]杨恒.FPGA/VHDL快速工程实践入门与提高[M].北京:北京航空航天大学出版社,2003.
[9]常晓明,李媛媛.Verilog-HDL工程实践入门[M].北京:北京航空航天大学出版社,2005.
[10]王诚,吴继华.Altera FPGA/CPLD设计[M].北京:人民邮电出版社,2005.
关键词 FPGA;SDRAM;控制器
中图分类号:TP333 文献标识码:A 文章编号:1671—7597(2013)041-024-02
在信息处理中,特别是在实时视频图像的处理中,需要大量使用SDRAM实现数据缓存,但SDRAM复杂的控制逻辑,严格的时序要求,令使用很不方便。为使用户能很方便地操作SDRAM,本文介绍了一种基于FPGA的通用SDRAM控制器软核的Verilog设计,几乎包括SDRAM的所有操作模式,故用户只要根据器件的参数进行修改,就可实现自己对特定SDRAM的特定工作模式的利用。
1 SDRAM简介
在本次设计中,采用Hynix公司的4Banks×1M×16bit HY57V641620作为控制目标,其工作时钟能达到133MHz,是一种高速存储器。HY57V641620的管脚分为三类:控制信号:片选(CS_N)、同步时钟(CLK)、时钟有效(CKE)、读写选择(WE_N)、数据有效(DQM)等;地址信号:行地址选择(RAS_N)、列地址选择(CAS_N)、行/列地址线(SA0~SA12)分时复用、Bank块地址线(BA0~BA1);数据信号:DQ0~DQ15,双向数据。其使能受DQM控制。
通常一个SDRAM会有多个Bank,在进行寻址时先通过BA的值来确定是哪个Bank,然后再在这个选定的Bank中选择相应的行与列进行寻址,在对Bank进行读写前,必须激活行选通信号。SDRAM在上电以后,对其进行其他操作之前,必须先对其进行初始化。
2 SDRAM控制器的FPGA设计
本设计采用Altera公司的FPGA CyloneⅡ EP2C5-208芯片实现SDRAM控制器的设计。SDRAM控制器采用模块化设计,由四个主要模块组成:SDRAM控制器模块(顶层模块)、控制接口模块、命令模块和数据传输模块。顶层模块调用三个较低的模块并将设计整合在一起。控制接口模块(和主机的内存地址相连)接收命令,对命令进行解码并把命令请求传输给命令模块。命令模块接收控制接口模块的命令和地址并对SDRAM发出合适的命令。数据传输模块在写和读命令时控制数据的传输。SDRAM控制器块图如图1所示。
2.1 控制接口模块
控制接口模块对主机命令进行解码并注册命令,将已解码的命令传输给命令模块。此外控制接口模块还包含对SDRAM模式寄存器的设置,可以设置SDRAM的突发读写长度和预充电周期,寄存器设置值是在SDRAM初始化时通过接口模块输入的。
2.2 命令模块
命令模块接收来自控制接口模块已解码的命令,接收来自刷新控制逻辑的刷新请求,并对SDRAM产生命令。该模块包括一个简单的仲裁器,该仲裁器对来自主机接口的命令和来自刷新控制逻辑的刷新请求进行仲裁。来自刷新控制逻辑的刷新请求比来自主机接口的命令有较高的优先权。如果从自主机来的命令和刷新请求同时到达或在隐藏的刷新操作命令中到达,仲裁器将会等到隐藏的刷新操作完成后再对主机命令应答。如果从主机来的操作命令正在进行时,将会等到主机操作命令完成后再对隐藏的刷新操作命令应答。
仲裁器从主机接收一个命令后,该命令将会被传输到命令模块的命令发生器部分。在SDRAM发出的命令之间,命令模块通过三个可替换的寄存器进行定时。第一个替换寄存器用来控制ACTIVATE命令的定时;第二个用来控制WRITEA和READA命令的配置;第三个用来记录命令的持续时间,该命令让仲裁器确定是否最后被请求的操作已被完成。
命令模块执行SDRAM的复用地址命令。在ACTIVATE(RAS)命令期间,行地址输出有效,该命令把行地址输出给SDRAM的A[11:0]引脚。在READA(CAS)或WRITEA命令期间,列地址输出有效,该命令把列地址输出给SDRAM。
输出信号OE(被命令模块产生)是在数据传输模块的数据输入线路的最后阶段用来控制三态缓冲器的。
2.3 数据传输模块
数据传输模块为SDRAM和主机之间提供了数据接口。WRITEA命令时,主机数据会通过DARAIN传输到SDRAM。 READA命令时,数据会通过DATAOUT送给主机。
数据输入线路由一个两分段的管线组成去适当排列数据而使CMDACK和SDRAM发出的命令相关联。数据输出线路由一个两分段的管线组成用来在READA命令期间寄存来自SDRAM的数据。如果DARAOUT和CMDACK配合的好,可以使输出数据管线的延迟减小到零。
3 SDRAM控制器的仿真
本设计的功能仿真是在MAX+plusⅡ的环境中进行的。图2给出了SDRAM控制器控制SDRAM进行写操作的仿真图。仿真结果表明SDRAM控制器对各个操作均有正确的时序输出。
4 结束语
本设计应用自顶向下的设计思想,选择FPGA及Verilog HDL语言成功的设计出一种简单的、通用的SDRAM控制器。该通用控制器具有多种突发读、写方式和工作模式。在实际应用中,可选择其中的基本读、写、刷新操作来满足系统的需要。用SDRAM实现大容量的高速数据缓存具有明显的优势,使用可编程器件实现对SDRAM的控制则使之具有更高的灵活性。
参考文献
[1]夏宇闻.Verilog HDL数字系统设计教程[M].北京:北京航空航天大学出版社,2003.
[2]夏宇闻.复杂数字电路与系统的Verilog HDL设计[M].北京:北京航空航天大学出版社,1998.
[3]SDR SDRAM Controller White Paper[DB/CD].Altera 2002.8.http:///literature/wp/sdr_sdram.pdf.