Top Banner
ECE 545 Project 2 Specification
35

ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Jan 05, 2016

Download

Documents

Ronald Booker
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

ECE 545 Project 2Specification

Page 2: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Project 2 (15 points) – due Tuesday, December 19, noon

Application: cryptography OR digital signal processing optimized version

with structural optimizations for minimum area and maximum throughput/area ratio

Technology: ASICTarget: revised synthesizable code

scripts for Design Analyzer and PrimeTime synthesis with Design Analyzer

timing analysis with PrimeTime design equivalence with Formality

Page 3: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Sources

Synopsys documentation and examples available at http://ece.gmu.edu/courses/ECE545/viewgraphs_F06/synopsys.htm

George Michael,

PrimeTime: Static Timing Analysis Tool, scholarly paper,

George Mason University, December 2006

(available on the course web page)

Page 4: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Optimization Criteria

Maximum ratio

Throughput divided by

Total Circuit Area

Architecture 2

Architecture 1

MinimumTotal Circuit Area

Page 5: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Project 2 - Platforms & tools

Target devices: standard-cell ASICs

Libraries: 90 nm TCBN90G TSMC library 130 nm TCB013GHP TSMC library

Tools:

VHDL Simulation: Aldec Active HDL or ModelSimVHDL Synthesis: Synopsys Design AnalyzerTiming Analysis: Synopsys PrimeTimeDesign Equivalence: Synopsys Formality

Page 6: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Select two or more versions of your synthesizable VHDL code developed as a part of Project 1 (a & b), and optimized for

a) minimum areab) maximum throughput to area ratio.

Use the results of your earlier experiments with FPGAsor consider multiple values of circuit parameters(such as parameter d for encryption) in order to find a circuit with the maximum throughput to area ratio.

Revise your codes in such a way that they can be synthesized using Synopsys Design Analyzer

with TSMC libraries of standard cells.

Task 1

Page 7: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Verify your revised codes using functional simulationbased on a comprehensive testbenchdeveloped as a part of Project 1.

Task 2

Page 8: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Prepare Design Analyzer scripts which will enable you to synthesize all considered versionsof your codes optimized for a) minimum area b) maximum throughput to area ratio.

Identify commands and parameters (such as defining target clock period) that you can attempt to modify in order to obtain the synthesized circuit with a) minimum area b) maximum clock frequency c) maximum ratio of throughput to latency.

Task 3

Page 9: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Synthesize your codes using Synopsyswith the following libraries:

1. Synopsys with the 90 nm TCBN90G TSMC library2. Synopsys with the 130 nm TCB013GHP TSMC library

Repeat synthesis for multiple values of parametersidentified in Task 3, in order to find parameters leading to circuits with the a) minimum area b) maximum throughput to area ratio.Draw diagrams showing the dependence between the target clock frequency and the actual clock frequency and area.

Task 4

Page 10: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Synthesize your best codes optimized for a) minimum area b) maximum throughput to area ratiousing Synplicity Synplify Pro and the following FPGAs as target devices:

1. Xilinx Spartan 32. Xilinx Virtex II

In both cases use the smallest device of a given familycapable of holding the entire circuit with up to70% of CLB slice utilization.

Task 5

Page 11: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Compare the maximum clock frequencybetween circuits synthesized using

1. Xilinx Spartan 3 FPGAvs.

ASIC with 90 nm TSMC library

2. Xilinx Virtex II FPGAvs.

ASIC with 130 nm TSMC library

Task 6

Explain the obtained results.

Page 12: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Prepare PrimeTime scripts to be used to analyze your circuits.Use templates suggested by George Michael andthe TA, and modify them to match your codeand the types of analyses you are planning to perform.

Task 7

Page 13: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Using PrimeTime - determine the critical paths in your circuits optimized for

a) minimum area b) maximum throughput to area ratio.

Mark these critical paths in your block diagram.

Analyze all timing reports generated by your scriptand identify any violations of timing constraints.

For the obtained violations, explain the meaning of the violation by drawing a corresponding simplified timing waveform.

Task 8

Page 14: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Using PrimeTime

Repeat your analysis for the case of input and output delaysequal to the 20%,40%, 60%, and 80% of the clock period.

Identify which values of input and output delayslead to violations of the timing constraints.Explain why? How would you modify your circuit toeliminate these timing violations?

Task 9

Page 15: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Using Formality, determine the design equivalence between the original VHDL code and the optimized netlist obtained from synthesis.

Repeat your analysis for the circuits optimized for a) minimum area

b) maximum throughput to area ratio.

In case of mismatches, modify your VHDL code,resynthesize it, and check for equivalence again.When introducing changes try to follow strictlyrules for writing a synthesizable VHDL code.

Task 10

Page 16: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

In case you have obtained no mismatches in Task 8without the need to modify your codes,generate the mismatches on purpose by making a smallmodification in your VHDL code and comparing it witha netlist corresponding to the unmodified code.

The possible modifications may includereplacing a register by a direct connection betweenits input and output, changing the connectionsin your circuit, modifying a sensitivity list in a process, etc.

