目前对接口技术课程内容的讨论很热烈,主要集中在两个方面:一是讲台式微机系统还是讲嵌入式微机系统的接口技术;二是讲单个分立式的接口芯片还是讲多个接口并与处理器集成在一起的接口模块。主张后者观点的主要理由是,实际应用中(指在计算机的控制应用领域中)后者比前者多,尤其是在当今“互联网+”、物联网以及设备智能化应用中,ARM、MCU有着明显的优势。
这一话题的讨论,涉及两个层面的问题,一是接口技术所依附的微处理器,是选基于X86处理器的台式微机,还是选基于ARM处理器的嵌入式微机;二是微机接口电路本身及其布局,即接口电路的配置方式是采用分立式接口芯片并放在CPU外部,构成外置式接口电路,还是采用接口模块的形式与CPU集成在一块,形成内置式接口电路。
本书以讲台式微机系统的外置式接口为主。为什么要这样安排?首先,台式微机通用性强,体系结构完整,作为教材具有典型性,而嵌入式微机多为量身定制,典型性、代表性不够,作为教材不好选型。其次,台式微机与嵌入式微机配置的接口所起的作用与基本工作原理相同,只是接口电路的布局与组织结构不尽相同,各有所长。一般来说,前者接口电路的功能完整、全面,具有通用性,因而结构复杂,常常做成单独分立的接口芯片,布局在CPU外部,通过总线与CPU进行连接,形成外置式接口电路。后者接口电路功能单一,针对性强,因而结构简单,往往以接口模块形式与CPU放在一起,形成内置式接口电路,无需通过总线在外部进行连接,简化了芯片之间的连线,系统整体结构紧凑。所以,从系统结构上来看,台式微机采用外置式接口,嵌入式微机采用内置式接口,可以说是各得其所。但从教学的观点来看,采用分立式接口芯片,构成外置式接口电路,然后通过系统总线与接口连接,使接口与系统的边界清晰,而内置式接口模糊了接口与系统总线的边界,不利于对接口电路工作原理的理解。为此,在本书中,讲接口设计时,增加了接口电路设计解决方案的分析,以加强对接口电路配置方式问题的考虑。
对在教材中要不要讲那么多接口芯片,也有不同的看法,对此,还是来简单地回顾接口芯片的来历与作用。在早期的计算机系统中并没有设置独立的接口电路,对外设的控制与管理完全由CPU直接操作。随着微机技术的发展,其应用越来越广泛,外设门类、品种大大增加,且性能各异,操作复杂,CPU再也无力直接操作如此庞杂的外部设备,需要在外部设置支持电路来协助CPU处理外设的问题,从而导致了接口的出现,有了接口也就有了实现接口功能的接口芯片,所以讲接口技术就回避不了接口芯片。问题是如何讲,为此本书提出接口芯片的编程模型方法,其基本思路是,分析一个接口芯片,不论它是简单还是复杂,主要注重其内部寄存器编程特性——寄存器格式、寄存器的端口地址以及装入寄存器的信息,而不深究芯片的逻辑结构,这样既降低了学习硬件的难度,又不失对芯片的应用。
从接口技术应用角度来看,做原创性开发与做二次应用设计所涉及的接口技术问题是不同的。为此,本书提出接口分层次的概念,把接口分为两个层次:上层设备接口和底层总线接口——总线桥。上层设备接口是面向设备的,因此也称设备接口,包括用户总线与设备之间的接口和用户应用程序。底层总线接口是面向总线的,也称总线接口,包括用户总线与PCI总线之间的总线桥和设备驱动程序,两者形成一个完整的接口。一般用户在已有的平台上进行接口应用设计,只做上层接口(因为底层接口已经由平台供应商给做好了),若要开发新设备的接口,则还需要进行总线桥和设备驱动程序设计。显然,开发底层接口的难度与复杂度比上层接口要高得多,由于篇幅原因,本书不展开讨论,可参见文献[7]~[11],[23],[24]。
按接口技术的层次,本书只讲了上层接口,且以接口技术基本原理与接口设计方法为主,因为读者若真正掌握了这些接口技术基本知识,能举一反三,在实际应用中,遇到更复杂的接口问题就会知道如何下手了。在校学生作为初学者,学习一门课程时,还是应从基本的知识开始,逐步深入为宜。例如第5章例5.1和例5.2中断技术举例时,只举了用按键申请中断的例子,设备虽然简单,但可以从中领会到可屏蔽中断的全过程以及学习编写中断服务程序的方法,突出了中断技术知识点的核心。然后到第9章A/D、D/A转换器接口中,采用中断方式的数据采集的例9.2举例时又把中断技术的应用提升了一些,进一步加深对中断技术的认识。这种以基本原理与方法为牵引,循序渐进、逐步深入的安排,可能更易被读者接受。
微机接口技术是一门实践性很强的课程,除了课堂理论学习之外,还需要强有力的实践性环节与之配合。对于接口技术课程,如果只有理论知识学习,而无实验实践,其学习效果与收获会大打折扣。为此,我们编写了实验教材,研制并推出了“微机接口与汇编语言实验平台”,适于配合课堂教学实验和课程设计、毕业设计、实习和实际动手能力的实训等多种实践环节。实验系统和本书的内容紧密配合,相互补充,书中例举的接口实例,可以通过实验平台进行实际操作和实验,真正做到课堂原理讲授和实践环节一脉相承。
本书共13章,其中第12章无线通信接口和第13章基于FPGA的接口电路设计是新增加的教学内容,其余各章均在原有教学内容的基础上进行了大幅度修改和补充,尤其是在本书编写的思路和内容的组织方面有新的提升,以期为读者提供一本(对读者)可读性好、(对教师)可操作性强、内容基本、方法具体、应用可鉴的微机接口技术教材。
本书由刘乐善、陈进才主编,周可主审。其中,卢萍、陈进才编写第13章,李畅编写了第11章和第12章,其余章节由刘乐善编写。全书由刘乐善统稿。本书的出版得到了华中科技大学计算机科学与技术学院大力支持,在此表示衷心的谢意。同时要特别感谢参考文献的作者,他们提供了丰富多彩的技术文献。
由于计算机技术发展神速,加之编者水平有限,书中难免存在不足之处与错误,诚挚希望读者赐正,不胜感激。
我要评论