logo

Thanh ghi là gì?

Câu trả lời đúng nhất: Thanh ghi là thiết bị ghi thông tin có tốc độ chuyển đổi cao, được sử dụng trong bộ xử lí trung tâm của máy tính để lưu giữ tạm thời một số lượng nhỏ các dữ liệu hoặc kết quả trung gian trong khi xử lí.

Để biết thêm nhiều thông tin nữa về thanh ghi hãy cùng Top lời giải tìm hiểu qua bài viết dưới đây.


1. Thanh ghi là gì?

Thanh ghi là Thiết bị ghi thông tin có tốc độ chuyển đổi cao, được sử dụng trong bộ xử lí trung tâm của máy tính để lưu giữ tạm thời một số lượng nhỏ các dữ liệu hoặc kết quả trung gian trong khi xử lí

Thanh ghi là gì

>>> Xem thêm: Chức năng chính của tập các thanh ghi?


2. Phân loại

Có một số phân lớp các thanh ghi tùy theo nội dung:

- Thanh ghi khả hiện – Có hai loại. Thanh ghi dữ liệu và thanh ghi địa chỉ.

- Thanh ghi dữ liệu được dùng để lưu số nguyên (xem thanh ghi số thực dưới đây). Trong một số bộ CPU hiện nay và trước đây, có một thanh ghi đặc biệt là thanh ghi tích lũy tích lũy, được dùng cho nhiều tính toán.

- Thanh ghi địa chỉ chứa địa chỉ bộ nhớ và được dùng để truy cập bộ nhớ. Trong một số CPU, có một thanh ghi địa chỉ đặc biệt thanh ghi chỉ mục, dù chúng thường được dùng để sửa đổi địa chỉ hơn là chứa địa chỉ.

- Thanh ghi điều kiện chứa giá trị thực thường dùng để quyết định hoật động thực thi lệnh

- Thanh ghi đa năng (GPRs) có thể chứa cả dữ liệu lẫn địa chỉ., là kết hợp giữa thanh ghi dữ liệu và thanh ghi địa chỉ

- Thanh ghi dấu phẩy động (FPRs) dùng để chứa các kiểu số

- Thanh ghi hằng số chứa các giá trị đọc được (Ví dụ: 0, 1, pi,…).

- Thanh ghi định hướng chứa dữ liệu cho việc xử lý định hướng đối tượng, thực hiện bởi lệnh SIMD (lệnh đơn, bội dữ kiện)

- Thanh ghi chuyên biệt chứa trạng thái chương trình; thường bao gồm con trỏ chỉ lệnh, con trỏ ngăn xếp, và thanh ghi trạng thái.

- Thanh ghi chỉ lệnh chứa lệnh tạm huỷ

- Thanh ghi chỉ mục dùng cho sửa đổi địa chỉ tác tử trong quá trình thực hiện 1 chương trình

- Trong một số cấu trúc, thanh ghi kiểu mẫu (còn được gọi là thanh ghi thiết bị riêng biệt) chứa dữ liệu và thiết lập liên quan đến bộ xử lý. Vì các thanh ghi này được thiết kế gắn liền với bộ xử lý đặc trưng nên chúng không thể giữ nguyên chuẩn qua các thế hệ của bộ xử lý.

- Thanh ghi điều khiển và trạng thái – Có ba loại: chương trình phản hồi, thanh ghi chỉ lệnh, chương trình trạng thái từ.

- Thanh ghi liên quan đến tìm nạp thông tin từ bộ nhớ truy cập ngẫu nhiên (RAM), 1 tập hợp lưu giữ các thanh ghi được định vị trên các chip riêng biệt từ CPU (không giống đa số các loại trên, đây thông thường là những thanh ghi không có cấu trúc):

    + Thanh ghi bộ nhớ trung gian

    + Thanh ghi bộ nhớ địa chỉ

    + Thanh ghi bộ nhớ kiểu miền

>>> Xem thêm: Bộ nhớ đệm bên trong CPU được gọi là gì?


3. Các loại thanh ghi dịch

Có nhiều cách chia loại thanh ghi dịch (SR)

- Theo số tầng FF (số bit) : SR có cấu tạo bởi bao nhiêu FF mắc nối tiếp thì có bấy nhiêu bit (ra song song). Ta có SR 4 bit, 5 bit, 8 bit, 16 bit …

