Chuc Nang May Tinh

3.2 CHỨC NĂNG MÁY TÍNH

Chức năng cơ bản của máy tính là thực thi chương trình. Chương trình được thực thi gồm một dãy các chỉ thị được lưu trữ trong bộ nhớ. Đơn vị xử lý trung tâm (CPU) đảm nhận việc thực thi này.

Quá trình thực thi chương trình, xét trên quan điểm xử lý chỉ thị, bao gồm hai bước: CPU đọc chỉ thị từ bộ nhớ và thực thi chỉ thị đó. Việc thực thi chương trình là sự lập đi lập lại quá trình lấy chỉ thị và thực thi chỉ thị.

Việc xử lý cần có đối với từng chỉ thị máy được gọi là một chu kỳ chỉ thị. Sử dụng cách mô tả đơn giản gồm hai bước như trên, chu kỳ chỉ thị được thể hiện trên hình 3.3. Hai bước đó được đề cập đến với tên gọi chu kỳ tải lệnh và chu kỳ thực thi lệnh. Sự thực thi chương trình bị kết thúc nếu máy bị tắt, có lỗi không thể phục hồi xuất hiện, hay chương trình đi đến một chỉ thị kết thúc nó.

Hình 3.3 Chu kỳ chỉ thị cơ sở

Các chu kỳ lấy và thực thi chỉ thị

Ở đầu mỗi chu kỳ chỉ thị, CPU lấy một chỉ thị từ bộ nhớ. Một thanh ghi gọi là bộ đếm chương trình (PC) được sử dụng để theo dõi chỉ thị cần lấy ra kế tiếp. Trừ khi được chỉ ra rõ ràng, CPU luôn tăng PC sau khi mỗi chỉ thị được lấy ra để trỏ đến chỉ thị kế tiếp trong dãy chỉ thị.

Chỉ thị được lấy ra sẽ được tải vào một thanh ghi trong CPU có tên gọi là thanh ghi chỉ thị (IR). Chỉ thị này ở dạng mã nhị phân đặc tả hoạt động CPU cần thực hiện. CPU thông dịch chỉ thị và thực hiện hoạt động được yêu cầu. Một cách tổng quát, các hoạt động này rơi vào một trong bốn nhóm sau:

CPU – Bộ nhớ: dữ liệu có thể được chuyển từ CPU vào bộ nhớ hay ngược lại.

CPU – Thành phần nhập/xuất: dữ liệu có thể được truyền từ bên ngoài vào CPU thông qua việc liên lạc giữa CPU và một module nhập/xuất.

Xử lý dữ liệu: CPU có thể thực hiện thao tác luận lý hay số học trên dữ liệu.

Điều khiển: một chỉ thị có thể đặc tả sự thay đổi thứ tự thực thi của dãy chỉ thị.

Chúng ta xét một ví dụ đơn giản sử dụng một máy tính giả có các đặc trưng được liệt kê trong hình 3.4

CPU có một bộ tích lũy (AC) để lưu dữ liệu tạm thời. Cả chỉ thị và dữ liệu đều có độ dài 16 bit. Do vậy rất tiện lợi nếu như chúng ta tổ chức bộ nhớ theo các vị trí 16 bit hay word. Dạng chỉ thị cho thấy có 24 = 16 mã thao tác khác nhau và 212 = 4096 (4K) word nhớ có thể được định địa chỉ trực tiếp.

Hình 3.4 Các đặc trưng của một máy giả

Hình 3.5 minh họa sự thực thi một phần chương trình với sự thể hiện các phần bộ nhớ và thanh ghi CPU thích hợp. Ký hiệu được sử dụng ở hệ thập lục phân. Phân đoạn chương trình trong hình cho thấy nội dung của các word nhớ từ địa chỉ 94016 đến địa chỉ 94116 và kết quả được lưu ở các vị trí sau đó.

Hình 3.5 Ví dụ về thực thi chương trình

Trong hình 3.5, có ba chỉ thị được yêu cầu, vốn được mô tả thành ba chu kỳ lấy và thực thi gồm:

Bộ đếm chương trình (PC) chứa 300 là địa chỉ của chỉ thị đầu tiên. Địa chỉ này được tải vào trong thanh ghi chỉ thị (IR). Chú ý rằng quá trình này sẽ bao gồm luôn việc sử dụng thanh ghi địa chỉ bộ nhớ (MAR) và thanh ghi vùng đệm bộ nhớ (MBR). Để đơn giản, các thanh ghi trung gian này được bỏ qua.

4 bit đầu tiên trong IR chỉ ra rằng bộ tích lũy (AC) sẽ được tải vào. 12 bit còn lại đặc tả địa chỉ, ở đây là 940.

PC được tăng lên một đơn vị và chỉ thị kế được lấy ra.

Nội dung trước đó của AC và nội dung tại vị trí 941 được cộng lại với nhau, kết quả lưu trong AC.

PC được tăng lên một đơn vị và chỉ thị kế được lấy ra.

Nội dung của AC được lưu ở vị trí 941.

Trong ví dụ này, ba chu kỳ chỉ thị, mỗi chu kỳ gồm một chu kỳ lấy lệnh và thực thi, được yêu cầu để cộng nội dung tại vị trí 940 vào nội dung tại vị trí 941. Với tập chỉ thị phức tạp hơn chúng ta sẽ cần ít chu kỳ hơn.

Chức năng nhập/xuất

Cho đến thời điểm này, chúng ta đã khảo sát sự hoạt động của máy tính dưới sự điều khiển của CPU cũng như sự tương tác giữa CPU và bộ nhớ. Ở đây chúng ta trình bày một cách ngắn gọn thêm về chức năng nhập/xuất của máy tính.

Một module nhập/xuất có thể trao đổi dữ liệu trực tiếp với CPU. Tương tự như việc CPU có thể khởi động một thao tác đọc/ghi bộ nhớ, định địa chỉ của một vị trí cụ thể, CPU cũng có thể đọc/ghi dữ liệu vào/ra một module nhập/xuất. Trong trường hợp này, CPU chỉ định một thiết bị cụ thể được điều khiển bởi một module nhập/xuất. Do đó, một dãy chỉ thị có dạng tương tự như trong hình 3.5 có thể xuất hiện với các chỉ thị nhập/xuất hơn là với các chỉ thị tham chiếu bộ nhớ.

Trong một số trường hợp, người ta mong muốn là có thể cho phép các trao đổi nhập/xuất xuất hiện trực tiếp với bộ nhớ. Trong tình huống đó, CPU trao quyền cho một module nhập/xuất để đọc/ghi bộ nhớ sao cho việc truyền dữ liệu giữa bộ nhớ – bộ phận nhập/xuất có thể xuất hiện không cần đến sự can thiệp của CPU. Trong quá trình truyền dữ liệu đó, module nhập/xuất tạo ra các lệnh đọc/ghi vào bộ nhớ, thay thế vai trò của CPU trong việc trao đổi dữ liệu. Thao tác này được biết đến với tên gọi truy xuất bộ nhớ trực tiếp (DMA).

Từ khóa » Chu Kỳ Máy Tính