0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

超强国产CPU,能跑安卓、Linux、RTOS

米尔电子 2023-08-18 08:01 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

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

61b0e7a6-3d5a-11ee-ad04-dac502259ad0.jpg 

01.

D9有什么特点?

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

采用Cortex-A55 + R5组合架构

台积电16nm FinFET 制程工艺

22.6KDMIPS(4*A55)+3.2KDMPIS(2*R5)

车规级处理器,芯片结温范围从-40到125摄氏度

可同时运行多个不同操作系统,如安卓、Linux、FreeRTOS、裸系统等

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

61f996fe-3d5a-11ee-ad04-dac502259ad0.png 

2、米尔基于D9核心板芯驰D9核心板采用高密度高速电路板设计,在大小为82mmx45mm 的板卡上集成了D9系列处理器、电源、LPDDR4、eMMC、QSPI、EEPROM看门狗芯片等电路。62245d8a-3d5a-11ee-ad04-dac502259ad0.png一个核心板支持单核、双核、5核、6核,你见过吗?米尔针对不同客户需求,提供定制服务,可以选配核心板参数。

可选: 单核D9-Lite、5核D9-Plus、六核D9-Pro。

624f5986-3d5a-11ee-ad04-dac502259ad0.png 

3、米尔基于D9底板米尔基于D9底板为满足不同用户的需求,提供了丰富的外设接口62683686-3d5a-11ee-ad04-dac502259ad0.jpg 这是米尔官方提供的参数信息:

62a4f31e-3d5a-11ee-ad04-dac502259ad0.png

02.

基于D9开发难吗?

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

62e89010-3d5a-11ee-ad04-dac502259ad0.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 目录并解压新建工具链目录

PC$ sudo mkdir -p /tool

解压编译链

PC$ cd $HOME/MYD-JD9XPC$ 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 就可以一键编译镜像:

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 工具进行下载即可。

63000592-3d5a-11ee-ad04-dac502259ad0.png 

方法二:SD卡烧录为满足生产,大批量烧录,也可以使用SD卡烧录的方法。
这里通过制作 TF 卡烧录器镜像包实现这种方法,为节省时间,米尔已经把 sd 卡烧录镜像包编译完成,用户只需编译更新镜像包就行。(具体可以参考开发手册)
4、修改板级支持包这一节应该是相对比较重要的,也是相对比较难的,包括U-boot、 kernel等相关内容的编译与更新。
a.板载 SSDK 编译与更新SemiDrive MCU SDK(以下简称 SSDK) 用于 SemiDrive 各芯片平台的 MCU 软件开发,例如 D9 系列 SOC 的 Safety R5 软件。
编译 SSDK:

wujl@system2-ubuntu1804:/media/wujl/D9/d9_ssdk$ ./build.sh ssdk

编译完成后,你可以在 source/ssdk/boards/d9_ref/build/ref/gcc/secure/目录找到 safety.bin 和 secure.bin 二进制文件。
b.板载 uboot 编译与更新U-boot 是一个功能非常丰富的开源启动引导程序,包括内核引导,下载更新等众多方面。
编译 uboot:

wujl@system2-ubuntu1804:/media/wujl/D9/d9_ssdk$ ./build.sh uboot

编译完成后,你可以在 out/images_d9_ref/binary/download_img/目录找到 bootloader.img 二进制文件。
更新 uboot:拷贝编译的镜像(bootloader.img)到开发板,uboot 对应的分区为/dev/mmcblk0p26,执行下面的命令更新:

root@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot0/force_roroot@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot1/force_roroot@myd-jd9x:~# dd if=bootloader.img of=/dev/mmcblk0p26 bs=1M conv=sync 0+1 records in1+0 records out


c.板载 Kernel 编译与更新编译 linux:

wujl@system2-ubuntu1804:/media/wujl/D9/d9_ssdk$ ./build.sh linux

编译完成后,你可以在 out/images_d9_ref/binary/download_img 目录找到 kernel.img和 dtb.img 二进制文件。
更新内核和设备树:拷贝编译的镜像(kernel.img)到开发板,kernel 对应的分区为/dev/mmcblk0p38,dtb 对应的分区为/dev/mmcblk0p34,执行下面的命令更新:

root@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot0/force_roroot@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot1/force_roroot@myd-jd9x:~# dd if=kernel.img of=/dev/mmcblk0p38 bs=1M conv=sync9+1 records in10+0 records outroot@myd-jd9x:~# dd if=dtb.img of=/dev/mmcblk0p34 bs=1k conv=sync113+1 records in114+0 records out


5、适配硬件平台这一节相当于是芯片底层驱动相关的内容,可通过芯驰提供的引脚配置的工具,快速定义各个节点的管脚,属性,电源等(官方提供了对应工具)。这里配置的具体细节,可以参看《MYD-JD9X_Linux软件开发指南》第6节。
接下来,就可以添加你的应用程序了,官方提供了“基于 Makefile 的应用”的介绍,大家可以参看一下。

03.

最后


因为技术打压的原因,选择国产替代已是当下的趋势,如果你正在寻找一款类似的芯片,不妨了解一下这款D9系列开发板:

