创建 Matrix653 Integrator 工程

更新时间:
2024-02-26
下载文档

创建 Matrix653 Integrator 工程

Matrix653 Integrator 工程主要负责对系统进行分时分区、分区间通信通道、调度计划以及健康监控等功能的参数配置。

首先选择 “File→New→Matrix653 Integrator” 菜单,开始创建 Integrator 工程,为新建的 Integrator 工程输入名称,点击 “Next” 按钮进入编译链配置界面。

配置项解析:

  1. Matrix Project:依赖的 Matrix653 Base 工程路径,点击 “File System” 按钮或 “Workspace” 按钮分别在文件系统和当前工作空间查找 Matrix653 Base 工程;
  2. Toolchain:工具链,本项在 Matrix653 Integrator 工程中不使能,自动与 Matrix653 Base 工程保持一致;
  3. Debug Level:调试级别,Matrix653 提供 Debug 和 Release 两种调试级别;
  4. CPU Type:处理器类型,本项在 Matrix653 Integrator 工程中不使能,自动与 Matrix653 Base 工程保持一致;
  5. FPU Type:浮点类型,本项在 Matrix653 Integrator 工程中不使能,自动与 Matrix653 Base 工程保持一致;
  6. Custom Makefile configuration:专家模式,用户可手动配置 Makefile;
  7. Do not scan source files:不扫描源码文件。

创建完成后会生成与工程名称对应的 “test_system_integrator.mk” 文件以及 “integrator.xml” 分区配置文件。

编译 Matrix653 Integrator 工程前需要选择 Partition 工程编译生成的 elf 文件。右键 Matrix653 Integrator 工程,选择最下方的 “Properties” 进入配置页面。

点击 “Matrix653Setting→PartitionsSetting”,通过右侧的 “Workspace” 选择工作空间内的 Partition 工程编译生成的 “strip” 目录下的 elf 文件,选择完 elf 文件后,点击 “Apply” 按钮即可。

注:如果需要进行调试,请选择 Debug 目录下的 elf 文件。

在编译 Integrator 工程之前,还需要配置 Integrator 工程下的 integrator.xml 文件,配置分区的一些信息,其中手动配置项包括 Partition 工程的 elf 文件,分区的持续时间与周期等。XML 配置如下:

<Partition>
    <PartitionDefinition AssignedCpusBitmap="0" DebugMode="false" FileName="test_partition.elf" Identifier="1" Name="partition1" PartitionHMNameRef="partition1 HM table" PermissionBitmap="SET_AFFINITY_INIT_ONLY,SET_SCHEDULE" ScheduleChangeAction="IGNORE"/>
    <PartitionPeriodicity Duration="100000000" Period="200000000"/>
    <PartitionLimits LimitFiles="10" LimitProcesses="10"/>
    <MemoryRegions>
        <MemoryRegion AccessRights="READ_WRITE" CacheSetting="Cache_CopyBack" Name="mainMemory" Size="2097152" Type="RAM"/>
    </MemoryRegions>
</Partition>

配置完分区信息之后,需要配置多模块调度计划,即每个 CPU 调度的时间表,配置如下:

<Schedules>
    <Schedule Identifier="1" InitialModuleSchedule="true" MajorFrameDuration="200000000" Name="sched1">
        <CpuTimeWindows Identifier="0">
            <PartitionTimeWindow Duration="100000000" Offset="0" PartitionNameRef="partition1" PeriodicProcessingStart="true"/>
        </CpuTimeWindows>
    </Schedule>
    <Schedule Identifier="2" InitialModuleSchedule="false" MajorFrameDuration="200000000" Name="sched2">
        <CpuTimeWindows Identifier="0">
            <PartitionTimeWindow Duration="100000000" Offset="0" PartitionNameRef="partition1" PeriodicProcessingStart="true"/>
        </CpuTimeWindows>
    </Schedule>
</Schedules>

这里只配置了一个 CPU 的时间窗口,实际操作过程中,开发者可自行配置多个CPU的时间窗口(针对多分区程序)。

注 : 还可以通过右键 integrator.xml 文件,选择 “Open With” -> “Matrix653 Smart Editor”,进行配置。

在完成 XML 配置之后,编译 Integrator 工程,在 Integrator 工程目录下会生成镜像文件 “test_system_integrator.img” 供 Bsp 工程链接使用。

最后需要在 Bsp 工程中导入 Integrator 工程的 img 文件。右键 Bsp 工程选择 “properties”->"Matrix653 Setting" -> "BSP Setting"->"RomFS Setting" -> "Workspace",然后选择 Integrator 工程下的 img 文件,最后选择 “OK”,过程如下图:

文档内容是否对您有所帮助?
有帮助
没帮助