Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Presbiopia - la 43 ani ?

Termen transcriere autovehicul

Cazare Timisoara pe 4-5 zile

Primele zile ale internetului per...
 Ditra 25

Casti USB-C ptr A-54

Aplicatie medicala / asistent med...

De ce vor atația politicieni...
 ERR_ADDRESS_UNREACHABLE

Legea 18/1968 Se mai aplica?

Digi conectare 2 routere prin fir

Succesiune notar versus instanta ...
 Montaj aer conditionat in balcon ...

Cont curent mulți valuta far...

Sugestii plan casa

Experiente cu firme care cumpara ...
 

Informatii utile despre Random Access Memory

- - - - -
  • This topic is locked This topic is locked
No replies to this topic

#1
Dany_Darke

Dany_Darke

    ✠ Fear of the dark ツ

  • Grup: Super Moderators
  • Posts: 21,821
  • Înscris: 07.06.2014
Info

Random Access Memory reprezinta o placuta cu circuite integrate ce utilizeaza chipuri de memorie de tip flash, pt a stoca informatia, chipuri ce pot fi lipite doar pe o parte de placuta (Single Sided), ori pe ambele parti ale placutei (Double Sided). Este componenta principala de comunicare intre procesor si HDD/SSD. Memoria RAM este de tip volatil, adica la intreruperea alimentarii de curent, datele scrise in aceasta se pierd.



Functionare, parametri si standardizari

Calea de comunicare cu restul de hardware se face prin BUS, cu o anume rata de transfer calculata in functie de tipul de memorie la care facem referire, aceasta comunicare folosind arhitectura de 64bits. In aceste conditii, aplicam formula de calcul si gasim rata de transfer, si anume: clock-ul BUS x 2 (dat fiind ca vb de Double Data Rate RAM) x 64bits / 8 (bits per byte). Daca alegem o frecventa BUS de 100 MHz, ne rezulta o rata de transfer de pana la 1600 MB/s.

Conform standardizarii JEDEC din Iunie 2000 (standardizarea DDR) si completarile ulterioare pana in noiembrie 2013, vitezele de transfer s-au impartit in 2 parti distincte si anume: vitezele de chip si cele de modul. Astfel vom gasi in specificatiile memoriilor 2 valori ce determina parametrii de functionare, cum ar fi:

DDR 1
  • DDR 200  -  100 MHz (clock BUS)  -  PC 1600
  • DDR 266  -  133 MHz (clock BUS)  -  PC 2100
  • DDR 333  -  166 MHz (clock BUS)  -  PC 2700
  • DDR 400  -  200 MHz (clock BUS)  -  PC 3200
DDR 2
  • DDR 400  -  200 MHz (clock BUS)  -  PC2 3200
  • DDR 533  -  266 MHz (clock BUS)  -  PC2 4200
  • DDR 667  -  333 MHz (clock BUS)  -  PC2 5300
  • DDR 800  -  400 MHz (clock BUS)  -  PC2 6400
  • DDR 1066  -  533 MHz (clock BUS)  -  PC2 8500
DDR 3
  • DDR 800  -  400 MHz (clock BUS)  -  PC3 6400
  • DDR 1066  -  533 MHz (clock BUS)  -  PC3 8500
  • DDR 1333  -  666 MHz (clock BUS)  -  PC3 10600
  • DDR 1600  -  800 MHz (clock BUS)  -  PC3 12800
  • DDR 1866  -  933 MHz (clock BUS)  -  PC3 14900 (non standard)
  • DDR 2133  -  1066 MHz (clock BUS)  -  PC3 17000 (non standard)
  • DDR 2400  -  1200 MHz (clock BUS)  -  PC3 19200 (non standard)
