Primitive //UDPname(only one allowed) and terminal list
(//output_terminal -> onlyoneallowed
) ;
//terminaldeclarations
output;
input;
reg;
initial= ;
//UDPstatetable
table
entries>
endtable
//endofUDP definition
endprimitive
UDPRules:
1)UDPscan take only scalar input terminals (1 bit). Multipleinputterminals arepermitted.
2)UDPscanhave onlyonescalaroutputterminal (1 bit).Theoutputterminalmustalwaysappearfirstin the terminal list. Multiple output terminals are not allowed.
3)In the declarations section, the output terminal is declared with the keyword output.Since sequential UDPs store state, the output terminal must also be declared as a reg.
4)The inputs are declared with the keyword input.
5)The state in a sequential UDP can be initializedwithan‘initial’ statement. This statement is optional. A 1-bit value is assigned to the output, which is declared asreg.
6)The state table entries can contain values 0,1,or x .UDPsdo not handle z values.Zvalues passedto aUDParetreatedxvalues.
7)UDPsaredefinedat the same level asmodules. UDPscan not be defined inside modules. They can beinstantiated only insidemodules. UDPs are instantiatedexactly like gateprimitives.
thanks ..very useful!!
ReplyDeletenice
ReplyDelete