1.2 Memory
1.2.1 Text
A memory cell is a circuit, or in some cases just a single device, that can store a bit of information. A systematic arrangement of memory cells constitutes a memory. The memory must also include peripheral circuits to address and write data into the cells as well as detect data that are stored in the cells.
Two basic types of semiconductor memory are considered. The first is the Random Access Memory (RAM), a read-write memory, in which each individual cell can be addressed at any particular time. The access time to each cell is virtually the same. Implicit in the definition of the RAM is that both the read and the write operations are permissible in each cell with also approximately the same access time.
A second class of semiconductor memory is the Read-Only Memory (ROM). The set of data in this type of memory is generally considered to be fixed, although in some designs the data can be altered. However, the time required to write new data is considerably longer than the read access time of the memory cell. A ROM may be used, for example, to store the instructions of a system operating program.
A volatile memory is one that loses its data when power is removed from the circuit, while nonvolatile memory retains its data even when power is removed. In general, a Random Access Memory is a volatile memory, while Read-Only Memories are nonvolatile.
Two type of RAM are the static RAM (SRAM) and dynamic RAM (DRAM). A static RAM consists of a basic bi-stable flip-flop circuit that needs only a dc current or voltage applied to retain its memory. Two stable states exist, defined as logic 1 and logic 0. A dynamic RAM is an MOS memory that stores one bit of information as charge on a capacitor. Since the charge on the capacitor decays with a finite time constant (milliseconds), a periodic refresh is needed to restore the charge so that the dynamic RAM does not lose its memory.
The advantage of the SRAM is that this circuit does not need the additional complexity of a refresh cycle and refresh circuitry, but the disadvantage is that this circuit is fairly large. In general, a SRAM requires six transistors. The advantage of a DRAM is that it consists only one transistor and one capacitor, but the disadvantage is the required refresh circuitry and refresh cycles.
There are two general types of ROM. The first is programmed either by the manufacturer (mask programmable) or by the user (programmable, or PROM). Once the ROM has been programmed by either method, the data in the memory are fixed and cannot be altered. The second type of ROM may be referred to as an alterable ROM in that the data in the ROM may be reprogrammed if desired. This type of ROM may be called an EPROM (erasable programmable ROM), EEPROM (electrically erasable PROM), or flash memory. As mentioned, the data in these memories can be reprogrammed although the time involved is much longer than the read access time. In some cases, the memory chip may actually have to be removed from the circuit during the reprogramming process.
The basic memory architecture has the configuration shown in Fig. 1-2. The terminal connections may include inputs, outputs, addresses, and read and write controls. The main potion of the memory involves the data storage. A RAM memory will have all of the terminal connections mentioned, whereas a ROM memory will not have the inputs and the write controls.
Fig. 1-2 Basic memory architecture
Computer memory is measured in kilobytes or megabytes of information. A byte is the amount of storage needed to hold one character, such as a letter or a numeric digit. One kilobyte (KB) equals 1024 bytes, and one megabyte (MB) is about 1 million bytes. Software requires the correct amount of RAM to work properly. If you want to add new software to your computer, you can usually find the exact memory requirements on the software packaging.
Memories consist of a number of cells, each of which can store a piece of information. Each cell has a number, called its address, by which programs can refer to it. If a memory has n cells, they will have addresses from 0 to n-1. All cells in a memory contain the same number of bits. If a cell consists of k bits, it can hold any one of 2 k different bit combinations. Note that adjacent cells have consecutive addresses.
Computers that use the binary number system(including octal and hexadecimal notation for binary numbers)also express memory addresses as binary numbers. If an address has m bits, the maximum number of cells directly addressable is 2 m. The number of bits in the address is related to the maximum number of directly addressable cells in the memory and is independent of the number of bits per cell. A memory with 2 12 cells of 8 bits each and a memory with 2 12 cells of 64 bits each would each need 12-bit addresses.
The significance of the cell is that it is the smallest addressable unit. In recent years, most computer manufactures have standardized on an 8-bit cell, which is called a byte. Bytes are grouped into words. A computer with a 16-bit word has 2 bytes/word, whereas a computer with a 32-bit word has 4 bytes/word. The significance of a word is that most instructions operate on entire words, for example, adding two words together. Thus, a 32-bit machine will have 32-bit registers and instructions for moving, adding, subtracting, and otherwise manipulating 32-bit words.
In the 1970s, there was a further development which revolutionized the computer field. This was the ability to etch thousands of integrated circuits onto a tiny piece (chip) of silicon, which is a non-metallic element with semiconductor characteristics. Chips have thousands of identical circuits, each one capable of storing one bit. Because of the very small size of the chip, and consequently of the circuits etched on it, electrical signals do not have to travel far; hence, they are transmitted faster. Moreover, the size of the components containing the circuitry can be considerably reduced, a step which has led to the introduction of both minis and micros. As a result, computers have become smaller, faster, and cheaper. There is one problem with semiconductor memory, however, when power is removed, information in the memory is lost, unlike core memory, which is capable of retaining information during a power failure.
The 80x86 processors, operating in real mode, have physical address-ability to 1 megabyte of memory. EMS was developed to allow real mode processing to have access to additional memory. It uses a technique called paging, or bank switching. The requirements for expanded memory include additional hardware and a software device driver. The bank switching registers act as gateways between the physical window within the 1 megabyte space and the logical memory that resides on the expanded memory board. The device driver, called the Expanded Memory Manager (EMM), controls the registers so that a program’s memory accesses can be redirected throughout the entire of available expanded memory.
To access expanded memory, a program needs to communicate with the EMM. Communication with the EMM is similar to making calls to DOS. The program sets up the proper CPU registers and makes a software interrupt request. More than 30 major functions are defined, and applications and operating systems are given control over expanded memory. When a program allocates expanded memory pages, the EMM returns a handle to the requesting program. This handle is then used in future calls the EMM to identify which block of logical pages is being manipulated.
Key Words
adjacent 邻近的,接近的
allocate 分配,分派
capacitor 电容
configuration 结构
consecutive 连续的,连贯的
etch 蚀刻
hexadecimal 十六进制的
implicit 暗示的,绝对的
individual 个别的,独特的
kilobyte 千字节
megabyte 兆字节
millisecond 毫秒
non-metallic 非金属的
nonvolatile 非易失性的
octal 八进制的
organization 组织
programmable 可编程的
semiconductor 半导体
significance 重要性,意义
stable 稳定的
standardize 标准化
virtually 事实上
1.2.2 Exercises
1.Translate the following phrases into English
(1)易失性存储器
(2)外围电路
(3)实模式
(4)寻址能力
(5)闪存
(6)刷新电路
(7)只读存储器
(8)随机存取存储器
2.Translate the following phrases into Chinese
(1)periodic refresh
(2)software interrupt
(3)binary number
(4)electrically erasable PROM
(5)expanded memory
(6)erasable programmable ROM
(7)refresh cycle
(8)logical page
3.Identify the following to be True or False according to the text
(1)Both static and dynamic RAM cells are read-write memory.
(2)Nonvolatile memory loses its data when power is removed from the circuit.
(3)ROM does not have the inputs and the write controls.
(4)The memory addresses are expressed as binary numbers.
(5)EMS allows the real mode processing to access 1MB memory.
(6)RAM can be used to store the instructions of a system program.
(7)A byte is the amount of storage needed to hold one character.
(8)Communication with the EMM is similar to making calls to DOS.
4.Reading Comprehension
(1)One megabyte equals approximately ____________________.
a.1000 000 bytes
b.10 24 bytes
c.65535 bytes
d.10000 bytes
(2)If a cell consist of n bits, it can hold any one of _____________________________.
a.2n different bit combinations
b.2 n-1 different bit combinations
c.2 n different bit combinations
d.n different bit combinations
(3)When power is removed, information in the semiconductor memory is ___________.
a.reliable
b.lost
c.manipulated
d.remain
(4)A periodic refresh is needed to restore the information for the __________________.
a.SRAM
b.EPROM
c.DRAM
d.EEPROM
1.2.3 Reading material
Cache and Magnetic Disks
A variety of different types of cache (disk cache, memory cache, processor cache) can improve overall system performance. Although most high-level systems include cache in system design, a cache can be optionally implemented on almost any system—from a low-level 8086 system upon to the highest performance i486-based system.
In the case of hard disk cache, there are two general approaches to cache implementation. The two approaches primarily differ in terms of where the memory in the cache resides. The first and most commonly implemented form of disk cache uses extended memory. In a microcomputer, the extended memory of 1 megabyte or larger can be assigned as disk cache memory. The higher the percentage of “hits” (calls to the disk that can be read from cache, rather than from the disk), the greater the overall performance of the system. For word processing or manipulation of small files, a huge cache may be overkill. For manipulation of large database files of complex graphics, a cache using extended memory can provide a significant performance increase. The second form of disk cache is performed by cache controllers. These controllers not only control the read/write operations of the attached hard disk drives, they also provide a cache that performs many of the functions of the system-based extended memory caches. However, by placing the cache on the controller, performance of a cache can be enhanced over that of most extended memory caches.
High-speed memory is used on cache controllers. When the system makes a call to the hard disk, the controller in cache determines whether or not the data that’s being called for is in the cache or on the disk. When using an extended memory cache, the cache intercepts calls for reads from the hard disk and checks to see if the data called for by the system resides in the cache. If the data is not in the cache, a read instruction is sent to the disk controller. This process takes time. Not only is the extended memory used for such caches usually slower than that used in cache controllers,but also an extra step is involved before the disk controller can be instructed to go to the disk to retrieve the data it seeks. However, by allowing the processor to make calls to the cache controller, which then determines whether or not the disk actually must be read, performance can be significantly enhanced. With intelligent cache controllers, significant performance improvements have been claimed by a number of cache controller manufacturers. Cache controllers have been used on mainframe computer systems for many years; their migration to the micro could be seen as a logical next step.
There are two major types of magnetic disks: floppy disks and hard disks. Both types of disks rely on a rotating platter coated with a magnetic surface and use a moveable read/write head to access the disk. Disk storage is nonvolatile, meaning that the data remains even when power is removed. Because the platters in a hard disk are metal (or, recently, glass), they have several significant advantages over floppy disks.
Every user has used hard disks and liked them very much since they have gigantic storage capacity and work fast, especially since operating systems grow larger and larger. One example is Windows98, with its full installation needing 300MB memory, long application programs and multimedia development need more and more storage space, etc. All of these spur the development of hard disks. The hard disk storage capacity almost is doubled every year and the hard disk works faster and faster. The rotative velocity of a main shaft of a motor in a hard disk is working speed of the hard disk. The velocities is now commonly from 5400rpm to 7200rpm. The high turning velocity can reduce average seek times and waiting times. Most of average seek times are less 10ms. The hard disk capacity develops very fast, it is almost doubled every year. The larger the capacity, the lower the cost of storage per bit. You should select a suitable one according to your economic ability and experience.
To access data, the operating system must direct the disk through a three-stage process. The first step is to position the arm over the proper track. This operation is called a seek, and the time to move the arm to the desired track is called seek time. Once the head has reached the correct track, we must wait for the desired sector to rotate under the read/write head. This time is called the rotation latency or rotational delay. The average latency to the desired information is halfway around the disk. Smaller diameter disks are attractive because they can spin at higher rates without excessive power consumption, thereby reducing rotational latency. The last component of a disk access, transfer time, is the time to transfer a block of bits, typically a sector. This is a function of the transfer size, the rotation speed, and the recording density of a track.