標籤: 暫無標籤

微控制器 微控制器是將微型計算機的主要部分集成在一個晶元上的單晶元微型計算機。

1 微控制器 -概述

微控制器微控制器

 微控制器誕生於20世紀70年代中期,經過20多年的發展,其成本越來越低,而性能越來越強大,這使其應用已經無處不在,遍及各個領域。例如電機控制、條碼閱讀器/掃描器、消費類電子、遊戲設備、電話、HVAC、樓宇安全與門禁控制、工業控制與自動化和白色家電(洗衣機、微波爐)等。

微控制器可從不同方面進行分類:根據數據匯流排寬度可分為8位、16位和32位機;根據存儲器結構可分為Harvard結構和Von Neumann結構;根據內嵌程序存儲器的類別可分為OTP、掩膜、EPROM/EEPROM和快閃記憶體Flash;根據指令結構又可分為CISC(Complex Instruction Set Computer)和RISC(Reduced Instruction Set Computer)微控制器。本文將結合不同指令結構微控制器的發展及其特性進行論述。

2 微控制器 -1 微控制器的發展歷程

Intel公司作為最早推出微處理器的公司,同樣也是最早推出微控制器的公司。繼1976年推出MCS-48后,又於1980年推出了MCS-51,為發展具有良好兼容性的新一代微控制器奠定了良好的基礎。在8051技術實現開放后,Philips、Atmel、Dallas和Siemens等公司紛紛推出了基於80C5l內核(805l的CMC)S版本)的微控制器。這些各具特色的產品能夠滿足大量嵌入式應用需求。基於80C51內核的微控制器並沒有停止發展的腳步,例如現在Maxim/Dallas公司提供的DS89C430系列微控制器,其單周期指令速度已經提高到了805l的12倍。

 基於CISC架構的微控制器除了80C51外,還包括Motorola提供的68HC系列微控制器,這也是大量應用的微控制器系列。

基於RISC架構的微控制器則包括Microchip的PIC系列8位微控制器等。在16位RISC架構的微控制器中,Maxim公司推出的MAXQ系列微控制器以其高性能、低功耗和卓越的代碼執行效率,成為許多需要高精度混合信號處理以及攜帶型系統和電池供電系統的理想選擇。

2 基於8051內核的COSC微控制器

迄今為止,MCS-51已成為8位機中運行最慢的系列。現在Dallas推出的DS89C430系列產品在保持與80C51引腳和指令集兼容的基礎上,每個機器周期僅為一個時鐘,實現了8051系列的最高吞吐率。一般而言,對於現有的基於8051的應用軟體可以直接寫入DS89C430而無需進行更改。除此之外,DS89C430還在許多其他方面引入了新的功能,從而為具體應用提供了更多靈活性。下面介紹DS89C430不同於8051的功能和特點。

2.1 片內程序存儲器及應用

 片內程序存儲器邏輯上分為成對的8 KB、16 KB或32 KB快閃記憶體單元,以支持在應用編程。這允許器件在應用軟體的控制下修改程序存儲器,應用系統能夠在執行其主要功能的情況下,完成在線軟體升級。DS89C430集成了64 B加密陣列,允許用戶以加密形式查看數據,進行程序代碼校驗。

器件支持通過RS-232串口實現在系統編程。在系統編程通過將器件的一個或多個外部引腳設置為某特定狀態來激活引導載入程序。器件啟動后,開始執行駐留於器件內部專用ROM的載入程序。一旦收到一個回車符號,串口就執行自動波特率功能,並與主機的波特率同步。如圖1所示是在系統編程的物理連接.簡單的引導載入程序介面允許使用幾種方法來實現PC機與目標微控制器間的通信。最簡單的方法是使用Dallas的微控制器工具包(MTK)軟體.它具有高度前端特徵,簡化了目標配置,上傳、下載代碼以及特殊功能配置等任務操作。

2.2 雙數據指針

 8051微控制器是通過MOVX指令來訪問片外數據空間的,用MOVX@dptr指令可訪問整個64 KB的片外數據存儲器。傳統的8051隻有一個數據指針DPTR,要將數據從一個地址移到另一個地址非常麻煩。DS89C430則具備雙數據指針DPTR0和DPTRl,因此軟體可以使用一個指針裝載源地址,另一個指針裝載目的地址。DPTR0的SFR地址與805l相同(82H和83H),因此使用該指針時源代碼無需更改,DPTRl位於84H和85H地址。所有與數據指針相關的操作都使用活動數據指針,活動指針通過控制位SEL選擇。每個指針還各有一個控制位,決定INCDPTR操作是遞增還是遞減數據指針值。

