SRAM: Zweck der Aktivierung des oberen und unteren Bytes, wenn der Datenbus größer als 8 Bit ist?

Was ist der Sinn einer oberen Byte- und unteren Byte-Freigabe auf einem SRAM, wenn der Datenbus bereits 16 Bit hat?

Hat es mit Multiplexing zu tun? Ich war immer davon ausgegangen, dass SRAMs entweder mit gemultiplexten oder dedizierten Daten- und Adressbussen ausgelegt sind. Vielleicht irre ich mich und sie haben alle dedizierte Busse und wie Sie sie verkabeln, bestimmt, ob sie gemultiplext sind oder nicht. Scheint so, als würden Sie auf diese Weise nicht viele Pins oder Spuren sparen. Es würde ihnen nur MCU-Pins sparen, aber die SRAM-Pins oder die Anzahl der Spuren, die zwischen den beiden ICs laufen, nicht beeinflussen.

Ich suche ein MRAM-Datenblatt, obwohl dies allgemein auf alle SRAMs anwendbar zu sein scheint: https://www.everspin.com/family/mr5a16a?npath=258

Geben Sie hier die Bildbeschreibung ein

Antworten (2)

Freigaben für obere und untere Bytes werden benötigt, wenn ein Prozessor mit einem 16-Bit-Bus einen Zugriff ausführen möchte, um nur eine Hälfte der Daten-RAM-Position zu modifizieren.

Bei Byte-Schreiboperationen erhöht dies die Leistung gegenüber einer 16-Bit-Lese-Modifizier-Schreib-Operation erheblich.

Ist dies ein Standardbetriebsverfahren, muss ich herausfinden, ob die MCU dies unterstützt?
@DKNguyen welche MCU?
@BruceAbbott Ein STM32H743. NBL[0:3] sind die Byte-Lane-Pins.
@BruceAbbott Ah, also heißt es Byte Enable

Wenn ich das gesehen habe, teilen sie sich normalerweise einen 8-Bit-Datenbus. Ich stimme zu, dass für einen 16-Bit-Datenbus nicht verwendet werden würde, sowohl UB als auch LB sollten niedrig sein. Dieser Chip legt das obere Byte auf andere Pins als das untere Byte und setzt abwechselnd die anderen 8 Bits auf Hi-Z, damit sie immer noch zusammengebunden werden können (0,8) (1,9) usw.