Laboratory |
Lab 4.1: propagation delay and speed: Adder_1bit, Adder_16bit (RC), Adder_16bit (CLA) Int_add_subt_8bit [P4] Arithmetic circuits and timing analyser and VHDL gate-level simulations |
[14 Oct] |
This is the post lab assignment PLA4 |
1.5.5.1. Gate-level simulation: signal propagation delay measurement
How to measure signal's propagation time for a given target chip: post-synthesis model in VHDL (VHO file and its associated SDO/SDF delay file) and gate-level VHDL simulation in ModelSim.
1.5.5.2. Timing analyser spreadsheet tool
Using the Quartus Prime timing analyser we can measure the worst-case scenario: longest propagation delay (tP) of a given circuit.
1.5.5.3. Calculating the circuit's maximum operational speed Mops (millions of operations per second).
And therefore, from the longest propagation path from input to output, we can calculate the circuit's speed as millions of operations per second (Mops).
In the lab we have some commercial CPLD and FPGA target chips where to synthesise our circuits. For instance:
CPLD | FPGA | |
Xilinx | XC2C256-TQ144 - 7 | Spartan-3E XC3S500E-FG320 |
Intel | MAX II EPM2210F324C3 (option #1) | Cyclone IV EP4CE115F29C7 (option #2) |
Lattice | ispMach4128V TQFP100 | MachXO |
NOTE: Quartus Prime does not generate delay files (sdo) for Intel MAX 10 devices, and thus we cannot practise gate-level simulations in ModelSim for this family. However we still can use the timing analyser Quartus Prime tool targeting MAX 10, MAX II and Cyclone IV FPGA.
Let us continue the Adder_1bit based on MoM from the last Lab 3 measuring propagation time of signals in a given transition and also the maximum speed of computing.
Project tutorial #1: Add the gate-level simulation to the Adder_1bit (MoM) |
This tutorial shows how the circuit parameters depend on the technology in which it is synthesised.
1.9.1.2. n-bit adders [L3.2]
1.9.1.2.1. Ripple-carry adder (RC): Adder_4bit, Adder_8bit [Lab 3], Adder_16bit [Lab 4.1],(option #1)
1.9.1.2.2. Carry-lookahead adder (CLA): Adder_4bit, Adder_16bit [Lab 4.1], (option #2)
Now we have in mind solving the same project Adder_16bit using two different architectures synthesised for the same target chip. Thus, learning basic concepts on designing architectures for circuit optimisation accordingly to given parameters, for instance speed or resource utilisation. You will observe differences in performance between ripple carry and carry-lookahead adders.
Which adder architecture will be faster and why? Being faster means being capable of performing more millions of operations per second (Mops).
Which architecture will use less hardware resources? It means smaller circuits and less energy consumption.
Project tutorial #2: Design an Adder_16bit using plan C2 and ripple-carry (RC) architecture |
Let us complete this lab tutorial considering the enhanced architecture based on carry-lookahead (CLA) adders. You will observe what is the difference between ripple carry and carry-lookahead adders, which one is faster and why? Which one uses less resources meaning saving chip space and power consumption?
Project tutorial #3: Design an Adder_16bit using plan C2 and carry-lookahead (CLA) architecture |
These three projects have been used for learning new tools: gate-level simulation in ModelSim and Quartus Prime timing analyser, and for demonstrating how digital technologies, gate switching (operating speed) and logic resources (logic elements) are linked. We can imagine that when more resources are used the circuit is more power demanding. You can balance speed and power consumption choosing alternative designs.
The synthesis of a given architecture in a newer PLD chip will compute the same logic functions faster, because of shorter propagation delays. Technologies are always evolving setting new speed and power consumption benchmarks.
Carry-lookahead architecture is much faster than ripple-carry, however it requires more circuits for generating and propagating carry signals in fewer gate-levels.
Ripple-carry circuits will be less power demanding that carry-lookahead circuits, because they are designed with less circuitry (logic gates, logic elements).