Dual-ported RAM
Dual port RAM
Dual port RAM is a type of shared memory which is generally used in multiple-processor computer system. Memory cell unit of a dual port RAM can perform two read or two write operation at the same time. In distributed memory system single port RAM are used.But in the case of shared memory system one single RAM is shared with many microprocessors. Thus such RAM will require many ports each corresponding to a particular micro-processor.Thus for a system in which two microprocessors are required to share a single RAM dual port RAM is necessary. Dual ported RAM is used in many CPU's.
Dual port RAM
allows to access two words at the same time, and thus involving more logic in each word. This is used mainly to read words from the memory while another word is still in the process of being written.
The difference between single port RAM and dual port RAM is that single port RAM can access one address at a time, thus reading or writing only one memory cell during each clock cycle. Dual port RAM can simultaneously read and write different memory cells at different addresses.
SPRAM(single port RAM) is made up of 6 transistor basic ram cell, while the dual port ram cell comprises 8 transistor cell for memory.
so the area of SPRAM is much smaller than the area of DPRAM which is an advantage of SPRAM over DPRAM. To gain the advantages of both SPRAM (less area) and DPRAM (high speed) Pseudo dual port ram is introduced, Pseudo dual port ram can read and write the data in the same clock, using rising and falling edges for the respective operations , and uses SPRAM memory cell to store the data.
Dual port memory system - Block Diagram
Dual port memory system consist of dual port ram as its basic block. It is connected to two separate microprocessors or I/O devices through data and address buses.The block of dual port RAM consists two address decoders for the two micro-processors. It also has two separate data buses. These both data buses and address decoders are connected to dual port memory cells. Control logic circuitry controls the data flow between the two microprocessors and the dual port RAM. File:Block diagram of dual port memory system.JPG[1]
Dual port memory cells
Dual port memory cells are the basic building block of dual port RAM.there are two types of RAM cells - static RAM and dynamic RAM. Static RAM is generally used in most of the applications of the dual port RAM. VRAM or video RAM is dual ported RAM.
Static RAM
In static RAM data is stored using latching devices like flip-flops. As this is the type of RAM data will be lost after the power cut-off. Static RAM does not need to be refreshed. This type of RAM is expensive than dynamic RAM but it is generally faster and can also operate at low power. This type is generally used as a cache memory.
Dynamic RAM
In this type of RAM a separate capacitor is used to represent a single bit. The capacitor can be charged & discharged accordingly the bit data 0 & 1 is represented.But due to the capacitor leakage loss data stored in it fades out for this reason it is to be refreshed after certain amount of time depending upon the leakage property of dielectric medium.This type of RAM is cheaper compared to the SRAM.
Operating modes of dual port RAM
The operating modes are Read Operations ,Write Operations which are present in each RAM but there are some are different modes are also present such as Write First or Read-After-Write Mode,Read First or Read-Before-Write Mode and No Change or No Read-on-Write Mode Each port’s write mode is independently configurable.
Read Operations
Read operations are synchronous to the rising edge of the clock. The data in the memory location which is present in given address is stored on the data out line (DOUT) after the active edge of the clock. And it is transferred to the given path.
Write Operations
Data is written into the RAM on the active edge(in case ofedge triggered) of the write clock whenever block(required DUAL PORT RAM cell) enable and write enable are both active. Write addresses,write data,block enable and write enable are synchronized to the appropriate edge of write clock.Each processors write mode is independently configurable.
Write First or Read-After-Write Mode
In Write-First mode, data input is loaded simultaneously in DIN port with a write operation and on the DOUT port, the data input is stored in memory and mirrored on the output.
Read First or Read-Before-Write Mode
In Read-First mode, data previously stored at the write address appears on the DOUT port. Data input is stored in memory and the prior contents of that location is driven on the output, during the same clock cycle.
No Change or No Read-on-Write Mode
In No-Read-on-Write mode, the DOUT port remains unchanged during a write operation,data output is still the last read data and is unaffected by a write operation on the same port.
Default
In this dual port memory or RAM Mode configuration is static. One of these three modes is set individually for each port by an attribute. But in general default mode is write first in it. [2]
DIFFERENCE BETWEEN ASYNCHRONOUS AND SYNCHRONOUS DUAL PORT RAMS
Asynchronous dual-port :
-read and write operations are triggered by a rising or falling signal and can occur at any point of time
-all read and write operations are synchronized with clock signal
-different features like memory arbitration and burst counters are offered by both asynchronous and synchronous dual-ports
-asynchronous generally slower than synchronous
-synchronous designing includes cache and pre-fetching technique
-asynchronous :simple interface and designing but low bandwidth conditions
-synchronous :complex designing but high bandwidth