Intro to Architecture
Spring 2004, Test 2
- Please answer all questions carefully and thoughtfully.
- Use as much paper as you wish, but make sure that you label your
answers and that you put your name on the top of each page.
- BCD (5 points)
- Describe how signed integers are encoded in BCD
- Show how to encode 542 and -253 (- is encoded as 1101)
- Compare the efficiency of BCD and Twos compliment when
encoding numbers between -1023 and 1023
- Character Encoding (5 points)
- Describe unicode
- How many characters can be encoded in unicode
- Describe an advantage and a disadvantage of unicode when compared to ascii
- Adders (10 pts)
- Give the boolean expression for a full adder.
- Draw the circuit for a full adder.
- Draw a circuit for a ripple carry adder. You may use
a block diagram to represent a full adder for this part only.
- Addition (5 pts)
- If signed integers are represented using twos compliment format,
draw a circuit that can perform both addition and subtraction.
Make sure you label all inputs, outputs, control lines and
non-gate components. You may use a block diagram to represent
a n bit adder.
Make sure that you describe the values to be placed on the
control lines.
- Flip Flops (5 pts)
- Describe the input/output/control lines for a D flip flop
- Describe the operation of a D flip flop
- Draw a D flip flop.
- Give a non-trivial timing diagram that demonstrates the behavior
of a D flip flop. (You should demonstrate when the input of the
flip flop effects the state of the flip flop)
- Registers (10 pts)
- Describe the input and output to a simple n-bit register
- Describe the operation of a simple n-bit register.
- Using D flip flops and basic gates, construct a 4 bit load/shift-right register. Label all data and control lines. Describe values expected on
these lines to make the register operate.
- Memory (10 pts)
- Describe the data and control lines for a standard memory.
- Describe the operation of a standard memory.
- Describe how a write is performed
- Describe how a read is performed
- Describe the relationship between the memory and the size
of the data lines.