المنطق الديناميكي (الإلكترونيات الرقمية)

مسجل إزاحة ديناميكي 64 بت بتقنية PMOS مع معدل ساعة أدنى يبلغ 10  كيلو هرتز، تم تصنيعه عام 1981

في تصميم الدوائر المتكاملة ، تُعدّ المنطق الديناميكي (أو أحيانًا المنطق الموقوت ) منهجية تصميم في دوائر المنطق التوافقي ، لا سيما تلك المُنفذة بتقنية أشباه الموصلات المعدنية المؤكسدة (MOS). ويتميز عن المنطق الثابت باستغلاله للتخزين المؤقت للمعلومات في السعات الطفيلية وسعات البوابات . [ 1 ] وقد شاع استخدامه في سبعينيات القرن الماضي، وشهد مؤخرًا عودةً قوية في تصميم الإلكترونيات الرقمية عالية السرعة ، وخاصة وحدات المعالجة المركزية (CPU). عادةً ما تكون دوائر المنطق الديناميكي أسرع من نظيراتها الثابتة وتتطلب مساحة سطح أقل، ولكنها أكثر صعوبة في التصميم. يتميز المنطق الديناميكي بمعدل انتقالات جهد أعلى من المنطق الثابت، [ 2 ] ولكن الأحمال السعوية التي يتم نقلها أصغر [ 3 لذا قد يكون استهلاك الطاقة الإجمالي للمنطق الديناميكي أعلى أو أقل اعتمادًا على المفاضلات المختلفة. عند الإشارة إلى عائلة منطقية معينة ، عادةً ما تكفي صفة "ديناميكي" لتمييز منهجية التصميم، مثل تصميم CMOS الديناميكي [ 4 ] أو تصميم SOI الديناميكي . [ 2 ]

إلى جانب استخدامها لتخزين الحالة الديناميكية عبر الفولتية على المكثفات، تتميز المنطق الديناميكي عن المنطق الثابت باستخدام إشارة ساعة في تنفيذه للمنطق التوافقي. يُستخدم إشارة الساعة عادةً لمزامنة الانتقالات في دوائر المنطق التتابعي . في معظم تطبيقات المنطق التوافقي، لا تكون إشارة الساعة ضرورية. يرتبط مصطلحا "ثابت/ديناميكي" المستخدمان للإشارة إلى الدوائر التوافقية باستخدام نفس الصفات المستخدمة لتمييز أجهزة الذاكرة، مثل ذاكرة الوصول العشوائي الثابتة (SRAM ) عن ذاكرة الوصول العشوائي الديناميكية (DRAM) ، حيث تخزن ذاكرة الوصول العشوائي الديناميكية الحالة ديناميكيًا على شكل فولتية على المكثفات، والتي يجب تحديثها دوريًا. ولكن هناك أيضًا اختلافات في الاستخدام؛ إذ يمكن إيقاف الساعة في المرحلة المناسبة في نظام ذي منطق ديناميكي وتخزين ثابت. [ 5 ]

المنطق الثابت مقابل المنطق الديناميكي

يتمثل الفرق الأكبر بين المنطق الثابت والمنطق الديناميكي في أن المنطق الديناميكي يستخدم إشارة ساعة لتقييم الدوائر المنطقية التوافقية . أما في معظم أنواع تصميم المنطق، والتي تُسمى المنطق الثابت ، فتوجد دائمًا آلية ما لضبط خرج الدائرة إما على مستوى عالٍ أو منخفض. في العديد من أنماط المنطق الشائعة، مثل TTL و CMOS التقليدي ، يمكن إعادة صياغة هذا المبدأ على أنه يوجد دائمًا مسار تيار مستمر ذو مقاومة منخفضة بين الخرج وجهد التغذية أو الأرض . تجدر الإشارة إلى وجود استثناء لهذا التعريف في حالة المخارج ذات المقاومة العالية ، مثل مُخزن ثلاثي الحالة ؛ ومع ذلك، حتى في هذه الحالات، يُقصد استخدام الدائرة ضمن نظام أكبر حيث توجد آلية ما لضبط الخرج، ولا تُعتبر هذه الدوائر منفصلة عن المنطق الثابت.

على النقيض من ذلك، في المنطق الديناميكي ، لا توجد دائمًا آلية تُفعّل أو تُعطّل الخرج. في النسخة الأكثر شيوعًا لهذا المفهوم، يُفعّل أو يُعطّل الخرج خلال أجزاء محددة من دورة الساعة. خلال الفترات الزمنية التي لا يُفعّل فيها الخرج بشكل فعّال، تتسبب السعة الطفيلية في الحفاظ على مستوى ضمن نطاق سماحية معين من المستوى المُفعّل.

تتطلب المنطق الديناميكي معدل ساعة أدنى سريع بما يكفي لاستخدام حالة الإخراج لكل بوابة ديناميكية أو تحديثها قبل أن تتسرب الشحنة في سعة الإخراج بما يكفي للتسبب في تغيير الحالة الرقمية للإخراج، خلال جزء من دورة الساعة التي لا يتم فيها تشغيل الإخراج بشكل فعال.

لا يوجد حد أدنى لتردد الساعة في المنطق الثابت ، إذ يمكن إيقاف الساعة مؤقتًا إلى أجل غير مسمى. ورغم أن التوقف عن العمل لفترات طويلة قد يبدو غير مفيد، إلا أنه يؤدي إلى ثلاث مزايا:

  • إن القدرة على إيقاف النظام مؤقتًا في أي وقت تجعل عملية تصحيح الأخطاء والاختبار أسهل بكثير، مما يتيح استخدام تقنيات مثل التنفيذ خطوة بخطوة .
  • إن القدرة على تشغيل النظام بترددات ساعة منخفضة للغاية تسمح للإلكترونيات منخفضة الطاقة بالعمل لفترة أطول على بطارية معينة.
  • يمكن للنظام الثابت تمامًا أن يستأنف عمله فورًا من حيث توقف؛ فلا يتعين على المستخدم انتظار بدء تشغيل النظام أو استئناف عمله. [ 6 ]

Being able to pause a system at any time for any duration can also be used to synchronize the CPU to an asynchronous event. While there are other mechanisms to do this, such as interrupts, polling loops, processor idling input pins (for example, RDY on the 6502), or processor bus cycle extension mechanisms such as WAIT inputs, using hardware to gate the clock to a static-core CPU is simpler, is more temporally precise, uses no program code memory, and uses almost no power in the CPU while it is waiting. In a basic design, to start waiting, the CPU would write to a register to set a binary latch bit which would be ANDed or ORed with the processor clock, stopping the processor. A signal from a peripheral device would reset this latch, resuming CPU operation. The hardware logic must gate the latch control inputs as necessary to ensure that a latch output transition does not cause the clock signal level to instantaneously change and cause a clock pulse, either high or low, that is shorter than normal.

In particular, although many popular CPUs use dynamic logic, only static cores—CPUs designed with fully static technology—are usable in space satellites owing to their higher radiation hardness.[7]

When properly designed, dynamic logic can be over twice as fast as static logic. It uses only the faster NMOS transistors, which improves transistor sizing optimizations. Static logic is slower because it has twice the capacitiveloading, higher thresholds, and uses slow PMOS transistors for logic. Dynamic logic can be harder to work with, but it may be the only choice when increased processing speed is needed. Most electronics running at over 2 GHz these days require dynamic logic, although some manufacturers such as Intel have designed chips using completely static logic to reduce power consumption.[8] Note that reducing power use not only extends the running time with limited power sources such as batteries or solar arrays (as in spacecraft), but it also reduces the thermal design requirements, reducing the size of needed heatsinks, fans, etc., which in turn reduces system weight and cost.

In general, dynamic logic greatly increases the number of transistors that are switching at any given time, which increases power consumption over static CMOS.[8] There are several power-saving techniques that can be implemented in a dynamic logic based system. In addition, each rail can convey an arbitrary number of bits, and there are no power-wasting glitches. Power-saving clock gating and asynchronous techniques are much more natural in dynamic logic.

Static logic example

كمثال على ذلك، ضع في اعتبارك التنفيذ المنطقي الثابت لبوابة CMOS NAND:

تُنفذ هذه الدائرة وظيفة المنطق

ياuت=أب¯{\displaystyle Out={\overline {AB}}}

إذا كانت قيمتا A و B مرتفعتين، فسيتم خفض مستوى الإشارة الخارجة. أما إذا كانت قيمة A أو B منخفضة، فسيتم رفع مستوى الإشارة الخارجة. وفي جميع الأوقات، تكون الإشارة الخارجة إما منخفضة أو مرتفعة.

مثال على المنطق الديناميكي

لنفترض الآن تطبيقًا منطقيًا ديناميكيًا لنفس الوظيفة المنطقية:

تتطلب دائرة المنطق الديناميكي مرحلتين. المرحلة الأولى، عندما تكون إشارة الساعة منخفضة، تُسمى مرحلة الإعداد أو مرحلة الشحن المسبق ، والمرحلة الثانية، عندما تكون إشارة الساعة عالية، تُسمى مرحلة التقييم . في مرحلة الإعداد، يكون خرج الدائرة عاليًا دائمًا (بغض النظر عن قيم المدخلين A و B ). يتم شحن المكثف ، الذي يمثل سعة الحمل لهذه البوابة. ولأن الترانزستور الموجود في الأسفل يكون مطفأً، يستحيل أن يكون خرج الدائرة منخفضًا خلال هذه المرحلة.

خلال مرحلة التقييم ، تكون إشارة الساعة عالية. إذا كانت الإشارتان A و B عاليتين أيضاً، فسيتم خفض مستوى الإشارة الخارجة. وإلا، فستبقى الإشارة الخارجة عالية (بسبب سعة الحمل).

يُعاني المنطق الديناميكي من بعض المشاكل المحتملة التي لا يُعاني منها المنطق الثابت. على سبيل المثال، إذا كانت سرعة الساعة بطيئة للغاية، فسيتلاشى خرج الإشارة بسرعة كبيرة تجعله غير قابل للاستخدام. كذلك، يكون خرج الإشارة صالحًا لجزء فقط من كل دورة ساعة، لذا يجب على الجهاز المتصل به أخذ عينات منه بشكل متزامن عندما يكون صالحًا.

كذلك، عندما يكون كل من A و B في حالة عالية، وبالتالي يكون الخرج منخفضًا، تقوم الدائرة بتفريغ شحنة مكثف واحد من Vdd إلى الأرض في كل دورة ساعة، وذلك عن طريق شحن المكثف أولًا ثم تفريغه في كل دورة ساعة. هذا يجعل الدائرة (مع توصيل خرجها بمقاومة عالية) أقل كفاءة من النسخة الثابتة (التي نظريًا لا تسمح بمرور أي تيار إلا عبر الخرج). وعندما يكون كل من مدخلي A و B ثابتين وفي حالة عالية، تستهلك بوابة NAND الديناميكية طاقة تتناسب مع معدل الساعة ، طالما أنها تعمل بشكل صحيح. يمكن تقليل استهلاك الطاقة عن طريق الحفاظ على سعة الحمل منخفضة. وهذا بدوره يقلل من الحد الأقصى لزمن الدورة، مما يتطلب تردد ساعة أدنى أعلى؛ ويؤدي التردد الأعلى إلى زيادة استهلاك الطاقة وفقًا للعلاقة المذكورة. لذلك، من المستحيل تقليل استهلاك الطاقة في وضع الخمول (عندما يكون كلا المدخلين في حالة عالية) إلى ما دون حد معين ناتج عن التوازن بين سرعة الساعة وسعة الحمل.

يُعد منطق الدومينو أحد التطبيقات الشائعة .

انظر أيضاً

مراجع

  1. لارس وانهامر (1999). الدوائر المتكاملة لمعالجة الإشارات الرقمية . دار النشر الأكاديمية. ص  37. ISBN 978-0-12-734530-7.
  2. 1 2 أندرو مارشال؛ سريدهار ناتاراجان (2002). تصميم SOI: تقنيات تناظرية وذاكرة ورقمية . سبرينغر. ص 125. ISBN  978-0-7923-7640-8.
  3. أ. ألبرت راج، ت. لاثا (21 أكتوبر 2008). تصميم الدوائر المتكاملة واسعة النطاق (VLSI) . دار نشر PHI Learning Pvt. Ltd.، صفحة 167. ISBN  978-81-203-3431-1.
  4. بروس جاكوب؛ سبنسر نغ؛ ديفيد وانغ (2007). أنظمة الذاكرة: ذاكرة التخزين المؤقت، وذاكرة الوصول العشوائي الديناميكية، والقرص . مورغان كوفمان. ص 270. ISBN  978-0-12-379751-3.
  5. ديفيد هاريس (2001). تصميم الدوائر المقاومة للانحراف . مورغان كوفمان. ص 38. ISBN  978-1-55860-636-4.
  6. ريتشارد موراي. "أجهزة PocketBook II" .
  7. غولزوف، بيتر. "لا متعة بدون RISC!" . AMSAT-DL . ترجمة: مو، دون. مؤرشف من الأصل في 13 أبريل 2013. تم الاطلاع عليه في 15 سبتمبر 2021 .
  8. 1 2 "الفارس المظلم: معالج Intel Core i7" . مؤرشف من الأصل في 30 يناير 2009.

مراجع عامة

  • سونغ-مو كانغ؛ يوسف ليبلبيجي (2003). الدوائر المتكاملة الرقمية بتقنية CMOS: التحليل والتصميم (  الطبعة الثالثة). ماكجرو-هيل. ISBN 978-0-07-246053-7.الفصل التاسع، "دوائر المنطق الديناميكي" (الفصل السابع في الطبعة الثانية)
  • آر. جاكوب بيكر (2010). CMOS: تصميم الدوائر، والتخطيط، والمحاكاة (  الطبعة الثالثة). وايلي-IEEE. ISBN 978-0-470-88132-3.الفصل 14، "بوابات المنطق الديناميكي"
  • أندرو مارشال؛ سريدهار ناتاراجان (2002). تصميم SOI: تقنيات تناظرية وذاكرة ورقمية . سبرينغر. ISBN 978-0-7923-7640-8.الفصل السابع، "تصميم SOI الديناميكي"