اختصار التوابع المنطقية بطريقة كوين ماكلوسكي
مثال

في هذا المثال يتضح كيف يتم اختصار التوابع المنطقية بطريقة كوين ماكلوسكي. الهدف ان نبحث عن معادلة تعطينا مجموع الاعداد 0,4,5,7,8,11,12 بأقل قدر من البوابات المنطقية، ما يعني أقل تكلفة وأكثر سرعة في الدوائر الإلكترونية المدمجة ([1]).
الخطوة الأولى
الجمع طبعا يجب أن يكون جمعا منطقيا (0,1)، ولذلك نكتب القيمة المنطقية للأعداد المذكورة (نظام عد ثنائي) وبما أن أكبر عدد عندنا هو 15: (1111 بالعد الثنائي)، هذا يعني أن أكبر عدد من المداخل نحتاجه هو 4 مداخل وهو عدد خانات الرقم الأكبر (15) ليحقق المطلوب. المداخل يرمز لها في هذا المثال بالأحرف w,x,y,z والتي تمثل القيم المنطقية للأعداد العشرية.
| z | y | x | w | الرقم العشري |
| --- | --- | --- | --- | --- |
0: 0
| 0 | 0 | 1 | 0 | 4 |
| 1 | 0 | 1 | 0 | 5 |
| 1 | 1 | 1 | 0 | 7 |
| 0 | 0 | 0 | 1 | 8 |
| 1 | 1 | 0 | 1 | 11 |
| 0 | 0 | 1 | 1 | 12 |
| 1 | 1 | 1 | 1 | 15 |
يتم ترتيب الأعداد بحسب عدد خانات ال (1) فيها، فيكون أعداد ال (1) للرقم صفر هو 0 وللرقمين أربعة (0100) وثمانية (1000) هو 1، ولهذا تكتب تحت بعضها، وهكذا دواليك للأرقام التي تحتوي على خانتين (11) للرقمين 5 و 12 وثلاث خانات (111) للرقمين 7 و 11 كما أن الرقم الأخير وهو 15 يحتوي على أربع خانات (1111) ولهذا يتم ترتيبه أسفل الجدول:
| z | y | x | w | minterm |
| --- | --- | --- | --- | --- |
| 0 | 0 | 0 | 0 | m0 |
| 0 | 0 | 1 | 0 | m4 |
| 0 | 0 | 0 | 1 | m8 |
| 1 | 0 | 1 | 0 | m5 |
| 0 | 0 | 1 | 1 | m12 |
| 1 | 1 | 1 | 0 | m7 |
| 1 | 1 | 0 | 1 | m11 |
| 1 | 1 | 1 | 1 | m15 |
الخطوة الثانية
بعد ترتيب الأرقام حسب أعداد خانات ال (1) (prim terms) نجمع كل عددين يختلفان في بت (bit) واحد فقط وهو ما يعرف بترميز غراي (Gray Coding) ونضع شَرطة (-) مكان الخانة التي فيها الاختلاف، فيتم الجمع كالتالي:
0 تجمع مع 4 : يختلفان في بت واحد وهو البت الثالث (بدأ من اليمين، أي من القيمة الصغرى) فيمكن جمعهما.
| 0 || 0 || 0 || 0 || 0


+


| 0 || 0 || 1 || 0 || 4


=


| 0 || 0 || - || 0 || (0,4)
نفس الأمر ينطبق على العددين 0 و 8، حيث يختلفان في مكان البت الرابع.
[4 مع 5] و [4 مع 12] و [8 مع 12] يجمعان أيضا لانطباق ترميز غراي، حيث يختلفان أيضا في موضع بت واحد أيضا.
[8 مع 12] بنفس الطريقة. لاحظ انه لا يمكن جمع 8 مع 5 لاختلافهما في أكثر من بت واحد:
| 0 || 0 || 0 || 1 || 8

+

| 1 || 0 || 1 || 0 || 5
الاختلاف واضح في 2 بت: الأول والثالث ولهذا لا يمكن الجمع بينهما.
تجمع [5 مع 7].
تجمع [7 مع 15] و [11 مع 15]
فيكون الناتج كالآتي:
| z | y | x | w | الأرقام العشرية (المجموع) |  |
| --- | --- | --- | --- | --- | --- |
| 0 | 0 | - | 0 | (0,4) | ✓ |
| 0 | 0 | 0 | - | (0,8) | ✓ |
| - | 0 | 1 | 0 | (4,5) |  |
| 0 | 0 | 1 | - | (4,12) | ✓ |
| 0 | 0 | - | 1 | (8,12) | ✓ |
| 0 | - | 1 | 0 | (5,7) |  |
| 1 | 1 | 1 | - | (7,15) |  |
| 1 | 1 | - | 1 | (11,15) |  |
نقوم بجمع الأزواج الناتجة من الخطوة السابقة والتي ينطبق عليها ترميز غراي ونضع إشارة✓ بجانب النواتج التي ينطبق عليها هذا بحيث تُستثنى من النتيجة النهائية.
| z | y | x | w | الأرقام العشرية (المجموع) |
| --- | --- | --- | --- | --- |
| 0 | 0 | - | - | (0,4 و (8,12) |
| 0 | 0 | - | - | (0,8) و (4,12) |
الخطوة الثالثة
في الخطوة قبل الأخيرة نرسم خريطة كارنوف لما وجدناه (يشير إلى الخانات التي لا تحتوي على إشارة ✓) في الجدولين السابقين (الخطوتين الثالثة والرابعة) ونضع إشارة x وتعني (dont care) هنا.
لكل ما تحتوي عليه المعادلة المرادفة.
| 15 | 12 | 11 | 8 | 7 | 5 | 4 | 0 | المعادلة |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|  | x |  | x |  |  | x | x |   {\overline {y}}\ {\overline {z}} |
|  |  |  |  |  | x | x |  |   {\overline {w}}\,x\,{\overline {y}} |
|  |  |  |  | x | x |  |  |   {\overline {w}}\,x\,z |
| x |  |  |  | x |  |  |  |   x\,y\,z |
| x |  | x |  |  |  |  |  |   w\,y\,z |
فمثلاً ( {\overline {y}}\ {\overline {z}}) تكون من جمع الأرقام (0,4) مع (8,12) ولهذا نضع إشارة x تحت هذه الخانات الأربعة وهكذا مع باقي المعادلات الناتجة.
أيضا يمكن اختصار المعادلتين الثانية والرابعة لانه يمكن الوصول إلى قيمها من المعادلات الأخرى.
بهذا تكون المعادلات المنطقية المطلوبة لإتمام عملية جمع الأرقام في المثال مختصرة بشكل كبير (مما يعني الحاجة إلى بوابات منطقية أقل) وتكون على الشكل النهائي التالي:
{\overline {y}}\ {\overline {z}} +  {\overline {w}}\,x\,z +  w\,y\,z