انحراف الساعة
انحراف الساعة (يُسمى أحيانًا انحراف التوقيت ) ظاهرةٌ في أنظمة الدوائر الرقمية المتزامنة (مثل أنظمة الحاسوب ) حيث تصل إشارة الساعة نفسها إلى مكونات مختلفة في أوقات مختلفة بسبب تأخير انتشار الإشارة عبر البوابات، أو في تقنيات أشباه الموصلات الأكثر تطورًا ، عبر الأسلاك . ويُطلق على الفرق اللحظي بين قراءتي أي ساعتين اسم انحرافهما.
تتم مزامنة معظم الدوائر الرقمية بواسطة إشارة دورية تُعرف باسم " الساعة "، والتي تحدد تسلسل ووتيرة عمل مكونات الدائرة. تُوزَّع هذه الساعة من مصدر واحد على جميع عناصر الذاكرة في الدائرة، والتي قد تكون، على سبيل المثال، مسجلات أو قلابات . في دائرة تستخدم مسجلات ذات حافة مُفعَّلة، عندما تصل حافة الساعة أو نبضة إلى مسجل، ينقل المسجل مدخله إلى مخرجه، وتتدفق قيم المخرج الجديدة هذه عبر منطق توافقي لتوفير القيم عند مداخل المسجل لنبضة الساعة التالية.
من الناحية المثالية، يصل مُدخل كل عنصر من عناصر الذاكرة إلى قيمته النهائية في الوقت المناسب لنبضة الساعة التالية، بحيث يمكن التنبؤ بسلوك الدائرة بأكملها بدقة. يجب أن تراعي السرعة القصوى التي يمكن أن يعمل بها النظام التباين الذي يحدث بين عناصر الدائرة المختلفة نتيجةً لاختلافات في التركيب الفيزيائي ودرجة الحرارة وطول المسار.
في الدائرة المتزامنة، يُقال إن سجلين، أو قلابين، "متجاورين تسلسليًا" إذا كان مسار منطقي يربط بينهما. بافتراض وجود سجلين متجاورين تسلسليًا R i و R j، حيث تكون أوقات وصول إشارة الساعة إلى طرفي ساعة سجل المصدر والوجهة مساوية لـ T C i و T C j على التوالي، يمكن تعريف انحراف الساعة على النحو التالي: T skew i, j = T C i − T C j .
تصميم الدوائر
قد ينتج انحراف إشارة الساعة عن عدة عوامل، مثل طول وصلات الأسلاك، وتغيرات درجة الحرارة، واختلافات المكونات الوسيطة، والاقتران السعوي ، وعيوب المواد، واختلافات سعة الإدخال على مداخل إشارة الساعة للأجهزة التي تستخدمها. ومع زيادة معدل تردد الساعة في الدائرة، يصبح التوقيت أكثر أهمية، ويقل هامش الخطأ المسموح به لضمان عمل الدائرة بشكل سليم.
يوجد نوعان من انحراف الساعة: الانحراف السالب والانحراف الموجب . يحدث الانحراف الموجب عندما يستقبل المسجل المستقبل إشارة الساعة متأخرًا عن المسجل المُرسِل. أما الانحراف السالب فهو عكس ذلك، حيث يستقبل المسجل المُرسِل إشارة الساعة متأخرًا عن المسجل المستقبل. ويشير انحراف الساعة الصفري إلى وصول إشارة الساعة في الوقت نفسه إلى كلٍّ من المسجل المُرسِل والمُستقبِل. [ 1 ]
انحراف ضار
هناك نوعان من المخالفات التي قد تنجم عن انحراف إشارة الساعة. تحدث المشكلة الأولى عندما تصل إشارة الساعة إلى المسجل الأول، وتنتقل إشارة الساعة المتجهة إلى المسجل الثاني أبطأ من خرج المسجل الأول إلى المسجل الثاني. يصل خرج المسجل الأول إلى مدخل المسجل الثاني أسرع، وبالتالي يتم تسجيله، مما يؤدي إلى استبدال البيانات الأولية في المسجل الثاني، أو ربما إتلاف سلامة البيانات المخزنة. يُسمى هذا النوع من المخالفات " مخالفة التثبيت" لأن البيانات السابقة لا تُحفظ لفترة كافية في قلاب الوجهة ليتم تسجيلها بشكل صحيح. أما المشكلة الثانية فتحدث إذا استقبل قلاب الوجهة إشارة الساعة قبل قلاب المصدر، حيث يكون لدى إشارة البيانات وقت أقل للوصول إلى قلاب الوجهة قبل وصول إشارة الساعة التالية. إذا لم يحدث ذلك، تحدث " مخالفة الإعداد" ، وذلك لأن البيانات الجديدة لم تُجهز ولم تستقر قبل وصول إشارة الساعة التالية. تُعد "مخالفة التثبيت" أكثر خطورة من "مخالفة الإعداد" لأنه لا يمكن إصلاحها بزيادة دورة الساعة. لا يمكن أن يؤثر الانحراف الموجب والانحراف السالب سلبًا على قيود توقيت الإعداد والاحتفاظ على التوالي (انظر المتباينات أدناه).
الانحراف المفيد
عندما تُشغّل إشارةٌ ما دائرةً ما، يجب تثبيت الإشارات/انتقالات الحالة التي تُطلقها قبل أن تُشير إلى مجموعة أخرى من انتقالات الحالة، وهذا يُحدّ من التردد الأعلى للساعة. وبالتالي، يُقلّل الانحراف من تردد الساعة الذي ستعمل عنده الدائرة بشكل صحيح. لكل مُسجّل مصدر ومُسجّل وجهة مُتصلين بمسار، يجب الالتزام بمُتباينات الإعداد والتثبيت التالية:
أين
- T هي الفترة الزمنية للساعة،
- يمثل reg تأخير إشارة الساعة من سجل المصدر إلى Q،
- هو المسار الذي يستغرق أطول وقت من المصدر إلى الوجهة،
- يمثل J الحد الأعلى للارتعاش،
- S هو وقت إعداد سجل الوجهة
- يمثل هذا انحراف التوقيت من سجلات المصدر إلى سجلات الوجهة،
- هو المسار الذي يتميز بأقصر تأخير من المصدر إلى الوجهة،
- يمثل H مدة الاحتفاظ بسجل الوجهة،
- هل انحراف الساعة بالنسبة لسجل الوجهة، و
- هو انحراف الساعة بالنسبة لسجل المصدر.
تُعدّ انحرافات الساعة الموجبة مفيدةً لتصحيح أخطاء الإعداد، ولكنها قد تتسبب في أخطاء التثبيت. أما انحرافات الساعة السالبة فتُساعد على تجنب أخطاء التثبيت، ولكنها قد تتسبب في أخطاء الإعداد.
في المتباينات المذكورة أعلاه، يُستخدم مُعامل واحد، J ، لحساب الارتعاش . يجب أن يكون هذا المُعامل حدًا أعلى للفرق في الارتعاش بين جميع أزواج سجلات المصدر/الوجهة. مع ذلك، إذا كانت بنية شبكة توزيع الساعة معروفة، فقد يكون لأزواج سجلات المصدر/الوجهة المختلفة مُعاملات ارتعاش مختلفة، وقد تُستخدم قيمة ارتعاش مختلفة لقيد التثبيت مُقارنةً بقيمة قيد الإعداد. على سبيل المثال، إذا كان سجل المصدر وسجل الوجهة يستقبلان إشارات الساعة من مُخزن مؤقت مشترك قريب ، فقد يكون حد الارتعاش لقيد التثبيت صغيرًا جدًا، لأن أي تغيير في إشارة الساعة سيؤثر على السجلين بالتساوي. في المثال نفسه، يجب أن يكون حد الارتعاش لقيد الإعداد أكبر من حد الارتعاش لقيد التثبيت، لأن الارتعاش قد يختلف من نبضة ساعة إلى أخرى. إذا تلقى سجل المصدر إشارة الساعة الخاصة به من مخزن مؤقت طرفي لشبكة توزيع الساعة بعيدًا عن المخزن المؤقت الطرفي الذي يغذي سجل الوجهة، فسيتعين أن يكون حد الارتعاش أكبر لمراعاة مسارات الساعة المختلفة إلى السجلين، والتي قد يكون لها مصادر ضوضاء مختلفة متصلة بها.


