Làm thế nào để RAM hoạt động với CPU?


8

Tôi đang đọc một cuốn sách ngôn ngữ lắp ráp. Vấn đề với cuốn sách này là nó cố gắng giải thích cách ram hoạt động với CPU, nhưng nó không giải thích sâu.

Tôi muốn biết làm thế nào một ô nhớ, dòng địa chỉ và pin dữ liệu hoạt động khi lưu trữ hoặc truy xuất dữ liệu.

Câu trả lời:


9

Tất cả các ô nhớ có cấp độ của chúng, 0hoặc 1. CPU cho thiết bị bộ nhớ biết các ô mà nó cần các giá trị nhị phân và cung cấp địa chỉ này cho thiết bị bộ nhớ. Bên trong thiết bị bộ nhớ, địa chỉ được giải mã theo một hàng và địa chỉ cột và ô ở vị trí đó trong ma trận được phép lấy dữ liệu của nó tới cơ sở dữ liệu, tức là chân dữ liệu.

Giả sử chúng ta có một địa chỉ 8 bit 01100101. Điều này sẽ được chia thành một địa chỉ hàng 0110(nibble bậc cao) và một địa chỉ cột 0101(nibble thứ tự thấp). Địa chỉ hàng chọn hàng # 06, vì vậy tất cả các ô được kết nối với hàng này sẽ sẵn sàng dữ liệu của họ. Địa chỉ cột chọn ô ở cột số 05 của hàng này, do đó cuối cùng chỉ có một ô duy nhất được phép đặt dữ liệu của nó vào chân đầu ra.

Lưu trữ dữ liệu theo cùng một mẫu: chỉ có một hàng được chọn và ô ở cột đã cho trong hàng đó sẽ nhận được dữ liệu hiện diện trên pin được lưu trữ.

Đây là cho 1 bit. Hoạt động xảy ra đồng thời cho độ rộng từ dữ liệu đầy đủ, vì vậy nếu bạn có bộ nhớ toàn byte, 8 bit được lấy và giá trị của chúng được đặt trên 8 chân databus.

chỉnh sửa
Hình ảnh này sẽ giúp bạn nhìn thấy mọi thứ tốt hơn:

mảng bộ nhớ

Đây là một đại diện của một mảng DRAM , trong đó dữ liệu được lưu trữ trong điện tích của các tụ điện , mỗi tụ là một bit. Phần hàng của địa chỉ (ở đây A1..A0) chọn một hàng, có nghĩa là chúng kích hoạt tất cả các FET trên hàng đó, để các mức của tụ điện cho hàng đó có sẵn trên cột tương ứng của chúng. Sau đó, khối chọn địa chỉ cột, được điều khiển bởi phần khác của địa chỉ, A3..A2, chọn một bit mà chúng ta muốn dữ liệu từ đó.

DRAM rất dễ xây dựng, nhưng có một nhược điểm khó chịu: đọc dữ liệu xả tụ điện, do đó dữ liệu bị mất. Để chống lại DRAM này có bộ khuếch đại cảm giác, giúp phát hiện trạng thái ô nhớ hiện tại và làm mới nó khi đọc. Ngoài ra, việc làm mới này phải được thực hiện định kỳ vì điện tích của tụ điện sẽ bị rò rỉ ngay cả khi bộ nhớ không được đọc. Nhu cầu về mạch làm mới dễ dàng được bù đắp nhờ vào sự gọn nhẹ của các tế bào DRAM.

SRAM sử dụng một vài bóng bán dẫn để lưu trữ dữ liệu và nó không biến động theo cách DRAM (mặc dù dữ liệu vẫn không còn khi bạn tắt nguồn). Với EEPROMFlash , dữ liệu được lưu trữ trong cổng nổi (cách điện) của FET và do đó, nó sẽ không mất dữ liệu khi tắt nguồn.


Đọc thêm:
Câu trả lời này về lưu giữ dữ liệu trong bộ nhớ Flash.


// Tôi thực sự đánh giá cao câu trả lời của bạn. Tôi có thể hỏi một câu hỏi mới không? Bạn học nó ở đâu thế? Tôi vẫn không hiểu nó đầy đủ ... có thể là do tôi không thể hình dung được nó. Bạn có một hình ảnh hoặc cuốn sách mà tôi có thể tham khảo?
Trăng

@Moon - học nó từ lâu ở trường đại học. Tôi nghĩ khóa học của tôi sẽ có hình ảnh, nhưng tôi không có khóa học đó nữa (đó là thời gian của mọi thứ trên giấy!). Tôi sẽ xem liệu tôi có thể tìm thấy một bức ảnh đẹp về nó không, và tôi sẽ thêm nó vào câu trả lời của mình nếu tôi tìm thấy.
stevenvh

1
học đại học không nhất thiết phải hiểu nó, nhưng bạn cần phải hiểu các nguyên tắc cơ bản của điện trở, mũ và mạng, và sự hiểu biết chức năng về cách thức các loại bộ chuyển đổi hoạt động. Tôi tự hỏi nếu và làm thế nào CODE cuốn sách Petzold bao gồm chủ đề, có thể đáng để xem qua tại thư viện hoặc hiệu sách.
old_timer

1
Tôi thực sự khuyên bạn nên đi qua "từ nand đến tetris" nếu bạn muốn tìm hiểu nội bộ của máy tính. Vào thời điểm bạn đi được nửa cuốn sách, bạn sẽ tạo cho mình một CPU và RAM hoạt động. Đây là một bản đọc nhanh nếu bạn đã có một số kiến ​​thức cần thiết, nhưng nó sẽ không rời khỏi nếu bạn không.
James M. Lay
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.