<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>
CH
ƯƠ
NG 5: B x lý trung tâm
ộ ử
(CPU)
Ki N TR C MÁY TÍNH VÀ
Ế
Ứ
</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>
CPU
2
5.2.1. Cấu trúc cơ bản của CPU
5.2.2. Tập lệnh
</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>
5.2.1. C u trúc c b n c a CPU
ấ
ơ ả
ủ
3
</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>
1. Đ n v đi u khi n (CU)
ơ
ị ề
ể
4
Chức năng:
Điều khiển nhận lệnh từ bộ nhớ đưa vào
thanh ghi lệnh (IR) và tăng nội dung của PC
để trỏ sang lệnh kế tiếp.
Giải mã lệnh nằm trong thanh ghi lệnh để
xác định thao tác cần thực hiện và phát ra
tín hiệu điều khiển thực hiện lệnh đó.
Nhận tín hiệu u cầu từ bus hệ thống và
</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>
Đ n v đi u khi n (ti p)
ơ
ị ề
ể
ế
5
Mơ hình kết nối của đơn vị điều khiển:
</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>
Đ n v đi u khi n – Control Unit(ti p)
ơ
ị ề
ể
ế
6
Các tín hiệu đưa đến Control Unit:
Mã lệnh từ thanh ghi lệnh đưa đến để giải
mã
Các cờ từ thanh ghi cờ cho biết trạng thái
của CPU
Xung clock từ bộ tạo xung bên ngoài cung
cấp cho đơn vị điều khiển làm việc
</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>
Đ n v đi u khi n Control Unit (ti p)
ơ
ị ề
ể
ế
7
Các tín hiệu phát ra từ đơn vị điều khiển:
Các tín hiệu điều khiển bên trong CPU:
Điều khiển các thanh ghi
Điều khiển hoạt động của ALU
Các tín hiệu điều khiển bên ngồi CPU:
Điều khiển bộ nhớ chính
</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>
2. Đ n v s h c và logic (ALU)
ơ
ị ố ọ
8
Chức năng: Thực hiện các phép toán số
học và các phép toán logic.
Số học: cộng, trừ, nhân, chia, tăng, giảm,
đảo dấu, …
Logic: AND, OR, XOR, NOT, các phép dịch
</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>
Đ n v s h c và logic (ti p)
ơ
ị ố ọ
ế
9
</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>
Mơ hình k t n i c a ALU 4 bit
ế ố ủ
</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>
Mơ hình k t n i c a ALU 16 bit
ế ố ủ
</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>
3. T p thanh ghi (RF)
ậ
12
a. Chức năng và phân loại
</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>
a. Ch c năng và phân lo i
ứ
ạ
13
Chức năng:
Là tập hợp các thanh ghi nằm trong CPU
Chứa các thông tin tạm thời phục vụ cho
hoạt động hiện tại của CPU.
Phân loại tập thanh ghi
Phân loại theo khả năng can thiệp của
người lập trình:
Các thanh ghi khơng lập trình được: người lập
trình khơng can thiệp được
Các thanh ghi lập trình được: người lập trình
can thiệp được
Phân loại theo chức năng:
Thanh ghi địa chỉ: quản lý địa chỉ của ngăn nhớ
hay cổng vào-ra
Thanh ghi dữ liệu: chứa các dữ liệu tạm thời
hoặc kết quả trung gian phục vụ cho việc xử lý
dữ liệu của CPU
Thanh ghi điều khiển và trạng thái: chứa các
thông tin điều khiển và trạng thái của CPU
Thanh ghi lệnh: chứa lệnh đang được thực hiện
Thanh ghi đa năng: có thể chứa địa chỉ hoặc dữ
</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>
b. M t s thanh ghi đi n hình
ộ ố
ể
14
Các thanh ghi địa chỉ
Bộ đếm chương trình (Program Counter –
PC)
Con trỏ dữ liệu (Data Pointer – DP)
Con trỏ ngăn xếp (Stack Pointer – SP)
Thanh ghi cơ sở và thanh ghi chỉ số (Base
Register & Index Register)
</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>
Các vùng nh c b n c a CT
ớ ơ ả
ủ
15
Chương trình đang thực hiện phải nằm
trong bộ nhớ chính và nó chiếm 3 vùng
nhớ cơ bản sau:
Vùng nhớ lệnh (Code): chứa các lệnh của
chương trình.
Vùng dữ liệu (Data): chứa dữ liệu của
chương trình. Thực chất đây là nơi cấp phát
các ngăn nhớ cho các biến nhớ.
Vùng ngăn xếp (Stack): là vùng nhớ có cấu
trúc LIFO (Last In First Out) dùng để cất giữ
thơng tin và sau đó có thể khơi phục lại.
</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>
Ví d minh h a th c thi m t ch
ụ
ọ
ự
ộ
ươ
ng trình
</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>
B đ m ch
ộ ế
ươ
ng trình (PC)
17
Cịn gọi là con trỏ lệnh (Instruction
Pointer - IP)
Là thanh ghi chứa địa chỉ của lệnh tiếp theo
sẽ được nhận vào.
Sau khi một lệnh được nhận vào thì nội
</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>
Minh h a ho t đ ng c a PC
ọ
ạ ộ
ủ
</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>
Thanh ghi con tr d li u (DP)
ỏ ữ ệ
19
Chứa địa chỉ của ngăn nhớ dữ liệu mà
CPU muốn truy cập.
Thường có một số thanh ghi con trỏ dữ
</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>
Minh h a ho t đ ng c a DP
ọ
ạ ộ
ủ
</div>
<!--links-->