Download
msp430 n.
Skip this Video
Loading SlideShow in 5 Seconds..
第二章 MSP430 系列微控器軟硬體結構 PowerPoint Presentation
Download Presentation
第二章 MSP430 系列微控器軟硬體結構

第二章 MSP430 系列微控器軟硬體結構

384 Views Download Presentation
Download Presentation

第二章 MSP430 系列微控器軟硬體結構

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. 第二章MSP430系列微控器軟硬體結構

  2. 2-1 MSP430 系列混合訊號微控器簡介 • 2-2 MSP430F44x 硬體架構 • 2-3 MSP430 微控器之定址模式 • 2-4 MSP430 微控器之指令字模式 • 2-5 MSP430 微控器之模擬指令 • 2-6 MSP430 微控器指令集說明

  3. MSP430系列混合信號微控器簡介 • 16bit精簡指令集電腦(reduced instruction set computer, RISC)CPU • MSP430使用馮紐曼架構(Von Neumann architecture) • 位置記憶體匯流排(memory address bus, MAB) • 資料記憶體匯流排(memory data bus, MDB)

  4. MSP430 系列混合信號微控器的主要特徵 1. 極省電架構可延長電池壽命 2. 類比量測精確度的完善表現 3. 16 位元RISC 核心處理器 4. 嵌入式模擬 5. 具有彈性的時脈模組 6. 定址空間 原廠的說明 datasheet

  5. MSP430 系列混合信號微控器的主要特徵(續) 1.極省電架構可延長電池壽命 • 0.1-μA 隨機記憶體保存的關機模式(power down mode)。 • 0.8-μA 待機模式(stand by mode)。 • 250-μA/MIPS 工作模式(run time mode)。 2. 類比量測精確度的完善表現 • 12 位元或10 位元的類比數位轉換器(ADC)的取樣速率可達每秒20 萬次(200kps)。 • 12 位元數位類比轉換器(DAC)。

  6. MSP430 系列混合信號微控器的主要特徵(續) 3.具有現代16 位元RISC 核心處理器 • 擁有較大的暫存器空間。 • 核心簡潔的設計來減少功率消耗及降低成本。 • 具有現代化高效能程式設計編譯的能力。 • 強大的中斷向量能力。 • 效能可高達每秒16MIPS (Million Instructions Per Second)。 4.嵌入式模擬 • 系統內建可程式快閃記憶體模組(flash memory),能夠彈性的對程式碼做修改、更新,和檔案升級及紀錄資料。JTAG介面-Joint Test Action Group (JTAG) is the common name used for the IEEE 1149.1 standard entitled Standard Test Access Port and Boundary-Scan Architecture for test access ports used for testing printed circuit boards using boundary scan. JTAG is often used as an IC debug or probing port.

  7. MSP430 系列混合信號微控器的主要特徵(續) 5.具有彈性的時脈模組 • 以電池為電源的應用 • 低頻輔助時脈(low-frequency auxiliary clock, ACLK)由32kHz 石英振盪晶體產生,提供自我喚醒功能為背景的即時時鐘(real-time clock,RTC)使用。 • 高速的數位控制振盪器(digital control oscillator, DCO) 產生主時脈(master clock, MCLK),供給CPU 及高速的周邊模組使用。

  8. MSP430 系列混合信號微控器的主要特徵(續) 6. 定址空間 • MSP430 採用馮紐曼架構,其定址空間分配給特殊功能暫存器(special function register, SFR)、硬體周邊(memory mapping I/O)、隨機存取記憶體(RAM)及Flash/ROM。 • MSP430 記憶體儲存資料的格式分bit、byte 及word 三種.記憶體是以位元組為單位(byte addressable),所以word 格式的資料必須符合little endian方式儲存在記憶體位置

  9. MSP430 家族

  10. MSP430x4xx族系多功能混合信號微控器 • MSP430x4xx 族系的特徵 • 內建一個LCD 驅動介面 • 提供較多樣的類比介面. 如:流量計介面(flow meter)、電力量測介面(electricity meter)、運算放大器(OP Amp)及12-bit 數位類比轉換(DAC12) • 提供完整的人機介面及特殊需求的量測功能,非常適合需要低功耗的可攜式的電子產品, 如:電力量錶、流量計等工業應用,血糖計、血壓計、心電紀錄器等生理訊號量測的醫療儀表,或MP3player、多功能讀卡機、智慧型充電器等3C 應用產品。

  11. MSP430x4xx族系多功能混合信號微控器(續) MSP430F44x的主要特徵: • 工作電壓由1.8V~3.6V。 • 超低功率消耗:一般模式下工作電流僅有280μA (1MHz, 2.2V), 省電模式下工作電流僅有1.1μA。 • 5 種省電模式,從待機恢復所需的時間小於6μs。 • 16 位元RISC 架構,指令週期僅需125ns。 • 60KB 程式記憶體,2048B 資料記憶體。 • 8 個通道(channel)的12-bit ADC,其轉換速率最高可達每秒20 萬次取樣 • 基本計時器可做8-bit 計時/計數。 • 計時器A 可做16-bit 計時/計數器,包含3 組抓取/比較暫存器。 • 計時器B 可做8~16-bit 計時/計數器,包含7 組抓取/比較暫存器。 • 內建獨立的硬體乘法器(hardware multiplier),提供高速的乘加(multiply accumulate calculation, MAC)運算以支援數位信號處理的需求。 • 支援多達160 段(segment)的LCD 驅動介面。

  12. http://www.ti.com/

  13. 2-2 MSP430F44x 硬體架構

  14. 2-2 MSP430F44x 硬體架構 (1)16-bit RISC CPU、 (2)鎖頻迴路時脈產生模組、 (3)JTAG 實體模擬模組、 (4)硬體乘法器、 (5)程式記憶體(MSP430F449 有60KByte)、 (6)資料記憶體(MSP430F449 有256Byte) (7)8-bit 周邊裝置(包含P1~P6 USART0~USART1、LCD 模組、基本計時器BT、比較器A、電源管理SVS…等)、 (8)16-bit 周邊裝置(包含ADC12、計時器A3、計時器B7及看門狗計時器等)

  15. 2-2-1 MSP430 的記憶體結構 • 馮紐曼記憶體架構*程式記憶體 (program memory)*資料記憶體 (data memory)*晶片內周邊模組 (Peripheral modules)*特殊功能暫存器(SFR)等,都在同一個記憶體定址空間內(MSP430F44x 擁有完整的64Kbyte 的記憶體空間) 。

  16. MSP430 的記憶體資料匯流排 • 記憶體資料匯流排(memory data bus, MDB)寬度為16 或8-bit • 16-bit 內部周邊電路模組(如ADC)存取是以字組為單位(Word access) • 8-bit 周邊電路模組(如LCD,USART)存取是以位元組(Byte)為單位(Byte access) • 程式記憶體(ROM)及資料憶體(RAM)皆可以字組或位元組指令型態進行存取。

  17. 資料格式 • 位元組型態的資料可擺放於記憶體奇數或偶數位址上 • 字組型態的資料是被分成相鄰的高端位元組(High order Byte)及低端位元組(Low orderByte),必須符合小端優先(little endian)的限制,把低端位元組資料放於記憶體偶數位址,高端位元組料放於相鄰之較高位址內。 • 隨機存取記憶體可以被字組及位元組指令存取 • 周邊模組被分為兩種位址空間必須使用適當的指令格式來存取。

  18. 快閃記憶體(Flash memory)結構 • 可由JTAG 埠、啟動載入器(UART 埠)或系統本身(CPU)來將程式碼或資料寫入 • MSP430F449 的Flash memory 包含 • (1)中斷向量(Interrupt vector) • (2)程式記憶體(Code memory) • (3)資訊記憶體(Information memory)

  19. 隨機存取記憶體(RAM) • 隨機存取記憶體(RAM)可以被當成程式(code)或資料(data)記憶體使用,程式存取總是在偶數位址執行。在指令的字尾有幫助辨識字組或位元組格式的設計:

  20. 隨機存取記憶體(RAM)(續) • 一個字組可以分為兩個位元組 • bit-0~bit-7 是低端位元組 • bit-8~bit-15 是高端位元組 • 在資料搬移或存取時,不能由字組搬到位元組,但是可以由位元組搬移到字組,其中沒使用的空間被設為0。

  21. 周邊模組-位置配置方式 • MSP430 把周邊模組可以處理的資料字分成word(字組)及byte(位元組)兩類,分別配置在不同的記憶體區段: • 字組模組(word):0100h~01FFh 此範圍屬於字組指令格式,字組模組是以16-bit 的資料記憶體匯流排(MDB)連結周邊和字組模組;當位元組指令格式寫入此記憶體空間時,只有偶數位址被使用,其結果的高端位元組通常為0。字組周邊模組所使用位址共有16 個區間,每一區間代表8 個字組空間。

  22. 周邊模組-位置配置方式(續) • 位元組模組(byte):0010h~00FFh 此範圍屬於位元組指令格式,位元組模組是以記憶體匯流排(MDB)的低端位元組連結周邊,位元組模組通常以位元組指令格式來存取。 • 若使用字組指令格式讀取位元組模組資料時,高端位元組讀到的資料是未定,只有低端位元組的資料是正確的;若使用字組指令格式寫入位元模組時,低端位元組的資料是正確的,高端位元組則被忽略。。

  23. 周邊模組-特殊功能暫存器(SFRs) • MSP430 把特殊功能及系統配置,放在特殊功能暫存器(SFRs, special function register)之內;特殊功能暫存器位址安排在00~0Fh 的位址空間內,是屬於位元組系統;必須使用位元組格式的指令。

  24. 2-2-2 CPU 暫存器 • MSP430F449 的CPU 為一個16-bit RISC 架構,內含16 個暫存器。 • 暫存器之間的資料轉移只需一個系統時脈週期,所以可以有效的減少指令執行的時間。這16個暫存器以R0~R15 編號,R0 到R3 分別為程式計數器(PC)、堆疊指標(SP)、狀態暫存器(SR)及常數產生器(CG),剩下的R4 到R15 則為一般用途暫存器。

  25. 2-2-2 CPU 暫存器(續) • 暫存器與MDB、MAB • 匯流排及ALU 組成CPU 的Datapath。

  26. 程式計數器(R0/PC) • 程式計數器(program counter, PC)為16-bit 指標,指向將要執行指令的記憶體位置,指令執行時會將R0 的內容更新,以便指向下一個待執行指令的記憶體位址。 • MSP430 系列的程式碼必須放置在記憶體的偶數位址,程式計數器也是以偶數增加,PC 的bit-0 (即LSB)保持為0。在64KB 定址空間中,指令的存取是在資料字範圍內被執行。

  27. 堆疊指標(R1/SP) • 堆疊指標(stack pointer, SP)使用於在呼叫(CALL)或中斷時儲存回返位置,SP 可以適用於所有的指令及定址模式。SP 是使用遞減方式規劃,這個規劃的優點是堆疊(stack)的頂部可以被使用到,使用者可以使用PUSH、POP 指令來直接使用堆疊。

  28. 狀態暫存器 (R2/SR/CG1) • 狀態暫存器(status register, SR)可以當做一般的暫存器,在計算時作為來源(source)或目(destination)使用,此時若使用暫存器定址法,存取格式就必須是16-bit資料字,其餘的定址模式可被使用於常數產生器(constant generator, CG1)。16-bit 的SR 每個位元都是獨立的,主要任務是呈現指令執行後的某些狀態,例如進位、溢位、負值、0 值等,SR 的某些位元可以被改變以控制CPU 的某些工作模式。

  29. 狀態暫存器 (R2/SR/CG1)(續)

  30. 常數產生暫存器(R3/CG2) • MSP430 可將R2 及R3 暫存器當作常數產生器,產生六種常用的常數,當指令中出現一些常用的數值時,組譯器會以此兩暫存器代替,不需額外的16-bit 暫存器儲存此常數,這樣可以節省程式碼長度。

  31. 微控制器程式發展流程

  32. 微控制器程式發展流程

  33. 除錯程式 • 除錯程式(debugger)A debugger is a computer program that is used to test and debug other programs (the "target" program). • 整合發展工具(Integrated Development Environment, IDE)An integrated development environment (IDE) also known as integrated design environment or integrated debugging environment is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of: • a source code editor • a compiler and/or an interpreter • build automation tools • a debugger • a simulator

  34. 線上實體模擬器 • An In-Circuit Emulator(ICE) provides a window into the embedded system. The programmer uses the emulator to load programs into the embedded system, run them, step through them slowly, and view and change data used by the system's software. • An "emulator" gets its name because it emulates (imitates) the central processing unit of the embedded system's computer. Normally it has a plug that inserts into the socket where the CPU chip would normally be placed. Emulating the processor lets the ICE do anything that the processor can do, but under the control of a programmer. • ICEs attach a terminal or PC to the embedded system. The terminal or PC provides an interactive user interface for the programmer to investigate and control the embedded system.

  35. Evaluation Module • 評估模組 (Evaluation Module, EVM)