HOMEWORK 4 CMPEN 411
Due: 2/14/2012 11:30pm
Learning Objective
Use the VLSI CAD tools to design and implement an 8-bit Program Counter (PC)circuit in bit-slice style and analyze it.
Instruction
Implement the program counter circuit shown belowin schematic and layout. Design 1 bit Program Counter first. Then instantiating 8 such 1 bit PCs, build the 8 bit PC. You may update and combined the 1-bit full adder from the Homework 2 to the 1-bit register from the Homework 3. You will also need to design the 2 to 1 multiplexer (2-1 MUX).
- Read all of the following instructions before starting the design.
- Using the Cadence tool Virtuoso, design the 8-bit PC schematic and layout. The design must be free from the DRC errors and pass the LVS checking.
- Take a[7:0] signal as the 8-bit Program Counter output. Why not the signal s[7:0] or the signal between the mux and the register, x[7:0], to be taken as the program counter output?
- To verify the functioning, design the Hspice simulation files: .hsp, .s, and .sp files. Your simulation must show counting up and counting down. Counting increments or decrements are the 8 bit 2's complement number applied to the b[7:0] input.
- Design the c and cb signals such that the counter operates at maximum speed while maintaining correct output result.
- Determine the highest speed of operation: how fast can the signal c and cb be clocked? Determine the slowest speed of operation: how slow can the signal c and cb be clocked? (Assume 50% duty cycle clock signal.)
- What limits the highest speed of operation for the PC? Show the simulation plot to substantiate your answer.
- How can the maximum speed of operation be improved? How would you change your design to improve maximum speed?
- Why are the maximum speed and minimum speed important?
- How many transistors are used in your 8-bit PC design?
- Did you use static, dynamic, or pass transistor logic?
- Are there any errors in schematic?
- Is there an error in layout? Does your layout pass the DRC checking without errors?
- Is there a miss match on the schematic versus layout? Does your design pass the LVS checking without errors?
- Extract the circuit from the layout including the parasitic capacitances. Then hspice simulate the extracted circuit netlist. Placing 10fF load capacitors on the outputs, what is the worst case output signal rise time, fall time, and delay time? The worst case delay time is from which input to which output?
Worst case delay time: T = ______nSec.
- What is the layout height and width? What is the total layout area measured in um**2? Area: A = ______um**2
- What is the AT**2 measure of your design? AT**2 = ______um**2 nSec**2
- Use hierarchical design method to manage design complexity. That is, design simple cells and design top cell which combines simple cells. The Cadence tool Virtuoso assumes all design is done this way, uses cellview to manage cells.
- Homework 4 preparation: Create a directory hw4yourlastname under c411 directory (assuming you have c411 directory in your home for this class). Change the current directory to hw4yourlastname. Set up the directory for a new Cadence Virtuoso library. Then start the hw4 design project. For example, my hw4 directory will be hw4choi and I will be running the following unix commands right after I login to my account:
% cd c411
% mkdir hw4choi
% cd hw4choi
% runcds
% virtuoso &
You can follow the same except that you need to use your last name after 'hw4'. Collect all the components in this directory, it will be 'tar' and zipped, turn-in to the instructor for grading. This way, you can collect all the files within the hw4yourlastname directory and it will allow the grading. Otherwise, any missing files may cause your design verification for grade to fail. You may lose points if your turned-in hw4 design files cannot be verified by grader.
- Create a hw4 report file hw4yourlastname.doc and include captured image of layout and the simulation results. Add your explanations and comments. On the Linux machines in room 218 IST, one can use 'openoffice.org' program for the document creating and editing, and use 'gimp' program for the image capture and processing from the screen.
- The hw4 report file must also include the answers to the questions below.
- The hw4 report file can be in .doc or .pdf, must include a cover page for student information such as 'CMPEN 411’, ‘Homework 4’, your name, etc. The sample format of the hw4 report file is posted: Sample hw4 Report
- Create a tarred zip file of your hw4yourlastname directory in c411 directory. It will contain the schematics, symbols, layouts, .hsp, .sp files, and .doc report file. In your c411 directory, use the following unix commands
% tar -czvf hw4yourlastname.tgz hw4yourlatname
to create a tarred zip file of hw4yourlastname library. For example,
% tar -czvf hw4choi.tgz hw4choi
will archive the directory hw4choi and create a zipped file hw4choi.tgz in my c411 project directory.
You may want to delete .tr0 files before zipping, for their sizes are usually large.
- Turn-in your project zip file through Penn State ANGEL. Deposit your zip file into the Homework 4 DropBox under CLASS tab in CMPEN 411 Course.
- Make sure that you include all the files necessary into your project folder, in order to verify for grading. Turn-in your project before 11:30pm on the due date.
- For your information, the grading sheet for the Homework 4 is posted: HW4 Grading Sheet