How a computer “remembers”

Photo by Pedro Sandrini on Pexels.com

If you ever hear people speaking about their computer’s memory, they’re likely talking about RAM. While RAM is the most well-known form of memory for computing, do you know there are other types of memory?

In this lesson, we will go over some of the types of memory a computer uses to get the job done so you can leverage technology to help in your everyday life.

Random Access Memory (RAM)/Main Memory

If you read information about computers that are for sale, you’ll see some details about how much memory the computer has. The memory in a computer comes from Random Access Memory, or RAM for short. Whenever you open a program on your computer, the instructions to execute the program, and any data necessary, is stored in the computer’s RAM.

RAM is “random access” because the information stored in RAM can be accessed randomly, rather than in sequential order, like on a CD-ROM.

When reading RAM packaging, you’ll see things like the amount of memory available for each RAM stick, and the read-write speed. Of course, having more RAM available allows you to run more applications at a time, since each program needs to have a chunk of your available memory.

Simple tasks, such as writing a paper in Word, or creating spreadsheets in Excel, don’t require a whole lot of RAM, so you can likely get away with having only the minimum requirements that your Operating System (Windows, for example) needs. However, if you want to run graphically intense video games, or do anything related to video editing or photo editing, you’ll want more RAM, since these programs have far more instructions that need to run.

Read Only Memory (ROM)

As the name of this type of memory suggests, anything stored in ROM memory can be read only. Simply put, once something is written into ROM memory, it CAN’T be changed. If you have a computer with a CD burner included, you’ll see that you can’t write (burn) anything new onto a CD if it already (unless the CD is a CD-RW, meaning it can be re-written).

In older computers, the BIOS (Basic Input/Output System)* was written onto a ROM chip, and the BIOS couldn’t be changed. If you had to update the BIOS or anything else that was installed onto a ROM chip, you would’ve needed to change the ROM chip!

Thankfully, ROM has changed over the years. Modern ROM is now placed on flash memory. This allows developers for hardware to release updates for firmware (special software that allows the computer to work with different computer components such as keyboards) and install them by removing pieces of the old firmware and replacing them with the updated data. This kind of ROM does have a limited number of re-writes available before the chip is no longer useable.

*BIOS is a program that resides in a small chip on your computer’s motherboard. Whenever you power up your computer after it has been powered off, this little program tests each critical hardware (especially the CPU and RAM) to ensure they are working, and are “awake”. It will then start trying to locate your operating system and load it to memory so you can start using your computer.

Registers

When it comes to speed, registers rule the memory kingdom. Registers hold different kinds of data that the CPU will access to run the instructions needed for program execution. These can be either instructions, storage addresses, or actual data, such as individual characters. Anything that is stored in a register will be removed from it very quickly, often in less than a millisecond!

While registers are the fastest memory inside a computer, they come in last when it comes to their sizes. All registers are measured in bits. If your operating system is a 64-bit version (we’ll explain the differences of operating system versions another time), the registers must be able to hold up to 64 bits. Remember, most other storage and memory components are measured in some form of bytes*, so registers are very small.

There are a number of different registers available to the computer. We will

*A byte consists of 8 bits. To have 1 Kilobyte (KB), you need 1,024 bytes. For 1 Megabyte (MB), you need 1,024 KBs. As you go on and on, you will notice there are a LOT of bits in Gigabytes and Terabytes. In fact, if you were to try to calculate how many bits are in 1 Terabyte, the calculator won’t be able to fit the whole number! You can google Terabyte to bit to see the number yourself.

Cache

Modern CPUs can be very fast. While RAM speeds have increased over the years, computers still need some kind of memory that can keep up with the CPU. This is where cache memory comes in. Cache memory can be found on the CPU itself.

In modern CPUs, there is a three-tier level of cache memory, L1-L3. L1 cache is the fastest, but smallest, level of cache. The L1 cache is usually under a half a megabyte in size, but powerful CPUs are now capable of coming close to 1 megabyte. The L1 cache is used to hold both the instructions and data for the operation that is currently running.

L2 cache is the next level of cache memory. While it’s slower the L1, it makes up for the slower speeds by having more space available. The size of L2 varies from as little as 256 KB to as much as 8MB. While L1 works with data and instructions of the current operation, L2 holds onto the data and instructions for what the CPU will access next.

L3 cache is the final level in the cache memory hierarchy. While L3 cache is the slowest of all cache memory, it is the largest in size. The size can range from 4 MB all the way up towards 50 MBs. While L1 and L2 cache reside on each individual core of the CPU, L3 cache is shared between all L1 and L2 cache memory. Basically, L3 acts as another storage location for frequently used data and instructions so bottlenecks don’t happen. L3 cache will hand off data and instructions to L2 cache, which will then move it up to L1 cache.

Conclusion

Like humans, computers need to have memory too. Computer memory also needs to be very fast. Fortunately, computers can rely upon different types of memory to help get the job done. Some are VERY fast but small in size, while others may be a little slower, but make up for it in the amount of space available.

As technology continues to advance, a computer’s memory will likely become faster and larger. It’ll be interesting to see what the future brings.

Sources

“Computer Registers – Javatpoint.” Www.javatpoint.com, http://www.javatpoint.com/computer-registers.

“Indiana University.” What Is ROM?, 2018, kb.iu.edu/d/ahua.

“Register.” Register Definition, 30 Jan. 2014, techterms.com/definition/register.

Rouse, Margaret. “What Is Register (Processor Register, CPU Register)? – Definition from WhatIs.com.” WhatIs.com, Sept. 2016, whatis.techtarget.com/definition/register.

Leave a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: