历史上的今天
今天是:2025年05月26日(星期一)
2021年05月26日 | 学习ARM体系结构的意义
2021-05-26 来源:eefocus
时常有些同学会问,在嵌入式开发中用得最多的是什么?我答,是C语言。那么最复杂的是什么?是嵌入式操作系统。只有Bootloader主要用到体系结构的知识吗?嗯,那当然。写Bootloader似乎也太麻烦了点,这要怎么开始啊?没有人要求你从车轮开始造的,提供开发板的厂商必然会附送一个具备基本功能的Bootloader的,你就分析它,按自己的意愿修改它,然后就可得到自己的Bootloader了。那岂不是学习体系结构没有多大用了?
换个视角来看。数学贵为科学的皇后,自打背上书包起,各类数学课本就没有离开过我们,也是各类国家级大考的“常委”,可毕业后的工作实践中,究竟有多少次用到过那些高深的数学知识了?大多数人都会迟疑片刻,接着把脑袋摇得跟拨浪鼓似的。显然这样看问题有些肤浅了,数学是基础知识,是理论工具,在实际应用中起着至关重要的作用,只不过我们没有察觉或“站在了巨人的肩膀上”了。一次,我发现堆排序算法中改变排序的路径将略微减少比较的总次数,并用计算机写出了新算法程序,一次次的随机数实验后,发现真的较传统算法快约六分之一,可我老师说算法这学问是需要数学理论推导为基础的,实验数据再多也不过是数域上孤立的点,是无法令人信服的。费了九牛二虎之力,我列出一个长长的概率公式,望着一层层跌套的求积求和符号,我汗颜了。数学不是没用,是没学好,不会用。
嵌入式系统和个人计算机的区别,很大程度就在体系结构的差异上,若没有认真学过体系结构,怎能声称是嵌入式开发人员呢?现在ARM处理器应用如此的广泛,若不清楚其与X86各自的特点和差异,又能够说把嵌入式做到多好呢?
对那些将投入驱动开发领域的同学来说,有可能你将面对处理器最最原始的一面,每一个细节你都要认真细致地对待,否则实验的结果常常会令你沮丧好几天,粉碎了你的自信心,更糟的是对硬件产生了永久性的损坏。而对那些在体系结构上下过功夫的同学来说,明明白白地清楚处理器在干什么,为什么会这样,怎样换一种方法来找到实验失败的原因。在这里,不要指望百度和谷歌能帮上你什么忙,因为实验环境很特别或太具体,别人的仙丹放到这里来可能根本行不通。你必须自己摸索,自己慢慢积累经验,靠什么呢,靠最最基础的体系结构知识。
另一些同学声称将来会向应用方向发展,将体系结构“抽象掉了”,与系统是无关的。那是自然,不过这样想的话,你就不能成为一个真正的高手,你并不清楚处理器在你的那些语句背后是如何工作的,也就不清楚它究竟会采用一种什么方式去做这件工作,“大概是XXX样子吧”,最后你对它完成此工作的效率估计得没谱,也根本不知道有何更高效的途径,最后当老板问你还有多大性能的优化空间时,你只能祈祷编译器各类优化选项的恩泽,而不敢拍着胸脯说硬件性能可以被榨干。
还有一些同学将致力于长期的嵌入式生涯,他们把这当做一种乐趣,或者希望将来自己能系统地掌握,那么BSP将会长期伴随他们。对于BSP的开发,没有扎实的体系结构知识将是寸步难行的,多的道理也就不用再强调了
史海拾趣
|
系统资源 DSP 处理器TMS320F2812 ,最高工作频率150MHz; SHX-DSP2812开发板 DSP 芯片内置18K X 16 位 SRAM, 4K X 16 位BOOT ROM , 1K X 16 位 OPT ROM ; DSP 芯片内置128K X 16 位FLASH; 外扩32k×16bit 的程序RAM,32k×16bit ...… 查看全部问答> |
|
在网上找了一个控制lcd的程序,调了很久都没有调好,哪位高人指导一下。有几个问题:对lcd的操作,为什么要向cgram中写数据;lcd的时钟多少适合。不胜感激! --利用FPGA驱动LCD显示中文字符\"年\"的VHDL程序。 --文件名 :lcd1602.v ...… 查看全部问答> |
|
vc/evc白痴时薪50元请vc++家教(可以在线教育 我有远程桌面 附软件下载地址) 最好有招商银行卡容易转帐:-) 说是白痴 但是不会太难教 钱不多权当辛苦费 首先介绍下本人的文化程度大专.在深圳从事软件测试3年 技能水平:能写winrunner脚本 shell脚本 熟一点c++ 对c#比较熟悉 写过小的测试程序 写过点网站程序 难题:从来没有学过vc 现在一个vc的 ...… 查看全部问答> |
|
为什么Proteus仿真msp430出现这个错误SEH trap C000001D in module'MSP430.DLL; 为什么Proteus仿真msp430出现这个错误SEH trap C000001D in module\'MSP430.DLL; … 查看全部问答> |
|
想设计这样的一个带功率追踪的逆变器,方案可行么? 第一级DC-DC电路是实现最大功率追踪的,出来的电压不是固定的,随负载变化的 第二级DC-DC电压是专门为逆变提供一个稳定的直流电压,让逆变在一个恒定直流电压上进行 第三级就是普通的桥式逆变电 ...… 查看全部问答> |
|
本帖最后由 shower.xu 于 2015-5-15 14:34 编辑 总觉得时间和口袋里的钱一样,越来越不够用了..... 先把所有帖子做个汇总: 【LPC54100】第一周-分享部分原理图和blink跑起 第一周2-添加一个小显示屏并驱动成功 【LPC54100】第二周-添加按键 ...… 查看全部问答> |




