%RED% __LATEST NEWS__ *Prossimi esami* * *1° aprile 2019* appello straordinario per fuori corso, laureandi eccetera * prova ASM dalle 14 alle 18 in lab Colossus * 1711005: 30 * orale martedì 9 aprile dalle 10.30 alle 13.30 nel mio studio o in aula riunioni se libera * *febbraio* * Hanno superato la prova scritta: * 1711005: voto 29 * 1455172: voto 29.25 * Hanno superato la prova ASM: * 1815691: voto 30 * 1749173: voto 30 * orale 12 febbraio ore 10 aula seminari * Marzo 2019 - cambio del docente * Tutti gli avvisi e le novità del corso verranno postati sul forum di auto aiuto https://q2a.di.uniroma1.it/architettura-degli-elaboratori * Nota: per selezionare il corso bisogna metterlo tra i preferiti nella pagina https://q2a.di.uniroma1.it/courses %FINE% ---++ Corso di Architetture degli Elaboratori - AA 2017-18 - canale MZ * *Docente:* Users.AndreaSterbini * *Ricevimento studenti:* presso lo studio 314b, Via Salaria 113, terzo piano (Dip. di Informatica) * <s>martedì dalle 15 alle 18</s> dal 26/2 al 29/5 si sposta al *lunedì dalle 15 alle 18* * *Esercitazioni ASM:* TBD * *Lezioni:* * lunedì dalle 10.30 alle 13 * giovedì dalle 10.30 alle 13 * *Aula: P2* * [[http://www.studiareinformatica.uniroma1.it/Test-aula#smart_aula_0a4f8458-fd45-4c2d-8042-c88a6f28e3a8][P2 edificio CU037 - città universitaria]] ---+++ Libro di testo * Patterson, Hennessy *Struttura e progetto dei calcolatori* 4° edizione [[http://www.zanichelli.it/ricerca/prodotti/9788808352026/david-a-patterson/struttura-e-progetto-dei-calcolatori/][Zanichelli]] ISBN:9788808352026 * va bene anche la 3° edizione italiana o le edizioni americane ( ISBN:9780123747501 ) ---++++ Altri appunti (che in genere uso per l'esame orale) * [[%ATTACHURL%/CPU.pdf][diagramma della CPU MIPS ad un colpo di clock]] * [[%ATTACHURL%/CPU-con-pipeline-completa.pdf][diagramma della CPU MIPS con pipeline]] * con anticipo di *beq* e di *j* * con unità di forwarding nelle fasi *ID* e *EXE* ma non in *MEM* * [[%ATTACHURL%/MIPSReference.pdf][reference delle istruzioni MIPS e del loro formato]] * A lezione ho svolto un nuovo tipo di esercizio con la cache, in cui gli indirizzi che la CPU chiede sono quelli generati da un pezzo di programma. * Si considera una CPU ad un ciclo di clock, più semplice, in cui ogni istruzione genera 1 o 2 accessi alla memoria * Fetch della istruzione * *solo per le istruzioni lw, sw e simili (lb,sb,lh,sh)* un accesso all'indirizzo del dato letto o scritto * Una volta individuata tutta la sequenza di accessi il resto dell'esercizio è come un normale esercizio su cache degli anni passati * Per chi non era a lezione allego un esempio di esercizio svolto in cui si copia un vettore di 4 elementi in un secondo vettore * [[%ATTACHURL%/esercizio-programma-cache.pdf][esercizio-programma-cache.pdf]]: Esempio di accessi alla cache generati da un programma ---+++ Prova scritta di metà corso ("esonero") A metà corso verrà svolto un compito scritto di teoria sulla prima parte del corso (fino alla CPU ad un colpo di clock compresa + esercizio ASM su carta su vettori o stringhe o matrici) Chi supera l'"esonero" può svolgere la sola seconda metà dell'esame scritto Il compito di esonero si terrà nella settimana dal 16 al 20 aprile. ---+++ Modalità di valutazione Il voto finale è formato da: * fino a *2 punti aggiuntivi* per lo svolgimento corretto dei compiti per casa (opzionale) * una prova *pratica* di assembler da svolgere in laboratorio in 2 ore, in cui dovete realizzare un programma ricorsivo *funzionante* (se ricorsivo vale 30, se iterativo vale 18) * un esame *scritto* di teoria/esercizi * un esame *orale* di teoria * si può accedere all'orale *solo* se si sono superate le due prove scritta/pratica * è permesso svolgere le 3 prove (scritto, ASM, orale) in sessioni diverse ---+++ Esercitazioni di Assembly e compiti per casa (homeworks) * usiamo il simulatore [[http://courses.missouristate.edu/kenvollmar/mars/index.htm][MARS]] * gira su qualsiasi OS che abbia Java * simula il processore MIPS di cui studiamo la progettazione nel corso * chi copia vedrà il proprio compito annullato * *[[Diario delle esercitazioni]]* ---+++ Risultati degli homework * HomeWork1 (0.5 punti) * HomeWork2 (0.5 punti) * HomeWork3 (0.5 punti) * HomeWork4 (1 punto) ---+++ Risultati degli esami scritti * RisultatiScrittoAsm22Gennaio2019 * [[RisultatiScritto4Settembre18][Risultati dell'esame di martedì 4 settembre]] * [[Risultati appello speciale del 9 novembre]] * Risultati prova scritta: | *Matricola* | *Es1* | *Es2* | *1°parte* | **Es3* | *Es4* | *2°parte* | *Voto* | | 669498 | OK | -2 | 28 | -2.5 | -2.5 | 25 | *26.5* | | 1595813 | ~OK | -4 | 26 | -4.5 | -5 | 20.5 | *23.25* | | 1654880 | -1 | -4 | 25 | -5 | -6 | 19 | *22* | ---+++ Testi degli esami scritti ---+++ Info sugli anni precedenti * [[Architetture2/MZ/AA16_17/WebHome][AA 2016-17]] * [[Architetture2/MZ/AA15_16/WebHome][AA 2015-16]] * [[Architetture2/MZ/AA14_15/WebHome][AA 2014-15]] * [[Architetture2/MZ/AA13_14/WebHome][AA 2013-14]] ---+++ Diario delle lezioni * L 26/2: chiuso per neve * G 1/3: un po' di storia, la IAS machine * L 5/3: chiuso per elezioni * G 8/3: RISC/CISC, assembly, formato delle istruzioni MIPS, modi di indirizzamento * L 12/3: definizioni dei dai, strutture di controllo, syscall, esempio di programma che legge/scrive * G 15/3: vettori e matrici, esempi di programmi che leggono e scrivono vettori e matrici * L 19/3: switch-case e sua implementazione vettorizzata, funzioni e salvataggio/ripristino su/da stack, esempi di funzioni nidificate * G 22/3: esercitazione di ASM su vettori e matrici * L 26/3: funzioni ricorsive, conversione da ricorsivo (semplice) a ciclo e simulazione di un ciclo con la ricorsione, esercitazione * G 29/3: vacanze pasquali * L 2/4: pasquetta * G 5/4: CPU MIPS ad un ciclo di clock * L 9/4: estensione della CPU MIPS con le istruzioni j, beq * G 12/4: esercizi di esonero * L 16/4: compito di esonero (1 esercizio di programmazione ASM su carta e 2 esercizi sulla CPU MIPS a un ciclo di clock) * G 19/4: interruzione delle lezioni per gli esoneri * L 23/4: introduzione alla pipeline * G 26/4: data hazard, control hazard, forwarding e stalli * L 30/4: ponte * G 3/5: annullata per indisposizione del docente * L 7/5: eccezioni e interrupt. Parallelizzazione statica e dinamica. Cpu Mips parallela a 2 canali * G 10/5: Cache * L 14/5: Cache multilivello * G 17/5: Memoria virtuale * L 21/5: Esercizi con cache e VM * G 24/5: cache e processori multipli, protocollo si snooping * L 28/5: Esercizi d'esame, stampa ricorsiva di una lista puntata * [[%ATTACHURL%/listaConcatenata.asm][listaConcatenata.asm]]: stampa ricorsiva a rovescio di una lista concatenata di interi * G 31/5: Esercizi d'esame ---+++ Come far girare Mars su W10 con uno schermo 4k Dovrebbe essere risolto con gli ultimi aggiornamenti Java ... controllerò Seguite la risposta su http://superuser.com/questions/988379/how-do-i-run-java-apps-upscaled-on-a-high-dpi-display Ovvero 1 installate Resource Tuner 1 copiate il file "C:\ProgramData\Oracle\Java\javapath\javaw" sul desktop in modo da poterlo modificare 1 aprite il file con Resource Tuner e aprite la risorsa Manifest\Neutral 1 cambiate la riga <verbatim> <dpiAware>true</dpiAware> </verbatim> in <verbatim> <dpiAware>false</dpiAware> </verbatim> 1 salvate il file col nome javaw.nodpi e copiatelo nella directory da cui l'avete preso 1 aprite il file Mars.jar usando javaw.nodpi oppure usate il comando * __javaw.nodpi -jar Mars.jar__ ---+++ Slides utili %RED% __ATTENZIONE: le slides di due anni fa sono solo appunti. NON SONO SUFFICIENTI A SUPERARE L'ORALE CHE È BASATO SUL LIBRO__ %FINE% <!-- * Set ALLOWTOPICCHANGE = Users.AndreaSterbini, Users.AlessioMecca -->
This topic: Architetture2/MZ/AA17_18
>
WebHome
Topic revision: r53 - 2019-04-07 - AndreaSterbini
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback