你还记得缺芯、涨价的那段日子吗?近几年,因为贸易战、技术打压,芯片国产化已成为趋势。
今天给大家推荐一款能跑安卓、Linux、RTOS的开发板,而且是车规级工业超强国产CPU。那就是米尔电子今年新推出的,基于芯驰D9系列核心板及开发板。
1.jpg


D9有什么特点?

1、D9处理器
D9处理器是国产厂商芯驰推出的专为新一代电力智能设备、工业互联网设备、工业控制设备、工业机器人、工程机械、轨道交通等先进工业应用设计的高可靠、高安全、高实时、高性能芯片。

D9处理器特点:
  • 采用Cortex-A55 + R5组合架构
  • 台积电16nm FinFET 制程工艺
  • 22.6KDMIPS(4*A55)+3.2KDMPIS(2*R5)
  • 车规级处理器,芯片结温范围从-40到125摄氏度
  • 可同时运行多个不同操作系统,如安卓、Linux、FreeRTOS、裸系统等
    2.png



D9系列处理器提供单核、四核、五核、六核处理器+实时处理器的灵活组合,客户可依据自己的应用程序需求选择合适运算能力的型号。
3.png

2、米尔基于D9核心板
芯驰D9核心板采用高密度高速电路板设计,在大小为82mmx45mm 的板卡上集成了D9系列处理器、电源、LPDDR4、eMMC、QSPI、EEPROM、看门狗芯片等电路。
4.png


一个核心板支持单核、双核、5核、6核,你见过吗?
米尔针对不同客户需求,提供定制服务,可以选配核心板参数。
可选: 单核D9-Lite、5核D9-Plus、六核D9-Pro。
5.png

3、米尔基于D9底板
米尔基于D9底板为满足不同用户的需求,提供了丰富的外设接口:
6.jpg


这是米尔官方提供的参数信息:
7.png

基于D9开发难吗?

很多开发者都有一个误解,刚入手一块开发板,要从零开始搞起。
而有经验的工程师都知道,换一个平台,厂家基本都会提供配套软件工具,比如系统镜像、SDK、开发工具等这些厂家都会提供。你只需要根据自己需求把时间和精力花在应用上即可。
米尔设计这款米尔基于D9开发板时就考虑到了这个问题,在推出开发板的同时就推出了配套的开发资料。
8.png

对于零基础的朋友,可以能需要一点时间熟悉一下相关知识。但对于有一定基础的开发者而言,基于D9平台开发还是相对不难。
这里结合官方资料给大家分享一下 D9 Linux 软件开发主要流程:


0、概述

MYD-JD9X 搭载基于 Linux 4.14.61 版本内核的操作系统。
开发板出厂附带嵌入式 Linux 系统开发所需要的交叉编译工具链,U-boot 源代码,Linux 内核和各驱动模块的源代码等资料包,以及适用于 Windows 桌面环境和PC Linux 系统的各种开发和调试工具,应用开发例程等。


1、开发环境
  • D9处理器:D9310、D9340、D9350、D9360等。
  • Linux开发主机:Debian, Ubuntu, RHEL等,Ubuntu18.04 64bit 桌面版系统。
  • 安装米尔定制的 SDK


在使用 SDK 构建这个系统镜像过程中,还需要安装交叉工具链,米尔提供的这个 SDK 中除了包含各种源代码外还提供了必要的交叉工具链,可以直接用于编译应用程序等。
SDK 的安装步骤,如下:

拷贝 SDK 到 Linux 目录并解压
新建工具链目录
  1. PC$ sudo mkdir -p /tool


解压编译链
  1. PC$ cd $HOME/MYD-JD9X
  2. PC$ tar -xvf gcc_linaro_7.3.tar.gz -C /tool


安装、 测试编译链
为方便设置编译链,他们提供一个设置脚本 env.sh

2、构建开发板镜像



第1步:获取源码
购买开发板会提供源码和配套的工具。

第2步:快速编译镜像
这里我们需要使用米尔提供的 envsetup.sh 脚本进行环境变量的设置。

进入 SDK 目录,执行./build.sh config 工程配置, 选择 board、 project、 启动方式和内核版本。然后执行./build.sh 完成编译和打包, 镜像生成到 out 目录。

只需执行 build.sh 就可以一键编译镜像:
  1. PC$ ./build.sh



镜像编译完成之后,在 SDK 源码会生成 out 目录,out 目录是执行 build.sh 一键编译脚本后自动生成的目录,包含所有的镜像组件。
主要组件介绍:
  • images_d9_ref 板子的镜像主目录
  • binary 目录,包含所有组件的二进制文件
  • build_object 目录,包含 BSP 以及 buildroot 系统等组件的编译信息
  • images 目录,最终的镜像目录,.pac 格式的镜像烧录包


第3步:构建 SD 卡烧录器镜像
构建 sd 卡烧录镜像之前,需要先构建完 full 镜像。
准备 full 镜像,进入 SDK 目录,执行 build.sh config 命令,选择 D9 为 SD 卡启动。
然后,编译 SD 卡镜像,编译更新镜像包。

3、烧录系统镜像

D9 系列微处理器启动方式有多种,用户可以根据需求选择不同的方式进行更新。更新方式主要有以下几种:.
  • USB 烧写:适用于研发调试,测试等场景。
  • 制作 SD 卡启动器: 适用于研发调试,快速启动等场景
  • 制作 SD 卡烧录器:适用于批量生产烧写 eMMC


官方资料给出了两种方法:SDFactoryTool 烧录、制作 SD 卡烧。

方法一:SDFactoryTool 烧录

也就是使用SDFactoryTool工具,通过USB进行烧录。通过USB将电脑和开发板连接,选择启动模式,将拨码开关拨到 USB 下载模式。准备烧录镜像,启动 SDFactoryTool 工具进行下载即可。
9.png


方法二:SD卡烧录

为满足生产,大批量烧录,也可以使用SD卡烧录的方法。
这里通过制作 TF 卡烧录器镜像包实现这种方法,为节省时间,米尔已经把 sd 卡烧录镜像包编译完成,用户只需编译更新镜像包就行。(具体可以参考开发手册)


4、修改板级支持包

这一节应该是相对比较重要的,也是相对比较难的,包括U-boot、 kernel等相关内容的编译与更新。

a.板载 SSDK 编译与更新

SemiDrive MCU SDK(以下简称 SSDK) 用于 SemiDrive 各芯片平台的 MCU 软件开发,例如 D9 系列 SOC 的 Safety R5 软件。
编译 SSDK:
  1. [size=3]wujl@system2-ubuntu1804:/media/wujl/D9/d9_ssdk$ ./build.sh ssdk
  2. [/size][align=left]