S7-1200硬件篇之读懂CPU的内部存储区

电脑内存的作用  时间:2021-01-20  阅读:()

原创文章,转载请注明出处.
更多实用资料请登录方正智芯官网:www.
founderchip.
com作者:北岛李工CPU模块的内部集成了很多的资源,PLC的厂家通常会根据集成资源的不同,将该型号的CPU分成不同的系列,如西门子S7-1200的CPU模块分为5个系列:1211C,1212C,1214C,1215C和1217C.
在这众多的资源中,存储器是必不可少的一个.
今天我们就来谈谈S7-1200系列CPU的内部存储器/区.
这里称之为"存储器/区"是因为物理上的划分一般称为存储器,逻辑上的划分一般称为存储区.
根据物理性质的不同,CPU模块的内部存储器可分为随机存储器(RAM)、只读存储器(ROM)和闪存/可擦除存储器(Flash).

随机存储器,英文名称"RandomAccessMemory",简写为RAM,其特点是访问速度快,价格低,可读可写,但是断电后数据无法保存;只读存储器,英文名称"ReadOnlyMemory",简写为ROM,它内部的数据只能读,不能写,断电后可以保持.
只读存储器一般用来存放PLC的操作系统.
闪存/可擦除存储器(FlashEPROM),它的特点是数据可读可写,访问速度慢,非易失性,断电后可保存.
闪存一般用来存放用户程序和数据.
SIMATC的存储卡就属于这一类.
根据逻辑功能的不同,S7-1200的存储区可分为用户存储区(UserMeomory)和系统存储区(SystemMemory);用户存储区用户存储区(UserMeomory)包括装载存储区(loadmemory)、工作存储区(workmemory)和保持存储区(Retentivememory).
装载存储区(loadmemory)用来存放用户的程序,数据和配置信息等,它是一种非易失型非易失型的存储介质,物理性质上属于闪存/可擦除存储器(Flash),功能相当于计算机上的硬盘,装载存储区可以是存储卡或者是CPU内部的存储芯片.
当我们向CPU下载程序的时候,程序就是存放在装载存储区中.
对于1200系列CPU而言,1211C、1212C的内部装载存储区的大小为1MB;1214C、1215C、1217C的内部装载存储区为4MB,各个系列的CPU都支持用存储卡扩展装载存储区(上一篇文章我们谈到S7-1200的存储卡的一个功能是可以用来扩大CPU的装载存储区).
工作存储区(workmemory)是一种易失型易失型的存储介质,在断电的情况下数据会丢失,物理性质上属于随机存储器(RAM),功能相当于计算机的内存.
CPU在执行用户程序时,会把需要的数据从装载存储区拷贝到工作存储区.
工作存储区的访问速度比装载存储区快的多,能满足CPU高速运算的需求.
CPU1211C的工作存储区为50KB(固件版本号为2.
0的为25KB;3.
0的为30KB);CPU1212C的工作存储区为75KB;CPU1214C的工作存储区为100KB;CPU1215C的工作存储区为125KB;CPU1217C的工作存取区大小为150KB;这里需要注意模块的版本号,低版本的存储区会小一些.
另外工作存储区的大小是固定的,无法扩展.

保持存储区(Retentivememory)是一种非易失性非易失性存储介质,可以在断电时将某些工作存储区的数据保存到这里,当电源恢复时CPU会把保存的数据还原到原来的地址.
1200系列CPU均有10Kb的保持存储区.
系统存储区系统存储区(Systemmemory)包括输入过程映像区(Inputprocessimagearea)、输出过程映像区(Outputprocessimagearea)、位存储区(bitmemory)、临时数据存储区(Temporarymemory)、数据块存储区(datablockmemory).
CPU在每个循环周期的开始都会扫描外设的物理地址,并把得到的数据存放到输入过程映像区,该存储区允许用户程序以位、字节、字或者双字的形式进行访问.
输入过程映像区允许读写操作,但一般情况我们都是进行读操作.

你可以在地址的后面加上":P"来直接访问外设的内容,比如"I0.
3:P",这样的指令会直接访问外设的内容,而不是从输入过程映像区读取数据.
外设内容是不允许CPU进行写操作的,所以"I0.
3:P"是只读的.
而"I0.
3"是访问CPU的输入过程映像区,它是外设数据的拷贝,所以可读可写.
输入过程映像区的数据在全局范围都是可以访问的.

CPU在每个循环周期结束之前都会把输出过程映像区的内容复制到外设地址的输出模块中,与输入过程映像区相同,输出过程映像区允许用户程序以以位、字节、字或者双字的形式进行访问,该区域也是可读可写的.

