Jump to content

Write combining

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Kvng (talk | contribs) at 16:19, 17 April 2014 (Kvng moved page Write-combining to Write combining over redirect: unnecessary dash). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Write combining (WC[1]) is a computer bus technique for allowing data to be combined and temporarily stored in a buffer — the write combine buffer (WCB) — to be released together later in burst mode instead of writing (immediately) as single bits or small chunks.

Write combining cannot be used for general memory access (data or code regions) due to the weak ordering. Write-combining does not guarantee that the combination of writes and reads is done in the expected order. For example, a Write/Read/Write combination to a specific address would lead to the write combining order of Read/Write/Write which can lead to obtaining wrong values with the first read (which potentially relies on the write before).

In order to avoid the problem of read/write order described above, the write buffer can be treated as a fully associative cache and added into the memory hierarchy of the device in which it is implemented.[2] Adding complexity slows down the memory hierarchy so this technique is often only used for memory which does not need strong ordering (always correct) like the frame buffers of video cards.

See also

References

  1. ^ Intel (November 1998). "Write Combining Memory Implementation Guidelines" (PDF). Intel. Retrieved 2010-11-02.
  2. ^ BearWindows (2008-09-01). "Video Hardware Acceleration in DOS Environment". BearWindows Vault. Retrieved 2010-11-02.