الدارات التتابعية غير المتواقتة
الدارات التتابعية غير المتواقتة:( Asynchronou circuitsِ)
هي دارات تستخدم قلابات لتأمين تأخير زمني ما بين التغيرات في المستويات المنطقية على خطوط الحالة التالية والتغيرات الموافقة التالية على خطوط الحالة الراهنة.
- يبين الشكل (1)االبنية المنطقية لدارة تتابعية غير متزامنة:
فالتغيرات على خطوط المدخلX0,X1,…,Xn-1)) تحدث عادة عند حافة القدح للساعة وتستجيب لذلك مباشرة خطوط الحالة التالية ( Y0,Y1,…,Yk-1 ).
ولكن التغيرات الموافقة على خطوط الحالة الراهنة (y0,y1,….,yk-1)) تؤخر حتى ورود الحافة القادحة التالية للساعة. توحي هذه الوقائع بأن البنية المبينة بالشكل(2) يمكن أيضا حتى تمثل الدارة التتابعية .
وفي هذه البنية تم استبدال القلابات مكونات إلكترونية للتأخير ، وهذا التأخير هومن النوع الذي ينتج أثناء إرسال إشارة كهربائية عبر سلك أوعبر بوابة منطقية أوسلسلة من البوابات.
إن الفرق الأساسي ما بين التأخير الناتج في الشكل (1) والشكل(2) هوحتى التأخير في الحالة الثانية محدد بشكل تام بواسطة عنصر التأخير نفسه وليس بواسطة عامل خارجي مثل إشارة الساعة وعمليا يتضح حتى عناصر التأخير المبينة في الشكل(2) لا توضع في الدارة بشكل مخصوص وانما تمثل تأخير الانتشار للبوابات المشكلة للقسم المنطقي للنظام. عندماقد يكون النظام في الشكل (1) مستقراً في إحدى الحالات يمكن ان تكون المداخل(y0,y1,….,yk-1) مختلفة عن المخارج المنطقية (Y0,Y1,…..,Yk-1) بينما في النظام المبين في الشكل(2) يجب حتى تكون المداخل المنطقية مماثلة للمخارج المنطقية في مثل هذه الحالة. مع ذلك فإن تغير الخطوط (Y0,Y1,….,Yk-1) استجابة للتغير في خطوط الدخل(X0,X1,…,Xk-1) يفترض أن يؤدي إلى إختلاف الخطوط (Y)عن الخطوط (y)على الأقل خلال زمن التأخير.
وبما حتى هذا الإختلاف مرحلي ولفترة لا يمكن التحكم بها خارجياً هناك إعتراض من البعض على تسمية هذه المتحولات بمتحولات الحالة التالية والحالة الراهنة. وعوضاً عن ذلك يطلق غالباً على ال((Yإسم متحولات التحريض (Excitation)بينما يطلق على ال(y)اسم المتحولات الثانوية.(Secondary)
يمكن حتى تحتوي الدارة التتابعية المبينة في الشكل (1) والمستخدمة ل(k) قلاب و(k) خط حالة على 2^k)) حالة مستقلة. باللقاء يمكن التسقط بأن دارة الشكل(2) المستخدمة لعناصر التأخير ستحتوي على (2^k) حالة أيضاً.تسمى الدارات التتابعية المستخدمة للقلابات المزودة بساعة ب الأنظمة المتزامنة((Synchrnous systems )) وباللقاء تسمى الدارات المستخدمة لعناصر التاخير بالأنظمة غير المتزامنة.
وتاريخياً ظهرت الدارات غير المتزامنة قبل الدارات المتزامنة .ومع ذلك فإن الدارات المتزامنة أكثر إنتشاراً وذلك لسهولة تصميمها وعدم اعتمادها على زمن تأخير الإنتشار المتغير والغير معروف مسبقاً. تستخدم الدارات الغير متزامنة حالياً في مجالات محدودة فقط.
AsAP 1 chip: 36 processors
AsAP 2 chip: 167 processors
الخطر والدارات الغير متواقتة
إن عدم تساوي أزمنة تأخير الإنتشار في البوابات يؤدي إلى ظاهرة الخطر (Hazards)والتي تظهر كتغير قصير غير مقصود في المستوى المنطقي. لنأخذ مثلاً التابع المنطقي المعهد بواسطة جدول(k) المبين بالشكل(3).
ولنضم الحد الأدنى (m2) ¬مع الحد الأدنى (m6)لنحصل على الحد (Bc`)والحد الأدنى (m5)مع الحد الأدنى (m7) لنحصل على الحد(Ac). ولنرسم الدارة المنطقية المحققة لهذين الحدين كما هومبين في الشكل (4).
لنفرض الآن حتى الدخل (ABC=111)وأن c تغير إلى الصفر (c=0) ليصبح المدخل ( (ABC=110(أي وقع التغيير المشار إليه بسهم في الشكل(3)).
في البداية حينماقد يكون (p0)أي مخرج البوابة (p) مساوياً إلى الواحد (p0=1)ومخرج البوابة(qo) مساوياً الصفر(q0=0) نحصل على (z=1) ولكن إذا تغير (p0)إلى الصفر قبل تغير (q0)إلى الواحد فسوف تكون هناك فترة زمنيةقد يكون فيها (z=0). تسمى هذه الحالة التيقد يكون فيها الخرج بشكل دائم مساوإلى الواحد ولكن يمر في الحالة العابرة بالصفر ب الخطر الساكن (static hazard)في الواحد . كذلك توجد دارات بخطر ساكن في الصفر. كل الخطر في الدارات المتواقتة أية معضلة ولكن في الدارات غير المتواقتة يمكن للخطر أنيسبب انتنطق غير مقصود من حالة إلى أخرى. لذلك من الضروري في مثل هذه الدارات تتبع هذه الظاهرة بالتحليل أوبالتجريب لفهم هل تؤدي إلى عمل الدارة بشكل غير سليم أم لا. وفي حال الإيجاب يجب إتخاذ الإجراءات اللازمة للتخلص منها. •يتولد الخطر في الدارة (4)لأن التغير في(c) يمثل انتنطق زوج الحدود(m5+m7) إلى زوج الحدود (m2+m6). لذلك يعتمد الخرج (z=1) على كون الخرج (p0=1)أولاً ثم على كون الخرج(q0=1)ثانياً. •لتجنب هذه الظاهرة يجب إضافة حد زائد وهوالزوج (m6+m7=AB)أي إضافة بوابة زائدة تولد المنطق (1) بصورة مستقلة عن قيمة (c). ويظهر الشكل (5)الدارة السابقة وقد تمت إضافة مثل هذه البوابة إليها.
نستخدم هذه الطريقة أي إضافة بوابة زائدة بصورة عامة للتخلص من الخطر الساكن في معظم الدارات. هناك نوع آخر من الأخطار يسمى ب الخطر الديناميكي(dynamic hazard) ويحدث هذا الخطر عند التغير المقصود فمثلاً عند الرغبة في حصول التغيير(0)إلى (1).أي بعد حدوث التغيير المطلوب هناك عودة قصيرة إلى الحالة الأولية ثم إستقرار نهائي في المستوى الجديد. يمكن للخطر الديناميكي كالخطر الساكن حتى يسبب عمل الدارة بشكل غير سليم. هناك نوع آخر من الخطر يمكن حتى يظهر في الدارات الغير متواقتة وهوالخطر الأساسي (Essential hazard) فإذا أخذنا دارة محتوية على ممري التغذية العكسية على الأقل ومتحولي حالة(y0)(y1) فمن الممكن حتى تكون عملية التوليد والتغذية العكسية ل(y1) سريعة جداً بحيث يتغير(y1) قبل حتى تستطيع الدارة المولدة ل(y0) حتى تستجيب بشكل تام على التغير في الداخل.لذلك يمكن حتى تعمل الدارة بشكل غير سليم. لا يمكن إزالة الخطر الأساسي باستخدام بوابات إضافية والطريقة الوحيدة للتخلص منه هوالتحكم بأزمان التأخير.
اقرأ أيضا
- قلاب
- القلاب t
وصلات خارجية
- VLSI Computation Lab, UC Davis
- Asynchronous Array of Simple Processors (AsAP) project
- EETimes article describing AsAP