Atmel ATtiny87/ATtiny167:高性能8位AVR微控制器的技術(shù)剖析
一、引言
在當(dāng)今的電子設(shè)計(jì)領(lǐng)域,對于高性能、低功耗微控制器的需求日益增長。Atmel的ATtiny87/ATtiny167 8位AVR微控制器憑借其先進(jìn)的架構(gòu)和豐富的功能,成為了眾多嵌入式控制應(yīng)用的理想選擇。本文將深入剖析這款微控制器的各項(xiàng)特性、架構(gòu)以及應(yīng)用要點(diǎn),為電子工程師們提供全面的技術(shù)參考。
文件下載:ATTINY167-15XZ.pdf
二、產(chǎn)品概述
2.1 器件對比
ATtiny87和ATtiny167在硬件和軟件上相互兼容,主要區(qū)別在于內(nèi)存大小。ATtiny167擁有16K字節(jié)的閃存、512字節(jié)的EEPROM和512字節(jié)的SRAM;而ATtiny87的閃存為8K字節(jié),EEPROM和SRAM與ATtiny167相同,兩者的中斷向量大小均為2指令字/向量。
2.2 器件特性
ATtiny87/167是基于AVR增強(qiáng)型RISC架構(gòu)的低功耗CMOS 8位微控制器。它能夠在單個時鐘周期內(nèi)執(zhí)行強(qiáng)大的指令,每MHz可實(shí)現(xiàn)接近1MIPS的吞吐量,使系統(tǒng)設(shè)計(jì)師能夠在功耗和處理速度之間進(jìn)行優(yōu)化。該器件具備8K/16K字節(jié)的系統(tǒng)內(nèi)可編程閃存、512字節(jié)的EEPROM、512字節(jié)的SRAM、16個通用I/O線、32個通用工作寄存器等豐富資源,還擁有多種定時器/計(jì)數(shù)器、通用串行接口、LIN控制器、內(nèi)部和外部中斷、11通道10位ADC、可編程看門狗定時器以及三種軟件可選的節(jié)能模式。
2.3 汽車質(zhì)量等級
ATtiny87/167按照國際標(biāo)準(zhǔn)ISO - TS - 16949的最嚴(yán)格要求進(jìn)行開發(fā)和制造。其質(zhì)量和可靠性已通過AEC - Q100 1級的常規(guī)產(chǎn)品認(rèn)證,數(shù)據(jù)手冊中包含了從廣泛特性化(溫度和電壓)結(jié)果中提取的極限值。
三、AVR CPU核心
3.1 架構(gòu)概述
AVR采用哈佛架構(gòu),擁有獨(dú)立的程序和數(shù)據(jù)存儲器及總線。指令執(zhí)行采用單級流水線,在執(zhí)行一條指令的同時,從程序存儲器預(yù)取下一條指令,實(shí)現(xiàn)每個時鐘周期執(zhí)行一條指令。程序存儲器為系統(tǒng)內(nèi)可重編程閃存,快速訪問寄存器文件包含32個8位通用工作寄存器,可實(shí)現(xiàn)單周期算術(shù)邏輯單元(ALU)操作。
3.2 ALU算術(shù)邏輯單元
高性能AVR ALU與32個通用工作寄存器直接連接,能在單個時鐘周期內(nèi)執(zhí)行通用寄存器之間或寄存器與立即數(shù)之間的算術(shù)運(yùn)算。ALU操作分為算術(shù)、邏輯和位功能三大類,部分架構(gòu)實(shí)現(xiàn)還提供支持有符號/無符號乘法和分?jǐn)?shù)格式的強(qiáng)大乘法器。
3.3 狀態(tài)寄存器
狀態(tài)寄存器包含最近執(zhí)行的算術(shù)指令的結(jié)果信息,可用于改變程序流程以執(zhí)行條件操作。狀態(tài)寄存器在所有ALU操作后更新,許多情況下可避免使用專用比較指令,從而生成更快速、更緊湊的代碼。需要注意的是,進(jìn)入中斷例程時狀態(tài)寄存器不會自動存儲,從中斷返回時也不會自動恢復(fù),這需要軟件進(jìn)行處理。
3.4 通用寄存器文件
寄存器文件針對AVR增強(qiáng)型RISC指令集進(jìn)行了優(yōu)化,支持多種輸入/輸出方案。32個通用工作寄存器中的R26 - R31還可作為16位間接地址寄存器指針,用于數(shù)據(jù)空間尋址,實(shí)現(xiàn)高效的地址計(jì)算。
3.5 堆棧指針
堆棧主要用于存儲臨時數(shù)據(jù)、局部變量以及中斷和子程序調(diào)用后的返回地址。堆棧指針寄存器始終指向堆棧頂部,堆棧從高內(nèi)存地址向低內(nèi)存地址增長。在執(zhí)行子程序調(diào)用或啟用中斷之前,程序必須定義數(shù)據(jù)SRAM中的堆棧空間,并將堆棧指針設(shè)置為指向0x60以上的位置。
3.6 指令執(zhí)行時序
AVR CPU由CPU時鐘驅(qū)動,采用哈佛架構(gòu)和快速訪問寄存器文件概念,實(shí)現(xiàn)并行指令預(yù)取和執(zhí)行,每MHz可達(dá)到1MIPS的吞吐量。在單個時鐘周期內(nèi),可執(zhí)行使用兩個寄存器操作數(shù)的ALU操作,并將結(jié)果存儲回目標(biāo)寄存器。
3.7 復(fù)位和中斷處理
AVR提供多種中斷源,每個中斷和復(fù)位向量在程序內(nèi)存空間中都有單獨(dú)的程序向量。所有中斷都有單獨(dú)的使能位,必須與狀態(tài)寄存器中的全局中斷使能位一起設(shè)置為邏輯1才能啟用中斷。中斷發(fā)生時,全局中斷使能I位被清除,所有中斷被禁用。中斷執(zhí)行響應(yīng)時間至少為四個時鐘周期,從中斷處理例程返回也需要四個時鐘周期。
四、AVR存儲器
4.1 系統(tǒng)內(nèi)可重編程閃存程序存儲器
ATtiny87/ATtiny167包含片上系統(tǒng)內(nèi)可重編程閃存用于程序存儲,閃存組織為16位寬。該閃存在汽車范圍內(nèi)至少有10,000次寫/擦除循環(huán)的耐久性,程序計(jì)數(shù)器(PC)用于尋址程序存儲器位置。
4.2 SRAM數(shù)據(jù)存儲器
ATtiny87/ATtiny167的SRAM內(nèi)存組織較為復(fù)雜,數(shù)據(jù)內(nèi)存位置可尋址寄存器文件、I/O內(nèi)存、擴(kuò)展I/O內(nèi)存和內(nèi)部數(shù)據(jù)SRAM。數(shù)據(jù)內(nèi)存支持五種不同的尋址模式,包括直接尋址、帶位移的間接尋址、間接尋址、帶預(yù)減量的間接尋址和帶后增量的間接尋址。內(nèi)部數(shù)據(jù)SRAM訪問需要兩個clk CPU周期。
五、應(yīng)用與開發(fā)
ATtiny87/ATtiny167支持全套程序和系統(tǒng)開發(fā)工具,包括C編譯器、宏匯編器、程序調(diào)試器/模擬器、在線仿真器和評估套件。文檔中還包含簡單的代碼示例,展示如何使用器件的各個部分,但需注意不同C編譯器在頭文件位定義和中斷處理方面可能存在差異。
六、總結(jié)
Atmel ATtiny87/ATtiny167微控制器以其高性能、低功耗、豐富的功能和靈活的架構(gòu),為嵌入式控制應(yīng)用提供了強(qiáng)大而經(jīng)濟(jì)高效的解決方案。電子工程師們在設(shè)計(jì)過程中,可以充分利用其特性,實(shí)現(xiàn)各種復(fù)雜的控制任務(wù)。你在使用這款微控制器時,遇到過哪些有趣的挑戰(zhàn)呢?歡迎在評論區(qū)分享你的經(jīng)驗(yàn)。
-
AVR微控制器
+關(guān)注
關(guān)注
0文章
15瀏覽量
6965
發(fā)布評論請先 登錄
ATtiny25/45/85:高性能低功耗8位微控制器的技術(shù)解析
ATtiny28L/V:低功耗8位微控制器的卓越之選
ATtiny26(L) 8位微控制器深度解析:特性、應(yīng)用與設(shè)計(jì)要點(diǎn)
深入解析Atmel ATtiny25/45/85汽車級8位AVR微控制器
Atmel ATtiny25/45/85汽車級8位微控制器的深度剖析
ATtiny2313/V:低功耗8位微控制器的卓越之選
8位Atmel ATtiny1634微控制器:高性能與低功耗的完美結(jié)合
深入剖析ATtiny15L:低功耗8位微控制器的卓越之選
ATtiny13/ATtiny13V 8位微控制器深度解析
ATtiny11/12 8位微控制器:設(shè)計(jì)與應(yīng)用的理想之選
Atmel ATtiny25/45/85汽車級8位AVR微控制器深度解析
ATtiny13/ATtiny13V:低功耗8位微控制器的強(qiáng)大之選
ATtiny28系列微控制器:低功耗與高性能的完美結(jié)合
探索ATtiny441/841:高性能低功耗8位AVR微控制器的卓越之選
ATtiny3224/3226/3227:高性能低功耗的tinyAVR? 2系列微控制器
Atmel ATtiny87/ATtiny167:高性能8位AVR微控制器的技術(shù)剖析
評論