存储器

单片机内部结构原理,让你豁然开朗

谁都会走 提交于 2019-12-13 11:49:44
一、单片机内部结构分析 我们来思考一个问题,当我们在编程器中把一条指令写进单片机内部,然后取下单片机,单片机就可以执行这条指令,那么这条指令一定保存在单片机的某个地方,并且这个地方在单片机掉电后依然可以保持这条指令不会丢失,这是个什么地方呢?这个地方就是单片机内部的只读存储器即ROM(READ ONLY MEMORY)。为什么称它为只读存储器呢?刚才我们不是明明把两个数字写进去了吗?原来在89C51中的ROM是一种电可擦除的ROM,称为FLASH ROM,刚才我们是用的编程器,在特殊的条件下由外部设备对ROM进行写的操作,在单片机正常工作条件下,只能从那面读,不能把数据写进去,所以我们还是把它称为ROM。 二、几个基本概念 1、数的本质和物理现象 我们知道,计算机可以进行数学运算,这令我们非常难以理解,计算机吗,我们虽不了解它的组成,但它们只是一些电子元器件,怎么可以进行数学运算呢?我们做数学题如37+45是这样做的,先在纸上写37,然后在下面写45,然后大脑运算,最后写出结果,运算的原材料:37、45和结果:82都是写在纸上的,计算机中又是放在什么地方呢?为了解决这个问题,先让我们做一个实验:这里有一盏灯,我们知道灯要么亮,要么不亮,就有两种状态,我们可以用’0’和’1’来代替这两种状态,规定亮为’1’,不亮为’0’。现在放上两盏灯,一共有几种状态呢?我们列表来看一下:

计算机组成原理常见题(六)

那年仲夏 提交于 2019-12-13 05:32:41
1.假定用若干个16Kx1位的存储器芯片组成一个64Kx8位的存储器,芯片内各单元连续编址,则地址BFF0H所在的芯片的最小地址是(C) A.40000H B.60000H C.8000H D.0000H 2.假设一个同步总线的工作频率为33MHZ,总线有32位数据线,每个总线时钟传输一次数据,则该总线的最大数据传输率为(B) A.66MB/s B.132MB/s C.528MB/s D.1056MB/s 3.假设某条指令的一个操作数采用一次间接寻址方式,指令中给出的地址码为1200H,地址1200H中的内容为12FCH,地址12FCH中的内容为38B8H,地址38B8H中的内容为88F9H,则该操作数为() A.1200H B.12FCH C.38B8F D.88F9H 4.相联存储器是按(B)进行寻址访问的寄存器 A.地址指定方式 B.内容指定方式 C.堆栈访问方式 D.队列访问方式 5.假定某程序p由一个100条指令构成的循环组成,该循环共执行50次,在某系统S中执行程序p花了20000个时钟周期,则系统S在执行程序p时CPI是多少? 在20000个时钟周期中共执行100x50=5000条指令,CPI=20000/5000=4 CPI:执行每一条指令所花的时钟周期数 CPI=执行指令所花的时钟周期数/执行了多少条指令 6.设某机主存容量为16MB,Cache容量为16KB

FlASH && EEPROM

醉酒当歌 提交于 2019-12-12 10:45:41
原文:https://blog.csdn.net/qq_38405680/article/details/83048201 FLASH按扇区操作,EEPROM则按字节操作 ,二者寻址方法不同,存储单元的结构也不同,FLASH的电路结构较简单,同样容量占芯片面积较小,成本自然比EEPROM低,因而适合用作程序存储器,EEPROM则更多的用作非易失的数据存储器。当然用FLASH做数据存储器也行,但操作比EEPROM麻烦的多,所以更“人性化”的 MCU 设计会集成FLASH和EEPROM两种非易失性存储器,而廉价型设计往往只有 FLASH,早期可电擦写型MCU则都是EEPRM结构,现在已基本上停产了。 在芯片的内电路中,FLASH和EEPROM不仅电路不同,地址空间也不同,操作方法和指令自然也不同,不论冯诺伊曼结构还是哈佛结构都是这样。技术上,程序存储器和非易失数据存储器都可以只用FALSH结构或EEPROM结构,甚至可以用“变通”的技术手段在程序存储区模拟“数据存储区”,但就算如此,概念上二者依然不同,这是基本常识问题。 EEPROM:电可擦除可编程只读存储器,Flash的操作特性完全符合EEPROM的定义,属EEPROM无疑,首款Flash推出时其数据手册上也清楚的标明是EEPROM,现在的多数Flash手册上也是这么标明的, 二者的关系是“白马”和“马” 。至于为什么业界要区分二者