DDR 4
  • DDR 1600  -  800 MHz (clock BUS)  -  PC4 12800
  • DDR 1866  -  933 MHz (clock BUS)  -  PC4 14900
  • DDR 2133  -  1066 MHz (clock BUS)  -  PC4 17000
  • DDR 2400  -  1200 MHz (clock BUS)  -  PC4 19200
  • DDR 2600  -  1300 MHz (clock BUS)  -  PC4 20800 (non standard)
  • DDR 2666  -  1333 MHz (clock BUS)  -  PC4 21300 (non standard)
  • DDR 2800  -  1400 MHz (clock BUS)  -  PC4 22400 (non standard)
  • DDR 3000  -  1500 MHz (clock BUS)  -  PC4 24000 (non standard)
  • DDR 3200  -  1600 MHz (clock BUS)  -  PC4 25600 (non standard)
DDR5
  • DDR 4800 - 2400 MHz (clock BUS)  - PC5-38400
pana la
  • DDR 7200 - 3600 MHz (clock BUS)  - PC5-57600
Conform celor specificate mai sus se poate trage concluzia ca la o placuta de DDR Synchronous Dynamic Random Access Memory, frecventa de clock este una, iar DDR-ul reprezinta de fapt standardizarea acesteia pt transferul de date ce se face la cresterea si la scaderea acestei frecvente corespondente unui clock, de aici si numele de Double Data Rate. Sunt programe ce pot oferi info despre memoriile instalate (CPU-Z de exemplu) care va vor arata de fapt clock-ul BUS la frecventa, iar conform celor mentionate anterior, puteti afla ce tip de DDR aveti de fapt, ori chiar mai simplu, prin inmultirea cu 2 a valorii citite. Sau cel mai simplu, verificarea parametrului PC si astfel aflati exact unde va incadrati.


O frecventa confuzie facuta de utilizatori este aceea de a identifica standardul DDR ca fiind acelasi cu standardul Dual Channel. Sa intelegem mai bine ce inseamna Dual Channel este definitoriu in aceasta situatie, astfel ca: daca la single channel avem doar un singur canal de 64bits de comunicare cu BUS-ul, la dual channel avem de fapt 2 astfel de canale. In concluzie acest standard reprezinta de fapt nr de canale pe care memoriile instalate pot comunica cu BUS-ul. In timp, au aparut Triple Channel si chiar Quad Channel la placile de baza high end, insa principiul este exact acelasi.

Ar mai fi de retinut faptul ca desi la o placa de baza cu doar 2 sloturi pt memorie acestea corespund cate unui canal, iar 2 astfel de module instalate vor functiona in dual channel, la o placa de baza cu 4/6/8 sloturi, nu se mai poate aplica acelasi rationament, anume ca nr de placute instalate sau sloturi sa determine in sine un canal, la acestea de fapt, reprezinta cate o grupare de cate 2 sloturi pt a forma un singur canal de comunicare (a nu se confunda cu gruparea fizica pe placa de baza, fiecare producator isi grupeaza in mod diferit sloturile pt fiecare canal in parte).


Aceste placute se mai numesc si Dual In-Line Memory Module pt desktop, iar in cazul laptop-urilor se numesc Small Outline Dual In-Line Memory Module In cazul celor din urma, odata cu noua arhitectura Skylake, Intel a creat si Universal DIMM (UniDIMM), adica un SO-DIMM ce poate suporta atat cip-uri pt DDR3 cat si DDR4 pt a ajuta controller-ul de memorie integrat in CPU sa poata face tranzitia intre cele 2, fara alte modificari ale acestuia, in functie de configuratie. Mai sus am prezentat diferentele de clock intre cele 4 tipuri de DDR, insa hai sa vedem si de ce nu se pot folosi in tandem sau de ce nu se pot monta placute DDR3 pe o placa de baza cu DDR2 de exemplu.

Principalul motiv constructiv este cheia de siguranta care asigura montarea placutei intr-o singura pozitie, dar care de asemeni este diferita de la o generatie DDR la alta. Un alt aspect este cel al pinilor de contact cu slotul de memorie. Aici avem in felul urmator:

184 pini - DDR SDRAM
200 pini - SO-DIMM DDR si DDR2 SDRAM
204 pini - SO-DIMM DDR3 SDRAM
240 pini - DDR2 si DDR3 SDRAM
260 pini - SO-DIMM DDR4 SDRAM
288 pini - DDR4 SDRAM

