當(dāng)前位置:首頁 > 公眾號精選 > 技術(shù)讓夢想更偉大
[導(dǎo)讀]關(guān)注、星標(biāo)公眾號,直達(dá)精彩內(nèi)容文章來源:網(wǎng)絡(luò)現(xiàn)如今,軟件和硬件之間的界限已經(jīng)越來越模糊了,那么處于這個(gè)灰色地帶的,就是固件。于是,這就分成了三類工作者:一是,軟件工程師一般指做圖形界面的程序員,工作內(nèi)容就是寫C、JAVA、Web等。二是,硬件工程師當(dāng)然是指玩電路板的,工作內(nèi)容就是...


文章來源:網(wǎng)絡(luò)


現(xiàn)如今,軟件和硬件之間的界限已經(jīng)越來越模糊了,那么處于這個(gè)灰色地帶的,就是固件。于是,這就分成了三類工作者:
一是,軟件工程師一般指做圖形界面的程序員,工作內(nèi)容就是寫C 、JAVA、Web等。
二是,硬件工程師當(dāng)然是指玩電路板的,工作內(nèi)容就是畫原理圖、PCB等。
三是,固件工程師也叫單片機(jī)工程師,既寫代碼(主要是C語言、匯編)又要畫電路圖。
玩單片機(jī)的人,可能會(huì)有個(gè)疑問,為什么我寫的C語言能操作到底層的硬件?其實(shí)在《計(jì)算機(jī)組成原理》已經(jīng)有很詳細(xì)的介紹了。
我這里粗略地介紹一下,這個(gè)原理。
首先,你可以搜索一下“從零開始造電腦”,這位叫Steve的大神,就告訴你,用晶體管可以做出CPU(單片機(jī)也是CPU)。
當(dāng)然,我們現(xiàn)在可不會(huì)落后到需要到晶體管來制造電腦。
接下來,你可以看一部叫《喬布斯》的電影,劇中就給你展示蘋果公司的第一臺計(jì)算機(jī)。
嘿嘿,看到那些黑色的芯片沒有?還有兩個(gè)大大的變壓器。這說明了在大學(xué)玩單片機(jī)的時(shí)代,就相當(dāng)于回到蘋果公司的初始時(shí)期!是不是很激動(dòng)人心?
其實(shí)你可以用74系列的邏輯IC、單片機(jī)等,來搭建一個(gè)屬于自己的計(jì)算機(jī)。這就是說人們把若干個(gè)晶體管集成為一塊74系列的IC,如果集成度更高呢?那就是手機(jī)或者臺式機(jī)用的多核CPU了。
好,介紹了這些古董之后,就讓你有個(gè)認(rèn)識,計(jì)算機(jī)本質(zhì)上是N個(gè)晶體管的組合,也是數(shù)字邏輯芯片的組合,更高級的,就是一塊數(shù)?;旌系男酒唧w形式是由你的工藝決定的。現(xiàn)在回到正題,介紹一下數(shù)電的基礎(chǔ)知識。
因?yàn)镃PU主要功能是計(jì)算,也就是可以直接運(yùn)用數(shù)學(xué)知識來解決問題,這里就舉個(gè)例子介紹一下,CPU如何計(jì)算加法,也就是用數(shù)電里的門電路搭一個(gè)加法器。



怎樣用晶體管搭這些與、或、非門就不說了,不懂的,可以翻書。上圖就告訴你,可以用這些門電路搭一個(gè)加法器。
怎樣輸入Ai=0,Bi=1,Ci=0?用74系列的IC的話,可以直接把Ai,Ci接GND,Bi接VCC,就實(shí)現(xiàn)加法了。而在CPU內(nèi)部也是一樣可以這樣做的,但是CPU可沒那么死板,只算常數(shù)的加法。



上圖中,藍(lán)色箭頭指向的1,就是接VCC的,而紅色箭頭,就是接GND。
在CPU內(nèi)部,還有ROM,它可以把你要計(jì)算的加數(shù)和被加數(shù)存進(jìn)去(ROM輸出的高低電平,跟你接GND和VCC是一樣的效果),而結(jié)果則存在寄存器(先暫存,以備后面使用)。
現(xiàn)在有個(gè)問題,如果加完之后還要計(jì)算乘法(在信號處理領(lǐng)域的卷積運(yùn)算的核心單元就是乘加器),怎么辦?誰來自動(dòng)完成這個(gè)動(dòng)作?幸好,CPU里面有個(gè)叫ALU(算術(shù)邏輯單元)來處理這件事情。



