您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 88英飞凌tricore用户手册 第15章 总线管理单元
TC1728总线监控单元(BMU)用户手册15-1V1.0,2011-12BMU,V2.615总线监控单元(BMU)本文档描述了总线监控单元(BMU)的功能。BMU主要用于高集成度安全应用。它提供了基本的硬件机制以简化安全应用需要实现的监控功能。BMU的核心功能包括记录外设总线的写操作。所记录的信息存储在一个本地缓冲区,该缓冲区作为一个循环缓冲区被管理。在非安全应用里,BMU可以用来作为PCP数据存储器扩展。BMU作为一个标准的FPI总线从外设运行,并且完全可以通过一组配置寄存器和控制寄存器控制。此外,一个专用的从机接口允许对记录的信息的突发访问。本章由如下内容组成:BMU特性(见15.2节)BMU模块的操作概述(见15.3节)BMU模块的功能描述(见15.4节)BMU模块的接口(见15.5节)BMU模块的寄存器描述(见15.6节)TC1728总线监控单元(BMU)用户手册15-2V1.0,2011-12BMU,V2.615.1相关文档输入文档[D1]PRO-SILSafetyConceptforMicrocontrollers相关标准和规范[S1]IEC61508standard.Functionalsafetyofelectrical/electronic/programmableelectronicsafety-relatedsystemsParts2,7.[S2]ISO26262standard.Roadvehicles-Functionalsafety-Part5:Productdevelopment:hardwarelevelTC1728总线监控单元(BMU)用户手册15-3V1.0,2011-12BMU,V2.615.2BMU特性BMU具有如下特性:运行于外设总线时钟频率的完全同步模块实现一个连接到Tricore和PCP中断总线的标准中断服务节点—每个内部中断请求可被特定的状态标志位标识,并只能通过软件清零。带有有效状态标志位的新中断事件不引发新中断。记录对软件可选外设地址空间的写操作—使用片上系统地址解码器来选择确定目标外设(不是内部地址空间解码器)的线路实现一个总线事务FIFO(BTF),它可以由FPI从接口通过使用BTR2、BTR4或者BTR8FPI突发读来访问。BTF的大小可基于产品来配置。其大小必须为2的幂数—BTF输入信号通过纠错码(ECC)来保护。可以对整个数据域进行15位错误校正和2位错误检测。—BTF作为循环缓冲区被访问,并且支持自动循环。BTF写和读指针由硬件控制。BTF输入信号由下面FPI信息组成:—FPI_A[27:2]表示FPI数据交互的地址位—FPI_SVM表示管理员模式指示—FPI_TAG[3:0]表示FPITAG,标识FPI总线主设备—FPI_STATUS表示数据交互完成标志。这不是一个FPI信号—FPI_D[31:0]表示FPI写数据FIFO处理器监控BTF的饱和程度—实现一个可配置的阈值寄存器,用于在早期检测出饱和阈值—检测并且防止溢出或者欠载(可配置)BTF可以在非安全应用中用作标准存储器映射SRAM。该SRAM只能通过使用BTR2、BTR4或者BTR8FPI突发读来访问。TC1728总线监控单元(BMU)用户手册15-4V1.0,2011-12BMU,V2.615.3操作概览15.3.1微处理器监控框架BMU是PRO-SIL监控框架的一个组成部分,可以简化安全应用必须实现的总体软件监控的需求。以下为两个充分利用BMU的实际应用案例:Break-After-Make流程检测对安全相关配置和状态寄存器(CSFR)的非法访问Break-After-Make的使用案例在单一处理通道(一个在应用层面上没有硬件冗余的微处理器),有两个通用结构,用于处理执行中的错误检测的相关事宜:两个处理器工作在静态同步或者松散耦合同步模式下,执行相同的安全代码,并且在相邻的时钟周期比较结果。主CPU和检查CPU之间由软件或者硬件错误引起的任何差异被独立的比较单元捕获。检查CPU不产生任何外设数据,也不产生任何存储到存储单元(SRAM)的数据。同步流程见第15-5页的图15-15Break-After-Make概念(左边)。一个处理器运行两个连续的冗余任务。冗余任务可以通过多线程来处理。有一个控制任务(或者控制执行线程),用于执行并提交它的结果到外设。控制任务的结果需要被保存以备稍后检查。监控任务(或者监控执行线程)被安排执行并产生另外一组数据。这两个任务/线程的结果被收集并由独立于处理器的硬件单元来比较。控制流程图建见第15-5页的图15-15Break-After-Make概念(右边)。这是用于PRO-SIL安全概念的基本方案。BMU硬件和运行在PCP上的BMU驱动的结合提供了一种基本的机制,可以在安全应用中用于监控与安全相关的外设的特殊数据流。BMU软件驱动要求没有在本文档里体现。TC1728总线监控单元(BMU)用户手册15-5V1.0,2011-12BMU,V2.6图15-1Break-After-Make概念TC1728总线监控单元(BMU)用户手册15-6V1.0,2011-12BMU,V2.615.3.2总线监控单元概览BMU是一个标准的FPI从模块,其包含一个FPI从接口以及一个兼容FPI总线构架的总线外设接口(BPI)。BMU不能作为FPI总线的主机。BMU完全和FPI总线时钟同步,并且运行在1:1的时钟比率下.它不能支持分数分频器。图15-2BMU概览除了标准的FPI连接,BMU也接收经过地址解码器解码的独立的外设选择信号。每个选择引脚的范围不是一个外设,而是一个也许包括了几个外设的FPI区域。每个解码区域提供一个FPI_ACK[1:0]信号,用于指示每个独立数据阶段的完成状态。BMU需要页15-22表15-4“FPI区域的标识”中列出的FPI区域的FPI_ACK[1:0]用于决定写事务是否已经正常终止。TC1728总线监控单元(BMU)用户手册15-7V1.0,2011-12BMU,V2.6图15-3TC1728中的BMU操作在典型的微处理器架构里,可通过TriCoreCPU或者通过DMA引擎还可能通过外设控制处理器(PCP)直接控制对外设的写访问。TC1728总线监控单元(BMU)用户手册15-8V1.0,2011-12BMU,V2.615.4BMU功能描述15.4.1BMU微架构图15-4BMU微架构TC1728总线监控单元(BMU)用户手册15-9V1.0,2011-12BMU,V2.6BMU包含以下功能,见第15-8页图15-4“BMU微架构”:FPI总线外设接口(BPI)允许软件控制BMU的特性和读状态信息。循环缓冲区称为总线交互FIFO(BTF),被选择的写事务保存在这里。FIFO监控器监控BTF写指针和读指针之间的距离。FIFO监控器通过阈值寄存器FMTH来配置,其可以使能BMU在达到阈值时产生一个中断。FPI从机接口提供以下功能:—滤波器写事物发生在总线上,当所有条件满足时,在BTF内部写信息。硬件负责写指针的循环条件。—执行对BMURAM的存储器映射读和写访问。该模式为上电复位后的默认模式。对该模式的描述请参考15-20页的章节“在非安全应用中的使用”。BMURAM主要为PCP处理器所使用。—执行基于FIFO对BTF的访问以读取记录的信息。该模式在CTL寄存器中应该被使能。在FIFO模式中,FPI_A[31:0]地址信息不用于直接访问BTF的入口。根据FPI总线突发事务的大小更新内部的读指针和写指针。—15-150页表15-1“BMUFPI从机接口的FPI访问模式”提供在不同模式下从机接口支持的FPI事务列表。服务请求节点集中所有内部中断请求源和使能BMU直接发送中断请求到PCP或者TriCoreCPU。TC1728总线监控单元(BMU)用户手册15-10V1.0,2011-12BMU,V2.6表15-1BMUFPI从机接口的FPI访问模式FPI事务FPI_OPC[3:0]FIFO事务记录模式FIFO事务支持模式SRAM事务支持模式SDTB(单个8位发送器)读不可应用不是(总线错误)不是(总线错误)写是不是(总线错误)不是(总线错误)SDTH(单个16位发送器)读不可应用不是(总线错误)不是(总线错误)写是不是(总线错误)不是(总线错误)SDTW(单个32位发送器)读不可应用不是(总线错误)不是(总线错误)写是不是(总线错误)不是(总线错误)BTR2(2个32位发送器)读不可应用是是写是不是(总线错误)是BTR4(4个32位发送器)读不可应用是是写是不是(总线错误)是BTR8(8个32位发送器)读不可应用是是写是不是(总线错误)是注意:部分读-修正-写的单个传送单元事务(SDTB,SDTH,SDTW)同样被记录。注意:在任何SDTB,SDTH单个传送单元事务时,整个32位数据总线被写。由于FPI操作码和FPI地址的低两位不被记录,因此在写操作时不可能知道哪些字节是有效的。在利用BMU进行数据监控应用时应该注意这一局限性。TC1728总线监控单元(BMU)用户手册15-11V1.0,2011-12BMU,V2.615.4.2FPI拐点事件的处理某些特殊的情况下,可以导致除了FPI写事务正确终止的例外,比如:主机中止、从机重试、超时……标志位FPI_STATUS指示数据阶段是否正常结束(FPI_STATUS=1)或者异常结束(FPI_STATUS=0)。在错误的情况下,没有定义错误性质的额外信息。当目标BPI接口置位FPI_RDY=1数据阶段结束;信号FPI_ACK[1:0]提供结束状态的额外信息。BPI可以通过延迟FPI_RDY的确定来插入FPI总线的等待状态。下列情况导致错误条件检测,指示数据阶段已经被主机中止或者不被从机接受:当处于数据阶段等待状态或者通过BPI确定FPI_RDY时,FPIF主机FPI_ABORT_N确定。如果在突发访问时发生如上情况,所有连续数据阶段中止。FPI_ACK=2’b11(ERR)的同时BPI置位FPI_RDY=1FPI_ACK=2’b10(RTY)的同时BPI置位FPI_RDY=1在超时发生的时候,总线控制单元在一个时钟周期里发布FPI_TOUT,并且在接下去的那个周期里被选的从机必须在错误条件下(FPI_ACK=2’b11的同时FPI_RDY=1)终止数据发送。因此,FPI_TOUT不需要被BMU处理。详细介绍请参考FPI规范2003-11V4.2版的第6章:FPI总线终止条件。TC1728总线监控单元(BMU)用户手册15-12V1.0,2011-12BMU,V2.615.4.3总线事务表15-12页图15-5“总线事务信息”定义了在FPI事务的各个阶段怎样写入BTF。与写数据相关的信息位集作为64位的值写入BTF。一个BTF字或者入口有如下组成:写数据本身,参考BTF[DataPhase]位和BTF[Control]位图15-5总线事务信息突发事务的记录和单次写事务遵循相同的规则:FPI主机为每个数据阶段提供相应的地址信息。关于一次写和突发写的例子请见15-13页图15-6“FPI突发事务的记录信息”。FPI总线地址信息呈现的信息直接显示了地址信息。TC1728总线监控单元(BMU)用户手册15-13V1.0,2011-12BMU,V2.6图15-6FPI突发事务的记录信息TC1728总线监控单元(BMU)用户手册15-14V1.0,2011-12BMU,V2.615.4.4写操作和FIFO结构图15-7BTF循环缓冲区写指针管理写指针由BMU内部逻辑控制。如果N是BTF内的字数(假设FPI事务最多为N次单次写),当写指针指向位置N-1的字时,一次新的写FPI事务被记录,写指针的新位置为0。如果与此同时没有读指针更新发生,BTF被标记为满。TC1728总线监控单元(BMU)用户手册15-15V1.0,2011-12BMU,V2.615.4.5读操作和
本文标题:88英飞凌tricore用户手册 第15章 总线管理单元
链接地址:https://www.777doc.com/doc-4329333 .html