如果你想把运算的结果立即输出到外设的物理地址,而不是输出过程映像区,可以在地址的后面加上":P",比如"Q0.
1:P".
"Q0.
1"与"Q0.
1:P"的区别在于前者访问的是输出过程映像区,而后者则直接访问外设的物理输出;前者可读可写,后者只允许进行写操作,若进行读操作会发生错误.
位存储区(bitMemory),即M区,使用的频率很高.
M区的数据可读可写,可以位,字节,字,双字的形式进行访问,程序运行时需要的很多中间变量都存放在M区.
M区的数据可以在全局范围内进行访问,不会因为程序块调用结束而被系统收回.
但要注意M区的数据在断电后无法保存,若需要保存该数据,请将该数据设置成断电保存,系统会在电压降低时自动将其保存到保持存储区.
怎样设置呢打开博途V13,在左侧找到"PLC变量表(PLCtags)",双击,右侧出现变量表的内容,点击"保持(retan)"图标,如下图:出现保持存储区的对话框,假设我们保存从MB0开始10个字节,如下图:这样我们就设置了从MB0到MB9总计10个字节的保持存储区,我们变量表中的相应的变量后面的"保持(Retain)"属性就被选中了,如下图.
临时存储区(Temporarymemory)用来存放FB或FC运行过程中的临时变量,它只在FB或FC被调用的过程中有效,调用结束后该变量的存储区将被操作系统收回.
临时数据存放区的数据是局部有效的,临时变量也称为局部变量,它只能被调用的FB访问.
临时变量不能保存到保持存储区.
数据块存储区(datablockmemory)用来存放程序的各种数据,允许以位,字节,字和双字的形式进行访问,某些指令运算需要的数据结构也存放在数据块存储区中.
数据块分为全局数据块(GlobalDB)和背景数据块(InstanceDB);全局数据块存放的数据可以被所有的代码访问,而背景数据块的数据只能被指定的FB访问,数据块中的数据具有保持性,在代码运行结束后不会被系统收回.
对CPU内部的存储器/区我们就介绍到这里,下一篇文章我们继续介绍CPU的其它内部资源.

百驰云(19/月),高性能服务器,香港三网CN2 2核2G 10M 国内、香港、美国、日本、VPS、物理机、站群全站7.5折,无理由退换,IP免费换!

百驰云成立于2017年,是一家新国人IDC商家,且正规持证IDC/ISP/CDN,商家主要提供数据中心基础服务、互联网业务解决方案,及专属服务器租用、云服务器、云虚拟主机、专属服务器托管、带宽租用等产品和服务。百驰云提供源自大陆、香港、韩国和美国等地骨干级机房优质资源,包括BGP国际多线网络,CN2点对点直连带宽以及国际顶尖品牌硬件。专注为个人开发者用户,中小型,大型企业用户提供一站式核心网络云端...

LOCVPS:美国XEN架构VPS七折,全场八折,日本/新加坡XEN架构月付29.6元起

LOCVPS发来了针对XEN架构VPS的促销方案,其中美国洛杉矶机房7折,其余日本/新加坡/中国香港等机房全部8折,优惠后日本/新加坡机房XEN VPS月付仅29.6元起。这是成立较久的一家国人VPS服务商,目前提供美国洛杉矶(MC/C3)、和中国香港(邦联、沙田电信、大埔)、日本(东京、大阪)、新加坡、德国和荷兰等机房VPS主机,基于XEN或者KVM虚拟架构,均选择国内访问线路不错的机房,适合建...

Hostodo(年付12美元)斯波坎VPS六六折,美国西海岸机房

Hostodo是一家成立于2014年的国外VPS主机商,现在主要提供基于KVM架构的VPS主机,美国三个地区机房:拉斯维加斯、迈阿密和斯波坎,采用NVMe或者SSD磁盘,支持支付宝、PayPal、加密货币等付款方式。商家最近对于上架不久的斯波坎机房SSD硬盘VPS主机提供66折优惠码,适用于1GB或者以上内存套餐年付,最低每年12美元起。下面列出几款套餐配置信息。CPU:1core内存:256MB...

电脑内存的作用为你推荐
输入法哪个好用输入法那个软件好滚筒洗衣机和波轮洗衣机哪个好一分钟看懂滚筒洗衣机和波轮洗衣机 滚筒洗衣机和波轮洗衣机哪个好江门旅游景点哪个好玩的地方江门有什么地方好玩的?唱K 行街 免答游戏加速器哪个好网游加速器哪个最好用?核芯显卡与独立显卡哪个好核心显卡和独立显卡哪个好手机炒股软件哪个好手机炒股哪个软件好 要免费的海克斯皮肤哪个好lol100块抽11次的海克斯宝箱值得买吗视频软件哪个好安卓系统在线看视频软件哪个好百度空间登录怎么登录百度空间牡丹江教育云空间登录牡丹江教育云平台学生注册错了怎么办?
中文域名 香港托管 美国主机代购 免费ftp空间 Hello图床 wdcp 哈喽图床 godaddy域名转出 tk域名 qq数据库 绍兴高防 gg广告 中国电信测速112 刀片服务器是什么 网通服务器托管 免费网页申请 视频服务器是什么 下载速度测试 智能dns解析 免费蓝钻 更多