免费智能真题库 > 历年试卷 > 嵌入式系统设计师 > 2014年下半年 嵌入式系统设计师 下午试卷 案例
  第4题      
  知识点:   VME   控制器   总线   并行处理   方案设计   内总线   数据通信

 
阅读下列说明、图和表,回答问题1至问题3,将答案填入答题纸的对应栏内。
【说明】
某公司承接了一个控制系统的项目,由王工负责系统的方案设计。王工的设计方案如图4-1所示。该方案是基于VME总线的多机并行处理系统,由主控制模块作为VME总线的主设备,即总线控制器,负责整个系统的控制与管理;3个数据处理模块作为从设备,负责数据处理与计算;1个I/O模块也作为从设备,负责系统与外部接口之间的高速数据通信。同时,为了简化设计,该系统5个模块均采用同一款VME协议芯片,实现内总线VME总线的连接。

该系统中每个模块的相关信总见表4-1所示。
 
问题:4.1       王工设计采用共享存储器方式,进行多机之间的通信。VME共享存储器的地址空间映射,分为输出窗口和输入窗U两部分。输出窗口实现处理器本地地址空间到VME总线地址空间的映射,输入窗口实现VME总线地址空间到处理器本地地址空间的映射。
    输出窗口空间设置说明:为了每个模块能访问到其他4个模块,在每个模块的处理器木地地址空间中开辟5M空间,映射到VME总线上的5M地址空间。映射关系见表4-2。

    输入窗口空间设置说明:每个模块分配1M的VME地址空间,并将这1M空间映射到处理器本地RAM区域中,专门用于VME通信数据缓冲区。映射关系见表4-3。

    VME总线驱动中,按照上述方式对寄存器进行设置,实现了VME总线共亨存储器工作方式,将对其他模块的操作转化为对处理器本地地址空间访问操作相似的读写操作,并且都采用总线远程写,总线本地读的方式。
    数据处理模块1发送消息到数据处理模块2,它们之间采用1M数据缓冲区的第一个32位作为握手标志。则数据处理模块1访问标志区的总线地址为(1),数据处理模块2访问标志区的总线地址为(2)。
    I/O模块向主控制模块发送控制命令,它们之间采用1M数据缓冲区偏移0x100处作为命令缓冲区。则I/O模块访问命令区的总线地址为(3),主控制模块访问命令区的总线地址为(4)。
 
问题:4.2   如表4-1所示,该系统中采用的处理器有大端和小端两种工作模式。王工设计VME总线上传输的数据全部采用小端方式,那么当处理器通过VME总线发送数据时,需要根据自己的工作模式,对数据进行必要的转换,以符合协议要求。
当I/O模块向主控制模块发送控制命令OxAABBCCDD,那么它写入VME总线的实际数据是(1),当主控制模块向数据处理模块3和I/O模块发送控制命令0x12345678,那么它写入VME总线的实际数据是(2)和(3)。
 
问题:4.3       为了提高数据通信的性能,在进行大数据量通信时,王工设计采用DMA的方式。DMA通信方式能够满足高速VME设备的需求,也有利于发挥CPU效率。该VME协议芯片有两种DMA工作方式:一种是直接方式(Directmode),一种足链方式(Linked—list mode)。在直接方式下,在每次数据传输前,需要驱动程序对DMA控制寄存器进行设置,然后进行DMA传输,并等待传输完成,或者异常错误。直接方式是一种软件和硬件同步工作方式。在链方式下,驱动程序只需要设置命令包。在通信过程中,硬件根据命令包的内容完成传输,并根据链中的下一个命令包,继续传输,直到所有命令包完成或者异常错误。链方式是一种软件和硬件异步工作的方式。
    图4-2是DMA直接方式的流程图,请补全流程图,并将答案填写在答题纸的对应栏中。
 
 
 

   知识点讲解    
   · VME    · 控制器    · 总线    · 并行处理    · 方案设计    · 内总线    · 数据通信
 
       VME
        VME总线是一种通用的计算机总线,结合了Motorola公司Versa总线的电气标准和在欧洲建立的Eurocard标准的机械形状因子。它定义了一个在紧密耦合(closely coupled)硬件构架中可进行互连数据处理、数据存储和连接外围控制器件的系统。经过多年的改造升级,VME系统已经发展的非常完善,围绕其开发的产品遍及了工业控制、军用系统、航空航天、交通运输和医疗等领域。
        VME的数据传输机制是异步的,有多个总线周期,地址的宽度是16、24、32、40或64位,数据线路的宽度是8、16、24、32、64位,系统可以动态的选择它们。它的数据传输方式为异步方式,因此只受制于信号交换协议,而不依赖于系统时钟;其数据传输速率为0~500Mb/s;此外,还有Unaligned Data传输能力,误差纠正能力和自我诊断能力,用户可以定义I/O端口;其配有21个插卡插槽和多个背板,在军事应用中可以使用传导冷却模块。
 
       控制器
        运算器只能完成运算,而控制器用于控制整个CPU的工作,它决定了计算机运行过程的自动化。它不仅要保证程序的正确执行,而且要能够处理异常事件。控制器一般包括指令控制逻辑、时序控制逻辑、总线控制逻辑和中断控制逻辑等几个部分。
        指令控制逻辑要完成取指令、分析指令和执行指令的操作,其过程分为取指令、指令译码、按指令操作码执行、形成下一条指令地址等步骤。
        (1)指令寄存器(IR)。当CPU执行一条指令时,先把它从内存储器取到缓冲寄存器中,再送入IR暂存,指令译码器根据IR的内容产生各种微操作指令,控制其他的组成部件工作,完成所需的功能。
        (2)程序计数器(PC)。PC具有寄存信息和计数两种功能,又称为指令计数器。程序的执行分两种情况,一是顺序执行,二是转移执行。在程序开始执行前,将程序的起始地址送入PC,该地址在程序加载到内存时确定,因此PC的内容即是程序第一条指令的地址。执行指令时,CPU自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单地对PC加1。当遇到转移指令时,后继指令的地址根据当前指令的地址加上一个向前或向后转移的位移量得到,或者根据转移指令给出的直接转移的地址得到。
        (3)地址寄存器(AR)。AR保存当前CPU所访问的内存单元的地址。由于内存和CPU存在着操作速度上的差异,所以需要使用AR保持地址信息,直到内存的读/写操作完成为止。
        (4)指令译码器(ID)。指令包含操作码和地址码两部分,为了能执行任何给定的指令,必须对操作码进行分析,以便识别所完成的操作。指令译码器就是对指令中的操作码字段进行分析解释,识别该指令规定的操作,向操作控制器发出具体的控制信号,控制各部件工作,完成所需的功能。
        时序控制逻辑要为每条指令按时间顺序提供应有的控制信号。总线逻辑是为多个功能部件服务的信息通路的控制电路。中断控制逻辑用于控制各种中断请求,并根据优先级的高低对中断请求进行排队,逐个交给CPU处理。
 
       总线
        计算机系统中的总线(Bus)是指计算机设备和设备之间传输信息的公共数据通道,是连接计算机硬件系统内多种设备的通信线路,它的一个重要特征是由总线上的所有设备共享,因此可以将计算机系统内的多种设备以总线方式进行连接。
               总线的分类
               按照所传输的信号类型可将总线分为数据总线、地址总线和控制总线3类。不同型号的CPU芯片,其数据总线、地址总线和控制总线的条数可能不同。
               .数据总线(Data Bus,DB)用来传送数据信息,是双向的。CPU既可通过DB从内存或输入设备读入数据,也可通过DB将内部数据送至内存或输出设备。DB的宽度决定了CPU和计算机其他设备之间每次交换数据的位数。
               .地址总线(Address Bus,AB)用于传送CPU发出的地址信息,是单向的。传送地址信息的目的是指明与CPU交换信息的内存单元或I/O设备。存储器是按地址访问的,所以每个存储单元都有一个固定地址,要访问1MB存储器中的任一单元,需要给出220个地址,即需要20位地址(220=1M)。因此,地址总线的宽度决定了CPU的最大寻址能力。
               .控制总线(Control Bus,CB)用来传送控制信号、时序信号和状态信息等。其中有的信号是CPU向内存或外部设备发出的信息,有的是内存或外部设备向CPU发出的信息。显然,CB中的每一条线的信息传送方向是单方向且确定的,但CB作为一个整体则是双向的。所以,在各种结构框图中,凡涉及到控制总线CB,均是以双向线表示。
               总线的性能直接影响到整机系统的性能,而且任何系统的研制和外围模块的开发都必须依从所采用的总线规范。总线技术随着微机结构的改进而不断发展与完善。
               在计算机的概念模型中,CPU通过系统总线和存储器之间直接进行通信。实际上在现代的计算机中,存在一个控制芯片的模块。CPU需要和存储器,I/O设备等进行交互,会有多种不同功能的控制芯片,称之为控制芯片组。对于目前的计算机结构来说,控制芯片集成在主板上,典型的有南北桥结构和单芯片结构。与芯片相连接的总线可以分为前端总线(FSB)、存储总线、I/O总线、扩展总线等。
                      南北桥芯片结构
                      北桥芯片直接与CPU、内存、显卡、南桥相连,控制着CPU的类型、主板的总线频率、内存控制器、显示核心等。前端总线(FSB)是将CPU连接到北桥芯片的总线。内存总线是将内存连接到北桥芯片的总线。用于和北桥之间的通信,显卡则通过I/O总线连接到北桥芯片。
                      南桥芯片主要负责外部设备接口与内部CPU的联系,其中,通过I/O总线连接外部I/O设备连接到南桥,例如USB设备、ATA和SATA设备以及一些扩展接口,扩展总线则指是主板上提供的一些PCI、ISA等插槽。
                      单芯片结构
                      单芯片组方式取消了北桥。由于CPU中内置了内存控制器,不再需要通过北桥来控制,这样就能提高内存控制器的频率,减少延迟。还有一些CPU还集成了显示单元,使得显示芯片的频率更高,延迟更低。
               常见总线
               (1)ISA总线。ISA是工业标准总线,只支持16位I/O设备,数据传输率大约是16Mb/s,也称为AT标准。
               (2)EISA总线。EISA是在ISA总线的基础上发展起来的32位总线。该总线定义32位地址线、32位数据线以及其他控制信号线、电源线、地线等共196个接点。总线传输速率达33MB/s。
               (3)PCI总线。PCI总线是目前微型机上广泛采用的内总线,采用并行传输方式。PCI总线有适于32位机的124个信号的标准和适于64位机的188个信号的标准。PCI总线的传输速率至少为133MB/s,64位PCI总线的传输速率为266MB/s。PCI总线的工作与CPU的工作是相互独立的,也就是说,PCI总线时钟与处理器时钟是独立的、非同步的。PCI总线上的设备是即插即用的。接在PCI总线上的设备均可以提出总线请求,通过PCI管理器中的仲裁机构允许该设备成为主控设备,主控设备与从属设备间可以进行点对点的数据传输。PCI总线能够对所传输的地址和数据信号进行奇偶校验检测。
               (4)PCI Express总线。PCI Express简称为PCI-E,采用点对点串行连接,每个设备都有自己的专用连接,不需要向整个总线请求带宽,而且可以把数据传输率提高到一个很高的频率。相对于传统PCI总线在单一时间周期内只能实现单向传输,PCI Express的双单工连接能提供更高的传输速率和质量。
               PCI Express的接口根据总线位宽不同而有所差异,包括X1、X4、X8以及X16(X2模式将用于内部接口而非插槽模式),其中X1的传输速度为250MB/s,而X16就是等于16倍于X1的速度,即是4GB/s。较短的PCI Express卡可以插入较长的PCI Express插槽中使用。PCI Express接口能够支持热拔插。同时,PCI Express总线支持双向传输模式,还可以运行全双工模式,它的双单工连接能提供更高的传输速率和质量,它们之间的差异与半双工和全双工类似。因此连接的每个装置都可以使用最大带宽。
               (5)前端总线。微机系统中,前端总线(Front Side Bus,FSB)是将CPU连接到北桥芯片的总线。需要注意主板和CPU的搭配问题。一般来说,如果CPU不超频,那么前端总线是由CPU决定的,如果主板不支持CPU所需要的前端总线,系统就无法工作。
               通常情况下,一个CPU默认的前端总线是唯一的。北桥芯片负责联系内存、显卡等数据吞吐量最大的部件,并与南桥芯片连接。CPU通过前端总线(FSB)连接到北桥芯片,进而通过北桥芯片与内存、显卡交换数据。FSB是CPU和外界交换数据的最主要通道,因此FSB的数据传输能力对计算机整体性能作用很大,如果没足够快的FSB,再强的CPU也不能明显提高计算机整体速度。
               (6)RS-232C。RS-232C是一条串行外总线,其主要特点是所需传输线比较少,只需三条线(一条发、一条收、一条地线)即可实现全双工通信。传送距离远,用电平传送为15m,电流环传送可达千米。有多种可供选择的传送速率。采用非归零码负逻辑工作,电平≤-3V为逻辑1,而电平≥+3V为逻辑0,具有较好的抗干扰性。
               (7)SCSI总线。小型计算机系统接口(SCSI)是一条并行外总线,广泛用于连接软硬磁盘、光盘、扫描仪等。该接口总线早期是8位的,后来发展到16位。传输速率由SCSI-1的5MB/s到16位的Ultra2 SCSI的80MB/s。今天的传输速率已高达320MB/s。该总线上最多可接63种外设,传输距离可达20m(差分传送)。
               (8)SATA。SATA是Serial ATA的缩写,即串行ATA。它主要用作主板和大量存储设备(如硬盘及光盘驱动器)之间的数据传输之用。SATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。串行接口还具有结构简单、支持热插拔的优点。
               (9)USB。通用串行总线(USB)当前风头正劲,近几年得到十分广泛的应用。USB由4条信号线组成,其中两条用于传送数据,另外两条传送+5V容量为500mA的电源。可以经过集线器(Hub)进行树状连接,最多可达5层。该总线上可接127个设备。USB 1.0有两种传送速率:低速为1.5MB/s,高速为12MB/s。USB 2.0的传送速率为480MB/s。USB总线最大的优点还在于它支持即插即用,并支持热插拔。
               (10)IEEE-1394。IEEE-1394是高速串行外总线,近几年得到广泛应用。IEEE-1394也支持外设热插拔,可为外设提供电源,省去了外设自带的电源,能连接多个不同设备,支持同步和异步数据传输。IEEE-1394由6条信号线组成,其中两条用于传送数据,两条传送控制信号,另外两条传送8~40V容量为1500mA的电源,IEEE-1394总线理论上可接63个设备。IEEE-1394的传送速率从400MB/s、800MB/s、1600MB/s直到3.2GB/s。
               (11)IEEE-488总线。IEEE-488是并行总线接口标准。微计算机、数字电压表、数码显示器等设备及其他仪器仪表均可用IEEE-488总线连接装配,它按照位并行、字节串行双向异步方式传输信号,连接方式为总线方式,仪器设备不需中介单元直接并联于总线上。总线上最多可连接15台设备。最大传输距离为20m,信号传输速度一般为500Kb/s,最大传输速度为1MB/s。
 
       并行处理
        本节主要介绍几种多处理机系统。
        (1)超级标量处理机。在超级标量处理机中,配置了多个功能部件和指令译码电路,采取了多条流水线,还有多个寄存器端口和总线,因此可以同时执行多个操作,以并行处理来提高机器速度。它可以同时从存储器中取出几条指令同时送入不同的功能部件。超级标量机的硬件是不能重新安排指令的前后次序的,但可以在编译程序时采取优化的办法对指令的执行次序进行精心安排,把能并行执行的指令搭配起来。
        (2)超级流水线处理机。超级流水线处理机的周期比其他结构的处理机短。与超级标量计算机一样,硬件不能调整指令的执行次序,而由编译程序解决优先问题。
        (3)超长指令字处理机。超长指令字处理机是一种单指令流多操作码多数据的系统结构,编译程序在编译时把这个能并行执行的操作组合在一起,成为一条有多个操作段的超长指令,由这条超长指令控制计算机中多个互相独立的功能部件,每个操作段控制一个功能部件,相当于同时执行多条指令。
        (4)向量处理机。向量处理机是一种具有向量数据表示、并设置有相应的指令和硬件、能对向量的各个元素进行并行处理的计算机。当进行向量运算时,它的性能要比大型机好得多。向量处理机有巨型计算机和向量协处理机(或称为数组处理机)两种类型,巨型计算机能对大量的数据进行浮点运算,同时它还是可以进行标量计算和一般数据处理的通用计算机。向量处理机一般采用流水线工作,当它处理一条数组指令时,对数组中的每个元素执行相同的操作,而且各元素间是互相无关的,因此流水线不会阻塞,能以每个时钟周期送出一个结果的速度运行。为了存储系统能及时提供数据,向量处理器配有一个大容量的、分成多个模块交错工作的主存储器。为了提高运算速度,在向量处理机的运算部件中可采用多个功能部件,例如向量部件、浮点部件、整数运算部件和计算地址用的地址部件。向量协处理机是专门处理浮点和向量运算的数组处理机,它连接到主机总线上。
        (5)多处理机系统。多处理机具有两个或两个以上的处理机,共享I/O子系统,在操作系统统一控制下,通过共享主存或高速通信网络进行通信,协同求解一个个复杂的问题。多处理机通过利用多台处理机进行多任务处理来提高速度,利用系统的重组能力来提高可靠性、适应性和可用性。多处理机结构具有共享存储器和分布存储器两种不同的结构。具有共享存储器的多处理机中,程序员无数据划分的负担,编程容易;系统处理机数目较少,不易扩充。具有分布式存储器的多处理机结构灵活;容易扩充;难以在各个处理单元之间实现复杂数据结构的数据传送;任务动态分配复杂;现有软件可继承性差;需要设计新的并行算法。多处理机系统属于MIMD系统,与SIMD的并行处理机相比,有很大的差别。其根源就在于两者的并行性的层次不同,多处理机要实现的是更高一层的作业任务间的并行。
        (6)大规模并行处理机。并行处理机有时也称为阵列处理机。并行处理机使用按地址访问的随机存储器,以SIMD方式工作。主要用于要求大量高速进行向量矩阵运算的应用领域。并行处理机制并行性来源于资源重复,把大量相同的处理单元通过互联网连接起来,在统一的控制器控制下,对各自分配来的数据并行完成同一条指令所规定的操作。并行处理机有两种基本结构类型:采用分布式存储器的并行处理结构和采用集中式共享存储器的并行处理结构。分布式存储器的并行处理结构中,每一个处理机都有自己局部的存储器,只要控制部件将并行处理的程序分配至各处理机,它们便能并行处理,各自从自己的局部存储器中取得信息。而共享存储多处理结构中的存储器是集中共享的,由于多个处理机共享,在各处理机访问共享存储器时会发生竞争。因此,需采取措施尽可能避免竞争的发生。MPP是由众多的微处理器(从几百到上万)组成的大规模的并行系统。MPP的出现成为计算机领域中一个研发热点,被用作开发万亿次甚至更高速的巨型机的主要结构。MPP可以采用市场上的出售的RISC处理器,所以有很高的性价比。
        (7)对称多处理机。SMP目前也基于RISC微处理器。它与MPP最大的差别在于存储系统。SMP有一个统一共享主存空间,而MPP则是每个微处理器都拥有自己的本地存储器。
        按多处理机之间连接的紧密程度,多机系统可分为紧耦合系统和松耦合系统两种。
        紧耦合系统又称为直接耦合系统,是指各处理机之间通过互连网络共享内存。紧耦合多机系统由P台处理机、m个存储器模块、d个I/O通道和3个互联网络构成。处理机-存储器网络实现处理机与各存储模块的连接。处理机中断信号网络实现多处理机之间的互连。处理机-I/O互联网络实现处理机与外设的连接。每个处理机可自带局部存储器,也可自带Cache。存储器模块可采用流水工作方式。紧耦合多机系统多用于并行作业中的多任务,一般处理机是同构的。例如,SMP属于紧耦合多机系统。
        松耦合系统又称为间接耦合系统,是指各处理机间通过共享I/O子系统、通道或通信线路实现机间通信,不共享内存。松耦合多处理机由P个处理机、1个通道、1个仲裁开关和消息传送系统。构成每个处理机带有一个局部存储器和一组I/O设备。在仲裁开关的通道中有高速通信存储,用来缓冲传送的信息块。松散耦合多处理机较适合粗粒度的并行计算。例如,MPP属于松耦合多机系统。
 
       方案设计
        系统方案设计包括总体设计和各部分的详细设计。
        .系统总体设计:包括系统的总体架构方案设计、软件系统的总体架构设计、数据存储的总体设计、计算机和网络系统的方案设计等。
        .系统详细设计:包括代码设计、数据库设计、人机界面设计、处理过程设计等。
 
       内总线
        内总线有专用内总线和标准内总线之分。内总线的性能直接影响着整个计算机系统的性能。自计算机发明以来,尤其是微型机诞生之后,内总线的标准已超过百条。常见的内总线标准如下。
        (1)ISA总线。ISA是工业标准总线,它向上与更早的PC总线兼容。ISA总线是在PC总线62个插座信号的基础上,再扩充另一个36个信号的插座而构成的。ISA总线主要包括24条地址线,16条数据线,控制总线(内存读写、接口读写、中断请求、中断响应、DMA请求和DMA响应等),±5V、±12V电源和地线等。
        (2)EISA总线。EISA总线是在ISA总线的基础上发展起来的32位总线。该总线定义了32位地址线、32位数据线以及其他控制信号线、电源线、地线等共196个接点。总线传输速率可达33Mb/s。EISA总线利用总线插座与ISA总线相兼容,插板插在上层为ISA总线信号,插板插在下层便是EISA总线。
        (3)PCI总线。PCI总线是目前微型机上广泛采用的内总线。PCI总线有两种标准:适于32位机的124个信号的标准和适于64位机的188个信号的标准。PCI总线的传输速率至少为133Mb/s,64位PCI总线的传输速率为266Mb/s。PCI总线的工作与处理器的工作是相互独立的,也就是说,PCI总线时钟与处理器时钟是独立的、非同步的。PCI总线上的设备是即插即用的。
 
       数据通信
        通信或数据传输是计算机网络的主要功能之一,用以在计算机系统之间传送各种信息。利用该功能,地理位置分散的生产单位和业务部门可通过计算机网络连接在一起进行集中控制和管理;或将一个大的项目由分散在不同地理位置的生产单位和业务部门分别处理,实现分布式处理;通过数据通信,也可以实现数据信息的远程传输,实现电子邮件的传送,发布新闻消息和进行电子数据交换,极大地方便了用户,提高了工作效率。
   题号导航      2014年下半年 嵌入式系统设计师 下午试卷 案例   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
 
第4题    在手机中做本题