BÀI 3: NGUYÊN LÝ LÀM VIỆC

BÀI 3: NGUYÊN LÝ LÀM VIỆC

3.1 HOẠT ĐỘNG CỦA BỘ NHỚ.

Mặc dù mỗi loại bộ nhớ đều có hoạt động nội tại khác nhau, nhưng tất cả bộ nhớ đều  có chung một số nguyên tắc hoạt động cơ bản. Mỗi bộ nhớ cần thực hiện các chức năng sau:

Chọn đúng địa chỉ vùng nhớ cần đọc hay viết.

Chọn đúng hoạt động đọc hay viết.

Cung cấp dữ liệu nhập vào để lưu trữ trong bộ nhớ suốt hoạt động ghi.

Cho phép (hoặc không cho phép) bộ nhớ đáp ứng (hay không đáp ứng) các đầu vào địa chỉ hay lệnh đọc ghi.

Lưu trữ dữ liệu xuất ra từ bộ nhớ suốt hoạt động đọc.

Hình 4.1 mô tả một bộ nhớ cơ bản 32x4 lưu trữ 32 từ 4 bit.

Vì mỗi từ ở đây là 4 bit nên có 4 đường dữ liệu vào từ I0 đến I3 và 4 đường dữ liệu ra từ O0 đến O3. Các ngõ vào địa chỉ A0 đến A4 và các ngõ điều khiển đọc/ghi.

Ngõ vào các địa chỉ:

Vì bộ nhớ chứa 32 từ nên có 32 vị trí lưu trữ khác nhau và có 32 địa chỉ khác nhau biến thiên 00000 đến 11111 ( từ 010 đến 3110). Hình 4.2 cho thấy cách bố trí các vị trí ô nhớ và địa chỉ.

Vì ở đây có 5 đầu vào địa chỉ A0 đến A4 nên để truy cập một trong những  vị trí trong bộ nhớ cho các hoạt động đọc hay ghi thì mã địa chỉ 5 bit của vị trí cụ thể được cấp cho đầu vào địa chỉ. Như vậy, với bộ nhớ có dung lượng 2N từ đòi hỏi N đầu vào địa chỉ.

Ngõ vào

Đầu vào chi phối hoạt động nào sẽ xảy ra trong bộ nhớ: đọc (R) hay ghi (W).

Hoạt động đọc xảy ra khi = 1 ( R ở mức cao)

Hoạt động viết xảy ra khi = 0 ( W ở mức thấp)

Hình 4.3 minh họa đơn giản hoạt động đọc và ghi

Cho phép bộ nhớ (Memory Enable)

Cho phép hay không cho phép các ngõ vào, ra của  bộ nhớ hoạt động.

Ngoài tên ME còn có một số tên khác như cho phép chip (CE) hay chọn lựa chip (CS).

Đầu vào này tích cực ở mức cao, nghĩa là cho phép bộ nhớ hoạt động bình thường khi nó đang ở mức cao. Nếu đầu vào này ở mức thấp thì nó không cho phép bộ nhớ hoạt động.

Ví dụ 1:

Trình bày trạng thái tại mỗi đầu vào, ra khi dữ liệu 1110 được ghi vào địa chỉ 01101.

Giải :

Đầu vào  địa chỉ: 01101

Đầu vào dữ liệu: 1110

: thấp

Đầu vào cho phép bộ nhớ: cao

Đầu ra dữ liệu: xxxx (không sử dụng)

Ví dụ 2: Một bộ nhớ có dung lượng 4Kx8. Hỏi

a. Có bao nhiêu đầu vào dữ liệu và đầu ra dữ liệu?

b. Có bao nhiêu đường địa chỉ?

c. Dung lượng của nó tính theo byte?

Giải

a. Bởi vì dung lượng 4Kx8 nên có 8 đầu vào, 8 đầu ra, kích cỡ từ là 8 bit.

b. Bộ nhớ lưu trữ 4K= 4x1024 = 4096 từ. Vì vậy có 4096 địa chỉ nhớ. Vì 4096 = 212 nên cần có mã địa chỉ 12 bit để định rõ một trong 4096 địa chỉ, cần 12 đường địa chỉ.

c. Một byte = 8 bit nên bộ nhớ này có dung lượng 4096 bit.

3.2 CÁCH NỐI KẾT GIỮA CPU VÀ BỘ NHỚ.

Hầu hết  các máy tính hiện đại ngày nay bộ nhớ chính luôn giao tiếp với CPU. Bộ nhớ chính của máy tính cấu thành từ các IC ROM và RAM. Các IC náy giao tiếp với CPU thông qua ba nhóm đường truyền (bus) địa chỉ, đường (bus) dữ liệu và đượng ( bus) điều khiển.

 Hình 4.4 minh họa cách kết nối các nhóm truyền (bus) nối từ IC của bộ nhớ chính với CPU.

Hoạt động ghi

CPU gởi vào đường địa chỉ (address bus) địa chỉ vùng nhớ muốn làm việc.

CPU đặt dữ liệu cần lưu lên các đường truyền của bus dữ liệu.

CPU kích hoạt các đường tín hiệu điều khiển thích hợp cho hoạt động ghi vào bộ nhớ.

Các IC nhớ giải mã địa chỉ nhị phân nhằm xác định đâu là vị trí được chọn cho hoạt động lưu trữ.

Dữ liệu trên bus dữ liệu được truyền đến vị trí nhớ đã chọn.

Hoạt động đọc

Bất cứ khi nào CPU muốn đọc dữ liệu tại một vị trí nhớ cụ thể đều phải diễn ra các buớc sau:

CPU cấp địa chỉ nhị phân của vị trí nhớ chứa dữ liệu cần truy xuất. Nó đặt địa chỉ này lên đường truyền của bus địa chỉ.

CPU kích hoạt các đường truyền tín hiệu điều khiển  thích hợp cho hoạt động đọc bộ nhớ.

Vi mạch nhớ giải mã địa chỉ nhị phân nhằm xác định đâu là vị trí nhớ được chọn cho hoạt động đọc.

Vi mạch nhớ đặt đặt dữ liệu từ vị trí nhớ được chọn vào các đường truyền dữ liệu, từ đó dữ liệu được chuyển đến CPU.

Qua hai hoạt động ghi và đọc ta thấy được chức năng của các đường bus như sau:

Bus địa chỉ: Đây là bus một chiều mang kết quả xuất địa chỉ nhị phân từ CPU đến IC nhớ để chọn một vị trí nhớ.

Bus dữ liệu: Đây là bus hai chiều, chuyển tải dữ liệu qua lại giữa CPU và bộ nhớ.

Bus điều khiển: Bus này truyền tín hiệu điều khiển từ CPU đến các IC nhớ.