数字电路、微机原理类课程改革
2016-03-03左冬红
罗 杰, 左冬红, 张 林
(华中科技大学 电子信息与通信学院, 湖北 武汉 430074)
数字电路、微机原理类课程改革
罗 杰, 左冬红, 张 林
(华中科技大学 电子信息与通信学院, 湖北 武汉 430074)
本文根据数字系统设计方法和实现技术的发展现状,提出将数字电路和微机原理类课程统一到数字系统这一框架内,硬件描述语言和可编程逻辑器件应该作为数字电路课程的基本教学内容之一。我们以“C语言→MIPS汇编→MIPS处理器设计→接口技术”为主线组织微机原理课程的教学内容,同时还构建了基于FPGA的数字系统实验平台,使之能与后续的嵌入式系统课程结合。通过三年实践,取得了良好的效果。
数字系统;微机原理;教学改革
0 引言
当今数字系统设计方法和实现技术发生了显著变化,FPGA、DSP、单片机、嵌入式微处理器等得到广泛应用,这些新技术、新概念对传统课程体系和内容产生了极大冲击。如何统一规划相关课程的教学?如何在教学内容中体现技术的发展?如何为将来在IT行业从事科学技术研究和开发的学生打下良好的专业基础?带着对这些问题的思考,我们从2012年开始,对数字电路和微机原理类相关课程进行了规划整合,改革教学内容,构建了适应新形势的课程体系,取得了预期的效果。
1 相关课程现状分析与改革思路
数字电路和微机原理类课程包含了“数字电路与逻辑设计”、“微机原理与接口技术”、“嵌入式系统原理与设计”和与它们配套的实验课程。这些课程让学生从简单数字电路开始学习,逐步掌握由微处理器构成的数字系统的组成及工作原理,并具备嵌入式系统的初步开发能力。
“数字电路与逻辑设计”课程是电子信息学科中最重要的基础和核心,是数字技术方面的入门课和必修课。我校采用康华光主编的《电子技术基础(数字部分)》作为主教材,课程内容、教学方法和实验方面都颇具特色,但在与后续课程“微机原理与接口技术”的衔接方面还有进一步改进的空间。
“微机原理与接口技术”是电子信息类专业的一门必修专业基础课,一直以 8086/8088 十六位微处理器为主组织教学内容,但相应的接口芯片早已退出应用舞台,课程内容与现代计算机技术的发展水平和实际应用存在较大的脱节,让学生产生没有实用价值的错觉,因而学习的积极性不高。
嵌入式系统在我校电子信息、通信等专业开设了两门课程,一门是32学时理论课 “嵌入式系统原理与设计”(必修),另一门是与之配套的32学时限选课,以实验课的形式开设,内容涉及嵌入式Linux软件设计、ARM处理器及应用、MSP430 单片机及应用、Freescale 单片机及应用、8051系列单片机原理及应用、DSP处理器及应用、FPGA/SOC及应用等,规定每个学生必须选择其中一门。
理论课以大班形式上课,其目的是讲解嵌入式系统的共性,学习嵌入式系统软、硬件体系架构及接口设计原理,并了解嵌入式技术的发展趋势。
限选课为小班(30人)上课,在实验室以实验为主,侧重学习基于某个嵌入式系统平台进行应用系统设计和开发的能力。由于嵌入式系统涉及到知识较多,导致理论课内容比较宽泛,且有部分内容与微机原理课程重复,而实验课涉及到的平台较多,各个平台的开发环境、开发流程又不相同,学生普遍对理论课教学内容不太满意,认为它与实验课的结合不够紧密,实验课较为实用,但学时太少,刚刚开窍课程就结束了,没有真正掌握。
从上面教学现状看,我们在相关课程设置、教学内容和教学方法上存在一些缺陷,根据数字技术发展,为解决这些问题,构建适应新形势的课程内容和知识体系是非常必要的。
我们先后派出多人次参加国内相关教学研讨会,学习国内兄弟院校的改革措施与经验,还分析了多个美国一流大学(如麻省理工学院、加州大学伯克利分校、斯坦福大学等)EECS系本科生培养计划、课程体系与课程内容[1,2]。最后我们提出数字系统类课程的基本教学目标为:让学生熟悉数字逻辑电路和各种功能部件的分析与设计方法,掌握硬件描述语言和可编程逻辑器件的使用;建立微型计算机系统以及嵌入式系统整机概念,掌握微型计算机的基本组成原理及接口技术,掌握计算机软、硬件技术的基本知识和基本方法,掌握嵌入式系统的设计方法,初步具备开展嵌入式系统设计及开发的能力。改革的基本思路是:借鉴国内外相关学科的改革经验,注重经典与现代技术间的融合,调整现有课程内容,构建数字系统课程组及其公共实验平台,使组内各课程按照一定的关系有机联系起来。
2 课程内容与教学方法的改革
2.1 调整课程教学组织与课程名称
我们将“数字电路与逻辑设计”、“微机原理与接口技术”、“嵌入式系统设计”三门课程合并,组建数字系统课程组,从组织结构上明确该课程组的教师要负责这三门课程的统筹建设。并将原先的“数字电路与逻辑设计”课程更名为“数字系统I”,将“微机原理与接口技术” 课程更名为“数字系统II”,从课程体系上强调这两门课程之间的相互联系,以便统一规划相关课程的教学内容,同时要求部分骨干教师担纲主讲这些课程。
2.2 调整课程内容
一个数字系统的实现大致有四种方法:采用通用的集成逻辑器件实现、采用单片微处理器作为核心实现、采用可编程逻辑器件实现、设计功能完整的数字系统芯片。第一种是传统的方法,曾经得到广泛应用,目前仅用在较为简单电路的实现。第二种方法目前得到广泛应用,但相对后面两种方法其工作速度较低。第三种方法设计的系统体积小、功耗低、可靠性高,适用于实时性要求较高的数字系统设计。第四种方法是将一个完整的系统集成在一个芯片上,称为芯片系统,目前发展迅速。我们以数字系统的实现方法为主线对教学内容进行调整。
“数字系统I”课程(56学时)。其基本内容和学时分配如下:数制与码制(4学时),逻辑代数基础(4学时),组合逻辑电路(8学时),锁存器与触发器(3学时),时序逻辑电路(12学时),Verilog HDL (6学时),逻辑门电路(4学时),半导体存储器和可编程逻辑器件(6学时),D/A和A/D转换(3学时)以及数字系统设计基础(6学时)。与传统“数字电路与逻辑设计”课程相比,主要变化是:融入Verilog HDL和可编程逻辑器件、加强有限状态机、数字系统设计等内容,删减中小规模规模集成电路芯片、脉冲波形产生与整形电路的介绍,弱化JK触发器、重点介绍D触发器。
“数字系统II”课程改革力度较大,我们认为微机系统和嵌入式系统都是以“CPU为核心+各种接口和外设”构成的数字系统,从原理上弄懂计算机的组成和工作原理,比学习某一型号的微机系统更重要。所以,理论课内容应该突出计算机原理,从计算机组成的角度介绍计算机各功能部件的逻辑组成、工作机制,让学生自己使用FPGA+Verilog HDL技术设计一个单周期的类MIPS处理器[3,4]。接口部分用32位软核Microblaze+IP接口模块构成简单的嵌入式系统,为后续“嵌入式系统”课程的学习打下一定基础。根据这一思路,“数字系统II”课程(48学时)的教学内容和学时分配如下:计算机基础(5学时),MIPS汇编语言(6学时),微处理器(6学时),存储器系统(6学时),总线技术(4学时),接口技术基础(8学时),中断技术(7学时),DMA 技术和人机接口技术(6学时)。与传统“微机原理与接口技术”课程相比,放弃以 8086/8088微处理器及其接口芯片组织教学内容的模式,结合C语言学习汇编语言指令,并以“C 语言→MIPS 汇编→MIPS机器代码→单周期MIPS处理器设计→接口技术”为主线组织内容,增加了简单微处理器、简单嵌入式计算机系统的设计,各个章节都不再拘泥于某个具体的芯片介绍,以便帮助学生建立单处理器计算机系统的整机概念[5]。
2.3 调整课程实验内容
我们以FPGA开发平台为主构建数字系统课程组的实验内容,开发平台为Basys 2和Nexys4,开发软件采用Xilinx公司提供的ISE、EDK、SDK等,支持32位微处理器软核(MicroBlaze)及其嵌入式系统开发,可以进行不同层次的实验:功能部件→CPU+存储器→软核处理器+存储器+总线+I/O→软核处理器系统+OS等应用。
实验课采用独立设课、开放式教学模式,除了计划学时外,还会安排部分课外学时。“数字系统I实验”课程的具体实验内容如表1所示。
选做实验为有兴趣的学生提供了选择的余地。在数字电路实验开始阶段,让学生进行传统的硬件电路实验,熟悉常用电子仪器、集成电路芯片的使用,以及电路的安装、调试和功能测试。接着过渡到用Verilog HDL对逻辑电路进行设计描述和仿真,再将仿真通过的电路下载到FPGA实验板上,进行实际测试与验证。这种安排既能让大学二年级的学生学到本学科领域的新知识、新技术,开拓视野,同时又为学生自主学习、主动实践创造了有利条件,能激发学生的求知欲望和学习兴趣,从而能够提高实验教学质量。
表1 “数字系统I实验”教学内容(计划学时:32)
“数字系统II实验”课程的实验内容如表2所示。学生通过自己设计一个简单的类MIPS CPU,能够更加深刻地理解CPU的组成及工作原理,通过使用32位软核(Microblaze)以及外围的IP核构成简单的嵌入式系统,能够具备初步开发能力。
表2 “数字系统II实验”教学内容(计划学时:32)
(罗 杰等文)
2.4 调整嵌入式系统课程的教学方法
我们将原来的“嵌入式系统原理与设计”的理论课(必修)和实验课(选修)合并,采用理论与实验相结合的方法授课,总共48学时(16学时理论、32学时实验)。依据不同的嵌入式系统平台,开设多门选修课程,学生选择其中一门学习,以便深入了解某一种嵌入式微处理器的组成原理与应用开发技术。通过基本实验与综合项目实验,让学生熟悉该嵌入式系统应用程序的编写、调试技术,学习API函数的使用及I/O接口部件的驱动程序编写等,使学生初步具备独立设计并实现嵌入式系统的能力。
3 结语
本文提出的数字系统类课程教学改革方案从2012年开始进行教学实践,先在提高班、卓越工程师班试点,现在已推广到我校电子信息与通信工程学院的16个班,收到了较为明显的教学效果。由于在课程内容和教学方法上做了一系列改革,课程理论教学与实践训练结合更为紧密,学生对数字系统类课程的兴趣明显提高,促进了学生对微机原理与嵌入式系统基本理论、方法的理解和掌握,提高了该类课程的教学效率和效果。
[1] 张林,程文青,罗杰,左冬红,闵玉堂.美国高校电气工程专业本科培养计划浅析[J].南京: 电气电子教学学报,2014年6月第36卷第3期,6~11
[2] 康华光.国际电气工程本科课程设置与电子技术基础课程改革[G]//电工电子课程报告论坛组委会.电工电子课程报告论坛论文集2005,北京:高等教育出版社,2005年
[3] 左冬红,罗杰,张林.“微处理器与接口技术”教学改革实践[J].南京: 电气电子教学学报,2013 年10 月第35 卷第5 期,39 ~ 41
[4] 左冬红,张林.“微机原理与接口技术”教学内容改革探讨[J].南京: 电气电子教学学报,2012 年6 月第34 卷第3 期,31 ~ 33
[5] 左冬红编著.计算机组成原理与接口技术--基于MIPS架构[M].北京:清华大学出版社,2014
Teaching Reform on Digital Circuit and Microcomputer Principle Courses
LUO Jie,ZUO Dong-hong,ZHANG Lin
(SchoolofElectronicInformationandCommunications,HuazhongUniversityofScienceandTechnology,Wuhan430074,China)
According to the development of digital system design methodology and implementation technology, we propose that digital circuit and microcomputer principle courses should be unified into the common framework of digital system. The hardware description language and a programmable logic device should be added to the basic teaching contents of digital circuit course. We use “C language → MIPS assembler → single cycle MIPS processor design → Interface technology” as the main line to organize the contents of microcomputer principle. Meanwhile, we build a FPGA-based digital system experimental platform so that it can be combined with a subsequent embedded systems courses. After three years′ practice, we achieved good results.
digital system; microprocessor principle; teaching reform
2015-11-02;
2016-04-08 基金项目:湖北省教改研究项目-微处理器与接口技术课程群的建设与研究(编号:2013061)
罗 杰(1964-),男,副教授,主要从事电子技术、微机原理等方面的教学和科研工作,E-mail:Luojiewuhan@hust.edu.cn
TN79,TP36
A
1008-0686(2016)05-0030-04