APP下载

基于FPGA的组合逻辑电路教学实验融合研究

2016-05-17湖北民族学院信息工程学院黄双林景爱霞嵩湖北民族学院科技学院

电子世界 2016年8期
关键词:数字电路

湖北民族学院信息工程学院 黄双林 景爱霞 刘 嵩湖北民族学院科技学院 徐 建



基于FPGA的组合逻辑电路教学实验融合研究

湖北民族学院信息工程学院 黄双林 景爱霞 刘 嵩
湖北民族学院科技学院 徐 建

【摘要】FPGA技术为数字电路的教学和实验,既带来灵活性又带来了挑战。基于硬件描述语言(HDL)的FPGA正深入地改变传统数字系统设计方法、设计过程和设计观念。本文对数字电路教学中组合逻辑部分内容进行了基于硬件描述语言(HDL)的FPGA改造,有利于克服传统数字电路教学实验中的缺点。这种硬件设计软件化设计模式有利于培养学生创新能力、增强综合素质和提高教学质量,促使学生尽早掌握数字系统硬件设计软件化发展的新趋势,提高学习兴趣。

【关键词】数字电路;FPGA;数字系统设计;硬件描述语言

1 引言

《数字电子技术基础》是电气信息类专业的专业基础课程,具有很强的实践性[1]。传统数字电路教学注重数字系统分析设计的所有细节,对于初学者来说比较繁杂,难以掌握和设计复杂度较高的数字系统。在实际教学中,教师往往以简单实例引导学生,逐步理解和掌握数字逻辑电路分析设计的一般步骤和方法。对于较复杂的数字系统设计,对于学生学习和教师教学都存在着很大的挑战以及难以逾越的障碍。基于FPGA技术[2],就可以让教师只需要向学生教授数字逻辑问题的分析和设计思路,从顶层开始,逐步分解复杂问题直至基本的简单的数字逻辑问题。然后,通过HDL语言将这问题和思路描述出来。最后将综合分析后的目标文件下载到FPGA器件就可以观察设计结果。

近年来,基于FPGA的数字系统设计已经走入了高校电子信息专业数字电路教学环节和实验室实践环节。文献[3]认为,采用FPGA技术,改造高校数字电路实验方法和手段,对促进教学内容的知识更新,顺应国际电子设计及应用技术发展需求,引入计算机EDA技术的设计和仿真手段,加强学生的综合设计能力和直观分析效率,使学生的学习和实验训练与现代技术发展相一致,具有一重要的意义和迫切性。文献[4]分别通过组合逻辑和时序逻辑设计实例比较了传统设计方法存在的问题和现代逻辑设计方法的优势。文献[5]阐述了FPGA在数字电路实验教学中的重要地位和作用。文献[6]通过对现有课程中不同部分的内容进行分析,尝试提取适应发展的部分,重新构成一个自洽的课程内容体系。并认为HDL的设计应该将速度的评价融入到电路结构的描述中,并通过仿真工具的应用使这一评价能够推广到大系统中。

然而,关于如何将基于FPGA的现代EDA技术与传统数字电路课堂教学融合的研究非常少,而且现有的研究工作尚处于起步阶段。接下来,本文将以组合逻辑电路为例,研究和讨论在数字电路课程教学中如何将基于FPGA的现代EDA技术与数字电路传统课堂教学相融合的方法和步骤。

2 组合逻辑电路分析设计思路

组合逻辑电路的设计:根据实际逻辑问题,求出所要求逻辑功能的最简单逻辑电路。

2.1传统设计思路

组合逻辑电路的设计步骤如下:

①逻辑抽象:根据实际逻辑问题的因果关系确定输入、输出变量,并定义逻辑状态的含义;②根据逻辑描述列出真值表;③由真值表写出逻辑表达式;④简化和变换逻辑表达式,画出逻辑图。

2.2基于FPGA的设计思路

基于FPGA的组合逻辑电路的设计步骤如下:

①根据实际逻辑问题的因果关系确定输入、输出变量,并定义逻辑状态的含义,并确定顶层模块;②采用HDL语言描述逻辑问题;③通过EDA工具进行综合分析、仿真和FPGA在线测试。

3 融合

传统的数字系统组合逻辑电路设计需要人工列出真值表,由真值表写出逻辑函数表达式,再简化和变换逻辑表达式,画出逻辑图。最后还需要购买各种相应的门电路或者集成电路器件,制作相应的实际印制板电路,才可以进行实际数字系统的测试。这整个过程对于刚刚接触数字逻辑电路的学生来说,将是一项困难大、耗时长和难以逾越的障碍。因此传统的数字电路教学和实验需要占用大量的课时,但是效果却难以令人满意。

