SPARC: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
Moment92 (arutelu | kaastöö)
Resümee puudub
Moment92 (arutelu | kaastöö)
13. rida:
 
SPARC instruktsioonid on kodeeritud neljas erinevas variandis ning on jaotatud 11 kategooriasse. Kui protsessor loeb mälust instruktsiooni, siis on kolm võimalust: instruktsioon käivitatakse, nullitakse või tõkestatakse (trap). Protsessor valib järgmise käsu, mida käivitatakse, kasutades mälu aadressi, mis on kirjas programmi lugejas (program counter). Peale instruktsiooni käitmist suurendatakse automaatselt programmi loendurit, mille tulemusel käivitatakse juba järgmine instruktsioon. SPARC 9 instruktsioonid grupeeritakse järgnevalt: Memory access, Memory synchronization, Integer arithmetic, Control transfer, Conditional moves, Register window management, State register access, Privileged register access, Floating-point operate, Implementation-dependent ja Reserved instruktsioonid.
<ref>{{citation|url = http://www.sparc.org/standards/SPARCV9.pdf | title= The SPARC Architecture Manual , Version 9| author = SPARC International, Inc.| editor= David L. Weaver |editor2= Tom Germond| publisher = PTR Prentice Hall|isbn=0-13-825001-4| year=1994}}</ref>
 
SPARC kasutab mälumudeleid, mis määravad ära, kuidas toimuvad erinevad mäluoperatsioonid. Mälumudelid on vajalikud sel põhjusel, et kuigi protsessori instruktsioonid määravad mäluoperatsioonide järjekorra üheselt, siis võib nende tegelik täitmisjärjekord siiski tegelikkuses olla erinev. Mälumudelid määravad, millised kitsendused seatakse mäluoperatsioonide täitmise järjekorrale. Erinevaid mälumudeleid kasutades on programmeerijatel võimalik rakendusi optimiseerida või paremini sünkroniseerida. SPARC protsessorid toetavad kolme erinevat mälumudelit: Total Store Order
(TSO), Partial Store Order (PSO), and Relaxed Memory Order (RMO). Relaxed Memory Order on neist kõige vähem range instruktsioonide täitmise järjekorraga, kõik sellele mudelile mõeldud rakendused ka teiste mudelite korral.
 
SPARC 9 kasutab käskude täitmiseks kolme allüksust: käsulugemisüksus (issue unit), järjestamisüksus (reorder unit), ja käsutäitmisüksus (execute unit). Käsulugemisüksus loeb mälust instruktsiooni, mida on vaja järgmisena täita ning edastab selle järjestamisüksusele. See üksus muudab instruktsioonide järjekorda võimalikult optimaalseks arvestades mälumudeli poolt seatud kitsendusi. Järjekorda muudetakse, kuna tihti on võimalik mitut instruktsiooni paralleelselt täita ja nii aega kokku hoida. Järjestatud instruktsioonid edastatakse käsutäitmisüksusele, mis instruktsioonid reaalselt käivitab.
<ref>{{citation|url = http://www.sparc.org/standards/SPARCV9.pdf | title= The SPARC Architecture Manual , Version 9| author = SPARC International, Inc.| editor= David L. Weaver |editor2= Tom Germond| publisher = PTR Prentice Hall|isbn=0-13-825001-4| year=1994}}</ref>
 
==Ajalugu==