1

So basically there is udp in verilog for which we define tables. This table is maintained in memory in code.

Eg.

primitive abc(q,d,clk,not); input d, clk, not; output q; reg q; table |0 1 ? : ? : 0;| |1 1 ? : ? : 1;| |0 * ? : 0 : 0;| |1 * ? : 1 : 1;| |* 0 ? : ? : -;| |? ? * : ? : x;| endtable endprimitive 

My question is can we predict which input in udp is clock just from the transition table (NOTE : question only for sequential udp)?

1 Answer 1

1

Yes you can and tools do this—you cannot rely on the signal names to infer functionality.

The key line that shows you which is the clock/enable for a level sensitive sequencial udp is the no change line:

* 0 ? : ? : -; 

This works for a level sensitivity UDPs, but doing this generically for all possible truth tables could get very complicated. You can certainly eliminate entries with the output going to X.

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.