Xem mẫu

  1. CHƢƠNG 4 : BỘ NHỚ VÀ CÁC HỆ THỐNG LƢU TRỮ 4.1. Khái niệm và phân cấp bộ nhớ 4.1.1 Khái niệm Bộ nhớ là một trong các thành phần quan trọng nhất của máy tính điện tử, được dùng để lưu trữ các lệnh sẽ được thực hiện cũng như dữ liệu. Bộ nhớ được xây dựng từ các phần tử nhớ cơ bản như flip-flop hay các tụ điện. 4.1.2. Phân cấp bộ nhớ Các đặc tính như lượng thông tin lưu trữ, thời gian thâm nhập bộ nhớ, chu kỳ bộ nhớ, giá tiền mỗi bit nhớ khiến ta phải phân biệt các cấp bộ nhớ: các bộ nhớ nhanh với dung lượng ít đến các bộ nhớ chậm với dung lượng lớn (hình 4.1) Hình 4. 1. Các cấp bộ nhớ - Tập thanh ghi: Các thanh ghi bên trong CPU có thể coi là một trường hợp đặc biệt của bộ nhớ. Mức nhớ này truy nhập nhanh nhất và dễ dàng nhất, do vậy đây có thể xem là mức 0 của toàn bộ sự phân cấp bộ nhớ. - Bộ nhớ Cache: Cache được dùng để tăng tốc độ trao đổi thông tin giữa CPU và bộ nhớ chính, nên được gọi là bộ nhớ đệm truy nhập nhanh. - Bộ nhớ chính (Main memory): là hệ thống nhớ được địa chỉ hoá trực tiếp bởi CPU, bao gồm bộ nhớ ROM, RAM. - Bộ nhớ ngoài (External Memory) Là hệ thống nhớ chứa thư viện chương trình và dữ liệu. Có dung lượng lớn nhưng tốc độ chậm. Dung lượng: Từ vài chục MB đến vài GB. Nhận xét Ta thấy trên hình 4.1, từ trái sang phải các cấp bộ nhớ có đặc điểm sau: - Dung lượng giảm dần. - Tộc độ giảm dần. - Tần suất CPU truy nhập giảm dần. 112
  2. - Giá thành /1 bit giảm dần. Các đặc tính chính của các cấp bộ nhớ dẫn đến hai mức chính là: mức cache - bộ nhớ trong và mức bộ nhớ ảo (bao gồm bộ nhớ trong và không gian cấp phát trên đĩa cứng) (hình 4.2). Cách tổ chức này trong suốt đối với người sử dụng. Người sử dụng chỉ thấy duy nhất một không gian định vị ô nhớ, độc lập với vị trí thực tế của các lệnh và dữ liệu cần thâm nhập. Hình 4. 2. Hai mức bộ nhớ Các cấp bộ nhớ giúp ích cho người lập trình muốn có một bộ nhớ thật nhanh với chi phí đầu tư giới hạn. Vì các bộ nhớ nhanh đắt tiền nên các bộ nhớ được tổ chức thành nhiều cấp, cấp có dung lượng ít thì nhanh nhưng đắt tiền hơn cấp có dung lượng cao hơn. Mục tiêu của việc thiết lập các cấp bộ nhớ là người dùng có một hệ thống bộ nhớ rẻ tiền như cấp bộ nhớ thấp nhất và gần nhanh như cấp bộ nhớ cao nhất. Các cấp bộ nhớ thường được lồng vào nhau. Mọi dữ liệu trong một cấp thì được gặp lại trong cấp thấp hơn và có thể tiếp tục gặp lại trong cấp thấp nhất. Chúng ta có nhận xét rằng, mỗi cấp bộ nhớ có dung lượng lớn hơn cấp trên mình, ánh xạ một phần địa chỉ các ô nhớ của mình vào địa chỉ ô nhớ của cấp trên trực tiếp có tốc độ nhanh hơn, và các cấp bộ nhớ phải có cơ chế quản lý và kiểm tra các địa chỉ ánh xạ. 4.2. Các đặc điểm của bộ nhớ Các đặc trưng chính của hệ thống nhớ máy tính bao gồm: Vị trí, dung lượng, đơn vị truyền, phương pháp truy nhập, hiệu suất, kiểu vật lý, đặc tính vật lý, cách tổ chức. Vị trí (Location) 113
  3. Bộ nhớ máy tính bao gồm cả hai loại bộ nhớ trong và ngoài. Bộ nhớ trong của máy tính thường được đề cập đến như bộ nhớ chính. Bộ nhớ ngoài của máy tính gồm các thiết bị lưu trữ ngoại vi, như đĩa và băng từ. Dung lƣợng (Capacity) Với bộ nhớ trong, dung lượng thường được biểu diễn dưới dạng byte hay word. Các độ dài word phổ biến là 8, 16 và 32 bit. Bộ nhớ ngoài có dung lượng được biểu thị theo byte. Đơn vị truyền (Unit of Transfer) Với bộ nhớ trong, đơn vị truyền bằng với số đường dữ liệu vào/ ra khỏi mô-đun bộ nhớ. Giá trị ngày thường bằng với độ dài của một word, nhưng cũng có thể khác. - Truyền theo từ nhớ (bộ nhớ trong). - Truyền theo khối nhớ (bộ nhớ ngoài). Phƣơng pháp truy nhập (Access Method) Đây là một trong những yếu tố rõ nhất giúp phân biệt các kiểu bộ nhớ. Có bốn loại phương pháp truy nhập. - Truy nhập tuần tự (băng từ): Bộ nhớ được tổ chức thành các đơn vị dữ liệu gọi là bản ghi. Việc truy nhập phải được thực hiện theo một dãy tuyến tính cụ thể. Thông tin địa chỉ được lưu trữ được dùng để phân tách các bản ghi và hỗ trợ quá trình tìm kiếm lấy thông tin. Một bộ phận đọc/ ghi dùng chung được sử dụng. Bộ phận này phải được di chuyển từ vị trí hiện thời của nó đến vị trí được yêu cầu, quét qua và từ chối các bản ghi trung gian. Do đó, thời gian để truy nhập một bản ghi tùy ý biến đổi khá cao. Các đơn vị băng từ là các đơn vị có dạng truy nhập tuần tự - Truy nhập trực tiếp (đĩa từ, đĩa quang): Cũng như với truy nhập tuần tự, truy nhập trực tiếp bao gồm việc dùng chung một bộ phận đọc/ ghi. Tuy nhiên, các khối hay bản ghi riêng lẻ có một địa chỉ duy nhất dựa trên vị trí vật lý. Việc truy nhập được thực hiện thông qua truy nhập trực tiếp cộng với tìm kiếm tuần tự, đếm hay chờ để đến được vị trí cuối cùng. Một lần nữa, thời gian truy nhập là biến đổi. - Truy nhập ngẫu nhiên (bộ nhớ chính): Mỗi trị trí khả định địa chỉ trong bộ nhớ có một cơ chế định địa chỉ vật lý duy nhất. Thời gian truy nhập một vị trí cho trước độc lập với dãy các truy nhập trước đó và không thay đổi. Do đó, bất kỳ một vị trí nào cũng có thể được chọn ngẫu nhiên và được định địa chỉ cũng như truy nhập trực tiếp. - Truy nhập liên kết (bộ nhớ Cache): Đây là kiểu truy nhập ngẫu nhiên bộ nhớ cho phép thực hiện việc so sánh các ví trí bit có yêu cầu trong một word phục vụ cho việc đối chiếu đặc biệt nào đó, và có thể thực hiện thao tác này cùng một lúc cho tất cả các word. Do đó, một word được trích ra dựa trên một phần nội dung của nó chứ không phải dựa trên địa chỉ. Tương tự với phương thức truy nhập ngẫu nhiên thông 114
  4. thường, mỗi vị trí nhớ có cơ chế định địa chỉ riêng, và thời gian lấy thông tin không đổi, độc lập với vị trí hoặc khuôn dạng truy nhập trước đó. Hiệu suất (Performance) Đứng trên quan điểm người sử dụng, hai đặc trưng quan trọng nhất của bộ nhớ là dung lượng và hiệu suất vận hành. Có 3 tham số hiệu suất được sử dụng: - Thời gian truy nhập: +) Đối với bộ nhớ truy nhập ngẫu nhiên thì thời gian truy nhập chính là thời gian thực hiện thao tác đọc hoặc ghi. +) Đối với bộ nhớ truy nhập không ngẫu nhiên thì thời gian truy nhập chính là thời gian để đặt cơ chế ghi hoặc đọc ở một vị trí mong muốn. - Chu kỳ truy nhập: Khái niệm này được sử dụng cho bộ nhớ truy nhập ngẫu nhiên. Chu kỳ truy nhập bằng thời gian giữa hai lần truy nhập. Chu kỳ truy nhập bằng thời gian truy nhập cộng với thời gian trước khi truy nhập lần tiếp theo có thể bắt đầu. - Tốc độ truyền: Là tộc độ truyền dữ liệu đến hoặc ra khỏi bộ nhớ. Đối với bộ nhớ truy nhập ngẫu nhiên thì tốc độ truyền bằng1 chia cho chu kỳ truy nhập (1/chu kỳ truy nhập). Đối với bộ nhớ truy nhập không ngẫu nhiên thì tốc độ truyền bằng số bit truyền được trong 1 giây (s). Kiểu vật lý của bộ nhớ (Physical Type) - Bộ nhớ bán dẫn. - Bộ nhớ từ: Băng từ và đĩa từ. - Bộ nhớ quang: Đĩa quang. Các đặc trưng vật lý (Physical Characteristics) - Bộ nhớ khả biến hoặc không khả biến. + Bộ nhớ khả biến: Mất dữ liệu khi ngắt nguồn: RAM. + Bộ nhớ không khả biến: Không mất dữ liệu khi ngắt nguồn: ROM, băng từ, đĩa từ. - Bộ nhớ xoá được hoặc không xoá được. Cách tổ chức (Organization) Là cách sắp xếp vật lý các hệ thống nhớ để tạo nên các từ nhớ và sắp xếp các từ nhớ để tạo nên Mô-đun nhớ. Với từng kiểu vật lý khác nhau sẽ có cách tổ chức khác nhau. 4.3. Bộ nhớ chính ROM và RAM là bộ nhớ chính (bộ nhớ trong) của máy tính thuộc khối bộ nhớ và được sản xuất theo công nghệ bán dẫn. ROM là bộ nhớ chỉ đọc, không mất thông tin khi mất điện. ROM chứa chương trình BIOS, có trên mainboard và các thiết bị ngoại vi. RAM là bộ nhớ truy xuất ngẫu nhiên, lưu trữ dữ liệu tạm thời. Khi mất điện, dữ liệu trên RAM sẽ mất. Sau đây chúng ta sẽ xem xét kỹ hai bộ nhớ chính này. 115
  5. 4.3.1. Bộ nhớ RAM (Random Access Memory) 4.3.1.1. Công nghệ RAM Công nghệ RAM có hai loại chính: RAM tĩnh (Static RAM) và RAM động (Dynamic RAM). RAM động (DRAM) được chế tạo với các ô nhớ để chứa dữ liệu là điện áp trên các tụ điện. Điện áp có hay không có ở trên tụ điện biểu hiện hai trạng thái 1 và 0. Vì tụ điện có tính chất phóng điện nên RAM động cần phải được làm tươi (refresh) để bảo dưỡng dữ liệu trên đó. Đối với RAM tĩnh (SRAM) các giá trị nhị phân được nhớ trên các mạch lật truyền thống. Vì vậy dữ liệu trên đó là ổn định. Do công nghệ như vậy nên DRAM có mật độ ô nhớ dày đặc hơn và rẻ tiền hơn SRAM, còn về tốc độ thì SRAM nhanh hơn DRAM rất nhiều. DRAM thích hợp cho bộ nhớ có dung lượng lớn. Vì vậy, công nghệ SRAM được dùng để chế tạo các bộ nhớ Cache, trong khi công nghệ DRAM được dùng để chế tạo các bộ nhớ chính RAM. Cấu tạo phần tử nhớ 1 bit của SRAM Phần tử nhớ 1 bit Thanh ghi chốt (Latch) là dạng đon giản của flip-flop, được xây dựng từ 2 cổng NAND hoặc 2 cổng NOR. Sự thay đổi trạng thái của thanh ghi chốt có thể xảy ra trong thời gian kéo dài của xung đồng hồ chứ không phải trong thời gian sườn xung đồng hồ, người ta gọi đó là sự chuyển mạch theomức. Các thanh ghi chốt 1 bit có thể được sử dụng làm các phần tử nhớ cơ bản xây dựng nên bộ nhớ của máy tính. Nó có 2 trạng thái cân bằng ổn định được sử dụng để biểu diễn 2 giá trị nhị phân 0 và 1. Khi phần tử nhớ đã được thiết lập giá trị thì nó nhớ mãi giá trị đó cho đến khi chúng ta thiết lập cho nó 1 giá trị mới. Vì thế người ta gọi nó là phần tử nhớ RAM tĩnh (Static Random Access Memory). Bộ nhớ được xây dựng từ các phần tử 1 bit như vậy được gọi là bộ nhớ RAM tĩnh. Hình 4.3 là sơ đồ mạch điện của 1 phần tử nhớ SRAM 1 bit và các mạch điện cũng nhu các tín hiệu để điều khiển sự hoạt động của nó. Các đường dây truyền tín hiệu trên sơ đồ ý nghĩa như sau: - Din: Đầu vào thông tin. - Dout: Đầu ra thông tin. - Yi,Xj : là các dây địa chỉ. Nếu ta tổ chức 1 mạng nhớ hình chữ nhật, trong đó phần tử nằm ở hàng i cột j thì Yi sẽ được nối với hàng i của ma trận, còn Xj sẽ được nối với cột j của ma trận. - WE (Write Enable) : Tín hiệu cho phép ghi, khi WE=1, cho phép ghi thông tin Din vào phần tử nhớ, lúc này đầu ra Dout có trở kháng cao vì nó được nối với đầu ra của bộ đệm ba trạng thái đang ở trạng thái có trở kháng cao), có thể coi Dout bị cách li khỏi phần tử nhớ. Khi WE=0, cho phép đọc thông tin từ phần tử nhớ, bộ đệm 116
  6. ba trạng thái đóng (trở kháng thấp), Dout được nối với điểm H và có giá trị bằng Q là nội dung phần tử nhớ, đồng thời E=B=0 làm cho F=G=1 dẫn đến Q không đổi trạng thái, tức là Q không bị phụ thuộc vào Din. - CS (chip Select) : Tín hiệu chọn chip, đôi khi còn được kí hiệu là CE (chip enable). Khi có nhiều chip nhớ RAM cùng nối với đường tín hiệu chung (Din, Dout) thì đầu vào CS có nhiệm vụ chọn xem chip RAM nào được truyền thông tin trên bus số liệu. Điều kiện ghi : CS=1, Xi=1, Yj=1, WE=1, khi đó Q sẽ được thiết lập bằng Din. Điều kiện đọc : CS=1, Xi=1, Yj=1, WE=0, khi đó Dout sẽ nhận giá trị bằng Q. Khi có các phần tử nhớ 1 bit có cấu tạo như trên, rất dễ kết hợp chúng lại với nhau để tạo nên các bộ nhớ có dung lượng từ (word) và kích thước từ như mong muốn. Hình 4. 3. Mạch điện của phần tử SRAM 1 bit Cấu tạo phần tử nhớ 1 bit của DRAM Như chúng ta đã biết các phần tử nhớ RAM tĩnh (SRAM) được cấu tạo từ các flip-flop, 1 phần tử SRAM 1 bit như hình 4.3 được cấu tạo bởi 6 cổng NAND và 1 bộ đệm 3 trạng thái. Ngày nay người ta sử dụng các phần tử DRAM đơn giản hơn. Hình 4. 4. Mạch điện của phần tử nhớ DRAM 1 bit Để bố trí được số phần tử nhớ lớn nhất trong 1 vi mạch, mỗi phần tử nhớ phải được chế tạo sao cho đơn giản nhất. Phần tử nhớ RAM động (DRAM) mà chúng ta tìm 117
  7. hiểu dưới đây chỉ cần 1 transistor cho 1 bit thông tin, chính vì vậy có thể bố trí với mật độ rất cao và có giá thành rẻ. Trong phần tử nhớ này người ta thay flip-flop bằng một tụ điện C, giá trị nhớ trong phần tử nhớ này chính là điện tích nạp trên tụ điện. Ta có thể sử dụng trạng thái tụ được nạp, tức là trên tụ điện C có một điện áp lớn hơn giá trị nhất định nào đó, biểu diễn giá trị 1 của bit, còn trạng thái không được nạp biểu diễn giá trị 0. Nguyên lý cấu tạo của một phần tử DRAM được minh họa trên hình 4.4. Bộ nhớ DRAM được tổ chức thành một ma trận nhớ (thường là ma trận vuông), trong đó dây từ (Word Line) là một trong các dây hàng của ma trận, còn dây bit (Bit Line) là một trong các dây cột. Phần tử nhớ được đặt ở giao điểm của các dây hàng và cột. Transistor T là một transistor trường (Field Efect Transistor) đóng vai trò một chuyển mạch điện tử. T có 3 cực là cực cổng G (gate), cực máng D (Drain) và cực nguồn S (Source), trong đó G là cực điều khiển, D sẽ được nối với S khi G có mức điện áp cao (1) so với S, ngược lại thì điện trở giữa D và S sẽ rất lớn. - Ghi dữ liệu (Write) Khi dây từ có mức tích cực (1), T ở trạng thái mở, nối tụ điện C với dây bit. Nếu thao tác là ghi thì giá trị cần ghi phải đặt trên dây bit. Nếu giá trị đó là 1 thì tụ C sẽ được nạp tới điện áp ứng với giá trị 1 trên dây bit, còn nếu giá trị đó là 0 thì tụ C sẽ bị phóng hết điện tích, tức là có giá trị 0. - Đọc dữ liệu (Read) Việc đọc phức tạp hơn ghi một chút do điện tích trên tụ C ứng với giá trị cần đọc rất nhỏ. Trước khi đặt dây từ lên mức tích cực, cần phải đặt lên dây bit điện áp bằng 1/2 mức chênh lệch giữa điện áp ứng với mức 0 và điện áp ứng với mức 1. Điện áp trên tụ sẽ làm cho điện áp dây bit thay đổi một chút theo chiều hướng tăng hoặc giảm, tùy thuộc vào việc nó đang nhớ giá trị 1 (high) hay 0 (low). Sự thay đổi nhỏ của điện áp trên dây bit sẽ được truyền tới đầu vào của một bộ khuếch đại nhạy, tại đầu ra của nó ta nhận được điện áp ứng với giá trị của bit chứa trên tụ C. - Làm tƣơi (Refresh) Vì mọi tụ điện đều có quá trình rò rỉ điện tích và transistor T mắc nối tiếp với nó dù ở trạng thái cấm cũng có một điện trở rò nhất định, cho nên sau khi được nạp, điện tích trên tụ C, sau một khoảng thời gian nhất định sẽ làm mất thông tin mà C chứa. Chính vì vậy cần phải nạp điện lại cho tụ C trước khi điện áp trên tụ giảm thấp hơn một ngưỡng nào đó. Việc này được gọi là làm tươi. Để làm tươi bộ nhớ DRAM, cần phải đọc nội dung của nó rồi viết trở lại. Việc làm tươi cần phải được tiến hành đều đặn theo một chu kỳ nhất định, gọi là chu kỳ làm tươi. Tên gọi RAM động (Dynamic RAM) xuất phát từ hoạt động này. 118
  8. Trong các chip DRAM trước đây mạch điện bổ sung để thực hiện làm tươi thường ở ngoài chip nhớ. Ngày nay các mạch thực hiện làm tươi thường được chế tạo nằm ngay bên trong chip nhớ, nhờ đó chip nhớ loại này vừa có dung lượng cao vừa có giao diện đơn giản, chúng được gọi là quasi-static RAM. 4.3.1.2. Bộ nhớ chính RAM Bộ nhớ chính RAM của máy tính được chế tạo theo công nghệ DRAM, vì vậy đặc trưng của bộ nhớ RAM là nó có thể đọc dữ liệu từ bộ nhớ và ghi một cách dễ dàng và nhanh chóng dữ liệu mới vào bộ nhớ. Quá trình đọc và ghi đều được thực hiện bằng tín hiệu điện. RAM cần phải được cung cấp bằng một nguồn không đổi. Nếu nguồn bị ngắt thì dữ liệu bị mất. Do vậy RAM là bộ nhớ tạm thời. Hiện nay bộ nhớ RAM có 3 loại phổ biến là DDR, DDR2 và DDR3 dựa trên thiết kế SDRAM (bộ nhớ truy cập ngẫu nhiên động đồng bộ - Synchronous Dynamic Random Access Memory), tức là sử dụng tín hiệu xung nhịp để đồng bộ hóa mọi thứ. DDR là viết tắt của Double Data Rate (tốc độ dữ liệu gấp đôi), tức truyền được hai khối dữ liệu trong một xung nhịp. Như vậy bộ nhớ DDR có tốc độ truyền dữ liệu cao gấp đôi so với những bộ nhớ có cùng tốc độ xung nhịp nhưng không có tính năng này (được gọi là bộ nhớ SDRAM, hiện không còn sử dụng cho PC nữa). Nhờ tính năng này mà trên nhãn của những thanh nhớ thường ghi tốc độ tốc gấp đôi so với tốc độ đồng hồ xung nhịp thực. Ví dụ bộ nhớ DDR2 - 800 làm việc ở tốc độ 400 MHz, DDR2 - 1066 và DDR3 - 1066 làm việc ở tốc độ 533 MHz, DDR3 - 1333 ở 666.6 MHz ... Trên mỗi thanh RAM (mô-đun nhớ) đều có các chip nhớ (có thể là 4, 8, 16 chip nhớ), các chip nhớ được nối với nhau thông qua vi mạch. Dung lượng của bộ nhớ RAM chính là tổng dung lượng của các chip nhớ này. Trong ví dụ ở hình 4.5 là một bộ nhớ RAM của hãng Kingston, thuộc thế hệ DDRAM2, có dung lượng 2GB và có 16 chip nhớ (mỗi mặt của RAM có 8 chip nhớ, mỗi chip nhớ có dung lượng 128MB). Hình 4. 5. Bộ nhớ DDRAM2 Những thanh nhớ (mô-đun) sử dụng một cái tên khác: PCx-zzzz, trong đó x là thế hệ công nghệ, còn zzzz là tốc độ truyền tải tối đa trên lý thuyết (còn gọi là băng thông tối đa). Con số này cho biết bao nhiêu byte dữ liệu có thể được truyền từ mạch điều khiển bộ nhớ sang mô-đun bộ nhớ trong mỗi xung nhịp đồng hồ . 119
  9. Bài toán này rất dễ giải bằng cách nhân xung nhịp DDR tính bằng MHz với 8, ta sẽ có tốc độ truyền tải tối đa trên lý thuyết tính bằng MB/giây. Ví dụ, bộ nhớ DDR2- 800 có tốc độ truyền tải tối đa trên lý thuyết là 6,400 MB/giây (800 x 8) và mô-đun bộ nhớ mang tên PC2-6400. Trong một số trường hợp, con số này được làm tròn. Ví dụ như bô nhớ DDR3-1333 có tốc độ truyền tải tối đa trên lý thuyết là 10,666 MB/giây nhưng mô-đun bộ nhớ của nó lại có tên PC3-10666 hoặc PC3-10600 tùy nhà sản xuất. Những con số này chỉ là số tối đa trên lý thuyết, và trên thực tế chúng không bao giờ đạt đến, bởi bài toán chúng ta đang tính có giả thiết rằng bộ nhớ sẽ gửi dữ liệu đến mạch điều khiển bộ nhớ theo từng xung nhịp một, mà điều này thì không xảy ra. Mạch điều khiển bộ nhớ và bộ nhớ cần trao đổi lệnh (ví dụ như lệnh hướng dẫn bộ nhớ gửi dữ liệu được chứa tại một vị trí nhất định) và trong suốt thời gian này bộ nhớ sẽ không gửi dữ liệu. Trên đây là lý thuyết cơ bản về bộ nhớ DDR. Sau đây chúng ta sẽ so sánh 3 loại bộ nhớ RAM này. Hình 4. 6. Hình dáng các loại DDRAM Tốc độ (Speed) Đây là thông số được người dùng quan tâm nhất. Đối với DDR thì có hai cách gọi theo tốc độ MHz hoặc theo băng thông. Ví dụ, khi nói DDR333 tức là thanh RAM đó mặc định hoạt động ở tốc độ 333MHz nhưng cách gọi PC2700 thì lại nói về băng thông RAM, tức là khi chạy ở tốc độ 333Mz thì nó sẽ đạt băng thông là 2700MB/s (trên lý thuyết). Thường ở Việt Nam thông dụng các loại RAM có bus 333 và 400, những loại có bus cao hơn thường xuất hiện ở những loại cao cấp như Kingston HyperX, Corsair, Mushkin LV. Một trong những khác biệt chính giữa DDR, DDR2 và DDR3 là tốc độ truyền dữ liệu lớn nhất của từng thế hệ. Dưới đây là danh sách tốc độ chung nhất cho từng thế hệ. Một số nhà sản xuất đã tạo ra được những loại chip lớn hơn cả tốc độ trong bảng. 120
  10. Ví dụ như các bộ nhớ đặc biệt hướng tới giới overclock. Những xung nhịp có đuôi 33 hoặc 66MHz thực ra đã được làm tròn (từ 33.3333 và 66.6666). Hình 4. 7. Tốc độ của DDR2, DDR3 Điện áp Bộ nhớ DDR3 hoạt động ở điện áp thấp hơn so với DDR2. DDR2 lại dùng điện áp thấp hơn DDR. Như vậy bộ nhớ DDR3 sẽ tiêu thụ ít điện hơn DDR2, và DDR2 tiêu thụ ít hơn DDR. Thường thì bộ nhớ DDR sử dụng điện 2.5 V, DDR2 dùng điện 1.8 V và DDR3 là 1.5 V (mặc dù các mô-đun cần đến 1.6 V hoặc 1.65 V rất phổ biến và những chip chỉ yêu cầu 1.35 V trong tương lai cũng không phải là hiếm). Một số mô- đun bộ nhớ có thể yêu cầu điện áp cao hơn trong bảng, nhất là khi bộ nhớ hỗ trợ hoạt động ở tốc độ xung nhịp cao hơn tốc độ chính thức (ví dụ như bộ nhớ để overclock). 121
  11. Hình 4. 8. Điện áp của DDR2, DDR3 Thời gian trễ CAS Latency là khái niệm mà người dùng thắc mắc nhiều nhất. Trước đây, khi chọn RAM, người mua thường chỉ quan tâm tới tốc độ hoạt động như 100MHz hay 133MHz. Thời gian gần đây, khái niệm CAS đang dần được người dùng để ý bởi nó đóng vai trò khá quan trọng vào tốc độ xử lý tổng thể của hệ thống; đặc biệt trong ép xung. CAS là viết tắt của “Column Address Strobe” (địa chỉ cột). Một thanh DRAM được coi như một ma trận của các ô nhớ và mỗi ô nhớ sẽ có địa chỉ cột CAS và địa chỉ hàng RAS (Row Adress Strobe). Nhưng do nguyên lý hoạt động của DRAM là truyền dữ liệu xuống chân nên RAS thường không quan trọng bằng CAS. Thời gian trễ là khoảng thời gian mà mạch điều khiển bộ nhớ phải đợi từ lúc yêu cầu lấy dữ liệu cho đến lúc dữ liệu thực sự được gửi tới đầu ra. Nó còn được gọi là CAS Latency hoặc đơn giản là CL. Con số này được viết theo đơn vị chu kỳ xung nhịp. Ví dụ một bộ nhớ có CL3 tức là mạch điều khiển bộ nhớ phải đợi 3 chu kỳ xung nhịp từ lúc truy vấn cho đến khi dữ liệu được gửi. Với một bộ nhớ CL5, mạch điều khiển bộ nhớ phải đợi 5 chu kỳ xung nhịp Vì thế cần sử dụng những mô-đun có CL thấp nhất có thể. Để hiểu khái niệm này, chúng ta sẽ cùng điểm nhanh qua cách thức bộ nhớ làm việc, đầu tiên chipset sẽ truy cập vào hàng ngang (ROW) của ma trận bộ nhớ thông qua việc đưa địa chỉ vào chân nhớ (chân RAM) rồi kích hoạt tín hiệu RAS. Chúng ta sẽ phải chờ khoảng vài xung nhịp hệ thống (RAS to CAS Delay) trước khi địa chỉ cột được đặt vào chân nhớ và tín hiệu CAS phát ra. Sau khi tín hiệu CAS phát đi, chúng ta tiếp tục phải chờ một khoảng thời gian nữa (đây chính là CAS Latency) thì dữ liệu sẽ được tìm thấy. Điều đó cũng có nghĩa là với CAS 2, chipset phải chờ 2 xung nhịp trước khi lấy được dữ liệu và với CAS3, thời gian chờ sẽ là 3 xung nhịp hệ thống. Tuy nhiên, CAS2 không có nghĩa nhanh hơn CAS3 tới 33 vì có nhiều yếu tố ảnh hưởng đến hiệu năng tổng thể của bộ nhớ. 122
  12. Hình 4. 9. Thời gian trễ của DDR2, DDR3 Cuối cùng ta sẽ đến với sự khác biệt về thiết kế bên ngoài. Mô-đun bộ nhớ cho từng thế hệ DDR có sự khác nhau về thông số và không thể cài mô-đun DDR2 lên khe cắm DDR3 được. Ta cũng không thể nâng cấp từ DDR2 lên DDR3 mà không thay thế bo mạch chủ và sau đó là CPU, hay tương tự với DDR và DDR2. Mô-đun DDR2 và DDR3 có cùng số chân, tuy nhiên khe cắm nằm ở vị trí khác nhau. Hình 4. 10. Số chân nối của DDR, DDR2, DDR3 4.3.2. Bộ nhớ ROM ROM (Read Only Memory) là bộ nhớ giữ thông tin cố định, không thay đổi nội dung ngay cả khi ngắt nguồn điện nuôi. ROM chứa chương trình BIOS, có trên mainboard và các thiết bị ngoại vi. Có thể chia ROM thành 3 loại chính sau: - ROM mặt nạ (MROM - Maskable ROM), nội dung của nó được cố định trong quá trình chế tạo vi mạch và không thể thay đổi được sau đó. - ROM có thể nạp chương trình (PROM – Programmable ROM), là loại ROM mà người sử dụng có thể sử dụng một thiết bị chuyên dụng để nạp nội dung cho nó, việc này thường được gọi là “đốt ROM”. Sau khi đã nạp chương trình, nội dung của PROM cũng không thể thay đổi được nữa. - ROM có thể xóa (Erasable ROM), là loại ROM mà người sử dụng có thể nạp nội dung cho nó bằng thiết bị chuyên dụng, tuy nhiên người sử dụng sau này có thể xóa nội dung cũ để ghi nội dung mới. Loại ROM này thường là EPROM, EAROM. 4.3.2.1. ROM mặt nạ 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. 123
  13. 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. ROM mặt nạ thường tổ chức dưới dạng ma trận. Trạng thái có hay không có đi- ốttại vị trí (i,j) của ma trận được sử dụng để biểu diễn 1 bit dữ liệu là 1 hay 0. Mỗi hàng i của ma trận đi-ốt giống như 1 thanh ghi lưu trữ 1 từ (word), các dây địa chỉ Ai được sử dụng để chọn lấy 1 từ, đưa nội dung của nó ra ngoài qua các dây dữ liệu ra. Hình 4.11b là 1 “ô nhớ” của ma trận đi-ốt. Hình 4. 11. Cấu tạo MROM Việc ghi chương trình cho ROM được thực hiện bằng cách loại bỏ hoặc để lại đi-ốt ở giao điểm của dây hàng và dây cột của ma trận. • Nếu đi-ốt tại hàng i, cột j được giữ lại, khi mức điện áp trên dây địa chỉ là 1 (cao), đi-ốt được phân cực thuận sẽ có điện trở rất nhỏ, vì vậy Dj=Ai=1. • Nếu đi-ốt tại hàng i, cột j đã bị loại bỏ, dù mức điện áp trên dây địa chỉ là cao, nó cũng không ảnh hưởng tới dây dữ liệu ra Dj lúc này được “nối đất” (low,0) qua một điện trở. 124
  14. Bảng 4. 1. Bảng chân lý của MROM A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 D3 D2 D1 D0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 1 1 1 0 Các công nghệ MOS và công nghệ lưỡng cực đều được sử dụng để chế tạo ROM. Thay cho mỗi đi-ốt người ta có thể dùng 1 transistor lưỡng cực (Bo-polar transistor) hay 1 transistor đơn cực (MOSFET), tuy vậy nguyên tắc vẫn không có gì thay đổi. Thời gian truy cập giữa 2 loại ROM lưỡng cực và MOS là khác nhau, Rom lưỡng cực (Bo-polar ROM) là: 50-90ns, nó có tác động nhanh hơn, khả năng kích thích tốt hơn. Đối với ROM theo công nghệ MOS (MOS ROM) thời gian tác động lớn gấp 10 lần (chậm hơn), nhưng kích thước nhỏ hơn, tiêu thụ ít năng lượng hơn. Hình 4. 12. Bộ nhớ MROM có dung lượng 16x1 sử dụng Transistor MOS 4.3.2.2. PROM – ROM có thể nạp chƣơng trình 125
  15. Có cấu tạo giống MROM nhưng ở mỗi vị trí nhớ đều có linh kiện nối với cầu chì. Như vậy khi xuất xưởng các ROM này đều chứa cùng một loại bit (gọi là ROM trắng), lúc sử dụng người lập trình thay đổi các bit mong muốn bằng cách phá vỡ cầu chì ở các vị trí tương ứng với bit đó. Một khi cầu chì đã bị phá vỡ thì không thể nối lại được do đó loại ROM này cho phép lập trình một lần duy nhất để sử dụng, nếu bị lỗi không thể sửa chữa được (hình 4.13). Người ta có thể dùng 2 đi-ốt mắc ngược chiều nhau, mạch không dẫn điện, để tạo bit 0 khi lập trình thì một đi-ốt bị phá hỏng tạo mạch nối tắt, đi-ốt còn lại dẫn điện cho bit 1. Hình 4. 13. Bộ nhớ PROM Thiết bị ghi PROM (PROM Programmer hay PROM Write) Việc ghi PROM đòi hỏi những mạch cung cấp dòng điện đủ lớn để đốt cháy cầu chì ở những bit mong muốn. Các bộ ghi PROM thường là hệ vi xử lí chuyên dụng. Đó là thiết bị tạo ra địa chỉ, số liệu và xung dòng điện ghi cần thết đẻ làm chảy các cầu chì. Mỗi bộ ghi PROM có thể ghi 1 hay 1 họ PROM, có những bộ ghi PROM vạn năng có thể ghi bất kì loại PROM nào bằng cách sử dụng 1 mô-đun riêng. Mô-đun này giúp cho bộ ghi PROM thích hợp ở mức xung ghi, dòng điện và bố trí chân với 1 mạch PROM cụ thể. Giá thành ghi PROM đắt hơn ghi ROM nên PROM chỉ thuận lợi cho những ứng dụng với số lượng nhỏ. 4.3.2.3. ROM lập trình đƣợc, xóa đƣợc bằng tia U.V. (Ultra Violet Erasable Programmable ROM, U.V. EPROM) Đây là loại ROM rất tiện cho người sử dụng vì có thể dùng được nhiều lần bằng cách xóa và nạp lại. Cấu tạo của tế bào nhớ của U.V. EPROM dựa vào một transistor MOS có cấu tạo đặc biệt gọi là FAMOS (Floating Gate Avalanche Injection MOS), EPROM – ROM có thể xóa và ghi lại 126
  16. Hình 4. 14. Cấu tạo EPROM Trên nền chất bán dẫn N pha loãng, tạo 2 vùng P pha đậm (P+) nối ra ngoài cho 2 cực S (Source) và D (Drain). Trong lớp cách điện SiO2 giữa 2 cực người ta cho vào một thỏi Silicon không nối với bên ngoài và được gọi là cổng nổi. Khi nguồn VDD, phân cực ngược giữa cực nền và Drain còn nhỏ, transistor không dẫn, nhưng nếu tăng VDD đủ lớn, hiện tượng thác đổ (avalanche) xảy ra, electron đủ năng lượng chui qua lớp cách điện tới bám vào cổng nổi. Do hiện tượng cảm ứng, một điện lộ P hình thành nối hai vùng bán dẫn P+, transistor trở nên dẫn điện. Khi cắt nguồn, transistor tiếp tục dẫn điện vì electron không thể trở về để tái hợp với lỗ trống. Mỗi tế bào nhớ EPROM gồm một transistor FAMOS nối tiếp với một transistor MOS khác mà ta gọi là transistor chọn, như vậy vai trò của FAMOS giống như là một cầu chì nhưng có thể phục hồi được. Để loại bỏ transistor chọn người ta dùng transistor SAMOS (Stacked Gate Avalanche Injection MOS) có cấu tạo tương tự transistor MOS nhưng có đến 2 cổng nằm chồng lên nhau, một được nối ra cực Gate và một để nổi. Khi cổng nổi tích điện sẽ làm gia tăng điện thế thềm khiến transistor trở nên khó dẫn điện hơn. Như vậy nếu ta chọn điện thế Vc ở khoảng giữa VT1 và VT2 là 2 giá trị điện thế thềm tương ứng với 2 trạng thái của transistor (VT1
  17. Điểm bất tiện của U.V EPROM là cần thiết bị xóa đặc biệt phát tia U.V. và mỗi lần xóa tất cả tế bào nhớ trong một IC nhớ đều bị xóa. Như vậy người sử dụng phải nạp lại toàn bộ chương trình Hình 4. 16. Hình dạng bên ngoài củaEPROM 4.3.2.3. EAROM EAROM (Electrically Alterable Rom) hay còn gọi là EEROM (Electrically Erasablr ROM) có cấu tạo tương tự EPROM nhưng có thể xóa được bằng xung điện. Đây là loại ROM lập trình được và xóa được nhờ xung điện và đặc biệt là có thể xóa để sửa trên từng byte. Các tế bào nhớ EEPROM sử dụng transistor MNOS (Metal Nitride Oxide Semiconductor) có cấu tạo như hình sau: Hình 4. 17. Cấu tạo EAPROM Giữa lớp kim loại nối ra các cực và lớp SiO2 là một lớp mỏng chất Nitrua Silic (Si3N4) - từ 40nm đến 650nm - Dữ liệu được nạp bằng cách áp một điện thế dương giữa cực G và S (khoảng 20 đến 25V trong 100ms). Do sự khác biệt về độ dẫn điện, electron tích trên bề mặt giữa 2 lớp SiO2 và Si3N4, các electron này tồn tại khi đã ngắt nguồn và làm thay đổi trạng thái dẫn điện của transistor. Bây giờ nếu áp một điện thế âm giữa cực G và S ta sẽ được một lớp điện tích trái dấu với trường hợp trước. Như vậy hai trạng thái khác nhau của Transistor có thể thiêt lập được bởi hai điện thế ngược chiều nhau và như vậy các tế bào nhớ được ghi và xóa với 2 xung điện trái dấu nhau. Loại EAROM ER 3400 của hãng General Instruments có dung lượng 1024*4 có thể giữ nội dung nhớ đến 10 năm, không cần nguồn nuôi. Thời gian ghi là 1ms, thời gian xóa là 10ms và thời gian đọc là 900ns. Một nhược điểm của mạch EAROM là cần các mức điện áp nguồn nuôi khác nhau trong khi xóa, ghi và đọc. Ví dụ mạch ER3400 cần 3 mức điện áp nuôi là: +12V, -5V và -30V. 128
  18. Hình 4. 18. Hình dạng và vị trí EEPROM trên bo mạch 4.3.3. Tổ chức bộ nhớ - Trước hết, chúng ta xem xét tổ chức của một ô nhớ. §iÒu khiÓn §iÒu khiÓn Chän D÷ liÖu vµo Chän D÷ liÖu ra ¤ nhí ¤ nhí a) Ghi b) §äc Hình 4. 19. Tổ chức ô nhớ Để đơn giản, ở đây chúng ta coi ô nhớ là phần tử nhớ được 1 bit thông tin. Khi muốn truy xuất dữ liệu từ ô nhớ thì bộ nhớ cần gửi các tín hiệu sau đến bộ nhớ: + Tín hiệu chọn (Chip select) được gửi đến để chọn ô nhớ + Tín hiệu điều khiển chỉ thị việc ghi hay đọc (Write enable/ Read enable) Sau đó, dữ liệu sẽ được đưa lên đường dữ liệu (Data lines) - Tổ chức mạch nhớ Hình 4. 20. Tổ chức mạch nhớ 129
  19. + Address lines:  Các đường địa chỉ nối tới bus A,  Truyền tín hiệu địa chỉ từ CPU tới mạch nhớ  Address decoder:  Bộ giải mã địa chỉ  Sử dụng địa chỉ để chọn ra và kích hoạt ô nhớ/dòng nhớ cần truy nhập + Data lines:  Các đường dữ liệu kết nối với bus D  Truyền dữ liệu từ bộ nhớ về CPU và ngược lại Chip select CS:  Chân tín hiệu chọn chip  Chip nhớ được kích hoạt khi CS=0. Thông thường CPU chỉ làm việc với một chip nhớ tại một thời điểm. + Write enable WE:  Chân tín hiệu cho phép ghi  Cho phép ghi vào đường nhớ khi WE =0 + Read enable RE:  Chân tín hiệu cho phép đọc  Cho phép đọc dữ liệu từ đường nhớ khi RE =0 Chúng ta sẽ xem xét một mạch nhớ (chip nhớ) có sơ đồ như hình 4.21 sau đây: Bộ nhớ có 8 đường dây tín hiệu vào và 3 đường dây tín hiệu ra. Ba đường vào cho dữ liệu là , , ; hai đường vào địa chỉ là , và 3 đường tín hiệu điều khiển là CS (Chip select) để chọn chip, RD để phân biệt giữa đọc (read) và ghi (write) và OE (Output enable) để đưa dữ liệu ra. Ba đường ra cho dữ liệu là , và . • Tín hiệu chọn chip CS: Bộ nhớ của máy tính có thể bao gồm nhiều chip như trên, để chọn chip nhớ nào, mạch logic bên ngoài phải đặt cho đầu tín hiệu CS của chip đó có mức=1 và RD=1 để đọc hoặc RD=0 để ghi. • Tín hiệu địa chỉ: Hai đường dây địa chỉ phải được thiết lập giá trị để chỉ ra 1 trong 4 từ 3 bit sẽ được đọc hoặc ghi. Đối với thao tác đọc, các đường dây dữ liệu vào không được dùng đến, từ được chọn được đặt lên các đường dây dữ liệu ra. Đối với thao tác ghi, các bit có mặt trên đường dây dữ liệu vào được nạp vào từu bộ nhớ đã chọn, còn các đường dây dưc liệu ra không được sử dụng. 130
  20. Hình 4. 21. Sơ đồ logic chip nhớ 4x3, mỗi hàng là 1 từ nhớ 3 bit Bốn cổng AND cùng với 4 cổng NOT (mà các đầu váo nối với các dây địa chỉ , ) tạo thành 1 bộ giải mã dùng để chọn từ, mỗi đầu ra của 1 cổng AND điều khiển 1 dây chọn từ (word select line), được đánh số 0…3. - Ghi dữ liệu Khi chip nhớ được chọn để ghi, đường dây được ghi nhãn CS. sẽ có mức cao, làm cho đầu ra của 1 trong 4 cổng AND có nhãn Write gate ở mức tích cực, đó là cổng AND có 1 đầu vào nối với dây word select có mức cao. Tín hiệu này nối với tất cả các đầu vào CK của từ đã được chọn, làm cho dữ liệu trên các dây dữ liệu vào , , nạp vào các flip-flop của từ đó. - Đọc dữ liệu Việc đọc cũng tương tự như việc ghi. Việc giải mã địa chỉ để ghi và đọc hoàn toàn giống nhau. Điểm khác nhau là tín hiệu CS. phải có mức thấp, vì vậy các cổng AND có nhãn Write gate đều có lối ra ở mức thấp, làm cho tín hiệu ở các chân CK của các flip-flop có mức thấp, do đó các flip-flop không thể thay đổi trạng thái. Một trong bốn đường dây chọn từ (word select line) có mức cao, làm cho tại 3 đầu ra 131
nguon tai.lieu . vn