基于硬件描述语言和FPGA的数字电路设计能够大大简化初始入门者的学习门槛,轻松进行数字电路实验和进行实际数字系统的仿真测试。

3.1注重分析和设计思路

在实际教学中,首先向学生传输传统的组合逻辑电路分析设计思想,然后再讲解基于FPGA和HDL语言的设计思路。通过对比教学,激发学生学习先进设计方法、理念和EDA开发工具。

在对比教学中,注重问题的分析,突出如何从问题中提炼出基本逻辑问题,理清各个逻辑变量的内在因果联系,确定输入、输出逻辑变量,并定义逻辑状态的含义。在此基础上,用HDL语言对于问题进行描述。最后,通过EDA工具进行综合分析、仿真和FPGA在线测试。

在这个过程中,无论是初始针对原始问题的分析以确定内在因果逻辑关系,还是采用HDL语言对于问题进行描述和设计,都只需要教师和学生着眼于问题分析和设计思路。这大大简化整个设计过程、加快实际电路设计速度,降低设计门槛,并且通过FPGA实验板可以马上验证实际效果。

3.2典型数字集成电路与HDL描述相结合

在组合数字逻辑电路教学中,对于典型数字集成电路的教学可以与HDL描述相结合。首先介绍典型数字集成电路的原理、功能、逻辑电路图、真值表以及典型期间等;在此基础上,接着讨论采用HDL语言描述的编程模块,以及仿真和实际测试效果。这样的教学有利于学生更加注重模块逻辑功能和设计思路,减少学生学习器件以及器件连接的枯燥,即时的实际效果展示又可以进一步激发学生学习兴趣,强化学生求知欲望。在接下来部分,本文将以三八译码器为实例进行说明。

4 组合逻辑电路3-8译码器

译码的功能是将具有特定含义的二进制码进行辨别,并转换成控制信号,具有译码功能的逻辑电路称为译码器。译码器在数字系统中有广泛的应用,不仅用于代码的转换、终端的数字显示,还用于数据分配,存贮器寻址和组合控制信号等。不同的功能可选用不同种类的译码器。译码是编码的逆过程,它能将二进制码翻译成代表某一特定含义的信号 (即电路的某种状态)。具有译码功能的逻辑电路称为译码器。

图1 波形仿真

三八译码器有三个地址输入端A、B、C,它们共有8种状态的组合,即可译出8个输出信号Y0~Y7。另外它还有三个使能输入端E1、E2、E3。实现3-8译码器的Verilog HDL代码如下:

图1是三八译码器的波形仿真。从仿真波形中,可以直观地看出输入和输出之间的逻辑关系。在波形仿真之后,可以很快通过下载线下载目标文件到FPGA实验板,在课堂上就可以观察实际电路的运行效果。

5 结论

本文思考如何将基于HDL语言的FPGA实验板与传统数字电路教学相结合。这种思路无疑能够丰富课堂教学手段,开拓学生视野,激发学生兴趣,强化学生求知欲望。数字电路是一门实践性很强的课程,通过课程讲授、结合虚拟实验和实物实验将使学生的创新精神、动手能力得到较大的提高,进一步巩固所学的理论知识,提高教学质量。在厚基础、宽口径的应用人才培养模式指导下,我们的课堂教学中应该注重知识的复合性、现时性和应用性,培养学生应用科学理论解决实际问题的综合能力、实践能力及创新能力。

参考文献

[1]康华光,秦臻,张林.电子技术基础–数字部分[M].北京:高等教育出版社,2014.

[2]王金明.数字系统设计与Verilog HDL[M].北京:电子工业出版社,2014.

[3]朱明程,董尔令.应用FPGA技术改造数字电路实验[J].电工教学,1995,17(3):29-34.

[4]双凯,蔡洪明.基于CPLD/FPGA的数字电路设计方法变革必要性研究[J].现代电子技术,2014,4,37(7):139-142.

[5]丁健,杜潇君,张景凤.基于FPGA的数字电路实验教学的探讨[J].信息技术教学与研究,2011,60:158-159.

[6]姜书艳,张鹰,蒋宁,唐军,李力.数字电路教学体系改革的研究[J].教育教学论坛,2014.2,6:165-166.

通讯作者:徐建。

基金项目:湖北民族学院博士启动基金(MY2013B015);湖北民族学院科技学院教学研究项目(KYJY201507)。

猜你喜欢

数字电路
基于数字电路的定时器的设计
数字电子技术中的数字信号和数字电路
案例教学在数字电路教学改革中的应用研究
数字电路实验的设计分析
数字电路功耗的分析及优化
基于高速数字电路的PD UHF信号纳秒级陡脉冲源研制