সিরিয়াল ইনপুট এবং আউটপুট শিফট রেজিস্টার
সিরিয়াল ইনপুট এবং আউটপুট শিফট রেজিস্টার (Serial-In Serial-Out Shift Register - SISO) হল একটি বিশেষ ধরনের শিফট রেজিস্টার, যা ডেটাকে একক লাইনে সিরিয়াল আকারে ইনপুট এবং আউটপুট প্রদান করে। এই ধরনের রেজিস্টারে ডেটা একসাথে ইনপুট করা হয় না, বরং একে একে বিট ধরে ইনপুট গ্রহণ করা হয় এবং পরবর্তীতে একে একে আউটপুট প্রদান করা হয়।
SISO শিফট রেজিস্টারের বৈশিষ্ট্য
- সিরিয়াল ইনপুট: ডেটা বিটগুলো একের পর এক ক্লক পালসের সাথে ইনপুটে প্রবেশ করে।
- সিরিয়াল আউটপুট: ডেটা একইভাবে একে একে আউটপুটে সরবরাহ করা হয়।
- শিফটিং অপারেশন: প্রতিটি ক্লক পালসে ইনপুট বিটটি পরবর্তী ফ্লিপ-ফ্লপে সরানো হয় এবং পূর্বের বিট আউটপুটের দিকে চলে যায়।
- ক্লক পালস নিয়ন্ত্রিত: SISO শিফট রেজিস্টার শুধুমাত্র ক্লক পালস পাওয়ার সময় ডেটা শিফট করে। প্রতিটি ক্লক পালসে ইনপুট থেকে ডেটা প্রবাহিত হয়ে আউটপুটে যায়।
SISO শিফট রেজিস্টারের কাজের ধাপ
১. ডেটা ইনপুট: প্রথমে ডেটা বিটগুলো একে একে ইনপুট লাইনে প্রবেশ করানো হয়, যা প্রতিটি ক্লক পালসের সাথে এক বিট করে প্রবেশ করে।
২. শিফটিং প্রক্রিয়া: প্রতিটি ক্লক পালসে ইনপুট বিটটি এক ধাপ শিফট হয়। প্রথমে প্রথম বিট প্রথম ফ্লিপ-ফ্লপে যায়, তারপর প্রতিটি পরবর্তী বিট পরবর্তী ফ্লিপ-ফ্লপে চলে যায়।
৩. আউটপুট প্রাপ্তি: সব বিট ইনপুটে প্রবেশের পর প্রথম বিট আউটপুটে পৌঁছে যায় এবং পরবর্তী ক্লক পালসে পরবর্তী বিট আউটপুটে আসতে থাকে।
উদাহরণসহ কাজের প্রক্রিয়া
ধরুন, আমরা একটি ৪-বিট SISO শিফট রেজিস্টার ব্যবহার করছি এবং ডেটা বিটের ক্রম 1011।
| Clock Pulse | Input | Flip-Flop Q1 | Flip-Flop Q2 | Flip-Flop Q3 | Flip-Flop Q4 (Output) |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | |
| 1 | 1 | 1 | 0 | 0 | 0 |
| 2 | 0 | 0 | 1 | 0 | 0 |
| 3 | 1 | 1 | 0 | 1 | 0 |
| 4 | 1 | 1 | 1 | 0 | 1 |
এভাবে, প্রতিটি ক্লক পালসে ডেটা একের পর এক ইনপুটে প্রবেশ করে এবং শিফট অপারেশন সম্পন্ন করে আউটপুটে পৌঁছায়।
SISO শিফট রেজিস্টারের ব্যবহার
- সিরিয়াল ডেটা ট্রান্সমিশন: সিরিয়াল কমিউনিকেশনে SISO শিফট রেজিস্টার ব্যবহার করা হয়, যেখানে ডেটা একে একে স্থানান্তর করা হয়।
- ডিজিটাল ডেটা প্রসেসিং: কিছু বিশেষ ধরনের ডিজিটাল প্রসেসিংয়ে, যেখানে ধাপে ধাপে ডেটা ট্রান্সফার করা প্রয়োজন।
- বাফার স্টোরেজ: অস্থায়ী ডেটা সংরক্ষণের জন্য SISO শিফট রেজিস্টার ব্যবহার করা হয়।
উদাহরণ:
কম্পিউটারের CPU থেকে সিরিয়াল পোর্টের মাধ্যমে ডেটা প্রেরণের জন্য SISO শিফট রেজিস্টার ব্যবহার করা যেতে পারে। CPU প্রথমে ডেটা শিফট করে এবং প্রতিটি বিটকে সিরিয়াল আকারে আউটপুট দেয়, যা পরে অন্য ডিভাইস গ্রহণ করে।