在拷貝數據塊時,與使用單數據指針相比,雙數據指針可以節省大量代碼。用戶通過轉換SEL位來轉換活動數據指針,其中一種方法可通過執行INCDPS指令來實現。對於這些大的數據塊拷貝,用戶必須頻繁執行該指令來轉換DPTR0和DPTRl。為了在節省代碼的同時提高運行速度和效率,DS89C430又包含了一個轉換選擇位 (TSL),來確定執行MOVX指令時硬體是否自動轉換SEL位,這樣就可以省去INCDPS指令並進一步提高運行速度。

大的數據塊拷貝需要源指針和目的指針逐位元組定址數據空間,傳統的方法是通過使用INCDPTR指令來增加數據指針。為了進一步提高數據傳輸速率,引入了自動增減控制位(AID),用以確定執行MOVX指令時,是否會自動增減活動指針值。表l為各種情況下DS80C320和DS89C430進行64B數據塊傳輸時的速度比較。從表l中可以看出,採用雙數據指針后運行速度得到極大提高。

2.3 電源管理和時鐘分頻控制

CMOS電路的功耗主要由兩部分組成:連續漏電流造成的靜態功耗以及對負載電容進行充放電所需的轉換開關電流造成的動態功耗。其中,動態功耗是總體功耗的主要部分,該功耗(PD)可以通過負載電容(CL)、電源電壓(VDD)和工作頻率(f)進行計算,即:PD=CL×VDD2×f。

對於某具體應用,電容和電源電壓相對固定,而處理器的處理速度在不同時刻可能是不同的,因此工作頻率可以根據不同需要進行調整,從而在不影響系統性能的前提下達到降低功耗的要求。

 DS89C430支持三種低功耗節電模式。

 ①系統時鐘分頻控制:允許微控制器使用內部分頻的時鐘源繼續工作,以節省功耗。通過軟體設置時鐘分頻控制位,設置工作速率為每機器周期1024個振蕩器周期.

 ②空閑模式:以靜態方式保持程序計數器,並掛起處理器。在此模式中,處理器不取指令也不執行指令。除了外圍介面時鐘保持為活動狀態以及定時器、看門狗、串口和電源監視功能仍然工作外,所有的資源均保存。處理器能夠使用允許的中斷源退出空閑模式。

 ③停機模式:禁止處理器內部的所有電路。所有片內時鐘、定時器和串口通信都停止運行,處理器不執行任何指令。通過使用六個外部中斷中的任何一個,處理器都能夠退出停機模式。

