存储器系统.docx

上传人:b****5 文档编号:8572733 上传时间:2023-01-31 格式:DOCX 页数:24 大小:359.94KB
下载 相关 举报
存储器系统.docx_第1页
第1页 / 共24页
存储器系统.docx_第2页
第2页 / 共24页
存储器系统.docx_第3页
第3页 / 共24页
存储器系统.docx_第4页
第4页 / 共24页
存储器系统.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

存储器系统.docx

《存储器系统.docx》由会员分享,可在线阅读,更多相关《存储器系统.docx(24页珍藏版)》请在冰豆网上搜索。

存储器系统.docx

存储器系统

第4章存储器系统

引入:

电子计算机是20世纪人类最伟大的发明之一。

随着计算机的广泛应用,人类社会生活的各个方面都发生了巨大的变化。

特别是微型计算机技术和网络技术的高速发展,计算机逐渐走进了人们的家庭,正改变着人们的生活方式。

计算机逐渐成为人们生活和工作不可缺少的工具,掌握计算机的使用也成为人们必不可少的技能。

本章知识要点:

1)存储器的分类和三层体系结构

2)RAM、ROM芯片的结构、工作原理

3)存储器的扩展方法

4)高速缓冲存储器技术

5)虚拟存储器技术

6)存储保护

4.1存储器概述

4.1.1存储器的分类

在计算机的组成结构中,有一个很重要的部分,就是存储器。

存储器是一种记忆部件,是用来存储程序和数据的,对于计算机来说,有了存储器,才有记忆功能,才能保证正常工作。

存储器的种类很多,常用的分类方法有以下几种。

一、按其用途分

(1)内存储器

内存储器又叫内存,是主存储器。

用来存储当前正在使用的或经常使用的程序和数据。

CPU可以对他直接访问,存取速度较快。

(2)外存储器

外存储器又叫外存,是辅助存储器。

外存通常是磁性介质或光盘,像硬盘,软盘,磁带,CD等,能长期保存信息,并且不依赖于电来保存信息,但是由机械部件带动,速度与CPU相比就显得慢的多。

外存的特点是容量大,所存的信息既可以修改也可以保存。

存取速度较慢,要用专用的设备来管理。

计算机工作时,一般由内存ROM中的引导程序启动程序,再从外存中读取系统程序和应用程序,送到内存的RAM中,程序运行的中间结果放在RAM中,(内存不够是也可以放在外存中)程序的最终结果存入外部存储器。

二、按存储介质分

(1)半导体存储器

早期的半导体存储器,普遍采用典型的晶体管触发器和一些选择电路构成的存储单元。

现代半导体存储器多为用大规模集成电路工艺制成的一定容量的芯片,再由若干芯片组成大容量的存储器。

半导体存储器又分为双极型半导体存储器和MOS型半导体存储器。

(2)磁表面存储器

再金属或非金属基体的表面上,涂敷一层磁性材料作为记录介质,这层介质称为磁层。

工作时,磁层随机体高速运动,用磁头再磁层上进行读写操作。

如磁盘存储器和磁带存储器。

其特点是:

存储容量大,价格低,但结构为机电组合,工艺复杂、存取速度慢,主要用做辅助存储器。

(3)光存储器。

如CD,VCD,MO,MD,DVD。

三、按存取方式分

(1)随机存取存储器

随机存取存储器简称RAM,也叫做读/写存储器,既能方便地读出所存数据,又能随时写入新的数据。

RAM的缺点是数据的易失性,即一旦掉电,所存的数据全部丢失。

(2)只读存储器

只读存储器通常简写为ROM。

ROM存放的数据一般不能用简单的方法对其内容进行改写,正常使用时主要对其进行读取操作,ROM还具有掉电后其内部信息不丢失的特点(通常叫非易失性),一般用于存放一些固定的数据或程序,其一般在器件生产出厂前由生产厂家将内容直接写入在器件中。

(3)顺序存取存储器

访问存储器所用的时间由被访问数据所处的物理位置来决定。

例如,在磁带存储器中,访问记录在磁带末尾的数据要比访问记录在磁带头部的数据花费更多的时间。

(4)直接存取存储器

直接存取存储器如磁盘存储器和光盘存储器等,访问每个存储单元的时间可能不相同,但也不象磁带存储器那样,完全由被访问数据所处的物理位置来决定。

