ضارب تسلسلي

الضارب التسلسلي 
 عملية الضرب التسلسلي 

0011

0111×

ــ

0011

00110+

001100+

0000000+

0010101

يعمل الضارب التسلسلي بشكل مشابه لطريقة الضرب اليدوبة لعددين عشريين إلا أنه يتعامل مع الأعداد الثنائية فحاصل ضرب العددX بالعددy هو العدد Z . فكل خانة من العدد y يتم ضربها بكافة خانات العدد x . وعندما ننتقل إلى الخانة الثانية في العدد Y نقوم بإزاحة ناتج الضرب بمقدار bit إلى اليسار.   ويتم جمع ناتج ضرب الخانة الأولى من العدد الثاني مع ناتج ضرب الخانة التي تليها من العدد الثاني مزاحاً خانة إلى اليسار وهكذا تتكرر العملية مع باقي الخانات. والشئالذي يميز الضارب التسلسلي هو تكرار عملية الجمع (بعدد خانات العدد الثاني-1)أما في عملية الضرب اليدوية فانه يتم الجمع مرة واحدة فقط والرسم التالي يوضح الضارب التسلسلي:  

 مم يتألف الضارب التسلسلي؟ 
 مسجل للضرب به n خانة من اجل تخزين العددx
 مسجل ازاحة ب 2n خانة من اجل تخزين العدد الثاني Y والناتج المرحلي
 مولّد لعملية الضرب MMG:Multiplicand Multiple Generator (عدد مرات تنفيذ الحلقة).
 جامع ذو N خانة
طريقة العمل:
بشكل ابتدائي يتم تخزين العدد X في مسجل الضرب، أما العدد الثاني Y فيتم تخزينه في الجزء Lower من مسجل الازاحة أي في موقع الخانة الاقل أهمية في حين الجزءUpper يخزن فيه الرقم0

هذا الضارب التسلسلي يشكل خطوة مكررة موصوفة في كل دورة للclk وبكلمات أخرى في كل دورة clk الخانة المضروبة Yi يتم قراءتها من القسم right الأكثر أهمية من مسجل الإزاحة أما العملية Xi*Yi فهي تنتج بواسطة MMG حيث: اما X أو 0 وذلك اعتماداًعلى حالة Yi هل هي 1أو0 ومن ثم ترسل إلى الجامع
ملاحظة
الخانة Nمن الناتج المرحلي تقرأ من القسمupperمن مسجل الإزاحة وأيضا ترسل إلى الجامع ومن ثم يتم ازاحة محتويات مسجل الإزاحة خانة واحدة إلى اليمين اما الخانة N+1من الناتج المرحلي (متضمنة الحمل)تخزن في الموقع العلويN+1 من مسجل الإزاحة

 طرق تسريع الضارب التسلسلي 
عن طريق معالجة خانات الضرب في كل دورة للclk فعندما يكون لدينا M خانة من العدد Y فانه يتم معالجتهافي كل دورة للclk بتشكيل N خانة ضرب خلال (N/K) للدورة الواحدة وهناك طريقتان لمعالجة خانات الضرب وهما:
1-الأولى تعمل على ترشيح خانات للضرب ومن ثم تختار خانة من بينهم تكون هي الأنسب
2-الثانية Mخانة للضرب ومن ثم تقوم بجمعهم في كل دورة.

 إشارات التحكم 

أولا: إشارات دخل:

1)إشارة إزاحة للمسجلينShift

2)إشارة كتابة لمسجل النتيجة Wresult

3)إشارة تصفير مسجل النتيجة Reset

4)إشارة كتابة في مسجلات المعاملاتWop

5)إشارة زيادة العدادInc

ثانيا: إشارات خرج:

1)OP0(المعامل:0-1)

2) counter = n-1(عداد الحلقة)

3)RESULT

 الأسلوب المنهجي لتصميم دارة التحكم للضارب التسلسلي 

1ـ تعريف مخطط حالة الدارة.

2ـ تحديد عدد قلابات الدارة من عدد حالات مخطط الحالة.

3ـ تحديد معادلات دخل الدارة.

4ـ تحقيق الدرة المطلوبة

 Initial state 
 معادلات دارة التحكم 
D0=Q0'+Q0+C.Q1

D1=O0.Q0'+Q1.Q0+C.Q1

Wop=Rest=Q1'.Q'0

Wres=Q1'.Q0

'Shift=Inc=Q1.Q0

حيث تم استخدام قلابات D

 مراجع 

 انظر أيضا 

 نظام عد ثنائي
 دارة رقمية

تصنيف:أنظمة عددية
تصنيف:حسابيات ثنائية
تصنيف:دارات رقمية