Ce este memoria asociativă?

Cea mai mare parte a memoriei este stocată și accesată în același mod. Conținutul este salvat și apoi preluat folosind o adresă de memorie. Acest lucru este în general util și este folosit aproape universal. Din păcate, există o mică problemă cu acest stil de stocare. Este excelent dacă știți unde sunt stocate datele de care aveți nevoie. Nu funcționează bine dacă doriți să căutați o anumită intrare.

Să presupunem că doriți să găsiți un fișier; vă amintiți numele, dar nu și ce folder ați salvat. Computerul dvs. poate căuta numele fișierului, dar dacă nu l-ați folosit recent, este adesea destul de lent la efectuarea căutării. Și asta ținând cont de faptul că sistemele de fișiere sunt stocate ca nume și adrese de fișiere.

Memoria asociativă, cunoscută și sub numele de Memorie Adresabilă de Conținut sau CAM, este concepută pentru a fi căutată după conținutul său. Din păcate, implementarea memoriei asociative este foarte costisitoare. Aceasta înseamnă că este utilizat doar în câteva cazuri, de obicei în hardware-ul de rețea de ultimă generație. Memoria de nume asociativă provine din faptul că este o implementare hardware a unui tablou software asociativ.

Structura celulară

Memoria asociativă este utilizată numai acolo unde este nevoie de performanțe extrem de ridicate. Ca atare, se bazează mai degrabă pe SRAM decât pe DRAM. Ca punct de plecare, numai acest lucru îl face scump. DRAM folosește un tranzistor și un condensator pe bit, iar SRAM utilizează un total de 6 tranzistori. Pentru a căuta eficient conținutul unei celule de memorie, fiecare celulă este modificată pentru a avea circuite de comparație. Acest lucru adaugă un total de încă 4 tranzistori la fiecare celulă. Aceasta înseamnă că memoria asociativă este semnificativ mai puțin densă decât SRAM, care este deja o formă costisitoare de stocare.

Utilizare

Memoria asociativă este costisitoare și optimizată exclusiv pentru potrivirea căutărilor bazate pe conținut. Ca atare, este folosit cu adevărat doar în dispozitivele care trebuie să efectueze în mod constant acest tip de căutare; chiar și atunci, este de obicei limitat la modelele de ultimă generație. În general, există doar două locuri principale în care se utilizează memoria asociativă, comutatoarele de rețea și routerele.

Hardware-ul de rețea, cum ar fi comutatoarele și routerele, trebuie să ofere niveluri de înaltă performanță pentru a menține mai mulți gigabiți de trafic de rețea în flux constant. În cadrul unei rețele, adresele MAC sunt folosite pentru a direcționa traficul. Un comutator va ști la care dintre multele sale porturi de rețea trebuie trimise datele, astfel încât să ajungă la dispozitivul cu adresa MAC corectă. Pentru a vă asigura că fiecare pachet este trimis în locul potrivit, se caută adresa MAC de destinație. Într-un format de memorie tradițional, asta ar dura ceva timp, adăugând latenței fiecărei comunicări în rețea. Cu memoria asociativă, această căutare poate fi mult mai rapidă.

Binar și Ternar

Majoritatea memoriei asociative se bazează pe binar, dar unele sunt bazate pe ternar. O celulă de memorie asociativă ternară este similară cu cea binară descrisă mai sus. Cu toate acestea, în loc să aibă o singură celulă SRAM, are două. Ambele au împreună cele patru tranzistoare suplimentare necesare pentru a efectua comparația. Acest lucru, desigur, face ca memoria asociativă ternară să fie și mai scumpă decât verișoara ei binară, deci pentru ce este folosită?

Al doilea bit al celulei ternare indică „păsă” sau „nu-mi pasă”. Aceasta adaugă o a treia stare la celulă și la funcția de căutare generală. Acum poate stoca un 1, 0 sau X pentru că nu-ți pasă. Acest lucru este deosebit de util atunci când aveți de-a face cu tabele de rutare a rețelei bazate pe măști de subrețea cu lungime variabilă și cu liste de control al accesului. Este posibil să aveți mai multe răspunsuri pozitive la o singură adresă de căutare în ambele. În ambele, doriți doar să luați notă de cele mai precise instrucțiuni.

Ca atare, o căutare pentru 192.168.20.19 poate corespunde următoarelor reguli 192.168.20.16/28 și 192.168.0.0/16. Dacă efectuați o căutare binară standard, ar trebui să efectuați calcule pentru a verifica dacă adresa se încadrează în intervalele de adrese specificate. Cu logica ternară, totuși, puteți determina dacă adresa dvs. de căutare se potrivește cu 192.168.xx într-o singură operațiune. De asemenea, puteți determina că potrivirea /28 este mult mai precisă decât potrivirea /16 deoarece există mai puține biți „nu-mi pasă”. Acest lucru vă permite să aplicați în mod preferențial regulile de control al accesului aferente.

Deoarece memoria asociativă ternară este chiar mai scumpă decât forma binară, este și mai puțin comună. În general, poate fi găsit doar în routerele de top și switch-urile cu mai multe straturi.

Concluzie

Memoria asociativă este o formă de memorie care funcționează foarte diferit de memoria standard. În loc să solicite datele stocate într-o anumită adresă, caută într-o singură mișcare întreaga memorie pentru potriviri cu un termen de căutare. Pentru a realiza acest lucru cu niveluri de înaltă performanță, celulele de memorie se bazează pe o formă modificată de SRAM cu una sau două celule SRAM combinate cu patru tranzistoare suplimentare utilizate pentru a efectua logica de comparare a biților.

Celulele SRAM simple sunt utilizate în memoria asociativă binară, în timp ce două celule SRAM sunt utilizate în memoria asociativă ternară. Varianta ternară permite stocarea unei a treia valori, de obicei 1, 0 sau „nu-mi pasă”. Acest lucru permite conținutului să indice că ar trebui să se potrivească chiar dacă termenul de căutare nu este precis.

Deoarece celulele de memorie asociative se bazează pe SRAM costisitoare, acestea sunt costisitoare, ternarul fiind cel mai costisitor. Din cauza acestui fapt și a structurii sale optimizate în mod explicit pentru căutarea după conținut, memoria asociativă nu este utilizată în majoritatea dispozitivelor.

Doar dispozitivele care beneficiază în mod deosebit de pe urma acestuia și unde performanța depășește costul inițial îl prezintă. Ca atare, se găsește de obicei exclusiv în hardware-ul de rețea de nivel enterprise. În această setare, este adesea denumit CAM și TCAM, pentru Memorie adresabilă conținutului și, respectiv, Memoria adresabilă conținut ternar.



Leave a Comment

Ce să faci dacă Powerbeats Pro nu se încarcă în carcasă

Ce să faci dacă Powerbeats Pro nu se încarcă în carcasă

Dacă Powerbeats Pro nu se încarcă, folosește o altă sursă de alimentare și curăță-ți căștile. Lasă carcasa deschisă în timp ce încarci căștile.

Canon Pixma MG5220: Scanare Fără Cerneală

Canon Pixma MG5220: Scanare Fără Cerneală

Cum să activezi scanarea pe Canon Pixma MG5220 când ai rămas fără cerneală.

5 Motive pentru care laptopul tău se supraîncălzește

5 Motive pentru care laptopul tău se supraîncălzește

Află care sunt unele dintre posibilele motive pentru care laptopul tău se supraîncălzește, împreună cu sfaturi și trucuri pentru a evita această problemă și a menține dispozitivul răcoros.

Cum să rezolvi codul de eroare GeForce Now 0xC272008F

Cum să rezolvi codul de eroare GeForce Now 0xC272008F

Te pregătești pentru o seară de gaming și va fi una mare – tocmai ai achiziționat „Star Wars Outlaws” pe serviciul de streaming GeForce Now. Descoperă singura soluție cunoscută care îți arată cum să repari codul de eroare GeForce Now 0xC272008F pentru a putea începe din nou să joci jocurile Ubisoft.

Elementele de bază ale imprimării 3D: Sfaturi de întreținere pentru imprimanta ta 3D

Elementele de bază ale imprimării 3D: Sfaturi de întreținere pentru imprimanta ta 3D

Întreținerea imprimantelor 3D este foarte importantă pentru a obține cele mai bune rezultate. Iată câteva sfaturi importante de reținut.

Cum să găsești adresa IP a unei imprimante

Cum să găsești adresa IP a unei imprimante

Ai probleme în a descoperi ce adresă IP folosește imprimanta ta? Te vom învăța cum să o găsești.

Principiile Imprimării 3D: O listă de verificare esențială pentru întreținere

Principiile Imprimării 3D: O listă de verificare esențială pentru întreținere

Menținerea echipamentului tău într-o stare bună este esențială. Iată câteva sfaturi utile pentru a-ți menține imprimanta 3D în condiții de vârf.

Cum să folosești AirPods cu telefoanele Samsung

Cum să folosești AirPods cu telefoanele Samsung

Dacă ești nesigur dacă să cumperi AirPods pentru telefonul tău Samsung, acest ghid te poate ajuta cu siguranță. Întrebarea cea mai evidentă este dacă cele două sunt

Cum se clonează un hard disk

Cum se clonează un hard disk

În era digitală modernă, în care datele sunt un bun valoros, clonarea unui hard disk pe Windows poate fi un proces crucial pentru mulți. Acest ghid cuprinzător

Cum să remediați driverul WUDFRd care nu s-a încărcat pe Windows 10?

Cum să remediați driverul WUDFRd care nu s-a încărcat pe Windows 10?

În timpul pornirii computerului, vă confruntați cu mesajul de eroare care spune că driverul WUDFRd nu s-a încărcat pe computer?