631ef556-3d5a-11ee-ad04-dac502259ad0.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11216

    浏览量

    222942
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    217973
  • RTOS
    +关注

    关注

    25

    文章

    862

    浏览量

    122610
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    学习RTOS的意义?

    秀的计算机大拿的智慧结晶,从中可以受益无穷。 3. 嵌入式Linux Linux是目前应用最广泛的操作系统,也是众多知名操作系统的根基,比如、鸿蒙等。 打好嵌入式
    发表于 11-27 08:16

    迅为RK3588开发板Linux麒麟瑞芯微国产工业AI人工智能

    迅为RK3588开发板Linux麒麟瑞芯微国产工业AI人工智能
    发表于 07-14 11:23

    请问编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?

    编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?
    发表于 07-11 07:22

    释放潜力:在树莓派上运行系统实现多样化应用!

    为什么要在树莓派上运行系统?系统以其庞大的应用生态系统和用户友好的界面而闻名,它能够将树莓派转变为功能强大的设备,能够处理从媒体消费到轻量级计算和物联网应用等各种任务。优势高度
    的头像 发表于 07-05 08:33 912次阅读
    释放潜力:在树莓派上运行<b class='flag-5'>安</b><b class='flag-5'>卓</b>系统实现多样化应用!

    如何实现与恩智浦i.MX RT1170的无线投屏与控制

    Scrcpy是一款免费开源的软件,支持将端屏幕投影到其他设备,并支持被投屏设备对的反向控制。基于ADB工具,
    的头像 发表于 06-26 09:53 1937次阅读
    如何实现<b class='flag-5'>安</b><b class='flag-5'>卓</b>与恩智浦i.MX RT1170的无线投屏与控制

    零延迟响应:工控机如何用实时操作系统(RTOS)赋能工业控制

    在工业4.0时代,工业控制系统对实时性的要求已突破毫秒级门槛,传统操作系统因任务调度延迟、中断响应不确定性等问题,难以满足精密运动控制、闭环反馈调节等场景需求。工控机通过集成RTOS(实时
    的头像 发表于 06-09 15:49 836次阅读

    请问CYUSB3014支持驱动吗?

    [i]请问CYUSB3014 支持设备吗?应该使用什么驱动呢
    发表于 05-30 07:12

    有人接rk3576的视频硬件解码的实现么?

    我们这边是有做好了一个app的,然后我们这边是有用软解的方式播放了网络摄像枪的实时视频的,但是因为占用CPU太高了,所以就想转成视频硬解的方式播放实时视频。 目前我们是有采购了一个电视机顶盒硬件
    发表于 05-19 09:52

    rtosrtos&amp;linux能否调整连接windows后的设备名称?

    rtosrtos&amp;linux 能否调整连接windows后的设备名称
    发表于 05-14 06:19

    国产信创CPU全攻略】分享国产CPU品牌排行榜!从排名到避坑!

    最近收到不少粉丝留言:“想换国产电脑,但国产CPU品牌太多,完全不知道怎么选!”“信创CPU排名到底靠不靠谱?”今天咱们就来唠唠这个话题——国产
    的头像 发表于 04-14 14:34 4162次阅读
    【<b class='flag-5'>国产</b>信创<b class='flag-5'>CPU</b>全攻略】分享<b class='flag-5'>国产</b><b class='flag-5'>CPU</b>品牌排行榜!从排名到避坑!

    请问rk3566有没有办法装12

    各位老哥,rk3566的sdk是11,有没有办法装12呢
    发表于 03-22 19:46

    自制 AirTag,支持/鸿蒙/PC/Home Assistant,无需拥有 iPhone

    苹果的 AirTag 很贵,虽然某强北有平价代替品,但是仍需要苹果设备才能绑定,才能查看位置。不支持/鸿蒙/PC ,也不支持集成到 Home Assistant 中。 AirTag
    发表于 02-25 11:22

    纳祥科技PD协议芯片NX799,超绝兼容性,适配华为、三星等主流手机

    纳祥科技NX799是一颗应用手机的快充数据线控制 IC,采用 CMOS 工艺制造,USB转TYPE-C全兼容,支持HUAWEI、三星、VIVO、OPPO 和一加等系列手机/
    的头像 发表于 02-05 17:28 2160次阅读
    纳祥科技<b class='flag-5'>安</b><b class='flag-5'>卓</b>PD协议芯片NX799,超绝兼容性,适配华为、三星等主流<b class='flag-5'>安</b><b class='flag-5'>卓</b>手机

    广州大彩讲堂:/linux触摸屏四路CVBS输入实现同时显示!

    广州大彩串口屏/linux触摸屏四路CVBS输入实现同时显示!
    的头像 发表于 12-25 16:49 1143次阅读
    广州大彩讲堂:<b class='flag-5'>安</b><b class='flag-5'>卓</b>/<b class='flag-5'>linux</b>触摸屏四路CVBS输入实现同时显示!

    11系统的RK3566主板搭建一体机

    我向给11系统的RK3566主板搭建一套显示器、电源拿来作为测试,怎么搭配好呢
    发表于 12-17 17:26