Skip to main content

About Write Only Memory

In information technology, a write-only memory (WOM) is a memory location or register that can be written to but not read. In addition to its literal meaning, the term may be applied to a situation when the data written by one circuit can be read only by other circuitry. The most common occurrence of the latter situation is when a processor writes data to a write-only register of hardware the processor is controlling. The hardware can read the instruction but the processor cannot. This can lead to problems in producing device drivers for the hardware.
Write-only memories also find applications in security and cryptography as a means of preventing data being intercepted as it is being decrypted.

Hardware uses

In 1972, WOM, an antithesis of read-only memory (ROM), was introduced as an inside practical joke perpetrated by Signetics.[1] However it was soon recognized that this concept actually describes certain functionalities in microprocessor systems.[2]
The most frequent occurrences of write-only memories are where the memory locations are registers or an integrated circuit being used to control, or pass information to, hardware outside the processor. A central processing unit CPU can write to these locations, and thus control the hardware, but cannot read back the information and discover the current state of the hardware. The memory is write-only relative only to the CPU's point of view. Such arrangements are common on small embedded microcontroller systems to save costs and can cause difficulties for authors of device driver software.[3] When the current hardware state is unknown to the CPU it can only put it into a known state by sending a new command, which may result in the state changing.[4] To alleviate this difficulty, the content of the WOM may be mirrored by the CPU in the regular memory.[5] However, this strategy is only reliable if the register is read-only from the perspective of the hardware.
An example of this kind of use concerned access to memory on early PCs. The original PCs used 8086 or 8088 processors which had the ability to address only 1 MB of memory. A large part of this was occupied by the BIOS resulting in only 640 kB of addressable RAM being available. The memory requirement of many applications soon surpassed this figure. One method of overcoming the limitation was by the use of bank-switched RAM. A number of banks of RAM are provided, but are not permanently assigned to a memory location. In a particular implementation, a special board is added to a computer, which controls the allocation of banks to memory space. The control board has its own memory chip. A computer can write data into this chip, but only the control board itself can read the chip, hence it is dubbed "write only" memory.[6]
Another example concerns some functions carried out by graphics processing units (GPUs). For instance, a GPU might be carrying out shader processing on the contents of graphics memory. It can be faster and more efficient for the GPU to take input for the shader process from read-only locations and write the shader output to different write-only locations without having to copy data between the read and write buffers after each iteration.[7]
An example that is still of contemporary relevance can be found in the 16550 UART, whose derivatives are still in widespread use. To add a data FIFO without breaking compatibility with the 8250 UART's 8 configuration registers, the write-only "FIFO control register" was assigned the same port address as the read-only "interrupt identification register". Writes to that address program the FIFO control register, but there is no way to read it back.
The term is also used to describe the computer view of certain display devices such as the e-ink screens used in e-readers.[8]
 

Security and encryption

Locking the frame buffer of a GPU to effectively turn it into a write-only memory can be useful in protecting encrypted data. When encrypted data arrives at its destination, it needs to be decrypted before it can be displayed to the user. The existence of unencrypted material in memory where it can be accessed by the CPU or peripheral devices is a potential security weakness. This weakness may be alleviated by carrying out the decryption within the GPU and writing the unencrypted data directly to display memory. Nothing else can read the data while the frame buffer is locked, and when it is unlocked it will be displaying something else.[9] All modern smart cards that feature a chip can also be said to rely on WOM technology, because they are programmed at a factory with certain encryption keys that can not directly be read by a card reader. Instead the keys are indirectly used by algorithms that validate passwords or decrypt certain content.





















Comment Here

Comments

Popular posts from this blog

The Android Best OS Android OREO 8.0 Top 10 AMAZING Features

Welcome Back Guy, I'm here with a new video, in this video I'm going to show you Top 10 Features of Android 8.0 Oreo Don't forget to Subscribe My Channel Which is Guy Perfect & Press the Bell Icon for More Exciting Video Coming Soon!! Like this video And Don't forget to share it with others. Upload by Guy Perfect.The Link is Down below. If you like this post 1+ this

Creating A Game With Notepad

You probably won't know what all of this means right now, but I'll explain it soon. Introduction Did you know that the simple Notepad program on your computer is actually a very powerful programming tool? That's right, and it is also very easy to learn. In this article I'm going to show you how to make a simple game using only the Notepad program and a programming language called "Batch." Batch is a language that runs primarily out of your Windows command prompt. Now, it's not even close to being the most powerful programming language out there, but it still let's you do enough to be extremely useful to know (at least for anyone in the computer field). Not only is it useful, but it can also be used to create amazing text-based games ! What is a text-based game you ask? It's a game (a very simple one) in which the user interacts through the use of text and choice-making.You will learn h...

What is HTTP (Hyper Text Transfer Protocol)

Hypertext is text that links to other information. By clicking on a link in a hypertext document, a user can quickly jump to different content. Though hypertext is usually associated with Web pages, the technology has been around since the 1960s. Software programs that include dictionaries and encyclopedias have long used hypertext in their definitions so that readers can quickly find out more about specific words or topics. Apple Computer's HyperCard program also used hypertext, which allowed users to create multi-linked databases. Today, the Web is where hypertext reigns, where nearly every page includes links to other pages and both text and images can be used as links to more content. If you like this post 1+ this