磁盘、光盘等可以在两个方向上同时寻址,实际的访问时间与发出读写命令时磁头所处的位置等因素有关。

四、按信息可保存性分

(1)易失性存储器

断电后,存储的信息将消失的存储器。

RAM是易失性存储器。

(2)非易失性存储器

断电后,存储的信息仍然保存再存储器中,称为非易失性存储器,ROM,FLASH和磁性材料存储器为非易失性存储器。

4.1.2存储体系与层次结构

一、访存的局部性原理

计算机对存储器的要求是高速度、大容量、低价格。

从大量的统计中得到的一个规律是,程序中对于存储空间90%的访问局限于存储空间的10%的区域中,而另外10%的访问则分布在存储空间的其余90%的区域中。

这就是通常说的局部性原理。

访存的局部性规律包括两个方面:

(1)时间局部性:

如果一个存储项被访问,则可能该项会很快被再次访问。

(2)空间局部性:

如果一个存储项被访问,则该项及其邻近的项也可能很快被访问。

二、存储器的层次结构

人们为了解决存储器容量和速度的矛盾,应用了访问局部性原理,把存储体系设计成为层次化的结构以满足使用要求。

存储体系结构包括不同层次上的存储器,通过适当的硬件、软件有机地组合在一起形成计算机的存储体系结构。

现在大多数人都将高性能计算机的存储体系结构描述成如图4-1所示的三层存储器层次结构。

三级存储结构是高速缓存(Cache)、主存储器(MM)和辅助存储器(外存)。

也有人将存储器层次分为四层,是将CPU内部的寄存器也看作是存储器的一个层次。

即是由寄存器、高速缓存(Cache)、主存(内存)、外存组成。

其中寄存器是最高层次的存储部件,容量最小,速度最快。

寄存器对程序员是不透明的,对它的访问需按寄存器名访问而不是按地址。

有一些简单的计算机没有高速缓存(Cache),则这样的计算机的存储体系就剩下主存和辅存两个层次。

(1)主存储器用来存放需CPU运行的程序和数据。

用半导体RAM构成,常包含少部分ROM。

可由CPU直接编程访问,采取随机存取方式,即:

可按某个随机地址直接访问任一单元(不需顺序寻找),存取时间与地址无关。

存储容量较大,常用字节数表示,有时也用单元数×位数表示。

速度较快,以存取周期表示。

(2)Cache位于CPU与主存之间(有些Cache集在CPU芯片之中),用来存放当前运行的程序和数据,它的内容是主存某些局部区域(页)的复制品。

它用快速的半导体RAM构成,采取随机存取方式。

存储容量较小而速度最快。

(3)外存储器用来存放暂不运行但需联机存放的程序和数据。

用磁盘、光盘、磁带等构成,磁盘用于需频繁访问场合,光盘目前多用于提供系统软件,而磁带多用于较大系统的备份。

CPU不能直接编址访问外存,而是将它当作外围设备调用。

磁带采取顺序存取方式。

磁盘与光盘采取直接存取(半顺序)方式,先直接定位到某个局部区域,再在其中顺序存取。

外存容量可以很大,以字节数表示。

4.1.3存储器的性能指标

一、存储容量

由于一般存储器都采用一维线性编址,存储器中的每个能够存放数据的单元都被赋予一个地址,因此,简单地说,存储容量(MemoryCapacity)是指存储器中所具有的存储单元的个数,或所具有的地址个数。

表示存储器容量的单位主要有字节(Byte),简写为B;位(bit),简写为b;字(Word),简写为W。

其中,最常用的单位是字节B,一个字节由8位组成,即1B=8b。

对于32位计算机系统,一个字有32位,即1W=32b=8B。

因为存储器的容量一般都很大,因此,要用千(Kilo)、兆(Mega)、千兆(Giga)、兆兆(Tera)等单位来表示。

二、存取时间

存取时间又称为存储器访问时间,是指启动一次存储器操作到完成该操作所需的时间。

写入时为存数时间,读出时为取数时间。

用TA表示。

(1)取数时间Tr:

从向存储器发出读操作命令到数据从存储器中读出所经历的时间。

(2)存数时间Ta:

从启动一次访问存储器操作到完成该操作所经历的时间,这里所说的访问存储器操作包括读操作、写操作、交换操作等。

三、存储周期

存储周期又称为访问周期,是指连续启动两次独立的存储器操作所需间隔的最小时间。

用TMC表示。

存储周期的倒数,称为存储器速度(用S表示)。

它表示每秒从存储器进出信息的最大数量,其单位用字/秒或字节/秒表示。

四、可靠性

存储器的可靠性用平均故障时间MTBF来描述,它可以理解为两次故障之间的平均时间间隔。

MTBF越长,说明存储器的可靠性越高。

五、性能价格比

性能价格比是衡量存储器经济性能好坏的综合性指标。

存储器的价格通常用每位的价格来表示,例如每位多少美分($c/bit)。

目前,静态存储器的价格大致为10-4$c/bit,动态存储器的价格大致为10-7$c/bit,磁表面存储器的价格大致为10-10$c/bit。

衡量存储器的性能还可以有其他一些参数,例如功耗。

目前,功耗已经成为提高存储器性能的一个重大障碍。

大家知道,芯片集成度提高得很快,于是,芯片的散热就成了大问题。

因此,降低存储器芯片的功耗是当前一个重大得研究课题。

通常,存储器的维持功耗要远远低于工作功耗,因此,当外部不访问存储器时,存储器一般处于维持状态,以减小功耗,降低存储器的温度。

4.2主存储器

主存储器又称内存,通常由半导体存储器构成。

通用微型计算机的主存包含只读存储器ROM(ReadOnlyMemory)和随机存取存储器RAM(ReadOnlyMemory)。

其中ROM支持基本的监控和输入输出管理,RAM则面向用户。

4.2.1随机存取存储器RAM

RAM就是我们平常所说的内存,主要用来存放各种现场的输入、输出数据,中间计算结果,以及与外部存储器交换信息。

它的存储单元根据具体需要可以读出,也可以写入或改写。

一旦关闭电源或发生断电,其中的数据就会丢失。

现在的RAM多为MOS型半导体电路,它分为静态(SRAM)和动态(DRAM)两种。

静态RAM是靠双稳态触发器来记忆信息的;动态RAM是靠MOS电路中的栅级电容来记忆信息的。

由于电容上的电荷会泄漏,需要定时给予补充,所以动态RAM需要设置刷新电路。

但动态RAM比静态RAM集成度高、功耗低,从而成本也低,适于作大容量存储器。

所以主内存通常采用动态RAM,而高速缓冲存储器(Cache)则使用静态RAM。

另外,内存还应用于显卡,声卡及CMOS等设备中,用于充当设备缓存或保存固定的程序及数据。

动态RAM按制造工艺的不同,又可分为动态随机存储器(DynamicRAM)、扩展数据输出随机存储器(ExtenedDataOutRAM)和同步动态随机存储器(SysnchromizedDynamicRAM)。

一、SRAM的组成

SRAM由存储器、地址译码电路、读写控制电路、输入/输出控制电路和片选控制组成。

如图4-2所示。

(1)存储体

半导体存储体由多个基本存储电路组成,每个基本存储电路对应一个二进制数位。

SRAM中的每一位均存储在四个晶体管当中,这四个晶体管组成了两个交叉耦合反向器。

这个存储单元具有两个稳定状态,通常表示为0和1。

另外还需要两个访问晶体管用于控制读或写操作过程中存储单元的访问。

因此,一个存储位通常需要六个MOSFET。

对称的电路结构使得SRAM的访问速度要快于DRAM。

一个基本存储电路只能存储一个二进制位。

将基本的存储电路有规则地组织起来,就是存储体。

存储体是存储单元的集合。

在较大容量的存储器中,往往把各个字的同一位组织在一个集成片中。

如图中的4096×1位,是指4096个字的同一位。

由这样的16个片子则可组成4096×16的存储器。

同一位的这些字排成矩阵,如64×64=4096。

由X(行线)和Y(列线)的交叉来选择所需要的单元。

(2)地址译码电路

地址译码器的输入信息来自CPU的地址寄存器。

地址寄存器用来存放所要访问(写入或读出)的存储单元的地址。

CPU要选择某一存储单元,就在地址总线上输出此单元的地址信号给地址译码器。