يوضح الشكلان 1 و2 حالةً يُمكن فيها أن يُفيد انحراف التوقيت المُتعمّد دائرةً متزامنة. [ 2 ] في دائرة الانحراف الصفري الموضحة في الشكل 1، يمتد مسار طويل من القلاب FF1 إلى القلاب FF2، ومسار قصير، كمسار مُسجّل الإزاحة، من FF2 إلى FF3. يُعدّ المسار FF2 -> FF3 قريبًا جدًا من حدوث انتهاك لحالة التثبيت: فإذا حدث تأخير إضافي بسيط في توقيت الساعة عند FF3، فقد يؤدي ذلك إلى تلف البيانات عند المدخل D للقلاب FF3 قبل وصول إشارة الساعة لتمريرها إلى المخرج Q للقلاب FF3. قد يحدث هذا حتى لو كان القلابان FF2 وFF3 متجاورين فعليًا، إذا كانت مدخلات توقيتهما تأتي من مُخزنات طرفية مُختلفة في شبكة توزيع التوقيت.
يوضح الشكل 2 كيفية حل المشكلة باستخدام انحراف زمني مقصود. يتم إدخال تأخير إضافي بسيط قبل مدخل الساعة لـ FF2، مما يضمن وضع مسار FF2 -> FF3 بعيدًا عن نقطة انتهاك شرط التثبيت. كميزة إضافية، يُخفف هذا التأخير الزمني الإضافي نفسه قيد الإعداد لمسار FF1 -> FF2. يمكن لمسار FF1 -> FF2 العمل بشكل صحيح بفترة ساعة أقل من تلك المطلوبة في حالة انحراف الساعة الصفري، بمقدار يساوي تأخير مخزن التأخير الزمني المُضاف.
من المفاهيم الخاطئة الشائعة حول انحراف الساعة المتعمد أنه بالضرورة أكثر خطورة من انحراف الساعة الصفري، أو أنه يتطلب تحكمًا أدق في التأخيرات في شبكة توزيع الساعة. مع ذلك، فإن دائرة انحراف الساعة الصفري الموضحة في الشكل 1 هي الأقرب إلى العطل - إذ أن مقدارًا ضئيلاً من انحراف الساعة الموجب للزوج FF2 -> FF3 سيؤدي إلى انتهاك شرط التثبيت، بينما دائرة انحراف الساعة المتعمد الموضحة في الشكل 2 أكثر تسامحًا مع تغيرات التأخير غير المقصودة في توزيع الساعة.
الانحراف الأمثل
إذا نُظر إلى أوقات وصول إشارة الساعة إلى كل سجل على حدة كمتغيرات تُضبط لتقليل دورة الساعة مع مراعاة متباينات الإعداد والتثبيت لجميع المسارات عبر الدائرة، فإن النتيجة هي مسألة برمجة خطية . [ 3 ] في هذه البرمجة الخطية، يُعدّ انحراف الساعة الصفري مجرد نقطة ممكنة - إذ يُعطي حل البرنامج الخطي عمومًا دورة ساعة أقل مما يتحقق عند انعدام الانحراف. إضافةً إلى ذلك، يمكن ضمان هوامش أمان أكبر من أو تساوي حالة انعدام الانحراف عن طريق ضبط أوقات الإعداد والتثبيت وحدود الارتعاش بشكل مناسب في البرنامج الخطي.
نظراً لبساطة هذا البرنامج الخطي، تتوفر خوارزمية سهلة البرمجة للوصول إلى الحل. [ 2 ] تحتوي معظم أنظمة التصميم بمساعدة الحاسوب (CAD) لتصميم الدوائر المتكاملة واسعة النطاق (VLSI) ومصفوفات البوابات المنطقية القابلة للبرمجة (FPGA) على أدوات لتحسين انحرافات الساعة.
الخلط بين انحراف الساعة وارتعاش الساعة
إضافةً إلى انحراف التوقيت الناتج عن الاختلافات الثابتة في زمن استجابة التوقيت من مصدر التوقيت إلى كل مسجل مُوَقَّع، لا توجد إشارة توقيت دورية تمامًا، لذا فإن فترة التوقيت أو زمن دورة التوقيت يختلف حتى في المكون الواحد، ويُعرف هذا الاختلاف باسم ارتعاش التوقيت . عند نقطة معينة في شبكة توزيع التوقيت، يُعدّ الارتعاش المساهم الوحيد في عدم دقة توقيت التوقيت.
كتقريب، من المفيد غالبًا مناقشة عدم اليقين الكلي في توقيت الساعة بين سجلين باعتباره مجموع انحراف الساعة المكاني (الاختلافات المكانية في زمن استجابة الساعة من مصدرها)، وارتعاش الساعة (أي عدم دورية الساعة عند نقطة معينة في الشبكة). لسوء الحظ، يتغير انحراف الساعة المكاني بمرور الوقت من دورة إلى أخرى بسبب التغيرات المحلية المعتمدة على الزمن في مصدر الطاقة، ودرجة الحرارة المحلية، وتداخل الضوضاء مع الإشارات الأخرى.
لذا، في الحالة المعتادة لإرسال واستقبال البيانات من سجلات في مواقع مختلفة، لا توجد طريقة واضحة لفصل عدم اليقين الكلي في توقيت الساعة إلى انحراف مكاني وارتعاش. لذلك، يستخدم بعض الباحثين مصطلح "انحراف الساعة" لوصف مجموع الانحراف المكاني وارتعاش الساعة. وهذا يعني بالطبع أن انحراف الساعة بين نقطتين يختلف من دورة إلى أخرى، وهو تعقيد نادرًا ما يُذكر. بينما يستخدم باحثون آخرون مصطلح "انحراف الساعة" فقط للإشارة إلى التباين المكاني لأوقات الساعة، ويستخدمون مصطلح "ارتعاش الساعة" لتمثيل ما تبقى من عدم اليقين الكلي في توقيت الساعة. وهذا يعني بالطبع أن ارتعاش الساعة يجب أن يختلف في كل مكون، وهو أمر نادرًا ما يُناقش أيضًا.
لحسن الحظ، في كثير من الحالات، يظل انحراف الساعة المكانية ثابتًا إلى حد ما من دورة إلى أخرى، بحيث يمكن تقريب بقية عدم اليقين الكلي في توقيت الساعة بشكل جيد من خلال قيمة واحدة مشتركة لارتعاش الساعة.
على شبكة
في شبكة مثل الإنترنت ، يُشير انحراف الساعة إلى الفرق في التردد ( المشتق الأول للإزاحة الزمنية ) بين الساعات المختلفة داخل الشبكة. [ 4 ] قد تتأثر عمليات الشبكة التي تتطلب طوابع زمنية قابلة للمقارنة بين الأجهزة بانحراف الساعة. وقد صُممت العديد من البروتوكولات (مثل بروتوكول وقت الشبكة ) لتقليل انحراف الساعة، وتحسين استقرار الأداء. كما قد تستخدم بعض التطبيقات (مثل خوادم الألعاب ) آليات مزامنة خاصة بها لتجنب مشاكل الموثوقية الناتجة عن انحراف الساعة.
واجهات
يُعد انحراف الساعة هو السبب في تفضيل الواجهات التسلسلية (مثل Serial Attached SCSI أو USB ) على الواجهات المتوازية (مثل parallel SCSI ) عند السرعات العالية أو المسافات الطويلة.
انظر أيضاً
مراجع
- فريدمان، إيبي ج. (1995). شبكات توزيع الساعة في دوائر وأنظمة VLSI . مطبعة IEEE. ISBN 978-0-7803-1058-2.
- فريدمان، إيبي ج. (مايو 2001). "شبكات توزيع الساعة في الدوائر المتكاملة الرقمية المتزامنة" (ملف PDF) . وقائع معهد مهندسي الكهرباء والإلكترونيات . 89 (5): 665-692 . CiteSeerX 10.1.1.7.7824 . doi : 10.1109/5.929649 . مؤرشف من النسخة الأصلية (PDF) بتاريخ 1 يونيو 2015. تاريخ الاسترجاع : 9 يناير 2017 .
- تام، س.؛ ليماي، د.ل.؛ ديساي، أ.ن. (أبريل 2004). "توليد وتوزيع إشارة الساعة لمعالج إيتانيوم 2 بتقنية 130 نانومتر مع ذاكرة تخزين مؤقتة من المستوى الثالث مدمجة بسعة 6 ميجابايت". مجلة IEEE للدوائر المتكاملة . 39 (4). doi : 10.1109/JSSC.2004.825121 . S2CID 31388328 .
- ↑ فريدمان، إي جي. تصميم توزيع الساعة في دوائر VLSI - نظرة عامة ، ندوة IEEE الدولية للدوائر والأنظمة لعام 1993 (ص 1475-1478). IEEE، 1993.
- 1 2 ماهيشواري، ن.، وساباتنيكار، إس إس، تحليل التوقيت وتحسين الدوائر التسلسلية ، كلوير، 1999.
- ↑ فيشبورن، جيه بي (يوليو 1990). "تحسين انحراف الساعة" (ملف PDF) . معاملات IEEE في مجال الحوسبة . 39 (7): 945-951 . doi : 10.1109/12.55696 .
- ↑ ميلز، د. (1992). "بروتوكول وقت الشبكة (الإصدار 3): المواصفات والتنفيذ والتحليل" . tools.ietf.org . doi : 10.17487/RFC1305 . تاريخ الاسترجاع: 30 أكتوبر 2017 .
- المعايير الكهربائية
- إشارة الساعة
