Thanh ghi dịch chuyển trong Logic số

Thanh ghi dịch chuyển trong Logic số

Bài viết này giải thích về thanh ghi dịch chuyển, mạch logic kỹ thuật số cơ bản lưu trữ và di chuyển dữ liệu theo trình tự.

Thanh ghi dịch chuyển là một nhóm các flip-flop được sử dụng để lưu trữ nhiều bit dữ liệu. Các bit được lưu trữ trong các thanh ghi này có thể được di chuyển bên trong các thanh ghi và vào/ra khỏi các thanh ghi bằng cách áp dụng xung nhịp. Một thanh ghi dịch chuyển n-bit có thể được tạo thành bằng cách kết nối n flip-flop, trong đó mỗi flip-flop lưu trữ một bit dữ liệu duy nhất. Các thanh ghi sẽ dịch chuyển các bit sang trái được gọi là "thanh ghi dịch chuyển trái". Các thanh ghi sẽ dịch chuyển các bit sang phải được gọi là "thanh ghi dịch chuyển phải". Về cơ bản, các thanh ghi dịch chuyển có các loại sau.

Các loại thanh ghi dịch chuyển

  • Thanh ghi dịch chuyển Serial In Serial Out
  • Nối tiếp Vào song song Ra thanh ghi dịch chuyển
  • Thanh ghi dịch chuyển song song vào nối tiếp ra
  • Song song Vào song song Ra thanh ghi dịch chuyển
  • Thanh ghi dịch chuyển hai chiều
  • Đăng ký chuyển số phổ thông
  • Bộ đếm thanh ghi dịch chuyển

Thanh ghi dịch chuyển nối tiếp vào nối tiếp ra (SISO)

Thanh ghi dịch, cho phép nhập dữ liệu nối tiếp (từng bit một thông qua một đường dữ liệu duy nhất) và tạo ra đầu ra nối tiếp, được gọi là thanh ghi dịch Serial-In Serial-Out. Vì chỉ có một đầu ra, dữ liệu rời khỏi thanh ghi dịch từng bit một theo kiểu nối tiếp, do đó có tên là Thanh ghi dịch Serial-In Serial-Out. Mạch logic được đưa ra dưới đây thể hiện một thanh ghi dịch nối tiếp-vào-song-song. Mạch bao gồm bốn flip-flop D được kết nối theo kiểu nối tiếp. Tất cả các flip-flop này đều đồng bộ với nhau vì cùng một tín hiệu xung nhịp được áp dụng cho mỗi flip-flop. 

Thanh ghi dịch chuyển nối tiếp vào nối tiếp ra (SISO)

Mạch trên là một ví dụ về thanh ghi dịch chuyển phải, lấy dữ liệu nối tiếp đầu vào từ phía bên trái của flip-flop. Công dụng chính của SISO là hoạt động như một phần tử trễ.

Thanh ghi dịch chuyển nối tiếp-vào-song song-ra (SIPO)

Thanh ghi dịch, cho phép nhập nối tiếp (từng bit một thông qua một đường dữ liệu duy nhất) và tạo ra đầu ra song song, được gọi là thanh ghi dịch nối tiếp vào song song ra. Mạch logic được đưa ra dưới đây minh họa một thanh ghi dịch nối tiếp vào song song ra. Mạch bao gồm bốn flip-flop D được kết nối. Tín hiệu xóa (CLR) được kết nối ngoài tín hiệu xung nhịp đến cả 4 flip-flop để ĐẶT LẠI chúng. Ngõ ra của flip-flop đầu tiên được kết nối với ngõ vào của flip-flop tiếp theo, v.v. Tất cả các flip-flop này đều đồng bộ với nhau vì cùng một tín hiệu xung nhịp được áp dụng cho mỗi flip-flop. 

Thanh ghi dịch chuyển nối tiếp-vào-song song-ra (SIPO)

Mạch trên là một ví dụ về thanh ghi dịch chuyển phải, lấy dữ liệu đầu vào nối tiếp từ phía bên trái của flip-flop và tạo ra đầu ra song song. Chúng được sử dụng trong các đường truyền thông đòi hỏi phải phân tách một đường dữ liệu thành nhiều đường song song vì mục đích chính của thanh ghi SIPO là chuyển đổi dữ liệu nối tiếp thành dữ liệu song song.

