Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2

BÀI 1: CÁC KHÁI NIỆM CƠ BẢN VỀ BỘ NHỚ BÁN DẪN

Trên thực tế có rất nhiều dạng bộ nhớ, cụ thể như:

-          Bộ nhớ cơ khí: hệ thống công tắc hình trống/cam…

-          Bộ nhớ từ: đĩa cứng, đĩa mềm, băng từ …

-          Bộ nhớ quang: đĩa CD ROM, băng giấy đục lỗ …

So với các bộ nhớ trên, bộ nhớ bán dẫn có một số ưu điểm như tốc độ xử lý, kích thước nhỏ gọn, dễ dàng trong điều khiển việc truy xuất dữ liệu...  Trong thực tế khi sử dụng bộ nhớ bán dẫn, người ta thường lưu ý các thông số sau:

Vì sao bộ nhớ là bội 2

Hình 4.1: Bộ nhớ bán dẫn

Các BUS là một tập hợp các dây dẫn được sử dụng để mang tín hiệu đi trao đổi thông tin giữa các thiết bị trong hệ vi xử lý. Điển hình một máy tính 8 bit có các thanh ghi với độ rộng 8 bit và 8 đường trong 1 BUS dữ liệu. Một máy tính 16 bit có các thanh ghi 16 bit, BUS dữ liệu có 16 đường … Có thể dùng hình ảnh đường giao thông để minh hoạ các BUS (Hình 4.2): trên đường giao thông có nhiều địa điểm như A, B, C, D … Nếu chỉ dùng dây điện để nối (nối cứng) ta phải tốn rất nhiều đường dây để liên kết giữa các địa điểm lại với nhau nhưng khi đi trên đường, lái xe dù không thông thạo vùng này cứ đi dọc xa lộ là có thể tìm đến địa điểm cần đến. Rõ ràng với một BUS ta có thể liên kết nhiều thiết bị trong hệ vi xử lý lại với nhau (mỗi thiết bị có thể xem như một địa điểm trên đường giao thông còn xe mang thông tin trao đổi giữa các thiết bị trong hệ thống).

Vì sao bộ nhớ là bội 2

Hình 4.2: Minh hoạ BUS thông qua hình ảnh đường giao thông.

            Dựa vào tính chất thông tin tải trên Bus, người ta phân làm ba loại chính:

  • Tuyến địa chỉ: đây là bus 1 chiều, được sử dụng để xác định địa chỉ của vùng nhớ trong bộ nhớ bán dẫn, nơi mà bộ nhớ chọn để truy xuất dữ liệu.

  • Tuyến điều khiển: đây là bus 1 chiều nhưng hình vẽ tổng quan thì xem như hai chiều. Tuyến này xác định việc đọc hay viết dữ liệu trên bộ nhớ bán dẫn. Cụ thể, dữ liệu được viết vào vùng nhớ được chọn hay từ đó xuất đi. Ngoài ra, cho phép bộ nhớ ngưng làm việc (treo: không dùng đến) cũng do tín hiệu trên tuyến điều khiển này quyết định.

  • Tuyến dữ liệu: đây là bus 1 chiều với ROM và là 2 chiều với các bộ nhớ khác, được sử dụng để mang dữ liệu từ vùng nhớ được chọn bởi tuyến địa chỉ trong bộ nhớ đến các thiết bị khác như CPU, ROM, RAM và các cổng nhập/xuất (I/O) trong hệ thống.

Thời gian truy xuất (Access Time) là thời gian cần thiết để thực hiện hoạt động đọc, nghĩa là thời gian từ lúc bộ nhớ nhận được địa chỉ mới ở đầu vào cho đến khi dữ liệu đã sẵn sàng cho đầu ra. Ký hiệu at hay tACC.

Dung lượng (Capacity): Nói lên số bit tối đa có khả năng lưu trữ trong bộ nhớ. Ví dụ có một bộ nhớ lưu trữ được 2048 từ 8 bit. Như vậy bộ nhớ có dung lượng của bộ nhớ là 2048 x 8, trong đó đại lượng thứ nhất (2048) là tổng số từ, và đại lượng thứ hai (8) là số bit trong mỗi từ (kích cỡ từ). Số từ trong bộ nhớ thường là bội số của 1024.

Đơn vị chuyển đổi như sau:

1 byte = 8 bit

1Kbyte = 210 = 1024 bit

1Mbyte = 2020 = 1,048,576 bit

1Gbyte = 230 = 1,073,741,824 bit

Ô nhớ (Memory Cell): là phần tử, linh kiện điện tử có khả năng lưu trữ một bit đơn (1 hay 0). Ví dụ như flip – flop (FF), tụ tích điện, một vết trên băng từ.

Từ nhớ (Memory Word): là một nhóm bit trong bộ nhớ biểu diễn các chỉ thị hay dữ liệu thuộc loại nào đó. Ví dụ như thanh ghi gồm 8 Flip-Flop có thể xem như là bộ nhớ có khả năng nhớ 1 từ mã 8 bit. Kích cỡ từ trong một hệ thống điện tử số thường biến thiên trong khoảng 4 đến 64 bit.

1.2 TỔ CHỨC BỘ NHỚ BÁN DẪN

1.2.1 Hoạt động của bộ nhớ

Để minh hoạ việc truy xuất dữ liệu trong bộ nhớ bán dẫn, có thể mượn hình ảnh tủ đựng hồ sơ trong các công sở (hình 4.3 a). Mỗi một hộc tủ trong tủ hồ sơ được đánh số theo nguyên tắc như sau: chữ số đầu tiên (đánh theo hệ 16) của hộc là con số chỉ thứ tự hàng của hộc này; chữ số đầu thứ hai (cũng đánh theo hệ 16) của hộc là con số chỉ thứ tự cột của hộc này. Do đó mỗi một hộc tủ đều có một mã địa chỉ được ghi dưới dạng mã 16 riêng, chỉ ra vị trí của hộc trên tủ hồ sơ. Giả sử khi muốn đưa một hồ sơ mới (dữ liệu) vào hộc tủ có mã số là 03, ta chỉ việc trùng phùng từ hàng 0 với cột 3 là gặp hộc tủ này. Việc ghi hay nạp dữ liệu là tuỳ vào tuyến điều khiển.

Khi số hộc tủ không đủ để giữ số hồ sơ cần lưu trữ, người ta mua thêm một tủ cùng loại với tủ cũ và việc đánh số địa chỉ tương tự như cũ. Lúc này việc đánh số phân biệt giữa 2 tủ giống như lập mã vùng trong thuê bao điện thoại: có thể xem tủ thứ nhất là vùng 1 và tủ mới mua là vùng 2 (hình 4.3 b). Khi cần liên hệ dữ liệu trong cùng một vùng thì không cần sử dụng mã vùng (giống như gọi điện thoại nội hạt), chỉ khi liên hệ giữa hai vùng khác nhau lúc này mới sử dụng đến mã vùng (giống như gọi điện thoại liên tỉnh). Nghĩa là hồ sơ khi trao đổi trong cùng một tủ, ta không cần sử dụng thêm một số nào trong mã địa chỉ nhưng muốn chuyển hồ sơ từ tủ này sang tủ kia bắt buộc phải sử dụng thêm một con số nữa trong mã địa chỉ (tương tự như mã vùng khi gọi điện thoại). Cụ thể, tủ cũ thêm số 0 vào bên trái của mã địa chỉ còn tủ mới thêm số 1 vào bên trái của mã địa chỉ. Như vậy 001; 011; 034; 075… là các địa chỉ của các hộc trong tủ cũ và 101; 111; 134; 175 là các địa chỉ của các hộc trong tủ mới (cùng vị trí vật lý nhưng khác tủ).

Vì sao bộ nhớ là bội 2
(a)

Vì sao bộ nhớ là bội 2
(b)

Hình 4.3: Hình ảnh minh hoạ việc truy xuất dữ liệu trong bộ nhớ bán dẫn

Minh hoạ việc đánh số trên qua hình 4.4. Bên trái là một số điện thoại thật, tương ứng với bên phải là cách đánh số địa chỉ trong bộ nhớ bán dẫn theo mã hexa.

Vì sao bộ nhớ là bội 2

Hình 4.4: Minh hoạ việc đánh số trên vùng địa chỉ của bộ nhớ bán dẫn.

Hình 4.5 minh hoạ một bộ nhớ RAM trong chương trình mô phỏng SMS 32v23 (trình bày ở chương 4) trình bày nội dung và cách đánh địa chỉ cho từng ô nhớ chứa nội dung như cách thức ở tủ hồ sơ vừa nêu ở trên.

Vì sao bộ nhớ là bội 2

Hình 4.5: Bộ nhớ RAM trong chương trình mô phỏng SMS 32v23

Cho ví dụ đơn giản minh hoạ về nguyên tắc hoạt động của bộ nhớ bán dẫn: khi bạn muốn gởi một lá thư cho bạn mình đang sống ở Pháp, bạn phải ghi địa chỉ của bạn mình vào bì thư: đó chính là thông tin trên tuyến địa chỉ, xác định nơi mà lá thư của bạn sẽ đến; viết vào thư những thông tin mà mình muốn gởi rồi cho vào bì thư dán lại: đó là thông tin trên tuyến dữ liệu; đến bưu điện để xác nhận việc mình sẽ gởi lá thư đó sang Pháp theo địa chỉ ghi trên bì thư: đó là thông tin yêu cầu đặt trên tuyến điều khiển. Như vậy việc trao đổi thông tin trên bộ nhớ bán dẫn cũng tương tự như việc trao đổi thư từ theo dạng truyền thống mà thôi! Sự phối hợp nhịp nhàng giữa 3 tuyến sẽ giúp bộ nhớ hoàn thành tốt công việc của mình: lưu trữ và trao đổi thông tin.

Hình 4.6 minh hoạ sơ đồ khối tiêu biểu cho một ROM, gồm có đầu vào địa chỉ, đầu vào điều khiển và đầu ra dữ liệu.

Giả sử ROM đã được lập trình với dữ liệu minh hoạ như ở hình 4.7. Có thể có 16 từ dữ liệu (nhóm 8 bit) riêng biệt được ghi vào 16 địa chỉ khác nhau dưới dạng nhị phân.

HOẠT ĐỘNG ĐỌC

     Để đọc một từ dữ liệu từ ROM, ta phải làm như sau: áp đầu vào địa chỉ thích hợp, sau đó kích hoạt đầu vào điều khiển.

Vì sao bộ nhớ là bội 2

Hình 4.6: Sơ đồ minh hoạ 3 tuyến: dữ liệu, địa chỉ, điều khiển

Vì sao bộ nhớ là bội 2

Hình 4.7: Bảng dữ liệu tương ứng với các địa chỉ trong ROM

Ví dụ muốn đọc dữ liệu tại địa chỉ 0111 của ROM (hình 4.5) ta phải đưa A3A2A1A0 = 0111 vào các chân địa chỉ, sau đó áp dụng trạng thái thấp cho

Vì sao bộ nhớ là bội 2
.

Đầu vào địa chỉ được giải mã bên trong ROM để chọn được dữ liệu đúng là 11101101. Giá trị này sẽ xuất hiện tại đầu ra D7 đến D0.


Page 2

Vì sao bộ nhớ là bội 2

BÀI 2: CẤU TRÚC BỘ NHỚ BÁN DẪN

BỘ NHỚ ROM

Bộ nhớ chỉ đọc được (ROM) là một dạng của bộ nhớ bán dẫn mà nó được thiết kế giữ cho dữ liệu không thay đổi. Khi hoạt động dữ liệu mới không thể viết vào ROM được mà chỉ có thể đọc được.

ROM được sử dụng để lưu trữ  dữ liệu và tin tức. Nó không làm thay đổi dữ liệu trong suốt quá trình hoạt động của hệ thống. ROM chủ yếu thực hiện chức năng đọc là chính.

2.1 SƠ ĐỒ KHỐI CỦA ROM

Hình 4.5 minh họa sơ đồ khối tiêu biểu cho một ROM, gồm có đầu vào địa chỉ, đầu vào điều khiển và đầu ra dữ liệu.

Vì sao bộ nhớ là bội 2

Giả sử ROM đã được lập trình với dữ liệu minh họa như ở hình 4.6. 16 từ dữ liệu khác nhau được ghi vào 16 địa chỉ khác nhau dưới dạng nhị phân. Người ta còn sử dụng số thập lục phân để biểu diễn dữ liệu đã lập trình (hình 4.7).

Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2

HOẠT ĐỘNG ĐỌC

        Để đọc một từ dữ liệu từ ROM, ta phải làm như sau: áp đầu vào địa chỉ thích hợp, sau đó kích hoạt đầu vào điều khiển.

        Ví dụ muốn đọc dữ liệu tại địa chỉ 0111 của ROM (hình 4.5) ta phải áp A3A2A1A0 = 0111 cho đầu vào địa chỉ, sau đó áp dụng trạng thái thấp cho

Vì sao bộ nhớ là bội 2
.

Đầu vào địa chỉ được giải mã bên trong ROM để chọn được dữ liệu đúng là 11101101. giá trị này sẽ xuất hiện tại đầu ra D7 đến D0.

2.2 CẤU TRÚC CỦA ROM

Cấu trúc bên trong của ROM rất phức tạp. Hình 4.8 là sơ đồ đơn giản mô tả cấu trúc bên trong của một ROM có dung lượng 16x8. Gồm có 4 phần cơ bản: mảng thanh ghi, bộ giải mã hàng, bộ giải mã cột, bộ đệm đầu ra.

Mảng  thanh ghi (Resister array) lưu trữ dữ liệu được lập trình vào ROM. Mỗi thanh ghi gồm một ô nhớ bằng số kích thước từ. Trong trường hợp này mỗi thanh ghi chứa một từ 8 bit. Các thanh ghi được sắp xếp theo ma trận vuông, các thanh ghi ở đây là thanh ghi “ chết ”, không ghi thêm được.

Vì sao bộ nhớ là bội 2

Vị trí của từng thanh ghi được định rõ qua số hàng và số cột cụ thể. 8 đầu ra dữ liệu của mỗi thanh ghi được nối vào một đường dữ liệu bên trong chạy qua toàn mạch. Mối thang ghi có hai đầu vào cho phép. Cả hai phải ở mức cao thì dữ liệu ở thanh ghi mới được phép đưa vào dường truyền.

Bộ giải mã địa chỉ

Mã địa chỉ A3A2A1A0 quyết định thanh ghi nào trong dãy được phép đặt từ dữ liệu 8 bit của nó vào đường truyền. Ở đây dùng 2 bộ giải mã: bộ giải mã chọn hàng (chọn 1 trong 4) và chọn cột. Thanh ghi giao giữa hàng và cột được chọn bởi đầu vào địa chỉ sẽ là thanh ghi được kích hoạt (cho phép).

Ví dụ: Địa chỉ vào là 1101 thì thanh ghi nào xuất dữ liệu.

Với A3A2 = 11, bộ giải mã cột sẽ kích hoạt đường chọn cột số 3

Với A1A0 = 01, bộ giải mã hàng sẽ kích hoạt đường chọn hàng số 1

Như vậy kết quả là cả hai đầu vào cho phép thanh ghi số 13 sẽ ở mức cao và dữ liệu của thanh ghi này sẽ được đưa vào đường truyền dữ liệu.

Bộ đệm đầu ra

Thường sử dụng mạch đệm 3 trạng thái, điều khiển bằng chân

Vì sao bộ nhớ là bội 2
. Khi
Vì sao bộ nhớ là bội 2
ở mức thấp, bộ đệm đầu ra chuyển dữ liệu này ra ngoài. Khi
Vì sao bộ nhớ là bội 2
ở mức cao, bộ đệm đầu ra sẽ ở trạng thái trở kháng cao. D7 đến D0 thả nổi.

2.3 THÔNG SỐ THỜI GIAN CỦA ROM

Sẽ có một khoảng thời gian trễ do truyền từ khi yêu cầu được đưa vào qua đầu vào của ROM đến khi dữ liệu xuất hiện ở đầu ra trong hoạt động đọc. Thời gian này gọi là thời gian truy xuất (tACC). Thời gian truy xuất được biểu diễn ở dạng sóng trong hình 4.9.

Vì sao bộ nhớ là bội 2

Dạng sóng phía trên biểu diễn đầu vào địa chỉ; dạng sóng ở giữa là một

Vì sao bộ nhớ là bội 2
tích cực ở mức thấp; dạng sóng dưới cùng biểu diễn đầu ra của dữ liệu.

Một thông số thời gian khác cũng quan trọng đó là thời gian cho phép ra tOE. Đó là thời gian trễ giữa đầu vào

Vì sao bộ nhớ là bội 2
và đầu ra dữ liệu hợp lệ.

tACC ( TTL) :     30 – 90ns.

tACC ( NMOS) : 200 – 900ns.

tACC ( CMOS) :  20 – 60ns

tOE (TTL) :        ROM 10 - 20ns

tOE ( NMOS) :   ROM 25 - 100ns

tOE ( CMOS) :   ROM 10 – 20ns

BỘ NHỚ RAM

RAM: Random Access Memory – bộ nhớ truy xuất bất kỳ còn gọi là bộ nhớ đọc viết (RWM: read write memory). Nghĩa là mọi địa chỉ nhớ đều cho phép dể dàng truy cập như nhau. Trong máy tính RAM được dùng như bộ nhớ tạm hay bộ nhớ nháp.

Ưu điểm chính của RAM đọc hay viết dữ liệu lưu trữ ở RAM bất cứ lúc nào.

Nhược điểm của RAM: do RAM là một dạng bộ nhớ bốc hơi nên khi mất điện dữ liệu sẽ bị xóa do đó cần nguồn nuôi pin – accu dự phòng (back up batterry).

        Tương tự như ROM, RAM  bao gồm một số thanh ghi, mỗi thanh ghi lưu trữ một từ dữ liệu và có địa chỉ không trùng lập. RAM thường có dung lượng 1K, 4K, 8K, 64K, 128K, 256K và 1024K với kích thước từ 1, 4 hay 8 bit (có thể mở rộng thêm).

Vì sao bộ nhớ là bội 2

Hình 4.16 minh họa cấu trúc của đơn giản của một RAM lưu trữ 64 từ 4 bit (bộ nhớ 64x4). Số từ này có địa chỉ trong khoảng từ 0 đến 6310. Để chọn 1 trong 64 địa chỉ để đọc hay ghi, một mã địa chỉ nhị phân sẽ được đưa vào mạch giải mã. Vì 64=26 nên bộ giải mã cần mã vào 6 bit.

Hoạt động đọc (Read Operation)

        Mã địa chỉ nhận được từ chọn thanh ghi để đọc hoặc viết. Để đọc thanh ghi được chọn thì đầu vào đọc ghi (

Vì sao bộ nhớ là bội 2
) phải là logic 1. Ngoài ra đầu vào chip select
Vì sao bộ nhớ là bội 2
phải ở mức logic 0. Sự kết hợp giữa
Vì sao bộ nhớ là bội 2
= 1 và
Vì sao bộ nhớ là bội 2
= 0 sẽ cho phép bộ đệm đầu ra, sao cho nội dung của thanh ghi được chọn xuất hiện ở bốn đầu ra dữ liệu.

Vì sao bộ nhớ là bội 2
= 1 cũng cấm bộ đệm đầu vào nên đầu vào dữ liệu không tác động đến bộ nhớ suốt hoạt động đọc.

Hoạt động ghi (Write Operation)

        Để viết một từ 4 bit mới vào thanh ghi được chọn, khi đó cần phải có

Vì sao bộ nhớ là bội 2
= 0 và
Vì sao bộ nhớ là bội 2
= 0. Tổ hợp này cho phép bộ
đệm đầu vào, vì vậy từ 4 bit đã đặt vào dữ liệu sẽ được nạp vào thanh ghi đã chọn.
Vì sao bộ nhớ là bội 2
= 0 cũng cấm bộ đệm đầu ra. Bộ đệm đầu ra là bộ đệm 3 trạng thái nên đầu ra dữ liệu sẽ ở trạng thái Hi-Z trong hoạt động ghi. Hoạt động ghi sẽ xóa bỏ từ nào đã được lưu trữ tại địa chỉ đó.

Chọn chip (Chip Select)

Hầu hết các chip nhớ đều có một hay nhiều đầu vào CS dùng để cho phép toàn chip hoặc cấm nó hoàn toàn. Trong chế độ cấm, tất cả đầu vào và ra dữ liệu đều bị vô hiệu hóa (Hi-Z), chính vì vậy không hoạt động ghi đọc nào có thể xảy ra. Ngoài tên gọi CHỌN CHIP các nhà sản xuất còn gọi là CHIP ENABLE (CE). Khi đầu vào CS hay CE ở trạng thái tích cực thì chip nhớ đã được chọn còn ngược lại thì không được chọn. Tác dụng của chân CS hay CE là dùng để mở rộng bộ nhớ khi kết hợp nhiều chip nhớ với nhau.

Các chân vào ra chung (Common Input Output)

        Để hạn chế số chân trong một IC, các nhà sản xuất thường kết hợp các chức năng nhập/xuất dữ liệu, dựa vào chân vào/ra (I/O). Đầu vào

Vì sao bộ nhớ là bội 2
điều khiển các chân vào/ra này.

        Trong hoạt động đọc, chân I/O đóng vai trò như đầu ra dữ liệu, tái tạo nội dung của ô nhớ được chọn. Trong hoạt động ghi, chân I/O là đầu vào dữ liệu, dữ liệu cần ghi được đưa vào đây.


Page 3

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:

Vì sao bộ nhớ là bội 2
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ì sao bộ nhớ là bội 2

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.

Vì sao bộ nhớ là bội 2
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ì sao bộ nhớ là bội 2

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ỉ.

Vì sao bộ nhớ là bội 2
Ngõ vào
Vì sao bộ nhớ là bội 2

Đầu vào

Vì sao bộ nhớ là bội 2
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

Vì sao bộ nhớ là bội 2
= 1 ( R ở mức cao)

Hoạt động viết xảy ra khi

Vì sao bộ nhớ là bội 2
= 0 ( W ở mức thấp)

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

Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2
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

Vì sao bộ nhớ là bội 2
: 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.

Vì sao bộ nhớ là bội 2
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.

Vì sao bộ nhớ là bội 2
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:

Vì sao bộ nhớ là bội 2
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ớ.

Vì sao bộ nhớ là bội 2
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ớ.

Vì sao bộ nhớ là bội 2
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ớ.


Page 4

Vì sao bộ nhớ là bội 2

BÀI 4: PHÂN LOẠI BỘ NHỚ BÁN DẪN

CÁC LOẠI ROM

  4.1 ROM LẬP TRÌNH BẰNG MẶT NẠ (Mask Programed ROM)

    Với ROM được lập trình bằng mặt nạ, nhà sản xuất đã ghi (lập trình) các vị trí nhớ của nó theo yêu cầu của khách hàng. Một phím âm bản, gọi là mặt nạ được sử dụng để kiểm soát các mối nối điện trên chip.

Vì mặt nạ rắt đắt nên loại ROM này không được mang lại hiệu quả kinh tế. Nhược điểm của loại ROM này là nó không cho phép lập trình lại, vì vậy nó là dạng ROM đúng nghĩa. Tuy nhiên ROM được lập trình bằng mặt nạ vẫn chỉ là phương pháp tiết kiệm nhất khi cần trang bị số lượng lớn ROM cùng loại.

    Hình 4.10 trình bày cấu trúc của một MROM TTL nhỏ, gồm 16 ô nhớ được sắp xếp thành 4 hàng x 4 cột. Mỗi ô là một transistor lưỡng cực được kết nối theo cực C chung. Giãi mã 1 sang 4 đường được sử dụng để giải mã địa chỉ ngõ vào A1A0 khi chọn thanh ghi hàng để đọc dữ liệu. Mạch giải mã ở trạng thái cao cung cấp cho phép giải mã hàng của ngõ vào cực B cho giá trị của ô nhớ.

Vì sao bộ nhớ là bội 2

Ví dụ : Một MROM được đùng để lưu trữ bảng giá trị các hàm toán học: y = x2 + 3, với x là ngõ vào, y là ngõ ra.

Ta có bảng giá trị sau:

Số x biểu thị qua giá trị A1A0.

Khi x = A1A0 = 102 = 210 suy ra y = 22+ 3 = 710 = 01112

Vì sao bộ nhớ là bội 2

4.2 ROM CHO PHÉP LẬP TRÌNH (Programmable ROM – PROM)

    PROM có cấu tạo như ROM nhưng có hai đặc điểm khác biệt, đó là:

Tất cả các tế bào nhớ đều có diode hay transistor lưỡng cực hay transistor MOS, tùy  theo công nghệ chế tạo.

    Phần tử bán dẫn được nối với cầu chì tích hợp. Cầu chì đứt rồi không thể nối lại được do đó ta chỉ có thể lập trình PROM một lần thôi.

    Muốn đổi từ bit 1 sang bit 0 người ta dùng một xung điện có biên độ và độ rộng xung thích hợp (cho biết bởi nhà sản xuất) giữa đường từ và đường bit tương ứng để làm đứt cầu chì.

Hình 4.11 minh họa hoạt động  lập trình của một PROM

Vì sao bộ nhớ là bội 2

4.3 ROM CHO PHÉP LẬP TRÌNH GHI XOÁ ĐƯỢC (Erasable PROM – EPROM)

        PROM chỉ lập trình được một lần vì cầu chì đứt không thể nối lại được từ bên ngoài. Nên khi nạp chương trình sai hay muốn đổi chương trình thì ta phải dùng một PROM mới. Do đó nguời ta đã chế tạo ra loại EPROM cho phép người sử dụng có thể lập trình và xóa được.

Cách nạp như sau

Đặt mức điện áp  đặt biệt (từ 25V – 50V tùy loại) vào ngõ vào (+Vpp) và cần một thời gian (50ns cho một vùng nhớ) do đó thời gian nạp một EPROM mất vài phút.

Ô nhớ trong EPROM là những transistor MOS với cổng logic silic thả nổi. Ở trạng thái bình thường mọi transistor đều tắt và mỗi ô nhớ lưu trữ logic 1. Xung điện áp sẽ đẩy các electron năng lượng cao vào khu vực cổng thả nổi và chúng vẩn còn kẹt trong lúc xung điện đã kết thúc, do không có đường phóng điện. Vì vậy transistor cứ tiếp tục mở ngay khi ngắt điện với thiết bị và ô nhớ lúc này lưu trữ logic 0.

Khi một ô nhớ của EPROM được lập trình thì có thể xóa nó bằng cách chiếu tia cực tím (UV) qua một của sổ trên vỏ chip. Tia UV tạo một dòng quang điện từ cổng thả nổi trở về chân đế bằng silic, qua đó nó xóa đi các điện tích lưu trữ, tắt transitor và phục hồi ô nhớ về trạng thái logic 1. Quá trình  xóa này thường cần từ 15 đến 20 phút.

Nhược điểm của EPROM:

Phải tháo EPROM ra khỏi mạch mới để xóa rồi mới nạp trình được.

Khi cần xóa hay thay đổi một từ cũng không thể nạp chồng lên từ đó mà phải xóa hết và nạp lại từ đầu.

4.4 ROM CHO PHÉP LẬP TRÌNH VÀ XÓA ĐƯỢC BẰNG ĐIỆN (Electrically Erasable PROM – EEPROM)

        Khuyết điểm của EPROM được khắc phục với sự ra đời của EEPROM. EEPROM giữ lại cấu trúc cổng thả nổi của EPROM, nhưng có thêm một lớp oxit rất mỏng phía trên cực máng của ô nhớ MOSFET. Sự bổ xung này hình thành nên đặc điểm chính của EEPROM đó là khả năng xóa bằng điện.

        Nguyên lý căn bản của EEPROM  cũng giống như EPROM dùng cấu trúc tha nổi. Nhờ thêm vào một lớp oxide mỏng gần cực thoát của tế bào MOSFET, khi áp điện cao (21V) giữ cực G và D với một lượng điện tích có thể len vào cổng nổi lưu trữ tại đó ngay cả khi ngưng cung cấp điện tích khỏi cổng nổi và xóa ô nhớ. Do cơ chế truyền điện tích này chỉ đòi hỏi dòng điện rất thấp nên  việc xóa và lập trình EEPROM có thể thực hiện ngay trong mạch (không cần nguồn UV và máy lập trình PROM đặc biệt).

Ưu điểm của EEPROM

Có khả năng nạp từng từ riêng lẽ (không giống như EPROM phải nạp cả IC).

Xóa rất nhanh (10ms trên mạch ) so với 30 phút phơi ánh sáng UV.

Nạp rất nhanh (10ms so với 50ms của EPROM).

Đặc tính nạp - xóa trên mạch

EEPROM cần có nguồn 5V(Vcc) và 21V : lấy từ 5V qua bộ chuyển đổi DC-DC.

Mạch khống chế xung 10ns để tạo cho quá trình nạp và xóa.

ỨNG DỤNG CỦA ROM

Lưu trữ chương trình chạy máy tính

Lưu trữ chương trình chởi động máy (boottrap memory).

Hoạt động như mạch tổ hợp, ROM đảm nhiệm chức năng như PLA (programmable logic array – chuổi hàm logic)

Bảng dữ liệu: chứa các dữ liệu cần tham khảo chẳng hạn như bảng chuyển đổi mã, bảng các giá trị lượng giác. Bộ tạo ký tự như tạo các ký mã ASCII.

Mạch tạo dạng sóng (function generator) là một mạch tạo các dạng sóng như hình sine, sóng răng cưa, sóng tam giác, sóng vuông.

CÁC LOẠI RAM

5.1 RAM TĨNH (Static RAM) là RAM có thể lưu trữ dữ liệu đến khi nào chip vẩn còn được cấp điện. Ngày nay RAM lưỡng cực tĩnh được chế tạo theo công nghệ TTL, công nghệ ECL đã đạt đến dung lượng nhớ hơn 16Kbit, thời gian truy xuất dưới 10ns và công suất tiêu thụ dưới 0,1mW/bit và công nghệ NMOS, CMOS, HMOS, MIXMOS, XMOS với dung lượng 256Kb, thờigian truy xuất thấp đến 15ns. Bảng dưới đây là một số thông số của các loại RAM tĩnh theo các công nghệ chế tạo khác nhau.

Vì sao bộ nhớ là bội 2

Từ bảng thông số trên cho thấy:

Vì sao bộ nhớ là bội 2
ECL có thời gian truy xuất ngắn nhất

Vì sao bộ nhớ là bội 2
ECL, TTL có dung lượng nhỏ hơn CMOS, NMOS

Vì sao bộ nhớ là bội 2
CMOS, NMOS có công suất thấp hơn ECL, TTL. ECL có công suất cao nhất

5.1.1 Giản đồ thời gian của SRAM

Các IC RAM thường được dùng làm bộ nhớ trong máy tính. Chip nhớ giao diện với CPU phải đủ nhanh mới đáp ứng được các lệnh đọc và ghi của CPU. Không phải tất cả các loại RAM đều có đặc điểm thời gian như nhau.

Hình 4.17 biểu diễn sơ đồ thời gian cho một chu kỳ đọc và chu kỳ ghi hoàn chỉnh của một chip SRAM điển hình.

Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2

Hình 4.17 Sơ đồ thời gian tiêu biểu của SRAM

5.1.2 Chu kỳ đọc

        Dạng sóng ở hình 4.17a minh họa hành vi của đầu vào địa chỉ

Vì sao bộ nhớ là bội 2
, đầu vào  trong chu kỳ đọc của bộ nhớ.

        Chu kỳ đọc bắt đầu tại thời điểm t0. Trước thời điểm này, đầu vào địa chỉ có thể là bất kỳ địa chỉ nào có sẵn trên bus địa chỉ từ hoạt động ngay trước đó. Vì đầu vào của RAM không tích cực nên nó sẽ không đáp ứng địa chỉ cũ. Tại thời điểm t0 CPU cung cấp địa chỉ mới cho đầu vào của RAM, đây chính là địa chỉ của vị trí nhớ cần đọc. Sau thời gian ổn định tín hiệu địa chỉ, đường được kích hoạt. RAM đáp ứng bằng cách thay đặt dữ liệu từ vị trí nhớ có địa chỉ xác định vào đường ra dữ liệu tại thời điểm t1. tACC là thời gian truy cập của RAM. tCO là thời gian cần thiết để đầu vào của RAM đi từ mức Hi-Z đến mức dữ liệu hợp lệ một khi tích cực.

        Tại thời điểm t2, trở về mức cao, và đầu ra của RAM trở về trạng thái Hi-Z sau khoảng thời gian tOD. Vậy dữ liệu của RAM sẽ ở trên bus dữ liệu trong khoảng thời gian từ t1 đến t3.

        Thời gian của một chu kỳ hoàn chỉnh là tRC, kéo dài từ t0 đến t4 khi CPU thay đổi đầu vào địa chỉ mới cho chu kỳ đọc/ghi khác diễn ra tiếp theo.

5.1.3 Chu kỳ ghi

        Hình 4.17b biểu diễn hoạt động của tín hiệu cho một chu kỳ ghi bắt đầu khi CPU cung cấp địa chỉ mới cho RAM tại thời điểm t1. CPU đưa

Vì sao bộ nhớ là bội 2
xuống thấp sau khi chờ qua khoảng thời gian tAS, thời gian thiết lập địa chỉ, cho phép bộ giải mã địa chỉ của RAM có đủ thời gian để đáp ứng địa chỉ mới.
Vì sao bộ nhớ là bội 2
bị giữ ở mức thấp trong khoảng thời gian tW gọi là thời gian ghi. tDS gọi là thời gian thiết lập dữ liệu còn tDH gọi là thời gian duy trì dữ liệu.

        Trong thời gian ghi, tại thời điểm t1, CPU cung cấp dữ liệu hợp lệ cho bus dữ liệu để ghi vào RAM. Dữ liệu này phải được duy trì tại đầu vào của RAM ít nhất một khoảng thời gian tDH sau khi

Vì sao bộ nhớ là bội 2
không còn tích cực tại thời điểm t2. Tương tự, đầu vào địa chỉ phải tiếp tục ổn định trong khoảng thời gian duy trì địa chỉ, tức sau thời điểm t2. nếu không thỏa bất kỳ điều kiện nào về thời gian thiết lập và thời gian duy trì thì hoạt động ghi xảy ra sẽ không đáng tin cậy.

        Thời gian của một chu kỳ ghi hoàn chỉnh tWC kéo dài từ t0 đến t4 khi CPU đổi sang địa chỉ mới cho chu kỳ đọc/ghi tiếp theo.

5.2. RAM ĐỘNG (DRAM)

        Ram động có tế bào nhớ là một FF. RAM động dùng kỹ thuật MOS để lưu trữ các bit 0 hay 1 trong các điện dung bẩm sinh giữa cửa và lớp nền cảu transistor MOS.

        Dữ liệu này lưu trữ ở tụ này không được duy trì lâu vì sự rỉ của tụ cũng như của các transistor MOS chung quanh nên cần được làm tươi (refresh) trong khoảng vào mili giây (nếu không tụ xả điện sẽ mất dữ liệu).

        Sự làm tươi tụ cần phải có bộ điều khiển (Dynamic Memory Controller) bên ngoài và trên cùng vi mạch. Và đây cũng là nhược điểm của RAM động so với RAM tĩnh. Nhưng ngược lại RAM tĩnh cũng có nhiều ưu điểm như: dung lượng nhớ, tốc độ, công suất tiêu thụ, giá thành hạ. Ngày nay RAM động được chế tạo theo công nghệ như NMOS, CMOS, CHMOS, XMOS với dung lượng nhớ trên Megabit, thời gian thâm nhập dưới 100ns và công suất tiêu tán rất nhỏ.

Bảng dưới đây cho biết một vài thông số so sánh giữa RAM tĩnh và RAM động

Vì sao bộ nhớ là bội 2

5.2.1 Cấu trúc và hoạt động của DRAM.

        Cấu trúc bên trong của DRAM có thể hình dung như một mảng ô nhớ bit đơn, được minh họa như hình 4.18. Ở đây, 16384 ô nhớ được sắp xếp thành ma trận 128 x128. Mỗi ô nhớ chiếm một vị trí riêng biệt trong hàng và cột thuộc phạm vi ma trận.

Có 14 đầu địa chỉ để chọn 1 trong 16384 ô nhớ (214 = 16384); những bit địa chỉ thấp từ A0 đến A6 chọn hàng, còn những bit địa chỉ cao từ A7 đến A13 chọn cột. Mỗi địa chỉ 14 bit chọn ô nhớ riêng biệt để đọc ra hay ghi vào.

Vì sao bộ nhớ là bội 2

Hình 4.19 là ký hiệu một ô nhớ động và mạch tương ứng của nó. Dựa vào sơ đồ đơn giản này ta có thể hiểu được cách đọc hay ghi dữ liệu vào DRAM.

    Các chuyển mạch từ SW1 đến SW4 thực chất là các transistor MOSFET được điều khiển bằng các đầu ra khác nhau của bộ giải mã địa chỉ và bằng tín hiệu

Vì sao bộ nhớ là bội 2
tuy nhiên ở đây tụ điện mới là ô nhớ đích thực.

Vì sao bộ nhớ là bội 2

         Khi ghi dữ liệu thì công tắc SW1 và SW2 đóng lại trong khi công tắc SW3 và SW4 vẫn mở, nối dữ liệu nhập vào tụ C. logic 1 tại đầu vào dữ liệu tích điện cho tụ C còn logic 0 thì xả điện cho tụ C. Vì luôn có sự rò điện qua các chuyển mạch đóng nên tụ C bị mất điện dần.

Vì sao bộ nhớ là bội 2

        Để đọc dữ liệu tại ô nhớ thì chuyển mạch SW2, SW3 và SW4 đóng lại còn SW1 vẫn mở nối điện thế lưu trữ với bộ khuếch đại. Bộ khuếch đại sẽ so sánh điện thế này với giá trị tham khảo nào đó để quyết định là logic 1 hay logic 0, rồi đưa ra giá trị 0V hay 5V cho đầu ra dữ liệu. Đầu ra này lại được nối với tụ qua SW2 và SW4 nên tụ điện sẽ được làm tươi. Như vậy bit dữ liệu trong ô nhớ được làm tươi mỗi khi nó được đọc.

5.2.2 Dồn kênh địa chỉ - Address Multiplexing (ghép địa chỉ)

Hiện nay các nhà sản xuất đã sản xuất ra nhiều loại DRAM với dung lượng khá lớn. Với các loại DRAM có dung lượng lớn thì đòi hỏi phải có nhiều chân vào địa chỉ nếu yêu cầu một chân riêng biệt. Để khắc phục yếu điểm này các nhà sản xuất đã sử dụng phương pháp ghép kênh địa chỉ. Bằng cách này mỗi chân vào địa chỉ có thể dung nạp hai bit địa chỉ khác nhau, tiết kiệm được số chân giúp giảm đáng kể kích cở của vỏ IC.

Hình 4.20 trình bày bộ nhớ có dung lượng từ 16K và trước đó cần 14 đường địa chỉ bus tới trực tiếp từ CPU đến bộ nhớ.

Vì sao bộ nhớ là bội 2

        Hình 4.21 minh họa địa chỉ CPU dùng mạch Multiplex để đưa địa chỉ từ CPU tới DRAM. Ta thấy chỉ có 7 đường địa chỉ ngõ vào đến DRAM, nghĩa là 14 đường địa chỉ từ  bus địa chỉ CPU được đưa vào mạch Multiplexer sẽ truyền 7 bit địa chỉ tại thời điểm nào đó tới ngõ vào địa chỉ ô nhớ. Khi MUX = 0 thì truyền A0 – A6 đến DRAM, khi MUX = 1 thì truyền A7 – A13 đến DRAM.

Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2
Giản đồ thời gian của tín hiệu MUX

        Thời gian của tín hiệu MUX phải đồng bộ với tín hiệu

Vì sao bộ nhớ là bội 2
Vì sao bộ nhớ là bội 2
. MUX phải ở mức thấp khi
Vì sao bộ nhớ là bội 2
bị kích xuống mức thấp, sao cho các đường địa chỉ A7 – A13 từ CPU sẽ đến được đầu vào địa chỉ DRAM. Tương tự MUX phải ở mức cao khi
Vì sao bộ nhớ là bội 2
bị kích xuống thấp, sao cho A0 - A6 từ CPU sẽ có mặt tại đầu vào của DRAM.

Hình 4.22 minh hoạ thời gian của tín hiệu MUX.

Vì sao bộ nhớ là bội 2

        Hình 4.23 cho thấy cấu trúc của một DRAM 16Kx1 sau khi đã dùng MUX

Vì sao bộ nhớ là bội 2

5.2.3. Chu kỳ đọc/ghi của DRAM

        Chu trình đọc/ghi của DRAM phức tạp hơn nhiều so với SRAM bởi vì cần có bộ định thời để khống chế làm tươi và bộ điều khiển bộ đệm của thanh ghi, bộ đa hợp hàng cột thông qua hai chân

Vì sao bộ nhớ là bội 2
Vì sao bộ nhớ là bội 2
.

Vì sao bộ nhớ là bội 2
Chu kỳ đọc DRAM

        Hình 4.24 biểu diễn hoạt động tiêu biểu của tín hiệu trong suốt hoạt động đọc.

Vì sao bộ nhớ là bội 2

        Giả sử

Vì sao bộ nhớ là bội 2
đang ở mức cao trong suốt hoạt động đọc. Sau đây là phần mô tả từng bước hoạt động xảy ra tại những thời điểm trong sơ đồ tín hiệu.

t0 : MUX bị đưa xuống mức thấp để áp các bit địa chỉ hàng ( A0 – A6) vào đầu vào địa chỉ của DRAM.

t1 :

Vì sao bộ nhớ là bội 2
bị đưa xuống mức thấp để nạp địa chỉ hàng vào DRAM

t2 : MUX lên mức cao để đặt địa chỉ cột (A7 – A13 ) tại các đầu vào địa chỉ của DRAM.

t3:

Vì sao bộ nhớ là bội 2
xuống thấp để nạp địa chỉ cột vào DRAM.

t4 : DRAM đáp ứng lại bằng cách đặt dữ liệu hợp lệ từ vào ô nhớ được chọn lên đường dữ liệu ra.

t5 : MUX,

Vì sao bộ nhớ là bội 2
,
Vì sao bộ nhớ là bội 2
và đường dữ liệu ra trở về trạng thái ban đầu.

Vì sao bộ nhớ là bội 2
Chu kỳ ghi của DRAM

        Hình 4.25 biểu diễn hoạt động tiêu biểu của tín hiệu trong hoạt động ghi vào DRAM.

Vì sao bộ nhớ là bội 2

        Quá trình ghi được mô tả như sau:

t0 : MUX ở mức thấp để đặt các bit địa chỉ hàng ( A0 – A6) vào đầu vào địa chỉ của DRAM.

t1 :

Vì sao bộ nhớ là bội 2
= NGT nạp địa chỉ hàng vào DRAM

t2 : MUX lên mức cao để đặt địa chỉ cột (A7 – A13) tại các đầu vào địa chỉ của DRAM.

t3:

Vì sao bộ nhớ là bội 2
= NGT để nạp địa chỉ cột vào DRAM.

t4 : Dữ liệu cần ghi được đạt lên đường dữ liệu vào.

t5 :

Vì sao bộ nhớ là bội 2
bị kích xuống thấp để ghi dữ liệu vào ô nhớ được chọn.

t6 : Dữ liệu vào bị loại bỏ khỏi đường dữ liệu vào.

t7 : MUX,

Vì sao bộ nhớ là bội 2
,
Vì sao bộ nhớ là bội 2
và đường dữ liệu vào trở về trạng thái ban đầu.

5.2.4. Làm tươi DRAM

        Việc làm tươi DRAM phải được xảy ra mỗi 2ms để duy trì dữ liệu. Mỗi một trong 256 hàng phải được kích bởi chân

Vì sao bộ nhớ là bội 2
.
Vì sao bộ nhớ là bội 2
có thể ở mức cao trong trình tự làm tươi để giảm công suất tiêu thụ. Dù  đọc hay viết vào một tế bào nào của một hàng đều phải làm tươi toàn bộ hàng đó. Để làm tươi DRAM cần phải có bộ đếm làm tươi DRAM (Refresh Controler).

Phương pháp là tươi phổ biến nhất là làm tươi chỉ với

Vì sao bộ nhớ là bội 2
, thực hiện bằng việc lựa chọn một địa chỉ hàng với
Vì sao bộ nhớ là bội 2
trong khi
Vì sao bộ nhớ là bội 2
Vì sao bộ nhớ là bội 2
vẩn ở mức cao.

Click vào mục dưới để xem các vi mạch nhớ điển hình


Page 5

Vì sao bộ nhớ là bội 2

BÀI 5: GIỚI THIỆU VI MẠCH SỐ ĐIỂN HÌNH

5.1 CHIP EPROM M2732A

    Hiện nay trên thị trường có nhiều loại EPROM với dung lượng và thời gian truy xuất khác nhau.  IC 2732A là loại EPROM NOMS nhỏ có dung lượng 4Kx8 hoạt động với nguồn điện +5V trong suốt tiến trình vận hành bình thường. Hình 4.12 minh họa sơ đồ chân và các chế độ hoạt động của IC này. IC M2732A có 12 đầu vài địa chỉ và 8 đầu ra dữ liệu. Hai đầu vào điều khiển là

Vì sao bộ nhớ là bội 2
Vì sao bộ nhớ là bội 2
.
Vì sao bộ nhớ là bội 2
là đầu vào cho phép của chip, được sử dụng để đặt thiết bị vào chế độ có đợi khi năng lượng tiêu thụ giảm. Chân
Vì sao bộ nhớ là bội 2
là đầu vào hai mục đích, có chức năng phụ thuộc vào chế độ hoạt động của thiết bị.
Vì sao bộ nhớ là bội 2
cho phép đầu ra và được sử dụng để kiểm soát vùng đệm đầu ra dữ liệu của thiết bị, sao cho có thể nối thiết bị này với bus dữ liệu của bộ vi xử lý mà không xảy ra chanh chấp bus. Vpp là điện thế lập trình đặt biệt bắt buộc phải có trong suốt giai đoạn lập trình.

Vì sao bộ nhớ là bội 2
Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2
Vì sao bộ nhớ là bội 2

Hình 4.12 (a) Kí hiệu logic của EPROM M2732A; (b) Sơ đồ chân; (c) Vỏ EPROM với cửa sổ tia tử ngoại; (d) Chế độ hoạt động của EPROM M2732A

5.2 Chip EPROM M27C64A

IC EPROM M27C62A là loại EPROM có dung lượng lớn 8Kx8 và thời gian truy xuất là 150ns. Đây là loại EPROM đang phổ biến trên thị trường, có hai dạng vỏ khác nhau để người dùng có thể chọn lựa tuỳ theo nhu cầu. Hình 4.13 minh họa ký hiệu logic và chức năng của các chân EPROM M27C64A.

Vì sao bộ nhớ là bội 2

Chế độ hoạt động của EPROM M27C64A như bảng hình 4.14

Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2

5.3 IC SRAM MCM6264C

    Một loại IC SRAM thực tế hiện dàn có mặt trên thị trường là MCM6264C CMOS 8Kx8 với chu kỳ đọc và chu kỳ ghi là 12ns, công suất tiêu thụ ở chế độ standby chỉ là 100mW. Sơ đồ chân và hình dạng  của IC này được minh họa trong hình 4.28.

Vì sao bộ nhớ là bội 2

    Cấu trúc bên trong của IC SRAM như hình 4.29. Ở đây có 13 đầu vào địa chỉ và 8 đường vào/ra dữ liệu. 4 đầu vào điều khiển quyết định chế độ vận hành của thiết  bị, theo như bảng các chế độ hoạt động hình 4.30.

Vì sao bộ nhớ là bội 2

Vì sao bộ nhớ là bội 2

    Đầu vào

Vì sao bộ nhớ là bội 2
cũng chính là đầu vào
Vì sao bộ nhớ là bội 2
.
Vì sao bộ nhớ là bội 2
ở mức thấp cho phép ghi dữ liệu vào RAM, với điều kiện RAM này được chọn cả hai đầu vào E đều tích cực.
Vì sao bộ nhớ là bội 2
ở mức cao sẽ cho phép hoạt động đọc, miễn là linh kiện phải được chọn và bộ đệm đầu ra được kích hoạt bằng
Vì sao bộ nhớ là bội 2
= LOW. Khi không được chọn linh kiện này sẽ trở vào chế độ năng lượng thấp, và không có đầu vào nào có hiệu lực.

5.4 IC DRAM TMS44100

    Hiện năng trên thị trường đang có mặt IC DRAM TMS44100 4Mx1 của hãng Texas Intruments. Sơ đồ chân và chức năng của các chân được minh họa ở hình 4.31.

Vì sao bộ nhớ là bội 2

Hình 4.32 là sơ đồ cấu trúc bên trong của IC DRAM TMS44100.

Vì sao bộ nhớ là bội 2

    Một mảng ô nhớ sắp xếp thành 2048 hàng x 2048 cột. Bộ giải mã địa chỉ, do mỗi lần chỉ chọn một hàng nên có thể xem đây như  là bộ giải mã 1 trong 2048. Do các đường địa chỉ được dồn kênh nên toàn bộ 22 bit địa chỉ không thể xuất hiện cùng một lúc. Một điều lưu ý là, ở đây chỉ có 11 đường địa chỉ và chúng phải đi đến cả thanh ghi địa chỉ hàng lẫn thanh ghi địa chỉ cột. Mỗi thanh ghi địa chỉ chứa một nửa địa chỉ 22 bit. Thanh ghi hàng lưu trữ nửa trên, thanh ghi cột lưu trữ nửa dưới. Hai đầu vào xung chọn (strobe) rất quan trọng chi phối thời điểm thông tin địa chỉ được chốt lại. Đầu vào chọn địa chỉ hàng

Vì sao bộ nhớ là bội 2
đếm nhịp thanh ghi địa chỉ hàng 11 bit. Đầu vào chọn địa chỉ cột
Vì sao bộ nhớ là bội 2
đếm nhịp thanh ghi địa chỉ cột 11 bit.

Vì sao bộ nhớ là bội 2

Một địa chỉ 22 bit được áp vào DRAM này qua 2 buớc, sử dụng

Vì sao bộ nhớ là bội 2
Vì sao bộ nhớ là bội 2
. Ban đầu cả 
Vì sao bộ nhớ là bội 2
lẩn
Vì sao bộ nhớ là bội 2
đều ở mức cao (hình 4.33 minh họa thời gian).Tại thời điểm t0, địa chỉ hàng 11 bit (A11 đến A22) được áp vào đầu vào địa chỉ. Sau thời gian cho phép tRS cần thiết để đặt thanh ghi địa chỉ hàng, đầu vào
Vì sao bộ nhớ là bội 2
bị đẩy xuống thấp tại thời điểm t1. NGT (chuyển trạng thái trên sườn xuống của tín hiệu) nạp địa chỉ hàng vào thanh ghi địa chỉ hàng sao cho từ A11 đến A21 lúc này xuất hiện tại đầu vào bộ giải mã hàng.
Vì sao bộ nhớ là bội 2
ở mức thấp còn cho phép bộ giải mã hàng, hầu có thể giải mã địa chỉ hàng và chọn được 1 hàng trong mảng.

Tại tời điểm t2, địa chỉ cột 11 bit (từ A0 đến A10) được áp vào đầu vào địa chỉ. Tại thời điểm t3 đầu vào

Vì sao bộ nhớ là bội 2
xuống thấp để nạp địa chỉ cột vào thanh ghi địa chỉ cột, vậy là có thể tiến hành hoạt động đọc hay ghi trên ô nhớ đó như trong RAM tĩnh.


Page 6

Vì sao bộ nhớ là bội 2

BÀI 6: MỞ RỘNG DUNG LƯỢNG BỘ NHỚ BÁN DẪN

Trong thực tế nhiều ứng dụng một chip nhớ không thể đáp ứng được, do đó việc mở rộng bộ nhớ và tăng kích cở từ là một vấn đề hết sức cần thiết.

6.1 TĂNG KÍCH CỠ TỪ

        Giả sử chúng ta cần một bộ nhớ có thể lưu trữ được 16 từ 4 bit, nhưng thực tế ta chỉ có các chip RAM 16x4 với các đường vào/ra (I/O) chung. Để giải quyết vấn đề này ta có thể kết hợp hai chip 16x4 lại với nhau để tạo thành một bộ nhớ mong muốn. Hình 4.26 minh họa cách kết hợp này.

Vì sao bộ nhớ là bội 2

        Bởi vì mỗi chip chỉ có thể lưu trữ 16 từ 4 bit nên ta có thể xem như đang sử dụng mỗi chip để lưu trữ phân nữa từ. Có nghĩa là RAM-0 chứa 4 bit cao của từng từ trong số 16 từ, và RAM-1 chứa 4 bit thấp của từng từ trong số 16 từ. Một từ có đủ 8 bit có mặt tại các đầu ra của RAM nối với bus dữ liệu.

        Như vậy thì bất cứ từ nào trong số 16 từ cũng được chọn bằng cách đưa mã địa chỉ tương ứng vào 4 đường của bus địa chỉ. Điều này có nghĩa là, một khi được đặt lên bus địa chỉ, mã địa chỉ sẽ được áp vào cả hai chip, sao cho mỗi chip được truy xuất cùng vị trí đồng thời. Khi có địa chỉ được chọn, ta có thể đọc hoặc ghi tại địa chỉ này dưới sự điều khiển của đường

Vì sao bộ nhớ là bội 2
và đường
Vì sao bộ nhớ là bội 2
chung.

Để đọc thì

Vì sao bộ nhớ là bội 2
phải ở mức cao, còn
Vì sao bộ nhớ là bội 2
ở mức thấp. Điều này làm các đường I/O của RAM hoạt động như đầu ra. RAM-0 đặt từ 4 bit được chọn của nó lên 4 đường trên của bus dữ liệu, RAM -1 đặt từ 4 bit được chọn của nó lên 4 đường dưới của bus dữ liệu. Lúc này bus dữ liệu đã chứa từ 8 bit hoàn chỉnh được chọn.

Để ghi thì

Vì sao bộ nhớ là bội 2
ở mức thấp và
Vì sao bộ nhớ là bội 2
cũng ở mức thấp, làm cho các đường I/O của RAM hoạt động như đầu vào. Từ 8 bit cần ghi được đặt lên bus dữ liệu, 4 bit cao sẽ được ghi vào vị trí đã chọn của RAM-0 và 4 bit thấp sẽ được ghi vào vị trí đã chọn của RAM-0.

6.2 MỞ RỘNG DUNG LƯỢNG

Giả sử ta cần mộ bộ nhớ có dung lượng chưa 32 từ 4 bit mà trong tay ta chỉ có các chip 16x4. Để tạo ra bộ nhớ có dung lượng 32x4 ta sẽ kết hợp 2 chip 16x4. Cách kết hợp được minh họa như hình 4.27.

Vì sao bộ nhớ là bội 2

Mỗi RAM được dùng để lưu trữ 16 từ 4 bit. 4 chân  vào ra dữ liệu (I/O) của mỗi RAM được nối chung một bus dữ liệu 4 đường. Tại một thời điểm chỉ cho phép chọn một chip RAM để không nảy sinh vấn đề tranh chấp bus.

Vì tổng dung lượng của mô-đun nhớ này là 32x4 nên phải có 32 địa chỉ khác nhau, đòi hỏi đến 5 đường địa chỉ. Đường địa chỉ AB4 cùng để chọn một trong hai RAM (qua đầu vào

Vì sao bộ nhớ là bội 2
) được đọc ra hay ghi vào. 4 đường địa chỉ còn lại dùng để xác định một trong 16 vị trí ô nhớ của chip RAM được chọn.


Page 7

Vì sao bộ nhớ là bội 2

BÀI 7: CÁC MẠCH ỨNG DỤNG

1. Đèn quảng cáo

Vì sao bộ nhớ là bội 2

Một ứng dụng rất phổ dụng của bộ nhớ bán dẫn trong thực tế. Mạch điện cụ thể trình bày trên hình 4.34. Mạch điện gồm ba khối chính:

-          Vi mạch 555 tạo nên mạch dao động tạo xung, cung cấp xung nhịp cho hệ thống.

-          Vi mạch 4040 giữ chức năng giải mã địa chỉ, tạo địa chỉ gọi dữ liệu từ EPROM 2764 xuất ra điều khiển đèn.

-          Vi mạch nhớ 2764 được nạp sẵn chương trình và chạy ở chế độ đọc dữ liệu. Mỗi địa chỉ đưa vào các chân từ A0 đến A11 sẽ có một dữ liệu 8 bit xuất ra theo chương trình định trước nạp trong EPROM.

2. Đèn giao thông

Vì sao bộ nhớ là bội 2

Nguyên lý làm việc giống như ở ứng dụng đèn quảng cáo nhưng có thêm mạch chọn vùng nhớ khi đọc dữ liệu cho EPROM 2764. Cụ thể như sau:

-          Trong vùng nhớ từ 00000B đến 00111B, EPROM 2764 lưu trữ chương trình điều khiển đèn giao thông ở chế độ ưu tiên 1 (ví dụ đường A ưu tiên hơn đường B). Lúc này chọn SW1=0 và SW2=0, tương ứng A3=0, A4=0. Vi mạch 4555 thúc LED1 sáng, hiển thị chế độ làm việc ưu tiên 1 cho mạch điều khiển đèn.

-          Trong vùng nhớ từ 01000B đến 01111B, EPROM 2764 lưu trữ chương trình điều khiển đèn giao thông ở chế độ ưu tiên 2 (ví dụ đường B ưu tiên hơn đường A). Lúc này chọn SW1=0 và SW2=1, tương ứng A3=1 A4=0. Vi mạch 4555 thúc LED2 sáng, hiển thị chế độ làm việc ưu tiên 2 cho mạch điều khiển đèn.

-          Trong vùng nhớ từ 10000B đến 10111B, EPROM 2764 lưu trữ chương trình điều khiển đèn giao thông ở chế độ đồng quyền (đường A và đường B đồng cấp ưu tiên). Lúc này chọn SW1=1 và SW2=0, tương ứng A3=0, A4=1. Vi mạch 4555 thúc LED3 sáng, hiển thị chế độ làm việc đồng quyền cho mạch điều khiển đèn.

-          Trong vùng nhớ từ 11000B đến 11111B, EPROM 2764 lưu trữ chương trình điều khiển đèn giao thông ở chế độ về khuya (chỉ có đèn vàng nhấp nháy). Lúc này chọn SW1=1 và SW2=1, tương ứng A3=1, A4=1. Vi mạch 4555 thúc LED4 sáng, hiển thị chế độ làm việc về khuya cho mạch điều khiển đèn.

Chương trình nạp trong mạch này chỉ mang tính giới thiệu nguyên lý làm việc của EPROM. Để có thể mở rộng thêm các chương trình điều khiển đèn giao thông, cần thiết phải mở rộng thêm số vùng nhớ cũng như số địa chỉ trong một vùng nhớ, giúp mạch điện có thể ứng dụng được trong thực tiễn.