Khi kích đúp vào một biểu tượng nào đó để chạy chương trình thì những gì sẽ xảy ra là:
1. Chương trình đã lưu bên trong ổ đĩa cứng sẽ được đưa vào bộ nhớ RAM. Ở đây chương trình chính là một loạt các chỉ lệnh đối với CPU.
2. CPU sử dụng mạch phần cứng được gọi là memory controller để tải dữ liệu chương trình từ bộ nhớ RAM.
3. Lúc đó dữ liệu bên trong CPU sẽ được xử lý.
4. Những gì diễn ra tiếp theo sẽ phụ thuộc vào chương trình vừa được nạp. CPU có thể tiếp tục tải và thực thi chương trình hoặc có thể thực hiện một công việc nào đó với dữ liệu đã được xử lý, như việc hiển thị kết quả thực hiện nào đó lên màn hình.
Hình 4-21 Dữ liệu được lưu đưa vào CPU
Trước đây, CPU điều khiển sự truyền tải dữ liệu giữa ổ đĩa cứng và bộ nhớ RAM. Vì ổ đĩa cứng thường có tốc độ truy cập thấp hơn so với bộ nhớ RAM nên nó làm chậm chung cho cả hệ thống, chính vì vậy CPU sẽ rất bận cho tới khi dữ liệu đã được truyền tải từ ổ đĩa cứng vào bộ nhớ RAM. Phương pháp này được gọi là PIO, Processor I/O (hay Programmed I/O). Ngày nay, sự truyền tải dữ liệu giữa ổ đĩa cứng và bộ nhớ RAM được thực hiện mà không sử dụng đến CPU, như vậy nó sẽ làm cho hệ thống hoạt động nhanh hơn. Phương pháp này được gọi là bus mastering
không đưa vào chip cầu nối (được gọi là north bridge chip) giữa ổ đĩa cứng và bộ nhớ RAM trên hình 4-3, tuy nhiên là có một chip đó tại vị trí nối này.
Nhìn chung, tất cả các hoạt động trong máy tính đều trải qua 4 chu kỳ chính đó là: Lấy lệnh, Giải mã lệnh, Nhận dữ liệu, Xử lý dữ liệu
Lấy lệnh (Fetch Instructions - FI)
- Địa chỉ của lệnh cần thực hiện nằm trong bộ đếm chương trình (PC - Program Counter), được đưa qua bộ đệm địa chỉ, qua bus địa chỉ để tìm ra ngăn nhớ chứa lệnh.
- Tiếp theo, BXL phát ra tín hiệu đọc ngăn nhớ vừa tìm được
- Nội dung của ngăn nhớ được chuyển qua bus dữ liệu và đưa đến thanh ghi lệnh (Instruction Reg.)
Giải mã lệnh (Instructions Decode – ID)
- Lệnh từ thanh ghi lệnh được đưa đến khối điều khiển
- Tại đây, lệnh được giải mã để xác định thao tác mà lệnh yêu cầu
- Khi đó, khối điều khiển sẽ phát ra tín hiệu điều khiển tương ứng với lệnh đó.
Nhận dữ liệu (Fetch Data – FD)
- BXL phát ra địa chỉ của ngăn nhớ/cổng vào ra chứa dữ liệu cần nhận
- BXL phát ra tín hiệu điều khiển đọc ngăn nhớ/cổng vào ra tương ứng
- Dữ liệu được chuyển qua bus dữ liệu đưa vào tập thanh ghi bên trong
Xử lý dữ liệu ( Process Data – PD)
- Dữ liệu được chuyển từ các thanh ghi vào ALU
- ALU sẽ thực hiện các phép toán dưới sự điều khiển của khối điều khiển
- Kết quả phép toán được cất tạm thời vào thanh ghi dữ liệu