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: 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). 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:
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ủ). 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. 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. 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. Hình 4.6: Sơ đồ minh hoạ 3 tuyến: dữ liệu, địa chỉ, điều khiển 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 Đầ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 2BÀ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. 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). 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 Đầ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ị 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.
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 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. 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 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
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). 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 ( 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ó 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 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 3BÀI 3: NGUYÊN LÝ LÀM VIỆC
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.
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:
Qua hai hoạt động ghi và đọc ta thấy được chức năng của các đường bus như sau: Page 4BÀ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í 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:
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 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
Nhược điểm của EPROM:
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 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
CÁC LOẠI RAM
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 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. 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 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. Để đọ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ớ. 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. Thời gian của tín hiệu MUX phải đồng bộ với tín hiệu Hình 4.22 minh hoạ thời gian của tín hiệu MUX. Hình 4.23 cho thấy cấu trúc của một DRAM 16Kx1 sau khi đã dùng MUX 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 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. Giả sử
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. Quá trình ghi được mô tả như sau:
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 Phương pháp là tươi phổ biến nhất là làm tươi chỉ với Click vào mục dưới để xem các vi mạch nhớ điển hình Page 5BÀ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à 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. Chế độ hoạt động của EPROM M27C64A như bảng hình 4.14 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. 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. Đầu vào 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. Hình 4.32 là sơ đồ cấu trúc bên trong của IC DRAM TMS44100. 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 Một địa chỉ 22 bit được áp vào DRAM này qua 2 buớc, sử dụ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 Page 6BÀ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. 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 Để đọc thì Để ghi thì 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. 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 Page 7BÀI 7: CÁC MẠCH ỨNG DỤNG 1. Đèn quảng cáo 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 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. |