《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一3.2 计算机系统

简介: 本节书摘来华章计算机《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一书中的第3章 ,第3.2节,陈以农 陈文智 韩德强 著 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.2 计算机系统

3.2.1 计算机系统的类型
计算机系统可以按不同的方法来分类。图3-2给出了一个按用户和用途的分类。下面我们对一些典型的系统做更详细的介绍。

image

1.工作站和大型机
工作站和大型机主要面向通用应用领域,具备强大的数据运算与图形、图像处理能力,是为满足工程设计、科学研究、模拟仿真等专业领域而设计开发的高性能计算机。工作站和大型机也广泛用作服务器为远程终端用户提供服务。
2.个人电脑
个人电脑就是我们日常使用的台式机和笔记本,相信大家都已经很熟悉了。
3.嵌入式系统
嵌入式系统是一种专用的计算机系统,常常作为装置或者设备的一部分。事实上,绝大部分带有数字接口的设备,如手表、微波炉、录像机、车灯,都使用嵌入式系统。与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的、预先定义好的程序和任务,也可以通过一个开发平台对嵌入式系统重新编程。本书中用于教学的Intel和EV3机器人也属于嵌入式系统。我们将通过VIPLE对Intel和EV3机器人进行编程。

3.2.2 计算机系统的组成

一个计算机系统主要有五大部件组成,如图3-3所示。所有部件通过总线连接。

  • ALU(算术/逻辑单元):执行算术和逻辑操作,通常包括加法、减法、与(AND)、或(OR)、非(NOT)运算。ALU使用多路选择器来选择不同的运算。算术/逻辑单元还需要一组寄存器的支持,以便更高效地执行运算。
  • 控制器:对指令进行译码,从而产生控制信号来告诉ALU、内存和I/O设备需要做什么。
  • 存储器(内存):存储指令和数据。
  • 输入设备:把输入的数据写入内存。
  • 输出设备:从内存中读取数据。

图3-4给出了一个简单的ALU设计。它能够执行算术和逻辑操作,包括与、或、加和减等操作。该ALU会用到以下部件:非门、与门、或门、全加器、2-1多路选择器和4-1多路选择器。在本章的实验中,我们将用VIPLE实现这一ALU设计。

image

一个2-1多路选择器有一条控制输入线(0或1值)和两条数据输入线。当控制输入线的值为0,连到0端口的输入线将被选中,与输出线接通。当控制输入线的值为1,连到1端口的输入线将被选中,与输出线接通。图3-4的2-1多路选择器用于选择加法运算和减法运算。减法实际是通过加负数来实现的。
一个4-1多路选择器有两条控制输入线(00,01,10或11值)和4条数据输入线。当控制输入线的值为00,连到0端口的输入线将被选中,与输出线接通。当控制输入线的值为01(1),连到1端口的输入线将被选中,与输出线接通。当控制输入线的值为10(2),连到2端口的输入线将被选中,与输出线接通。当控制输入线的值为11(3),连到3端口的输入线将被选中,与输出线接通。在图3-4的设计中,4-1多路选择器用于选择与、或、加减运算,端口3未用。
1.冯·诺依曼机
1948年冯·诺依曼提出程序存储的计算机概念,也叫作冯·诺依曼机或存储程序式计算机。这种计算机具有以下两个特点:
1)指令和数据都以二进制数的形式表示。
2)从内存中读取指令,并且一条接一条的顺序执行。
冯·诺依曼机的优点在于结构简单,便于控制。经过了70多年的发展,计算机经历了若干的变迁,但是计算机的基本结构没有太大的变化,基本延续了冯·诺依曼当时的设计思想。
让我们进一步考虑如何在ALU中实现逻辑的加法(全加器)设计。首先,回顾一下如何进行十进制加法。从右到左相加两个数。考虑到可能的进位运算,事实上我们是在每位上添加三个数字,如下所示:
image

计算机只能处理二进制数。二进制加法也是类似的,一个数位只能用0或1表示。任何一个大于1的数将需要多个数位来表示。下面是二进制加法的示例:
image

一个典型的计算机含有32位的二进制数。它的全加器由32个1位的全加器构成,如
图3-5所示,其中,每一位全加器需要三个输入:a、b和carryIn,并生成两个输出:carryOut和sum。

image

在实验任务中,我们将采用基于组件和面向服务的设计方法来开发和仿真一个全加器。基于组件和面向服务的设计方法包括下列步骤。
将每个基本构件块(与、或、非)设计成一个组件(VIPLE活动)。这些基本构件块可以基于真值表直接建立。一个真值表表达了输入和输出之间的映射关系。在本节中,我们将进行以下设计:

  • 组件设计;
  • 把组件封装成VIPLE服务;
  • 利用已有的组件/服务构建1位全加器;
  • 创建测试环境来测试全加器。

