单片机基础学习(一):存储结构

51单片机存储器有数据存储器,程序存储器。数据存储器是为正在运行的程序提供空间,即ram,程序存储器为程序的存储提供空间,即rom,刚开始的单片机一旦写入程序就不能修改,后来出现了紫外线擦除(eprom)、电擦除(eeprom)和flashrom。
数据存储器又分片内数据存储器和片外数据存储器,标准的51单片机的片内数据存储器容量是256字节,地址编码00h~ffh,其中高128字节(80h~ffh)是sfr区(特殊功能寄存器),低128字节(00h~7fh)用户数据存储器,在这个128字节中,00h~1fh这32个字节分给了4组工作寄存器(r0~r7),20h~2fh这16字节是位寻址区,30h~7fh这80字节是用户ram区,可以随意使用。通过51单片机内部的并行扩展总线,51单片机可以访问最多64k范围的外部数据存储器(注:这个说法是有问题的,看后面),由于内部的ab宽度是16位,所以内部数据存储器寻址能力是64k。
程序存储器也分为片内和片外,由于片内外的ab宽度是16位,所以寻址能力都是64k。
但是由于i/o端口和外围设备与数据存储器统一编址,暂用了片外数据存储器的地址空间,所以片外数据存储器寻址范围不足64k。
前面我们分析了存储结构,发现无论是数据存储器和程序存储器,它们片内外的寻址能力都是64k。那他们是如何编址的呢?答案是:统一编址0000h~ffffh
你是不是感到很疑惑?如何做到的?
首先,片内数据存储器和片外数据存储器,对于同一个地址(假设1111f)cpu是如何区分到那个存储器呢?分析一下指令,如果是movx那么是到片外数据存储区,如果是mov则是到片内数据存储区。
其次,片内数据存储器和片内程序存储器,他们的控制信号不同,访问片内数据存储器信号是ld等,访问片内程序存储器的控制信号是emp等。
第三,片内程序存储器和片外程序存储器,同“首先”
第四,片外数据存储器和片外程序存储器,同“其次”
如何扩展呢?
我们知道p0口有时分复用功能,既可以作为8位数据总线又可以作为低8位地址总线,我们使用地址锁存器把8位的数据总线和低8位的地址总线分开,这样p0提供低8位的地址总线和p2提供的高8位总线构成了16位的外部地址总线,p0提供了8位外部数据总线,加上控制总线,这样就形成了三总线结构。所有外围芯片都是通过这三总线进行扩展。
可能有这个疑问:p0口如何时分复用的?
通过内部cb的ale控制信号,下降沿时将p0口输出的数据作为地址信息储存,此时p0作为低8位地址总线,在其他时刻p0作为8位数据总线。与外界的通信除了少部分通过p1,全部通过p0。
我们稍微了解一下51单片机的时序单位……
晶振提供的频率我们称为振荡频率,假设它的周期为t0,一个t0周期称为一个节拍,用字母p表示,振荡频率经过二分频后我们得到振动频率,它的周期为t1(t1=2t0),一个t1周期称为一个状态,用字母s表示,振荡周期经过6分频我们得到ale控制信号(注:下面有具体介绍),振荡周期经过4分频我们得到psen信号(注:下面有具体分析)。定义12个振荡周期为一个机器周期,那么指令周期是什么?有些指令只需要一个机器周期能执行(确切说是:取指令、译指令、执行指令)完,有些需要几个(不管如何,一般指令周期是机器周期的整数倍,通常情况是1~4倍)。
我们有必要了解一下外部cb, 先介绍ale控制信号:
ale:高电平有效,是振荡频率的6分频,利用下降沿来控制地址锁存器锁存低8位地址a0~a7。一个周期两次有效,第一次是s1p2~s2p1,第二次是s4p2~s5p1。
然后介绍一下psen控制信号:
psen:低电平有效,是振荡频率的4分频,用于访问外部程序存储器。一个周期两次有效,第一次是s1p2~s2p2,第二次是s4p2~s5p2。
我们通过一个实例来理解它,假设我们访问外部程序存储器。
psen是和外部存储器的oe端口接的(oe是低电平有效),ale是接地址锁存器(假设是74hc373)的le脚(高电平有效)。s1p2时刻,ale上跳为高电平,74hc373的le脚有效,74hc373内部8个锁存器打开,到s2p1这个下降沿时刻,p0输出的低8位地址被锁存在锁存器中,此时psen仍然为高电平,而p0由原来的低8位地址总线转化为数据总线,等待外部程序存储器输出端的数据输入,直到s2p2这个时刻,psen为下降沿,由无效转化为有效,这时p2口的高8位地址和锁存的p0的低8位地址组成16位地址,这个地址就是cpu要访问的外部存储器的地址,从这个地址中找出存储的信息,输出这个信息通过p0这个数据总线到达内部总线,最后到达目的地。
访问外部数据存储器与之类似,不过控制信号不是psen,而是wr和rd。
wr、rd:低电平有效,用于访问外部数据存储器的读写控制,当执行movx时,这两个信号自动生成。

固态USB开关及其它过流保护器件的浪涌测试
变电箱是重要的电力设施,主要分布于城镇各个角落
苹果iPhone8要长这样了:水滴形设计致敬乔布斯
源创通信SinoV-MIDSPAN-4-G-AT供电中跨设备简介
LG即将推出的高端智能手机V40 ThinQ将采用刘海屏设计
单片机基础学习(一):存储结构
美光、英特尔恢复华为部分供货
Transformers是什么意思?人工智能transformer怎么翻译?
详细介绍PCB设计中的9种常见的元器件封装
九号首次架构调整:成立四大机器人团队
2021年哪些5G应用值得关注?
电源适配器行业发展趋势
供应/回收 Aglent E4403B/E4402B,HP8
大众:无人驾驶对汽车设计来说是革命契机
VR重新回到大众视野即将迎来复苏期
功率放大器按工作状态分为几类
Intel将于2011年下半年停产20款处理器
道路监控影像智能分析系统的辨识技术的介绍
基于云计算的视频实战应用平台的建设方案和应用
Blackwell GB100能否在超级计算机和AI市场保持领先优势?