# 1 ~ 20
计算机系统中的存储部件通常组织成层次结构,越接近 CPU 的存储部件访问速度越快。存储速度从快到慢分别是:寄存器组、Cache、内存、Flash。
流水线的吞吐率是指单位时间内流水线完成的任务数或输出的结果数量,其最大吞吐率为 “瓶颈” 段所需时间的倒数。题中所示流水线的 “瓶颈” 为取操作数段。
流水线的加速比是指完成同样一批任务,不使用流水线(即顺序执行所有指令)所需时间与使用流水线(指令的子任务并行处理)所需时间之比。 题目中执行 1 条指令的时间为 2Δt +1Δt +3Δt +1Δt +2Δt=9Δt,,因此顺序执行 10 条指令所需时间为 90Δt。若采用流水线,则所需时间为 9Δt+(10-1)*3Δt=36Δt,因此加速比为 90:36,即 5:2。
嵌入式微处理器(MPU)是嵌入式系统硬件层的核心,大多工作在为特定用户群专用设计的系统中,它将通用 CPU 中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统在设计时趋于小型化,同时还具有很高的效率和可靠性。
嵌入式微控制器(Embedded Microcontroller Unit,EMCU)的典型代表是单片机,单片机从诞生之日起,称为嵌入式微控制器。它体积小,结构紧凑,作为一个部件安装在所控制的装置中,主要执行信号控制的功能。
数字信号处理器(digital signal processor)由大规模或超大规模集成电路芯片组成,是用来完成某种信号处理任务的处理器。它是为适应高速实时信号处理任务的需要而逐渐发展起来的。随着集成电路技术和数字信号处理算法的发展,数字信号处理器的实现方法也在不断变化,处理能力不断提高。
片上系统(System-on-a-chip)指的是在单个芯片上集成一个完整的系统,一般包括中央处理器(CPU)、存储器,以及外围电路等。SOC 是与其他技术并行发展的,如绝缘硅(SOI),它可以提供增强的时钟频率,从而降低微芯片的功耗。
DMA 方式是一种不经过 CPU 而直接在外设与内存间进行的数据交换控制方式。在 DMA 模式下,CPU 只须向 DMA 控制器下达指令,让 DMA 控制器来处理数据的传送,数据传送完之后再把信息反馈给 CPU 即可。
指令流水线的吞吐率定义为:吞吐率 TP = 指令数 / 执行时间。 该流水线开始运行后,第二条指令的第一段就与第一条指令的第二段就开始重叠执行。流水线的建立时间为第一条指令的执行时间,此后每 3△t 就执行完一条指令,因此执行 100 条指令的时间为(t+3t+t+2t+t)+(100-1)*3t=305t。
RISC 的特点是指令格式少,寻址方式少且简单。
双缓冲的工作特点是可以实现对缓冲区中数据的输入 T 和提取 M,与 CPU 的计算 C,三者并行工作。
双缓冲的基本工作过程是在设备输入时,先将数据输入到缓冲区 1,装满后便转向缓冲区 2。所以双缓冲进一步加快了 I/O 的速度,提高了设备的利用率。
在双缓冲时,系统处理一块数据的时间可以粗略地认为是 Max(C,T)。如果 C<T,可使块设备连续输入;如果 C>T,则可使系统不必等待设备输入。本题每一块数据的处理时间为 10,采用双缓冲需要花费的时间为 10×10+6+2=108。 采用单缓冲的工作过程如图(a)所示。当第一块数据送入用户工作区后,缓冲区是空闲的,可以传送第二块数据。这样第一块数据的处理 C1 与第二块数据的输入 T2 是可以并行的,依次类推,如图(b)所示。
系统对每一块数据的处理时间为:Max(C,T)+M。因为,当 T>C 时,处理时间为 M+T;当 T<C 时,处理时间为 M+C。本题每一块数据的处理时间为 10+6=16,Docl 文件的处理时间为 16×10+2=162μs,比使用单缓冲节约了 162-108=54μs 时间。
数据在两个缓冲区间的传递不考虑时间么
双缓冲区应该是磁盘可任意向其中空闲的缓冲区进行输入,同时缓冲区满了自动向工作区写数据,数据不必在两个缓冲区间传递,两个是独立工作的。
磁盘索引块为 4KB,每个地址项大小为 4B,故每个磁盘索引块可存放 4096/4=1024 个物理块地址。又因为文件索引节点中有 8 个地址项,其中 iaddr [0]、iaddr [1]、iaddr [2]、iaddr [3]、iaddr [4]、iaddr [5] 这 6 个地址项为直接地址索引,分别存放逻辑块号为 0〜5 的物理块地址;iaddr [<5] 是一级间接地址索引,这意味着 iaddr [6] 地址项指出的物理块中存放逻辑块号为 6〜1029 的物理块号;iaddr [7] 是二级间接地址索引,该地址项指出的物理块存放了 1024 个间接索引表的地址,这 1024 个间接索引表存放逻辑块号为 1030〜1049605 的物理块号。 因为单个文件的逻辑块号为 0〜1049605,共 1049606 个物理块,而磁盘数据块大小为 4KB 字节,所以单个文件最大长度是 4198424KB。 若要访问文件的逻辑块号分别为 6、520 和 1030,分别对应系统管理的一级间接地址索引、一级间接地址索引和二级间接地址索引范围内。
系统读记录的时间为 30/10=3ms,对第一种情况,系统读出并处理记录 R1 之后,将转到记录 R4 的开始处,所以为了读出记录 R2,磁盘必须再转一圈,需要 3ms(读记录) 加 30ms (转一圈)的时间。这样,处理 10 个记录的总时间应为,处理前 9 个记录(即 R1,R2,R9)的总时间再加上读 R10 和处理时间:9X33ms+9ms=306ms。 对于第二种情况,若对信息进行优化分布,当读出记录 R1 并处理结束后,磁头刚好转至 R2 记录的开始处,立即就可以读出并处理,因此处理 10 个记录的总时间为: 10X(3ms(读记录)+6ms(处理记录))=10X9ms=90ms
嵌入式系统中采用中断方式实现输入输出的主要原因是能对突发事件做出快速响应。在中断时,CPU 断点信息一般保存到栈中。
计算机执行程序时,在一个指令周期的过程中,为了能够从内存中读指令操作码,首先是将程序计数器(PC)的内容送到地址总线上。
CISC (Complex Instruction Set Computer,复杂指令集计算机)的基本思想是进一步增强原有指令的功能,用更为复杂的新指令取代原先由软件子程序完成的功能,实现软件功能的硬件化,导致机器的指令系统越来越庞大而复杂。CISC 计算机一般所含的指令数目至少 300 条以上,有的甚至超过 500 条。 CISC 的主要缺点如下:①微程序技术是 CISC 的重要支柱,每条复杂指令都要通过执行一段解释性微程序才能完成,这就需要多个 CPU 周期,从而降低了机器的处理速度;②指令系统过分庞大,从而使高级语言编译程序选择目标指令的范围很大,并使编译程序本身冗长而复杂,从而难以优化编译使之生成真正髙效的目标代码:③CISC 强调完善的中断控制,势必导致动作繁多,设计复杂,研制周期长:④CISC 给芯片设计带来很多困难,使芯片种类增多,出错几率增大,成本提高而成品率降低。 RISC (Reduced Instruction Set Computer,精简指令集计算机)的基本思想是通过减少指令总数和简化指令功能,降低硬件设计的复杂度,使指令能单周期执行,并通过优化编译,提高指令的执行速度,采用硬线控制逻辑,优化编译程序。 实现 RISC 的关键技术有:①重叠寄存器窗口(overlapping register windows)技术, 首先应用在伯克利的 RISC 项目中;②优化编译技术,RISC 使用了大量的寄存器,如何 合理分配寄存器、提高寄存器的使用效率,减少访存次数等,都应通过编译技术的优化来实现;③超流水及超标量技术,这是 RISC 为了进一步提高流水线速度而采用的新技术;④硬线逻辑与微程序相结合在微程序技术中。
由于资源共享与进程合作,并发执行的任务(进程)之间可能产生相互制约关系,这些制约关系可分为两类:竞争与协作。并发进程之间的竞争关系为互斥,并发进程之间的协作关系体现为同步。 同步是因合作进程之间协调彼此的工作而控制 S 己的执行速度,即因相互合作,相互等待而产生的制约关系。而互斥是进程之间竞争临界资源而禁止两个 y 上的进程同时进入临界区所发生的制约关系。 题目中一个任务要等待另一个任务发来消息,或建立某个条件后再向前执行,显然体现的制约关系是任务的同步。
存储体系结构包括不同层次上的存储器,通过适当的硬件、软件有机地组合在一起形成计算机的存储体系结构。例如,由高速缓存(Cache)、主存储器(MM)和辅助存储器构成的 3 层存储器层次结构存如下图所示。
接近 CPU 的存储器容量更小、速度更快、成本更高,辅存容量大、速度慢,价格低。采用分级存储体系的目的是解决存储的容量、价格和速度之间的矛盾。
在嵌入式系统中,板级支持包 Board Support Package(简称 BSP)是对硬件抽象层的实现,是介于主板的硬件和操作系统驱动程序之间的一层,为整个软件系统提供底层硬件支持,是介于底层硬件和上层软件之间的底层软件开发包,它主要的功能是给上层提供统一接口,同时屏蔽各种硬件底层的差异,以及提供操作系统的驱动及硬件驱动。简单地说,就是 BSP 包含了所有与硬件有关的代码,为操作系统提供了硬件平台无关性。
编程 DSP 芯片是一种具有特殊结构的微处理器,为了达到快速进行数字信号处理的目的,DSP 芯片一般都采用特殊的软硬件结构: 1. 哈佛结构。 DSP 采用了哈佛结构,将存储器空间划分成两个,分别存储程序和数据。它们有两组总线连接到处理器核,允许同时对它们进行访问,每个存储器独立编址,独立访问。这种安排将处理器的数据吞吐率加倍,更重要的是同时为处理器核提供数据与指令。在这种布局下,DSP 得以实现单周期的 MAC 指令。 在哈佛结构中,由于程序和数据存储器在两个分开的空间中,因此取指和执行能完全重叠运行。 2. 流水线。 与哈佛结构相关,DSP 芯片广泛采用 2-6 级流水线以减少指令执行时间,从而增强了处理器的处理能力。这可使指令执行能完全重叠,每个指令周期内,不同的指令都处于激活状态。 3. 独立的硬件乘法器。 在实现多媒体功能及数字信号处理的系统中,算法的实现和数字滤波都是计算密集型的应用。在这些场合,乘法运算是数字处理的重要组部分,是各种算法实现的基本元素之一。乘法的执行速度越快,DSP 处理器的性能越高。相比与一般的处理器需要 30-40 个指令周期,DSP 芯片的特征就是有一个专用的硬件乘法器,乘法可以在一个周期内完成。 4. 特殊的 DSP 指令。 DSP 的另一特征是采用特殊的指令,专为数字信号处理中的一些常用算法优化。这些特殊指令为一些典型的数字处理提供加速,可以大幅提高处理器的执行效率。使一些高速系统的实时数据处理成为可能。 5. 独立的 DMA 总线和控制器。 有一组或多组独立的 DMA 总线,与 CPU 的程序、数据总线并行工作。在不影响 CPU 工作的条件下,DMA 的速度已经达到 800MB/S 以上。这在需要大数据量进行交换的场合可以减小 CPU 的开销,提高数据的吞吐率。提高系统的并行执行能力。 6. 多处理器接口。 使多个处理器可以很方便的并行或串行工作以提高处理速度。 7. JTAG(Joint Test Action Group)标准测试接口(IEEE 1149 标准接口)。 便于对 DSP 作片上的在线仿真和多 DSP 条件下的调试。 8. 快速的指令周期。 哈佛结构,流水线操作,专用的硬件乘法器,特殊的 DSP 指令再加上集成电路的优化设计,可是 DSP 芯片的指令周期在 10ns 以下。快速的指令周期可以使 DSP 芯片能够实时实现许多 DSP 应用。
# 21 ~ 45
采用该存储器芯片需要构成 8FFFFH-84000H = BFFFH 的空间,且内存按照字节(8b)编码,需要的容量是 BFFFHX8b,一片存储芯片的容量是 8KX4b,统一单位后相除并取最近的偶数(因为地址空间是字节),可以得到答案为 12。
在计算机系统中,常选用生产与运行成本、存储容量和读写速度各不相同的多种存储介质,组成一个统一管理的存储器系统,使每种介质充分发挥各自在速度、容量、成本方面的优势,从而达到最优性能价格比,满足使用要求。 高速缓存 Cache 用来存放当前最活跃的程序和数据,作为主存局部域的副本,其特点是:容量一般在几 KB 到几 MB 之间;速度一般比主存快 5 到 10 倍,由快速半导体存储器构成;其内容是主存局部域的副本,对程序员来说是透明的。 替换算法的目标就是使 Cache 获得最高的命中率。常用算法有随机替换算法、先进先出算法、近期最少使用算法和优化替换算法。 Cache 的性能是计算机系统性能的重要方面。命中率是 Cache 的一个重要指标,但不是最主要的指标。Cache 设计的目标是在成本允许的条件下达到较高的命中率,使存储系统具有最短的平均访问时间。 Cache 的命中率与 Cache 容量的关系是:Cache 容量越大,则命中率越高,随着 Cache 容量的增加,其命中率逐渐接近 100%。但是增加 Cache 容量意味着增加 Cache 的成本和增加 Cache 的命中时间。
RAID 是英文 Redundant Arrayof Independent Disks 的缩写,中文简称为独立冗余磁盘阵列。简单地说,RAID 是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。组成磁盘阵列的不同方式称为 RAID 级别(RAID Levels)。在用户看起来,组成的磁盘组就像是一个硬盘,用户可以对它进行分区,格式化等。总之,对磁盘阵列的操作与单个硬盘一模一样。不同的是,磁盘阵列的存储速度要比单个硬盘高很多,而且可以提供自动数据备份。数据备份的功能是在用户数据一旦发生损坏后,利用备份信息可以使损坏数据得以恢复,从而保障了用户数据的安全性。RAID 技术分为几种不同的等级,分别可以提供不同的速度,安全性和性价比。根据实际情况选择适当的 RAID 级别可以满足用户对存储系统可用性、性能和容量的要求。常用的 RAID 级别有以下几种:NRAID,JBOD,RAIDO,RAID1,RAID1+0,RAID3,RAID5 等。目前经常使用的是 RAID5 和 RAID(1+0)。如果使用物理硬盘容量不相等的硬盘做 RAID,那么创建的 RAID 阵列的总容量为较小的硬盘的计算方式。
RAID5 的存储机制是两块存数据,一块存另外两块硬盘的交易校验结果。RAID5 的建立后,坏掉一块硬盘,可以通过另外两块硬盘的数据算出第三块的,所以至少要 3 块。RAID5 是一种旋转奇偶校验独立存取的阵列方式,它与 RAID3,RAID4 不同的是没有固定的校验盘,而是按某种规则把奇偶校验信息均匀地分布在阵列所属的硬盘上, 所以在每块硬盘上,既有数据信息也有校验信息。这一改变解决了争用校验盘的问题,使得在同一组内并发进行多个写操作。所以 RAID5 既适用于大数据量的操作,也适用于各种事务处理,它是一种快速、大容量和容错分布合理的磁盘阵列。当有 N 块阵列盘时,用户空间为 N-1 块盘容量。
根据以上原理,共有 3 块 80G 的硬盘做 RAID5,则总容量为(3-1)×80=160G; 如果有 2 块 80G 的盘和 1 块 40G 的盘,则以较小的盘的容量为计算方式,总容量为(3-1)×40=80G。
嵌入式系统的数据库系统称为嵌入式数据库系统或嵌入式实时数据库系统。嵌入式系统必须能够在没有人工干预的情况下,长时间不间断地运行,因此要求高的可靠性。同时要求数据库操作具备可预知性,而且系统的大小和性能也都必须是可预知的,以保证系统的性能。嵌入式系统需要与底层硬件打交道,因此在数据管理时,也要有底层控制的能力,如什么时候会发生磁盘操作,磁盘操作的次数,如何控制等。底层控制的能力是决定数据库管理操作的关键。
嵌入式数据库管理系统一般只提供本机服务接口,为前端应用提供基本的数据支持。
CPU 的工作频率(主频)包括两个部分:外频与倍频,两者的乘积就是主频。
所谓外频,就是外部频率,指的是系统总线频率。 倍频的全称是倍频系数,倍频系数是指 CPU 主频与外频之间的相对比例关系。最初 CPU 主频和系统总线速度是一样的,但 CPU 的速度越来越快,倍频技术也就相应产生。它的作用是使系统总线工作在相对较低的频率上,而 CPU 速度可以通过倍频来提升。
本题中外频 200MHz,倍频 13,所以主频 = 200MHz*13=2.6GHz。
任务是 RTOS 中最重要的操作对象,每个任务在 RTOS 的调度下由 CPU 分时执行。任务的调度目前主要有时间分片式、轮流查询式和优先抢占式三种,不同的 RTOS 可能支持其中一种或几种,其中优先抢占式对实时性的支持最好。
在非实时系统中,调度的主要目的是缩短系统平均响应时间,提高系统资源的利用率,或优化某一项指标;而实时系统中调度的目的则是要尽可能地保证每个任务满足他们的时间约束,及时对外部请求做出响应。
一个嵌入式实时操作系统(RTOS)的评价要从很多角度进行,如体系结构、API 的丰富程度、网络支持、可靠性等。其中,实时性是 RTOS 评价的最重要的指标之一, 实时性的优劣是用户选择操作系统的一个重要参考。 严格地说,影响嵌入式操作系统实时性的因素有很多,如常用系统调用平均运行时间、任务切换时间、线程切换时间、信号量混洗时间(指从一个任务释放信号量到另一 个等待该信号量的任务被激活的时间延迟)、中断响应时间等。 任务执行时间不是反映 RTOS 实时性的评价指标。
总线是一组能为多个部件分时共享的信息传送线,用来连接多个部件并为之提供信息交换通路。所谓共享,指连接到总线上的所有部件都可通过它传递信息;分时性指某一时刻只允许一个部件将数据发送到总线上。因此,共享是通过分时实现的。
CPU 访问内存通常是同步方式,CPU 与 I/O 接口交换信息通常是同步方式,CPU 与 PCI 总线交换信息通常是同步方式,I/O 接口与打印机交换信息则通常采用基于缓存池的异步方式。
设计 CPU 的都是同步方式,
一般来说,嵌入式系统通常采用接口中的移位寄存器来实现数据的串 / 并和并 / 串转换操作。
软件设计层面的功耗控制主要可以从以下方面展开:
- 软硬件协同设计,即软件的设计要与硬件的匹配,考虑硬件因素。
- 编译优化,采用低功耗优化的编译技术。 3. 减少系统的持续运行时间,可从算法角度进行优化。 4. 用 “中断” 代替 “查询” 5. 进行电源的有效管理
嵌入式系统的软件设计除了需要考虑一般软件设计的基本要求之外,通常都会要求嵌入式系统软件具有良好的可移植性,以实现对不同硬件平台的适用性,这就要求基于硬件抽象层的系统软件设计特性实现对上层软件的统一接口,做到硬件无关性。
MMU 是存储器管理单元的缩写,是用来管理虚拟内存系统的器件。MMU 通常是 CPU 的一部分,本身有少量存储空间存放从虚拟地址到物理地址的匹配表。此表称作 TLB(转换旁置缓冲区)。所有数据请求都送往 MMU,由 MMU 决定数据是在 RAM 内还是在大容量存储器设备内。如果数据不在存储空间内,MMU 将产生页面错误中断。 MMU 的两个主要功能是将虚地址转换成物理地址,控制存储器存取允许。MMU 关掉时,虚地址直接输出到物理地址总线。 Cortex-M3 处理器采用 ARMv7-M 架构,它包括所有的 16 位 Thumb 指令集和基本的 32 位 Thumb-2 指令集架构。Cortex-M3 支持线程模式和处理模式。在复位时处理器进入 “线程模式”,异常返冋时也会进入该模式,特权和用户(非特权)模式代码能够在 “线程模式” 下运行。出现异常模式时处理器进入 “处理模式”,在处理模式下,所有代码都是特权访问的。μC/OS-II 可以运行在 Cortex-M3 处理器上。
看门狗(Watch Dog)是一个独立的定时器电路,有一个定时器控制寄存器,可以设定时间(开狗),到达时间后要置位(喂狗),如果没有的话,就认为是程序跑飞,就会发出 RESET 指令。当系统工作正常时,CPU 将每隔一定时间输出一个脉冲给看门狗,即 “喂狗”,若程序运行出现问题或硬件出现故障时而无法按时 “喂狗” 时,看门狗电路将迫使系统自动复位而重新运行程序。
硬件抽象层是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。
虚拟存储器 (Virtual Memory): 在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的 “主存储器”。虚拟存储区的容量与物理主存大小无关,而受限于计算机的地址结构和可用磁盘容量。其页面的置换依据相应的页面置换算法进行,当页面失效时,需要进行数据交换,此时涉及到逻辑地址 (虚地址) 到辅存物理地址的变换。
读取一个连续数据需要的时间包括移动时间、旋转延迟时间和传输时间三个部分,总时间花为 (10*10)+100+2=202ms
。一次读取一个 100 块的文件需要的时间为 202*100=20200ms。
在嵌入式系统开发中,由于嵌入式设备不具备足够的处理器能力和存储空间,程序开发一般用 PC (宿主机)来完成,然后将可执行文件下载到嵌入式系统(目标机)中运行。 当宿主机与目标机的机器指令不同时,就需要交叉工具链(指编译、汇编、链接等一整套工具)。
PCI 是一种局部总线标准,它是在 CPU 和原来的系统总线之间插入的一级总线,具体由一个桥接电路实现对这一层的管理,并实现上下之间的接口以协调数据的传送。 JTAG 是一个调试接口,用来供开发人员调试 CPU 的工作状态。JTAG 软件通过该接口控制 CPU 来调试 CPU 以及读写 Flash。
MMU 是存储器管理单元的缩写,是用来管理虚拟内存系统的器件。MMU 通常是 CPU 的一部分,本身有少量存储空间存放从虚拟地址到物理地址的匹配表。此表称作 TLB(转换旁置缓冲区)。所有数据请求都送往 MMU,由 MMU 决定数据是在 RAM 内还是在大容量存储器设备内。如果数据不在存储空间内,MMU 将产生页面错误中断。 MMU 的两个主要功能是将虚地址转换成物理地址,控制存储器存取允许。MMU 关掉时,虚地址直接输出到物理地址总线。 Cortex-M3 处理器采用 ARMv7-M 架构,它包括所有的 16 位 Thumb 指令集和基本的 32 位 Thumb-2 指令集架构。Cortex-M3 支持线程模式和处理模式。在复位时处理器进入 “线程模式”,异常返冋时也会进入该模式,特权和用户(非特权)模式代码能够在 “线程模式” 下运行。出现异常模式时处理器进入 “处理模式”,在处理模式下,所有代码都是特权访问的。μC/OS-II 可以运行在 Cortex-M3 处理器上。
嵌入式操作系统是应用于嵌入式系统,实现软硬件资源的分配,任务调度,控制、协调并发活动等的操作系统软件。它除了具有一般操作系统最基本的功能如多任务调度、同步机制等之外,通常还会具备以下适用于嵌入式系统的特性:面向应用,可以进行检查和移植,以支持开放性和可伸缩性的体系结构;强实时性,以适应各种控制设备及系统;硬件适用性,对于不同硬件平台提供有效的支持并实现统一的设备驱动接高可靠性,运行时无须用户过多干预,并处理各类事件和故障;编码体积小,通常会固化在嵌入式系统有限的存储单元中。
关于串行总线的特点,总结如下: 1、串行总线有半双工、全双工之分,全双工是一条线发一条线收。 2、串行总线适宜长距离传输数据。 3、串行总线按位(bit)发送和接收。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如 IEEE488 定义并行通行状态时,规定设备线总长不得超过 20 米,并且任意两个设备间的长度不得超过 2 米;而对于串口而言,长度可达 1200 米。 4、串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配。 5、串行总线的数据发送和接收可以使用多种方式,中断方式与 DMA 都较为常见。
对照 4 个选项,可以立即看出高速缓存(Cache)对于程序员来说是透明的。