嵌入式工程師到底要將arm架構掌握到什麼程度?

時間 2021-06-03 00:58:57

1樓:togo.huang

什麼叫了解處理器架構?哈佛架構,馮氏架構,多級流水線都是最基礎的常識;SIMD/MIMD/指令預取/亂序執行這些概念也要懂一些;cache多少line多少way多少級代表什麼對效能有什麼影響也要心知肚明。如果還能搞清楚為什麼大核(Cortex-A72)比小核(Cortex-A53)效能要高,就更好了。

能回答這些問題,應該就能說大概了解ARM架構了。

togo.huang:當我們談論嵌入式時我們究競在談什麼

2樓:

如果不是設計晶元的,真沒必要。要會用,精通的那種,用的好,一顆stm32能陪伴你整個職業生涯。應用場景,協議,演算法更加重要

3樓:老吳的嵌入式之旅

如果你已經工作了,取決於你在什麼公司。

如果你還沒工作,取決於你想從事哪個職位。

原則上,越偏底層軟體底層系統的工作越需要了解ARM架構。

傻瓜一點的說法,對於ARM的熟悉程度:

1 板級驅動工程師了解一些ARM彙編 + 看一本ARM架構的書 + 偶爾看一下ARM官方的PDF也就足夠了。

2 晶元級的底層系統工程師就是1裡描述的3倍。

都是工作逼著你去了解CPU架構相關的東西,如果你只是做嵌入式上層軟體開發,那就很幸福,根本不用看這個。不要誤會,並不是說上層軟體開發水平比較差,只是分工不同罷了。

4樓:仗劍走天涯

面試題能過就夠了。真的工作中一般都是團隊合作不懂就問。

真的懂arm需要十多年工作經驗,成了頂梁柱之後也不會問這個問題了。

5樓:文蟲並雕

此問題可拆分為三個問題

1初級嵌入式工程師需要將arm架構掌握到什麼程度。

答案顯然——知道照著dateaheet移植u-boot,kernel,fs,dtb。乙個月左右時間。

2中級嵌入式工程師需要將arm架構掌握到什麼程度。

答案顯然——知道照著dateaheet移植u-boot,kernel,fs,dtb。一周左右。

3高階。。。。。。?

答案顯然,了解arm典型架構啟動流程。從第一條pc取指令開始,各種tlb對映,視窗對映,邏輯,物理,虛擬位址搞明白,徹底那種,觸類旁通,開始涉獵平行架構,mips,powerpc,fpga的zynq。了解主流晶元和大方向。

堅持看kernel。

6樓:陝北的江南

分崗位吧,如果是系統層面,如處理器平台移植,核心優化,需要多了解一些。如果是驅動一類的,如乙太網,藍芽,WIFI晶元,可以了解少點,重點在外設晶元和OS驅動規範

7樓:頭特別鐵

ARM分不同型別啊, 前面說的核心架構、中斷原理、虛擬化原理、與儲存器互動這些其實不同平台是不盡相同的。 甚至有些系統已經提供了豐富的介面問題在於還是要自己去跟弄清其中的原理比如任務排程的過程,從上到下,從系統到暫存器。 抓住乙個點去捋,不要上來就貪多。

8樓:ZhengN

但是,作為嵌入式軟體的我們,只要掌握基礎的晶元內部知識(組成部分有哪些,每個模組的框圖等),就可以把晶元用起來了。

當然,至於掌握的程度,當然是越深越好了。

什麼才是真正的嵌入式工程師?

宅學部落 王利濤 首先,要戴乙個非常有厚度的眼鏡。其次,自己的桌子上要亂,有各種示波器 電路板 萬用表 焊盤,雜亂無章,桌子上堆滿各種手冊 英文文件。桌子的角落和縫隙間要有厚厚的灰塵,一般情況下,灰塵的厚度會跟你工程師的段位成正比.最後,如果再脫脫髮,禿個頂就更完美了。別人經過你的領地時,在如此強大...

Linux系統軟體工程師與嵌入式工程師有什麼區別?

young永 Linux系統軟體工程師一般是做驅動和系統裁剪優化的。嵌入式工程師就比較泛了,現在很多微控制器工程師也歸納為嵌入式工程師了,所以做zigbee,stm32的很多崗位也叫做嵌入式工程師,並不僅僅做Linux的才叫嵌入式工程師。 一句話,嵌入式工程師包括Linux軟體工程師和Linux驅動...

嵌入式軟體工程師應該點亮哪些技能樹?

圖靈小貓 整個嵌入式軟體,分為底層 系統層 應用層。做底層,也就是驅動和BSP,要懂硬體邏輯。比如做乙個電子指南針功能,你要知道地磁感測器和加速度感測器傳來的資料是什麼,如何接受資料 時序圖 以及怎麼處理那些資料得到你想要的結果。做系統層,你要懂得怎麼搭建作業系統,要學習作業系統原理,以及特定的作業...