全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com)

原本计划继续向前推进,看一下全新的例子。后来看了一下,现在的软件中还有一个同步接口没有分析,这样把最后的这部分遗憾弥补掉。

这个是比较原始的一个CPU同步实现的分析,这个接口在三个CPU的main函数中全都出现了一次。为了能够观察一下这个过程发生了什么,我增加了一系列的全局变量来存储中间的状态信息。

上面是增加后的信息,一个是在同步信号发出的地方记录相关的变量信息值,一个是在同步发生之后。

上面是CPU0的测试代码。

以上是CPU1的测试代码。

以上是CPU2的测试代码。

之后,在CPU0的主函数中把相应的信息打印出来。

以上是打印出来的结果,设置之后,相应的数值一次变成了1、3、7。那么,这样的数值有什么含义呢?接下来做代码的分析。

这个接口函数的执行需要结合tasking的编译器手册来理解,因为这里面最终用到了一个编译器内置的指令。具体的功能就是修改指定地址的位信息,但是需要有对齐要求。

结合上面的信息,针对这个全局变量,Core写了bit0、Core1写了bit1、Core2写了bit2。这样的现象,跟看到的打印信息是吻合的。接下来,看看下面的等待事件的接口实现。

其实,等待的这个函数实现是很容易理解的。第一行定义赋值先放一下,后面的信息比较容易一下子看明白。那就是,每一个CPU都检查一下,刚刚看的赋值过程是否生效了。如果所有的CPU都赋值了,那么说明大家都到了这个执行点。如果超时了依然没有到,那么需要返回一个错误码。当然,这里的错误码是没有返回测试的,后面还得尝试测试一下。

这个超长的代码实现的额功能其实是一个地址转换,转换的机制很容易理解。就是做了一个偏移,而不同的Core之间又有一个固定的地址空间偏移。这里,对此做了统一的处理。当然,如果地址空间本来就是可以通过共享总线来进行访问的,那么这个偏移转换也就不会实质生效了。

现在,在每一个CPU的函数中增加了这样的一个状态获取,之后打印一下看看三个CPU中的操作成功与否信息。

以上是打印结果,看起来全都是没有出错的。

从上面的结果看,这个地址暂时没有出现0xd开头的,说明现在的变量是可以在共享总线上直接访问的。

一气儿分析了好几部分的内容,真是感觉到了时间的飞逝如同白驹过隙。现在回头想想,不知道多少个如同今天的周末在不知不觉中消耗完了。其实,工作的时间已经够多了,以后周末多出去走动走动多带带娃或许是更好的调剂。

1479_英飞凌AURIX TC275 iLLD例子中的CPU同步实现分析相关推荐

  1. 1478_英飞凌AURIX TC275 iLLD中的看门狗禁用接口分析

    全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com) 继续分析手里的第一个工程,这一次看一下看门狗的禁用接口.这样的推进速度 ...

  2. 基于英飞凌AURIX TC275 Lite的三核轮休工程

    目录 项目介绍 硬件介绍 电源管理 代码结构及说明 三核主程序 GPIO CPU0请求系统休眠 两个系统定时器中断 功能展示 项目总结 项目介绍 本项目基于AURIX TC275 Lite开发板套件, ...

  3. AURIX TC275/TC234开发----(1) 开发准备工作

    TC234/TC275 是英飞凌推出的较新一代AURIX 系列的单核/三核处理器,适合应用于车载控制器的开发,目前在很多车型上有在使用,下面对两种芯片做个简单的分析对比: 1)TC275 该芯片有三个 ...

  4. 基于英飞凌AURIX的平衡单车组逐飞BLDC项目开源

    简 介: 本文转载了来自于SeekFree科技关于无刷直流电机电路设计开源方案,仅供大家学习使用.对于参加全国大学生智能车竞赛的同学请注意:室内单车组平衡轮驱动允许直接使用直流电机驱动,也允许使用无刷 ...

  5. 英飞凌 AURIX 系列单片机的HSM详解(4)——Tricore核与HSM核之间的通信方法

    本系列的其它几篇文章: <英飞凌 AURIX 系列单片机的HSM详解(1)--何为HSM> <英飞凌 AURIX 系列单片机的HSM详解(2)--与HSM相关的UCB和寄存器> ...

  6. 5月15日直播预告:英飞凌AURIX™培训—图像处理、实车演示等热点问题

    英飞凌AURIX™培训-图像处理.实车演示等热点问题 英飞凌芯片申请可继续申请 §01 英飞凌AURIX™培训 尊敬的参赛队伍:   第十六届大赛已经临近,你们准备得如何了呢?   芯片用起来了嘛?车 ...

  7. 英飞凌 AURIX TC3XX 系列单片机的链接文件

    前言 程序在完成编译后,每个".c"文件会生成".o"目标文件,此时代码无法通过目标文件运行,还需要通过链接文件为每个目标文件和系统标准库等链接起来,根据链接文 ...

  8. 英飞凌AURIX HSM介绍

    英飞凌AURIX HSM介绍 参考手册:英飞凌培训ppt HSM Introduction 1. HSM介绍与架构概述 HSM: Hardware Security Module,硬件安全模块,如下图 ...

  9. 智能车竞赛线上培训:英飞凌AURIX™的智能车培训入门篇

      第18届智能汽车竞赛的规则已经发布一段时间了,根据规则,摄像头组,独轮平衡,极速越野以及声音信标4个组别都需要采用英飞凌AURIX™系列MCU作为主控.为了让参赛的同学们更快速的入门以及了解英飞凌 ...

最新文章

  1. php常用20函数,PHP常用函数
  2. 一文总结Datawhale系列分享
  3. 关于大脑未必是破解智能和意识之谜的钥匙探讨
  4. python随机抽取人名_用Python打造一个CRM系统(五)
  5. jsoup的介绍使用(转)
  6. electron开发
  7. 利用Android Studio快速搭建App
  8. [转载] python模块的分类有哪些_整理了一份清单,常见Python问题的快速解答包
  9. 基于STM32的电池管理系统触摸屏设计方案
  10. 如何根据纬度和经度获取城市名称
  11. 成都盛铭轩:详情页怎么设计
  12. 苦涩的 高考完了,有没有给自己一个目标
  13. wnmp mysql 密码_WNMP(Windows + Nginx + PHP + MySQL) 安装
  14. 信托购买高搜索产品容易推10元[奥运]门槛
  15. c语言编程为啥弹出的框会闪退,js中提示框闪退问题
  16. 前端适配不同型号手机分辨率,100%还原UI设计稿的方案实践
  17. 汉诺塔问题以及青蛙跳台阶问题(附C语言代码)
  18. 马云谈教师惩戒权:没有惩戒,就如让老师开一辆没刹车的汽车
  19. javascript检查移动设备是否支持重力方向感应
  20. 天禾云,校园云盘内部结构安全性/权限设置的剖析

热门文章

  1. mtk平台老化问题经验总结
  2. 基于区块链侧链技术的底层应用平台ASCH和Lisk的安全性PK
  3. redis微博——推模型
  4. 容联云助力北京市人社局、科协举办人工智能高级研修班
  5. 怎么让android layout 优先 marginRight
  6. 中国移动边缘计算技术白皮书(PDF下载)
  7. 巯基化壳聚糖修饰碲化镉量子点CTS/CdTeQDs;Fe掺杂水溶性PbS硫化铅量子点;L半胱氨酸修饰硫化镉量子点(LCys@CdS)齐岳定制服务
  8. URL短链地址生成器Pckd
  9. 项目一:建设工程监管信息系统报建申请模块
  10. 两部门:推进电力中长期合同电子化,君子签赋能电力合同电子签