版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章,系统集成芯片 的体系结构,6.1 系统集成芯片的结构,6.1.1 引言 系统集成芯片SOC以电子系统的系统功能为出发点,把系统模型、处理机制、芯片结构、各层次电路直至器件的设计紧密结合起来,在单片或若干芯片上完成整个系统的功能。系统功能集成是SOC的核心技术。 SOC不是以功能电路为基础的分布式系统的综合技术,而是以功能IP核为基础的系统模块和电路综合的技术。IP核是SOC应用的基础。嵌入式系统是SOC的基本结构。,所谓嵌入式系统是计算机应用的一种方式。在嵌入式系统中,计算机硬件和软件结合在一起,构成一个专门的计算装置,这种计算装置设有普通计算机所提供的那些许多便利的用户接口和软件工具
2、,一般不能进行用户再编程。嵌入式系统中软件的开发是通过交叉开发来完成的,即开发环境和实时运行环境是不同的。嵌入式系统工作在与外界发生交互并受到时间约束的环境中,在没有人工干预的情况下进行实时运行。因此,嵌入式系统不再具有普通计算机的形态和功能,是一个大系统或大的电子设备的一部分。,嵌入式系统通常具有如下特点: (1) 完成单一或一组紧密相关的特定功能; (2) 系统作为整个设备的一部分,其运行一般不需要人工干预; (3) 具有高性能和实时处理的要求; (4) 具有良好的电磁兼容性。 SOC以嵌入式系统为核心,集软、硬件于一体,并追求产品系统最大包容的集成,是微电子领域IC设计的必然趋势和最终目
3、标,也是现代电子系统设计开发的最佳选择。 SOC是一种系统级集成芯片,其系统功能可以由全硬件电路完成,也可以由硬件和软件协同完成。,6.1.2 系统集成芯片的硬件结构,目前,系统集成芯片可分为两种类型 一种是专用的SOC芯片,这类芯片是专用集成电路ASIC(Application Specific Integrate Circuits)向系统级集成的自然发展。 另一类是通用类型的SOC芯片,在这类SOC上,将绝大部分部件,如RISC处理器,DSP、RAM、接口电路等集成在芯片上,同时提供用户设计所需要的可编程逻辑资源和软件编程所需的资源。 无论是专用SOC还是通用SOC,它们在结构上都有相似的
4、特点,都是以嵌入式系统结构为基础,集软、硬件于一体的系统级芯片。,通用类型SOC的结构,专用硬件,嵌入式处理器,片上RAM和ROM,测试电路,接口电路,加密逻辑,嵌入式处理器 Reduced Instruction Set Computer (RISC)和Complex Instruction Set Computer(CISC) CISC具有如下显著特点: (1) 指令格式不固定,指令长度不一致,操作数可多可少; (2) 寻址方式复杂多样,以利于程序的编写; (3) 采用微程序结构,执行每条指令均需完成一个微指令序列; (4) 每条指令需要若干个机器周期才能完成,指令越复杂,花费的机器周期越
5、多。,CISC 的缺点 CISC所包含的为数众多的指令,其使用频度并不平衡。 微指令的结构限制了CISC CPU速度的进一步提高。 CISC结构不利于并行处理方法。 6.1.3 嵌入式软件 有些SOC需要嵌入式实时操作系统(Real Time Operational System,简称为RTOS)的支持。 嵌入式实时操作系统是计算机操作系统的技术和设计理念在嵌入式系统中的应用。,6.2 SOC中的嵌入式精简指令集处理器RISC,6.2.1 概述,式中,P是微处理器的性能, I是程序的指令集合,C为每 条指令的平均执行周期数, f为微处理器工作频率。,对于一个微处理器的性能,可以由下式表示:,6
6、.2.2 RISC的定义与特点,RISC这个术语是由美国California大Berkelay分校的David Patterson于1980年提出的,到了二十世纪九十年代,RISC计算机获得了广泛的应用。然而,RISC又是一种模糊的术语。严格地说,RISC既不是一种体系结构,也不是一种实现结构,而只是一种计算机设计的基本准则,或一种设计理想。1990年,Micheal Slater 18提出如下定义: RISC处理器所具有的指令系统应有利于流水线处理器的高效执行,并有利于优化编译器的代码生成。,RISC处理器具有如下特点:,1.格式简单、长度固定的指令系统 2. 短周期时间 3. 单周期执行指
7、令 4. Load(取)/Store(存)结构 5. 硬连线控制 6. 大寄存器堆(Register file) 7. 哈佛(Harvard)总线结构 8. 高效的流水线操作 9. 延时转移,10. 重迭寄存器窗口技术,输入,局部,输出,W1,输入,局部,输出,W2,输入,局部,输出,W3,在RISC处理器中,寄 存器堆采用窗口式结 构,这种结构特别适 合于过程调用,有利 于参数传递。,11. 优化编译器,二十世纪70年代中期,Stanford大学在研制MIPS(Microprocessor without Intel locked Pipeline Stages)处理器时,即开始从事对MIP
8、S RISC编译器的优化编译技术的研究,以解决如何有效地利用RISC的硬件资源(如并行处理技术、寄存器堆、高速缓存等),充分挖掘程序的并行性;更合理地利用RISC体系结构所定义的指令系统,减少执行指令的数量;最大限度地利用通用寄存器,减少高速缓存和主存访问等。MIPS编译器的优化技术取得实质性的进展,并逐步成为世界上最先进的优化编译器。 RISC处理器的上述特点并不排斥执行复杂功能的指令(例如浮点运算),然而只有那些对系统功能产生净增益的功能用硬件实现(从而包含这类指令),其余部分都用软件实现。所谓“精简”,并不是简单地减少,而是保留经验证的能提高计算机性能的指令。RISC设计的基本目的在于使
9、计算机结构更加简单、更加合理、更加有效。,6.2.3 RISC的指令特点 6.2.4 RISC的并行处理技术 1. 流水线处理技术,取指,译码,执行,写结果,取指,译码,执行,写结果,取指,译码,执行,写结果,取指,译码,执行,写结果,取指,取指,取指,流水线操作的处理器硬件相应比较复杂,同时,对指令 系统的设计有一定的要求,如指令格式应简单,指令长度应 相同,指令的执行时间应一致等。,超流水线技术 提高流水线处理效率的另一个方法是缩短机器周期。一般是将一个机器周期划分为若干个子周期,每个子周期均发射一条新的指令,亦即每个机器周期发射多条指令,从而提高计算机的性能。这种处理方式称为超流水线处理
10、技术。,取指1 取指2,译码 执行,取指3 取指4,存贮1 存贮2,译码 执行,检查标志 写结果,存贮3 存贮4,检查标志,子周 期1,子周 期2,2. 超标量处理技术 超标量处理同标量处理一样,执行非向量化,但又像向量机那样,可以处理多个操作数。超标量处理都采用流水线操作方式,一次发射多条指令。,取指,译码,执行,写结果,取指,取指,译码,执行,写结果,取指,取指,译码,执行,写结果,取指,取指,译码,执行,写结果,取指,取指,译码,执行,写结果,取指,取指,译码,执行,写结果,取指,取指,译码,执行,写结果,取指,译码,执行,写结果,3. VLIW处理技术 VLIW Very Long I
11、nstruction Word 相当长的机器指令字。VLIW处理器的指令字长可高达几百比特,而且指令所包含的字段是全正交的,彼此互不相关,故可控制多个功能部件。 多执行部件,全局多端口寄存器堆,功能 部件,功能 部件,功能 部件,功能 部件,指令 定序器,指令存储器,6.2.5 RISC/DSP结构,在面向数字信号处理或者高速数据处理应用的SOC中,往往将RISC处理器和DSP组合在一个芯片上,构成RISC/DSP结构。这种结构有两种形式。一种是将独立的RISC处理器与独立的DSP集成在一个芯片上,两者的指令流和数据流分开。另一种形式是将DSP按照RISC原则进行重新设计,使两者的指令流甚至数
12、据流全部统一。 在数字信号处理中,最基本的运算是离散卷积,其基本的运算形式为:,DSP的基本运算是 累加乘。,CPU核与DSP各自独立,CPU核与DSP核同指令流 但数据地址各自独立,CPU与DSP同指令流、同地址,TMS320C8X是TI于1995年推出的采用RISC/DSP结构的多处理器数字信号处理器芯片。在TMS320C80上集成了4个可并行处理的高性能DSP,一个RISC处理器、一个传输控制器、一个视频控制器和50K字节的高速SRAM,构成一个高性能的集成系统芯片。RISC MP的性能和DSP0DSP3的高速并行运算的完美结合,使得TMS320C80具有强大的功能,每秒可执行20亿次类
13、似RISC处理器的操作(2BOPs),可实时实现新一代的视频压缩和解压,广泛应用于会议电视、可视电话、图象和视频信号处理、二维和三维图形加速、雷达和声纳信号处理等场合。,TMS320C80的结构,DSP1 G L I,DSP2 G L I,DSP3 G L I,DSP4 G L I,RISC MP C/D I,VC,Crosbar,50KB SRAM,TAP,传 输 控制器,存储器,TMS320C80的主要特点,多处理器结构。TMS320C80内部集成了五个处理器,四个DSP和一个主处理器MP。这些处理器可实现多指令、多数据(Multiple-Instruction Multiple-Data
14、,MIMD)操作,相互之间通过纵横开关(crosbar)网络和 片内RAM互连,从而可以共享片上资源,并提高操作速度.,并行DSP TMS320C80上集成了4个高性能的DSP,这4个DSP既可独立运行,也可并行工作,采用VILW技术,指令字长64位,可以在单个周期内执行多个操作。每个处理器具有专用的高速指令缓存和专用的数据RAM。 每个DSP具有4个主要功能单元,即1个程序控制器、1个数据单元和2个地址单元。,RISC主处理器 RISC处理器字长32位 31个32 位的寄存器 浮点运算单元(FPU),可以实现32位的单精度或64位双精度浮点运算 传输控制器 相当于智能DMA控制器,使TMS3
15、20C80可以以每秒400M字节的速度与外部交换数据。 提供了多种存储器的操作,支持8至64位数据传输,存储器Crossbar结构 TMS320C80内的处理器通过纵横开关网络Crossbar与片内50K字节的SRAM进行数据交换,使片内处理器可共享片内RAM。Crossbar在每个时钟周期内可进行5次取指和10次并行数据访问,传输速率达每秒4.2G字节。 视频控制器VC 视频控制器具有2个可编程的帧定时器,可按水平或垂直格式同时捕获和显示图象。,TAP IEEE1149.1测试口。,6.2.6 RISC核的设计,RISC核的设计原则: (1) 模块化:若需加入新的指令,只需要修改相关的部分,
16、系统结构不应变化。 (2) 可扩展性:所有的数据结构和接口应能方便加入新的模块。 (3) 可综合性:处理器核的描述应该能够综合,以得到实际电路的实现。 (4) 可测试性:处理器核的设计应该便于进行系统测试和性能分析。 (5) 分布性:处理器的控制设计成分布式控制,便于指令集扩展和处理器适应新的应用要求。分布式控制主要负责流水级管理和每个流水级之间的状态通信。,6.3 嵌入式处理器ARM的体系结构,6.3.1 概述,ARM处理器的性能及工作速度发展概况,性能,6.3.2 ARM7系列处理器,ARM7系列处理器,ARM7TDMI,ARM7TDMI -S,ARM7EJ,ARM720T,ARM7核 A
17、RMv4T Thumb指令集 嵌入式ICE-RT ETM7接口,ARM7核 ARMv4T Thumb指令集 嵌入式ICE-RT ETM7接口,ARM7核 ARMv5TEJ Thumb指令集 嵌入式ICE-RT ETM9接口 Jazelle扩充 DSP扩充,ARM7核 ARMv4T Thumb指令集 嵌入式ICE-RT ETM7接口 MMU 8KB Cache AHB接口,上述处理器产品中的后缀的意义如下: T 具有16位压缩指令集Thumb。在ARMv4中采用Thumb v1版,在ARMv5中采用Thumb v2版。 D 支持在片上调试(On Chip Debug),允许处理器响应调试暂停请求
18、。片上调试,又称为OCD,是CPU芯片提供的程序调试功能,该方式的主要优点是不占用目标机的资源,调试环境和最终程序运行环境基本一致,支持软硬件断点和跟踪。目前常用的OCD有BDM(Background Debugging Mode)方式,JTAG(Joint Tese Action Group)方式和OnCE(On Chip Emuiation,其实质是BDM和JTAG的一种融合方式),其中JTAG是主流的OCD方式,ARM、MIPS和Power PC等嵌入式处理器都采用不同种类的增强JTAG方式。 M 增强型乘法器,可以执行32bit32bit得到64bit乘积的乘法运算和32bit32bi
19、t+64bit得到64bit结果的累加乘运算。 S 可综合的(Synthesizable)核。,嵌入式ICE(In Circuit Emulating)硬件逻辑,支持嵌入式软件调试时的软硬件断点的设置。 E 增强型DSP指令。在这类处理器的指令集中,扩展了典型的数字信号处理所需的DSP指令。 J Jazeller使能功能,允许直接执行Java代码。 1ARM7处理器核 ARM7处理器核采用三级流水线操作,三级流水线级分别为:取指、译码和执行。 保存处理器状态的寄存器堆 桶式移位器 算术逻辑运算单元 地址寄存器和地址增量器 高性能乘法器 数据寄存器 指令译码器和相关的控制逻辑,ARM7处理器核的
20、逻辑框图,A31:0,ABE,ALE,D31:0,A L U 总 线,PC,A 总 线,B 总 线,地址增 量器总 线,2. ARM7TDMI的组织,其它信号,扫描链,ARM7TDMI 处理器的接 口信号,时钟控制信号,中断控制信号,总线控制信号,调试控制信号,存储器接口信号,存储器管理(MMU)接口信号,边界扫描(JTAG)控制信号,边界扫描扩展控制信号,协处理器接口,3ARM720T处理器,ARM720T是将ARM7TDMI与8KB混合数据指令Cache、写缓冲 器和存储器管理单元MMU(Memory Management Unit)集成在 一个单片上的32位通用处理器。 ARM720T带
21、有嵌入式跟踪宏单 元ETM(Embedded Trace Macrocell)接口,允许连接标准的 ETM7宏单元。,虚拟地址总线,物理 地址,内部数据总线,AMBA AMBA 地址总线 数据总线,JTAG接口 ETM接口 协处理器 接 口,6.3.3 ARM9系列处理器,ARM9系列处理器是高性能的处理器单元,主要品种有ARM920T和ARM922T。 ARM9系列处理器的内核是ARMv4T体系,采用数据存储器和指令存储器分离的哈佛结构和五级流水线,处理器的总体性能大为提高,其指令执行速度可达1.1MPIS/MHz。 ARM9系列处理器具有存储器管理单元MMU、独立的高速数据缓存和指令缓存。
22、,ARM9系列处理器的组成 ARM920T ARM922T MMU MMU 16KB指令Cache 8KB指令Cache 16KB数据Cache 8KB数据Cache 嵌入式ICE 嵌入式ICE ETM9接口 ETM9接口 ARMv4T ARMv4T ARM9核 ARM9核 Thumb扩充 Thumb扩充 AHB接口 AHB接口,A R M 9 T D M I 五 级 流 水 线,下一个pc,取指,译码,寄存 器移 位执 行,缓冲 数据,回写,6.3.4 ARM9E系列处理器,继ARM9系列处理器之后,ARM公司于2001年又推出了ARM9E系列处理器。 ARM9E是ARMv5TE 体系接构,
23、采用五级流水线和哈佛结构,支持VFP9浮点协处理器,工作速度与ARM9相同,为1.1MPIS/MHz。 ARM9E核具有一个3216 bit的单周期累加乘(Multiply-Accumulate,简称MAC)单元,以支持DSP扩充指令。 此外,ARM9E核还有一个紧耦合存储器(Tightly Coupled Memory,简称TCM)接口,可使存储器以最高的处理器速度运行。 ARM9E系列包括ARM926EJ-S、ARM946E-S、ARM966E-S、ARM968E-S和ARM996H-S等处理器宏单元。,ARM9E系列处理器的组成 ARM926EJ-S ARM946E-S ARM966E-
24、S 嵌入式ICE-RT 嵌入式ICE-RT 嵌入式ICE-RT ETM9接口 ETM9接口 ETM9接口 ARMv5TEJ ARMv5TE ARMv5TE ARM9E核 ARM9E核 ARM9E核 DSP扩充 DSP扩充 Thumb扩充 Thumb扩充 Thumb扩充 MMU MPU DMA TCM接口 TCM接口 TCM接口 可变长度Cache 可变长度Cache Jazelle扩充 双AHB接口 AHB接口 AHB接口,ARM968E-S ARM996HS 嵌入式ICE-RT 嵌入式ICE-RT ETM9接口 ETM9接口 ARMv5TE ARMv5TE ARM9E核 ARM9E核 DSP
25、扩充 Thumb扩充 Thumb扩充 DMA MPU TCM接口 AHB接口 双AHB接口,ARM946E-S的系统结构,6.3.5 ARM10系列处理器,ARM10是ARM公司于2002推出的高性能处理器,ARM10属于ARMv5TE体系,与ARM9E相同,然而整体性能要比ARM9E高得多。 ARM10处理器核采用哈佛结构和六级流水线,处理器核内部数据总线为64位,以及双64位的AHB总线接口、并行的Load/Stroe单元,极大地提高了ARM10数据处理能力和工作速度。ARM10的指令执行速度为1.25MPIS/MHz。 ARM10处理器核支持VFP10浮点协处理器。 ARM10的流水线增
26、加了转移预测功能,以更为有效地组织流水线操作。ARM10按每个周期两条指令的速率取指,以便转移预测单元的识别,因而在ARM9TDMI 五级流水线的基础上增加了“发射“,成了六级流水线。 ARM10系列包括ARM1020E、ARM1022E和ARM1026EJ-S三个处理器宏单元。,ARM10TDMI的六级流水线,ARM1026EJ-S的系统结构,ARM10处理器的组成,ARM1020E ARM1022E ARM1026EJ-S MMU MMU MMU或MPU 双32KBCache 双16KBCache 可变长度Cache 嵌入式ICE-RT 嵌入式ICE-RT 嵌入式ICE-RT ETM10接
27、口 ETM10接口 ETM10接口 DSP扩充 DSP扩充 DSP扩充 ARMv5TE ARMv5TE ARMv5TE ARM10E核 ARM10E核 ARM10E核 Thumb扩充 Thumb扩充 Thumb扩充 双64位AHB 双64位AHB 双64位AHB Jazelle扩充,6.3.6 ARM11系列处理器,2001年10月,ARM公司颁布了ARM嵌入式处理器体系的最新版本ARMv6,2002年以后,先后推出了ARM11系列的各款处理器,ARM11是ARM家族中性能最强的处理器。 ARMv6的体系中,处理器内核、指令Cache和数据Cache之间,以及内核与协处理器之间的数据通道为64
28、bit,允许在单个周期发射两条指令,大大提高了数据的传送速率,同时又避免了64位处理器所带来的功耗和成本的大幅度上升。,ARM v6的指令集增加了大量支持多媒体的指令,使ARM11适合于音频和视频信号处理及三维图象信号处理。 ARM11支持多处理器系统,个别产品还集成了浮点处理器(以后缀F表示)。 ARM11的MMU和TCM可以支持存储器的高速存取。 ARM11系列包括ARM1136J(F)-S、ARM1156T2(F)-S和ARM1176JZ(F)-S。后缀T2表示Thumb-2指令集。,ARM11系列采用8级流水线操作,个别处理器采用9级流水线(例如ARM1156T2(F)-S),Load
29、-Store单元和算术运算单元分别具有独立的流水线,并具有转移预测和前向数据通道,可以有效地提高流水线操作的效率。,ARM1156T2(F)-S的系统结构,ARM11系列处理器的组成,ARM1136J(F)-S ARM1156T2(F)-S ARM1176JZ(F)-S MMU MPU MMU+TrustZone 可变长度Cache 可变长度Cache 可变长度Cache TCM TCM TCM 嵌入式ICE-RT 嵌入式ICE-RT 嵌入式ICE-RT ETM11接口 ETM11接口 ETM11接口 DSP扩充 DSP扩充 DSP扩充 ARMv6 ARMv6 ARMv6 ARM11核 ARM
30、11核 ARM11核 Thumb扩充 Thumb-2扩充 Thumb扩充 5AHB 3AXI 4AXI Jazelle扩充 Jazelle扩充,6.4 MIPS32 4Kc嵌入式处理器,MIPS4K系列嵌入式处理器是又一类广泛应用的RISC处理器。二十世纪70年代中期,斯坦福大学最早开始研究RISC处理器,提出了MIPS(Microprocessor without Intel locked Pipeline Stages)处理器体系结构。 1999年,MIPS公司颁布了MIPS32和MIPS64 RISC处理器架构标准。 32位处理器核包括MIPS32 4K系列、MIPS32 4KE系列、M
31、IPS32 4KS系列、MIPS32 24K系列、MIPS32 24KE系列和MIPS32 34K系列,此外,还包括MIPS32 4Kc硬核。 64位处理器包括MIPS64 5K系列和MIPS64 20Kc核。,型号后缀的意义:,E 增强型 4KE MIPS32第二版的增强型, 24KE DSP应用增强型。 M 多核,适用于多核系统。 Sd 加密技术。 c 基本核。 f 浮点处理硬件 p 微功耗。 m 快速乘法器。,6.4.2 MIPS32 4Kc嵌入式处理器,MIPS32 4K各系列处理器采用五级流水线,MIPS32 24K采用八级流水线,MIPS32 34K采用九级流水线。 MIPS32
32、4Kc是MIPS32 4K处理器家族中应用最为广泛的IP硬核,其指令系统包括MIPS II 全指令集,并具有累加乘指令和乘减指令。 MIPS32 4Kc完成3232bit的累加乘指令需要两个流水线周期,完成3216bit的累加乘指令只需要一个流水线周期。 MIPS32 4Kc的高速缓存包括指令缓存(ICache)和数据缓存(DCache),高速缓存的大小在016K字节的范围内可构造。 MIPS32 4Kc中的硬件模块分为必须部分和可选部分:,MIPS32 4Kc 核框图,片上 总线,必 须 单 元,执行单元EU(Execution Unit);,乘除单元MDU(Multiply/Divide
33、Unit);,存储器管理单元MMU(Memory Management Unit);,总线接口单元BIU(Bus Interface Unit);,必 须 单 元,转换后援缓冲器TLB(Tranlation Lookaside Buffer);,Cache控制器 ;,系统控制协处理器CP0;,电源管理。,可 选 单 元,指令高速缓存I Cache;,数据高速缓存D Cache ;,便笺式(Scratchpad)RAM ;,增强型JTAG(EJTAG)控制器。,执行单元EU :,执行单元EU是MIPS32 4Kc核中的一个重要的指令执行部件,其中包括: 算术逻辑运算单元ALU; 一个计算数据地址
34、的32位加法器; 计算下条指令地址的指令地址单元; 分支确定和分支地址计算逻辑; 前导0(Leading Zero)和前导1(Leading One)检测单元; Load 对齐逻辑; Store对齐逻辑; 移位对齐逻辑等硬件逻辑单元。,乘除单元MDU,MDU是完成乘法、乘累加、乘减和除法运算的逻辑单元,MDU由一个3216bit的布思乘法器、一个累加寄存器、一个除法状态机和一些必要的多路选择器以及控制逻辑组成。 1616bit和3216bit乘法运算只需一次通过乘法器即可完成,3232bit乘法运算需二次通过乘法器才可完成。4Kc核MDU中的除法采用加减交替法实现。 为了不影响主流水线的执行,
35、MDU具有独立的流水线,该流水线与主流水线并行操作。,系统控制协处理器,MIPS 4Kc定义了4个系统控制协处理器(System Control Coprocessor)CP0、CP1、CP2和CP3。CP0在处理器核内,支持虚拟存储器、异常管理,处理器核与用户之间的切换,提供系统的诊断控制和错误恢复机制,并控制Cache系统。CP1保留给浮点处理单元FPU,CP2用于专门的实现,CP3保留给MIPS64体系。,存储器管理单元MMU,4Kc核的存储器管理单元MMU是执行单元EU和Cache之间的接口,是一个全功能存储器管理单元。4Kc核的MMU用转换后援缓冲器TLB实现虚拟地址到物理地址的转换
36、。 4Kc核的TLB由两种转换后援缓冲器组成。一种是16-双页目全关联转换后援缓冲器,称为JTLB(Joint TLB),JTLB具有16对奇页目和偶页目,每页的大小从4K字节到16M字节,其作用是将32个虚拟页目映射到对应的32位地址中,以形成物理地址。另一种TLB是3-页目转换后援缓冲器,一共有二个3-页目转换后援缓冲器,一个是指令关联转换后援缓冲器,称为ITLB;另一个是数据关联转换后援缓冲器,称为DTLB。,虚拟地址转换,总线接口单元BIU,总线接口单元BIU控制外部接口信号,并具有一个32字节的写缓冲器,这个缓冲器按双16字节缓冲器的方式组成。其中一个是外部接口缓冲器,存放当前正在外
37、部总线上传送的数据。另一个缓冲器存放处理器累加的数据。如果外部接口缓冲器的数据尚未写入存储器,则处理器停顿,直到存储器写完成,之后,存放在累加数据缓冲器的数据才被传送到外部接口缓冲器。,电源管理,4Kc核的电源管理具有多种功能,包括4Kc低功耗设计,有源电源管理和低功耗工作模式。 4Kc核的低功耗工作模式有二种,一种是系统协处理器CP0控制的寄存器控制低功耗模式,另一种是执行WAIT指令控制的指令控制低功耗模式。,MIPS 4Kc核的可选单元,片上指令Cache和数据Cache 片上指令Cache和数据Cache的最大容量均为16KB,可按14路组关联的方式构造。 指令Cache和数据Cach
38、e中的一路均可用便笺式RAM替代。 便笺式RAM是一种用户定义的存储器,可以是RAM、ROM或存储器映射的寄存器组。便笺式RAM的接口与CacheRAM稍有不同,便笺式RAM增加了几比特索引(Index),使得便笺式RAM的寻址由4 KB扩展到1MB。,EJTAG 增强型JTAG接口简称为EJTAG,MIPS 4Kc的EJTAG调试接口在系统协处理器CP0中增加了一组调试寄存器:DEBUG、DEPC(Debug Exception Program Counter)和DESAVE(Debug Exception Save)。 DEBUG寄存器用于单步调试置位和存储产生调试异常的原因。 寄存器DE
39、PG用于保持调试异常产生的地址。 寄存器DESAVE可以保存用于调试异常处理所用的通用寄存器的内容。若需退出调试模式,可执行DERET(Debug Exception Return)指令。,EJTAG的硬件断点分为指令断点和数据断点两类,指令断点设置在CPU和指令Cache之间总线的虚拟地址值上,中断发生在指令操作码发射的时刻。数据断点的设置与指令断点类似,中断发生在执行Load/Store指令时数据传送的时刻。,MIPS32 4Kc的流水线,MIPS32 4K系列处理器均采用五级流水线,即取指(Instraction)、执行(Execution)、数据存储器访问(Memory)、对齐(Ali
40、gn)和回写(Write back)五个阶段。,I E M A W,取指段 又称为I段。在此阶段从指令缓存器中读取指令,并且I-TLB进行虚拟地址到物理地址的转换。 执行段 又称为E段。在此阶段完成下述操作:从寄存器堆中取操作数;ALU单元执行算术运算或者是逻辑运算指令;ALU单元计算Load或者Store指令需要的虚拟地址;对Branch或者跳转(JMP) 指令,ALU决定是否跳转并且计算出跳转的地址;指令逻辑选择下条指令地址;乘法指令或除法指令开始执行。 数据存储器访问段 又称为M段。在此阶段完成下述操作:算术运算或逻辑运算执行完毕;读取数据缓存的数据,D-TLB为Load或者Store指
41、令进行虚实地址转换;完成3216bit或1616bit乘法指令,并在下一个周期停顿流水线,以便完成加法;3232bit乘法指令在这个周期完成第一次阵列加法,并停顿流水线二个周期,以便完成最终的乘法运算;除法指令在这个周期开始停顿流水线32个周期,直到除法指令最终完成。,对齐段 又称为A段。在此阶段完成下述操作:由独立的对齐逻辑将要写入寄存器堆的数据按字长作对齐处理;1616bit或3216bit乘法指令进行加法操作。 回写段 又称为W段,在此阶段将结果写入寄存器堆。,MIPS 4Kc核的接口信号,MIPS 4Kc 核的接 口信号,系统接口信号,时钟信号,复位信号,电源管理,中断信号,构造控制(
42、配置),外部总线接口信号,EJTAG接口信号,TAP控制器接口信号,调试中断,调试模式,器件标识码(ID)信号,系统实施功能信号,性能监视接口信号,扫描接口信号,6.5 SOC的互连机制,6.5.1 概述 在SOC的设计规化中,如何将片上数量众多、功能各异的功能模块互连,合理解决各模块之间的通信问题,是SOC系统设计的重要工作。 在计算机系统中,广泛采用各种系统总线,实现各功能模块之间的通信,计算机系统的这一设计方法很自然地被借鉴于SOC的系统设计。 传统的微机总线缺乏对在一片硅片上用于IP核集成应具有的高性能、低功耗、易扩充、易互连等特性的支持。 SOC片内可以提供丰富的连线资源,总线宽度几
43、乎不受限制;总线的布线可以根据需要采用不同的结构,可以是并行总线,也可以采用交叉开关,布线资源灵活,从而可以获得良好的系统功能。,就IP核互连的形式而言,主要有共享总线、点对点的连接及多总线几种方式,带宽、时延、数据吞吐率及功耗通常是几个需主要考虑的因素。 增加总线的宽度、提高总线的时钟、及采用多总线方案可以解决带宽、时延问题。 在基于总线的互连机制中,经常需要进行总线仲裁,总线仲裁方法有多种。总线仲裁实现方法最为简单的是总线循环占用法,各主部件分时循环占用总线;另外还广泛采用从部件仲裁 (Slave-side arbitration)的方案,在从部件需要数据传送时占有总线,有利于提高总线的利
44、用率。对于流水线传送较多的情况,如何保证读写的流水线执行以减少时延也是总线仲裁考虑的一个重要因素。,由于片上总线是SOC系统设计的关键技术之一,近几年来,许多公司都推出了自己的片上总线,比较有影响力的有ARM公司的AMBATM(Advanced Microcontroller Bus Architecture),IBM公司的CoreConnect,Silicore Colt. 公司的WISHBONE,开放核心协议国际联盟(OCP-IP)的OCP(Open Core Protocol)总线等。 与基于总线的互连机制不同的是基于虚拟元件接口的互连机制。虚拟元件接口(Virtual Componen
45、t Interface,简称VCI)标准是由虚拟插件接口联盟VSIA (Virtual Socket Interface Alliance,简称VSIA)的片上总线开发工作组提出的,其目的是为了对不同电路通信接口协议的标准化,改善总线协议机制对IP核的设计重用的限制。,VCI就是在总线的基础上基于标准的IP接口思想来解决IP核的复用和系统集成。 VCI的基本特征是一类基于地址映射(或存储器映射)的点到点通信协议。发起方(initiator)和目标方(target)都是固定的,发起方发出一个请求,目标方作出响应。基本VCI(Basic VCI,简称BVCI)接口采用分裂协议,即请求与响应的时序是
46、完全分开的。 主发起方能够发出许多的请求,无需等待每个请求的响应。这种协议对于请求发起与响应到达之间的连接不作任何的规定。唯一被规定的是,响应的顺序必须与请求的顺序相一致。 按照虚拟元件接口的互连策略,IP开发者可以采用独立于总线协议的IP接口规范,而不必关心将来目标系统的情况下独立地开发自己的可复用的IP核。,6.5.2 AMBA总线,AMBA总线规范是由ARM公司推出的一种用于高性能嵌入式微处理器设计的片上总线标准,由于AMBA总线的开放性和其本身的高性能,以及由于ARM处理器的广泛应用,AMBA已成为SOC设计中使用最广泛的总线标准。 目前AMBA 总线规范的版本为3.0,它定义了三组不
47、同的总线:AMBA高性能总线AHB (Advanced High-performance Bus),AMBA高性能系统总线ASB (Advanced System Bus)和AMBA 高性能外设总线APB (Advanced Peripheral Bus)。 AHB作为高性能的系统中枢总线驱动速度较快的设备,支持突发模式的数据传送和事务分隔,并支持流水线操作。 APB则是作为传送速度较低的外围设备总线,驱动速度较慢的设备。,AHB、ASB、APB的主要特性,AHB ASB APB 高性能; 高性能; 低功耗; 流水线操作; 流水线操作; 地址锁存和控制; 支持多个主模块 支持多个主模块;适用于
48、品种繁多 (最多16个模块); 的各类接口; 支持突发传输; 支持分段传输;,典型的AMBA构架,AHB或ASB总线,APB总线,AHB的特性 :,单个时钟边沿操作;,非三态的实现方式;,支持突发传输;,支持分段传输;,支持多个主模块(最多16个模块);,可配置32位128位总线宽度;,支持字节、半字和字的传输。,总线内部连接,AMBA AHB总线协议采用一种中央多路选择器的内部连接方案。总线上的所有主设备给出操作地址和控制信号,总线控制器通过这些信号判断操作目标和操作类型,并由总线仲裁器(Arbiter)决定哪个主设备(Master)的操作地址和控制信号被送到所有从设备(Slave)。此外,
49、需要一个中央解码器(Central decoder)负责读数据多路选择器(Read data multiplexor)和响应信号多路选择器(Response signal multiplexor)的控制。中央解码器给出传输中从设备所需的信号。,AHB总线的互连,AHB 系统由主模块(Master)、从模块(Slave)和基础结构(Infrastructure)3部分组成,整个AHB总线上的传输都是由主模块发出,由从模块负责回应。 基础结构则由仲裁器(arbiter)、主模块到从模块的多路器、从模块到主模块的多路器 、译码器、虚拟从模块、虚拟主模块等组成。,AMBA AHB概述,主设备开始一个A
50、MBA AHB传输前,必须得到总线访问权。得到访问权的过程是从主设备向仲裁器给出一个请求信号开始的,仲裁器随后将判断主设备何时得到访问权。 主设备得到访问权后,通过给出操作地址和控制信号开始一次AMBA AHB传输。这些信号给出了操作目标地址、信号方向、传输位宽以及当前传输是否是一次突发式传输等信息。 一次AMBA AHB传输包括两个阶段: 地址阶段:在单时钟周期内给出地址和控制信号 数据阶段:在一个或多个时钟周期内传输数据,AHB总线的接口信号,AHB总线的接口信号,HCLK 总线时钟; HRESETn 复位,低电平有效; HADDR31:0 32bit地址总线; HTRANS1:0 当前传
51、送的类型。 HWRITE 高电平表示写传送,低电平表示读传送。 HSIZE2:0 当前传送的长度。 HBURST2:0 指示当前是突发传输模式。 HPROT3:0 执行保护的等级。 HWDATA31:0 写数据总线。,HSELx 译码器输出的从模块选择信号。 HRDATA31:0 读数据总线。 HREADY 从模块发出的准备就绪信号,高电平表示传送结束,低电平表示传送尚未结束,需要延长传送周期。 HRESP1:0 从模块发出的传送响应信号。 HBUSREQx 主模块发出的总线请求信号。 HLOCKx 主模块发出的锁传送信号。 HGRANTx 仲裁器发出的总线授予信号。 HMASTER3:0 仲
52、裁器发出的被授予总线控制权的主模块的编号。 HMASTLOCK 仲裁器发出的锁存序列信号。 HSPLITx15:0 从模块发出的分离的请求完成信号。,AHB总线主模块接口,AHB总线从模块接口,AHB总线仲裁器接口,AHB基本传输,在AHB总线上,一次完整的传输可以分成两个阶段:地址传送阶段与数据传送阶段。地址传送阶段传送的是地址与控制信号,这个阶段只持续一个时钟周期,在HCLK 的上升沿数据有效,所有的从模块都在这个上升沿采样地址信息。 数据传送阶段传送的是读或写的数据和响应信号,这一阶段可以持续一个或几个时钟周期。当数据传送无法在一个时钟周期完成时,可以通过HREADY 信号来延长数据传送
53、周期,HREADY信号为低电平时,表示传输尚未结束,于是就在数据传送阶段中加入等待周期,直到HREADY信号为高电平为止。,AHB基本传输过程,AHB带有等待的传输过程,AHB总线流水线操,传送类型,AHB的数据处理传送方式有4种类型,由AHB总线接口信号HTRANS定义:,HTRANS1:0 传送类型 功能描述 00 IDLE 当前无数据传送。 01 BUSY 表示主设备正进行一个连续传送。当 主设备使用BUSY传送类型时,必须 同时给出下一次传送的操作地址和控 制信号。 10 NONSEQ 表示开始一次新的突发传送或单个数 据传送,地址与控制信号与前次传送 无关。 11 SEQ 突发传送,
54、传送的数据连续,地址与 前次传送相关,控制信号与前次传送 相同。,突发式传送,所谓突发操作, 是指由总线主模块发起的一个或多个数据传送,其传送的宽度是恒定的,然而其地址空间有一增量区间,每次传送的地址增量的步长取决于被传送的数据宽度。,AMBA AHB协议中除定义了4拍、8拍和16拍突发式传输外,还包括不定长度突发式传输和单信号传输。协议同时支持递增传输和包装传输两种传输模式: 递增传输模式按顺序访问一系列操作地址。在递增传输模式中,突发式传输中的每拍数据的地址都是前一拍数据地址的递增。 对于包装传输,如果某个传输的起始地址不与某个内存边界(内存边界 = 传输字长x拍数)的起始地址对齐,那么当
55、这批传输的操作地址达到内存边界时,操作地址将返回到这一内存边界的起始地址重新开始循环。,突发操作的信息由HBURST2:0提供:,突发传送最大地址界的范围为1kB,突发式传输的提前中断,在某些情况下,突发式传输在完成之前可能被提前中断。因此当突发式传输提前中断时,要求在从设备的设计能根据传输状态信号给出正确的响应。从设备可根据HTRANS信号判断一个突发式传输是否提前终止。当一笔传输开始后,每一拍传输都将被标为SEQUENTIAL或BUSY。这时如果出现NONSEQUENTIAL或者IDLE信号,那意味着开始一笔新的传输而上一笔传输此时已经被终止了。,如果主设备因为失去总线访问权而无法完成突发
56、式传输,那它必须按照适当的方式重组数据并等待下次重新获得访问权。举例来说,在一个四拍突发式传输中如果一个主设备只完成了第一个四分之一拍的传输,那它必须用不定长突发式传输来完成剩下的三拍传输。,四拍包装突发式传输,四拍递增突发式传输,八拍包装突发式传输,八拍递增突发式传输,不定长突发式传输, 两拍字长为halfword的突发式传输起始地址为0 x20。 三拍字长为word的突发式传输起始地址为0 x5C。,控制信号,控制信号的时序与操作地址信号的时序完全一致,并且在突发式传输完成在前必须保持不变。 HWRITE “1”为写,“0”为读。 HSIZE2:0 表示传输字长 。传输字长与突发式传输类型
57、HBURST2:0信号一起决定了包装传输的地址边界。 保护控制信号HPORT3:0:给出一些与总线访问有关的额外信息。这些信息主要提供给一些试图实现某种程度的传输保护的模块使用。可指示是读取操作码或是访问数据;是特权模式(privileged mode)访问或是以用户模式(user mode)访问;当前访问是缓存(cacheable)或是缓冲(bufferable)。,传输字长编码,保护控制信号,APB总线,APB从单元的接口信号,APB主要 用于低带 宽的周边 外设之间 的连接,在APB里面唯一的主模块就是与AHB总线相接的APB 桥。,APB传输,APB上的状态图,APB写传输时序图,APB读传输时序图,APB桥,选 择 信 号,系统总线 从模块接口,APB桥是在 AMBA APB 上唯一的总 线主模块。 另外,APB 桥也是在更 高层次系统 总线上的一 个从模块。 桥单元把系 统总线传输 转化为APB 总线传输。,APB桥的传输过程,APB桥的功能 锁存地址并在整个传输过程中保持其有效,直到数据传送完成。 地址译码并且生成一个外部选择信号PSELx,在一次传输期间只有一个选择信号有效. 写传送时驱动数据到APB总线上。 读传时驱动APB数据到系统总线上。 为传送触发使能信号PENABLE,使其有效。,6.5.3 CoreConnect总线,CoreCon
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026四川凉山州雷波县粮油贸易总公司面向社会招聘6人笔试备考试题及答案解析
- 2026年河北承德医学院公开选聘工作人员25名笔试备考题库及答案解析
- 2026上半年贵州事业单位联考遵义市招聘329人考试备考试题及答案解析
- 2026年乡村旅游开发实务培训
- 2026年大庆市中医医院招聘4人考试参考题库及答案解析
- 2026年AI数据标注质量控制培训
- 2026年水泥厂粉尘治理操作规范
- 2026年矿山爆破安全距离管理
- 2026年电竞赛事执行管理培训
- 2026年康复辅具适配技术培训
- 北京市顺义区2025-2026学年八年级上学期期末考试英语试题(原卷版+解析版)
- 英语A级常用词汇
- (二调)武汉市2025届高中毕业生二月调研考试 英语试卷(含标准答案)+听力音频
- 福建省龙岩市2024-2025学年高一上学期期末考试物理试卷(含答案)
- 汽车修理厂轮胎采购 投标方案(技术标 )
- 2023年7月浙江省普通高中学业水平考试(学考)化学试题
- DB3301-T 0461-2024 电动自行车停放充电场所消防安全管理规
- 小儿支气管炎护理课件
- NB-T 47013.15-2021 承压设备无损检测 第15部分:相控阵超声检测
- 打针协议免责书
- 四川省成都市八年级上学期物理期末考试试卷及答案
评论
0/150
提交评论