這里的控制單元,就把ROM里面的數(shù)據(jù)取出來,再用選擇器,來調(diào)用加法器和乘法器,最終把結(jié)果存到寄存器中。
如果ROM里面只存數(shù)據(jù),那是無法讓控制單元知道,你要執(zhí)行加法還是乘法,要解決這個(gè)問題,就需要在ROM里面再劃分一個(gè)區(qū)域,存放指令碼。
這個(gè)指令碼,跟數(shù)據(jù)是一樣,都是0、1的二進(jìn)制數(shù),只是用途不同,所以起了不同的名字。
其實(shí)這個(gè)指令碼,對應(yīng)在單片機(jī)里面的匯編語言,就是操作碼(如:MOV);而操作數(shù)就是數(shù)據(jù)(如:01H)。具體的,可以看看單片機(jī)的教材。
根據(jù)指令碼的設(shè)計(jì)方法來分,有四種,分別是CISC、RISC、VLIW、TTA,具體區(qū)別可以看計(jì)算機(jī)組成原理。
而PC(程序計(jì)數(shù)器)就是控制ROM的地址,現(xiàn)在你要知道PC是不能出錯(cuò)的,一旦出錯(cuò),就意味著單片機(jī)不按照你的代碼來工作。
現(xiàn)在,我在8位的CPU的ROM里面,第一個(gè)地址存了0x03這個(gè)指令碼來代表加法,而在第二、三個(gè)地址存了加數(shù)和被加數(shù),然后在第四個(gè)地址存了0x05代表乘法,在第五、六個(gè)地址存了乘數(shù)和被乘數(shù)。
那么,按照一定的規(guī)則來設(shè)計(jì)控制單元(這個(gè)規(guī)則可以自己定義的),它就知道0x03是要執(zhí)行加法。
那么這個(gè)規(guī)則如何設(shè)計(jì)?最簡單的,就是用與門了,然后輸出一個(gè)使能信號,讓加法器工作,就跟上面的74LS160差不多。
但是CPU可沒那么簡陋,它可以使用狀態(tài)機(jī)、流水線等,來控制這些基本單元(如:加法器、乘法器),如下圖所示:



說到這里,你至少應(yīng)該知道,我們只要改變ROM的內(nèi)容,就可以操作CPU內(nèi)部的ALU,從而操作CPU的各個(gè)硬件單元了。
下面給出相對完整一點(diǎn)的ALU內(nèi)部結(jié)構(gòu)圖:



ROM的內(nèi)容本質(zhì)上是一些電荷量(電容上有、無電荷,代表二進(jìn)制的1和0),也就是固件、軟件工程師寫的代碼。而硬件,就是由晶體管搭建的數(shù)字、模擬電路(如:單片機(jī)內(nèi)部的比較器、ADC等)。
所以硬件是物理器件,不容易更改;而ROM的內(nèi)容完全可以用燒錄器就輕松改變它,修改成本非常低,而且很靈活。
在這里,你很難表述,這些電荷量是軟件還是硬件,但是CPU的這種結(jié)構(gòu),導(dǎo)致了兩種不同類型的工作者,我們稱他們?yōu)檐浖こ處熀陀布こ處煛6鴨纹瑱C(jī)程序員寫的代碼,跟硬件密切相關(guān),而且一旦完成之后,很少需要修改的(不像軟件工程師修改的那么頻繁),我們稱之為固件
來源:網(wǎng)絡(luò)版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系刪除。????????????????  END  ????????????????

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

一般從事互聯(lián)網(wǎng)工作,尤其是軟件類崗位,通常加班現(xiàn)象都是比較嚴(yán)重的。那么,做硬件的就沒有加班了嗎?

關(guān)鍵字: 互聯(lián)網(wǎng) 程序員 工程師

