Professional Documents
Culture Documents
3
/
4
0 1
+ < =
Tco
(Tco=Tsetpup+Thold)Tdelay
Tsetup D
Tco Tdelay
""
N
9
12
3 FPGA/CPLD
10FPGA
SOPC I/O
FPGA
bug bug
FPGA
alteraxilinx
IO FPGA
xilinx v2pro
11
1
2,3 FIFO
DPRAM
12FPGA CPLD
CPLD
FPGA
EEPROM/FLASH
SRAM EEPROM
PLLRAM
13latchflip-flop
14FPGA
FPGA BLOCK RAM, LUT
RAMBLOCK RAM
BLOCK RAM BLOCK
RAM
15
0
16FPGA
FPGA
FPGA PLL,DLL
DCM D
17FPGA
buffer
18FPGA RAM/ROM/CAM
BLOCK RAMFFLUT
RTL ()
21
look-up-table LUTLUT RAM FPGA
4 LUT LUT 4 16x1 RAM
HDL PLD/FPGA
RAM,
22IC EDA
2Fabless
systemC
systemC CoCentric Visual Elite
3HDL ultra visual VHDL
4modelsim
5synplify
6synopsys Prime Time
7Synopsys Formality.
23 IC IC
PCB
SMT
24 flip-flop logic-gate 1 carryin current-stage
carryout next-stage
carryout=carryin*current-stage
next-stage=carryin*current-stage+carryin*current-stage;
module(clk,current-stage,carryin,next-stage,carryout);
input clk, current-stage,carryin;
output next-stage,carryout;
always@(posedge clk)
carryout<=carryin¤t-stage;
nextstage<=
25 10 5 10
1. fsm
2. verilog FPGA
3.
2S0 S1 5
3
module sell(clk,rst,a,b,y,z);
begin
input clk,rst,a,b;
next_state=s0; y=1;
output y,z;
end
parameter s0=0,s1=1;
else
reg state,next_state;
next_state=s0;
always@(posedge clk)
begin
if(!rst)
state<=s0;
else
state<=next_state;
end
s1: if(a==1&&b==0)
begin
next_state=s0;y=1;
end
else if(a==0&&b==1)
begin
next_state=s0; y=1;z=1;
end
always@(a or b or cstate)
else
begin
next_state=s0;
y=0;z=0;
default: next_state=s0;
case(state)
endcase
s0: if(a==1&&b==0) next_state=s1;
end
else if(a==0&&b==1)
endmodule
26"",,?
, oc ,
oc ,. oc
od
27???
123
Y=A+A Y=AA
28?TTL COMS
TTLCMOSLVTTLLVCMOSECLEmitter Coupled LogicPECL
Pseudo/Positive Emitter Coupled LogicLVDSLow Voltage Differential Signaling
GTLGunning Transceiver LogicBTLBackplane Transceiver LogicETLenhanced
transceiver logicGTLPGunning Transceiver Logic PlusRS232RS422RS485
12V5V3.3V
12V5V3.3V
TTL CMOS TTL 0.3-3.6V CMOS 12V
5V CMOS TTL TTL CMOS
5V 12V
CMOS TTL;,TTL CMOS.
6
7
:
1
2
3, 1k 10k
OC
OC 1
OC LED
29IC
30MOORE MEELEY
Moore ,
Mealy ,
31,
FIFO
32
33 Mux, timing.
34,,,,
35 P N ?
P N
N P P
36 mos
<> 92
39 mux inv
:B A A ,F ,
().
Y=BA+BA
4 1 F(x,y,z)=xz+yz'
F(x,y,z)=xyz+xyz+xyz'+xyz=xy0+xyz+xyz+xy1
Y=ABD0+ABD1+ABD2+ABD3
D0=0D1=zD2=zD3=1
40 CMOS , Y=A*B+C(D+E).()
Y=A*B+C CMOS Y=A*B+C*D CMOS
Y=A*B+C(D+E)=((AB)(CD)(CE))
Y=A*B+C=((AB)C)
Y=A*B+C*D=((AB)(CD))
41
192
42A,B,C,D,E ,, F( A,B,C,D,E 1 0 ,
F 1, F 0),,-
43 CMOS D
CMOS
44LATCH DFF
45latch register , register. latch
latch register register
latch
latch
46 D
module div2(clk,rst,clk_out);
input clk,rst;
output reg clk_out;
always@(posedge clk)
begin
if(!rst)
clk_out <=0;
else
clk_out <=~ clk_out;
end
endmodule
DCM DCM
Q
47
48 7 ,15
module counter7(clk,rst,load,data,cout);
input clk,rst,load;
input [2:0] data;
output reg [2:0] cout;
always@(posedge clk)
begin
if(!rst)
cout<=3d0;
else if(load)
cout<=data;
else if(cout>=3d6)
cout<=3d0;
else
cout<=cout+3d1;
end
endmodule
49
PALPLAGALCPLDFPGA
module(clk,data,q_out)
input clk,data;
output reg q_out;
reg q1;
always@(posedge clk)
begin
q1<=data;
q_out<=q1;
end
endmodule
51SRAM,FALSH MEMORY,DRAMSSRAM SDRAM ?
SRAM DRAM
REFRESH(CACHE)
FLASH
DRAM(REFRESHED)
SRAM
SSRAM SSRAM /
SDRAM
52
FDMATDMA
CDMAWDMA
53ASIC Setup time violation Hold time violation?
setup hold time violation
VIA2003.11.06
violation
54
1
2
3
55
1
2 FF
3
4
56
57
58
RL C
RC
T3hold>T1min+T2min
T1min+T2min
61 TsetupTdelayTck->qTco clock
delay,
T+Tclkdealy>Tsetup+Tco+Tdelay;
Thold>Tclkdelay+Tco+Tdelay;
623/2
2 3 JK-FF 3
D-FF 3 2
NOR Q2Q1=11B
H FF1 FF2 Fi
Q2Q1=11B
Q1
Q2 D-FF 3 AND Q2Q1
63
CMOSComplementary Metal Oxide Semiconductor
CMOS
MCU(Micro Controller Unit)(Single Chip
Microcomputer) CPU
RAMROM I/O
ASIC:
64
65Please show the CMOS inverter schematic, layout and its cross section with P-well
process. Plot its transfer curve (Vout-Vin) and also explain the operation region of PMOS
and NMOS for each segment of the transfer curve? circuit
design-beijing-03.11.09
66To design a CMOS inverter with balance rise and fall time, please define the ration of
channel width of PMOS and NMOS and explain? P N
67Please draw the transistor level schematic of a CMOS 2 input AND gate and explain
which input has faster response for output rising edge.(less delay time)
circuit
design-beijing-03.11.09
68 Y=AB+AB+CD
1INV 2AND 3OR 4NAND 5NOR 6XOR NAND
69 D
70DFF
D
71 D VIA 2003.11.06
D D
D D
72 DFF , verilog
module dff(clk,d,qout);
input clk,d;
output qout;
reg qout;
always@(posedge clk)
begin
if(!reset)
qout<=0;
else
qout<=d;
end
endmodule
73 CMOS D
D
74 filp-flop logic-gate 1 carryin current-stage
carryout next-stage.
75 D 4
1
2
3
4
5
P314
76 N Johnson Counter, N=5
78 Verilog/VHDL
79 HDL 5
module adder4(a,b,ci,s,co);
input ci;
input [3:0] a,b;
output co;
output [3:0] s;
assign {co,s}=a+b+ci;
endmodule
module div5(clk,rst,clk_out);
input clk,rst;
output clk_out;
reg [3:0] count;
always@(posedge clk)
begin
if(!rst)
begin
count<=0;
clk_out=0;
end
else if(count==3d5)
begin
count<=0;
clk_out=~clk_out;
end
else
count<=count+1;
end
endmodule
50%
module div7 ( clk, reset_n, clkout );
input
clk,reset_n;
output
clkout;
reg [3:0] count;
reg
div1;
reg
div2;
always @( posedge clk )
begin
if ( ! reset_n )
count <= 3'b000;
else
case ( count )
3'b000 : count <= 3'b001;
3'b001 : count <= 3'b010;
3'b010 : count <= 3'b011;
3'b011 : count <= 3'b100;
3'b100 : count <= 3'b101;
3'b101 : count <= 3'b110;
3'b110 : count <= 3'b000;
default :
count <= 3'b000;
endcase
end
always @( posedge clk )
begin
if ( ! reset_n )
div1 <= 1'b0;
else if ( count == 3'b000 )
div1 <= ~ div1;
end
always @( negedge clk )
begin
if ( ! reset_n )
div2 <= 1'b0;
else if ( count == 3'b100 )
div2 <= ~ div2;
end
assign clkout = div1 ^ div2;
endmodule
80 VERILOG VHDL 10
module counter10(clk,rst,count);
input clk,rst;
output [3:0] count;
reg [3:0] count;
always@(posedge clk)
begin
if(!rst)
count<=0;
else if(count>=4d9)
count<=0;
else
count<=count+1;
end
endmodule
81
82 125 5
1 1 A=1 2 B=1 5 C=1 Y=1
2 S0 1 S1
2 S2 3 S3 4 S4
3 verilog
83 soda
84 10 5 10 1
fsm2 verilog fpga 3
b 0000000000100100000000
state machine RTL state machine
0 S01 S101 S2,101 S3,1101 S401101
S5 verilog
87 DRAM
88 OTP (OTP)
OTP OTP
OTP
OTP
OTP
(In System Programming) OTP Bonding
OTP OTP
I/O
ISP OTP
89
90
--------
-
91
TTLCMOS TTL CMOS
CMOS -
----
92 FPGA
FPGA/CPLD 7 ASIC
1.Verilog VHDL
2.ASCI
Sign-offPLD
3.
()
()
4.
5.
6.ASCI
Signoff
7. ASCI PLD
93 IC eda
--------(RTL )--
--()----)-(SDF )--(
)--------SDF ------
------
foundry fabless
IC zz
1.()
2. C/C++
MATLABSPW
3.
SystemC
6. RTL
7.
8. Floorplanning
PlacementRouting
9.
10.
11.
12.
IC
1. Cadance SE Foundry
I/O Pad ,,.lef.tlf .v
,
.gcf Pad DEFDesign Exchange Format( synopsys
Astro , , SDC ,Pad
--tdf
5. STA ,,
Global Route ,SE .V .SDF
PrimeTime ,
Astro , detail routing , starRC XT , E.V .SDF
PrimeTime ,
6. ECO(Engineering Change Order),
.
7. filler (pad fliier, cell filler)Filler I/O Pad
,,I/O Pad I/O Pad ,
, DRC
8.(Routing)Global route-- Track assign --Detail routingRouting optimization
,
I/O Pad ,(Timing driven )
,--Timing report clear
9. Dummy Metal Foundry ,,
Dummy
Metal
10. DRC LVSDRC (spacing ,width),
,LVS ,
DRC LVS --EDA Synopsy hercules/
mentor calibre/ CDN Dracula .Astro also include LVS/DRC check commands.
11. Tape out GDS Foundry
tapeout
In electronics, tape-out is the name of the final stage of the design of an integrated
circuit such as a microprocessor; the point at which the description of a circuit is sent for
manufacture.
95
1 foundry Pad
2
3 timing setup
4 100%
5 clock skew buffer
6
7 design rule foundry
dummy
Synopsys ASTROCadence SEISEQuartus II
96 0.25,0.18
/0.13,90,65
0.18 0.13
cpu 0.18 0.13 cpu
cpu 0.18
cpu 0.13 cpu 0.18
97
98
N P N
99 CMOS
CMOS
NMOS P N PMOS n-p-n-p
N
ESD latch-up
EOS
100 latch-up Antenna effect .
(polysilicon)
MOS