Thanh ghi dịch chuyển song song-vào-ra nối tiếp (PISO)

Thanh ghi dịch, cho phép nhập dữ liệu song song (dữ liệu được cấp riêng cho từng flip-flop và đồng thời) và tạo ra đầu ra nối tiếp được gọi là thanh ghi dịch Parallel-In Serial-Out. Mạch logic được đưa ra bên dưới cho thấy một thanh ghi dịch parallel-in-serial-out. Mạch bao gồm bốn flip-flop D được kết nối. Đầu vào xung nhịp được kết nối trực tiếp với tất cả các flip-flop nhưng dữ liệu đầu vào được kết nối riêng lẻ với từng flip-flop thông qua  bộ ghép kênh  tại đầu vào của mỗi flip-flop. Đầu ra của flip-flop trước đó và đầu vào dữ liệu song song được kết nối với đầu vào của MUX và đầu ra của MUX được kết nối với flip-flop tiếp theo. Tất cả các flip-flop này đều đồng bộ với nhau vì cùng một tín hiệu xung nhịp được áp dụng cho mỗi flip-flop. 

Thanh ghi dịch chuyển song song-vào-ra nối tiếp (PISO)

Thanh ghi dịch chuyển PISO (Parallel in Serial Out) được sử dụng để chuyển đổi dữ liệu song song thành dữ liệu nối tiếp.

Thanh ghi dịch chuyển song song-vào song song-ra (PIPO)

Thanh ghi dịch, cho phép nhập liệu song song (dữ liệu được cấp riêng cho từng flip-flop và đồng thời) và cũng tạo ra đầu ra song song, được gọi là thanh ghi dịch Parallel-In parallel-Out. Mạch logic được đưa ra dưới đây minh họa một thanh ghi dịch parallel-in parallel-out. Mạch bao gồm bốn flip-flop D được kết nối. Tín hiệu xóa (CLR) và tín hiệu xung nhịp được kết nối với cả 4 flip-flop. Trong loại thanh ghi này, không có kết nối giữa các flip-flop riêng lẻ vì không cần dịch chuyển dữ liệu tuần tự. Dữ liệu được cấp riêng làm đầu vào cho từng flip-flop và tương tự như vậy, đầu ra cũng được thu thập riêng lẻ từ mỗi flip-flop. 

Thanh ghi dịch chuyển song song-vào song song-ra (PIPO)

Thanh ghi dịch chuyển song song vào ra song song (PIPO) được sử dụng như một thiết bị lưu trữ tạm thời và giống như thanh ghi dịch chuyển SISO, nó hoạt động như một phần tử trễ.

Thanh ghi dịch chuyển hai chiều

Nếu chúng ta dịch chuyển một số nhị phân sang trái một vị trí, thì tương đương với việc nhân số đó với 2 và nếu chúng ta dịch chuyển một số nhị phân sang phải một vị trí, thì tương đương với việc chia số đó cho 2. Để thực hiện các thao tác này, chúng ta cần một thanh ghi có thể dịch chuyển dữ liệu theo cả hai hướng. Thanh ghi dịch chuyển hai chiều là thanh ghi có khả năng dịch chuyển dữ liệu sang phải hoặc sang trái tùy thuộc vào chế độ được chọn. Nếu chế độ được chọn là 1 (cao), dữ liệu sẽ được dịch chuyển về phía bên phải và nếu chế độ được chọn là 0 (thấp), dữ liệu sẽ được dịch chuyển về phía bên trái. Mạch logic được đưa ra bên dưới cho thấy một thanh ghi dịch chuyển hai chiều. Mạch bao gồm bốn flip-flop D được kết nối. Dữ liệu đầu vào được kết nối ở hai đầu của mạch và tùy thuộc vào chế độ được chọn mà chỉ có một cổng ở trạng thái hoạt động. 

Thanh ghi dịch chuyển hai chiều

Đăng ký chuyển số phổ thông

Thanh ghi dịch chuyển đa năng là một loại thanh ghi chứa cả dịch chuyển phải và dịch chuyển trái. Nó cũng có khả năng tải song song. Thông thường, các loại thanh ghi này được coi là các phần tử bộ nhớ trong máy tính. Tuy nhiên, vấn đề với loại thanh ghi này là nó chỉ dịch chuyển theo một hướng. Nói một cách đơn giản, bạn muốn nói rằng thanh ghi dịch chuyển đa năng là sự kết hợp của thanh ghi dịch chuyển hai chiều và thanh ghi dịch chuyển một chiều .

Đăng ký chuyển số phổ thông

Thanh ghi dịch chuyển đa năng N-bit bao gồm các flip-flop và bộ ghép kênh. Cả hai đều có kích thước N. Trong đó, tất cả n bộ ghép kênh dùng chung các đường chọn và đầu vào chọn này sẽ chọn đầu vào phù hợp cho các flip-flop.

Bộ đếm thanh ghi dịch chuyển

Bộ đếm thanh ghi dịch chuyển là thanh ghi dịch chuyển trong đó các đầu ra được kết nối trở lại với các đầu vào để tạo ra các chuỗi cụ thể. Về cơ bản có hai loại:

  • Bộ đếm vòng
  • Johnson Counter

Bộ đếm vòng

Bộ đếm vòng về cơ bản là một bộ đếm thanh ghi dịch, trong đó đầu ra của flip-flop đầu tiên được kết nối với flip-flop tiếp theo, v.v. và đầu ra của flip-flop cuối cùng lại được đưa trở lại đầu vào của flip-flop đầu tiên, do đó có tên là bộ đếm vòng. Mẫu dữ liệu trong thanh ghi dịch sẽ tuần hoàn miễn là xung nhịp được áp dụng. Mạch logic được đưa ra dưới đây minh họa một bộ đếm vòng. 

Bảng chân lý của bộ đếm vòng

Mạch này bao gồm bốn flip-flop D được kết nối. Vì mạch bao gồm bốn flip-flop, mẫu dữ liệu sẽ lặp lại sau mỗi bốn xung nhịp như được hiển thị trong bảng chân lý. Bộ đếm vòng thường được sử dụng vì nó tự giải mã. Không cần thêm mạch giải mã nào để xác định trạng thái của bộ đếm.

Bộ đếm vòng

Johnson Counter

Bộ đếm Johnson về cơ bản là một bộ đếm thanh ghi dịch chuyển, trong đó đầu ra của flip-flop đầu tiên được kết nối với flip-flop tiếp theo, v.v. và đầu ra đảo ngược của flip-flop cuối cùng lại được đưa trở lại đầu vào của flip-flop đầu tiên. Chúng còn được gọi là bộ đếm vòng xoắn. Mạch logic được đưa ra dưới đây minh họa một bộ đếm Johnson. Mạch bao gồm bốn flip-flop D được kết nối. 

Bảng chân lý phản biện Johnson

Bộ đếm Johnson n-giai đoạn tạo ra chuỗi đếm gồm 2n trạng thái khác nhau, do đó còn được gọi là bộ đếm mod-2n. Vì mạch bao gồm bốn flip-flop, mẫu dữ liệu sẽ lặp lại sau mỗi tám xung nhịp như được hiển thị trong bảng chân lý. Ưu điểm chính của bộ đếm Johnson là nó chỉ cần n số flip-flop so với bộ đếm vòng để luân chuyển một dữ liệu nhất định nhằm tạo ra chuỗi 2n trạng thái.

Johnson Counter

Ứng dụng của thanh ghi dịch chuyển

  • Các thanh ghi dịch chuyển được sử dụng để lưu trữ dữ liệu tạm thời.
  • Các thanh ghi dịch chuyển cũng được sử dụng để truyền dữ liệu và xử lý dữ liệu.
  • Các thanh ghi dịch chuyển nối tiếp vào nối tiếp ra và song song vào song song ra được sử dụng để tạo ra độ trễ thời gian cho các mạch kỹ thuật số.
  • Thanh ghi dịch chuyển nối tiếp-vào-song song-ra được sử dụng để chuyển đổi dữ liệu nối tiếp thành dữ liệu song song, do đó chúng được sử dụng trong các đường truyền thông khi cần phân tách một đường dữ liệu thành nhiều đường song song.
  • Thanh ghi dịch chuyển Parallel in Serial out được sử dụng để chuyển đổi dữ liệu song song thành dữ liệu nối tiếp.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Win a Raspberry Pi!

Answer 5 questions for your chance to win!
Question 1

What color is the sky?

Tìm kiếm bằng danh mục

Chọn danh mục