De asemeni avem si voltaje in functie de generatia de DDR si anume:

DDR 1 - 2.5/2.6
DDR 2 - 1.8
DDR 3 - 1.65/1.5 sau 1.35 (doar pt XMP si DDR3L) si 1.25 pt DDR3U
DDR 4 - 1.05/1.2
DDR 5 - 1.1

Nota: DDR3 Low Voltage sunt memorii ce pot functiona atat la 1.5V cat si la 1.35V (standard) si sunt marcate pe eticheta cu PC3L. De asemeni DDR3 Ultra Low Voltage pot functiona atat la 1.5V cat si la 1.25V (standard) si sunt marcate pe eticheta cu PC3U. Ambele fiind standardizate conform JEDEC din 26.07.2010

Dupa cum bine ati observat, folosirea in tandem este imposibila datorita sloturilor si a modului in care placa de baza comunica cu dimm-urile, aici adaugandu-se acele timing-uri care difera chiar de la un model la altul (in functie si de chipurile de memorie folosite), chiar daca fac parte din aceeasi generatie sau serie de dimm-uri (a nu se confunda cu lot de fabricatie). Printre altele, aici pun accentul si pe placile de baza combo, ce au slot DDR2 si DDR3, explicand astfel de ce nu se pot folosi impreuna, ci numai separat, ori doar DDR2, ori doar DDR3.

Un aspect important de retinut este acela ca dimm-urile folosesc aceste chipuri flash care definesc pana la urma performanta unui modul de memorie, insa nu trebuie sa neglijam si artificiile hardware si software (prin comandarea memoriei EEPROM) ce sunt facute din constructie acestor module, de catre producatori, pt a ajunge la anumite performante sau pt a functiona cu anumite voltaje standard sau modificabile pt a rezulta profilele de Under Clock si cel de Over Clock.


Pentru a intelege de ce unele chipset-uri sau mai bine zis anumite placi de baza suporta (decodeaza) doar anumite dimm-uri, trebuie sa intelegem mai intai standardul de comunicare cu BIOS-ul prin controller-ul de memorie. Acesta se numeste Serial Presence Detect si este responsabil de comunicarea tuturor datelor si parametrilor de functionare ale modului respectiv. Aceasta verificare se efectueaza in Power On Self Test si astfel chipsetul si implicit BIOS-ul va sti ce timing-uri sa foloseasca pt o functionare optima cu modulul respectiv.

De aici se pot trage 4 concluzii de functionare:
  • O detectare de timing-uri diferite in cazul unor module diferite, nu va permite o comunicare si adresare corecta, astfel BIOS-ul blocheaza POST-ul sau il restarteaza (pt reverificare) pana la remedierea situatiei in cauza de catre utilizator, iar in functie de producator, cu avertizari sonore specifice erorii detectate

  • O detectare de clock diferit duce la armonizarea acestuia pt toate modulele prezente, la valoarea cea mai mica detectata

  • O detectare de setari in BIOS, diferita de parametrii dimm-urilor poate duce la blocarea POST-ului, eventual cu avertizarile sonore specifice nedetactarii hardware

  • BIOS-ul nu  detecteaza deloc dimm-urile, datorita lipsei instructiunilor de decodare pt acele module, ori a instabilitatii de micro cod pt parametrii de functionare
Conform celor 4 puncte de mai sus, mai putem trage o concluzie adiacenta, anume aceea ca in cazul folosirii a 2 sau mai multe dimm-uri ce pot diferi intre ele, ca si producator, timing, frecventa, serie diferita de modul si/sau revizie in cadrul aceleiasi serii, orice parametru dintre acestia poate determina o incompatibilitate cu BIOS-ul placii de baza pe care sunt montate. Efectele se traduc in imposibilitatea de boot, blocari in POST, BSOD, blocari in functionarea uzuala, etc. Astfel ca la momentul alegerii a inca unui modul sau module RAM, verificarea parametrilor si compatibilitatii acestor module cu cele existente deja si/sau cu cele certificate de producator prin fisierul Qualified Vendor List, este obligatorie.


