• 915查看
  • 0回复

[芯片硬件] 英飞凌Tricore内核学习笔记

[复制链接]


该用户从未签到

发表于 29-8-2023 13:51:24 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


在车载控制器中常用的主芯片中,少不了英飞凌的Aurix系列芯片。该系列芯片中可能用的比较多的是TC27X,其总共有三个核心,分别为两个Tricore1.6P性能核、一个均衡核Tricore1.6E。

这三个CPU主要特点如下:

1.32位加载存储架构

2.4GB 寻址范围

3.灵活的内存保护系统,提供多组保护套件,每套保护范围多

4.时间保护系统允许时间有限的实时操作等

TC1.6和TC1.6E的架构仍然采用哈弗架构,具有独立的指令接口和数据接口,从而支持高效的数据与指令访问。TC1.6P核主要是由程序存储区接口、数据存储区接口、取值单元、执行单元(3个流水线,整数运算、加载或存储和循环、浮点处理单元(支持IEEE-754),通用寄存器组(16个地址寄存器:A0~A15,16个数据寄存器:D0~D15)、CPU从接口(中断和系统控制等)组成)。

与TC1.6E的主要区别在于执行单元,TC1.6P的核有三个流水线(整数运算、加载存储和循环),每个流水线都有6级状态(指令预取1,指令领取2,预解码、解码、指令执行1,、指令执行2)。TC1.6E的核有1个流水线(整数运算和加载存储实际上在一起),流水线有4级状态(取值,解码,指令执行1,指令执行2)。

TC1.6P概述

1.CPU图

如下图所示,中央处理单元(CPU)包括指令获取单元,执行单元,通用寄存器文件(GPR),CPU从接口(CPS)和浮点单元(FPU)。

英飞凌Tricore内核学习笔记w1.jpg
图1 TC1.6P核框图

2.取指令单元

指令获取单元预取和对齐来自64位宽程序存储器接口(PMI)的输入指令。说明按发行日期中的预测程序顺序排列。Issue fifo最多可缓冲六条指令,并将指令指向适当的执行管道。

指令保护单元检查对PMI的访问的有效性以及从PMI获取的传入指令的完整性。

分支单元检查分支条件的获取指令,并根据先前的分支行为预测最可能的执行路径。程序计数器单元(PC)负责更新程序计数器,如下图所示。

英飞凌Tricore内核学习笔记w2.jpg

图2 指令获取单元

3.执行单元

执行单元包含整数管道,加载/存储管道和循环管道。所有三个流水线并行运行,允许在一个时钟周期内执行最多三条指令。在执行单元中,所有指令都通过解码阶段,然后是两个执行阶段。通过在流水线级之间使用转发路径来最小化管道危险(停顿),从而允许一个指令的结果在结果可用时由后续指令使用。如下图所示。

英飞凌Tricore内核学习笔记w3.jpg

图3 执行单元

4. 通用寄存器文件

CPU具有通用寄存器(GPR)文件,分为地址寄存器文件(寄存器A0至A15)和数据寄存器文件(寄存器D0至D15)。

发送到加载/存储管道的指令的数据流通过地址寄存器文件进行控制。如下图所示。

发往/来自整数流水线的指令的数据流以及发给加载/存储流水线的数据加载/存储指令的数据流通过数据寄存器文件进行控制。

英飞凌Tricore内核学习笔记w4.jpg

图4 通用寄存器文件

TC1.6E概述

1.CPU图

如下图所示,中央处理单元(CPU)包括指令获取单元,执行单元,通用寄存器文件(GPR),CPU从接口(CPS)和浮点单元(FPU)。

英飞凌Tricore内核学习笔记w5.jpg

图5 TC1.6E核框图

2.取指令单元

指令获取单元从32位宽的程序存储器接口(PMI)中预取和对齐输入的指令半字。问题单元将单个对齐的指令定向到适当的执行管道。如下图所示。

指令保护单元检查对PMI的访问的有效性以及从PMI获取的传入指令的完整性。

英飞凌Tricore内核学习笔记w6.jpg

图6  取指令单元

3.执行单元

执行单元包含整数管道和加载/存储管道。在TC1.6E中,循环指令始终由加载/存储管道执行。

TC1.6E在每个时钟周期发出一条指令,因此在一个时钟周期内不会执行多于一条指令。如下图所示。

英飞凌Tricore内核学习笔记w7.jpg

图7 执行单元

4.通用寄存器文件

CPU具有通用寄存器(GPR)文件,分为地址寄存器文件(寄存器A0至A15)和数据寄存器文件(寄存器D0至D15)。如下图5-8.

发送到加载/存储管道的指令的数据流通过地址寄存器文件进行控制

英飞凌Tricore内核学习笔记w8.jpg

图8  通用寄存器单元

上下文保存区/上下文操作

CPU对函数调用,中断和陷阱使用统一的上下文切换方法。在所有情况下,任务的Upper Context都由硬件自动保存和恢复。保存和恢复较低上下文可以可选地由软件执行。

在TC1.6P中,上下文保存区域(CSA)和显式上下文加载/存储指令(例如LDLCX)所针对的地址可以放置在DSPR或外部存储器(高速缓存或未高速缓存)中。

在TC1.6E中,上下文保存区域(CSA)和显式上下文加载/存储指令所针对的地址可以仅放置在DSPR中。

DSPA中的CSA安置上下文操作的实际时间取决于上下文保存区域的位置。将上下文保存区域放置在DSPR中时可实现最高性能。在这种情况下,所有上下文保存和恢复操作都需要四个周期。

缓存外部存储器中的CSA放置(仅限TC1.6P)在这种情况下,时序也取决于数据高速缓存的状态。当上下文保存不会导致高速缓存行回写,并且在数据高速缓存中命中上下文时,会发生最佳情况数据高速缓存操作。在这种情况下,所有上下文保存和恢复都需要8个周期。

程序计数器(PC)寄存器

程序计数器(PC)保存当前获取并转发到CPU流水线的指令的地址。CPU自动处理PC的更新。

软件可以使用PC的当前值来执行各种任务,例如执行代码地址计算。通过CPU执行的软件读取PC只能通过MFCR指令完成。这样的读取将返回MFCR指令本身的PC。由于CPU可能出现意外行为,因此不得通过MTCR指令对PC进行显式写入。只有在CPU停止时才能写入PC。

CPU不得对段15中的PC的映射地址执行加载/存储指令。在这种情况下将生成MEM陷阱。PC寄存器的位0是只读的,并且硬连线为0。




该用户从未签到

发表于 18-3-2025 05:12:04 | 显示全部楼层
作为汽车工程师,深知英飞凌的Aurix系列芯片在汽车领域的应用广泛。其中的TC27X芯片配备三个核心,包括两个高性能的Tricore1.6P核心和一个均衡的Tricore1.6E核心。这些核心采用32位加载存储架构,拥有4GB的寻址范围,保证了其在车载控制器中的出色性能。其灵活的内存保护系统确保了数据的安全,同时其时间保护系统支持实时操作。TC1.6系列的架构基于哈弗设计,拥有独立的指令和数据接口,确保了数据和指令的高效访问。总体来说,TC27X芯片凭借其强大的性能和先进的技术,在车载控制器领域具有广泛的应用前景。
回复 支持 反对

使用道具 举报

快速发帖

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 19-8-2025 05:48 , Processed in 0.347670 second(s), 37 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.