前言:我们精心挑选了数篇优质计算机硬件的基本部分文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
关键词:计算机硬件技术基础;教学改革;教材建设;教材分析
随着计算机硬件技术的发展和普及,大学生接触到的计算机硬件设备无论从种类还是功能都比之前有更多的样式,并具有更快的发展趋势。计算机硬件有关产品已经成为人们日常生活中必不可少的生活用品,具有明显的日常化、集成化、工具化的发展趋势。在计算机硬件新的发展阶段,让学生们掌握基本的计算机硬件原理,熟悉各类硬件接口技术,懂得计算机硬件产品的基本运行方式,是各学科各专业教学体系建设中重要的一个教学和实践环节。
计算机硬件技术基础课程是普通高等学校理工科专业的一门重要的计算机技术公共基础课程,也适合非理工科的其他专业学生选修。该课程是学生学习和掌握计算机硬件基础知识、了解计算机硬件发展、熟悉硬件原理及接口技术的主要课程。
1课程现状和问题分析
2006年,教育部高教司将微型计算机原理和微机接口技术等课程精简整合为计算机硬件技术基础,并明确提出了该课程是针对大学非计算机专业的理工类本科生设置的6门典型核心课程之一。
2009年,教育部高等学校计算机基础课程教学指导委员会将“微机原理与接口技术”确定为计算机基础教学的核心课程之一。该课程建议面向电类专业授课70学时,实验20学时;面向非电类专业授课48学时,实验10学时。[1]
课程名称及学时上的变化,一方面显示教学指导委员会对计算机硬件类课程的重视,同时也反映出在大学课堂上如何引入计算机硬件公共基础课程还存在争议。事实上,计算机硬件类课程在实际实施中存在很多实际困难和问题,导致全国大多数高等学校没有开设此类计算机基础课程,部分开设微机原理与接口技术课程的学校往往由非计算机类专业教师开设并讲授,不归属于计算机基础教学范畴。主要有以下三方面原因。
1) 课程定位不清晰,学时很难落实。计算机硬件技术基础课程如果作为计算机技术基础课程,应该主要放在大二,兼顾大三授课,面向没有数字电子基础的学生,作为选修课,以32学时为宜。然而,计算机基础课程教学指导委员会规划的微机原理与接口技术主要面向大三、甚至是大四学生开设,学时数量超过60,甚至在90,还需要数字电子方面的先导课,很多高校在学时、先导课等角度都无法将该课程编排进教学大纲。
2) 现有实验条件落后,学生难有兴趣,硬件投入较大。传统授课中,计算机硬件技术基础所安排实验需要借助定制的实验箱完成实验[2],而实验箱的投入成本较高,新实验开发受限,使用效率较低,教师和学校往往都没有热情开设该课程。另外一些课程仅以汇编语言或单片机技术作为实验内容,技术广度不足,仅适合小部分特色专业。
3) 教学内容落后,教材急需建设。无论是计算机硬件技术基础还是微机原理与接口技术,讲授内容仍然以计算机专业的80x86、汇编语言、可编程接口芯片等内容为主,没有结合计算机硬件近10年来新技术和新产品的发展。由于课程面向非计算机专业学生,这种专业性很强的内容很难符合学生们的学习预期。纵观5年内新出版的相关教材,所讲授内容的绝大部分与10年前(2000年左右)教材的教学内容一致,教材改革和建设需求迫切。
本文从面向大二兼顾大三的计算机公共基础课角度出发,全面分析整理了2005年后出版的《计算机硬件技术基础》相关教材的教学内容和实验内容,客观还原已出版教材现状,寻找教材建设的薄弱环节和问题,从而为进一步教材建设理清思路。同时,本文结合北京理工大学的教学改革情况,给出了进一步加强教材建设的思路和方法,希望能够为计算机硬件类公共课更为广泛的进入大学课堂提供参考建议。
2教材情况概述
为了全面还原计算机硬件技术基础课程教材建设情况,我们对2005年之后出版的相关教材进行了汇总,合计34本,如表1所示。
从表1可以看出,34本教材来自于13个出版社,其中,正式本科教材26本,教学实验指导书等教辅类教材6本(本文后面使用表示表1中第N本教材),高职高专教材2本。后面,我们将主要对本科和高职高专共28本教材进行分析。
3教材分析与问题汇总
3.1教材组织和定位分析
课程教材定位指教材的受众面,我们根据教材介绍中作者对教材的定位说明分成四类:电学为主的理工类专业、非电学为主的理工类专业、非理工类专业、各学科专业(内容难度偏低,适用于所有学科开展教学)。其中存在一本教材划分到多个类别的情况。
表1中教材(含本科和高职高专教材)共28本,根据上述划分,各教材定位如表2所示,其中,高职高专教材由于教学内容较为实用,被划分到各学科专业类别中。
根据教材的不同定位,图1和图2分别给出了教材章节数、页数、实验数的统计值。
从这两个图中可以看出,针对电学为主的理工科类专业(编号为A)的计算机硬件技术基础教材页数最多,章节最多,实验最少(数量为0)。可以看出,目前这类教材主要以理论讲授为主,定位中缺少实验内容,内容覆盖面广泛但缺乏实践性。实际中,这类课程是从“微机原理”精简而来,内容变化不大。
针对非电学为主理工类专业(编号为B)的教材章节最少,平均实验数为1。可以看出,这类教材的建设思路是讲授基本的计算机硬件知识,简单的开展少量实验。实际中,这类专业往往在大三、大四会讲授“嵌入式系统开发”、“单片机”等硬件类相关课程,为此,针对大二为主的计算机硬件技术基础类教材在内容上比较基础并为后续课程有所保留。
对于非理工类和各学科专业的教材,章节数量相对较多,实验数量也比之前有所增加。可以看出,这类教材的建设思路是使学生掌握较为全面的硬件知识,并有一定的动手训练。实际中,非理工类专业在本科阶段最多能够学习一门计算机硬件技术相关类课程,为此,教材建设思路反映了全面性和实用性。
综合上述分析,可以看出,目前市面上已有的《计算机硬件技术基础》相关教材主要针对四类不同的受众学生,教材组织上偏重于内容讲解(尤其是针对理工科学生的教材),总体建设思路还停留在讲授计算机原理的阶段,无法体现当今计算机硬件日常化、集成化、工具化的发展趋势。突出问题是教材配套实验很少,实践性差。
3.2教材实验分析
表1中28本教材和6本实验指导书一共记录了109个实验。根据各实验特点,我们将所有实验分为四类:实验箱实验、芯片实验、汇编语言实验和PC机实验。各分类描述如下:
实验箱实验:指依托于特定实验箱的实验,针对该课程的实验箱往往是从其他课程的实验箱中裁减下来的,种类较多且良莠不齐,没有公认的标准;
芯片实验:指基于单片机或者接口芯片的实验,包括:8051系列单片机、计数器芯片8253、定时器芯片8254、并口芯片8255A、中断芯片8259A、DMA控制器芯片8237A等。这类实验专业性强,应用性差,适合特定专业或者大三以上的学生;
汇编语言实验:指汇编语言程序设计实验,编程训练不是该课程的主要目的,这类实验尽管能够让学生对计算机硬件有一定了解,但程度有限;
PC机实验:基于PC机的实验,包括:model安装、存储器测试等。目前,这部分实验内容受到学生喜爱,可以锻炼实际能力,易于推广,但如何让学生了解到CPU、存储器等核心部件内部的工作原理,需要创新性设计。
图3给出了109个实验在组织结构、运算控制器、存储器、IO和其他等6个方面的统计。从图中可以看出,大部分实验都集中在IO方面,反映出这部分实验内容很重要,也是教材的主要内容。相比较而言,实验箱类和PC机实验能够覆盖到计算机硬件的各个部分,而芯片实验主要针对IO,缺少对运算控制器、存储器等其它部件的覆盖,汇编语言实验主要针对运算控制器。
图3教材中实验的分类
基于以上分析,针对计算机硬件技术基础课程,汇编语言实验和芯片实验数量较多但比较重视接口,无法让学生对计算机各组成部分有更深入的理解。实验箱实验针对性很强,但前期投入大,灵活性不强。我们认为,随着PC机的广泛应用(学生们几乎人手一台PC机),基于PC机的创新性实验是该课程的发展方向,同时,这类实验还能较好的引导学生在课余时间完成实验,并激发学习兴趣。
3.3教材内容分析
对于教材内容,我们主要分析和汇总讲述的重点知识点,还原现有教材的主要内容组织。全部教材为28本,其中4本(、、、)没能找到原书,为此没有统计在内。表3给出了24本教材中知识点的排序。
从表3可以看出,所有教材都有存储系统内容的讲授,大部分教材(19本)都包括汇编语言,18本包括80x86,半数以上教材都讲授了8259A和8255A等内容。图4给出了这些内容在原书中平均的页数,可以看出,汇编语言、80x86、单片机等内容都超过了25页,在教材中所占比重很大。此外,8259A和8255A等芯片的讲授内容也在10页以上,成为某些教材的重点授课内容。
纵观2005年至今出版的全部相关教材,《计算机
硬件技术基础》教材还是以《微机原理与接口技术》、《汇编语言》等课程的内容简化为主,仍然以很大的比重讲授80x86、汇编语言、单片机等内容。这些内容对于某些专业十分必要,但对于面向非计算机专业的计算机公共基础课程来说,这些内容相对陈旧,而且无法与计算机硬件的最新发展相结合。
教材具有教学的引导作用,在教材建设上,这种内容组织方式的落后需要引起重视。
4教材建设建议
4.1教材定位建设
我们认为,面向计算机公共基础课程,教材名称确定为《计算机硬件技术基础》比较合适,表明教材内容是计算机硬件的基础内容,以全面了解计算机硬件知识为主,掌握计算机硬件的基本概念和原理。
教材应结合计算机公共基础课程的实际情况,以32学时(含6~10实验学时)为宜,适度扩展到54学时,实验学时扩展到12学时(实验学时占总学时的25%)。这种学时设计有利于各学校将该课程以校公选课、通识课、实验课等形式安排到教学大纲中。
针对大二学生的教材,前导课程为计算机基础(或者大学计算机基础)等计算机基础类公共课程,不需要学习数字电子等课程。教材内容适度增加相关的数字电子知识。
教材应该充分利用该课程特点,以增强学生的实践兴趣为根本,通过实践环节使学生们主动学习教学内容。为此,在教材设计中,应该以实验建设为导向,注重让学生们理解计算机硬件的基本工作原理,为学生们进一步理解其他硬件技术和实践硬件设计打好坚实基础。
过去十几年来,在计算机硬件相关课程讲解过程中,教师们主要关心接口技术,并引导学生们在该方向进行实验。随着计算机硬件种类、功能和应用程度的增加,我们认为,学生们应该综合了解计算机硬件组成,理解各部分的工作原理,而不是侧重某一方面。使学生在课程学习和实验实践后能够分析新技术和新方法在整个计算机硬件发展中的作用和价值。
4.2教材实验建设
《计算机硬件技术基础》教材应该更加重视实验建设,使学生能够在实践中理解计算机硬件的基本概念。[3]为此,我们建议教材中的实验能够覆盖计算机硬件结构的各个领域,并且能够有一定趣味性,以了解基本的硬件原理为主。
与此同时,教材中的实验应该能够与学生们的实际生活结合起来,设计创新实验,将数字消费类电子产品(MP3、手机等)、互联网、物联网、蓝牙、PC外设接口等融入计算机硬件实验的设计,引导学生兴趣,同时适应计算机硬件技术的发展,使得学生通过教材学习能够掌握对计算机硬件的正确认识,并解决一些基本实际问题。
在这里,我们建议将实验分为:基础实验和提高实验两类,以适合不同专业的学生。经过北京理工大学2010年的教学反馈,表4中的实验得到了学生们的欢迎。
在教材建设过程中,考虑到各院校建设计算机硬件实验室的实际情况,进一步结合学生兴趣,我们基于PC机和少量配件设计了一些候选实验。初步的教学实践表明,这种实验设计完全能够创新性的激发学生兴趣,使学生掌握更为实际的计算机硬件知识,并通过实践理解计算机硬件基本原理。
候选实验包括三类:测试类、开发类和操作类。例如:存储系统性能测试(测试类)、CPU和GPU性能测试(测试类)、BIOS定制刷新(开发类)、串口短信收发(开发类)、并口液晶点阵控制(开发类)、基于PSOC的物联网结点(开发类)、计算机认知和组装(操作类)等。
4.3教材内容建设
在教材内容建设上,我们认为《计算机硬件技术基础》教材应该全面讲解各类计算机硬件原理,以理解计算机硬件部件功能为主,注重理解基本概念和基本运行规律,并结合实际硬件器件分析,以不变的理论应对万变的计算机硬件产品。
为此,教学内容 以“基本概念+基本部件”方式组织,例如:存储系统与存储器,其中,存储系统是基本概念,理解起来有一些抽象,需要课堂讲授;而存储器(内存等)则是基本部件,学生们平时接触较多,通过适当的实践教学,学生们不仅可以很快认识硬盘、Flash存储器、光存储器等设备,还可以通过测试类实验了解各设备的工作速度和基本模式,易于将存储系统和实际硬件有机的关联起来,达到较好的教学效果。
5结语
计算机硬件技术基础课程建设是近年来计算机公共基础课建设中面临的一个重要的难点问题,《计算机硬件技术基础》教材更是教改所面临的最大问题。如何合理定位该教材,并有效地选取适合高等院校开展该课程的内容是我们的进一步工作。在回顾2005年后出版的34本教材的基础上,我们验证了该课程和教材建设中存在的一些具体问题,并给出了解决问题的一些建议。我们将在2011~2012年度北京理工大学的教学实践中检验教材建设的初步效果。
参考文献:
[1] 教育部高等学校计算机基础课程教学指导委员会. 高等学校计算机基础核心课程教学实施方案[M]. 北京:高等教育出版社,2009: 137-183.
[2] 邹逢兴. 关于创新计算机硬件技术基础课程教学的实践和思考[J]. 计算机教育,2004(2):81.
[3] 嵩天,李凤霞. 计算机硬件技术基础课程实验的改革与实践[J]. 计算机教育,2010(10):65-68.
Analysis and Suggestions to Textbooks for Computer Hardware Fundamentals
SONG Tian, LI Fengxia, SONG Dandan
(School of Computer Science, Beijing Institute of Technology, Beijing 100081, China)
关键词:AS3.0;交互;事件监听;MouseEvent
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)09-0126-03
Abstract: This paper is presented in the teaching of computer basic courses, some shortcomings of the teaching content of computer hardware, puts on the teaching mode of interactive courseware, and focuses on how to develop a computer hardware installation of the courseware.
Key words: AS3.0; Interactive; Event listener; MouseEvent
1 开发背景
在计算机公共课教学中,计算机硬件的教学内容是该课程的一个重要组成。但在教学中一般的过程是介绍硬件系统的组成、工作原理、各个硬件参数等。学生几乎没有对实际硬件接触乃至组装的机会。如果没有实际的接触和组装,这部分的教学效果会大打折扣,笔者根据自己的教学实际需求,利用FLASH CS5.5 AS3.0及Photoshop设计和开发了一款适合计算机硬件教学的交互式课件。
2 课件基本模块设计
本课件根据教学实际需求包含硬件系统工作原理、具体硬件介绍、安装演示、仿真安装练习和测试习题五个部分
工作原理介绍功能:利用动画演示计算机对数据加工处理的基本过程。分为输入、存储、运算和输出4个环节。
主要硬件介绍功能:利用动画演示每个硬件在计算机中的位置,物理外形、主要参数等
安装演示功能:利用教学录像演示计算机硬件的整个安装流程,先介绍硬件实物然后进入具体安装,整个过程有配音和字幕。
模拟仿真安装:利用交互式动画建立一个模拟仿真的安装环境,使用者通过拖放式的游戏进行硬件的模拟安装。
习题练习功能:利用交互功能创建单项选择练习题环境,使用者可以通过练习检验自己所学知识的掌握情况。
3 主界面搭建
主界面是一个导航界面,通过主界面可以跳转到前面所述的各个功能模块。主界面建立在技术上主要是利用图形绘制界面,添加相应按钮来进行跳转控制。跳转控制主要通过编写按钮的CLICK事件监听程序来实现。界面的基本外观如图1所示。
4 各个功能实现
1)工作原理介绍功能实现
首先建立独立场景,在本场景下导入相关基本素材。整个工作原理介绍为一个完整的动画自动演示过程,以一个显示二进制数的元件模拟一个被加工处理的数据,利用带有箭头的线段作为控制线、数据线和地址线的信号变化和方向变化。在控制线动画的作用下产生输入动作,数据元件从输入设备端进入通过数据线进入内存,内存中一个带有地址编号的单元出现该数据表示一个存储动作。在通过控制线动画模拟发出运算指令向内存取数据,内存中数据元件进入CPU,随后进行运算操作。控制线再发出存放数据指令将运算后的数据存入内存中。控制线发出输出指令,数据通过数据线传递至输出设备,整个动画演示结束。本部分的功能实现首先要清楚了解计算机的基本工作原理,然后在技术实现上能够更形象描述出每个动作变化。对每个环节上动画之间顺序进行正确编排,本部分基本不需要代码编写即可完成。
2)硬件演示实现
硬件演示的目标是告诉学习者每个硬件在计算机中所处位置,物理外观如何以及主要参数意义。因此本模块采用了二级导航,用户选择不同硬件按钮后播放不同的动画内容,如单击“CPU”按钮时,首先显示CPU在计算机中的位置;然后弹出物理外观图;同时介绍物理外观下的各个部分;最后放大CPU背面显示主要参数。其他硬件部分以此类推。
3)硬件系统安装演示实现
在这部分功能中主要是一个教学录像片。教学录像录制时,先介绍每个主要独立硬件,安装工具,最后是安装过程。在安装过程录制时有每一步骤的配音,安装步骤科学安排。首先是在主板上安装CPU、风扇、内存和显示卡;然后将主板固定于机箱,将机箱相关连线与主板连接;安装硬盘及光驱;封箱后连接键盘鼠标显示器等设备。
教学录像中的一些重要环节应该加入提示标记等符号,因此录制完成后再利用会声会影加以编辑。在相应的时段加入提示符号,提示字幕来为学习者更加详细的解释安装过程。
4)硬件安装仿真实现
该功能可以解决实际安装需要拆解机器,造成器件消耗的成本问题。安装仿真采用交互游戏的模式,学习者可以通过在模拟环境下的操作来进行安装的练习。
以主板硬件安装为例,首先需要完成素材准备。为了模拟该环境,将一个主板和主板上所有插接的原件拍摄成图片;利用Photoshop对图片中主板上的原件进行截取,保存为独立图片。该工作结束后,将得到主板及所插接硬件的整体图片,主板上插接的各个部件(如显卡、内存、CPU等)图片。第二部将上述图片导入Flash库中,在新建场景中,利用导入的图片创建主板元件及主板上插接部件相关的元件,将这些元件一一放入场景中,布局位置大概位置如图2所示,同时为各个元件实例进行命名。命名是为了在后续的程序代码中对这些元件进行引用。
在基本场景及元件建立完成后,核心工作是对指定的元件进行编码来完成模拟安装交互操作。以内存安装为例。首先场景右侧放置了内存的元件,实例名称为nc;在主板上内存位置放置了一个内存元件,实例名称为ncs;在主板内存相应位置制作一个与此位置图形一致的图形元件,实例名为nccz;在动作代码中将ncs设置为不可见,this.ncs.alpha=0。然后编写nc和nccz的监听代码。
Nc元件的代码主要是响应鼠标拖动,拖动中释放鼠标时检测其是否与nccz元件发生了hitTestObject事件;如果发生则令ncs可见,拖放结束,nc不可见;否则nc回到原来位置。具体代码如下:
function release_xk(event:MouseEvent)
{if (tnc.hitTestObject(nccz))
{this. nc.alpha = 0;
this.tnc.stopDrag();
this.ncs.alpha = 100;}
else
{tnc.y = 235.85;
tnc.x = 80.15;
nc.stopDrag();}}
function move_nc(event:MouseEvent)
{this.nc.startDrag();}
nc.addEventListener(MouseEvent.MOUSE_DOWN,move_nc);
tnc.addEventListener(MouseEvent.MOUSE_UP,release_xk);
测试时,拖动nc元件,如果nc元件正好被拖动至nccz上释放鼠标,则ncs控件会显示在内存应该所在位置;如果没有在nccz上释放鼠标,那么hitTestObject事件不会发生,则nc将回到原来位置显示,可以继续进行拖动操作。
5)单选练习功能实现
创建场景如图3所示,主要包含了4个复选按钮控件ca、cb、cc、cd,作为4个选项按钮,添加了3个按钮st、xt、pd,st切换到上一题;xt切换到下一题;pd判断答题结果。该功能的主要控制逻辑是当操作者做出选择并单击判断按钮后,根据选择的选项是否正确给出提示,提示方式是播放一个正确zq或错误cw的影片剪辑。
主要代码如下:
判断作答是否正确代码
Function pd1(pd:MouseEvent)
{if(ca.selected==0 &&cb.selected==1 &&cc.selected==0 &&cd.selected==0)
{right_mc.play();}
else{
false_mc.play();}}
pd.addEventListener(MouseEvent.CLICK,pd1);
试题之间切换代码
function xyt(e:MouseEvent)
{this.nextFrame();}
xt.addEventListener(MouseEvent.CLICK,xyt);
//跳转上一题;
function xyt(e:MouseEvent)
{this.prevFrame();}
xt.addEventListener(MouseEvent.CLICK,xyt);
5 测试应用
经过调试后,最后生成swf文件,在本学期的课堂教学中投入实际应用。在硬件教学中主要以该课件进行,学生对这种形式非常欢迎,课堂教学效果有了进一步改善。尤其是模拟安装练习和习题测试,由于是具有交互性的环境学生乐于反复尝试,这要最直接的结果就是对计算机硬件课程内容的良好掌握。
参考文献:
【关键词】计算机硬件设计;EDA技术;实践分析
前言
电子设计从手工设计逐步走向了自动化设计,它的发展以EDA技术的发展为主要标志。EDA技术以计算机为操作工具,融合了最新的应用电子技术、计算机技术和智能化技术的成果,并且将设计人员从繁重且重复的劳动中解脱出来,使得电子产品的设计效率提升了。
1EDA技术概述
1.1EDA技术的基本内容
在没有EDA技术的时代,计算机硬件的设计需要通过人工手动完成集成电路的设计、布线等工作。而随着集成线路复杂程度的增加,基于手工的设计方式已经无法满足工作需求。因而人们开始寻求一种更为高效的硬件设计方式。EDA技术的诞生,成功改变了这一情况。它以计算机为操作工具,让学生可以在软件平台上,通过软件化的设计方式来描述计算机硬件。由计算机代替人工完成逻辑编译、优化、布线、仿真等工作。整个过程是自动的,直到能够完成对既定芯片的适配编译、逻辑映射和编程下载等工作[1]。
1.2一般设计流程
它创新性的颠覆了传统电子产品的设计方式。将设计的顺序从由下至上翻转过来。这使得硬件设计者能够从更为宏观的角度去掌控产品的开发。包括设计的质量、成本、功能需求、研发周期等。在拥有比较全面的宏观分析后,从系统设计出发,进行顶层功能模块的解构和划分。并能够按照方框图系统级的次序逐级完成仿真纠错和验证。从而能够使设计问题更早的被凸显出来。当所有的仿真和验证确认无误后,再用逻辑综合优化工具的门级逻辑电路的网表来实现硬件的物理级呈现。通过该项技术的应用,将设计者的设计强度减轻,仅需要通过软件平台,就可以实现硬件的电路设计和功能仿真。整体的设计效率被大幅度提升。硬件设计流程如图1所示:
2基于EDA技术的计算机硬件设计的实践探究
本文以可编程器件开发工具MAX+PLUSⅡ为开发平台设计,它的运行速度快,界面统一,功能集中。同时该开发平台具备十分完整的可编程逻辑设计环境,能够完成从指标设计、输入、编辑综合处理、校验直至编程下载的EDA设计的全过程。设计者可以按工作流程选用工作模块。适用于多平台操作,是一种理想的开发平台。本部分就计算机的基本硬件之一通用异步收发传输器基于EDA技术的设计实现进行了简要的阐述。
2.1UART的基本介绍
通用异步收发器(UART),是计算机中不可缺少的组成部分,它是一种短距离串行传输接口。能够作为微机与下位机的通讯串口,来实现有效通讯。根据当前的计算机运行机制,需要进行数据的交换和传输。但是并行数据并不能够直接发送到调至解调器中,而必须要经过异步传输才能够解决。UART就是此过程的必要部件。它将信息有序的发送到调制解调器中,实现计算机的正常运转。
2.2硬件设计
在进行硬件设计时,考虑各项功能模块的调试工作,设置了三个按键输入来实现UART的复位、接收和发送数据功能的启动。整体硬件结构如图2所示。
2.3模块设计
(1)基本设计思路UART在工作中主要涉及两个过程,发生和接收。在设计时,考虑模块化的方式来进行设计。发生的过程即并行数据的准备阶段,UART按照既定的格式,将信号进行转换。在此过程中涉及到关键的时钟信号。需要通过波特率发生器来产生与本地系统同步的时钟信号。而接收的过程,就是在信号转换成RXD串行信号后,转换成调制解调器需要的并行数据信号。在整个进程中,由于本地时钟信号与UART的时钟信号会产生一定的延迟和误差。当这种误差产生持续性的积累时,会产生接收偏差。使得UARD的功能不能够被顺利的实现。因此,在进行设计时,需要采用一个远远高于波特率的本地时钟信号对输入信号RXD不断地采样,来保持工作过程中UARTDE接收和发生不会出现步调不一致。(2)奇偶校验位发生器模块设计奇偶校验是一种校验代码传输正确性的方法,以保证串行数据的准确性。在基于EDA技术进行UART奇偶校验位发生器设计需要考虑几个关键点。一是该模块能够执行奇偶校验规则,正确的选择数据。从而实现系统既定二进制数据与输入的串行数据校验位的合理比较。验证输入的正确性。二是该模块必须要满足计算机功能的持续拓展性。在计算机工作中,会产生不确定的并行校验位的增加。那么该模块应该能在后续定义的规则基础上进行校验位的添加。对已经设计完成的奇偶校验位发生器模块采用EDA的工具mod-elsim12.0进行功能的仿真,对仿真结果进行详细的分析,以确保所有期望的功能都已经实现,对于发生问题的地方及时进行修订。(3)波特率发生器模块设计此模块的主要功能就是能够根据时钟的频率和既定的波特率来计算出波特分频因子。分频因子就是分频数。对于波特率发生器的系数一般在现场可编程门阵列实现时基本上是固定的,但是当实现出现变化时,波特发生器的系数就要发生改变。在UART中采用的是专用的芯片,使得波特率的改变变得比较困难,需要加上相应的接口来实现波特率的变动。在使用硬件描述语言的parameter语句(VerilogHDL)或者Generic语句(VDHL)就可以实现UART专用芯片的波特率的改变。那么就不需要通过后续的接口添加来改变系数,也就减少了设计和调试的难度。该发生器的分频时钟与波特时钟的频率比设置为16:1.那么信号采样的准确性就会增高,使接收和发生保持在同一步调上[2]。(4)顶层模块设计UART顶层模块是硬件的综合模块。它涵盖硬件中全部接口定义。主要是为了接收和发生与其他模块的通讯和连接。若通用异步收发器的波特率为9600bit/s,分频因子则为9600*16*2。运用EDA仿真软件,在进行发送功能仿真时将能够得到相应的仿真结果。对该模块的仿真结果进行详细分析的时候可以发现,等待发送的数据在接触发生信号后,其串行信号发生了改变,由01010101001010101[3]。利用EDA技术进行UART的实际,能够实现利异步串行通信功能,同时可以利用EDA仿真工具就功能模块进行分别和整体的仿真校验,解决了计算机硬件设计问题发现晚的劣势,能够在设计的过程中及时调整设计方案。
3结束语
EDA技术是计算机硬件设计向软件化转变的重要标志,它为计算机硬件设计提供了全新的思路。这种设计方式使得计算机的硬件设计具备可视性、直观性,且可以在设计过程中进行实时的控制和调整,解决了复杂电路设计问题发现滞后的问题。
参考文献
[1]曲行柱.浅析EDA技术在计算机硬件设计中的应用[J].祖国,2016(21):288-288.
[2]徐迪.EDA技术在计算机硬件中的应用[J].数字技术与应用,2015(8):216-216.