在信息爆炸时代,各类单片机和微机系统已经深入到生产和生活中,为我们提供了极大的便利,可以说人们的生活已经离不开微机技术。“微机原理与接口技术”是高等学校理工科非计算机专业学生必修的一门计算机基础课程,也是提供微型计算机应用与开发能力的重要核心课程,课程的学习目标是为了让学生建立微机系统的基础知识体系和概念,从而能够具备自主学习目前高速发展的日新月异的各类微机芯片及微机系统的基础知识,以及能够从事相关研究和应用的基本技能。
该课程主要学习微机系统的基本原理及其相关的接口电路知识,课程从微机系统的原理和设计方法上构建相关的基础知识体系,为培养专业人才提供理论基础。课程的内容以经典架构的微机处理器 8086及其接口电路为主要学习对象,以计算机最底层的汇编语言为编程工具,辅助对比学习目前常用微机芯片及其系统,深入讲解分析微机系统的工作原理和接口的设计方法。经典的8086 CPU架构简单,集成度低,需要辅助各种外围接口芯片,但也因此系统开放性强,具有满足教学开放设计和原理验证的原型机的优势。而目前流行的微机芯片,如STM32,由于其结构和功能复杂,集成度高,并且封装了各种接口芯片在其内部,使得内部电路结构并不对外开放,其主要是针对便于应用设计的,但在基础原理学习和验证微机教学中却不一定适合。8086 CPU虽然结构简单,但是其系统架构基本涵盖了微机系统最核心的基本工作原理和设计理念,以简单的微机系统结构再配合最底层的汇编语言进行工作原理和设计方法进行讲解,才能聚焦并真正从底层上学懂微机系统的原理,才能真正深入理解微机系统设计初衷,才能建立牢固的知识体系去学习和应用如今百花齐放的各种先进的微机系统。因此本课程侧重的知识点是微机系统的基本原理和设计思想,借助具有教学原型机特点的经典8086 CPU微机结构由浅入深的学习基础知识,从而具备相应的基础理论知识体系去学习和应用目前日新月异的各种先进微机芯片和系统。就课程本身不要求掌握8086 CPU和汇编语言的应用能力,而是以它们作为最好的工具,在最底层上剖析微机系统的工作原理。
通过课堂学习,了解微型计算机的发展概况、微型计算机的基本结构、微型计算机系统的组成结构以及微型计算机的应用,重点掌握80x86 CPU的工作原理和汇编编程控制方法,了解接口技术的基本概念,掌握微机系统中CPU与外设接口之间的信息交互技术,掌握各种数据传输的工作原理和特点,学会分析微机系统的工程技术问题。
通过课堂讲授,培养学生的微机系统的设计能力,在掌握微机原理与接口技术工作原理的基础上,掌握一般接口和典型接口芯片的电路的工作原理和设计方法,开发设计微机系统和硬件接口电路,编写微机系统底层的硬件驱动程序,深入理解微机系统的工作过程和设计方法。
理论课程:平时成绩(50%:线下25%+线上25%) + 期末考试成绩:50%
实验课程:平时成绩50% + 期末开放性实验设计50%
先修课程:C/C++语言程序设计,电路、模拟电子技术,数字电子技术
课程教材为:《微机原理与接口技术(第3版)》,洪永强主编,薛文东副主编,科学出版社出版,2017年
1、为什么要以 intel 8086 CPU微机系统为主要讲解对象,而不以C51单片机或STM32等目前流行的微机芯片?
答:首先,因为intel 8086 CPU结构简单,需要各种外围的接口芯片作为辅助,因此它相当于系统架构开放的教学原型机,非常适合用于教学中微机工作原理的理解和实验验证。而C51单片机或STM32将各种接口芯片集成到了芯片内部,无法针对性的进行原理的实验验证,因此不适合理论教学的学习,而更适合做应用开发;其次,intel 8086 CPU虽然结构简单,但是却是目前所有微机CPU的奠基,其组成的微机系统架构及其工作基本原理仍存在于目前更重先进的微机系统中,是学习和建立微机系统基础理论知识体系的最优选择。虽然功能简单,当五脏俱全,在有限的课时中更容易聚焦学习其中的基础知识。其次,如果采用目前更先进的x86 CPU去学习,因为了涉及太多的先进技术,在基础没学好的情况下,反而无法学得扎实。最后,在这门课中,8086 CPU只是作为学习微机系统结构和工作原理的工具,从而具备微机的知识体系去学习其它日系月异的单片机的应用,并不要求掌握8086 CPU的应用能力。
2、为什么要学习最接近机器语言的汇编编程语言?
答:汇编编程语言是最底层的编程语言,采用的是CPU指令集中的助记符作为编程语言,除了伪指令外,编写的每条指令都与CPU执行的机器码有一对一的关系。因此,我们写的基本每一条指令都能非常直接的、清晰的了解其与CPU指令取存、译码、标志位影响、存储器数据结构以及程序指令执行效率的差别等关系。本课程学习汇编语言并不要求具备汇编语言很强的编程能力,而是要求会用汇编编程语言去学习和理解CPU的工作原理就足够了。
3、如何学好本课程?
答:本课程的学习需要理论和实验同步进行,通过实验验证才能充分理解理论知识的内涵。另外,本课程侧重在基础理论知识的学习上,而要具体应用微机知识还需要再建立本课程知识理论体系的基础上去额外学习目前主流微机芯片的应用开发。