地址译码器把用二进制代码表示的地址转换成输出端的高电位,用来驱动相应的读写电路,以便选择所要访问的存储单元。

地址译码有两种方式:

一种是单译码方式,适用于小容量存储器;另一种是双译码方式,适用于大容量存储器。

单译码结构也称字结构。

在这种方式中,地址译码器只有一个,译码器的输出叫字选线,而字选线选择某个字(某存储单元)的所有位。

例如,地址输人线n=4,经地址译码器译码,可译出24=16个状态,分别对应16个字地址。

为了节省驱动电路,存储器中通常采用双译码结构。

采用双译码结构,可以减少选择线的数目。

在这种译码方式中,地址译码器分成X向和Y向两个译码器。

若每一个有n/2个输入端,它可以译出2n/2个输出状态,那么两个译码器交叉译码的结果,共可译出2n/2×2n/2=2n个输出状态,其中n为地址输入量的二进制位数。

但此时译码输出线却只有2×2n/2根。

例如n=12,双译码输出状态为212=4096个,而译码线仅只有2×26=128根。

(3)读写控制电路

存储器的基本操作是读操作和写操作,访问SRAM时,对被选中的寄存器,究竟是读还是写,通过读/写控制线进行控制。

如果是读,则被选中单元存储的数据经数据线、输入/输出线传送给CPU;如果是写,则CPU将数据经过输入/输出线、数据线存入被选中单元。

一般SRAM的读/写控制线高电平为读,低电平为写;也有的RAM读/写控制线是分开的,一根为读,另一根为写。

(4)输出驱动电路

RAM通过输入/输出端与计算机的中央处理单元(CPU)交换数据,读出时它是输出端,写入时它是输入端,即一线二用,由读/写控制线控制。

输入/输出端数据线的条数,与一个地址中所对应的寄存器位数相同,例如在1024×1位的RAM中,每个地址中只有1个存储单元(1位寄存器),因此只有1条输入/输出线;而在256×4位的RAM中,每个地址中有4个存储单元(4位寄存器),所以有4条输入/输出线。

也有的RAM输入线和输出线是分开的。

RAM的输出端一般都具有集电极开路或三态输出结构。

(5)片选控制

由于受RAM的集成度限制,一台计算机的存储器系统往往是由许多片RAM组合而成。

CPU访问存储器时,一次只能访问RAM中的某一片(或几片),即存储器中只有一片(或几片)RAM中的一个地址接受CPU访问,与其交换信息,而其他片RAM与CPU不发生联系,片选就是用来实现这种控制的。

通常一片RAM有一根或几根片选线,当某一片的偏选线接入有效电平时,该片被选中,地址译码器的输出信号控制该片某个地址的寄存器与CPU接通;当片选线接入无效电平时,则该片与CPU之间处于断开状态。

(6)RAM的输入/输出控制电路

图4-3给出了一个简单的输入/输出控制电路。

当选片信号CS=1时,G5、G4输出为0,三态门G1、G2、G3均处于高阻状态,输入/输出(I/O)端与存储器内部完全隔离,存储器禁止读/写操作,即不工作。

当CS=0时,芯片被选通:

=1时,G5输出高电平,G3被打开,于是被选中的单元所存储的数据出现在I/O端,存储器执行读操作;

=0时,G4输出高电平,G1、G2被打开,此时加在I/O端的数据以互补的形式出现在内部数据线上,并被存入到所选中的存储单元,存储器执行写操作。

二、SRAM的容量扩展

目前生产的存储器芯片的容量是有限的,它在字数或字长方面与实际存储器的要求都有差距,所以需要在字向和位向两方面进行扩充才能满足实际存储器的容量要求,通常采用位扩展法、字扩展法、字位同时扩展法。

(1)位扩展法

假定使用8K×l的RAM存储器芯片,那么组成8K×8位的存储器,可采用图4-4所示的位扩展法。

此时只加大字长,而存储器的字数与存储器芯片字数一致。

图中,每一片RAM是8192×1,故其地址线为13条(A0~A12),可满足整个存储体容量的要求。

每一片对应于数据的1位(只有1条数据线),故只需将它们分别接到数据总线上的相应位即可。

在这种方式中,对片子没有选片要求,就是说片子按已被选中来考虑。

如果片子有选片输入端,可将它们直接接地。

