Liệu thứ tự pin có vấn đề gì với RAM này không?


11

Tôi đang cố định tuyến chip pic32 tới SRAM 128kBchip và có một chút khó khăn khi nhận được tất cả 17 dòng địa chỉ và tất cả 8 dòng dữ liệu được kết nối. Tôi đang cố gắng buộc 16 chân địa chỉ đầu tiên vào chân portB 0-15 và chân dữ liệu thành portD 0-7. Sau khi suy nghĩ một lúc, tôi nhận ra rằng có lẽ tôi đang làm cho cuộc sống của mình trở nên khó khăn hơn bằng cách cố gắng xếp hàng rb0 với a0, rb1 với a1, v.v. Tất cả những gì tôi thực sự muốn là viết một giá trị 16 bit cho portB và có phần lớn các địa chỉ được tải và sẵn sàng. Nếu tôi thực hiện gán pin dựa trên việc dễ định tuyến, địa chỉ lôgic sẽ khác nhau giữa mcu và ram, nhưng ít nhất nó phải nhất quán. Vì không có gì khác cần liên lạc với RAM, tôi không nghĩ đó sẽ là vấn đề nếu mcu yêu cầu địa chỉ 0x101 và RAM cung cấp cho địa chỉ 0x110.

Tuy nhiên, tôi tự hỏi nếu nó là một ý tưởng tốt. Nếu có một số cấu trúc bên trong RAM được thiết kế để làm cho việc đọc tuần tự hiệu quả hơn, hoặc một cái gì đó tương tự, thì tôi có thể muốn gặp rắc rối khi định tuyến chúng 1: 1. Việc sắp xếp các chân trên cả hai loại phí có phần ngẫu nhiên đối với tôi, vì vậy nó sẽ giúp tôi dễ dàng hơn rất nhiều nếu tôi có thể bỏ qua các con số cụ thể. Có bất kỳ lý do chính đáng tại sao tôi nên hoặc không nên làm điều đó?

Câu trả lời:


12

Trong trường hợp này , có vẻ như hoàn toàn chấp nhận được để trao đổi bit dữ liệu và trao đổi bit địa chỉ. Đây không phải là trường hợp phổ biến, như bạn ám chỉ trong câu hỏi của bạn.

Trong trường hợp này, thiết bị là RAM tĩnh - lướt nhanh qua biểu dữ liệu AS6C1008 không cho thấy bất kỳ khả năng nào để thực hiện nhanh chóng bất kỳ loại phụ thuộc nào hoặc bất kỳ phụ thuộc thời gian nào liên quan đến địa chỉ.


Chung:

Một số bộ nhớ động cho phép dữ liệu bùng nổ bằng cách chốt một phần lớn địa chỉ và sau đó sắp xếp các bit địa chỉ thấp. Điều này có thể tương ứng với cấu trúc hàng và cột logic được công bố hoặc với một số kỹ thuật bên trong phức tạp không rõ ràng ở bên ngoài. Trong những trường hợp như vậy, bạn cần phải tuân theo những gì bảng dữ liệu nói để tránh lỗi lưu trữ.

Một số bộ nhớ động sớm dựa vào trình tự địa chỉ và thời gian truy cập để đạt được làm mới ô nhớ. Bạn không có khả năng đáp ứng nhiều trong số này.

Một số bộ nhớ (flash, eerom, một số khác) có tuổi thọ phụ thuộc vào số lượng truy cập, có thể là trên mỗi lần truy cập (đọc hoặc ghi) hoặc thường chỉ trên mỗi lần ghi và có thể trên mỗi vị trí bộ nhớ hoặc trên một số tập hợp con của các ô nhớ . Trong trường hợp sau, nếu bạn xáo trộn các dòng địa chỉ, bạn có thể can thiệp vào các thuật toán cân bằng hao mòn. Đây sẽ chỉ là một vấn đề tiềm năng với các thiết bị và bảng dữ liệu khá chuyên nghiệp có thể rõ ràng hợp lý theo yêu cầu


+1 cho vòng loại "Trong trường hợp này" và giải thích khi nào có thể không phải là trường hợp.
SplinterReality

5

Không, thứ tự không quan trọng. Các dòng địa chỉ được sắp xếp theo thứ tự, cũng như các dòng dữ liệu.

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.