新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 業(yè)界動態(tài) > 米爾芯馳D9超強國產(chǎn)CPU, 能跑安卓、Linux、RTOS

米爾芯馳D9超強國產(chǎn)CPU, 能跑安卓、Linux、RTOS

—— 一個國產(chǎn)核心板支持單核、雙核、5核、6核
作者: 時間:2023-08-17 來源:電子產(chǎn)品世界 收藏
編者按:米爾能跑安卓、Linux、RTOS的國產(chǎn)核心板開發(fā)板

你還記得缺芯、漲價的那段日子嗎?近幾年,因為貿(mào)易戰(zhàn)、技術(shù)打壓,芯片國產(chǎn)化已成為趨勢。

本文引用地址:http://butianyuan.cn/article/202308/449698.htm

今天給大家推薦一款能跑安卓、Linux、RTOS的開發(fā)板,而且是車規(guī)級工業(yè)超強。那就是米爾電子今年新推出的,基于系列核心板及開發(fā)板。

1692246656733187.png

有什么特點?

1、D9處理器D9處理器是國產(chǎn)廠商芯馳推出的專為新一代電力智能設(shè)備、工業(yè)互聯(lián)網(wǎng)設(shè)備、工業(yè)控制設(shè)備、工業(yè)機器人、工程機械、軌道交通等先進工業(yè)應(yīng)用設(shè)計的高可靠、高安全、高實時、高性能芯片。

D9處理器特點:

■   采用Cortex-A55 + R5組合架構(gòu)

■   臺積電16nm FinFET 制程工藝

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

■   車規(guī)級處理器,芯片結(jié)溫范圍從-40到125攝氏度

■   可同時運行多個不同操作系統(tǒng),如安卓、Linux、FreeRTOS、裸系統(tǒng)等

1692246680515152.png

D9系列處理器提供單核、四核、五核、六核處理器+實時處理器的靈活組合,客戶可依據(jù)自己的應(yīng)用程序需求選擇合適運算能力的型號。

1692246703682957.png

2、米爾基于D9核心板核心板采用高密度高速電路板設(shè)計,在大小為82mmx45mm 的板卡上集成了D9系列處理器、電源、LPDDR4、eMMC、QSPI、EEPROM、看門狗芯片等電路。

1692246730382849.png

一個核心板支持單核、雙核、5核、6核,你見過嗎?

米爾針對不同客戶需求,提供定制服務(wù),可以選配核心板參數(shù)??蛇x: 單核D9-Lite、5核D9-Plus、六核D9-Pro。

1692246754299590.png

3、米爾基于D9底板

米爾基于D9底板為滿足不同用戶的需求,提供了豐富的外設(shè)接口:

1692246789401943.png

這是米爾官方提供的參數(shù)信息:

1692246816202007.png

基于芯馳D9開發(fā)難嗎?

很多開發(fā)者都有一個誤解,剛?cè)胧忠粔K開發(fā)板,要從零開始搞起。而有經(jīng)驗的工程師都知道,換一個平臺,廠家基本都會提供配套軟件工具,比如系統(tǒng)鏡像、SDK、開發(fā)工具等這些廠家都會提供。你只需要根據(jù)自己需求把時間和精力花在應(yīng)用上即可。米爾設(shè)計這款米爾基于D9開發(fā)板時就考慮到了這個問題,在推出開發(fā)板的同時就推出了配套的開發(fā)資料。

1692246848715415.png

對于零基礎(chǔ)的朋友,可以能需要一點時間熟悉一下相關(guān)知識。但對于有一定基礎(chǔ)的開發(fā)者而言,基于D9平臺開發(fā)還是相對不難。

這里結(jié)合官方資料給大家分享一下 D9 Linux 軟件開發(fā)主要流程:

1、概述

MYD-JD9X 搭載基于 Linux 4.14.61 版本內(nèi)核的操作系統(tǒng)。

開發(fā)板出廠附帶嵌入式 Linux 系統(tǒng)開發(fā)所需要的交叉編譯工具鏈,U-boot 源代碼,Linux 內(nèi)核和各驅(qū)動模塊的源代碼等資料包,以及適用于 Windows 桌面環(huán)境和PC Linux 系統(tǒng)的各種開發(fā)和調(diào)試工具,應(yīng)用開發(fā)例程等。

2、開發(fā)環(huán)境

■   D9處理器:D9310、D9340、D9350、D9360等。

■   Linux開發(fā)主機:Debian, Ubuntu, RHEL等,Ubuntu18.04 64bit 桌面版系統(tǒng)。

■   安裝米爾定制的SDK

在使用 SDK 構(gòu)建這個系統(tǒng)鏡像過程中,還需要安裝交叉工具鏈,米爾提供的這個 SDK 中除了包含各種源代碼外還提供了必要的交叉工具鏈,可以直接用于編譯應(yīng)用程序等。

SDK 的安裝步驟,如下:

拷貝 SDK 到 Linux 目錄并解壓

新建工具鏈目錄PC$ sudo mkdir -p /tool
解壓編譯鏈

PC$ cd $HOME/MYD-JD9X

PC$ tar -xvf gcc_linaro_7.3.tar.gz -C /tool
安裝、 測試編譯鏈

為方便設(shè)置編譯鏈,他們提供一個設(shè)置腳本 env.sh