多种单片机结构和原理讲解

我与影子孤独终老i 提交于 2019-12-12 10:34:42
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 89C51单片机结构框图 1、一个8位 的微处理器CPU。 2、片内数据存储器(RAM128B/256B):用以存放可以读/写的数据,如运算的中间结果、最终结果以及欲显示的数据等。 3、片内4kB程序存储器Flash ROM(4KB):用以存放程序、一些原始数据和表格。 4、四个8位并行I/O(输入/输出)接口 P0~P3:每个口可以用作输入,也可以用作输出。 5、两个或三个定时/计数器: 每个定时/计数器都可以设置成计数方式,用以 对 外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果 实现计算机控制 6、一个全双工UART的串行I/O口:可实现单片机与单片机或其它微机之间串行通信。 7、片内振荡器和时钟产生电路:但需外接晶振和电容。 8、五个中断源的中断控制系统。 9、具有节电工作方式:休闲方式及掉电方式。 在空闲方式中,CPU停止工作,而RAM、定时器/计数器、串行口和中断系统都继续工作。此时的电流可降到大约为正常工作方式的15%。在掉电方式中,片内振荡器停止工作,由于时钟被“冻结”,使一切功能都暂停,故只保存片内RAM中的内容,直到下一次硬件复位为止。这种方式下的电流可降到15 μA以下,最小可降到06 μA。 结构: 由中央处理单元(CPU)、存储器(ROM及RAM)和I/O接口组成

Everspin非易失性MRAM切换技术

☆樱花仙子☆ 提交于 2019-12-11 16:20:24
切换MRAM技术 切换MRAM使用1个晶体管,1个MTJ单元来提供简单的高密度存储器。Everspin使用获得专利的Toggle电池设计,可提供高可靠性。数据在温度下20年始终是非易失性的。 在读取期间,传输晶体管被激活,并且通过将单元的电阻与参考器件进行比较来读取数据。在写入期间,来自写入线1和写入线2的磁场会在两条线的交点处写入单元,但不会干扰任一条线上的其他单元。 EVERSPIN MRAM产品采用一个晶体管,一个磁隧道结(MTJ)存储单元作为存储元件。MTJ由固定的磁性层,薄的电介质隧道势垒和自由磁性层组成。当对MTJ施加偏压时,被磁性层自旋极化的电子将通过称为隧穿的过程穿过介质阻挡层。 当自由层的磁矩平行于固定层时,MTJ器件具有低电阻,而当自由层磁矩与固定层矩反平行时,MTJ器件具有高电阻。 MRAM是一种利用电子自旋的磁性提供非易失性而不会磨损的存储器。MRAM将信息存储在与硅电路集成的磁性材料中,从而在单个无限耐用的设备中提供SRAM的速度和Flash的非易失性。 Everspin MRAM器件旨在结合非易失性存储器和RAM的最佳功能,为越来越多的电子系统提供“即时接通”功能和断电保护。 来源: https://www.cnblogs.com/sramsun/p/12022659.html

单片机基础知识必备

半城伤御伤魂 提交于 2019-12-11 11:31:08
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 单片机概述 什么是单片机(What is Microcontrollers?) 单片机就是一块集成在硅片上的微处理器、存储器以及各种输入输出接口的芯片,这样一块芯片就具备了计算机的属性,因而被称为单片微计算机。其事就是一块集成芯片,但是这块集成芯片具备特殊的功能,这些功能我们可以靠我们自己编程自定义,编程的目的就是使它的各个引脚在不同的时间可以输出不同的电平,进而控制连接到这个单片机各个脚的外围电路的电气状态。 百度百科: 单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时

ARM Cortex-M3 存储器映射

谁说我不能喝 提交于 2019-12-11 07:10:40
在4GB的地址空间中,ARM Cortex-M3已经粗线条的平均分成了8快,每块512MB, 每块也都规定了用途。每个快的大小都有512MB,显然这个非常大的,芯片厂商在 每个块的范围内设计各具特色的外设时,并不一定都用得完,都只是用了其中的一部分 而已。Cortex-M3的存储器映射如下图所示: 在这8个Block里面,由3个Block非常重要,也是我们最关心的三个块。 Block0用来设计成内部FLASH; Block1用来设计成内部RAM; Block2用来设计成片上的外设; 这三个Block内部具体区域 功能划分如下: 存储器Block0内部区域功能划分:Block0主要用于设计片内的FLASH, STM32F103VET6的FLASH就是512K,属于大容量。以STM32F103VET6 (指南者)为例,其Block0内部区域的功能划分具体如下: 存储器Block1内部区域功能划分 Block1用于设计片内SRAM。我们使用的STM32F103VET6(指南者)的SRAM是64KB。 Block1内部区域的功能划分具体如下: 存储器Block2内部区域功能划分 Block2用于片上外设,根据外设的总线速度不同,Block被分成了APB和 AHB两部分,其中APB又被分为APB1和APB2。具体如下: ———————————————— 版权声明:本文为CSDN博主「红尘

