系统

PCIE系统总线

PCIe总线随着技术发展,PCI的带宽已成为新IO设备的瓶颈,且PCI总线的插槽设计的也不是很合理,所以人们试着提出新总线标准。目前在主流PC、服务器中,占据统治地位的PCI总线的继任者是PCIe总线,全称为PCI Express总线。这种总线标准也是Intel提出的,其实际上和PCI总线几乎没有关系。可能Intel是因为考虑到PCI这几个字母已经成为了“品牌”,所以打算在名称上继续沿用它。 PCIe的核心在于它彻底抛弃了作为“连接众多设备的并行公共导线”的传统总线功能,取而代之的是提供基于“高速点对点串行连接设备”的总线功能。这就是为什么说PCIe和PCI是完全不同的,PCIE从局域网、交换以太网中借鉴了许多重要的思想,这使得PCIe非常的强大。 Intel在中后期版本的Intel奔腾4对应的主板上开始提供PCIe总线,上图提供了1种包含PCIe总线的计算机结构。其中CPU与内存仍采用原方式连接,IO设备则是经过PCIe所提供的交换网络与桥接芯片通信的,这里的交换网络是个逻辑概念,因为其功能通常被内置到CPU或桥接芯片中。… 阅读全文

德州仪器OMAP4430的微体系结构

功能模块OMAP4430上有2个ARM Cortex A9处理器核心,使用ARM v7指令集。该核心是32位的,使用32位的寄存器、数据通路、存储总线。与INTEL酷睿处理器不同,该核心是真正的RISC处理器,其使用的指令本身就是类似于微操作的。上图为其大致的组成。 A9比酷睿的微体系结构简单很多,但两者的关键部件有很多相似的地方。比如A9也使用了两级的高速缓存,但其L2缓存只有1MB。L1指令缓存是32KB的四路组相联结构,块大小为32字节。由于大多数ARM v7指令是4字节的,所以L1指令缓存可容纳8K条指令,比酷睿的微操作缓存的容量要大。L1数据缓存也是32KB的四路组相联结构,块大小为32字节。 指令发射单元每个时钟周期能至多发射4条指令。遇到条件分支时会根据4K个表项的分支预测器判断跳转是否发生,如果预测发生,再去1K个表项的地址缓冲区判断跳转的目标地址。如果前端发现程序正在执行“紧凑的小循环”,会把循环装入快速循环旁路缓存,用于优化速度和能耗。… 阅读全文

因特网的组成

因特网的组成因特网的功能就是把全世界的上网设备连接,让它们可互相传递信息。假设全世界有\(N\)个上网设备,若让他们直接互联肯定不现实,其需要\(N^2\)量级的直连“通路”,故这些设备需中间设备进行“集线”,如上图所示。这就是简化版的因特网结构,这个结构类似于图数据结构。下面给出相关概念: 1) 节点:上图中的节点,可以按连接关系分为两类: 1.1) 边缘节点:上图中不被其他节点途径的节点。这些节点被称为主机或者端,是有直接上网需求的设备,比如手机、笔记本电脑、服务器、共享单车等等; 1.2) 核心节点:上图中的其他节点,一般是路由器、交换机、集线器等。是支持边缘节点上网的设备; 2) 链路:上图种的边,作用是连接节点。一般是水晶头双绞线、同轴电缆、光纤、微波等; 网络这个概念是递归的,即整个因特网是由多个子因特网组成的。如上图左边的子因特网,其由3个手机和1个核心节点组成,有时为了简化问题可以把他们当成一个节点。小网络连接的是多个主机,大网络连接的是多个网络。通常会把从主机出发遇到的第1个交换机或路由器称为边缘交换机或边缘路由器。与之相对的同样有核心交换机和核心路由器。后者的造价和体积往往大于前者。… 阅读全文

因特网的评价指标

性能指标1) 速率:因特网终端最终发出接受的信号基本都是数字信号,其信息量的单位是比特(bit),即1位的二进制数0或1。因特网速率的单位是比特/秒,即bit/s,也写作b/s或bps(bit per second); 2) 带宽:传统模拟信号中的带宽是指通道能接受的频带宽度,单位是赫兹,这是种频域的观点。对于因特网而言,带宽基本上和速率一定程度上等价,速率是种时域的观点; 3) 吞吐量:即单位时间最大可通过信息量,其单位也是速率的单位,有时还会用帧每秒表示; 4) 时延:时延是数据从一端到另一端的时间,分为如下几种。前两种最重要。 4.1) 发送时延:定义是“端或交换机发出数据帧所需要的时间”,这里把数据帧当成连续的一些bit即可。也就是说发送时延等于“即将发出数据帧的第1个bit”到“发出数据帧的最后1个bit”之间的间隔时间。发送时延通常仅关于发送设备本身,和外部的链路、传输距离等无关;… 阅读全文

因特网的体系结构

