您的位置 首页 被动

AVR单片机的CPU内核结构及汇编语言

AVR单片机的CPU内核结构及汇编语言-AVR采用了Harvard结构,具有独立的数据和程序总线,CPU在执行一条指令的同时,就将PC中指定的下一条指令取出,构成了一级流水线运行方式,实现了一个时钟周期执行一条指令,数据吞吐量高达1MIPS/MHz。

单片机那么久了,感觉想要深化,还得看汇编语言,至少得了解单片机内部结构。

下面就以ATmega16为例,介绍一下AVR单片机结构和汇编语言。

AVR单片机的CPU内核结构

AVR单片机的CPU内核结构及汇编语言
 

AVR单片机的CPU内核结构及汇编语言


 

如上两图,左图是虚线框内AVR CPU的内核结构,右图是AVR单片机内核结构的方框图,能够看出AVR单片机的数据总线(CPU字长)是8位的,也就说它是8位单片机。

AVR采用了Harvard结构,具有独立的数据和程序总线,CPU在履行一条指令的一起,就将PC中指定的下一条指令取出,构成了一级流水线运转方法,完成了一个时钟周期履行一条指令,数据吞吐量高达1MIPS/MHz。

AVR CPU内核由几个重要的部分组成,它们别离是:

A.管用逻辑单元ALU(ArithmeTIc Logic Unit)

AVR ALU与32个通用作业寄存器直接相连。寄存器与寄存器之间、寄存器与当即数之间的ALU运算只需求一个时钟周期。ALU操作分为3类:算术、逻辑和位操作,此外还供给了支撑无/有符号数和分数乘法的乘法器,操作成果的状况将影响到状况寄存器SREG(Status Register)。

B.程序计数器PC、指令寄存器和指令译码器

程序计数器PC用来寄存下一条需求履行指令在程序存储器ROM)空间的地址(指向FlashROM空间),取出的指令寄存在指令寄存器中,然后送入指令译码器中发生各种操控信号,操控CPU的运转(履行指令)。

AVR一条指令的长度大多数为16位,还有少部分为32位,因而AVR的程序存储器结构实际上是以字(16位)为一个存储单元的。

ATmega16单片机的程序计数器为13位,正好满意了对片内8K字(及16K字节)的Flash程序存储器空间直接寻址的需求。

C.通用寄存器General Purpose Registers

在AVR中,由命名为R0~R31的32个8位通用作业寄存器构成一个“通用快速作业寄存器组”,为ALU供给操作数。它们的在RAM的映射空间地址是$0000~$001F,其中有6个寄存器($001A-$001F)能够合并为3个16位直接寻址寄存器指针,别离被称为X寄存器,Y寄存器,和Z寄存器,用于对数据存储器(SRAM)进行直接寻址。

D.状况寄存器-SREG

状况寄存器SREG是一个8位标志寄存器,用来寄存指令履行后的有关状况和成果的标志,各位状况一般是在指令履行过程中主动发生的,但也能够由用户依据需求用专用指令加以改动。

位7-I:大局中止使能位

当I位被置位时,标明CPU能够呼应中止请求,反之,则一切中止被制止。I位能够经过SEI和CLI指令来置位和清零,在中止发生后,I位由硬件铲除,并由RETI(中止回来)指令置位。

位6-T:位复制存储

位复制指令BLD和BST运用T作为意图或源地址。BST把寄存器的某一位复制到T,而BLD把T复制到寄存器的某一位。

位5-H:半进位标志半进位标志H标明算术操作发生了半进位,此标志关于BCD运算十分有用。

位4-S:符号位S=N⊕V,S为负数标志N与2的补码溢出标志V的异或

位3-V:2的补码溢出标志,支撑2的补码运算

位2-N:负数标志 标明算术或逻辑操作成果为负

位1-Z:零标志 标明算术或逻辑操作成果为零

位0-C:进位标志 标明算术或逻辑操作发生了进位

E.仓库指针寄存器SP(Stack Point)

仓库指针首要用来保存暂时数据、局部变量和中止/子程序的回来地址。仓库指针总是指向仓库的顶部,AVR的仓库是向下成长的,即新的数据推入仓库时,仓库指针的数值将减小。

仓库指针指向数据SRAM仓库区,有必要指向高于0x60的地址空间,所以一般初始化时将SP的指针设在SRAM最高处。

运用PUSH指令将数据推入仓库时指针减一;而子程序或中止回来地址推入仓库时指针将减二。

运用POP指令将数据弹出仓库时,仓库指针加一;而用RET或RETI指令从子程序或中止回来时仓库指针加二。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/beidong/347202.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部