在这种连接时,每一条地址总线接有8个负载,每一条数据线接有一个负载。

(2)字扩展法

字扩展是仅在字向扩充,而位数不变,因此将芯片的地址线、数据线、读/写控制线并联,而由片选信号来区分各片地址,故片选信号端连接到选片译码器的输出端。

图4-5是用16K×8位的芯片采用字扩展法组成64K×8位的存储器连接图。

图中4个芯片的数据线与数据总线D0一D7相连,地址总线低位地址A0一A13与各芯片的14位地址端相连,两位高位地址A14,A15经译码器和4个片选端相连。

(3)字位同时扩展法

用容量为l×k位的存储芯片设计容量为M×N位的存储器(l<M,k<N=,需要字向、位向同时进行扩展。

共需存储芯片数为:

(M/l)×(N/k)。

例:

用256K×8位的存储芯片设计容量为2048K×32位的存储器。

解:

需存储芯片数为:

(2048K/256K)×(32/8)=32(片)

由每组四片存储芯片完成位扩展;八组这样的存储芯片完成字扩展,参考图4-6。

三、DRAM的组成

动态随机访问存储器(DRAM)是一种随机访问记忆体(RAM),不会一直保存记忆内容,随着时间而将内容流失。

DRAM用于通常的数据存取。

我们常说内存有多大,主要是指DRAM的容量。

DRAM中的每一位数据均存储于一个电容当中,储存在电容中的电子的数量决定了该位数据对应的是1还是0。

由于DRAM的存储单元由电容组成,相对于SRAM来说,它占用的面积也更小,从而其价格也更便宜。

电容总是趋向于释放电荷,因此DRAM还需要周期性的刷新操作,否则数据就会丢失。

正是因为DRAM需要周期的刷新操作,所以相对于静态RAM(SRAM)来说,DRAM是动态的。

另外,当DRAM的电源供应停止后,存储于其中的数据会丢失,因此,DRAM是一种非永久性存储器(易失性存储器)。

DRAM中的电容通常被组织成一个正方阵列,这个阵列由若干行和若干列组成,其中的每一个电容都可以看成是阵列的一个单元,这些单元通过阵列的行和列的地址译码器来寻址。

对于任何一个单元的读操作,整个行均被读出,然后重新写回(刷新)。

对于任何一个单元的写操作,整个行均被读出,然后改变其中一个单元的值,最后将整个行写回。

典型情况下,DRAM的制造厂家规定DRAM的每一行必须在64ms以内执行一次刷新操作。

通常使用刷新逻辑来自动完成刷新操作,这使得DRAM的实现更加复杂,但由于其价格便宜、容量大,因此它在某些应用场合比SRAM更加具有吸引力。

四、DRAM的电器特性

(1)集成度高,功耗低

(2)具有易失性,必须刷新。

(3)破坏性读出,必须读后重写

(4)读后重写,刷新均经由刷新放大器进行。

(5)刷新时只提供行地址,由各列所拥有的刷新放大器,

(6)对选中行全部存储细胞实施同时集体读后重写(再生)。

五、DRAM的刷新

动态MOS存储器采用“读出”方式进行刷新。

因为在读出过程中恢复了存储单元的MOS栅极电容电荷,并保持原单元的内容,所以读出过程就是再生过程。

通常,在再生过程中只改变行选择线地址,每次再生一行。

依次对存储器的每一行进行读出,就可完成对整个DRAM的刷新。

从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止,这一段时间间隔叫刷新周期,一般为2ms,4ms或8ms。

常用的刷新方式有三种,一种是集中式,另一种是分散式,第三种是异步式。

(1)集中式刷新方式

以2116芯片为例,假定读/写周期为500ns,那么刷新128行所需时间为500×128×10-3=64μs,如果采用集中式刷新方式,那么必须在2ms的时间内集中用64μs的时间对存储器进行刷新操作,在此期间不允许CPU或其他处理机访问存储器。

(2)分散式刷新方式

分散式刷新方式是每读/写一次存储器就刷新一行存储元,假定存储器的读/写周期为500ns,那么相当于读/写周期延长为1000ns。

这就是说,每读/写128次存储器就能对128行存储元刷新一遍,其刷新的间隔为128μs,在2ms时间内,能对每个存储元刷新16遍。

这显然没有必要,而且存储器访问速度因此而降低一倍。

其优点是不出现“死时间”。

(3)异步式刷新方式

前述两种刷新方式的结合,基本思想是将刷新操作平均分配到整个刷新间隔时间内进行。

访问周期为500ns,整个芯片共128行,即2ms时间内,只要求刷新128次,于是每行的刷新间隔为:

2ms/128=15.625μs

于是将2ms时间分成128段,每段15.5μs,在每段内利用0.5μs的时间刷新一行,保证在2ms时间内能对整个芯片刷新一遍。

这种刷新方式是把集中式刷新的64μs“死时间”分散成每15.5μs出现0.5μs的死时间,这对CPU的影响不大,而且不降低存储器的访问速度,控制上也并不复杂,是一种比较实用的方式。

除此之外,异步式刷新还可采用利用CPU不访问存储器的空闲时间,对存储器进行刷新操作,这种方式完全不出现“死时间”,也不降低存储器的访问速度,但是必须保证在2mS时间内能刷新一遍整个芯片,否则将造成严重后果,因此这种方式控制比较复杂,实现起来比较困难。

六、典型RAM芯片介绍

下面我们来介绍一种典型SRAM存储器芯片HM6116。

HM6116芯片的存储容量为2K*8位,片内有16384(即16K)个存储单元,排列成128*128的矩阵,构成2K个字,字长8位,可构成2KB(B——字节)的内存。

该芯片有11条地址线,分成7条行地址线A4~A0,4条列地址线A0~A3,一个11位地址码选中一个8位存储字,需有8条数据线D0~D7与同一地址的8位存储单元相连,由这8条数据线进行数据的读出与写入。

(1)HM6116引脚图

图4-7所示是2K×8位静态CMOSRAM6116的引脚排列图。

6116的24个引脚中除11条地址线(A0~A10)、8条数据线(D0~D7)、l条电源线Vcc和1条接地线GND外,还有3条控制线——片选信号

、写允许信号

和输出允许信号

HM6116是一种2048×8位的高速静态CMOS随机存取存储器,它的特征是:

1)高速度。

