canonical forms

Hi all,

I was recently reading the book "Write Great code by ryndall Hyde" in this in chapter 8 the following are given.

given n input variables there are two raised to two raised to n unique Boolean functions ex:- for 2 i/p variables there are 16 different functions.

then he mentions about canonical forms. he says about sum of min terms and sum of product form.

now my questions are as follows

1) what exactly is the purpose of canonical forms,especially sum of min terms, where is it applied??

2)author says that for each different Boolean function, we can choose a single canonical representation of that function. I am not getting this point, can any one explain

pls note i am by no means an expert in these matters so please be kind. only a beginner

Reply to
sulekha
Loading thread data ...

This is sci.electronics.basics . All beginners are welcome here. :-)

Problem is, even after reading the wiki article,

formatting link

I still don't know what it means. =:-O

I guess it's something like a standardized format, such that each value can be uniquely represented in the same "formula" by just plugging in the parameters.

I'm sure that someone will be happy to clarify that further. :-)

Good Luck! Rich

Reply to
Rich Grise

It is a little abstract, and you can go through life happily designing logic without dealing with this stuff. But it doesn't hurt, either.

formatting link

Classic PAL and PEEL (cpld) architectures hardware implemented logic equations as sums of products, ie in minterm form.

Nowadays, manual logic minimization is not done a lot. Logic tends to be done in FPGAs, which are lookup-table based; a LUT can directly map any n-bit input (say, 4 or 5 input bits) into any 1-bit output function, by brute force. And logic compilers handle the gory details for you, so nowadays it's more important to write clear, comprehensable (but not minimal) equations, and let the compiler map it to the hardware.

I think he's saying that any function can be unambiguously factored into a standard form. Or something. If you were writing a compiler, that sort of thing probably matters.

I just design logic, without ever being taught how. That 'canonical' stuff seems kinda fru-fru to me.

John

Reply to
John Larkin

[...]

[...]

"Great code". Yep. Fru-Fru, pretentious, pompous, affected. An ongoing work but programmers can celebrate being nearly fully adrift from the shores of reality.

Reply to
john jardine

Well, that's what abstraction is for.

John

Reply to
John Larkin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.