日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

硬件/軟件/固件的區(qū)別

GReq_mcu168 ? 來源:玩轉單片機 ? 2020-05-07 15:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

軟件跟硬件之間的界限已經越來越模糊了,那么處于這個灰色地帶的,就是固件了。這就分成三類工作者。

1、軟件工程師一般指做圖形界面的程序員,工作內容就是寫C++、JAVA、Web等。 2、硬件工程師當然是指玩電路板的,工作內容就是畫原理圖、PCB等。 3、固件工程師也叫單片機工程師,既寫代碼(主要是C語言、匯編)又要畫電路圖。

玩單片機的人,可能會有個疑問,為什么我寫的C語言能操作到底層的硬件?其實在《計算機組成原理》已經有很詳細的介紹了。 我這里粗略地介紹一下,這個原理。

首先你可以搜索一下“從零開始造電腦”,這位叫Steve的大神,就告訴你,用晶體管可以做出CPU(單片機也是CPU)。

當然,我們現(xiàn)在可不會落后到需要到晶體管來制造電腦。 接下來,你可以看一部叫《喬布斯》的電影,劇中就給你展示蘋果公司的第一臺計算機。

嘿嘿,看到那些黑色的芯片沒有?還有兩個大大的變壓器。這說明了在大學玩單片機的時代,就相當于回到蘋果公司的初始時期!是不是很激動人心? 其實你可以用74系列的邏輯IC、單片機等,來搭建一個屬于自己的計算機。這就是說人們把若干個晶體管集成為一塊74系列的IC,如果集成度更高呢?那就是手機或者臺式機用的多核CPU了。 好,介紹了這些古董之后,就讓你有個認識,計算機本質上是N個晶體管的組合,也是數字邏輯芯片的組合,更高級的,就是一塊數?;旌系男酒唧w形式是由你的工藝決定的?,F(xiàn)在回到正題,介紹一下數電的基礎知識。 因為CPU主要功能是計算,也就是可以直接運用數學知識來解決問題,這里就舉個例子介紹一下,CPU如何計算加法,也就是用數電里的門電路搭一個加法器。

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

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

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

說到這里,你至少應該知道,我們只要改變ROM的內容,就可以操作CPU內部的ALU,從而操作CPU的各個硬件單元了。 下面給個相對完整一點的ALU內部結構圖。

ROM的內容本質上是一些電荷量(電容上有、無電荷,代表二進制的1和0),也就是固件、軟件工程師寫的代碼。而硬件,就是由晶體管搭建的數字、模擬電路(如:單片機內部的比較器、ADC等)。所以硬件是物理器件,不容易更改;而ROM的內容完全可以用燒錄器就輕松改變它,修改成本非常低,而且很靈活。 在這里,你很難表述,這些電荷量是軟件還是硬件,但是CPU的這種結構,導致了兩種不同類型的工作者,我們稱他們?yōu)檐浖こ處熀陀布こ處?。而單片機程序員寫的代碼,跟硬件密切相關,而且一旦完成之后,很少需要修改的(不像軟件工程師修改的那么頻繁),我們稱之為固件。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6078

    文章

    45613

    瀏覽量

    674770
  • 軟件
    +關注

    關注

    69

    文章

    5381

    瀏覽量

    92018
  • 晶體管
    +關注

    關注

    78

    文章

    10453

    瀏覽量

    148821