3、構(gòu)建開發(fā)板鏡像

第1步:獲取源碼購買開發(fā)板會提供源碼和配套的工具。

第2步:快速編譯鏡像

這里我們需要使用米爾提供的 envsetup.sh 腳本進行環(huán)境變量的設(shè)置。

進入 SDK 目錄,執(zhí)行./build.sh config 工程配置, 選擇 board、 project、 啟動方式和內(nèi)核版本。然后執(zhí)行./build.sh 完成編譯和打包, 鏡像生成到 out 目錄。

只需執(zhí)行 build.sh 就可以一鍵編譯鏡像:

PC$ ./build.sh

鏡像編譯完成之后,在 SDK 源碼會生成 out 目錄,out 目錄是執(zhí)行 build.sh 一鍵編譯腳本后自動生成的目錄,包含所有的鏡像組件。

主要組件介紹:

■   images_d9_ref 板子的鏡像主目錄

■   binary 目錄,包含所有組件的二進制文件

■   build_object 目錄,包含 BSP 以及 buildroot 系統(tǒng)等組件的編譯信息

■   images 目錄,最終的鏡像目錄,.pac 格式的鏡像燒錄包

第3步:構(gòu)建 SD 卡燒錄器鏡像

構(gòu)建 sd 卡燒錄鏡像之前,需要先構(gòu)建完 full 鏡像。準備 full 鏡像,進入 SDK 目錄,執(zhí)行 build.sh config 命令,選擇 D9 為 SD 卡啟動。然后,編譯 SD 卡鏡像,編譯更新鏡像包。

4、燒錄系統(tǒng)鏡像D9 系列微處理器啟動方式有多種,用戶可以根據(jù)需求選擇不同的方式進行更新。更新方式主要有以下幾種:.

■   USB 燒寫:適用于研發(fā)調(diào)試,測試等場景。

■   制作 SD 卡啟動器: 適用于研發(fā)調(diào)試,快速啟動等場景

■   制作 SD 卡燒錄器:適用于批量生產(chǎn)燒寫 eMMC

官方資料給出了兩種方法:SDFactoryTool 燒錄、制作 SD 卡燒。

方法一:SDFactoryTool 燒錄也就是使用SDFactoryTool工具,通過USB進行燒錄。

通過USB將電腦和開發(fā)板連接,選擇啟動模式,將撥碼開關(guān)撥到 USB 下載模式。

準備燒錄鏡像,啟動 SDFactoryTool 工具進行下載即可。

1692246912260797.png

方法二:SD卡燒錄為滿足生產(chǎn),大批量燒錄,也可以使用SD卡燒錄的方法。

這里通過制作 TF 卡燒錄器鏡像包實現(xiàn)這種方法,為節(jié)省時間,米爾已經(jīng)把 sd 卡燒錄鏡像包編譯完成,用戶只需編譯更新鏡像包就行。(具體可以參考開發(fā)手冊)

5、修改板級支持包這一節(jié)應(yīng)該是相對比較重要的,也是相對比較難的,包括U-boot、 kernel等相關(guān)內(nèi)容的編譯與更新。

a.板載 SSDK 編譯與更新SemiDrive MCU SDK(以下簡稱 SSDK) 用于 SemiDrive 各芯片平臺的 MCU 軟件開發(fā),例如 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 是一個功能非常豐富的開源啟動引導(dǎo)程序,包括內(nèi)核引導(dǎo),下載更新等眾多方面。

編譯 uboot:

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

編譯完成后,你可以在 out/images_d9_ref/binary/download_img/目錄找到 bootloader.img 二進制文件。
更新 uboot:

拷貝編譯的鏡像(bootloader.img)到開發(fā)板,uboot 對應(yīng)的分區(qū)為/dev/mmcblk0p26,執(zhí)行下面的命令更新: 

root@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot0/force_ro

root@myd-jd9x:~# echo 0 > /sys/block/mmcblk0boot1/force_ro

root@myd-jd9x:~# dd if=bootloader.img of=/dev/mmcblk0p26 bs=1M conv=sync 0

+1 records in

1+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 二進制文件。

更新內(nèi)核和設(shè)備樹:

拷貝編譯的鏡像(kernel.img)到開發(fā)板,kernel 對應(yīng)的分區(qū)為/dev/mmcblk0p38,dtb 對應(yīng)的分區(qū)為/dev/mmcblk0p34,執(zhí)行下面的命令更新:

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

6、適配硬件平臺這一節(jié)相當(dāng)于是芯片底層驅(qū)動相關(guān)的內(nèi)容,可通過芯馳提供的引腳配置的工具,快速定義各個節(jié)點的管腳,屬性,電源等(官方提供了對應(yīng)工具)。

這里配置的具體細節(jié),可以參看《MYD-JD9X_Linux軟件開發(fā)指南》第6節(jié)。

接下來,就可以添加你的應(yīng)用程序了,官方提供了“基于 Makefile 的應(yīng)用”的介紹,大家可以參看一下。

03.最后總結(jié)

因為技術(shù)打壓的原因,選擇國產(chǎn)替代已是當(dāng)下的趨勢,如果你正在尋找一款類似的芯片,不妨了解一下這款D9系列開發(fā)板:

image.png

image.png

image.png



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