مسجل الإزاحة

دائرة متكاملة تحتوي على مسجل إزاحة متوازي الإدخال/متوازي الإخراج بخمسة بتات (Mitsubishi M74LS96P)

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

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

يمكن أن تحتوي مسجلات الإزاحة على مداخل ومخارج متوازية ومتسلسلة . غالبًا ما تُهيأ هذه المسجلات على شكل "مدخل متسلسل، مخرج متوازي" (SIPO) أو "مدخل متوازي، مخرج متسلسل" (PISO) . توجد أيضًا أنواع تحتوي على مدخلات متوازية ومتسلسلة، وأنواع أخرى تحتوي على مخرجات متوازية ومتسلسلة. كما توجد مسجلات إزاحة "ثنائية الاتجاه"، والتي تسمح بالإزاحة في كلا الاتجاهين: من اليسار إلى اليمين أو من اليمين إلى اليسار . يتم توصيل المدخل والمخرج المتسلسلين لمسجل الإزاحة لإنشاء مسجل إزاحة دائري . مسجل PIPO (مدخل متوازي، مخرج متوازي) هو ببساطة مسجل من النوع D وليس مسجل إزاحة، ولكنه سريع جدًا - حيث يتم إخراج البيانات خلال نبضة ساعة واحدة. يوفر مسجل الإزاحة "العالمي" مدخلات ومخرجات متسلسلية ثنائية الاتجاه، بالإضافة إلى مدخلات ومخرجات متوازية.    

الإدخال التسلسلي والإخراج التسلسلي (SISO)

في مسجل الإزاحة التسلسلي ذي المدخلات والمخرجات المتسلسلة، تُعرض البيانات المراد تخزينها بتًا واحدًا في كل مرة عند مدخل البيانات التسلسلي (SD IN ). عند كل حافة صاعدة لإشارة الساعة (الانتقال من مستوى منطقي منخفض إلى مستوى منطقي مرتفع )، تُخزن بيانات الإدخال في القلاب الأول ، ويُخزن خرج (Q) كل قلاب في القلاب التالي على يمينه، مما يؤدي إلى إزاحة البت الجديد وجميع البتات الأخرى موضعًا واحدًا إلى اليمين. يظهر بت البيانات الذي تم إزاحته إلى القلاب الأيمن على مخرج البيانات التسلسلي (SD OUT ). أما البت الذي كان مخزنًا سابقًا في القلاب الأيمن فيتم استبداله وفقدانه.

مثال

مثال على مسجل إزاحة 4 بت مع مدخل بيانات 10110000، البت الأكثر أهمية أولاً، وتخزين مبدئي 0000
وقت
الناتج 1
المخرج 2
الناتج 3
الناتج 4
00000
11000
20100
31010
41101
50110
60011
70001
80000

عند إدخال البيانات، يتم عرض التسلسل 1,0,1,1,0,0,0,0 (بهذا الترتيب)، مع نبضة ساعة عند كل بت، وهذه هي النتيجة. يتوافق العمود الأيمن مع طرف الإخراج للقلاب الأيمن، وهكذا.

إذن، يكون خرج التسلسل للقيمة الكاملة هو 00010110. يتضح أنه في حال استمرار إدخال البيانات، سيتم الحصول على القيمة المدخلة تمامًا (10110000)، ولكن بإزاحة قدرها أربع دورات ساعة. هذا الترتيب هو المكافئ المادي لطابور الانتظار . كذلك، يمكن في أي وقت إعادة ضبط السجل بالكامل إلى الصفر عن طريق رفع مستوى جهد دبابيس إعادة الضبط (R).

الإدخال التسلسلي والإخراج المتوازي (SIPO)

يُتيح هذا التكوين التحويل من تنسيق تسلسلي إلى تنسيق متوازي. مدخلات البيانات تسلسلية، كما هو موضح في قسم SISO أعلاه. بمجرد إدخال البيانات، يمكن قراءتها من كل مخرج في وقت واحد، أو يمكن إخراجها على مراحل.

في هذا التكوين، يتم تشغيل كل قلاب بحافة الإشارة . تعمل جميع القلابات بتردد الساعة المحدد. ينتقل كل بت من المدخلات إلى المخرج رقم N بعد N دورة ساعة، مما يؤدي إلى مخرج متوازٍ.

في الحالات التي لا ينبغي فيها تغيير المخرجات المتوازية أثناء عملية التحميل التسلسلي، يُفضّل استخدام مخرج مُثبّت أو مُخزّن مؤقتًا . في مسجل الإزاحة المُثبّت (مثل 74595 )، تُحمّل البيانات التسلسلية أولًا في مسجل تخزين مؤقت داخلي، ثم عند استلام إشارة تحميل، تُنسخ حالة مسجل التخزين المؤقت إلى مجموعة من مسجلات الإخراج. بشكل عام، يتمثل التطبيق العملي لمسجل الإزاحة التسلسلي/المتوازي في تحويل البيانات من تنسيق تسلسلي على سلك واحد إلى تنسيق متوازي على عدة أسلاك.

الإدخال المتوازي والإخراج التسلسلي (PISO)