Có thể có SR nhiều bit hơn bằng cách mắc nhiều SR với nhau hay dùng công nghệ CMOS (các máy tính sử dụng SR nhiều bit)

- Theo cách ghi dịch có

SISO vào nối tiếp ra nối tiếp

SIPO vào nối tiếp ra song song

PISO vào song song ra nối tiếp

PIPO vào song song ra song song

- Theo chiều dịch có SR trái, phải, hay cả 2 chiều

- Theo mạch ra có loại thường và 3 trạng thái

a) Loại vào nối tiếp ra song song và ra nối tiếp

Loại vừa khảo sát ở mục 1 thuộc loại ghi dịch vào nối tiếp ra nối tiếp. Đây cũng là cấu trúc của mạch ghi dịch vào nối tiếp ra song song. Dữ liệu sẽ được lấy ra ở 4 ngõ Q của 4 tầng FF, vì chung nhịp đồng hồ nên dữ liệu cũng được lấy ra cùng lúc.

Thanh ghi là gì
Mạch ghi dịch vào nối tiếp ra song song

Bảng dưới đây cho thấy làm như thế nào dữ liệu được đưa tới ngõ ra 4 tầng FF

Thanh ghi là gì

b) Loại được nạp song song (vào song song) ra nối tiếp và song song

Bây giờ muốn đưa dữ liệu vào song song (còn gọi là nạp song song) ta có thể tận dụng ngõ vào không đồng bộ Pr và Cl của các FF để nạp dữ liệu cùng một lúc vào các FF. Như vậy có thể dùng thêm 2 cổng nand và một cổng not cho mỗi tầng. Mạch mắc như sau

Thanh ghi là gì?
Mạch ghi dịch nạp song song

Mạch hoạt động bình thường khi nạp song song ở thấp như đã nói. Khi nạp song song WRITE = 1 cho phép nạp

Thanh ghi là gì

ABCD được đưa vào Pr và Cl đặt và xoá để Q0 = A, Q1 = B, … Xung ck và ngõ vào nổi tiếp không có tác dụng (vì sử dụng ngõ không đồng bộ Pr và Cl)

Một cách khác không sử dụng chân Pr và Cl được minh hoạ như hình dưới đây.Các cổng nand được thêm vào để nạp các bit thấp D1, D2, D3. Ngõ WRITE/SHIFT  dùng để cho phép nạp (ở mức thấp) và cho phép dịch (ở mức cao). Dữ liệu nạp và dịch vẫn được thực hiện đồng bộ như các mạch trước.

Thanh ghi là gì?
Mạch ghi dịch nạp song song ra nối tiếp

Với mạch hình trên có ngõ ra dữ liệu là nối tiếp, ta cũng có thể lấy ra dữ liệu song song như ở hình 3.2.5, Cấu trúc mạch không khác so với ở trên. Dữ liệu được đưa vào cùng lúc và cũng lấy ra cùng lúc (mạch như là tầng đệm và hoạt động khi có xung ck tác động lên.

Thanh ghi là gì
Mạch ghi dịch vào song song ra song song

c) Ghi dịch 2 chiều

Như đã thấy, các mạch ghi dịch nói ở những phần trên đều đưa dữ liệu ra bên phải nên chúng thuộc loại ghi dịch phải. Để có thể dịch chuyển dữ liệu ngược trở lại (dịch trái)  ta chỉ việc cho dữ liệu vào ngõ D của tầng cuối cùng, ngõ ra Q được đưa tới tầng kế tiếp, …. Dữ liệu lấy ra ở tầng đầu.

Để dịch chuyển cả 2 chiều, có thể nối mạch như hình dưới đây :

Thanh ghi là gì
Mạch ghi dịch cho phép dịch chuyển cả 2 chiều

Với mạch trên, các cổng NAND và đường  cho phép dịch chuyển dữ liệu trái hay phải. Bảng dưới đây minh hoạ cho mạch trên : dữ liệu sẽ dịch phải 4 lần rồi dịch trái 4 lần. Để ý là thứ tự 4 bit ra bị đảo ngược lại so với chúng ở trên.

Thanh ghi là gì

------------------------------

Trên đây Top lời giải đã cùng các bạn tìm hiểu Thanh ghi là gì? Chúng tôi hi vọng các bạn đã có thông tin hữu ích khi đọc bài viết này, chúc các bạn học tốt. 

icon-date
Xuất bản : 20/06/2022 - Cập nhật : 21/06/2022