Homework 1 FAQ

CS3410 Spring 2011

Due: 11:59pm, Tuesday, February 8 2011 Monday, February 7


Logisim

Q: How does component xxx work in Logisim?
We have had many questions asking about how to use a particular component in Logisim. In general, the help file in Logsim has explained things very well. You can access the help file from the 'Help' menu in Logisim. You could either search by keyword or browse the entire reference from the left pane.

Q: How does a splitter work?
Please refer to logisim section on splitting.

Q: How to create a sub-circuit in Logisim?
Please refer to Sub-circuit creation.

Q: How to test a circuit in Logisim?
Please refer to Circuit test tutorial.

Q:How to build a one-bit adder?
Logisim has a very nice feature for editing truth table and generating the corresponding logic circuit. You could refer to the following pages Edit truth table and Generate Circuit for an explaination.
The following steps work well for me:
1- Place the desired input and output nodes in the canvas.
2- Save the changes to the canvas.
3- Right Click on the symbol that represents the current canvas in the explorer pane, and select 'Analyze Circuit' to bring up the 'Combinantional Analysis' window
4- Edit the truth table and Generate the circuit

Shift and overflow

Q: How to do right shift with left shifter?
Hint: You need to manipulate the input bits before passing them to the left shifter, e.g. transform the input bits to an intermediate format, pass the input through the left shifter, and then do a reverse-transformation to get your result.

Q: Is overflow the same as the carry out bit of the most significant bit?
No! For example, with 4 bits, adding 0001 and 1111 has a carry-out bit of 1, but the result is 0000, and this is a valid value: there is no overflow.

Q: But my overflow bits are buried within my 16-bit adders! How am I supposed to XOR the carry-in and carry-out of the MSB?
You could either add a few extra outputs to your adders and only use them for the MSB, or you could detect overflows the alternate way: If the sign bit of the two inputs is the same but different from the output, you have an overflow.

Critical Path

Q:What is a critical path? In synchronous logic (logic that is driven by a clock signal), the critical path is the slowest logic path in the circuit. In homework 1, we assumed that the operation of the ALU completes in one clock cycle. In order to determine how long the clock cycle is, you need to figure out which path in your circuit is the longest path for the input signals to propagate through. This particular path is called the critical path. The amount of time for the input signals to propagate through the critial path is the minimum length of one clock cycle. The reciprocal of the clock period gives the maximum frequency of the input clock signal.

Q: What is gate count? In microprocessor design, gate count refers to the number of transistor switches, or gates, that are needed to implement a design. Even with today's process technology providing what was formerly considered impossible numbers of gates on a single chip, gate counts remain one of the most important overall factors in the end price of a chip. Designs with fewer gates will typically cost less, and for this reason gate count remains a commonly used metric in the industry.

Note that for the homework, it says that "You may ignore NOT gates, and count all other basic gates (AND, OR, NOR, etc.) as a 1 unit cost and 1 unit delay."