CSCI 3170 Computer Organization Homework

Homework must be typed and include your name (typed).
It must be turned in at the beginning of class. For multiple pages, use a staple or lose points.

Due Date Problem
HW #1 Wed, Jan 14
For full credit, show your work.

1. Convert the following decimal integers to base-2.
 a) 23
 b) 36
 c) 49

2. Convert the following base-16 numbers to binary.
 a) ACE
 b) CAB
 c) C0DE
 d)  0AF

HW #2 Wed, Jan 28 Use Boolean algebra to simplify the following expressions. Show your work for credit.
  1. XY’Z + X’Y’Z’ + XY’Z’ + X’YZ’
  2. XYZ’ + XY’Z + XY’Z’ + XYZ’
HW #3Mon, Feb 2
Do the beginner's tutorial for the Logisim program. Logisim is an free educational tool for designing and simulating digital logic circuits. To do the tutorial, click on Help ... Tutorial.

Logisim should be installed in N344 and N340 (Windows lab) in Allgood Hall. You can also download and install it from here.

Turn in the circuit.
HW #4 Wed, Feb 4
  1. Make a Kmap and determine the simplified function for:
    Out = A'BCD + AB'C'D' + A'BC'D +A'B'CD' +ABC'D with a don't care for ABCD.
    Use Logisim to create the circuit. Turn in your Kmap and circuit.

  2. Make a Kmap and determine the simplified function for:
    Out = AB'D' + BC'D' + A'B'C'D' + ABD'
    Use Logisim to create the circuit. Turn in your Kmap and circuit.
     
HW #5 Mon, Feb 9
Use Quine-McCluskey to simplify, to receive credit, you must show your work.
             A’B’D’E’ + A’B’C’DE’ + AB’C’D’E’ + A’B’CDE’ + AB’CD’E’ + AB’CD + A’B’CDE
HW #6 Mon, Feb 16
Create a circuit that displays the number of days given the month (ignore leap years). For input, use the number of the month (e.g. Jan = 1, Feb = 2, etc.).
Use 3 outputs: Out28, Out30, and Out31.

Show all of your work and make sure your circuit is as simple as possible. Build your own circuit using Logisim (e.g. don’t use Logisim to do all of the work).
HW #7 Mon, Feb 23
  1. Implement a 1-bit full subtractor (A – B – Borrow In) with two 4 to 1 MUXs
       Inputs: A, B, Borrowin
       Outputs: Result, Borrowout 1.
    Show the truth table for Result and Borrowout 2. Implement it using Logisim (you may need to use power, ground, and a splitter)

  2. The good news: Your boss wants you to implement a circuit (finally, you get to use your Comp Org knowledge!)
    The bad news: His brother-in-law sells 4 to 16 decoders and 3-input OR gates.

    Use these to implement the following: V’W’X’Y’Z’ + VWXYZ + V’W’X’Y’Z + VWXYZ’ + V’WX’Y’Z’ + V’WX’Y’Z

    Show your work for simplifying the function. Once simplified, create the circuit in Logisim. The inputs to the decoder are on the bottom. The left input is an enable. The right input are the select or control lines: you’ll need to use an input or add pin with the “data bits” set to 4 (select the input and change its attributes in the lower left window).
Wed, Feb 25
Exam #1
HW #8 Mon, Mar 16
Fill out the table for the given circuit:
A B Clk Out
0 0
0 1
0 0
0 0
1 1
0 0

      Circuit with 2 D ff

HW #9 Mon, Mar 23
Create the next-state table and the state diagram for the following circuit:

       

HW #10 Mon, Mar 30 Design a circuit for the state diagram below. List the input equations for each flip-flop used.
 


Thu, Apr 1
Exam #2
HW #11 Mon, Apr 20
Uber Quiz-Meister Alex Trebek has picked you; YES you, to build a home version of the Jeopardy quiz show.
This version has 2 players plus Alex can reset the circuit.

The Problem: There are two buttons. The player that pushes their button first has their light set on and keeps the other light off. Any further button pushes and/or releases from either button are ignored. The light stays on until Alex resets them using his game master input (just run this to each flip-flops clear). To test your circuit, set the Ticks_Enabled under the Simulate menu.

Inputs: Button1, Button0
Outputs:
  • Light1 – turns on when Button1 is pushed before Button0
  • Light0 – turns on when Button0 is pushed before Button1
Turn in: The finite state diagram, next-state table, and a printout of the Logisim circuit.
Email the logisim file file to me. Make the name of the file is <your last name>.circ. For example, if I emailed the file it would be dowell.circ. If it doesn't have the correct filename, you don't get the points.
HW #12 Mon, Apr 27 Using the Logisim circuit from this file , fill in the following table by "compiling" the program in hex values for the CPU:



Instruction
Clock
Enable
ALU
Store
Enable
Register
Store
Register
#
Store
Input (8 bits)   
Enable
Input
Register
# to
Bus
Enable
Register
# to Bus
Hex value(s)
for the
Instruction
MOV R3, 15








MOV R0, 240








ADD R1, R0, R3








 (R1 = R0 + R3)



























The top D flip-flop is R3, the bottom one is R0. If the value is don't care (xx), convert to zeros.
Once you've written down the values for each column, convert the 16 bits into a hex value.
Wed, May 6
3:30 pm - 5:30 pm
Final Exam