麥格納(MAGNA)正在進(jìn)行一項(xiàng)1.2億美元的投資,在印度班加羅爾建立和運(yùn)營一座全新工程中心,旨在為出行電動(dòng)化提供支持。該設(shè)施占地約2.2萬平方米,預(yù)計(jì)將于2023年第一季度開業(yè),屆時(shí)該中心將聘請眾多經(jīng)驗(yàn)豐富的工程師和技...

關(guān)鍵字: 工程師 仿真 電動(dòng)汽車 軟件

深圳2022年9月26日 /美通社/ -- 9月24日,知行「科技X商業(yè)」研習(xí)院在深圳舉行了2022級科創(chuàng)大本營開學(xué)典禮。參與典禮發(fā)言環(huán)節(jié)的嘉賓包括XbotPark聯(lián)合創(chuàng)始人李澤湘、深圳天使投資引導(dǎo)基金董事長姚小雄以及往...

關(guān)鍵字: 創(chuàng)始人 半導(dǎo)體 工程師 TI

荷蘭ASML公司 (全稱: Advanced Semiconductor Material Lithography,該全稱已經(jīng)不作為公司標(biāo)識使用,公司的注冊標(biāo)識為ASML Holding N.V),中文名稱為阿斯麥爾(中...

關(guān)鍵字: ASML 工程師 芯片

(全球TMT2022年9月20日訊)9月19日,華為全聯(lián)接大會(huì)2022在泰國開幕,以"創(chuàng)新無限,一切皆服務(wù)"為主題的華為云峰會(huì)成功舉辦,華為云亞太地區(qū)部總裁曾興云、華為云首席產(chǎn)品官方國偉以及多位客戶伙伴發(fā)表主旨演講。會(huì)...

關(guān)鍵字: 并聯(lián) 華為云 數(shù)字化 工程師

(全球TMT2022年9月16日訊)今日要點(diǎn):騰訊游戲海外投資額達(dá)千億元;阿斯麥今年將在臺灣招募1100名工程師;榮耀X40發(fā)布售價(jià)1499元起;華為云未來3年將支持10000家初創(chuàng)企業(yè)。 騰訊游戲海外投...

關(guān)鍵字: 騰訊 華為云 榮耀 工程師

以前都是等著,家里電器壞了趕緊拆解一下,這回實(shí)在是等不及了,找個(gè)便宜的下手吧。這個(gè)遙控器用了好多年,感覺還是不錯(cuò),起碼電池挺禁用的。古人云,三人行必有我?guī)熝伞D敲磳τ诿恳粋€(gè)設(shè)備,也都有我們可以學(xué)習(xí)的地方。

關(guān)鍵字: 嵌入式 工程師

福建莆田2022年9月1日 /美通社/ -- 8月30日,武大靖攜手央視網(wǎng)共同走進(jìn)三棵樹醉美園區(qū),與央視網(wǎng)主持人常婷、黃鶴,一起開啟“尋綠之旅”,從綠色理念、綠色園區(qū)、綠色產(chǎn)品、綠色生產(chǎn)、綠色服務(wù),看三棵樹用綠色涂料涂刷...

關(guān)鍵字: 智能化 工程師 調(diào)試 研發(fā)中心

據(jù)悉,蘋果公司前工程師張小浪(Xiaolang Zhang)在加州圣何塞聯(lián)邦法院就跳槽小鵬汽車前涉嫌竊取蘋果汽車部門商業(yè)秘密案進(jìn)行了刑事指控并認(rèn)罪。之前,張小浪被蘋果指控在跳槽小鵬汽車前竊取了蘋果的自動(dòng)駕駛部門的商業(yè)機(jī)密...

關(guān)鍵字: 小鵬汽車 蘋果 工程師 自動(dòng)駕駛

北京2022年8月16日 /美通社/ -- "一只南美洲亞馬遜河流域熱帶雨林中的蝴蝶,偶爾扇動(dòng)幾下翅膀,可以在兩周以后引起美國得克薩斯州的一場龍卷風(fēng)。" -- 這便是著名的"蝴蝶效...

關(guān)鍵字: 噪音 讀寫 工程師 音頻

技術(shù)讓夢想更偉大

257 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