一、xmos项目文件中可以包含CC++xc文件,编译器根据文件类型分别编译,二进制文件执行时,可以调用编译好的文件。
二、XC可以认为是C的扩展,但不支持一些c语言的一些特性:
1、goto语句
2、位域
3、函数指针
4、指定初始化
三、xccompact.h用以适配C
四、并行任务简介
1、并行任务一般无返回值,基本上是初始配置+循环体结构
2、并行任务间通讯与数据共享
两个任务不能同时访问同一个变量
通讯可以是同步的,两边必须握手传输
异步通讯通过【notification】 实现
3、基于事件编程
利于select结构对各种事件做出反映
类似于单片机中断机制,但相对中断,xmos反应更快,
五、硬件架构
1、tile
一个ile包含若干个逻辑核、一个参考时钟(XS1为100MHz)、一些存储空间以及外设I/O口,
只有本片上的逻辑核程序可以访问本片资源
内存无需缓存,因此访问速度很快,
可以包含《platform.h>文件到工程中,并使用tile[0]这样的数组指定
2、cores
逻辑核,并行运行程序。
可以配置设备使各个逻辑核运行速度不一样。tile[0].core[3]
3、timer
定时器/计数器/时钟基准为100MHz, 32位计数。
4、communicate fabric
逻辑核之间利于通讯网络进行通讯,两个不在同一个tile上的core 也可以通讯