硬件采用何种芯片,比如是ARM内核还是MIPS内核
是ARM内核的话,具体是哪种内核,比如ARM9TDMI还是Cortex-M3等等
不过,关于芯片架构的事情,要好好解释解释:
经常看到,嵌入式方面,介绍arm的架构
但是却又感觉学了也没啥用,和工作的内容也对不上号,纯粹就是在死读书,读死书
至少我最开始的感觉就是这样
现在其实也还是没有透彻理解,不过有一点点心得了,总结如下
比如以ARM Cortex-M3为例:
解释我所能够理解的,架构中的内容,和你后续嵌入式Linux开发之间的关系:
- ARM架构中的AMBA总线
里面有AHB和APB
对应Linux中就是有对应的AMBA的概念的定义的,好像是在设备注册期间也有涉及到,比如probe的时候
- ARM核是否带MMU
决定了是用uclinux还是linux
- 采用哪款ARM内核
比如说Cortex-M3采用了ARMv7内核
则意味着你选择交叉编译器(甚至是自己用crosstool-ng去制作交叉编译器)的时候内核选择是armv7。
- 指令集
比如说Cortex-M3是Thumb2的指令集
意味着,比如后期制作或用交叉编译器时,编译代码、生成什么样的汇编指令,都是要设置为thumb2
如此,一点点地,把芯片架构是什么,以及不同的值的真正含义是什么,对后续开发有何影响,都说清楚了
这样才能说,明白了芯片的架构