立即注册
查看: 486|回复: 0

[转载] 全国产六核CPU,打造高性能高安全显控方案

已绑定手机
发表于 2024-1-19 19:37:48 | 显示全部楼层 |阅读模式 来自 广东省深圳市
随着生活水平的提高,人们对电子产品的要求也越来越高,很多电子产品都用上了显示屏,像家电、汽车、医疗等很多产品都配有显示屏,而且这些显示屏功能很强大,也有漂亮的UI界面。
今天给大家介绍一款国产厂商(芯驰科技)推出的六核高性能、高安全性芯片:D9-Pro,这款芯片有超强视频编解码能力,米尔电子基于该CPU做的核心板,是一套现成的显控板,可以直接用做商显方案。
e1c5afb4f6bbad612d682d2238b5485b.png?v=341707


米尔MYC-YD9360核心板及商显板


D9360处理器是芯驰推出的一款六核CPU的高度集成、低功耗化、高安全性芯片,采用AEC-Q100车规级芯片工艺,并且通过ISO26262 ASIL_B功能安全认证,是国产高性能芯片的代表作。
米尔电子与芯驰科技(SemiDrive)强强联合,基于芯驰D9-Pro高性能国产工业处理器共同推出米尔MYC-YD9360核心板、开发板及商显板,赋能新一代车载智能、电力智能、工业控制、新能源、机器智能等行业发展,满足多屏的显示需求。
7e87c7f154fe84a7eea59b7811671a9f.jpg?v=631623



D9-Pro的视频编解码能力非常强悍,具备4K分辨率,三屏异显,同时具备6路1080P摄像能力。
8100e594f38117792e6f72046b37d0f9.jpg?v=301286



同时,D9-Pro是一款六核高性能处理器,不但运算速度快/效率高,而且多进程并发不卡顿它在AI计算方面也有很强的算力,NPU可达0.8Tops算力,满足轻量级边缘AI智能分析。

9257cd7d50531b62c8650f80a8e3cf5b.png?v=959568



D9-Pro除了高性能之外,它还具备高安全性,自带硬核的加密算法加速,非常适合于商用服务机器人等安全等级较高的场景。

74241ed99cd990c3222f86350412eefb.jpg?v=606419



为了方便客户直接使用,米尔设计了邮票孔封装,具有更强的抗干扰能力和防震性。

a1a8255f3537dda338ec40dae58384af.png?v=389323



当然,为了开发者能更好的拓展功能,米尔电子还贴心配套了开发板评估板。
b3c3502bfba8a35e7d4e4284778c79e9.png?v=321885

D9-Pro处理器开发指南
为了让更多客户快速使用D9-Pro核心板,米尔电子在推出开发板的同时就推出了配套的开发资料。
7b72699a38d61e1ab90402726fb915ed.jpg?v=119113

对于零基础的朋友,可以能需要一点时间熟悉一下相关知识。但对于有一定基础的开发者而言,基于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. <font color="#000000">PC$ sudo mkdir -p /tool
  2. </font>
复制代码

解压编译链

  1. <font color="#000000">PC$ cd $HOME/MYD-JD9X
  2. PC$ tar -xvf gcc_linaro_7.3.tar.gz -C /tool</font>
复制代码


安装、 测试编译链

为方便设置编译链,他们提供一个设置脚本 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 工具进行下载即可。

d39aa5addc5517a16c98812ab5dbf16d.png?v=641662

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

4、修改板级支持包
这一节应该是相对比较重要的,也是相对比较难的,包括U-boot、 kernel等相关内容的编译与更新。
a.板载 SSDK 编译与更新
SemiDrive MCU SDK(以下简称 SSDK) 用于 SemiDrive 各芯片平台的 MCU 软件开发,例如 D9 系列 SOC 的 Safety R5 软件。
编译 SSDK:
  1. 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:
  1. <font color="#000000">wujl@system2-ubuntu1804:/media/wujl/D9/d9_ssdk$ ./build.sh uboot
  2. </font>
复制代码



编译完成后,你可以在 out/images_d9_ref/binary/download_img/目录找到 bootloader.img 二进制文件。

更新 uboot:
拷贝编译的镜像(bootloader.img)到开发板,uboot 对应的分区为/dev/mmcblk0p26,执行下面的命令更新:
  1. <font color="#000000">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</font>
复制代码



c.板载 Kernel 编译与更新

编译 linux:
  1. 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,执行下面的命令更新:
  1. root@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot0/force_ro
  2. root@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot1/force_ro
  3. root@myd-jd9x:~# dd if=kernel.img of=/dev/mmcblk0p38 bs=1M conv=sync
  4. 9+1 records in
  5. 10+0 records out
  6. root@myd-jd9x:~# dd if=dtb.img of=/dev/mmcblk0p34 bs=1k conv=sync
  7. 113+1 records in
  8. 114+0 records out
复制代码


5、适配硬件平台

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

最后
因为贸易战的原因,选择国产替代已是当下的趋势,如果你正在做显控方面的产品,不妨了解一下这款D9360核心板:
5243b17e3423efc47b26a25192eb8de5.jpg?v=912915




2.png
3.jpg
4.jpg
5.png
6.jpg
7.png
8.png
9.jpg
10.png
11.jpg
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

合作/建议

TEL: 19168984579

工作时间:
周一到周五 9:00-11:30 13:30-19:30
  • 扫一扫关注公众号
  • 扫一扫打开小程序
Copyright © 2013-2024 一牛网 版权所有 All Rights Reserved. 帮助中心|隐私声明|联系我们|手机版|粤ICP备13053961号|营业执照|EDI证
在本版发帖搜索
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表