Professional Documents
Culture Documents
Semiconductor Devices
Bipolar Transistors:
c
N
b
P
N
e
NPN transistor
S
P
N P
G G D
N+
2-2
Metal N+
NMOS Device
P-
CMOS Process
Cross-Section Diagram
Layout
Source from http://infopad.eecs.berkeley.edu/~icdesign For a great tour of IC fabrication process, see http://www.fullman.com/semiconductors/semiconductors.html
2-3
False
Y=X
1 0 X Y 0 1 0 1
2. AND
X Y
Z=XY
3. NAND
X Y
Z=XY
0 0 1 1
2-4
4. OR
X Y
Z=X+Y
5. NOR
X Y
0 0 1 1
Z=X+Y
Y 0 1 0 1
Z 0 1 1 0
4. XOR
X Y
Z = XY +XY Z=X+Y
0 0 1 1
5. XNOR
X Y
Z = XY +XY Z=X+Y
2-5
1 0 0
I1
O I2 S Mux C X Y
2-to-1 multiplexer
Bi-direction circuit
2-6
Vin
50% Vin Vout 90% 90% 50% 50% 10% 50%
tpHL
tpLH
10%
tf
tr
2-7
D Flip-flop
D CLK Q Q D CLK Q D flip-flop will not change its output values unless there is a negative edge event at CLK input (CLK switches from logic 1 to 0). When a negative edge appears at CLK input , D Flip-flop updates Q to the current D value
2-8
CLK
Setup Time
D CLK Setup time
Hold time
D CLK Hold time
2-9
Decoder Circuits
A decoder circuit uniquely selects one of its outputs according to its
input signals
N inputs
Decoder
2N outputs
0 0 1 1
0 1 0 1
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Z3 (10)
Z4 (11)
2-10
Decoder Circuit
3-to-8 decoder implementation
Assume that we have 2-to-4 decoders available as standard components When CS is low (0), all the outputs of the decoder are low (0)
X Y Z
X
Y CS X Y CS
X
Y CS
2-to-4 decoder
2-11
Clk
B
DFF Q D Q
C 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
A 0 1 0 1 0 1 0 1
Init.
CLK
Synchronous counter
A B C
DFF Q D Q
DFF Q D Q
Q Q
CLK 2-12
CLK
DFF Q D Q
DFF Q D Q
CLK
2-13
Q2
DFF Q D Q
Q1
DFF Q D Q
Q0
Q[3:0]
Data CLK
Shift register
Q3 0 CLK
DFF Q D Q
DFF Q D Q
Q2
DFF Q D Q
Q1
DFF Q D Q
Q0
CLK
Q3
Q2
Q1
Q0
Init.
1 0 0 0 0
0 1 0 0 0
1 0 1 0 0
0 1 0 1 0
2-14
Real Circuit
C
Vin
C C C C
Vin
C
ISC
C
2 PDynamic 0.5 C VDD f
PSC I SC (t )Vdt
Vin
Transistor Sizing
C
C C C
Delay
Power
Silicon area
Driver Size
Driver Size
Driver Size
2-17
Vout1
Vout2
3.
2. 3.
4.
Implementation
Download
a b
Design Constraints
The maximum delay between an input and an output should not exceed 5 ns
2-21
a b
INV2
NAND1
e
NAND2
c
INV3
Step 2: Select proper size for each gate used in the above circuit. (Gate Sizing) 1X
After this step, the circuit can be simulated to verify that it complies with timing constraints. b In the simulation, the parasitic capacitance and resistance on c interconnects are estimated (Estimated wire load)
3X
d
1X 3X
e
1X
2-22
INV1
NAND1
NAND2
INV2
INV3
Steps 1, 2, and 3 are included in the implementation phase of the FPGA design Flow
Step 4: Perform post-layout simulation to verify that the generated circuit complies with timing constraints
Since detail information of each interconnect is available, the circuit can be simulated with accurate wire load. The process that writes the accurate wire load into the circuit netlist is called back annotation 2-23
Layout information
Placement & routing constraints
2-24
2-26
Binary Addition
Example
0 1 0 1 + 1 0 0 1 1 1 1 0
C_in
Full adder
C_out
4-bit adder
A[0] B[0] C_in
Full adder
A[1] B[1]
Full adder
A[2] B[2]
Full adder
A[3] B[3]
Full adder
C_0
C_1
C_2
C_out
S[0]
S[1]
S[2]
S[3]
2-27
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
0 1 2 3 0 -1 -2 -3
Decimal
Ones complement
For positive number A, it is
represented as usual binary number
1s complement
0 0 0 0 1 1 1 1
0 0 1 1 1 1 0 0
0 1 0 1 1 0 1 0
0 1 2 3 0 -1 -2 -3
2-28
0 0 0 0 1 1 1 1
0 0 1 1 1 1 0 0
0 1 0 1 1 0 1 0
0 1 2 3 -1 -2 -3 -4
By using twos complement number representation, minus operations can be performed by adders
3 1 2
Overflow Ignore
0 1 1 1 1 1
2 3 -1
0 1 0 1 0 1 1 1 1 -1
2-29
1 0 1 0 2