Ultimo aggiornamento 29 giugno 2001 Raccolta di testi di elaborati per il Corso di Calcolatori Elettronici I (Prof. Fadini) --------------------------------------------------------------------------------------- Elaborato 1 Progettare un contatore sincrono up/down mod 12 con ingresso di reset sincrono. Elaborato 2 Progettare una macchina che riceva una sequenza di dati di lunghezza variabile attraverso una linea seriale e ritrasmetta i dati su un canale parallelo un carattere alla volta. Un segnale di clock applicato in ingresso alla macchina segnali gli istanti di tempo in cui la macchina deve acquisire i bit in ingresso dalla linea seriale. +----------+ din | |---> d3 ---->| |---> d2 ck | |---> d1 ---->| |---> d0 | |---> strobe +----------+ I dati trasmessi sul canale seriale siano codificati con il codice 4B/5B seguente: Carattere | Carattere ricevuto | da trasmettere sul canale | sul canale seriale | parallelo din | d3-d2-d1-d0 -----------+--------------- 11110 | 0000 01001 | 0001 10100 | 0010 10101 | 0011 01010 | 0100 01011 | 0101 01110 | 0110 01111 | 0111 10010 | 1000 10011 | 1001 10110 | 1010 10111 | 1011 11010 | 1100 11011 | 1101 11100 | 1110 11101 | 1111 La sequenza dati sia delimitata da una sequenza di caratteri speciali di sincronizzazione, secondo lo schema: SYNC - START - B0 - B1 - .... - B(N-1) - STOP dove: SYNC = 11000 START = 10001 STOP = 01101 e B0..B(N-1) sono sequenze di 4 bit dati. La macchina produca un impulso strobe ogni volta che è stato ricevuto un carattere di ingresso valido. Elaborato 3 Sviluppare (con produzione di file oggetto mediante assemblatore asm68k) un programma in assembler per il processore Motorola 68000 costituito da un programma principale ed una subroutine per il calcolo del prodotto tra due interi unsigned a 32 bit (e risultato a 64 bit) usando l'istruzione di moltiplicazione unsigned del 68000. (Occorre fare quattro moltiplicazioni e delle somme). Elaborato 4 Sviluppare (con produzione di file oggetto mediante assemblatore asm68k) un programma in assembler per il processore Motorola 68000 costituito da un programma principale ed una subroutine per l'ordinamento di un vettore di interi mediante un algoritmo di bubble sort. I progetti possono essere sviluppati da gruppi di massimo 3 studenti. I progetti di macchine devono essere corredati da schemi circuitali e diagrammi di tempificazione prodotti mediante il simulatore Logicworks. Come supporto allo sviluppo dei programmi in assembler per processore 68000 sono disponibili sul sito http://cuba.grid.unina.it/CalcolatoriI/Calcolatori.html i manuali della Motorola relativi all'architettura ed alla programmazione del processore 68000. Sullo stesso sito è disponibile un simulatore di processore 68000 per l'ambiente PC Windows 95 o NT. Il package del simulatore comprende anche un assemblatore di programmi per 68000.