Method for in-service RAM testing

Data processing: measuring – calibrating – or testing – Testing system – Of circuit

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C714S718000

Reexamination Certificate

active

06671645

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates generally to testing of random access memory (RAM), and more particularly to RAM testing while in operation.
BACKGROUND OF THE INVENTION
Modern computer systems come equipped with a central processing unit (CPU) for performing operations on data supplied from various sources including input/output ports, volatile memory units, non-volatile memory units and other. In performing its work the CPU directly or indirectly reads and writes data to the various memory units. To expedite data processing the CPU takes advantage of a random access memory (RAM) because reading data from and writing data to a RAM is the fastest. Thus, in a typical computer system the CPU may read some of the data required for processing, e.g., an application program, from a read-only memory (ROM), but in executing the application it will store the required data in a RAM and communicate with it rather then with the ROM.
FIG. 1
illustrates a typical volatile RAM
10
with a number of physical memory pages P
1
through P
n
. RAM
10
is usually located on a memory card or another medium affording rapid data access rates. If a ROM is available, the application program is usually resident in the ROM. If a disk is the non-volatile medium, then the pages of the application code are loaded into RAM
10
from the disk as needed. In
FIG. 1
an application program
12
is resident on a ROM
14
, and the first four pages of code of application program
12
are loaded into pages P
1
through P
4
of RAM
10
. The remainder of application program
12
does not need to be accessed for execution at this time and is thus not loaded from ROM
14
. Three non-consecutive pages of a test data file
16
are uploaded into pages P
i
through P
k
from a disk memory unit
18
. One page of a second application program
20
is loaded into page P
1
from another non-volatile permanent storage unit
22
. Still additional data can be loaded into remaining pages of RAM
10
. A CPU can now obtain data directly from RAM
10
to run, for example, application programs
12
,
20
on test data
16
.
FIG. 2
shows a portion of a computer system
24
in which a CPU
26
utilizes the data stored in a RAM
28
and extends the size of RAM
28
with the aid of a virtual memory
30
. Virtual memory
30
is resident on a medium offering slower data access rates than RAM
28
. For example, virtual memory
30
corresponds to storage memory on a hard disk drive
40
. System
24
has a memory management unit (MMU)
32
, which is in charge of performing a virtual to physical mapping to keep track of which pages of virtual memory
30
are mapped to which pages of physical memory or RAM
28
. MMU
32
is connected to CPU
26
. CPU
26
also has a direct data bus
36
connecting it to RAM
28
.
In system
24
applications and data are placed in virtual memory
30
. MMU
32
maintains a table
38
to keep track of which virtual memory page V
j
was assigned to which physical memory page P
i
of RAM
28
. As RAM
28
becomes full, certain pages which are not being used can be placed back in long term memory, e.g., on hard disk drive
40
as indicated in dashed lines or in some other long term storage medium. It should be noted that typically virtual memory
30
is considerably larger than RAM
28
. For more specifics about MMUs and general memory control architecture the reader is referred to U.S. Pat. No. 4,899,275 to Sachs et al. and references cited therein.
Though infrequently, RAM bits can fail and hence it is desirable to test the memory pages of RAM. Typically, computer systems test their RAM at start-up by applying various types of tests before the computer system commences normal operation and the RAM is not otherwise in use. The test is performed because RAM, as apparent from the above discussion and for other reasons, is a critical component of the computer. In most systems a program executed from the non-volatile storage, e.g., the ROM, performs these tests. For information about suitable RAM tests the reader is referred to U.S. Pat. No. 5,923,836 to Barch et al.
Certain computer systems, however, are intended to operate without interruption, i.e., once started up they are not turned off and re-started. For example, embedded control computers of the type found in communication networks are never turned off and have to operate for long periods of time, e.g., several years. Therefore, it is not feasible to test such computer systems only at start-up with a program executed from a ROM. Instead, computer systems of this type require in-use testing of their RAM while there is live data in the RAM. At present no suitable techniques for performing such in-service RAM testing exist.
OBJECTS AND ADVANTAGES
It is therefore a primary object of the present invention to provide a method for in-service testing of RAM. Specifically, the method of the invention is intended for use in computer systems designed to operate without interruption.
It is another object of the invention is to provide a simple in-service RAM testing method which can be easily implemented on any computer system requiring such testing, such as, for example, a computer system used in a communication network, such as an optical transport system.
These and other objects and advantages of the invention will become apparent upon further reading of the specification.
SUMMARY
The objects and advantages are achieved by a method for in-service testing of a random access memory (RAM) of a computer system having a virtual memory. The method calls for identifying a number n of physical memory units p
i
, i=1 . . . n, in the RAM and a number n−1 of virtual memory units v
j
, j=1 . . . n−1, in the virtual memory. A one-to-one mapping is performed to map the physical memory units p
i
to virtual memory units v
j
such that a physical memory unit p
x
is left unmapped. The data is then tested in the unmapped physical memory unit p
x
. The testing methods used to verify the data can involve destructive data tests or non-destructive data tests. After the data in physical memory unit p
x
is tested, data from another physical memory unit p
y
is copied to physical memory unit p
x
and a one-to-one re-mapping of physical memory units p
i
to virtual memory units v
j
is performed such that physical memory unit p
y
is left unmapped. The data in physical memory unit p
y
is then tested. Clearly, the steps of copying, one-to-one re-mapping and testing can and are preferably repeated until all physical memory units p
i
are tested.
The method of the invention can be applied in a sequential manner. In other words, the one-to-one mapping can be sequential where physical memory unit p
x
is left out of the sequence and physical memory unit p
y
selected for testing after physical memory unit p
x
is tested is adjacent physical memory unit p
x
such that p
y
=p
x±1
.
It is important to write-protect physical memory unit p
y
after data from it is copied to physical memory unit p
x
to thus prevent unwanted over-writing. Should a write request to write a new data to physical memory unit p
y
be received, then the writing should be enabled in order not to interfere with the regular in-service operation of the computer system and the new data should be written to physical memory unit p
y
. However, after the new data is written it needs to also be placed in physical memory unit p
x
. This can be done by either re-copying the new data from physical memory unit p
y
to physical memory unit p
x
or by writing the new data to physical memory unit p
x
.
Preferably, the testing method of the invention is applied at the level of memory pages. In other words, the physical and virtual memory units are entire memory pages. Furthermore, when any defective memory units or pages are found a remedy, e.g., an error correction algorithm, can be applied to that page. Alternatively, the defective memory unit or page can be flagged and taken out of service.
Advantageously, a memory management unit (MMU) is used for performing the one-to-one mappi

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method for in-service RAM testing does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method for in-service RAM testing, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for in-service RAM testing will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3105444

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.