以下为《一种新的计算机技术高级抽象方法》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
一种新的计算机技术高级抽象方法
摘要
计算机技术可以用一系列基于不同细节层次的模型来描述,例如半导体、晶体管、数字电路。这样的模型被设计成逐渐隐藏不相关的细节,同时提供足够的信息,以便用于通信、设计和文档编制。然而,计算机技术的发展导致了一种低成本、异构的模块化体系结构,很难用现有的方法来建模。本文提出了一种新的通用方法,在更高的抽象层次上对计算机技术进行建模。迄今为止的调查表明,该模型独立于建筑细节,因此可以适应技术的变化。这种新模型与当今使用的廉价、低成本的模块化体系结构更直接相关。此外,迄今为止的所有工作都强烈表明,它可以作为一个新的教学框架的基础,不仅是入门级的教学,而且是更先进的计算机技术。
关键词
计算机技术教育,建模,建构主义
1介绍
数字技术和建模提供了一种抽象,它独立于半导体开关的基本细节。这种组合或时序电路可以在不同的开关技术(例如TTL、CMOS、BICMOS等)中描述,而不必考虑其实现的复杂性。类似地,半导体开关的细节可以使用独立于量子力学基本细节的抽象来建模。因此,可以使用一系列基于不同细节层次的模型来描述计算机技术,例如半导体、晶体管、数字电路。这样的模型被设计成逐步隐藏,从而控制细节,同时提供足够的信息来用于通信、设计和文档。这与1991年的ACM/IEEE计算课程保持一致,在该课程中,抽象是计算机科学的一个反复出现的基本概念[1]。1991年的计算机课程定义了九个主题领域,其中包括建筑作为一系列主题的先决条件。然而,计算机的设计和制造在过去的十年里发生了迅速的变化。装配级制造、专用集成电路和表面贴装技术都导致了单位价格的不断下降,从而产生了具有标准体系结构和模块化结构的低成本PC。Maj在全州范围内进行的一项调查发现,计算机技术现在被当作一个模块化系统来管理,它需要的技能不同于传统计算机科学课程所提供的技能[14]。根据这项调查,我们为进入计算机和网络支持领域的计算机科学毕业生所期望的技能类型制定了一套指导方针。使用制定的标准,随机选择了10名伊迪丝考恩大学(ECU)计算机科学专业的大四学生,从大约100名应届毕业生中进行了访谈。ECU的计算机科学学位是澳大利亚计算机学会(ACS)认可的最高级别的一级学位。ACS课程与ACM/ieee1991计算课程相当。Maj说,没有一个受访的学生具备潜在雇主所期望的技能[14]。对五名受雇于计算机和网络支持部门的ECU毕业生进行的采访清楚地表明,他们在很大程度上是自学完成工作所需的许多技能的。初步调查表明,西澳大利亚其他大学的计算机科学毕业生也有类似情况。最初的ECU学生问卷于1993年首次使用,1999年也在英国的两所大学进行。这两所大学都拥有英国计算机学会(BCS)认可的成熟学位课程。根据Maj[15],获得的结果与最初的调查结果具有直接的可比性。此外,其他学科的学生对计算机技术教学的潜在需求还有相当大的未满足[13]。其他学科的学生希望更好地了解和理解计算机技术,但没有看到当前课程的相关性。根据1991年的ACM/IEEE-CS报告,“学生期望的结果应该推动课程规划”。值得注意的是,克莱门茨评论道,“因此,学术界必须不断审查和更新课程,提高抽象的水平”[5]。传统的计算机技术课程可能无法满足的需求。
2计算
课程专业机构负责各种奖项的认证和课程内容的界定。1991年的ACM/IEE-CS计算课程定义了九个学科领域,包括体系结构。不同的国家有自己的专业机构。在20世纪70年代和80年代,英国计算机学会(BCS)提供了两部分课程:第一部分相当于国家高级文凭,第二部分相当于荣誉学位。这一课程在国际范围内提供,考试中心遍布世界各地。第一部分考试包括一个选项,“计算机技术基础”。第二部分在此基础上增加了一个选项“数字计算机组织、设计和工程”。本单元的主题之一“集成电路设计和制造”要求详细了解以下技术:MOS器件:逆变器、NAND和NOR逻辑、缩放、棒形图设计规则、硅片制造对“数字计算机组织、设计与工程”这一主题的所有第二部分试卷的初步分析表明,在过去二十年中,这一课程在考生所期望的技术细节方面已逐步发生了变化。新的BCS第二部分课程现在被称为专业研究生文凭,唯一的硬件单元是“分布式和并行系统”,它不要求考生对“集成电路设计和制造”主题先前要求的技术细节有任何了解。BCS第一部分已更名为文凭,并有一个单元称为“架构”,其中一节是数字逻辑(组合和时序电路)。BCS课程已经适应了计算机技术发展的变化。
3.教学
与计算机技术教学相关的问题并不新鲜。仿真已经被证明是一个非常有用的工具。Pilgrim[19]采用了另一种方法,即在课堂上设计一台非常小的计算机,学生们在实验室里使用中小型TTL集成电路进行实验。根据Parker和Drexel[17]的研究,模拟是一种首选的方法,但请注意,学生通常看不到“大局”。Coe和Williams[7]通过模拟解决了这个问题,进一步说明了提供合适的教学框架的困难。Barnett[2]认为标准的计算机体系结构对于入门课程来说太复杂了。由于设计和制造的变化,个人电脑现在是一种低成本的消费品。PC具有标准的、异构的体系结构和模块化的结构。然而,传统的计算机技术教育通常是基于数字技术、XX地图等,在PC机上进行这一级别的操作已不复存在。这一问题不仅由于技术的不断快速变化而加剧,而且由于需要向多媒体等多个学科的学生教授计算机技术。因此,作者试图找到一个替代方法来教授计算机技术入门。
4建构主义
在研究如何提高学生的学习之前,我们试图对学生如何学习和构建知识有更深入的理解。建构主义是当今学习的主流理论。据Ben Ari评论,“它可以提供一套新的和强大的概念来指导我们关于计算机科学教育的辩论。”。根据这一理论,学生有自己的认知结构,每一个都是学习过程的基础。计算机科学和多媒体专业的学生对电脑的理解非常不同。因此,我们试图找到一个由来自不同学科的学生持有的共同概念框架,作为可以建模的认知结构的基础。
5模型和建模
模型被用作沟通和控制细节的手段。图解模型应具有完整性、清晰性和一致性。一致性是通过使用正式规则来保证的,而清晰性则是通过只使用几个抽象符号来保证的。水平调整,即复杂系统可以逐步分解,提供了完整性。根据冷却[8],有两种主要的图表类型:高电平和低电平。高级图是面向任务的,显示了系统的总体结构及其主要子单元。这些图描述了设计的总体功能以及子系统和环境之间的交互。主要的重点是“系统做什么”,因此最终的设计是面向任务的。根据Cooling的说法,“好的高级图表简单明了,能够显示出系统的主要基本特征”。相比之下,低级图是面向解决方案的,必须能够处理相当多的细节。重点是“系统如何工作”。但是,所有模型都应该具有以下特性:图表化、自文档化、易于使用、控制细节并允许层次化自顶向下分解。计算机技术可以用符号布尔代数(NOR,NAND门)来建模。这些门可以使用固态电子开关或甚至气体电子器件(即热电子阀)来实现。在这个较低的层次上,固态开关的基本实现可以用与这个操作层次的工程师直接相关的模型来描述。逻辑门可以连接以创建组合电路和时序电路,因此功能单元,如只读存储器(ROM)等。这种功能单元也可以建模,但使用高级图。在这个更高的抽象层次上,底层的交换技术是不相关的。在更高的抽象层次上,计算机技术可以建模为可编程寄存器的集合。Dasgupta[9]建议计算机体系结构有三个层次的抽象层次。然而,如上所述,PC现在是一种低成本的消费品,具有标准的、异构的体系结构和模块化的结构。因此,需要一个与当前技术直接相关的更高级别的模型。其他高层次的模型,表达为形式主义,存在一个相关的数学框架和语言。硬件描述语言提供精确的建模符号,但是这种符号可能不适合计算机技术的一年级课程。
6PC——建构主义节点模型
我们建议将PC视为用于存储、查看和处理本地或网络数据的模块化设备(CDROM、Zip驱动器、调制解调器等),这是一种常见的体验。传统的自下而上的计算机技术教学方法不是一种很好的建构主义教学方法。因此,Scragg[21]建议采用自上而下的方法,从学生已经熟悉的材料开始,然后向不太熟悉的模型学习。克莱门茨建议,例如,软盘驱动器可以被视为松散耦合的多指令多数据(MIMD)设备[6]。因此,PC是由一系列总线结构互连的异构设备的复杂集合。然而,从用户的角度来看,PC是一种能够处理数据的低成本存储设备。因此,在这种情况下,我们将PC定义为子单元或节点的MIMD架构[15]。每个节点(微处理器、硬盘驱动器等)都可以被视为一个数据源/接收器,能够在不同程度上存储、处理和传输数据。这个简单的、高层次的、面向任务的模型可以提供一个合适的概念图,从而为计算机技术的引入提供一个框架。即使失去了技术细节,这个模型在概念上也很简单,通过抽象控制细节,并允许学生根据自己的经验轻松地构建知识的可行结构。然而,要有重要的价值,这个模型也必须是一个工具,实际上可以由学生使用。因此,我们检查了PC机的性能,以进一步开发此模型。
7PC性能-带宽节点
基准可以用来评估个人电脑的性能,结合价格等因素,有助于选择。为了获得更有意义的评估,消费者杂志使用基准测试套件来评估个人电脑并公布结果[18]。作为一个相对的指导基准是一个辅助选择,然而,所有这些结果必须解释和许多问题仍然留给用户。通常情况下,用户无法确定使用的量表类型(线性、对数等)或具有较高基准值的预期性能变化。此外,作为一个用户,性能上的差异是如何表现和感知的。我们的结论是,大量的基准虽然有用,但并不能为个人计算机的连贯概念模型提供基础。任何对个人计算机用户具有实用价值的测量标准,必须与人的维度或感知相关,并使用基于十进制标度系统的单位。首先,PC节点的性能可以通过以字节/秒为单位的带宽来评估。虽然有用,但它可能不是最佳的初始、面向用户的单位—典型的用户运行基于32位windows的应用程序。因此,用户通过图形用户界面(GUI)与文本和图形图像进行交互。对于一般验收,基准必须易于理解,因此应基于用户对性能的感知,因此应简单且使用合理大小的单位。我们建议,一个有用的测量单位是显示一个单一的,全屏,全彩图像。在本文中,我们将全屏图像定义为1024x1280,每像素3字节,表示3.75Mbytes的数据。PC和相关节点的性能仍然可以使用带宽的测量来评估,但是使用标准图像/秒或帧/秒的单位。这种测量单位对于典型用户来说可能更有意义,因为它直接关系到他们对性能的感知。首先,平滑动画需要大约30帧/秒(112.5字节/秒)。显然,这个单位的子倍数是可能的,如四分之一屏幕图像和减少调色板,如每像素1字节。因此,我们有一个共同的度量单位,与人类的共同感知相关,具有基于十进制的单位,可以应用于不同的节点并识别性能瓶颈。每个节点(微处理器、硬盘驱动器等)现在可以被视为具有相关传输特性(帧/秒或兆字节/秒)的可量化数据源/接收器(帧或兆字节)。这些节点现在被定义为B节点。这种方法允许通过一种简单、通用的测量方法——带宽来评估每个节点和数据路径的性能。其中带宽=时钟速度x数据路径宽度(B=C x D),常用单位为帧/秒(Mbytes/s)。
8PC作为带宽节点模型PC节点的异构性通过测量单位的范围(从MHz到以毫秒为单位的寻道时间)得到了清楚的说明。因此,很难对这些不同的节点进行评估。但是,可以使用标准帧/秒或兆字节/秒带宽的通用测量值来比较不同节点的性能。因此,我们可以将PC分析为以兆字节/秒和帧/秒为单位的B节点集合(表1)。考虑到Mbytes和Mbytes/s可被视为基本单位,可使用其他派生单位。类似地,数据帧的特征可以根据与用户更直接相关的不同应用而改变。在医学应用中,放射学图像通常以数字方式存储。单个超声图像代表大约0.26Mbytes的数据[10],每秒30帧时为7.8Mbytes/s。
设备
时钟频率
(MHz)
数据通路
(Bytes)
带宽
(Mbytes/s)
B=CXD
带宽
(Frames/s)
处理器
400
8
3200
853
动态随机存取存储器
16
8
128
34
硬盘
60rps
90Kbtytes
5.2
1.4
光盘
4.6
1.2
ISA总线
8
2
16
4.2
每个设备的性能可以用这个指标来计算。因此,PC可以理解为节点的分层集合,通过不同的总线互连,以不同的带宽运行。然后,我们检验了这种带宽节点模型是否适用于技术复杂性的不断提高。
9次优操作
由于操作限制以及其他较慢节点之间的交互作用,节点通常以次优方式运行。例如,微处理器可能需要两个或更多的时钟周期来执行指令。类似地,数据总线可能需要多个时钟周期来传输单个数据字。可以修改简单的带宽方程来考虑这一点,即带宽=时钟x数据路径宽度x效率(B=C x D x e)。早期的Intel 8088/86需要4个时钟周期(效率=?)的内存周期时间,但是对于Intel 80x86系列,包括Pentium,外部DRAM的内存周期时间仅由2个时钟(效率=?)组成[16]。因此,100Mhz奔腾的带宽为400Mbytes/s。其他设备也可以进行类似的建模。我们的结论是,提出的简单的带宽性能测量可以扩展到适应次优性能的PC节点。但是,其他未考虑的因素包括压缩、操作系统开销等的影响。目前正在检查这些因素的影响。
10递归分解
进一步的实验工作表明,B节点允许递归分解。因此,PC可以被描述为一个B节点或一组设备,所有这些设备都被建模为bnode。每个设备也可以建模为B节点的集合。例如,硬盘驱动器节点(a、c)和硬盘驱动器节点(c)可以被分解成机电设备(a、c、c)等。
11实验结果
我们首先建立了一个通用的实验方法来确定PC内节点之间的数据传输速率,以评估帧/秒作为性能度量的使用。在两个节点(硬盘驱动器(HDD)和同步动态RAM(SDRAM))之间使用C程序传输数据,并在并行端口上标记此操作的开始和停止。连接到该端口的示波器(分辨率为100微秒)测量数据传输速率,单位为Mbytes/s。获得的结果与制造商的硬盘技术规格直接相关。我们能够检测到硬盘缓存的影响,并跟踪和柱面延迟,从而验证了实验方法。生成一个未压缩的640x480、4字节/像素的视频图像,并从HDD传输到SDRAM和第三个节点(视频适配器卡)。从HDD到SDRAM的数据传输速率为1.48Mbytes/s,可以表示为1.21帧/s。从HDD到视频适配器卡的数据传输速率为1.37Mbytes/s,即1.1帧/s。视频卡的数据传输速率为18.6Mbytes/s ie15.1帧/s。因此,可以确定异构设备的相对性能并确定系统中的瓶颈。12节点作为一个建构主义框架作为ECU初步调查的结果,ECU设计、实施并全面评估了新课程[12]。与标准的计算机技术课程不同的是,本课程不教授学生数字技术、汇编语言编程等,而是基于本文推荐的建构主义方法。该课程一直被超额认购,学生流失率很低,吸引了ECU***的学生和该州其他大学的学生。这一新课程虽然在第一次推出时就被学生认为是有价值的,但可以说缺乏一个连贯的概念框架。去年,我们首次使用Bnodes作为这样一个框架,并对结果进行了评估。利用这个概念框架,PC被认为是一系列的节点,其性能由带宽(Frames/s)来衡量。采用标准的ECU必修课评价问卷,该单元得到了学生们的高度评价。此外,还进行了一项更详细的研究来调查学生对节点概念的体验。从80名学生中随机抽取40人进行问卷调查。36名学生认为应该教授节点概念。35名学生认为这个概念有助于他们理解计算机技术。35名学生认为使用一个公共单位(帧/秒)
帮助评估PC设备。这种模式的优点包括:
·学生认为电脑是一个统一的
基于建构主义原则的设备。
·以MB/s为单位的带宽可视为
基本单位,其他单位可从中提取
派生的。
·B节点性能,以带宽为单位
(Frames/s)是基于用户的,易于理解的
测量。
·B节点独立于建筑细节和
因此,在未来一段时间内可能是有价值的。
203
·B节点是图解式的、自记录的、易于使用的
使用和控制细节。
·使用递归分解B节点可以用来
模拟更复杂的计算机技术设备。
结论
本文提出以频宽(frames/s)来衡量其效能的节点,作为计算机技术概论课程的基础。迄今为止的工作表明,将PC建模为这样一个节点集合提供了一个良好的建构主义框架,允许以受控的、自上而下的方式引入技术细节,所有学科的学生都容易理解。节点模型提供抽象,因此独立于架构细节,因此可以适应技术的快速变化。此外,这项技术支持更先进的计算机技术研究。然而,还需要进一步的工作来研究如何将操作系统等开销的影响纳入到这个模型中。
虚拟现实的真实性是什么?
与婴儿技术一样,实现虚拟现实(VR)的早期梦想并将其应用于实际工作所花费的时间比最初的疯狂宣传所预测的要长。现在,终于发生了。
1965年,伊万·萨瑟兰(Ivan Sutherland)在他受邀的演讲《终极展示》(The Ultimate Display)中提出了一个愿景1(见侧边栏),我将其解释为:
不要把它当作一个屏幕,把它当作一扇窗户,一扇窗户,透过它你可以看到一个虚拟世界。计算机图形学面临的挑战是如何使虚拟世界看起来真实、听起来真实、实时地移动和响应交互,甚至让人感觉真实。从那时起,这个研究项目就一直在推动这一领域的发展。
什么是虚拟现实?不管是好是坏,虚拟现实这个标签一直停留在计算机图形学的这个特殊分支上。我将虚拟现实体验定义为用户有效地沉浸在响应虚拟世界中的任何体验。这意味着用户可以动态控制视点。
VR几乎在1994年工作。1994年,我在一次演讲中调查了虚拟现实领域,当时我问:“虚拟现实中有什么真正的美德吗?“2我当时的评估是,我们的纪律几乎奏效了,我们站在皮斯加山上观察应许之地,但我们还没有到那里。有很多演示和试点系统,但除了车辆模拟器和娱乐应用,虚拟现实还没有在生产使用做真正的工作。
净评估VR现在几乎不起作用。今年,我受邀对虚拟现实进行了最新评估,资助我参观了北美和欧洲的主要中心。每一种组件技术都取得了长足的进步。此外,我发现现在有一些虚拟现实应用程序的结果,他们所产生的常规操作。据我所知,截至1999年3月,这类装置有10多个,不到100个;这一数字再次排除了车辆模拟器和娱乐应用程序。我认为我们的技术已经超越了过去几乎可以工作的极限,现在几乎不能工作了。虚拟现实现在是真实的。
为什么排除?在1994年和1999年的技术比较中,我出于不同的原因排除了车辆模拟器和娱乐虚拟现实应用。
车辆模拟器的开发要早得多,独立于虚拟现实视觉。尽管他们今天提供了最好的虚拟现实体验,但这种卓越并不是虚拟现实技术发展的产物,也不能代表虚拟现实的一般状态,因为应用程序具有特殊的特性。我排除娱乐活动还有两个原因。首先,在娱乐领域,虚拟现实体验本身是追求的结果,而不是体验所带来的洞察力或成果。第二,因为娱乐业利用了柯勒律治的“自愿暂停怀疑”3,所以对逼真度的要求比其他虚拟现实应用程序要低得多。
技术
四项技术对虚拟现实至关重要:
■视觉(以及听觉和触觉)显示,将用户沉浸在虚拟世界中,并屏蔽现实世界中相互矛盾的感官印象;
■图形渲染 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 计划的,都是获得计算机辅助设计(CAD)数据。但即使这样也很少被证明是简单的:
■我们发现很难获得原始计算实体几何数据,这些数据最好地概括了设计师关于形状、功能和预期施工方法的想法。我们通常会收到一个已经镶嵌的多边形表示。通常,它会严重过度细分,需要多边形简化以产生不同细节级别的替代模型。
■格式几乎总是需要翻译的。以保存信息的方式进行。
■CAD模型通常需要大量的手动清洁。在某些CAD系统中,删除、移动或不活动的对象作为多边形重影留在数据库中。重合(闪烁)多边形和裂缝很常见。
■AutoCAD不捕捉多边形的方向。定位它们需要自动和手动工作。
■如果任何后续处理程序需要阀组,则根据CAD数据制作阀组需要大量工作。
■CAD模型,尤其是建筑结构,通常显示设计对象,而不是竣工对象。
来自图像的模型。
仅针对现有对象,而不是想象或设计的对象,成像可以生成模型。成像可以通过可见光、激光测距、CAT和MRI扫描、超声波等进行。有时,人们必须结合不同的成像模式,然后登记他们产生的三维几何和视觉属性,如颜色和表面纹理。从图像中恢复模型是一项完全独立的技术,也是一个活跃的研究领域,我不能在这里讨论。
[文章尾部最后500字内容到此结束,中间部分内容请查看底下的图片预览]请点击下方选择您需要的文档下载。
以上为《一种新的计算机技术高级抽象方法》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。