原文標題:解讀:談談硬件/軟件/固件的區(qū)別

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    固件版本錯配:一個讓老工程師都栽過跟頭的“低級錯誤”

    :使用“final_v2_new.hex”等模糊命名,無法從文件名追溯其對應的硬件基準與軟件變更。2.變更同步失效:硬件工程師進行設計變更后,未通過正式流程(如變更通知單)更新受影響的固件
    發(fā)表于 12-18 10:31

    智能雙卡設計實戰(zhàn)指南:硬件電路與軟件配置詳解!

    在智能雙卡設計中,硬件電路的可靠性與軟件配置的精準性直接決定雙卡功能的穩(wěn)定性。本文基于實際項目經驗,詳細拆解硬件設計中SIM卡供電電路、時鐘信號匹配及卡槽復用設計的實現(xiàn)細節(jié),并同步講解軟件
    的頭像 發(fā)表于 12-16 15:13 ?722次閱讀
    智能雙卡設計實戰(zhàn)指南:<b class='flag-5'>硬件</b>電路與<b class='flag-5'>軟件</b>配置詳解!

    ADC模數轉換實戰(zhàn):硬件設計與軟件開發(fā)要點指南!

    為實現(xiàn)高精度、高穩(wěn)定性的ADC模數轉換,硬件軟件設計均需遵循特定原則。硬件層面需優(yōu)化信號調理、參考電壓及抗干擾設計;軟件層面需合理配置采樣參數、實現(xiàn)數據濾波及異常處理。本文將結合實際
    的頭像 發(fā)表于 12-16 13:25 ?633次閱讀
    ADC模數轉換實戰(zhàn):<b class='flag-5'>硬件</b>設計與<b class='flag-5'>軟件</b>開發(fā)要點指南!

    芯源的CRC硬件計算誰用過嗎?MCU的CRC你們喜歡用硬件的還是軟件的???

    芯源的CRC硬件計算誰用過嗎?MCU的CRC你們喜歡用硬件的還是軟件的啊?
    發(fā)表于 12-01 08:25

    嵌入式系統(tǒng)profinet轉devicenet固件硬件接口的連接案例

    與貨物信息采集。核心需求是基于網關的嵌入式固件,實現(xiàn)硬件接口的適配與數據的高效處理。 Profinet從站(網關)與西門子PLC的博圖組態(tài)步驟 硬件接口與固件版本確認:打開TIAPor
    的頭像 發(fā)表于 11-18 14:11 ?1169次閱讀
    嵌入式系統(tǒng)profinet轉devicenet<b class='flag-5'>固件</b>與<b class='flag-5'>硬件</b>接口的連接案例

    音響中軟件分頻和硬件分頻區(qū)別解析以及對音質和成本的影響

    ? ? ? 要理解藍牙音響中 軟件分頻 與 硬件分頻 的區(qū)別,需先明確 “分頻” 的核心目的:將音頻信號(20Hz-20kHz)拆分為不同頻段(如低頻、中頻、高頻),分別驅動對應頻段的喇叭單元
    的頭像 發(fā)表于 11-18 10:34 ?1654次閱讀

    廣凌智慧教室建設內容:硬件軟件介紹

    廣凌科技(廣凌股份)憑借“硬件+平臺+數據”的深度融合,推出智慧教室整體解決方案,全面覆蓋智慧教室建設的硬件配置、軟件平臺、數據驅動及場景適配需求,一起來看看廣凌智慧教室建設需要搭建什么硬件
    的頭像 發(fā)表于 11-11 16:17 ?1543次閱讀
    廣凌智慧教室建設內容:<b class='flag-5'>硬件</b>與<b class='flag-5'>軟件</b>介紹

    程序線性補償和傳感器本身硬件補償有什么區(qū)別?

    程序線性補償和傳感器硬件補償,涉及到傳感器信號處理的兩種核心思路。我們來詳細拆解一下它們的區(qū)別。簡單來說:傳感器本身硬件補償:是在物理層面,通過額外的硬件元件或專用芯片,直接在傳感器內
    的頭像 發(fā)表于 10-29 12:02 ?664次閱讀
    程序線性補償和傳感器本身<b class='flag-5'>硬件</b>補償有什么<b class='flag-5'>區(qū)別</b>?

    硬件融合拼接器與軟件融合拼接的區(qū)別?

    硬件融合拼接器和軟件融合拼接是兩種不同的圖像拼接技術,它們在實現(xiàn)方式、效果和應用場景等方面存在一些區(qū)別。 1、實現(xiàn)方式 硬件融合拼接器通常是通過硬件
    的頭像 發(fā)表于 09-28 14:33 ?686次閱讀

    硬件工程師和嵌入式軟件哪個更有前途?

    不少人琢磨硬件工程師和嵌入式軟件到底哪個更有前途,其實從實際職場情況和成長路子看,差別還挺清楚的。先說說天花板這事,一般來講,硬件工程師的職業(yè)天花板還真比嵌入式軟件低 ——
    的頭像 發(fā)表于 09-10 10:43 ?1414次閱讀

    電動工具EMC測試整改:硬件軟件的成本減半秘訣

    深圳南柯電子|電動工具EMC測試整改:硬件軟件的成本減半秘訣
    的頭像 發(fā)表于 08-20 11:06 ?1149次閱讀

    發(fā)電機控制器EMC整改:硬件+軟件雙維度的整改方案

    深圳南柯電子|發(fā)電機控制器EMC整改:硬件+軟件雙維度的整改方案
    的頭像 發(fā)表于 07-28 10:59 ?729次閱讀

    求助,CYBT-243053-02 EZ固件問題求解

    我們正在嘗試將 CYBT-243053-02 作為我們新硬件的潛在藍牙模塊,我們對 CYBT-243053-02 的 EZ 固件和一般模塊幾乎沒有疑問. 1)。 我們一直在嘗試通過 Cypress
    發(fā)表于 07-04 07:50

    請問EZ-Serial固件是否使用任何OSS(開源軟件)庫或軟件

    EZ-Serial 固件是否使用任何 OSS(開源軟件)庫或軟件?
    發(fā)表于 07-02 08:14

    Vector MICROSAR HSM固件通過ISO/SAE 21434認證

    Vector針對汽車ECU硬件安全模塊(HSM)的固件產品——MICROSAR HSM,已正式通過 ISO/SAE 21434認證。作為一家國際軟件供應商,此次認證彰顯Vector致力于提供符合最高國際標準信息安全解決方案的承諾
    的頭像 發(fā)表于 06-12 17:33 ?1667次閱讀
    Vector MICROSAR HSM<b class='flag-5'>固件</b>通過ISO/SAE 21434認證
    墨脱县| 唐河县| 容城县| 蓝山县| 乌恰县| 定安县| 深水埗区| 葫芦岛市| 阿巴嘎旗| 德令哈市| 弋阳县| 清新县| 保康县| 益阳市| 二连浩特市| 新闻| 鹤庆县| 灵丘县| 织金县| 西和县| 宁津县| 孟连| 三门峡市| 女性| 醴陵市| 响水县| 广州市| 南平市| 天峻县| 江西省| 健康| 泸溪县| 肃南| 乌兰浩特市| 潍坊市| 佳木斯市| 西林县| 普宁市| 曲沃县| 莲花县| 汽车|