ARM汇编指令

让人想犯罪 __ 提交于 2019-12-10 07:40:14
转载: arm汇编指令-Bingghost-博客园 学习嵌入式系统时的资料收集 ARM处理器的指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协处理器指令和异常产生指令6大指令 一、跳转指令 跳转指令用于实现程序流程的跳转 跳转指令分类 Ⅰ.使用专门的跳转指令 分支指令 B 带链接的分支指令: BL 带状态切换的分支指令 BX Ⅱ. 程序计数器PC控制 直接向程序计数器PC写入跳转地址值,通过向程序计数器PC写入跳转地址值 可以实现在4GB的地址空间中的任意跳转,在跳转之前结合使用MOV LR,PC等类似指令 可以保存将来的返回地址值,从而实现在4GB连续的线性地址空间的子程序调用。 ARM指令集中的跳转指令可以完成从当前指令向前或向后的32MB的地址空间的跳转,包括以下4条指令: 1、B指令 B指令的格式为: B{条件} 目标地址 2、BL指令 BL指令的格式为: BL{条件} 目标地址 BL是另一个跳转指令,但跳转之前,会在寄存器R14中保存PC的当前内容, 因此,可以通过将R14的内容重新加载到PC中,来返回到跳转指令之后的那个 指令处执行。 该指令是实现子程序调用的一个基本但常用的手段 3、BLX指令 BLX指令的格式为: BLX 目标地址 BLX指令从ARM指令集跳转到指令中所指定的目标地址

《计算机基础》:计算机是怎么运行的?

*爱你&永不变心* 提交于 2019-12-09 16:44:13
计算机的三个根本性基础 1)计算机是执行输入、运算、输出的机器 2)程序是指令和数据的集合 3)计算机的处理方式有时与人们的思维习惯不同 计算机技术进步日新月异,进步的方向就是为了更好的贴合人类,为人类服务。这就需要他的思维习惯有更好的进步,这是如此,计算机还有很大的进步空间。(面向对象变成,是贴合人类的一种体现) 无论是刚入行的技术人员,还是有资历的老工程师,都应该 由衷地欢迎技术的进化,坦率地接受新技术。 CPU 机器语言就是由 二进制数字 构成的程序(.class文件),CPU 可以直接对其解释、执行。 1.CPU 中的 标志寄存器 (Flags Register)有什么作用? Flag的本意是“旗子”,这里引申为“标志”。一旦执行了算术运算、逻辑运算、比较运算等指令后,标志寄存器并不会存放运算结果的值,而是会把运算后的某些状态存储起来,例如运算结果是否为0、是否产生了 负数、是否有溢出(Overflow)等。 2.CPU内部有存储数据的地方。这种存储数据的地方叫作“寄存器”。虽然也叫寄存器,但是与I/O的寄存器不同,CPU的寄存器不仅能存储数据,还具备对数据进行运算的能力。( I/O的寄储器不能存取数据 ) 1. 控制器 控制单元主要由时序控制和指令控制等组成,其中指令控 制协调指令译码器,完成读指令、分析指令、交给运算器执行指令等操作。指令寄存器中存储着指令集。 2.

单片机的组成、工作原理、分类、特点以及发展趋势

老子叫甜甜 提交于 2019-12-07 01:09:45
芯片在没有开发前,单片机只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微型计算机控制系统,它与个人电脑(PC机)有着本质的区别,单片机的应用属于芯片级应用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使该芯片具备特定的功能。 不同的单片机有着不同的硬件特征和软件特征,即它们的技术特征均不尽相同,硬件特征取决于单片机芯片的内部结构,用户要使用某种单片机,必须了解该型产品是否满足需要的功能和应用系统所要求的特性指标。这里的技术特征包括功能特性、控制特性和电气特性等等,这些信息需要从生产厂商的技术手册中得到。软件特征是指指令系统特性和开发支持环境,指令特性即我们熟悉的单片机的寻址方式,数据处理和逻辑处理方式,输入输出特性及对电源的要求等等。开发支持的环境包括指令的兼容及可移植性,支持软件(包含可支持开发应用程序的软件资源)及硬件资源。要利用某型号单片机开发自己的应用系统,掌握其结构特征和技术特征是必须的。 单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化,现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。诚然