Datapath
A datapath is a collection of functional units such as arithmetic logic units or multipliers that perform data processing operations, registers, and buses.[1] Along with the control unit it composes the central processing unit (CPU).[1] A larger datapath can be made by joining more than one datapaths using multiplexers.
A data path is the ALU, the set of registers, and the CPU's internal bus(es) that allow data to flow between them.[2]
![](http://upload.wikimedia.org/wikipedia/commons/thumb/2/21/Single_bus_organization.jpg/440px-Single_bus_organization.jpg)
The simplest design for a CPU uses one common internal bus. Efficient addition requires a slightly more complicated three-internal-bus structure.[3] Many relatively simple CPUs have a 2-read, 1-write register file connected to the 2 inputs and 1 output of the ALU.
During the late 1990s, there was growing research in the area of reconfigurable datapaths—datapaths that may be re-purposed at run-time using programmable fabric—as such designs may allow for more efficient processing as well as substantial power savings.[4]
See also
References
- ^ a b Null, Linda; Lobur, Julia (2006). The Essentials of Computer Organization and Architecture. Jones & Bartlett Learning. p. 2016. ISBN 978-0-7637-3769-6.
All computers have a CPU that can be divided into two pieces. The first is the datapath, which is a network of storage units (registers) and arithmetic and logic units... connected by buses... where the timing is controlled by clocks.
- ^ Edward Bosworth. "Overview of Computer Architecture".
- ^ Edward Bosworth. "CPU Bus Structure".
- ^ J. R. Hauser and J. Wawrzynek, Garp: a MIPS processor with a reconfigurable coprocessor, FCCM’97, 1997, pp. 12–21.[dead link]