我非常想知道CPU的工作方式。可以说在8位微控制器(8051)中ram和rom如何取决于cpu?根据这些主题,我心中有些疑问使我感到困惑。喜欢
1 =如何定义ram和rom大小(在8051微控制器中)?
2 = 8位控制器的含义是什么?
3 = ROM大小是否取决于CPU大小?如果不是的话,我要与8位控制器接口多少rom?
我对此问题进行了更多搜索,但未找到任何解决方案,因此请帮助我
并且有一些文档和书籍(微控制器),所以请建议我
谢谢
答案 0 :(得分:1)
与上述答案没有太大不同...
在所有这些中,都没有明确的定义,它们通常是语或工程师的话或市场营销的话。 8位比另外一点坚固。这意味着处理器操作或大部分操作的最大大小为8位宽,因此,如果您愿意,则为8位宽。有些人试图使寄存器大小定义位大小,指令大小,CPU内核上的地址位数等。x86也是8位,16位,32位,64位,128、256、512或1024是否基于上述概念?可能取决于您问的人...
根据时间范围,8051被认为是8位,并且其中大部分内容均为8位。
8051已经被大量克隆,并且如上所述,存储有时会用于扩展内存空间,因此,取决于所使用的特定cpu /部件/核心,它可以访问多少内存。 ROM / RAM大小也特定于您所使用的部件,您从部件供应商的数据表开始,然后根据需要提供其他文档。部件/ IP供应商是您在任何特定时间使用的8051型号RAM / ROM信息的权威来源。
通常,不仅仅是8051的微控制器往往具有比RAM多的ROM / FLASH,很明显,为什么当您开始编写应用程序并看到您需要一个比另一个更多时。
正如古纳回答的那样,最大寻址空间由“总线”上的地址位数决定,但是如上所述,实现可能/将因实现而异,有些可以寻址兆字节,有些只能寻址一定数量的K字节。
通过文档和版本,或者通过IP的所有权和控制,某些CPU体系结构比其他CPU体系结构受到更多的控制(例如,没有克隆可以在诉讼中幸存下来)。因此,有些将具有固定的地址空间大小,并且目前没有例外,但是接下来,像8051这样的克隆已被大量复制(8051仍在广泛使用,如果您的计算机上至少有一个,则很有可能)。而不是沿互联网的服务器和类似的网站肯定会)其原始时钟方案和地址空间选项因实现而异。因此,这不是由CPU名称/类型/品牌决定ram / rom的最大数量的情况,并且它几乎永远不会确定您在特定实现,特定芯片或主板中每个的确切数量。
很容易找到8051信息,无数的网站,远远超过了提供链接的空间。首先,一些芯片供应商仍在积极生产8051芯片。硅实验室,微芯片,柏树,也许还有其他。
例如,仅花费了几秒钟就找到了特定零件的数据表,其中指出:
512字节RAM
8 kB(F990 / 1/6/7,F980 / 1/6/7),4 kB(F982 / 3/8/9)或2 kB(F985)闪存;系统内可编程
该零件的价格在很大程度上受到ROM / FLASH大小和RAM大小的影响,因此,如果可以使程序更小,则特定系列的零件实际上将具有相同的设计,并根据您的需要使用不同大小的存储器。您可以购买比家庭中的另一个部件少一美元的部件,但可能具有相同的占地面积,因此可以为较大的部件设计并切换到较小的部件,反之亦然,希望较小的部件并且您的程序太大然后必须改用较大的产品并处理利润损失。
答案 1 :(得分:0)
根据我的知识,请在下面为您的问题找到答案。
1)8051微控制器的存储器分为程序存储器和数据存储器。程序存储器(ROM)用于执行正在执行的永久性保存程序,而数据存储器(RAM)用于临时存储和保留中间结果和变量。
2)8位微控制器在任何特定时间处理8位数据。 MCU使用的位数(有时称为位深度或数据宽度)告诉您寄存器的大小(每个寄存器8位),存储器地址的数量(仅2 ^ 8 = 256个地址)以及它们最大的数量可以处理(同样,2 ^ 8 = 256个整数,或0到255的整数)。 8位微控制器的寻址空间有限,但是某些8位微控制器使用分页,其中页面寄存器的内容决定了要使用的板载存储体。
3)是,CPU可以根据地址总线的宽度来解决最大rom大小。例如,在8085微处理器中,地址总线的宽度为16位,因此它可以寻址的最大地址为2 ^ 16 = 65536(8位值)。