This preview shows pages 1–2. Sign up to view the full content.
Copyright: 2005 Bryan Mealy
Moving Towards a Basic Computer
The previous set of note discussed some of the basic concepts of memory. Included in this discussion were
some of the common terms and parameters associated with memory as well as some of the common
memory configurations as they appear in computer systems. As shown in the basic computer model of
Figure 1, the memory represents one of the basic building blocks of a computer. This set of notes is
centered about the discussion of part of one of the other basic computer building blocks: the ALU
(arithmetic logic unit). The ALU forms the bulk of the datapath block and is therefore considered to be one
of the basic building blocks of the CPU (central processing unit) as is shown in Figure 1.
This set of notes provides a description of two approaches to designing an ALU. This is by no means an
exhaustive look at ALU design but it will suffice for our continued discussion of a basic computer. The
topics discussed in this set of notes include many considerations of digital design which makes this
discussion somewhat of a functional review of CPE 129 topics. In particular, the notions of modular and
hierarchical design are used extensively in this discussion. As the name implies, the ALU includes both an
arithmetic unit and a logic unit although most of the following discussion deals with the development of the
arithmetic unit. The design of the logic unit is somewhat simple due to your highly advanced knowledge of
VHDL. And after that shifter unit design a few lectures back, we’re ready for anything.
Figure 1: General model of a computer.
The Arithmetic Unit
Probably the first useful circuit you developed in your beginning digital logic class was the
half adder
(HA)
. Not only was this basic circuit was simple enough to be understood by beginning digital logic
students, it was also somewhat useful. It hopefully provided students with a view of the vast usefulness and
endless possibilities of digital design. The humble HA was used to add two onebit numbers. The results
included both a sum and carry output. Adding two bits would necessarily generate a carry in the case where
both input bits were a one. The block diagram for the HA and the associated truth table defining the
operation of the HA is shown in Figure 2(a) and Figure 2(b), respectively. Note that when dealing with
adder circuits, the two terms being added (the augend and the addend) are most often represented by the
terms A and B. This convention is used throughout this set of notes. You could easily generate the required
hardware for the HA using the Sum and Co data shown in Figure 2(b) but we’ll skip over that step. You
seen it all before anyhow; no need to bore you with it once again.
1
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
This is the end of the preview. Sign up
to
access the rest of the document.
 Spring '09
 smith

Click to edit the document details