Forum: Digitale Signalverarbeitung / DSP / Machine Learning Local Memory bei µC


von Sandy (Gast)


Lesenswert?

Hi!

Ich hab eine Frage zum Processor Design und hoffe einer von euch ist so 
nett und hilft mir weiter!

Es geht um den Local Memory. Was ist der Unterschied zum Daten oder 
Befehls Speicher? Hat der Prozessor dann 3 Speicher (Speicherbereiche).

HELP

Kiss
Sandy

von Peter (Gast)


Lesenswert?

Kommt drauf an...

von Sandy (Gast)


Lesenswert?

auf was?

von Peter (Gast)


Lesenswert?

Auf den Prozessor...

von Sandy (Gast)


Lesenswert?

Was der Unterschied zwischen Daten, Befehls und Local Memory ist?

von faustian (Gast)


Lesenswert?

Meint er Cache, Register, oder sowas wie _idata auf diversen 
Controllern?

von Peter (Gast)


Lesenswert?

Einige Prozessoren haben nur ein Memory und es kommt auf das Programm 
an, an welchen Adressen Programmbefehle und an welchen Adressen Daten 
stehen. Dann gibt es Prozessorregister, Memorybereiche für Stack und bei 
einigen Prozessoren noch gesonderte Bereiche für I/O.

Ich würde mich mal mit etwas allgemeiner Literatur zu Prozessoren 
beschäftigen (ev. Wikipedia), und dan das Datenplatt zu Deinem Prozessor 
lesen.

von Thomas B. (escamoteur)


Lesenswert?

Ich glaube die Frage war doch or allem, was jetzt bitteschön "local 
memory" ist, die beiden anderen scheint sie ja zu kennen.
Ic kann damit allerdings auch nichts anfangen, vielleicht ein second 
level cache
Tom

von Anton (Gast)


Lesenswert?

Unter "Local Memory" würde ich erst mal den Speicher direkt
auf dem Silizium des Prozessors verstehen im Gegensatz
zu "External Memory", also zusätzliche externe Speicherbausteine.

Die Unterscheidung "Programm-", "Daten-", "I/O-" Memory ist
der nächste Schritt, der aber Prozessor abhängig ist.

Ein Blick ins Datenblatt des Prozessors hilft weiter,
weil manche Hersteller ihre eigenen Definitionen haben.

von Tom M. (Gast)


Lesenswert?

Sandy schrieb:
> Es geht um den Local Memory. Was ist der Unterschied zum Daten oder
> Befehls Speicher? Hat der Prozessor dann 3 Speicher (Speicherbereiche).

Speicher kann lokal sein oder global (aus Sicht der CPU).
Bei MC sind oft beide Speicher lokal, intern, internes Bussystem
Bei CPUs oft global, extern, werden über eine Bus-Schnittstelle 
angesprochen.

Ob Daten- und Befehlsspeicher überhaupt als separate Speicherbereiche 
vorliegen, ist eine Design-Entscheidung. Stichwort: 
Von-Neumann-Architektur, Harvard-Architektur.

von Andreas F. (aferber)


Lesenswert?

Das ist kein wirklich feststehender Begriff, je nach Kontext kann das 
die unterschiedlichsten Dinge bedeuten. Allgemein aber irgendwelcher 
Speicher, der besonders "dicht" an der jeweiligen CPU sitzt, 
insbesondere in Mehrprozessor-Systemen (ggf. dort dann vor allem auch 
exklusiv vom einzelnen Prozessor genutzter Speicher). Im Prinzip kann 
das IMO auch L1/L2-Cache sein, ja.

Ein Beispiel findet sich z.B. bei den Cell-Prozessoren von IBM. Dort hat 
jeder der einzelnen CPU-Kerne nur direkten Zugriff (über 
Load/Store-Befehle) auf einen kleinen lokalen Speicherbereich (derzeit 
AFAIK 256kB SRAM pro Kern), für jeden Kern ein eigener. Zugriff auf den 
Speicher von anderen Kernen oder auf den Hauptspeicher ist nur über 
DMA-Transfers möglich.

Ein anderes Beispiel sind Multiprozessor-AMD-Systeme. Multiprozessor ist 
hier wirklich mit mehreren CPUs in mehreren Sockeln gemeint, nicht 
einfach nur Mehrkerner. Der DRAM-Controller sitzt da in den CPUs selbst, 
und jede der CPUs hat direkten Zugriff nur auf den an der jeweiligen CPU 
angeschlossenen Speicher, während der Zugriff auf den Rest über den 
Systembus erfolgen muss, und dadurch deutlich langsamer ist.

Andreas

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.