Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

about describe combinational logic in alway block

Status
Not open for further replies.

gentle_man

Junior Member level 3
Joined
Jan 6, 2004
Messages
31
Helped
1
Reputation
2
Reaction score
0
Trophy points
1,286
Activity points
196
to use blocking and non-blocking assignment in always construct to describe a combinatioanl logic, the following 2 methods do work, but which is the better, and why
for example, adder

always(...)
out <= in1 + in2;

always(...)
out = in1 + in2;

thanks
 

I think they are same.
 

Hi gentle_man,

Normally, use of nonblocking assignments in place of blocking assignments is highly recommended in RTL design.
 

Hi
Usually, blocking assignments are recommended for modelling combinational circuits and non-blocking assignments to model seqential circuits.
 

Hello!!
It are examples identical.
Blocking and non-blocking assignment
always @(...)
begin
A=B;
C=A;
D=C;
end

result - D=B, C=B and A=B

always @(...)
begin
A<=B;
C<=A;
D<=C;
end

result - D=C(before), C=A(before) and A=B
 

If it is a purely combinatorial circuit they have exactly the same effect.
However, with non-blocking the always block is executed 3 times, while with blocking just once, so I guess there is a perfomance advantage in using blocking statements
 

if u consider intra delays ...there is lots of difference n r u considering all variables in sensitivity list?
 

no acceptable for synthesis tools , to obey RTL design rule, using non-block in sequence logic and using block in combinational logic, else you will meet unnecessary problem.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top