في هذا التكوين، يتم إدخال البيانات على الخطوط من D1 إلى D4 بشكل متوازٍ. لكتابة البيانات في المسجل، يجب إبقاء خط التحكم Write/Shift منخفضًا. ولإزاحة البيانات، يتم رفع مستوى خط التحكم W/S وتفعيل نبضات الساعة للمسجلات. يعمل هذا الترتيب الآن كمسجل إزاحة PISO، حيث يكون D1 هو مدخل البيانات. مع ذلك، طالما أن عدد دورات الساعة لا يتجاوز طول سلسلة البيانات، فإن مخرج البيانات Q سيكون هو البيانات المقروءة بالتوازي بالترتيب.

مسجل إزاحة PISO ذو 4 بت

يُظهر الرسم المتحرك أدناه تسلسل الكتابة/الإزاحة، بما في ذلك الحالة الداخلية لمسجل الإزاحة.

الاستخدامات

مسجل إزاحة مزدوج SIPO من توشيبا TC4015BP

التحويل التسلسلي والمتوازي

أحد أكثر استخدامات مسجل الإزاحة شيوعًا هو التحويل بين الواجهات التسلسلية والمتوازية.

تأخير

يمكن استخدام مسجلات الإزاحة التسلسلية ذات المدخلات والمخرجات التسلسلية كدوائر تأخير بسيطة. [ 1 ]

كومة

يمكن توصيل عدة مسجلات إزاحة ثنائية الاتجاه بالتوازي لتنفيذ مكدس الأجهزة .

المزيد من منافذ الإدخال/الإخراج

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

للحصول على المزيد من المخرجات، تُستخدم مسجلات الإزاحة SIPO. ويمكن إرسال المخرجات المتوازية لمسجل الإزاحة والحالة المطلوبة لجميع هذه الأجهزة من وحدة التحكم الدقيقة باستخدام وصلة تسلسلية واحدة.

للحصول على المزيد من المدخلات، تُستخدم مسجلات الإزاحة PISO. يتم توصيل كل مدخل ثنائي (مثل زر أو دائرة أكثر تعقيدًا) بمدخل متوازي لمسجل الإزاحة، ثم تُرسل البيانات مرة أخرى بشكل تسلسلي إلى وحدة التحكم الدقيقة.

موسعات النبض

يمكن استخدام مسجلات الإزاحة كموسعات للنبضات. بالمقارنة مع المذبذبات أحادية الاستقرار ، لا يعتمد التوقيت على قيم المكونات، ولكنه يتطلب ساعة خارجية، وتكون دقة التوقيت محدودة بدقة هذه الساعة.

معالجة البيانات

في أجهزة الكمبيوتر المبكرة، كانت تُستخدم مسجلات الإزاحة لمعالجة البيانات: يتم تخزين رقمين المراد جمعهما في مسجلي إزاحة ويتم إرسالهما إلى وحدة الحساب والمنطق (ALU) مع إعادة النتيجة إلى مدخل أحد مسجلات الإزاحة (المراكم)، والذي كان أطول ببت واحد، لأن الجمع الثنائي لا يمكن أن ينتج عنه إلا إجابة لها نفس الحجم أو أطول ببت واحد.

عمليات إزاحة البتات

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

ذاكرة مسجل الإزاحة

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

على سبيل المثال، خزّن جهاز Datapoint 3300 شاشة عرض طرفية مكونة من 25  صفًا و 72  عمودًا من الأحرف الكبيرة (6 بت) باستخدام 54 مسجل إزاحة (200 بت) (مرتبة في 6 مسارات، كل مسار يحتوي على 9 حزم)، مما وفر مساحة تخزين لـ 1800 حرف. وبفضل تصميم مسجل الإزاحة، أمكن تمرير شاشة العرض الطرفية ببساطة عن طريق إيقاف العرض مؤقتًا لتجاوز سطر واحد من الأحرف. [ 3 ] واستُخدم تصميم مشابه في طرفية جهاز Apple I. [ 4 ]

تاريخ

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

انظر أيضاً

مراجع

  1. US4530107A ، ويليامز، مارشال، "دائرة تأخير مسجل الإزاحة"، صدرت في 1985-07-16 
  2. شريف، كين (2014). "داخل معالج إنتل 1405: صور لرقاقة ذاكرة مسجل الإزاحة من عام 1970" . مدونة كين شريف . مؤرشف من الأصل بتاريخ 28 يوليو 2023. تم الاطلاع عليه بتاريخ 6 أغسطس 2023 .
  3. "دليل صيانة DataPoint 3300" (ملف PDF) . bitsavers.org . شركة Datapoint. ديسمبر 1976.
  4. شيريف، كين. "داخل ذاكرة مسجل الإزاحة في جهاز Apple-1" . مدونة كين شيريف . مؤرشف من الأصل بتاريخ 2023-06-06 . تم الاطلاع عليه بتاريخ 2023-08-04 .
  5. فلاورز، توماس هـ. (1983)، "تصميم كولوسوس" ، حوليات تاريخ الحوسبة ، 5 (3): 246، doi : 10.1109/MAHC.1983.10079 ، S2CID 39816473 
  6. "نظام سجل الإزاحة" .
  7. "نظام تسجيل الإزاحة الإلكتروني" .