Enciclopedia Hardwere
  • In diretta da GamesVillage.it
    • News
    • -
    • In Evidenza
    • -
    • Recensioni
    • -
    • RetroGaming
    • -
    • Anteprime
    • -
    • Video
    • -
    • Cinema

Pag 1 di 2 12 UltimoUltimo
Visualizzazione risultati da 1 a 15 di 26

Discussione: Enciclopedia Hardwere

Cambio titolo
  1. #1
    usuário cinza L'avatar di Nubilus
    Registrato il
    12-04
    Località
    F. Cantagalo
    Messaggi
    45.866

    Enciclopedia Hardwere

    Perchè non fate una bella "enciclopedia" sul hardwere??? con nomi e significati??

  2. #2
    GrBnBtB L'avatar di cloud125
    Registrato il
    11-02
    Località
    Torino
    Messaggi
    11.348
    Citazione Grey Wolf (ita)
    Perchè non fate una bella "enciclopedia" sul hardwere??? con nomi e significati??
    se mi stipendi molto volentieri...

  3. #3
    Bannato L'avatar di Chad Smith
    Registrato il
    12-04
    Località
    FATTI I CAZZI TUOI!
    Messaggi
    820
    Ok parto io con una cosa difficilissima...
    CPU = Processore

    ora vi lascio le cose più semplici da spiegare

  4. #4
    Polygon Window L'avatar di Stix
    Registrato il
    05-03
    Località
    Chieri(TO)
    Messaggi
    4.043
    Citazione Grey Wolf (ita)
    Perchè non fate una bella "enciclopedia" sul hardwere??? con nomi e significati??
    Inizio io: si dice Hardware ._.

  5. #5
    . L'avatar di andrea-d
    Registrato il
    10-03
    Località
    Napoli
    Messaggi
    9.788
    rotfl ... ci metterei troppo tempo... anke xke nessuno sa quanto uno puo sapere ( ke è ho scritto??)
    " I swear by the myth of the Gods, and by the power of the Holy Flame, that my knowledges and my deeds from now on and forever shall be one with the fire. Until my body shall return to the realm of Beliar and the fire of my life be estinguished."

    - Master Corristo, Gothic

  6. #6
    . L'avatar di andrea-d
    Registrato il
    10-03
    Località
    Napoli
    Messaggi
    9.788
    Citazione Stix
    Inizio io: si dice Hardware ._.

    " I swear by the myth of the Gods, and by the power of the Holy Flame, that my knowledges and my deeds from now on and forever shall be one with the fire. Until my body shall return to the realm of Beliar and the fire of my life be estinguished."

    - Master Corristo, Gothic

  7. #7
    TM&BMW&Innocenti. L'avatar di capperuncolo
    Registrato il
    08-04
    Messaggi
    5.271
    Sarebbe più utile un vocabolario di italiano su questo forum.

  8. #8
    Bannato L'avatar di unrealman
    Registrato il
    12-03
    Località
    parma
    Messaggi
    4.757
    MOBO =scheda madre
    SVGA=scheda video
    HD =Hard-disk (disco rigido)
    .......

  9. #9
    Here we go L'avatar di cdjs
    Registrato il
    10-02
    Località
    Somewhere in the network
    Messaggi
    1.827
    Ci avevo pensato anch'io. Magari si possono fare diverse "aree lavoro" (cpu, ram, strutture, mobo, chipset,...), sondaggio x sapere quanti parteciapano e poi ci si suddivide i compiti. Su un argomento ox lav 2 max 3 persone che si inviano mail e pian piano, con le info di 1,2,3 stendo un text con tt quello che sanno. Se si ha dubbi si chiede o gooooooogle rulez. Magari si può fare text nn relazionale ma di definizione. + semplice e immediato...
    Computer configuration:
    Procio: Athlon 64 X2 3800+ skt 939, Mobo: Asus A8NE - FM, Ram: Kingmax Superram 512 x 2 Mb Ddr400@450 2.5-3-3-5, Hard disk: Segate barracuda sata 120gb 7200 & Hitachi 120 gb U-ATA 133 7200g/m, Scheda video: XFX 8800GT 256MB, Mouse - Tastiera Trust, Optical: Masterizzatore dvd: NEC 3500AG 2.18; masterizzatore cd: Philips CDRW 2412A

  10. #10
    Intel-ligente L'avatar di nvidia geforce
    Registrato il
    01-04
    Località
    Napoli
    Messaggi
    2.453
    qualcosa sulla VGA (parte1)

    LO SLOT AGP

    L'AGP (Accelerated Graphics Port) è un interfaccia punto a punto che serve a collegare il sistema grafico (la vga) al resto del pc. Inizialmente, era stato pensato unicamente per permettere alla scheda video di utilizzare la memoria di sistema per immagazzinare le informazioni relative alle texture. L'architettura si è sviluppata permettendo alla scheda grafica di memorizzare tutti i tipi di dati grafici.
    Il bus AGP nasce per sgravare il bus Pci dalla gestione dei dati grafici e permettere un collegamento diretto tra vga e memoria di sistema, cosa che giova nettamente alle prestazioni.
    Esistono vari tipi di slot AGP, ecco una piccola immagine esplicativa:


    Alcuni slot AGP 4x/8x sono incompatibili "fisicamente" con alcune schede video AGP 2x (come la voodoo 5 5500 o Ati rage 128).

    Come si vede dall'immagine non tutti i tipi di slot AGP sono compatibili tra loro, essi hanno infatti una diversa disposizione delle tacche per evitare che venga montata una scheda grafica incompatibile.

    Vediamo ora nello specifico come gestisce le informazioni l'AGP.
    L’AGP prevede due tipi d’impiego che differiscono tra loro per la modalità di gestione delle informazioni:


    nel modello Dma (Direct Memory Access), la memoria integrata sulla scheda video viene considerata come principale e ci si riferisce ad essa come “frame buffer locale”; è qui che le texture e i dati della struttura 3D vengono allocati prima di poter essere elaborati;

    nel modello Dime (Direct Memory Execution ), la scheda video utilizza contemporaneamente la memoria locale e quella di sistema come memoria grafica principale. In questo caso i dati di struttura e delle texture non vengono spostati, ma utilizzati indifferentemente dalla loro posizione.

    Perché la scheda video possa vedere un unico segmento di memoria contiguo (unione di quella locale e quella di sistema), è necessaria una tabella in cui siano mappati gli indirizzi fisici delle celle di memoria di sistema allocate per la memoria grafica. Questa tabella si chiama Gart (Graphics Address Remapping Table, tabella di reindirizzamento) ed è fornita da un driver specifico per ogni processore grafico.
    Ad aumentare la larghezza di banda dell'AGP e ad accellerare il trasfrimento di dati, provvede il Sideband (banda laterale). Esso consiste in un percorso supplementare di dati fra la memoria di sistema e il processore, oltre il bus principale. Prende le istruzioni di ordine e di indirizzo dal bus principale e le trasmette su una banda laterale al chipset del sistema. Il "sidebanding" lascia il processore grafico allineare le nuove richieste di dati mentre, il bus principale continua a raccogliere i dati stessi.

    Inizialmente l'AGP lavorava alla frequenza di 66Mhz con uno schema di funzionamento simile a quello del bus Pci. Ben presto, però, si passo' a due dati per ciclo di clock (AGP 2x), poi a quattro dati per ciclo di clock (AGP 4x).
    Attualmente i dati per ciclo di clock sono 8, si è ottenuto quindi l'AGP 8X.
    In più test effettuati, è stato dimostrato che la differenza in termini prestazionali tra i vari AGP, è quasi nulla. Si sono notate paradossalmente, in alcuni casi, prestazioni più elevate con AGP 1X o 2X, rispetto al 4X o all'8X.
    L'AGP ha un canale a 32bit (4Byte) e nella versione a 1X trasferisce 266MByte/sec, nella versione 2X trasferisce 512MByte/sec, nella versione 4X 1024MByte/sec e nella più recente versione 8X trasferisce ben 2048MByte/sec.
    Si ricorda che tale slot, oltre a fare da tramite per una grande quantità di informazioni, assicura anche l'alimentazione alla nostra vga. (Le schede di ultimissima generazione necessitano di un ingresso ausiliario di alimentazione oltre la tensione di alimentazione dell'AGP).Ultimamente l'AGP ha molta meno importanza perchè, per scelte costruttive delle vga, il grande quantitativo di informazioni grafiche non transita più per il bus AGP ma rimane interno alla scheda video, in cui il bus delle memorie è molto più veloce e ottimizzato. Schede come la recente FX5900 assicurano un trasferimento di dati di 27Gb/sec, valore nettamente superiore ai 1024Mbyte/sec dell'AGP 4X.
    Diciamo spesso che AGP 4X e AGP 8X non influiscono sulle prestazioni proprio perchè le schede di ultima generazione non stressano il bus AGP tanto da riuscire a saturarlo. Il prossimo sviluppo si avra' con il PCI-Express, che verrà introdotto l'anno prossimo ed eliminerà dai nostri PC il connettore in questione.



    LA GPU


    Cos'è una GPU?
    La GPU (Graphic Process Unit) è il processore grafico di una scheda video. Esso esegue i calcoli necessari affinchè i dati elaborati dalla CPU (Central Processing Unit) in formato digitale, siano convertiti in formato analogico (formato necessario per la visualizzazione dei segnali sul monitor).
    Il core assegna ad ogni pixel che verrà visualizzato sul monitor (da qui deriva poi la risoluzione, più pixel ci sono e più l'immagine è dettagliata) un codice RGB (red, green, blue) e un identificatore della luminosità, denominato canale alpha. Ovvero assegna al singolo pixel un codice che determina il suo preciso colore, frutto della combinazione dei tre colori dai quali prende il nome l'RGB (rosso, verde e blu). Ad ognuno di questi colori può essere assegnato un valore compreso tra 0 e 255 e quindi assegnando ad ognuno dei tre un numero, la combinazione RGB genera il colore proprio di ogni singolo pixel. E' facile immaginare quante siano le varie combinazioni di colori possibili per ogno di essi. E' per questo che col tempo il clock delle GPU (dotate di una frequenze di funzionamento) è sempre più alto.
    Tuttavia sul monitor l'immagine va continuamente aggiornata, è per questo che la GPU deve essere tanto potente da garantire un aggiornamento della stessa, talmente veloce da non far percepire "distacco tra una rinfrescata ed un'altra". Da qui deriva la corsa all'fps estremo degli ultimi tempi.

    Genesi di un'immagine 3D
    Il procedimento di creazione di un'immagine 3d è composto da 4 fasi principali:

    1. Applicazione/Scenario;
    2. Geometria;
    3. Setup di triangoli;
    4. Rendering/Rasterizzazione;

    Per creare un modello 3D vengono usati dei poligoni (per l'esattezza dei triangoli, perchè sono i poligoni con meno vertici). Il primo passo è il calcolo delle posizioni di questi vertici in un ipotetico spazio tridimensionale. Ad ogni vertice viene assegnata una terna di numeri che corrispondono alle coordinate lungo gli assi x, y, z. L'asse z è quello che dà l'altezza di un punto rispetto ad un altro che ha gli stessi valori di x e y; questo permette di capire quale dei due punti è più vicino all'osservatore (e quindi è visibile); l'altro ( a parità di x e y) risulta coperto e quindi fa parte di una superficie nascosta alla vista, che andrà rimossa prima dell'invio del quadro al monitor. Una volta calcolati i punti corrispondenti ai vertici di tutti i triangoli che compongono le superfici sia visibili che nascoste, si passa alla fase successiva. Con le schede video di vecchia generazione (fino a quelle DX6), tutta la fase di calcolo relativa ai triangoli era interamente a carico della cpu. Dalle DX7, la cpu si limita a calcolare solo le posizioni iniziali dei vertici e poi passa i dati alla scheda video che si occupa di tutto il resto. Ai modelli creati, vengono applicati anche algoritmi riguardanti la simulazione di leggi fisiche. La scheda video applica quindi le prime trasformazioni e calcola l'illuminazione della scena. Gli oggetti presenti in una scena 3D, vengono ruotati e illuminati, calcolando così i vari effetti di illuminazione possibili. In seguito i punti del piano 3D (x,y,z) vengono trasformati e proiettati sulla scena 2D (x,y) che verrà visualizzata sullo schermo.
    Una volta terminato il set up dei triangoli, la fase successiva può essere quella del rendering. I dati vengono trasmessi alle pipeline del chip grafico perchè sui triangoli, che rappresentano lo schletro dell'immagine, venga applicata la pelle, ossia le texture. Questa operazione è rimasta pressochè invariata nella sostanza; sono cambiate la velocità d'esecuzione, la "forma" dei dati trasferiti e anche la quantità e la qualità delle texture applicate che è via via cresciuta di pari passo con l'aumentare della potenza di calcolo dei chip grafici, in base ad un criterio molto semplice quanto universale: più sono i dati che si riescono a trasferire in un intervallo di tempo determinato, più è accurata la trasmissione; però per trasferire più dati sono necessari un trasmettitore (processore grafico) più veloce e un canale di comunicazione (banda passante) più ampia.
    Dopo l'applicazione delle texture, si procede alla rimozione delle superfici nascoste.
    Questa procedura si chiama IMMEDIATE RENDERING ed era quella in uso prima dell'introduzione di algoritmi per la riduzione dell'overdraw (che altro non è che la saturazione della banda con le trasmissione di dati superflui). E' una procedura molto dispendiosa e poco efficiente, perchè obbliga ad applicare le textures anche a quelle superfici che, essendo coperte da altre, andranno successivamente rimosse.
    In seguito sono stati introdotti algoritmi per la rimozione preventiva di questi poligoni nascosti (i più noti sono il Tile Based Rendering di PowerVR, l'Hyper-Z di ATI e la Lightspeed Architecture di nVIDIA).
    Questi algoritmi, con meccanismi diversi, eliminano i poligono nascosti prima che questi vengano renderizzati.
    Fin qui si è esaminata una situazione statica; in realtà, mentre si gioca, la scena è in movimento, a volte anche piuttosto frenetico; ogni volta che si compie un movimento, seppure minimo, cambia l'angolo di visuale e tutta la scena deve essere ricalcolata. A questo scopo i chip sono dotati di algoritmi di tipo predittivo-adattativo che cercano di "capire" quale sarà il punto di vista successivo a quello della scena in quel momento visualizzata, in base a quella che è la dinamica del movimento dell'alter ego virtuale del giocatore. Non si deve però, tener conto solo delle superfici nascoste dietro ad altre, ma anche di quelle che potrebbero trovarsi ad uscire fuori dal monitor mentre ci si muove. Per evitare che ciò accada, la scheda video è in grado di ricavare una finestra rettangolare, non necessariamente delle dimensioni del monitor, i vertici della quale sono congiunti da dei segmenti al punto di osservazione; tutte le superfici che cadono al di fuori di questa finestra sono automaticamente eliminate.

    Composizione del chip
    Fondamentalmente i chip sono composti di silicio; si tratta di un elemento del IV gruppo (il che significa che ha una configurazione dell'ultimo orbitale con 4 elettroni di valenza (e la possibilità, quindi di creare fino a 4 legami con altri elementi).
    Dal punto di vista fisico è un semiconduttore.
    Per capire cosa siano i semiconduttori, si deve fare un breve riassunto della struttura di un atomo.
    Secondo il modello di Bohr-Rutherford, universalmente accettato, l'atomo è formato (a grandi linee) da un nucleo composto da neutroni ed protoni e da una serie di elettroni che orbitano intorno ad esso (in realtà gli elettroni non orbitano nel vero senso della parola, poichè sono rappresentati da funzioni d'onda a cui è lagata una probabilità; però prendete per buona la faccenda delle orbite tipo sistema solare). Ovviamente questi elettroni non ruotano in posizioni distribuite casualmente, ma hanno delle collocazioni ben precise (a seconda anche del tipo di orbitale che può essere di tipo s, p, d, f). Tra un'orbita consentita e l'altra, ci sono delle "no fly zone" ossia delle aree proibite; probabilisticamente parlando sono delle zone in cui la probabilità di trovare un elettrone è 0.
    Tanti atomi formano un reticolo cristallino; i legami tra gli atomi si instaurano mettendo in gioco uno o più elettroni di valenza (quelli degli ultimi orbitali non completi).
    A seconda delle caratteristiche degli atomi componenti, il reticolo si comporta in diverse maniere; in realtà il comportamento è fortemente condizionato dall'energia necessaria a far muovere gli elettroni adoperati per formare i legami, all'interno del reticolo (detta proprio in maniera spicciola). Immaginate che per far muovere gli elettroni si debba superare una barriera. Se questa barriera è molto alta, gli elettroni rimarranno ben ancorati alle loro posizioni e il cristallo si comporterà da isolante perfetto; se questa barriera è del tutto inesistente, gli elettroni sono liberi di muoversi a loro piacimento e il cristallo è un conduttore (metallo); una barriera di altezza media permetterà ad alcuni elettroni di saltare al di sopra di essa: il cristallo in parte sarà in grado di condurre (semiconduttore). Esiste un modo per randere questa barriera più facilmente superabile: introdurre al suo interno delle impurità (le più comuni sono GaAs e InGaAs) che, posizionandosi opportunamente all'interno della barriera stessa, funzionino da trappole per gli elettroni che saltano dalla banda di valenza a quella di conduzione ma non hanno abbastanza energia per raggiungere quest'ultima. Una volta intrappolati, gli elettroni hanno una seconda possibilità per saltare in banda di conduzione, questa volta da una posizione più vantaggiosa (sono più vicini). Questo permette di aumentare la conducibilità di alcune specifiche aree del wafer di silicio da cui si vuole ricavare il chip.
    La tecnica più usata è la fotoincisione; consiste nell'utilizzo di un laser che, incidendo sul wafer di silicio, permette alle impurità che sono state depositate sullo stesso wafer, di penetrare al suo interno. Il laser è guidato da un computer su cui è memorizzato il layout del chip; di conseguenza seguirà dei percorsi obbligati e solo nelle aree colpite le impurità penetreranno più o meno a fondo (a seconda di come è modulata l'intensità del raggio incidente), creando piste e componenti interni al chip.
    Uno dei limiti da superare con questo metodo, era connesso all'utilizzo di radiazione a frequenze ottiche. Il problema è che non è possibile "disegnare" componenti le cui dimensioni fisiche siano inferiori alla metà della lunghezza d'onda della radiazione incidente. Poichè il blu/violetto ha lunghezza d'onda di circa 400 nm (il rosso è attorno ai 720), le dimensioni minime teoriche non potevano essere inferiori a 200 nm, ossia a 0,2 u. Questo limite è stato superato adottando varie strategie: una è l'utilizzo di radiazioni a frequenza più alta di quelle ottiche (UV, raggi X, ecc); l'altra, utilizzando sempre frequenze ottiche ma con il metodo delle riflessioni multiple; per capire questo sistema, bisogna spiegare cosa è la frequenza di una radiazione: una radiazione di qualunque natura trasporta energia; questa energia non viaggia in modo continuo e costante lungo il raggio della radiazione, ma è concentrata in fronti d'onda che si succedono a distanza costante: la distante tra due fronti d'onda è la lunghezza d'onda; il numero di fronti d'onda che colpiscono, in un secondo, un punto fisso, attraversato dalla radiazione, dà la frequenza; quindi è facile intuire che frequenza e lunghezza d'onda sono inversamente proporzionali (più sono distanti i fronti tra loro, meno ne arrivano in un secondo). Se ad esempio invece di un raggio ne facciamo partire due contemporaneamente, uno diretto sul punto da incidere e uno in direzione di uno specchio da cui venga riflesso, con lo specchio posto in posizione tale che il secondo raggio abbia i fronti d'onda sfalsati di mezza lunghezza d'onda rispetto al primo, abbiamo dimezzato la distanza tra due fronti d'onda successivi che colpiscono il punto da incidere, e raddoppiato la frequenza. Già con due soli raggi si possono ottenere dimensioni di 0,10 u circa.
    In seguito si sono studiati altri metodi di drogaggio. Uno dei più promettenti utilizza polimeri organici; si tratta di un sistema su cui si ripongono molte speranze perchè questi polimeri utilizzati sono solubili in normali solventi (che sono quindi sufficienti a farli penetrare nel wafer di silicio); questo permetterebbe di drogare un wafer a costi bassissimi (non servono apparecchiature fantascientifiche).
    CPU: AMD A-64 3200+ Winchester
    MOBO: DFI Lanparty nF4 Ultra-D rev A3
    Ram: 512mb DDr OCZ PC3700EL rev 3.0
    VGA: Asus eXtreme AX600XT Vivo

    "La mamma mi ha fatto Bello, Sano e Napoletano"

  11. #11
    Intel-ligente L'avatar di nvidia geforce
    Registrato il
    01-04
    Località
    Napoli
    Messaggi
    2.453
    qualcosa sulla VGA (parte2)

    Elementi di una GPU
    Ogni SW contiene una serie di informazioni relative alle immagini da riprodurre sul monitor: queste informazioni riguardano forma, colori effetti di luce, texture base da applicare ecc. e sono, ovviamente, rappresentate in maniera simbolica, attraverso il linguaggio di programmazione adoperato (il più usato è il C con i suoi derivati).
    Possiamo dividere queste informazioni in due grandi categorie: informazioni relative ai vertici e informazioni relative alle texture (intese, in senso generico, come superfici da applicare sui poligoni).
    Queste informazioni iniziali, in fase di caricamento del gioco, vengono valutate e smistate dalla cpu in due blocchi distinti (che poi analizzeremo più in dettaglio); il primo, che va raggruppa tutte le operazioni che si compiranno sui vertici (per vertex operations) e il secondo che riguarda le operazioni relative ai pixel Pixel operations).



    Vertex Shaders (come sono composti e le loro fuzioni)
    Questo gruppo comprende tutti gli elementi che si occupano del calcolo delle posizioni dei vertici dei triangoli che compongono la scena, dell'eventuale aggiunta di ulteriori punti (per aumentare la densità dei vertici originari, spezzando i triangoli in altri triangoli più piccoli e che meglio permettano di rappresentare, ad esempio superfici curve o di arrotondare gli spigoli, ecc); queste operazioni vanno sotto il nome di HIGHER ORDERING SURFACE OPERATIONS; tra le OPERAZIONI AI VERTICI rientrano anche la creazione dei triangoli e delle primitive da essi formate (meshes, NURBS, B-Splines, curve di Bezier) e l'eventuale operazione di rimozione delle superfici nascoste. Non tutto l'HW supporta tutte queste operazioni e non tutto l'HW le supporta a questo livello e con le stesse modalità.
    Ad esempio, fino alle DX6 comprese, tutte le operazioni relative ai vertici (che richiedono calcoli in floating point), erano svolte dalla CPU; fino all'introduzione del processo di POST-RENDERING, le schede video operavano attraverso il PRE-RENDERING (la scena viene renderizzata prima e, solo dopo sono rimosse le superfici nascoste): in caso di PRE-RENDERING, quindi, la rimozione di tali superfici non viene eseguita nell'ambito delle operazioni ai vertici ma al termine della fase di rendering.
    Altro compito del blocco che si occupa delle OPERAZIONI AI VERTICI è quello di operare le trasformazioni sulle primitive. Le trasformazioni non sono altro che operazioni di traslazione, rotazione, scaling, insomma sono quelle operazioni che si occupano di tradurre i movimenti effettuati dalla nostra controparte virtuale, in operazioni matematiche e, successivamente, di nuovo in immagini, in modo da modificare l'ambiente di gioco in base ai movimenti del protagonista dell'azione. Anche queste operazioni, fino all'introduzione delle DX7 erano a completo carico della CPU. Dalle DX7 in poi, la quasi totalità di queste operazioni sono passate sotto il controllo del processore grafico (alla cpu resta il compito di analizzare i dati iniziali e inviarli alla ram video). Con le DX7, però, le operazioni di trasformazione possibili non erano moltissime; era possibile eseguire solo le trasformazioni lineari, quelle cioè che lasciassero inalterati i rapporti matematici tra i lati di ogni singolo triangolo; anche le operazioni relative alle HIGHER ORDER SURFACE erano molto limitate come quantità e qualità. Dalle DX8 in poi, la differente modalità di trasmissione dati (non più in forma di parametri che, per ogni variazione effettuata devono essere ricalcolati, ma in forma di vettori su cui si può agire tramite operazioni dirette (non mi addentro in questa trattazione che altrimenti diventerebbe di natura matematica), rendendo tutto più agile), ha permesso l'introduzione di tutta una serie di operazioni che permettono anche la modifica dei rapporti tra i lati di uno stesso triangolo e un notevole incremento quantitativo e qualitativo di operazioni di Higher Ordering Surface (un esempio per tutti sono le superfici curve o il Truform) o la Keyframe Interpolation (che ATI aveva introdotto già con il Radeon 256, seppure in forma limitata, senza l'utilizzo di operazioni sui vettori), che permette alla scheda video, date due scene A e B, non consecutive (ma ovviamnte neppure troppo distanti tra loro), di riprodurre i frames intermedi senza dover ogni volta attingere aibuffer di dati,relativi a vertici e pixel, allocati nella ram video (o, in alcuni chip, all'interno della stessa GPU). Ovviamente, la Keyframe, come il Truform, deve essere una funzione supportata dal SW.
    Al termine delle operazioni ai vertici, il risultato finale sarà costituito da una serie di dati relativi a poligoni, uniti tra loro, formati tra triangoli, che vanno sotto il nome di PRIMITIVE.

    Guardando la figura e facendo analogie con quanto visto nel caso dell'NV20 che aveva in parallelo un'unità VS e una vertex unit del TL statico, si potrebbe essere indotti a pensare che la situazione sia la stessa. In realtà non è così.
    L'R3x0 ha, per ogni unità VS, due tipi di unità differenti che operano in parallelo su dati in input solo formalmente differenti. L'unità 128 bit vector processor è l'unità classica VS e permette di operare su 4 vertex data contemporaneamente, utilizzando 32 bit su ciascuno: i 4 dati sono relativi ad un singolo vettore (che con i VS è definito da 4 parametri che tengono conto delle 3 dimensioni spaziali reali e di una quarta che definisce lo spazio ampliato (chi ha nozioni un po' avanzate di geometria analitica sa a cosa mi riferisco)).
    Il 32 bit scalar processor, invece, utilizza gli stessi dati, ma lavorando su una singola coordinata per volta. Il suo utilizzo è dovuto al fatto che, in alcune applicazioni (soprattutto di carattere professionale), a volte i dati in input per un punto non sono comprensivi di tutte e quattro le coordinate che definiscono un vettore, ma ne presentano sono qualcuna. Utilizzando un motore di tipo vettoraile a 128 bit, si opera, magari su una sola coordinata, impegnando comunque un motore in grado di agire contemporaneamente su tutte e quattro le coordinate, con un certo spreco di risorse.
    Ad esempio il P10 di 3DLabs, non ha motori vettoriali a 128 bit, ma una matrice di 16 motori scalari da 32, ognuno dei quali in grado di operare su una singola coordinata.
    Quando operano su 4 vettori, 4 motori vettoriali sono più efficienti di 16 scalari, e l'elaborazione del P10 risulta più lenta di quella dell'R300 (questa è la situazione tipica dei giochi). La situazione è completamente rovesciata, qualora in ingresso si abbiano dati ad esempio relativi a 8 punti, di ognuno dei quali è assegnata solo una coppia di coordinate (non definiti, quindi in forma di vettori); in quel caso i 16 motori scalari del P10 lavorano ognuno su un dato, riuscendo a tirare fuori 16 dati in output, contro gli 8 dell'R300 (4 elaborati dai motori 128 bit e 4 da quelli a 32).
    Indipendentemente dalle operazioni svolte, però, anche per le unità VS valgono le considerazioni fatte per le unità PS: l'R3x0 ha 4 unità VS ed è in grado di "scrivere" 4 soli vertici per volta.
    Per quanto rigurda l'NV3x resta il dubbio che l'architettura sia tipo quella dell'R3x0, con 3 unità VS di tipo misto (invece di 4) o tipo quella del P10 con una matrice di 12 motori scalari a 32 bit (i test finora effettuati non hanno chiarito questo dubbio e nVIDIA non ha rilasciato dichiarazioni al riguardo).

    Pixel Shaders (come sono composti e le loro funzioni)

    Schema a blocchi dei Pixel Shaders

    in dettaglio ogni pipeline è così costituita

    Se i dati dei vertici sono inviati o alla CPU o ad una vertex unit (TL statico) o alle unità VS, quelli relativi ai pixel sono inviati ad un blocco che si occupa di elaborare le skins da applicare sulle primitive uscite dalle operazioni sui vertici.
    Ogni gioco ha un database di texture; queste texture sono inviate alla ram video o, se questa risulta insufficiente, allocate in parte nella ram video e la rimanenza in quella di sistema (in un vero e proprio texture buffer).
    Le informazioni relative ai pixel contengono nozioni base sul tipo di luci, di effetti, di colori da applicare ad ogni singolo pixel. Le operazioni sui pixel comprendono una serie di test che hanno lo scopo di ricostruire con esattezza forma, colore, dimensione delle texture da applicare sulle primitive (che sono in modalità wireframe e proiettate su un piano bidimensionale) e, anche, eventuali effetti (effetto nebbia, trasparenze, riflessioni e quant'altro). Questi test sono effettuati da due blocchi di operazioni che vanno sotto i nomi di rasterization e fragment operations.


    RASTERIZATION:
    L'operazione di rasterizzazione inizia con il prelievo, qualora sia necessario, di una o più texture tra quelle presenti nel data base originario, per ognuna delle primitive; a questa texture viene applicata l'illuminazione (con diverse tecniche che si basano, fondamentalmente sull'utilizzo di tecniche di interpolazione tra sorgenti di tipo diverso, posizionate ai vertici dei triangoli componenti la primitiva - non so se sia il caso di approfondire o meno questo argomento). Altre operazioni che avvengono in fase di rasterizzazione sono i calcoli relativi all'alfa blending, ai colori da applicare per ogni pixel e, nei chip che operano mediante il PRE-TEXTURING, le operazioni relative allo Z-test. Le operazioni di rasterizzazione, in alcuni chip di nuova concezione (che utilizzano più buffer interni), avviene mediante l'ausilio di una pixel cache oltre che di una texture cache. Poichè i dati ricavati attraverso la rasterizzazione devono essere, in seguito trasformati in texture da applicare su ogni singolo pixel, l'utilizzo di queste due cache permette di evitare continui accessi alla ram video (o peggio ancora a quella di sistema) per stivare i dati ricavati in ogni singolo passaggio. Ad esempio i dati relativi al colore da applicare o quelli ricavati dallo z-test (he forniscono le posizioni, pixel per pixel, dei punti che hanno stessi valori di x e y, permettendo di ricavare un ordinamento in base ai valori lungo l'asse z), possono essere allocati nel pixel buffer e da questo trasferiti direttamente al texture buffer, quando necessario, anzichè essere inviati alla ram esterna al chip e, in seguito, da questa ripescati per essere utilizzati per l'applicazione delle texture o per la creazione di nuove texture e la loro successiva applicazione).
    Al termine della rasterizzazione abbiamo le informazioni relative a primitive 3D, schiacciate su un piano bidimensionale, con ogni pixel a cui è stato assegnato un colore, un determinato tipo di illuminazione e ne è stata determinata la superficie visibile.

    FRAGMENT OPERATIONS:
    Si tratta di una serie di altri test (quindi operazioni di carattere matematico) atti a determinare i così detti effetti "speciali" da applicare ad ogni superficie, pixel per pixel.
    Sia la rasterizzazione che le fragment operations sono acarico delle unità matematiche delle pipeline di rendering (ALU).
    I dati finali ricavati permettono di creare nuove texture o, eventualmente, di sceglierne una tra quelle già presenti nel database originario. Ogni nuova texture creata, è inviata alla texture cache, pronta ad essere utilizzata ad ogni evenienza.
    Una volta stabilito quali sono le texture da applicare per ogni singola porzione di schermo, entrano in scena la TMU che sono le unità che permettono la conversione "fisica" delle skins, da formule matematiche a immagini visualizzabili sul monitor.
    Queste "immagini" sono scritte in forma digitale e. se si dispone di un monitor CRT o di un TFT con ingresso analogico, vanno convertite in immagini analogiche. Di questa operazione si occupa il DAC. I dati che arrivano al DAC sono nella forma elaborata all'interno della scheda video i immagazzinati in memoria: il DAC li converte in forma analogica par poter essere trasferiti ad una periferica analogica (ad esempio un monitor CRT). Quando si utilizzano TFT con ingresso DVI, questa conversione, con relativa perdita di qualità dovuta alla perdita di dati nelle operazioni di ricostruzione (nel passaggio D/A) viene by-passata, potendo contare su un collegamente del tipo digitale-digitale.
    Questo è un problema tipico di molti campi d'applicazione (quello cioè di dover effettuare conversioni da digitale ad analogico e viceversa); un esempio è quello delle telecomunicazioni: anche utilizzando canali prettamente digitali (fibre ottiche, ponti laser, ecc), alcune operazioni sono ancora eseguite usando circuiti analogici; questo obbliga ad una conversione del segnale ed. eventualmente, ad una successiva riconversione (per esempio nei circuiti di commutazione).
    Un altro esempio riguarda le cineprese digitali con uscita USB (analogica); in quel caso, la cinepresa opera in digitale, ma ha all'interno un DAC che converte il segnale in analogico per poter essere trasmesso via USB. All'interno della scheda video ridiventa digitale (doppia conversione = perdita di qualità). I dati vengono quindi inviati alla RAMDAC che è la ram che dialoga con un altro piccolo processore (il DAC - convertitore digitale analogico) così come la GPU dialoga con la ram video. Oggi come oggi, nel 99% dei casi, lavorando in true color l'SRAM del RAMDAC viene bypassata, e i dati relativi alle 3 componenti cromatiche vengono "sparati" direttamente ai 3 DAC. La ram statica infatti viene usata come lookup table quando si ha a che fare con modalità video "a palette" (tipo quella a 256 colori), in maniera da poter convertire velocemente il colore "logico" che arriva dai buffer nel corrispondente RGB. I dati, in forma digitale, sono inviati al front buffer; da qui vengono prelevati, convertiti in forma analogica dal DAC e inviati al monitor. Frequenze di RAMDAC più alte garantiscono una maggior velocità nel processo di conversione e invio al monitor delle immagini da visualizzare; questo si traduce nella possibiltà di avere frequenze di refresh più alte a parità di risoluzione o risoluzioni maggiori a pari frequenza di refresh.

    spero di essere stato utile
    CPU: AMD A-64 3200+ Winchester
    MOBO: DFI Lanparty nF4 Ultra-D rev A3
    Ram: 512mb DDr OCZ PC3700EL rev 3.0
    VGA: Asus eXtreme AX600XT Vivo

    "La mamma mi ha fatto Bello, Sano e Napoletano"

  12. #12
    Bannato L'avatar di unrealman
    Registrato il
    12-03
    Località
    parma
    Messaggi
    4.757
    dove lai presa la fonte ?

  13. #13
    Intel-ligente L'avatar di nvidia geforce
    Registrato il
    01-04
    Località
    Napoli
    Messaggi
    2.453
    Citazione unrealman
    dove lai presa la fonte ?
    dal mio cervello è una guida vecchia
    CPU: AMD A-64 3200+ Winchester
    MOBO: DFI Lanparty nF4 Ultra-D rev A3
    Ram: 512mb DDr OCZ PC3700EL rev 3.0
    VGA: Asus eXtreme AX600XT Vivo

    "La mamma mi ha fatto Bello, Sano e Napoletano"

  14. #14
    Bannato L'avatar di unrealman
    Registrato il
    12-03
    Località
    parma
    Messaggi
    4.757
    se hai scritto tutto questo!

  15. #15
    Intel-ligente L'avatar di nvidia geforce
    Registrato il
    01-04
    Località
    Napoli
    Messaggi
    2.453
    Citazione unrealman
    se hai scritto tutto questo!
    fatta in passato, era un sunto di tutte le guide lette
    CPU: AMD A-64 3200+ Winchester
    MOBO: DFI Lanparty nF4 Ultra-D rev A3
    Ram: 512mb DDr OCZ PC3700EL rev 3.0
    VGA: Asus eXtreme AX600XT Vivo

    "La mamma mi ha fatto Bello, Sano e Napoletano"

Pag 1 di 2 12 UltimoUltimo

Regole di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •