看到這個(gè)問題,相信大家很多人都在問,也有很多人想知道,還有很多人有自己的看法,今天我在這里發(fā)表一下自己的觀點(diǎn)。
現(xiàn)在在大學(xué)里,51單片機(jī)仍是電子類專業(yè)必修的課程,然而這幾年隨著ARM的火爆,很多51的學(xué)習(xí)者有了專業(yè)一個(gè)疑問:既然大家都在用ARM,我們?yōu)槭裁催要學(xué)51?而且找工作的時(shí)候人家也比較關(guān)注有過ARM使用經(jīng)驗(yàn)的。
為了解決這個(gè)疑問,我們首先需要分清下面幾個(gè)概念:單片機(jī)、ARM、DSP、FPGA/CPLD,這幾個(gè)關(guān)鍵詞是學(xué)習(xí)電子的人常見的幾種芯片(我不知道該統(tǒng)稱什么,姑且這么叫吧)。這幾個(gè)詞要分類的話首先要把FPGA/CPLD和其他的分開,因?yàn)?/span>FPGA/CPLD的原理和單片機(jī)、ARM、DSP不同。
FPGA/CPLD 是通過硬件實(shí)現(xiàn)功能的,FPGA是Field-Programmable Gate Array的縮寫,即現(xiàn)場(chǎng)可編程門陣列;CPLD是Complex Programmable Logic Device的縮寫,即復(fù)雜可編程邏輯器件。通過名字可以看出,二者都是可編程的邏輯器件,即實(shí)實(shí)在在的硬件,通過對(duì)硬件編程以實(shí)現(xiàn)某種特定功能。說直白 一些,二者就是一個(gè)與非門或者或非門陣列。由于所有的邏輯式子都可以變換成與非結(jié)構(gòu)或者或非結(jié)構(gòu),因此所有的邏輯功能都可以通過FPGA/CPLD實(shí)現(xiàn), 編程后的芯片相當(dāng)于一個(gè)數(shù)字芯片,如加法器,移位寄存器等。二者的區(qū)別在于FPGA是基于RAM結(jié)構(gòu)的,CPLD是基于ROM機(jī)構(gòu)的,這些不是本次討論的 重點(diǎn),不再贅述。
再說單片機(jī)和ARM及DSP的關(guān)系,單片機(jī)是“單片微型計(jì)算機(jī)”的簡稱;ARM是Advanced RISC Machines的簡稱,它只是一家微處理器設(shè)計(jì)企業(yè)的名字,因此ARM是他們?cè)O(shè)定的微處理器的統(tǒng)稱;DSP是Digital Signal Processing的簡稱,即數(shù)字信號(hào)處理。了解了這些,我們可以說單片機(jī)是所有所有MCU(微型控制單元)的統(tǒng)稱,ARM是DSP只是他們的一 種,ARM屬于用公司名稱的一種稱呼,而DSP則是根據(jù)功能(數(shù)字處理)命名的一種稱呼。但是,在行業(yè)內(nèi),單片機(jī)一般特指8位或16位的MCU,在本文中 仍采用大家熟悉的叫法,把單片機(jī)和ARM放在并列的位置。
全文閱讀請(qǐng)點(diǎn)擊:學(xué)51單片機(jī)過時(shí)嗎?
| 歡迎光臨 (http://www.raoushi.com/bbs/) | Powered by Discuz! X3.1 |