3 基於RISC架構的微控制器

 MAXQ2000微控制器是Maxino/Dallas公司推出的一款基於RIS(:架構的16位微控制器。理解這款微控制器的一些結構特點,可以使我們更好地理解RISO結構微控制器的最新發展趨勢和技術特點,從而為我們構建新型系統提供更加理想的選擇。MAXQ2000的指令讀取和執行操作在一個周期內完成,而沒有流水線操作,這是因為指令既包含了操作碼也包括了數據。字母Q表示這款微控制器的一個重要特點便是「安靜」,MAXQ架構通過智能化的時鐘管理來降低雜訊.這意味著MAXQ只向那些需要使用時鐘的電路提供時鐘,這樣既降低了功耗,又為模擬電路的整合提供了一個最安靜的環境。它包含液晶顯示(I.CD)介面,最多可以驅動100或132段(兩種版本)。這款微控制器的功耗指標和MIPS/MHz代碼效率方面都在同類微控制器當中遙遙領先.下面介紹MAXQ2000的主要特性。

3.1 指令集

指令集由23條對寄存器和存儲器進行操作的固定長度的16位指令組成。指令集高度正交,允許算術和邏輯操作使用累加器和任何寄存器。特殊功能寄存器控制外圍設備,並細分成寄存器模塊。產品系列的結構是模塊化的,因此新的器件和模塊能夠繼續使用為現有產品開發的代碼.該結構是基於傳送觸發的,這意味著對某一寄存器位置的讀或寫會產生額外作用。這些額外作用構成了由彙編器定義的高層操作碼的基礎,如ADDC、OR和JUMP等。

3.2 存儲器配置

MAXQ2000具有32KB快閃記憶體、lKBRAM、4KB的內部ROM存儲器塊和16級堆棧存儲器。存儲器預設配置成Harvard結構,程序和數據存儲器具有獨立的地址空間,還可以使能為Vorl Ncumann存儲器配置模式,即將固定用途ROM、代碼和數據存儲器放置到一個連續的存儲器映射中.這適合於需要進行動態程序修改或特殊存儲器配置的應用。快閃記憶體程序存儲器可以通過16字密鑰進行密碼保護,從而防止未授權者訪問程序存儲器。同時,還具有3個數據指針,支持高效快速地處理數據.

 固定用途ROM由可以在應用軟體中進行調用的子程序組成(預設起始地址為8000H).包括:通過JTAG或UART介面進行在系統編程(引導載入程序);在電路調試程序;測試程序(內部存儲器測試,存儲器載入等);用於在應用快閃記憶體編程和快速查找表的用戶可調用程序。無論以任何方式複位,都從固定用途ROM開始運行程序。R。M軟體決定程序立刻跳轉到8000H位置、用戶應用代碼的起始位置、還是上面提到的某特定用途子程序.用戶可訪問固定用途ROM中的程序,並且可以由應用軟體調用這些程序。

3.3 寄存器組

器件的大多數功能是由寄存器組來控制的。這些寄存器為存儲器操作提供工作空間,並配置和定址器件上的外設寄存器。寄存器分成兩大類:系統寄存器和外設寄存器.公共寄存器組也稱作系統寄存器,包括ALU、累加器寄存器、數據指針、堆棧指針等。外設寄存器定義了可能包含在基於MAXQ架構的不同產品中的附加功能.

3.4 電源管理

MAXQ2000同樣提供了先進的電源管理功能,根據系統不同時刻的不同性能需求,可以動態設置處理速度,從而大大降低功耗。通過軟體選擇分頻功能,來選擇系統時鐘周期是l、2、4或者8個振藹周期。為進一步降低功耗,還有另外三種低功耗模式,256分頻、32 kH。和停機模式。

3.5 中 斷

提供多個中斷源,可對內部和外部事件快速響應。MAXQ結構採用了單一中斷向量(IV)和單一中斷服務程序(ISR)設計。必須在用戶中斷程序內清除中斷標誌,以避免由同一中斷源引發重複中斷。當檢測到使能的中斷時,軟體跳轉到一個用戶可編程的中斷向量位置  一旦軟體控制權轉移到ISR,可以使用中斷識別寄存器(IIR)來判定中斷源是系統寄存器還是外設寄存器。然後,就可以查詢特定模塊以確定具體中斷源,並採取相應的操作。由於中斷源是由用戶軟體識別的,因此用戶可以為每種應用確立一個獨特的中斷優先順序方案。

3.6 高速硬體乘法器

 集成的硬體乘法器模塊執行高速乘法、乘方和累加操作,並能在一個周期內完成一個16位×16位乘法和累加操作。硬體乘法器由2個】6位并行載入操作數寄存器(MA,MB)和1個累加器組成。載入寄存器能夠自動啟動操作,從而節省了重複計算的時間。硬體乘法器的累加功能是數字濾波、信號處理以及PII)控制系統中的一個基奉單元,這使得MAXQ2000可以勝任需要大量數學運算的應用。

4 結 論

 通過以上兩種基於CISC.和RISC架構的微控制器的對比分析,會發現許多共同的特性,如安全特性、外圍設備、電源管理和在系統編程等。顯然.它們都是適應具體應用的共性要求而增加的功能。兩者最大的不同是指令結構的差異。MCS一5l有50條基本指令,若累計各種不同定址方式,指令共計lll條,對應的機器指令有單位元組、雙位元組和三位元組指令~68H(:05有62條基本指令,加上多種定址方式,最終指令達210條,也分為單位元組、雙位元組和三位元組指令。比較而言,RIS(:微控制器的所有指令是由一些簡單、等長度的指令構成.精簡指令使微控制器的線路可以盡量優化,硬體結構更加簡單,從而可以實現較低的成本和功耗,當然完成相同的工作可能需要更多的指令。所以,二者取捨之間沒有絕對優勢,只能說根據應用的不同需求和側重來進行選擇。

  微處理器是20世紀偉大的技術創新之一,由此而衍生的微控制器將微處理器和外設集於一身,為多種應用開創了新局面,並將繼續發揮不可替代的作用。

上一篇[時間數列]    下一篇 [綠柱石]

相關評論

同義詞:暫無同義詞