在接下来的实验中,我们将设计更多的组件:2-1(2选1)多路选择器和4-1(4选1)多路选择器,并将它们封装成服务。然后,利用可用的组件/服务构建1位ALU。
例如,图3-6为根据异或门的真值表(数学模型)设计的VIPLE活动。

image

2.仿真异或门的VIPLE代码
问题: 什么是真值表?
如果一个门电路有10个输入,那么它的真值表中有多少种输入组合?10?100?1000?1024?
真值表是通过一种有效的方式来计算命题表达式的命题值,这种方式也被称为决策过程。一个命题表达式可以是一个基本公式(一个命题常数、命题变量,或是命题函数),或是通过逻辑运算符所表示的基本公式,例如,与(∧)、或(∨)、非(?)。Fx∧Gx就是一个命题表达式。
image

经典逻辑的真值表局限于布尔逻辑系统中,在该系统中,只存在两个逻辑(数字)值,真和假,通常分别写作F和T,或是1和0。真值表通过列出所有的输入组合而得到相应输出结果来表示数字部件。图3-7为与门、或门、非门、异或门及其真值表。
基于这些门电路,我们可以用真值表构建其他逻辑组件。对于1位全加器来说,它对3个输入a、b和carryIn求和。生成两个输出:a、b和carryOut。图3-8表示该全加器的输入和输出及它们的真值表。

image

根据真值表,通过手动使用卡诺图,或自动使用计算机辅助设计(CAD)软件都可以进行逻辑设计。图3-9给出了基于给定真值表的全加器的逻辑设计。

image

在该实验中,我们将使用VIPLE来仿真门电路和1位全加器。
3.1位算术逻辑单元的逻辑设计
对于一个输入较多的大型电路来说,直接应用真值表可能太复杂。例如,图3-10所示的线路图(1位算术逻辑单元)有6个输入和2个输出。

image

如果直接使用真值表,会有26 = 64个输入组合,即真值表有64行输入值。在VIPLE的第一个If活动中将测试64个条件,且每个条件有5组比较,如下所示:
image

若采用这一设计方案,VIPLE框图会很复杂。因此,我们将使用基于组件的和面向服务的方法来处理上述复杂的组件,也就是说,我们将遵循逻辑设计并充分利用已经创建好的组件(服务)。这一设计和实现,将在下一章中讨论。

相关文章
|
人工智能 算法 IDE
智能化测试新趋势:手淘 AI+IoT 机器人泛终端测试实战
“为模拟真实用户”,Robot-XT 极测机器人提供了为用户体验度量评测的能力,不仅可以最大程度地模拟用户真实操作,还实现了多设备跨终端的功能自动化和用户体验度量。同时,Robot-XT 极测机器人通过 IoT+AI 的智能化技术搭建一套支持多机操作并具备高稳定性的的 UEE 自动化解决方案,实现了覆盖从线上 App 到线下智能门店场景的端到端自动化测试,赋能行业,为软件绿色联盟的加盟 App 提供用户体验评测服务。
641 0
智能化测试新趋势:手淘 AI+IoT 机器人泛终端测试实战
|
机器学习/深度学习 JavaScript 物联网
温湿度计设备通过阿里云IoT物联网套件上报数据到钉钉群机器人实践
温湿度计通过MQTT协议连接到IoT套件,规则引擎针对数据上报Topic配置转发到函数计算(FunctionComputer)中编写好的函数pushData2DingTalk,Nodejs脚本函数处理数据,post到钉钉群机器人
4451 0
|
人工智能 机器人
《中国人工智能学会通讯》——7.33 丰心工程 为情感机器人安上“心脑”
本节书摘来自CCAI《中国人工智能学会通讯》一书中的第7章,第7.33节, 更多章节内容可以访问云栖社区“CCAI”公众号查看。
1020 0
|
数据可视化 机器人 物联网
《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一3.3 在VIPLE中创建计算机系统部件
本节书摘来华章计算机《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一书中的第3章 ,第3.3节,陈以农 陈文智 韩德强 著 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3171 0
|
2月前
|
传感器 人工智能 监控
智能耕耘机器人
智能耕耘机器人
42 3
|
6月前
|
人工智能 自然语言处理 机器人
智能电话机器人核心技术:自然语言处理
什么是自然语言处理? 自然语言处理是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法.自然语言处理是一门融语言学、计算机科学、数学于一体的科学.因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别. 自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统.因而它是计算机科学的一部分. 自然语言处理(NLP)是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间的相互作用的领域.
|
1月前
|
传感器 人工智能 自然语言处理
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
|
2月前
|
传感器 机器学习/深度学习 算法
植保机器人具备智能感知与决策能力
植保机器人具备智能感知与决策能力
19 2

热门文章

最新文章