Intro to Architecture

Spring 2004, Test 2


  1. BCD (5 points)
    1. Describe how signed integers are encoded in BCD
    2. Show how to encode 542 and -253 (- is encoded as 1101)
    3. Compare the efficiency of BCD and Twos compliment when encoding numbers between -1023 and 1023
  2. Character Encoding (5 points)
    1. Describe unicode
    2. How many characters can be encoded in unicode
    3. Describe an advantage and a disadvantage of unicode when compared to ascii
  3. Adders (10 pts)
    1. Give the boolean expression for a full adder.
    2. Draw the circuit for a full adder.
    3. Draw a circuit for a ripple carry adder. You may use a block diagram to represent a full adder for this part only.
  4. Addition (5 pts)
    1. 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.
  5. Flip Flops (5 pts)
    1. Describe the input/output/control lines for a D flip flop
    2. Describe the operation of a D flip flop
    3. Draw a D flip flop.
    4. 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)
  6. Registers (10 pts)
    1. Describe the input and output to a simple n-bit register
    2. Describe the operation of a simple n-bit register.
    3. 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.
  7. Memory (10 pts)
    1. Describe the data and control lines for a standard memory.
    2. Describe the operation of a standard memory.
      1. Describe how a write is performed
      2. Describe how a read is performed
    3. Describe the relationship between the memory and the size of the data lines.