[2021铁人赛 Day-03] ARM and 嵌入式开发板

  • 前言
    昨天朋友知道我正在撰写文章,果然是朋友啊XD
    毫不留情地被呛爆,写一大堆屁话,却没有介绍嵌入式开发板(无限问号Orz)
    别急~今天不就来了吗~那就让我们给它看下去!

  • ARM
    说到嵌入式开发板,大家通常都会想到 ARM
    大家心中又会有一个疑问,明明 ARM 架构也推出 30 几年,为什麽最近又被苹果炒起来?
    ARM架构(进阶精简指令集机器, Advanced RISC Machine)

    精简指令集处理器架构家族(RISC),被广泛使用在嵌入式系统
    设计目标为低成本、高效能、低耗电

    早期的CPU是复杂指令集处理器(CISC架构),随着时间演进,有越来越多的指令加入,逐渐开发出单一指令,复杂操作的程序码。
    RISC相比於CISC,处理器简化,因为电晶体数量少,易於提升硬体运作时脉,所以耗电量较低。

    想必看到这边,大家也不难猜出为什麽苹果要将处理器改成 ARM,除了省电与轻薄,具有最佳的效能功耗比,我也默默的打开官网下订一台笔电,真的好香!


嵌入式开发板

说到要探索 ARM,当然要慢慢操作是最好的学习途径啦XD
从没有作业系统到板子上电後,跑出作业系统的画面,整个很有成就感啊!
我们这次的主题就以环境的学习为基础,假如还有时间再来实作应用~

题外话时间:)
笔者有碰过 Pandaboard、Devkit8000、Arduino、Raspberry Pi 以及 NVIDIA Jetson TX2
根据需求选择适合的板子,利用 Pandaboard、Devkit8000 学习环境建置,使用 Arduino、Raspberry Pi 实作Side Project,最近很夯的人工智慧则会使用具有 GPU 的 NVIDIA Jetson TX2。

我们的嵌入式开发板可以有很多种选择,笔者操作主要会使用 Pandaboard ES LTM,
这是一块名字有点可爱又有点年代的板子,现在看到几乎可以当成传家宝XD
https://ithelp.ithome.com.tw/upload/images/20210917/20141172kRqNzCkI8r.jpg
图片来源:Pandaboard ES

它有几个特色:

核心处理器 OMAP4460,CPU是双核 CortexTM-A9
支援1080p的影像录制与播放,具有通用型输入输出(GPIO)

虽然这是一块有点年代的板子,相较於现今的其他设备,用它的处理器、GPU 以及 RAM 开发实际的应用,应该是没办法做到,但是若是用来认识嵌入式整个架构,以及硬体开机後所做的设定,应该是绰绰有余~
从载入开机程序、制作 kernel 映像档、建立档案管理系统,再到使用网路控制档案系统,它都有提供很好的支援学习。

我们为什麽要先了解处理器的硬体规格?
因为开发者进行软件设计,讨论完需要实现的功能後,硬体与软件工程师会一起讨论,
假定一块合适的处理器作为开发基准,接着开始设计软件,选择适合的处理器才不会让资源过剩。

好的,简单介绍完之後会用的开发板
接着要进入开发嵌入式系统有关的 Toolchain~


<<:  Day 12 强化学习 (Reinforcement Learning)

>>:  Day-04 如何将APP安装到手机上

Day30 Try catch

当程序遇到问题或者是错误时,会中断整个软件的执行,造成程序无法继续往下执行,这时我们会使用例外处理,...

Day 23 利用transformer自己实作一个翻译程序(五) Positional encoding

Positional encoding 在Day 13 Self-attention(七) Posi...

Day 15 : 机器学习介绍

前半段讲python讲得差不多惹XDD 终於进入机器学习篇章(打开全新的一页的感觉),接着让我们好好...

Day 29 - Vanilla JS Countdown Timer

前言 JS 30 是由加拿大的全端工程师 Wes Bos 免费提供的 JavaScript 简单应用...

30-1 之 前言

这个是第四次参加铁人赛,并且也是第一次参加自我挑战组 ~ 想说这一次要放过自已一下, 就想说报个自我...