微控制器與微處理器到底有啥差別?看完這3點(diǎn)就夠了
微控制器是將微型計算機的主要部分集成在一個(gè)芯片上的單芯片微型計算機。微控制器誕生于20世紀70年代中期,經(jīng)過(guò)20多年的發(fā)展,其成本越來(lái)越低,而性能越來(lái)越強大,這使其應用已經(jīng)無(wú)處不在,遍及各個(gè)領(lǐng)域。例如電機控制、條碼閱讀器/掃描器、消費類(lèi)電子、游戲設備、電話(huà)、HVAC、樓宇安全與門(mén)禁控制、工業(yè)控制與自動(dòng)化和白色家電(洗衣機、微波爐)等。
本文引用地址:http://dyxdggzs.com/article/201712/373013.htm

微控制器的作用
在工業(yè)應用中,微控制器的作用是控制和協(xié)調整個(gè)設備的動(dòng)作,通常需要程序計數器(PC)、指令寄存器(IR)、指令譯碼器(ID)、定時(shí)與控制電路,以及脈沖源、中斷等共同完成。
根據控制器在工作中發(fā)揮的作用來(lái)看,微控制器主要有以下幾種:
1、 指令控制器
指令控制器是控制器中相當重要的部分,它要完成取指令、分析指令等操作,然后交給執行單元(ALU或FPU)來(lái)執行,同時(shí)還要形成下一條指令的地址。
2、 時(shí)序控制器
時(shí)序控制器的作用是為每條指令按時(shí)間順序提供控制信號。時(shí)序控制器包括時(shí)鐘發(fā)生器和倍頻定義單元,其中時(shí)鐘發(fā)生器由石英晶體振蕩器發(fā)出非常穩定的脈沖信號,就是CPU的主頻;而倍頻定義單元則定義了CPU主頻是存儲器頻率(總線(xiàn)頻率)的幾倍。
3、 總線(xiàn)控制器
總線(xiàn)控制器主要用于控制CPU的內外部總線(xiàn),包括地址總線(xiàn)、數據總線(xiàn)、控制總線(xiàn)等等。
4、中斷控制器
中斷控制器用于控制各種各樣的中斷請求,并根據優(yōu)先級的高低對中斷請求進(jìn)行排隊,逐個(gè)交給CPU處理 控制器的基本功能 設備控制器的基本功能
目前就為控制領(lǐng)域來(lái)看,主要有以下幾種功能:
1、數據緩沖
緩沖器常常內置在控制器中,在輸出時(shí),緩沖器常用來(lái)暫存由主機高速傳來(lái)的數據,然后才以I/O設備所具有的速率將緩沖器中的數據傳送給I/O設備;在輸入時(shí),緩沖器則用于暫存從I/O設備送來(lái)的數據,待接收到一批數據后,再將緩沖器中的數據高速地傳送給主機。
2、差錯控制
設備控制器還兼管對由I/O設備傳送來(lái)的數據進(jìn)行差錯檢測。若發(fā)現傳送中出現了錯誤,通常是將差錯檢測碼置位,并向 CPU報告,于是CPU將本次傳送來(lái)的數據作廢,并重新進(jìn)行一次傳送。這樣便可保證數據輸入的正確性。
3、數據交換
這是指實(shí)現CPU與控制器之間、控制器與設備之間的數據交換。對于前者,是通過(guò)數據總線(xiàn),由CPU并行地把數據寫(xiě)入控制器,或從控制器中并行地讀出數據;對于后者,是設備將數據輸入到控制器,或從控制器傳送給設備。為此,在控制器中須設置數據寄存器。
4、標識和報告設備的狀態(tài)
控制器應記下設備的狀態(tài)供CPU了解。例如,僅當該設備處于發(fā)送就緒狀態(tài)時(shí),CPU才能啟動(dòng)控制器從設備中讀出數據。為此,在控制器中應設置一狀態(tài)寄存器,用其中的每一位來(lái)反映設備的某一種狀態(tài)。當CPU將該寄存器的內容讀入后,便可了解該設備的狀態(tài)。
5、接收和識別命令
CPU可以向控制器發(fā)送多種不同的命令,設備控制器應能接收并識別這些命令。為此,在控制器中應具有相應的控制寄存器,用來(lái)存放接收的命令和參數,并對所接收的命令進(jìn)行譯碼。例如,磁盤(pán)控制器可以接收 CPU發(fā)來(lái)的Read、Write、Format等15條不同的命令,而且有些命令還帶有參數;相應地,在磁盤(pán)控制器中有多個(gè)寄存器和命令譯碼器等。
6、地址識別
就像內存中的每一個(gè)單元都有一個(gè)地址一樣,系統中的每一個(gè)設備也都有一個(gè)地址,而設備控制器又必須能夠識別它所控制的每個(gè)設備的地址。此外,為使CPU能向(或從)寄存器中寫(xiě)入(或讀出)數據,這些寄存器都應具有唯一的地址。例如,在IB-MPC機中規定,硬盤(pán)控制器中各寄存器的地址分別為320~32F之一??刂破鲬苷_識別這些地址,為此,在控制器中應配置地址譯碼器。
微處理器和微控制器的區別
這樣的區別主要集中在硬件結構、應用領(lǐng)域和指令集特征3個(gè)方面:
1)硬件結構
微處理器是一個(gè)單芯片CPU,而微控制器則在一塊集成電路芯片中集成了CPU和其他電路,構成了一個(gè)完整的微型計算機系統。圖1-6虛線(xiàn)框中所示是大多數微控制器的完整結構。除了CPU,微控制器還包括RAM、ROM、一個(gè)串行接口、一個(gè)并行接口,計時(shí)器和中斷調度電路。這些都集成在一塊集成電路上。雖然片上RAM的容量比普通微型計算機系統還要小,但是這并未限制微控制器的使用。在后面可以了解到,微控制器的應用范圍非常廣泛。
微控制器的一個(gè)重要的特征是內建的中斷系統。作為面向控制的設備,微控制器經(jīng)常要實(shí)時(shí)響應外界的激勵(中斷)。微控制器必須執行快速上下文切換,掛起一個(gè)進(jìn)程去執行另一個(gè)進(jìn)程以響應一個(gè)“事件”。例如,打開(kāi)微波爐的門(mén)就是一個(gè)事件,在基于微控制器的產(chǎn)品中這個(gè)事件將觸發(fā)一個(gè)中斷。微處理器也能擁有強大的中斷功能,但是通常需要外部元件的配合,而微控制器在片上集成了所有處理中斷必需的電路。
2)應用領(lǐng)域
微處理器通常作為微型計算機系統中的CPU使用。其設計正是針對這樣的應用,這也是微處理器的優(yōu)勢所在。然而,微控制器通常用于面向控制的應用。其系統設計追求小型化,盡可能減少元器件數量。在過(guò)去,這些應用通常需要用數十個(gè)甚至數百個(gè)數字集成電路來(lái)實(shí)現。使用微控制器可以減少元器件的使用數量,只需一個(gè)微控制器、少量的外部元件和存儲在ROM中的控制程序就能夠實(shí)現同樣的功能。微控制器適用于那些以極少的元件實(shí)現對輸入/輸出設備進(jìn)行控制的場(chǎng)合,而微處理器適用于計算機系統中進(jìn)行信息處理。
3)指令集特征
由于應用場(chǎng)合不同,微控制器和微處理器的指令集也有所不同。微處理器的指令集增強了處理功能,使其擁有強大的尋址模式和適于操作大規模數據的指令。微處理器的指令可以對半字節、字節、字,甚至雙字進(jìn)行操作。通過(guò)使用地址指針和地址偏移,微處理器提供了可以訪(fǎng)問(wèn)大批數據的尋址模式。自增和自減模式使得以字節、字或雙字為單位訪(fǎng)問(wèn)數據變得非常容易。另外,微處理器還具有其他的特點(diǎn),如用戶(hù)程序中無(wú)法使用特權指 令等。
微控制器的指令集適用于輸入/輸出控制。許多輸入/輸出的接口是單/位的。例如,電磁鐵控制著(zhù)馬達的開(kāi)關(guān),而電磁鐵由一個(gè)1位的輸出端口控制。微控制器具有設置和清除單位的指令,也能執行其他面向位的操作,如對“位”進(jìn)行邏輯與、或和異或的運算,根據標志位跳轉等。很少有微處理器具備這些強大的位操作能力,因為設計者在設計微處理器時(shí),僅考慮以字節或更大的單位來(lái)操作數據。
在對設備的控制和監視方面(可能是通過(guò)一個(gè)1位的接口),微控制器具有專(zhuān)門(mén)的內部電路和指令用于輸入/輸出、計時(shí)和外部中斷的優(yōu)先權分配。微處理器一般需要配合附加的電路(串行接口芯片、中斷控制器、定時(shí)器等)才能執行相同的任務(wù)。不過(guò),單純就處理能力而言,微控制器永遠達不到微處理器的水平(在其他條件相同的情況下),因為微控制器芯片中的集成電路的很大一部分用于實(shí)現其他的片上功能,代價(jià)就是犧牲掉一部分處理能力。
由于微控制器芯片上的資源非常緊張,它的指令必須非常精簡(jiǎn),大部分指令的長(cháng)度都短于1個(gè)字節??刂瞥绦虻脑O計原則通常是要求程序能夠裝入片上的ROM,因為即使只增加1片外部ROM也將顯著(zhù)提高產(chǎn)品的硬件成本。微控制器指令集的基本特點(diǎn)就是具有精簡(jiǎn)的編碼方案。微處理器不具備這樣的特點(diǎn),因為它們強大的尋址模式使得指令編碼不夠簡(jiǎn)潔。
評論