Professional Documents
Culture Documents
Prof. A. K. Swain
Asst. Prof., ECE Dept., NIT Rourkela
Example:
wire Cout , Cin;
wire [3:0] Sum, A, B;
…
assign {Cout, Sum} = A + B + Cin;
• Multiple net declaration assignments on the same net are not allowed.
• If multiple assignments are necessary, continuous assignments must be used.
• The rising edge on “D” at 5 gets scheduled to appear on “C” at 9, but “D” goes back to 0
at 8, Hence the scheduled value on “C” is deleted.
• The pulse on “D” occurring between 18 and 20 gets filtered out.
• *The changes on the right-hand side that occur within the delay interval are filtered out.
Transport delay:
• This delay represents pure propagation delay,
• Any changes on an input is transported to the output after the specified delay.
• Spikes would be propagated through instead of being ignored as in the inertial delay
case.
Inertial delay:
• It represents the time for which an input value must be stable before the value is
allowed to propagate to the output.
• If the value on the right-hand side changes within the delay period, the former
value does not propagate to the output.
• This delay model is often used to filter out unwanted spikes and transients on
signals.
• In addition, the value appears at the output after the specified delay.
Data Flow Modeling EC6203 Reconfigurable System Design
Delay
For each delay specification, up to three delay values can be specified.
i. Rise delay
ii. Fall delay
iii. Turn-off delay
Syntax:
assign #( rise , fall , turn-off ) LHS _ target = RHS _ expression ;
Example:
assign #4 A = Q | L ; // One delay value.
assign #(4, 8) A = Q ; // Two delay values.
assign #(4, 8, 6) A = - B & D; // Three delay values
assign Bus = MemAddr [ 7 : 4 ] ; //No delay value .
• First the assignment delay is used and then any net delay is added on.
• An event on B, say at time 10, causes the right-hand side expression to be
evaluated.
• If the result is different, it is assigned to A after 2 time units, that is, at time 12.
• Since A has a net delay specified, the actual assignment to the net A occurs at
time 17 time units (= 10 + 2 + 5).
Data Flow Modeling EC6203 Reconfigurable System Design
Design Example
Example-1: Master-slave D flip flop (data flow model)
website:
asic-world.com
www.xilinx.com