Intel 80486 | |
---|---|
CPU | |
| |
Produktion | 10 april 1989 till september 2007 [ 1] [2] |
Utvecklaren | Intel |
Tillverkare | |
CPU- frekvens | 16-150 MHz |
FSB- frekvens | 16-50 MHz |
Produktionsteknik | 600-1000 nm |
Instruktionsuppsättningar | x86 |
kontakt | |
Kärnor |
|
Intel 80386Pentium |
Intel 80486 (även känd som i486, Intel 486 eller bara 486:e) är en 32 -bitars skalär x86 -kompatibel fjärde generationens mikroprocessor byggd på en hybrid CISC- RISC - kärna och släpptes av Intel den 10 april 1989 . Denna mikroprocessor är en förbättrad version av 80386- mikroprocessorn . Den visades första gången på Comdex Fall-utställningen hösten 1989 . Det var den första mikroprocessorn med en inbyggd matematisk coprocessor (FPU). Det användes främst i stationära datorer, i högpresterande arbetsstationer , i servrar och bärbara datorer ( notebooks och bärbara datorer).
Projektledare för utvecklingen av Intel 486-mikroprocessorn var Patrick Gelsinger .
Intel 80486 tillkännagavs på Comdex vårmässa i april 1989. Vid tidpunkten för tillkännagivandet, uppgav Intel att prover skulle vara tillgängliga under tredje kvartalet 1989 och produktionspartier skulle skickas under fjärde kvartalet 1989 [3] . De första datorerna baserade på 80486 tillkännagavs i slutet av 1989, men vissa föreslog att man skulle vänta till 1990 med att köpa en PC baserad på 80486, eftersom det fanns tidigare rapporter om buggar och programvaruinkompatibiliteter [4] .
Den första större uppdateringen av 80486-arkitekturen skedde i mars 1992 med lanseringen av 486DX2-serien med en integrerad matematisk coprocessor och L1-cache [5] . För första gången separerades processorns kärnklocka från systembussklockan med en dubbel klockmultiplikator, vilket ledde till släppet av 486DX2-chips vid 40- och 50- MHz . En snabbare 66 MHz 486DX2-66 släpptes senare i augusti samma år [5] .
Trots lanseringen av den nya femte generationens Pentium-processor 1993, fortsatte Intel att släppa i486-processorer, vilket ledde till lanseringen av 486DX4-100 med en trippelmultiplikator, klockad till 100 MHz och L1-cache fördubblats till 16 KB [ en] 5] .
Tidigare beslutade Intel att inte dela sina 80386- och 80486-teknologier med AMD [5] . AMD trodde dock att deras teknologidelning sträckte sig till 80386 som en derivata av 80286 [5] . Så AMD reverse-konstruerade 386-chippet och släppte 40MHz Am386DX-40- chippet , som var billigare och hade lägre strömförbrukning än Intels bästa 33MHz-version av 386 [5] . Intel försökte stoppa AMD från att sälja processorn, men AMD vann rättegången, vilket gjorde det möjligt för dem att släppa processorn och etablera sig som en konkurrent till Intel [6] .
AMD fortsatte att skapa kloner, vilket resulterade i lanseringen av den första generationens Am486 -chip i april 1993 med klockhastigheter på 25-, 33- och 40 MHz [5] . Efterföljande andra generationens Am486DX2-chips, klockade till 50-, 66- och 80MHz, släpptes följande år. Am486-serien kompletterades med 120MHz DX4-chippet 1995 [5] .
1995, efter en åtta år lång rättsstrid mellan AMD och Intel, avgjordes 1987 års skiljedomsanspråk och AMD fick tillgång till Intel 80486-mikrokoden [5] . Detta har enligt uppgift resulterat i två versioner av AMD:s 486-processor - en baserad på Intels mikrokod och den andra använder AMD-mikrokod i en renrumsutvecklingsprocess . Avtalet säger dock också att 80486-processorn kommer att vara den sista Intel-processorn som ska klonas av AMD [5] .
En annan tillverkare av 486 kloner var Cyrix , som var en fabrikslös tillverkare av samprocessorchips för 80286/386-system. De första Cyrix 486-processorerna, 486SLC och 486DLC, släpptes 1992 och använde 80386-paketet [5] . Båda Texas Instruments Cyrix-processorer var pin-kompatibla med 386SX/DX-system, vilket gör dem till ett eftermonteringsalternativ för äldre system [6] . Dessa chips kunde dock inte matcha Intel 486-processorerna, de hade bara 1 KB cache och ingen inbyggd matematisk coprocessor. 1993 släppte Cyrix sina egna Cx486DX- och DX2-processorer, som var närmare sina Intel-motsvarigheter i prestanda. Detta ledde till att Intel och Cyrix stämde varandra, varvid Intel anklagade Cyrix för patentintrång och Cyrix motarbetade antitrustkrav. Rättegången slutade 1994 med Cyrix seger och tillbakadragandet av antitrustprocessen [5] .
År 1995 vände både Cyrix och AMD sin uppmärksamhet mot en standardmarknad av användare som vill uppgradera sina processorer. Cyrix släppte en derivata av 486 kallad 5x86 baserad på Cyrix M1-kärnan som kördes på 120 MHz och var ett alternativ på 486 Socket 3 [5] [6] moderkort . AMD släppte också 133MHz Am5x86 , som i huvudsak var en förbättrad 80486 med dubbelt cache och fyrdubbla multiplikatorer som också fungerade med de ursprungliga 486DX [5] moderkorten . Am5x86 var den första processorn som använde AMD:s prestandabetyg och marknadsfördes som Am5x86-P75, med anspråk på att vara likvärdig med Pentium 75 [6] . Kingston Technology släppte också "TurboChip" 486-modulen, som använde 133MHz Am5x86 [5] .
Som ett resultat släppte Intel Pentium OverDrive- uppgraderingskretsen för 486-moderkorten, som var en modifierad Pentium-kärna som körde upp till 83MHz på kort med en 25MHz eller 33MHz FSB. OverDrive var inte populärt på grund av låg prestanda och högt pris. Efter att Pentium-seriens processorer fått fotfäste på marknaden, fortsatte Intel att släppa de 486 kärnorna för industriella inbäddade applikationer och stoppade sedan produktionen av 80486-seriens processorer i slutet av 2007 [5] .
Processorn hade 32-bitars adress- och databussar. Detta krävde minne i form av fyra 30-stifts eller en 72-stifts SIMM .
Intel 486DX, 486DX2 och 486DX4 är en tärning som innehåller CPU, matematisk coprocessor och cachekontroller. Fullt kompatibla på förprocessornivå med Intel 386-processorer, men de har följande skillnader:
Mikroarkitektur i486DX2/DX4
Mikroarkitektur Ultra Low Power i486SX och i486GX
i486SX mikroarkitektur
Instruktionsuppsättningen har inte genomgått betydande förändringar, men ytterligare instruktioner har lagts till för att arbeta med internt cacheminne (INVD, INVLPG, WBINVD), en instruktion (BSWAP) för kompatibilitet med Motorola-processorer, två instruktioner för atomminnesoperationer: CMPXCHG (för jämförelser med ett utbyte - ett nytt värde skrevs endast om det gamla matchade det givna, det gamla kom ihåg) och XADD (en instruktion för att lägga till två operander med resultatet placerat i den andra operanden, och inte i den första, som i ADD). CPUID- instruktionen gjorde det för första gången i x86-familjen möjligt att direkt få detaljerad information om processorns version och egenskaper. Dessutom har 75 FPU-instruktioner lagts till instruktionsuppsättningen.
Längden på instruktionskön har utökats till 32 byte.
Organisation av gränssnittet med input-output-enheter
Organisation av gränssnittet med 32-bitars I/O-enheter
Organisation av gränssnittet med variabel databussstorlek: 16 bitar
Organisering av gränssnittet med 8-bitars I/O-enheter
Processorn har en utökad instruktionsuppsättning jämfört med 80386, till vilken flera ytterligare register har lagts till , nämligen tre 32-bitars testregister (TR5, TR4, TR3). Nya flaggor har även lagts till i flaggregistret (EFLAGS) och andra kontrollregister (CRO, CR3).
På grund av inkluderingen av samprocessorn i processorchippet kan Intel 486 också komma åt FPU-registren: dataregister, taggregister, statusregister, FPU-kommando och datapekare, FPU-kontrollregister.
Intel 486 förbättrade instruktionsexekveringsmekanismen i flera steg. Intel 486-seriens processorpipeline bestod av 5 steg: instruktionshämtning, instruktionsavkodning, instruktionsoperandadressavkodning, instruktionsexekvering, instruktionsexekveringsresultatinspelning. Användningen av en pipeline gjorde det möjligt att utföra förberedande operationer på en annan instruktion under utförande av en instruktion. Detta ökade processorns prestanda avsevärt.
Minnets hierarki
Cache-organisation i system byggda med Intel 486-processorn.
Direkt mappad cache
Tvåvägsuppsättning associativ cache
Fullständigt associativ cache
Intel 486 hade en on-chip cache på 8 KB, senare 16 KB, som kördes på kärnfrekvensen. Närvaron av cachen gjorde det möjligt att avsevärt öka hastigheten på mikroprocessorns operationer. Till en början fungerade Intel 486-cachen på genomskrivningsprincipen ( WT ) , men senare, inom Intel 486-familjen, släpptes modeller med en intern återskrivningscache ( återskrivning, WB ) . Processorn kunde också använda en extern cache, vars läs-skrivhastighet dock var märkbart lägre än den interna cachen. Samtidigt började den interna cachen kallas den första nivåns cache (Level 1 Cache), och den externa cachen som finns på moderkortet, den andra nivåns cache (Level 2 Cache). Cachen hade en 4-kanals set-associativ arkitektur och fungerade på nivån för fysiska minnesadresser.
Men som ett resultat av att använda det integrerade cacheminnet har antalet transistorer i processorn ökat avsevärt och som ett resultat har kristallens yta ökat. Ökningen av antalet transistorer har lett till en betydande ökning av effektförlusten. I genomsnitt har effektförlusten ökat med 2 gånger jämfört med liknande modeller av 80386-serien. Detta berodde till stor del på integrationen av cacheminne, även om det fanns andra faktorer, men de är inte så signifikanta. Av denna anledning krävde äldre Intel 486-processorer redan påtvingad (aktiv) kylning.
Intel 486 använde en inbyggd matematisk coprocessor ( engelsk Floating Point Unit, FPU ).
Det var den första x86-mikroprocessorn med en integrerad FPU. Den inbyggda FPU:n var mjukvarukompatibel med Intel 80387 -chippet , en matematisk samprocessor som används i system med processorn 80386. Att använda den inbyggda samprocessorn gjorde systemet billigare och snabbare genom att minska det totala antalet stift och chippaket.
Från början var alla tillverkade Intel 486-mikroprocessorer utrustade med en fungerande samprocessor, dessa processorer fick namnet Intel486DX . Senare, 1991 , beslutade Intel att släppa processorer med en inaktiverad samprocessor, och dessa processorer fick namnet Intel486SX . System byggda på dessa processorer skulle kunna utrustas med en separat samprocessor, till exempel Intel487SX eller en samprocessor från andra tillverkare.
Från början var Intel 486-baserade system utrustade med endast 8- och/eller 16-bitars ISA-bussar . Senare moderkort kombinerade den långsamma ISA-bussen med höghastighets-VESA-bussen (eller VLB - engelska Vesa Local Bus ), avsedd främst för grafikkort och hårddiskkontroller. De senaste moderkorten för i486-processorerna var utrustade med PCI och ISA, och ibland VESA . Hastigheten på ISA-bussen bestämdes av multiplikatorer, och driftsfrekvensen för PCI- och VLB-bussarna var lika med frekvensen för i486-processorbussen (även om vissa moderkort också hade multiplikatorer för dem).
Senare fick i486-moderkort stöd för Plug-and-Play- tekniken som används i Windows 95 , vilket gjorde det möjligt för datorer att automatiskt upptäcka och konfigurera kringutrustning och installera lämpliga drivrutiner.
Bygga Intel 486 System Controller
Organisation av skiljedomssystemet
EISA bus controller organisation
Organisation av gränssnitt (brygga) PCI-ISA
Bygga ett system med 82C59A avbrottsstyrenhet
Bygga ett system med hjälp av interrupt controller cascading
Bygga en typisk konfiguration med EISA -bussen
Bygga en typisk konfiguration med PCI-bussen
Bygga en adressavkodare
Bygga en dekoder för A1, BHE# och BLE# signaler
Konstruktion av styrkretsar och sanningstabell på exemplet med användning av IC 74S138
Modell | kodnamn | Intel S Spec | Typ av skal | Typ av processorsockel | Frekvens, MHz | Databuss (extern), bit | Matningsspänning, volt | Tekniska processlitografinormer, mikron | Antal transistorer | Annonsdatum | Obs, skillnad |
---|---|---|---|---|---|---|---|---|---|---|---|
Intel 486DX | |||||||||||
Intel A80486DX-25 | P4 | SX328 | Keramiskt fodral PGA-168 | Sockel 1 , Sockel 2 , Sockel 3 |
25×1 | 32 | 5 | ett | 1 185 000 | 10.04 . 1989 | Den ursprungliga processorn i i486-familjen. Första nivåns cache 8 KB. |
Intel A80486DX-33 | P4 | SX329 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×1 | 32 | 5 | ett | 1 185 000 | 7.05 . 1990 | |
Intel A80486DX-33 | P4 | SX729 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×1 | 32 | 5 | ett | 1 185 000 | 7.05 . 1990 | DX-logga på kroppen. |
Intel A80486DX-33 (SL-förbättrad) | P4 | SX810 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×1 | 32 | 5 | ett | 1 185 000 | 7.05 . 1990 | "&E"-märkning och DX-logotyp på fodralet. |
Intel A80486DX-50 | P4 | SX710 | Keramiskt fodral PGA-168 | Sockel 2, Sockel 3 |
50×1 | 32 | 5 | 0,8 | 1 185 000 | 24.06 . 1991 | DX-logga på kroppen. |
Intel 486DX2 | |||||||||||
Intel SB80486DX2-40 | P24 | SX809 | Plasthus PQFP-208 | På adapterkortet | 20×2 | 32 | 3.3 | 0,8 | 1 200 000 | 3.03 . 1992 | på adapterkortet. |
Intel SB80486DX2-50 | P24 | SX920 | Plasthus PQFP-208 | På adapterkortet | 25×2 | 32 | 3.3 | 0,8 | 1 200 000 | 3.03 . 1992 | på adapterkortet. |
Intel A80486DX2-50 | P24 | SX808 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×2 | 32 | 5 | 0,8 | 1 200 000 | 3.03 . 1992 | DX-50 hade inga problem med ISA 16-bitars och VESA VL-Bus-bussar på grund av drift vid 25 MHz, men var 3…15 % långsammare i verkliga applikationer. Huvuddelen släpptes av OEM -tillverkaren av system. Även tillverkad av IBM med lämplig märkning på stommen, såsom: " COPYRIGHT INTEL '89 '92 1 MFG BY IBM " |
Intel A80486DX2-66 | P24 | SX807 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×2 | 32 | 5 | 0,8 | 1 185 000 | 10.08 . 1992 | |
Intel A80486DX2-66 | P24 | SX645 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×2 | 32 | 5 | 0,8 | 1 200 000 | 10.08 . 1992 | Genomskrivningsprocessorcache. |
Intel A80486DX2-66 | P24 | SX955 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×2 | 32 | 5 | 0,8 | 1 200 000 | 10.08 . 1992 | Processorns cache för återskrivning. Ytterligare markeringar på höljet "&EW": SL förbättrad CPU-teknik används. |
Intel A80486DX2-66 | P24 | SX759 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×2 | 32 | 5 | 0,8 | 1 200 000 | 10.08 . 1992 | Identisk med SX645, har samma CPUID 0433h.
En blå (fabrikstillverkad i USA) eller svart (Malaysia) kylfläns är integrerad på det keramiska höljet. |
Intel DX4 | |||||||||||
Intel A80486DX4-75 | P24C | SX884 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×3 | 32 | 3 | 0,6 | 1 600 000 | 7.03 . 1994 | Ytterligare markeringar på höljet "&EW": SL förbättrad CPU-teknik används. |
Intel FC80486DX4-75 mobil | P24C | SK052 | Plasthus PQFP-208 | På adapterkortet | 25×3 | 32 | 3 | 0,6 | 1 600 000 | 7.03 . 1994 | Adapter för mobila system |
Intel FC80486DX4-75 mobilmodul | P24C | SX883 | Plasthus PQFP-208 | På adapterkortet | 25×3 | 32 | 3 | 0,6 | 1 600 000 | 7.03 . 1994 | Används i IBM Thinkpad 755 |
Intel A80486DX4-100 | P24C | SX900 | Plasthus PQFP-208 | På adapterkortet | 33×3 | 32 | 3 | 0,6 | 1 600 000 | 7.03 . 1994 | Adapter för mobila system |
Intel FC80486DX4-100 mobilmodul | P24C | SX883 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×3 | 32 | 3 | 0,6 | 1 600 000 | 7.03 . 1994 | Ytterligare markeringar på höljet "&EW": SL förbättrad CPU-teknik används. |
Intel RapidCAD-1 | N/A | SZ624 | Keramiskt fodral PGA-132 | i386/387 | 33×3 | 32 | N/A | N/A | 1 600 000 | 1991 | Intel RapidCad är en specialpaketerad Intel 486DX, utan cache och med en stubb istället för en FPU , en standard pinout för i386, designad för att ersätta Intel 80386 och 80387 FPU-processorer. |
Intel RapidCAD-2 | N/A | SZ625 | Keramiskt fodral PGA-68 | i376/387 | 33×3 | 32 | N/A | N/A | 1 600 000 | 7.03 . 1994 | |
Intel486SX | |||||||||||
Intel A80486SX-20 | P23 | SX406 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
20×1 | 32 | 5 | ett | 1 185 000 | 1.4 . 1991 | Liknar i486DX, men med matematisk coprocessor inaktiverad. |
Intel A80486SX-25 | P23 | SX679 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×1 | 32 | 5 | ett | 1 185 000 | 1.4 . 1991 | |
Intel A80486SX-25 | P23 | SX903 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×1 | 32 | 5 | ett | 1 185 000 | 1.4 . 1991 | |
Intel KU80486SX-25 | P23 | SX406 | PQFP-196 plastfodral inuti PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×1 | 32 | 5 | ett | 1 185 000 | 1.4 . 1991 | Överklockning upp till 40 MHz |
Intel A80486SX-33 | P23 | SX797 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
33×1 | 32 | 5 | ett | 1 185 000 | 1.4 . 1991 | |
Intel SB80486SX-33 | P23 | SX855 | Plasthus PQFP-208 | På adapterkortet | 33×1 | 32 | 5 | ett | 1 185 000 | 1.4 . 1991 | |
Intel A80486SX2-50 | P23 | SX845 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×2 | 32 | 5 | ett | 900 000 | 1.4 . 1991 | |
Intel 486SX2-50/SA OEM | P23 | SX845 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×2 | 32 | 5 | ett | 900 000 | 1.4 . 1991 | Integrerad radiator. Levereras främst till OEM. |
Andra tillverkade av Intel | |||||||||||
Intel 487SX | P23N | 16,9 . 1991 | i486DX med ändrad pinout för användning som FPU i i486SX-system. | ||||||||
Intel 486 OverDrive | P23T | 26,5 . 1992 | Designad för att uppgradera datorer med i486DX/SX-processorer. | ||||||||
Intel KU80486SL-25 | N/A | SX709 | Keramiskt fodral PGA-168 | Sockel 1, Sockel 2, Sockel 3 |
25×1 | 32 | 5 | 0,8 | 1 400 000 | 9.10 . 1992 | i486SX låg strömförbrukning, används främst i bärbara datorer. |
Intel 486DX SL-förbättrad | P4S | 21.6 . 1993 | i486DX med SL-teknik. | ||||||||
Intel 486SX SL förbättrad | P23S | 21.6 . 1993 | i486SX med SL-teknik. | ||||||||
Intel 486DX2 SL-förbättrad | P24S | 21.6 . 1993 | i486DX2 med SL-teknik. Frekvens 50-66 MHz; matningsspänning 5 volt. | ||||||||
Intel 486SX2 | ??? | 1994 | Liknar i486DX2, men med matematisk coprocessor inaktiverad. | ||||||||
Intel DX4 | P24C | 7.3 . 1994 | Har en trippel klockfrekvens i förhållande till den externa bussen, 75-100 MHz; matningsspänning 3,3 volt. | ||||||||
Intel 486DX2wb | P24D | oktober 1994 | i486DX2 med återskrivningscache. Frekvens 50-66 MHz; matningsspänning 5 volt. | ||||||||
Intel DX4 OverDrive PR | P4T | oktober 1994 | Designad för att uppgradera datorer med i486DX/SX-processorer. | ||||||||
Intel 486GX | ??? | 25.3 . 1996 | i486SX för användning i bärbara enheter. | ||||||||
Pentium OverDrive 62.5/82.5 för 5V 486 /3.3V DX4 | P24T | Designad för att uppgradera datorer med Intel DX4-processorer till en Pentium-processor med en frekvens på 62,5 eller 82,5 MHz. |
Sedan introduktionen av den första Intel 486DX-processorn har många andra modeller av 486-familjen släppts med suffixen SX, SL, DX2, DX4, GX. De skilde sig åt i deras funktionella syfte och vissa tekniska parametrar (matningsspänning, klockfrekvens, cacheminnesstorlek, frånvaro eller närvaro av en samprocessor, etc.).
486DX2-processorerna hade en multiplikator på 2 - det vill säga, till exempel, vid en systembussfrekvens på 33 MHz , var själva processorns driftfrekvens 66 MHz. Senare dök det upp Intel DX4-processorer - deras multiplikator var dock inte 4, utan 3. Som ett resultat av införandet av multiplikatorer kom för första gången ett sådant koncept som överklockning i bruk - vilket ökade processorprestanda genom att öka bussens klockfrekvens eller multiplikator . Så, det är känt att i Ryssland, till och med system där i486-processorer arbetade med frekvenser upp till 160 MHz gick i öppen försäljning.
När 486:an släpptes hade Intel förlorat ägandet av x86- varumärkena och många leverantörer använde liknande namn. Huvudsloganen för Intels konkurrenter var "I stort sett samma sak som Intel, bara för mindre pengar."
486-kompatibla processorer tillverkades också av företag som IBM , Texas Instruments , AMD , Cyrix , UMC och Chips and Technologies . Vissa av dem var nästan exakta kopior både vad gäller prestanda och specifikationer, medan andra tvärtom skilde sig från originalet.
Efter att ha lämnat massmarknaden 486 processorer tillverkade av Intel, släppte AMD processorerna 486DX4 -120 och Am5x86-133.
I maj 2006 uppgav Intel att produktionen av 80486-chippen skulle avslutas i slutet av september 2007 . Och även om detta chip länge har varit föråldrat för applikationsprogram på persondatorer, fortsatte Intel att tillverka det för användning i inbyggda system .
i486-processorer omgivna av processorer från andra tillverkare. [fjorton]
Intel-processorer | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||
|