OSI参考模型ISO在1977年成立专门的机构,用于研究如何让不同计算机之间互相通信,该机构提出了开放式系统互联通信参考模型(Open System Interconnection Reference Model),简称OSI,是一种用于在未来实现“互联”的标准的开放框架,旨在实现“任何设备只要实现了OSI,就能够和世界各地的其他OSI设备进行通信”。这个标准提出后得到世界各国的支持,并在90年代作为了ISO国际标准。 这里不剖析这7层的具体涵义,只需知道它们间的关系类似于软件工程中的“面向对象设计”,其中的每层都是对更低1层进行“包装”的。当有两个应用层的程序需要互相通讯的时候,数据会层层“解封”成为物理层的电学信号,在传递到另一端后,又层层“封装”成为应用程序数据。终端往往其需要完整的7层(刷微博),而对于核心部分的分组交换机,通常只需要3层(路由器需要3层,2层交换机需要2层)。… 阅读全文

USB外部总线

USB总线显卡等高速设备是十分适合通过PCI/PCIe连入计算机的。但对于键盘、鼠标等设备而言,如果每个设备都占用1个PCI/PCIe的“席位”,那么代价就会较昂贵。于是IBM、Intel、微软等公司联手设计了一种将低速设备连入计算机的方案,于1998年正式发布,称为通用串行总线(USB)。USB设备无需复杂的跳线和插槽、安装设备无需重启,单机可接入127个设备(采用7位的设备地址),设备直接由数据线供电。USB经过多年的版本迭代,从USB1.0时的1.5Mbps带宽发展到目前USB3.2 Gen2的10Gbps带宽。 USB由接入系统总线(PCI/PCIe)的USB根集线器实现,根集线器可接入设备或扩展集线器,扩展集线器可提供更多接口用于接入设备,故其拓扑结构类似于以根集线器为根的树结构,具体如上图所示。… 阅读全文

接口电路与地址译码电路

接口电路接口电路是指计算机之间,计算机与外围设备之间,计算机内部部件之间起连接作用的电路。一般由寄存器组、专用存储器和控制电路几部分组成,当前的控制指令、通信数据、以及外部设备的状态信息等分别存放在专用存储器或寄存器组中。 接口电路这4个字容易令人望文生义,联想到PCIe接口、USB接口。实际上接口电路一定程度上与总线这个概念平行,并且有部分的重合。接口电路强调两个部件直连,总线强调多个部件用公共的总线互连。接口电路强调信号和数据形式的转换,总线更注重可扩展性、灵活性、规范化。接口与总线有时也不加区分,合称为总线接口。通常接口电路是连入计算机系统总线的,比如INTEL 8255A接口电路芯片。 上图是个类似INTEL 8255A的接口电路芯片引脚图,是种并行IO接口(PIO)芯片。右边3×8根IO信号线可用于连接各种支持它的IO设备,可以是键盘,开关等。左边包括接入总线的D0-D7信号线,WR/WD的写信号线/读信号线,RESET充值信号线,A0-A1的地址信号线,CS片选信号线。该PIO接口芯片可通过3位的配置寄存器配置,来设置3个Port的输入输出,而每个Port都会对应一个8位锁存器用来暂存数据。… 阅读全文

机器级数据的检错与纠错

二进制数据的检错纠错 计算机在用“高低电平”的方式传输和表示数据的时候,会因为电平毛刺等导致某些位出错,这时就需要相应的数据纠错检错的机制。比如多用于服务器的ECC内存,其同时具备纠错和检错功能。而普通PC内存通常只有检错功能。计算机电路结构使数据出错时不会出现“多位或少位”的情况,只会出现“位值”的错误,并且多个位中的每个位是否出错可看作是概率独立的。 目前主要的纠错检错机制是纠错码,其核心是在原字(数据位)额外加若干位(校验位),新数据称为码字(用于和字区分),码字同样是定长的,实际传输数据会传输码字而不是字。下面通过汉明距离给出编码方案与纠错检错能力间的关系,汉明距离的定义之前在<算法>中讨论过: 1) 若两两合法码字的汉明距离是\(d+1\)且错误不大于\(d\)位则必可检错。因为到合法码字汉明距离为\(1-d\)的所有数据中,不可能有合法码字;… 阅读全文

字符的机器级表示

字符 大多数计算机中的数据和指令都是二进制位形式的。注意这里区分一下二进制位和二进制数,二进制数是数学概念,而机器本身是“无法理解”数学概念的,只能按照人类规定的范式处理二进制位。只有人类规定好相关范式,计算机才能把二进制位当作数来处理。之后可能不去区分二进制位和二进制数的概念。 想要让计算机存储和表示字符,需要用公认和权威的标准,建立其与二进制位的映射关系,否则计算机间很难交互。这种映射称为字符编码。其由国际机构或国家机构制定。可分为如下2部分: 1) 字符集:规定了语言包含的所有字符和标点符号等。但语言是比较复杂的,比方说让大陆、香港、台湾、日本出具一份汉字的字符集,那它们可能出的不一样。所以汉语这“一种语言”就有国际、大陆、台湾等的多个版本的字符集; 2) 编码:编码是指给定字符集中的字符的区分和表示的方案,对于非计算机有莫尔斯电码的方案,计算机则通常用定长或变长的二进制数来做编码。考虑到二进制数表示字符常需要较多的位,以及机器中数据的位数常以字节为倍数,在很多时候又会用十六进制来表示二进制的编码;… 阅读全文
滚动至顶部