Ca si extensie a parametrului SPD, o particularitate o reprezinta parametrul Enhanced Performance Profiles, dezvoltat de catre Nvidia si Corsair pt DDR2 pt performante superioare prin detectarea mai multor parametri de timing si voltaj ce nu se regasesc in standardul JEDEC. Pt a suporta si DDR3, parametrul a fost revizuit, iar acum se intituleaza EPP 2.0.

Astfel ajungem la parametrul dezvoltat de Intel, anume Extreme Memory Profile, care de asemeni depaseste standardizarea JEDEC pt a oferi o performanta sporita asupra timing-ului memoriilor DDR3, odata cu scaderea voltajului pe dimm. Acest profil este suportat doar de anumite placi de baza, astfel ca BIOS-ul trebuie setat pt a identifica si functiona cu acest profil.

Ati putut observa ca unele module sunt clasificate ca si ECC si non-ECC. Pt majoritatea utilizatorilor obisnuiti, parametrul Error-Correcting Code nu este foarte important, deoarece datele ce sunt transferate in si din modulele de memorie se pot corecta si post transfer cu aproape 0 pierderi de performanta, insa in mediile stiintifice si cele enterprise in general, datele sunt considerate sensibile, iar orice eroare de date este critica. Astfel ca memoriile cu functia ECC implementata hardware le sunt destinate acestora in principal. In esenta, acest parametru corecteaza erorile interne/datele corupte ale memoriei prin imunizarea sa la erorile de tip single-bit. Memoriile non-ECC sunt capabile de aceeasi implementare, insa desi pot detecta erorile, nu le si pot corecta, din lipsa chipului special conceput pentru aceasta sarcina.

De mentionat este faptul ca DDR5 vine cu ECC integrat in chipurile de memorie, un pas in plus spre corectarea erorilor aparute in transferul de date, insa nici acestea toate nu au chip special conceput in acest sens si deci nu sunt un ECC 100%.

Am mentionat mai sus de parametrii de timing, pe scurt acestia sunt:
  • CAS latency (CL)
  • Command Rate (CR)
  • Clock Cycle time (tCK)
  • Row Address to Column Address Delay (tRCD)
  • Row Precharge time (tRP)
  • Refresh Row Cycle time (tRFC)
  • Row Active time (tRAS) unde RAS -> Row Address Strobe
  • Row Cycle time (tRC)
  • Write Recovery time (tWR)
Cel mai important dintre acestia, este Column Access Strobe (CAS) latency. Acesta reprezinta de fapt diferenta de timp in nanosecunde intre momentul in care controller-ul de memorie da comanda de citire a unei adrese din memorie si momentul in care datele de la acea adresa ajung la pinul de output al modulului. Astfel ca acest parametru ne spune in linii mari, cat de lent este modulul de memorie. In alegerea unei memorii, cu cat este mai mic acest parametru, cu atat este mai performant si mai "rapid" dimm-ul, acestia fiind de asemeni specific diferiti de la o generatie DDR la alta.

Metoda de calcul pt aceasta latenta este urmatoarea: (CAS / Frequency (MHz)) × 1000 = X ns
Exemplu: (7 / 667) × 1000 = 10.49475 ns



Concluzii

Acest tip de memorie este cea mai rapida componenta hardware dintr-un sistem de calcul si poate cea mai neinteleasa, iar cantitatea de memorie RAM prezenta, precum si parametrii acesteia, poate determina cat de rapid poate fi un astfel de sistem si cat de multa libertate dam programelor si partii software in general de a folosi toata puterea de calcul instalata in acel sistem. Este o componenta vitala si foarte utila care poate "ridica" sau "cobori" performanta unui sistem.



Topicul este in totalitate redactat de mine, structura si informatiile pot suferi schimbari si completari in functie de necesitati. Topicul vizeaza in principal memoriile folosite in sistemele de calcul tip Desktop si Laptop.

Edited by Dany_Darke, 18 June 2022 - 09:21.


Anunturi

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate