产品描述
5SL6616-7CC
现代计算机需要大约1000 个CPU 周期(1 微秒左右) 从RAM 获取数据。这种速度已很惊人,但与访问CPU 寄存器的时间相比仍然较慢。减少计算所需的RAM 操作次数,是计算机科学家追求的目标。
在两个面对面的人之间,声波传播需要大约10 微秒。
时间局部性与空间局部性
在尝试尽量减少对RAM 的访问时,计算机科学家开始注意到两个事实。
◎ 时间局部性:访问某个存储地址时,可能很快会再次访问该地址。
◎ 空间局部性:访问某个存储地址时,可能很快会访问与之相邻的地址。
因此,将这些存储地址保存在CPU 寄存器中,有助于避免大部分对RAM的“昂贵”操作。不过在设计CPU 芯片时,工业工程师并未找到可行的方法来容纳足够多的内部寄存器,但他们仍然发现了如何有效地利用时间局部性与空间局部性。接下来将对此进行讨论。
一级缓存
可以构建一种集成在CPU 内部且速度较快的辅助存储器,这就是一级缓存。将数据从一级缓存读入寄存器,仅比直接从寄存器获取数据稍慢。
利用一级缓存,我们将可能访问的存储地址中的内容复制到CPU 寄存器附近,借此以较快的速度将数据载入CPU 寄存器。将数据从一级缓存读入寄存器仅需大约10 个CPU 周期,速度是从RAM 获取数据的近百倍。
借由10 KB 左右的一级缓存,并合理利用时间局部性与空间局部性,**过一半的RAM 访问调用仅通过缓存就能实现。这一创新使计算技术发生了翻天覆地的变化。一级缓存可以较大缩短CPU 的等待时间,使CPU 将更多时间用于实际计算而非处于空闲状态。
二级缓存
提高一级缓存的容量有助于减少从RAM 获取数据的操作,进而缩短CPU 的等待时间。但是,增大一级缓存的同时也会降低它的速度。在一级缓存达到50 KB 左右时,继续增加其容量就要付出较高的成本。更好的方案是构建一种称为二级缓存的缓存。二级缓存的速度稍慢,但容量比一级缓存大得多。现代CPU 配备的二级缓存约为200 KB,将数据从二级缓存读入CPU 寄存器需要大约100 个CPU 周期。
我们将较有可能访问的地址复制到一级缓存,较有可能访问的地址复制到二级缓存。如果CPU 没有在一级缓存中找到某个存储地址,仍然可以尝试在二级缓存中搜索。仅当该地址既不在一级缓存、也不在二级缓存中时,CPU 才需要访问RAM。
目前,不少制造商推出了配备缓存的处理器。三级缓存的容量比二级缓存大,虽然速度不及二级缓存,但仍然比RAM 快得多。一级/ 二级/ 三级缓存非常重要,它们占据了CPU 芯片内部的大部分硅片空间
在存储器层次结构中,位于CPU 寄存器与缓存之下的是RAM,它负责存储当前运行的所有进程的数据与代码。截至2017 年,计算机配备的RAM 容量通常为1 GB 到10 GB。但在许多情况下,RAM 可能无法满足操作系统以及所有运行程序的需要。
因此,我们必须深入探究存储器层次结构,使用位于RAM 之下的硬盘。截至2017 年,计算机配备的硬盘容量通常为数百吉字节,足以容纳当前运行的所有程序数据。如果RAM 已满,当前的空闲数据将被移至硬盘以释放部分内存空间。
问题在于,硬盘的速度非常慢,它一般需要100 万个CPU 周期(1 毫秒)a 在磁盘与RAM 之间传输数据。从磁盘访问数据看似很快,但不要忘记,访问RAM 仅需1000 个周期,而访问磁盘需要100 万个周期。RAM 通常称为**级存储器,而存储程序与数据的磁盘称为*二级存储器。
标准照片在大约4 毫秒内捕捉光线。
CPU 无法直接访问*二级存储器。执行保存在*二级存储器中的程序之前,必须将其复制到**级存储器。实际上,每次启动计算机时,即便是操作系统也要从磁盘复制到RAM,否则CPU 无法运行。
确保RAM **枯竭在典型活动期间,确保计算机处理的所有数据与程序都能载入RAM 至关重要,否则计算机将不断在磁盘与RAM 之间交换数据。由于这项操作的速度较慢,计算机性能将严重下降,甚至无法使用。这种情况下,计算机不得不花费更多时间等待数据传输,而无法进行实际的计算。
当计算机不断将数据从磁盘读入RAM 时,则称计算机处于抖动模式。必须对服务器进行持续监控,如果服务器开始处理无法载入RAM 的数据,那么抖动可能会导致整个服务器崩溃。银行或收银机前将因此排起长队,而服务员除了责怪发生抖动的计算机系统之外别无他法。内存不足或许是导致服务器故障的主要原因之一。
外部存储器与*三级存储器
我们继续沿存储器层次结构向下分析。在连接到网络之后,计算机就能访问由其他计算机管理的存储器。它们要么位于本地网络,要么位于因特网(即云端)。但访问这些数据所需的时间更长:读取本地磁盘需要1 毫秒,而获取网络中的数据可能耗时数百毫秒。网络包从一台计算机传输到另一台计算机大约需要10 毫秒,如果经由因特网传输则需要200 毫秒到300 毫秒,与眨眼的时间相仿。
位于存储器层次结构底部的是*三级存储器,这种存储设备并非总是在线与可用的。在盒式磁带或CD 中存储数百万吉字节的数据成本较低,但访问这类介质中的数据时,需要将介质插入某种读取设备,这可能需要数分钟甚至数天之久(不妨尝试让IT 部门在周五晚上备份磁带中的数据……)。有鉴于此,*三级存储器仅适合归档很少访问的数据。
存储技术的发展趋势
一方面,很难显著改进“快速”存储器(位于存储器层次结构*)所用的技术;另一方面,“慢速”存储器的速度越来越快,价格也越来越低。几十年来,硬盘存储的成本一直在下降,这种趋势似乎还将持续下去。
新技术也使磁盘的速度得以提高。人们正从旋转磁盘转向固态硬盘(SSD),它没有动件,因而更快、更可靠且更省电。
采用SSD 技术的磁盘正变得越来越便宜且越来越快,但其价格仍然不菲。有鉴于此,一些制造商推出了同时采用SSD 与磁技术的混合磁盘。后者将访问频率较高的数据存储在SSD 中,访问频率较低的数据存储在速度较慢的磁盘中。当需要频繁访问原先不经常访问的数据时,则将其复制到混合驱动器中速度较快的SSD。这与CPU 利用内部缓存提高RAM 访问速度的技巧颇为类似
1. 编程操作
(1)编程准备。检查PLC与计算机的连接是否正确,计算机的RS232C端口与PLC之间是否*的揽线及转换器连接:使PLC处于“停机”状态;接通计算机和PLC的电源。
(2)编程操作。
①打开GX Developer编程软件,新建一个工程,并命名。
②采用梯形图编程的方法,编辑图1所示的梯形图程序并保存。
(3)程序的传送。
①程序的写出。将编辑好的程序写入到PLC用户存储器RAM中,然后进行核对。
②程序的读入。通过[读入]操作将PLC用户存储器中程序读入到计算机中,然后进行核对。
③程序的核对。在上述程序核对过程中,只有当计算机两端程序比较无误后,方可认为程序传送正确,否则应查清原因,重新传送。
2. 运行操作
程序传送到PLC用户存储器后,可按以下操作步骤运行程序。
①根据梯形图程序,将PLC的输入/输出端与部输入信号连接好,PLC的输入/输出端编号及说明如表1所示。
②接通PLC运行开关,PLC面板上RUN灯亮,表明程序已投入运行。
③结合控制程序,操作有关输入信号,在不同输入状态下观察输入/输出指示灯的变化,若输出指示灯的状态与程序控制要求一致,则表明程序运行正常
产品推荐