Task 11

Page 17: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Tips & Hints (1)

Each entity and each package should be placedin a different file.

The name of each file should be exactly the sameas the name of an entity or package it contains.

Arrange entity names in the bottom-up order(the top-most entity at the end of the list)and define this list in your script using the command

blocks = { entity1, entity2, …, entityN}

Page 18: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Tips & Hints (2)

Use only one clock in your entire design.

Use an identical name for the clock signal in all yourentities and packages (including declarationsof components).

Use the same clock name in all clock-related commandsof your script, such as create_clock, set_clock_transition, etc.

Page 19: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Avoid advanced features, such as:• multiple clocks, • gated clocks, • multicycle paths, • circular feedback loops containing only combinational logic.

Although these features are supported by Synopsys,their correct use requires additional knowledgeand experience that are beyond the scope of ECE 545.

Tips & Hints (3)

Page 20: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Tips & Hints (4)

Create a project directory in your main user directory.

Create the following subdirectories in the project directory: db, docs, log, reports, scripts, tb, vhdl.

Place all your synthesizable source files in the vhdl directory, and your testbench files in the tbdirectory.Place your scripts in the script directory.

Define at least the following directories close to thebeginning of your script: src_directory, report_directory, db_directory.

Page 21: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Tips & Hints (5)Do not change values of the constraint conditionsspecified using the following script commands:

set_clock_latency 1.0 find(clock, "clk")set_clock_transition 0.01 find(clock, "clk")set_clock_uncertainty -setup 0.1 find(clock, "clk")set_clock_uncertainty -hold 0.1 find(clock, "clk")set_load 0 all_outputs()set_wire_load_model -library tcb013ghptc -name "TSMC8K_Fsg_Conservative“

You can change a clock name “clk” within these commandsif necessary.

These constraints are required to be the same for all students.

Page 22: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Using commands

set_input_delay

&set_output_delay

set input dalay and output delay initially to 20%of the target clock period.

Modify these values as a part of Task 9.

Tips & Hints (6)

Page 23: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Tips & Hints (6)

Change your current directory to your log directory before you execute design_analyzer.

After executing your script within design_analyzer,

analyze the contents of log files generated in the directory log.

These files contain the exact description of warningsand errors generated during synthesis.

Please do your best to eliminate all errors andmajority of warnings generated by the scripts and written to the log files.

Page 24: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Project DeliverablesTask 1

Source codes of all synthesizable files you have developedin order to meet the project specification.

Description of any changes you have had to make in these codes in order to a. get your codes synthesized using Synopsys with TSMC libraries, b. eliminate all synthesis errors and minimize the number of synthesis warnings.

Page 25: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Source code of the comprehensive testbench capable of verifying the operation of your entire circuit.

Input files containing test vectors, and output filescontaining reports from simulation.

Timing waveform from functional simulation,demonstrating the correct operation of the circuit.

Project DeliverablesTask 2

Page 26: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

All scripts developed as a part of Task 3,and used in Task 4.

Project DeliverablesTask 3

Page 27: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Values of parameters leading to circuits with the a) minimum area b) maximum throughput to area ratio.

Project DeliverablesTask 4

The detailed timing and area results obtained for all synthesized circuits, including

• maximum clock frequency• area • maximum throughput• maximum throughput/area ratio

Page 28: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Diagrams showing the dependence between the target clock frequency and the actual clock frequency and area.

Possible explanation of the obtained results.

Project DeliverablesTask 4 – cont.

Page 29: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Project delivarablesTasks 5 & 6

The detailed timing results for FPGAs, and their comparison with the timing results for ASICs.

Explanation of differences.

Page 30: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

All PrimeTime scripts developed in orderto analyze your circuits.

Project DeliverablesTask 7

Page 31: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Block diagrams with marked critical paths.

All timing reports generated by your scriptand the summary of the obtainedviolations of timing constraints.

For the obtained violations, simplified timing waveformexplaining the meaning of these violations.

Project DeliverablesTask 8

Page 32: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Reports from timing analysis for the case of input and output delays equal to the 20%,40%, 60%, and 80% of the clock period.

Values of input and output delaysleading to violations of the timing constraints.

Explanation how would you modify your circuit toeliminate these timing violations.

Project DeliverablesTask 9

Page 33: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Short description of the results obtained from Formality.

Description of any changes you have had to make in your codes in order to pass the equivalence check.

Project DeliverablesTask 10

Page 34: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

Short description of the artificially generated mismatches and the way of reporting them by the tool.

Project DeliverablesTask 11

Page 35: ECE 545 Project 2 Specification. Project 2 (15 points) – due Tuesday, December 19, noon Application: cryptography OR digital signal processing optimized.

All Projects – Honor Code Rules

• Using somebody’s else code and presenting it as your own is a serious Honor Code violation and may result in an F grade for the entire course.

• All students are expected to write and debug their codes individually.

• Students are encouraged to help and support each other in all problems related to the– basic understanding of the problem– operation of the CAD tools.