全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com)
逐渐开始了解MCU的功能了,我发现RM手册躲不过去了。与其见招拆招,倒不如先大概看一遍好让自己对这个芯片有一个初步的了解。这样,从头开始简略看一下参考手册。
一般在看工具的时候,工具写的支持架构的确是TriCore而不是AURIX。但是,TC275可能只是实现了一个TriCore的子集,不一定会包含所有的功能。
如果要了解这个芯片,少不了还得去看TriCore的架构手册,这个我之前可能是没接触过的,后面得找一找作为新的学习目标。
这里再次明确了一下单位,k一般是1000,而K一般是1024,这个是很多文档中比较统一的做法了。
这里有几个知识点需要看一下:
1. 关于寄存器的操作属性中,读写等属性一般都是很容易理解的。如果带有h,那么这个属性说明这个寄存器的相关信息可能会受到硬件的影响,可以由硬件操作复位。
2. 寄存器属性中的s,有一种one shot的意思,但是这里的缩写是sticky,只能够由软件在相应的循环中修改一次。
3. 如果是带有f标志的,可以理解为是特殊寄存器,必须由汇编才可以访问读取。
如果出现了非法操作,可能会出现总线错误的问题。
1. ALU,之前听过很多次,一直以来我不知道什么时候有一个错误的理解认为这个是协处理器。其实,这个是算术与逻辑单元的意思。
2. BCU,总线控制单元。
3. CAPCOM,捕获比较单元,应该是类似信号解码的需求所依赖的硬件模块。
1. CIF是camera接口的意思,看起来这个系列中的单片机可能会有能够实现摄像头信息解码的功能模块。
2. CSA,这个在之前看其他的文件的时候看到过,至少是可以用来设计OS的时候会用到的。
3. CSFR,这个在现在我看到的代码中已经看到了,内核特殊功能寄存器。
4. E-Ray,之所以画出来这个是因为之前看文档的时候多次看到了这个缩写,但是不知道其含义。我在我的学习计划表中还有这么一个备忘,需要了解一下这个究竟是一个什么模块。现在确定了,这个是FlexRay的控制器。
5. FPU,浮点运算模块。
这里涉及到这么多的测试模块,究竟如何用以及其具体的优劣点,这个后面肯定应该作为我学习的重点。我觉得,类似的模块在实现功能安全的相关功能的时候肯定可以发挥很好的作用。
SCU是系统控制单元的意思,之前看文档的时候各种SCU、BCU的缩写曾经让我看得很头大。在当时的文档中没有找到解释,现在终于知道是什么概念了。由此,其实我看过的文档多看几遍获取才会有真正的理解和认识。
1. 这里提到的3个强大的技术,其实在其他的MCU中应该也是差不多的。
2. 我无数次接触到DSP的概念了,我用的很多MCU中似乎也的确有这样的模块。不过,这个模块的威力究竟如何去直观感受一下现在我还是没有这样的概念。看起来,我的学习还得扩展一个DSP的学习。从这里来看,DSP的主要功能其实是处理一些实际的信号的。
3. 带有versatile描述的,之前在AUTOSAR的文档中看到过很多。一般来说,这个特性是实现多个core或者多个控制器共享的一个特性。
4. SPB,系统设备总线。SRI,本地存储总线。这两个总线在MCU运行中非常重要,看起来可能会涉及到很多软件设计的考虑点。
1. 实际的MCU不一定完全实现了这样的架构,可能有所裁剪。
2. SPB应该是一条总线,我理解这里只是拆分成了两部分,但是本质上是相连的。或许,我可以从架构手册中获得更加详细的了解。
3. 有的模块的肩头上多了一个斜线,而且带着一个数字。有点不是很理解这个究竟会是什么功能,难道是代表了模块的数目?或者通道数?但是也有纯数字不带斜线的,那么斜线是一个什么概念呢?
我工作之中也接触过TC275,当时接触到的MCU型号其实是一个HSM删减版本,不带HSM模块。不知道我现在手里的这个开发板所用的MCU会是什么情况,如果能够带有这样的模块就好了,或许我能够发掘出来更多的功能。