Sample Final


1) Binary Operations
   Do the following binary operations.  Only the answer is marked, not the work.
 a) addition       : 000001001 + 001000101
 b) subtraction    : 101010010 - 001011001
 c) multiplication : 3FA * B1


2) Boolean/Logical Operations
   What are the results of the following logic given A=1 and B=0.
 a) A and B
 b) (A xor B) or B
 c) A xor (B and A)
 d) B nand A
 e) (B nor A) and (A or not A)

3)
   Draw a multiplexer with:
   - 4 input lines
   - 2 selector lines
   - 1 output line
   Use only NAND gates and NO mixed logic. 
   Use a maximum of 11 nand gates = full marks.
-----

Use only this gate!
4) Excess-3 allows us to do conversions between binary and decimal very easilly since each digit is encoded. This definatly saves us time in trying to convert between the two, but we have a trade off with other things in the time saving. Name 3. 5) Aussuming normal operation of J-K, D and T flip flops, fill in the following Next-State tables. J K Q(t+1) D Q(t+1) T Q(t+1) ------------ --------- --------- 0 0 [ ] 0 [ ] 0 [ ] 0 1 [ ] 1 [ ] 1 [ ] 1 0 [ ] 1 1 [ ] 6) Describe in words (don't draw a diagram) of how you would connect four 8bit registers into one 32 bit register. 7) Assume there is a memory component with 8 data lines, 10 address lines and a write/enable along with a clock signal. a) How large is the memory in kilobytes? b) How large is one word of memory in bits? c) Memory location 0x3ff is chosen and the value 0x3A is placed in it. Then the memory location is incremented by one. What is the current address on the address lines. d) What is the largest value that can be stored in one word of memory? 8) Adders: a) Draw a 4-bit full-adder, use any gates you wish. b) Assume your adder is now an intergraded circuit (instance gate, ect). Connect four of your adders to make a 16 bit adder. c) Edit your original design to make an adder/subtractor now. Do the bare minimal number of changes needed. 9) Simplify this MUX. _____ 0-| | 1-| | 0-| | 1-| |_____ 1-| | 0-| | 1-| | 0-|_____| ||| CBA