存取时间为100ns/120ns/150ns/200ns(分别以6116-10、6116-12、

6116-15、6116-20为标志);

2)低功耗。

运行时为150mW,空载时为100mW;

3)与TTL兼容;

4)管脚引出与标准的2K*8的芯片(例如2716芯片)兼容;

5)完全静态——无需时钟脉冲与定时选通脉冲。

6)存储容量为2K×8位,该芯片有11条地址线,8条数据线。

(2)芯片工作方式和控制信号之间的关系

下表所列是6116的工作方式与控制信号之间的关系,读出和写入线是分开的,而且写入优先。

表4-1静态RAM6116工作方式与控制信号之间的关系

工作状态

1

×

×

×

高阻态

低功耗维持

0

0

1

稳定

输出

0

×

0

稳定

输入

4.2.2只读存储器ROM

一、ROM的分类

只读存储器简称ROM,它只能读出,不能写入,故称为只读存储器。

工作时,将一个给定的地址码加到ROM的地址码输入端,此时,便可在它的输出端得到一个事先存入的确定数据。

只读存储器的最大优点是具有不易失性,即使供电电源切断,ROM中存储的信息也不会丢失。

因而ROM获得了广泛的应用。

只读存储器存入数据的过程,称为对ROM进行编程。

与RAM不同,ROM一般需由专用装置写入数据。

按照数据写入方式特点不同,ROM可分为以下几种:

(1)固定ROM。

也称掩膜ROM,这种ROM在制造时,厂家利用利用掩膜技术直接把数据写入存储器中,ROM制成后,其存储的数据也就固定不变了,用户对这类芯片无法进行任何修改。

(2)一次性可编程ROM(PROM)。

PROM在出厂时,存储内容全为1(或全为0),用户可根据自己的需要,利用编程器将某些单元改写为0(或1)。

PROM一旦进行了编程,就不能再修改了。

(3)光可擦除可编程ROM(EPROM)。

EPROM是采用浮栅技术生产的可编程存储器,它的存储单元多采用N沟道叠栅MOS管,信息的存储是通过MOS管浮栅上的电荷分布来决定的,编程过程就是一个电荷注入过程。

编程结束后,尽管撤除了电源

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 财会金融考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1