Ministerio de Educación, Ciencia y Tecnología
Universidad Nacional de San Luis
FACULTAD DE CS. FISICO MAT. Y NAT.

ANEXO II

PROGRAMA DEL CURSO: ARQUITECTURA DEL PROCESADOR I

DEPARTAMENTO DE:   INFORMATICA
AREA: Area II: Sistemas de Computacion (FAC.MAAÑO: 2004 (Id: 2966)
Estado: En tramite de Aprobación

 

I - OFERTA ACADÉMICA

CARRERAS PARA LAS QUE SE OFRECE EL MISMO CURSO

PLAN DE ESTUDIOS
ORD. Nº

CRÉDITO HORARIO

   

SEM.

TOTAL

LIC. EN CIENCIAS DE LA COMPUTACION11/988120
PROFESORADO EN CIENCIAS DE LA COMPUTACION11/988120
ningunoninguna

II - EQUIPO DOCENTE

Funciones

Apellido y Nombre

Total hs en
este curso

Cargo y Dedic.

Carácter

Responsable

GROSSO, ALEJANDRO LEONARDO20  hs.PROFESOR ADJUNTO EXC.Efectivo
Jefe Trab. Prác.BERON, MARIO MARCELO20  hs.JEFE DE TRABAJOS PRAC. EXC.Temporal
Jefe Trab. Prác.GONZALEZ, ADELA DEL CARMEN20  hs.JEFE DE TRABAJOS PRAC. EXC.Efectivo
Auxiliar de 1ºMOLINA, SILVIA MARTA 20  hs.AYUDANTE DE 1RA. EXC. Temporal
Auxiliar de 1ºDNL 10  hs.AYUDANTE DE 1RA. SEMI. Temporal
Auxiliar de 1ºMALDOCENA, PAULINO DANIEL 10  hs.AYUDANTE DE 1RA. SEMI. Efectivo
Auxiliar de 2ºDNL 5  hs.AYUDANTE DE 2DA. SIMP.Temporal

DNL: Docente no listado

III - CARACTERÍSTICAS DEL CURSO

CREDITO HORARIO SEMANAL
MODALIDAD
REGIMEN

Teórico/

Práctico

Teóricas

Prácticas de

Aula

Práct. de lab/ camp/

Resid/ PIP, etc.

1c
0 Hs.
4 Hs.
4 Hs.
0 Hs.
Asignatura
Otro: 
Duración: 15 semanas
Período del 08/03/04 al 18/06/04

IV.- FUNDAMENTACION

Con esta asignatura se inicia el estudio de las arquitecturas de procesadores tomando como punto de partida los procesadores secuenciales de tipo Von Neumann. El alumno será involucrado en:
*Problemas de representación de los datos que serán manipulados por el procesador; en cómo diseñar dispositivos físicos que realicen la memorización y manipulación de los datos.
*Comprender cuál es el conjunto de manipulaciones provistas habitualmente por los procesadores.
*Cómo se controla la realización de estas manipulaciones a medida que transcurre el tiempo.
Esto conformará la base previa para el entendimiento de arquitecturas más avanzadas que intentan mejorar el rendimiento de los procesadores secuenciales. Dicha temática es objeto de la asignatura Arquitectura de Procesadores II.


V.- OBJETIVOS

*Aprender como representar datos y manipularlos usando circuitos digitales.
*Comprender como están diseñados los procesadores secuenciales y como es su ciclo de instrucción.
*Desarrollar una actitud crítica frente al diseño de distintos procesadores.
*Obtener experiencia en programación de bajo nivel.Comprender como interactúan los procesadores con su medio externo.

 


VI. - CONTENIDOS

Unidad N° 1: Sistemas Numéricos y Aritmética

Sistemas numéricos posicionales. Sistema binario, hexadecimal y octal. Cambios de base. Aritmética de números sin signo no fraccionarios. Representación de números negativos: representación signo y magnitud, complemento a la raíz, complemento a la raíz disminuida y en exceso. Operación de complementación. Números fraccionarios: representación en punto fijo y punto flotante. Representación de caracteres. Código BCD, ASCII y EBCDIC.

Unidad N° 2: Circuitos Digitales

Conectivas lógicas: AND, OR, NOT, XOR, NAND, NOR. Definición de conjunto adecuado de conectivas. Circuitos combinacionales: semisumador, sumador completo, substractor completo, multiplexor y demutiplexor, decodificador. Circuitos secuenciales: biestable, FF-RS, FF-D, contadores ascendentes y descendentes módulo 2n, registros desplazadores a izquierda y a derecha.

Unidad N° 3: Organización Básica de una Computadora

Organización de un sistema de computadora: unidad central de procesamiento (CPU), memoria, entrada/salida (I/O) y sistema de interconexión (buses). Organización de la memoria. Organización básica de la CPU: unidad de control, unidad aritmética y lógica, registros y buses internos, ciclo de instrucción. Conjunto de instrucciones: elementos de una instrucción de la maquina, tipos de operandos y tipos de operaciones. Modos de direccionamiento: conceptos generales. Modos de direccionamiento de única componente: registro, absoluto, inmediato, registro indirecto, auto incremento, auto decremento. Modo de direccionamiento de múltiples componentes: desplazamiento (indexado, base), base indexado, relativo.

Unidad N° 4: Lenguaje assembly, assembler y lenguaje de programación

El procesador DLX: arquitectura, tipos de datos, conjunto de instrucciones, modos de direccionamiento, formato de instrucción del procesador DLX. Lenguaje assembly: conceptos generales, sintaxis y pseudo operaciones. Assembler de dos pasadas. Operaciones en tiempo de ensamblado, de carga y de ejecución. Ejemplos de programas en el lenguaje del DLX. Llamadas a subrutina y retornos de subrutina. Uso de la pila. Pasaje de parámetros a las subrutinas. Ejemplos en el procesador DLX.


Unidad N° 5: Entrada/Salida

Módulos de entrada/salida: interfaz con la CPU e interfaz con el dispositivo. Protocolos de entrada/salida. Entrada/Salida programada. Organización de la entrada/salida: dedicada y embebida en memoria. Ejemplos de la entrada/salida en el procesador DLX.

Unidad N° 6: Interrupciones. Acceso directo a memoria

Tipos de excepciones. Estructura lógica del sistema de interrupción. Prioridades y habilitación de interrupciones. Acceso directo a memoria. Robo de ciclo.


VII. - PLAN DE TRABAJOS PRÁCTICOS

Práctico N° 1: Sistemas numéricos

Representación de números en binario. Bases múltiplo de potencias de dos. Representación en binario con bit de signo. Representación binaria en complemento a la raíz y raíz disminuida. Representación binaria en complemento a la raíz y raíz disminuida. Representación binaria en exceso. Operaciones aritméticas en los distintos sistemas de representación. Acarreo, overflow. Representación de números en BCD. Código ASCII. Representación y aritmética de números representados en punto fijo y flotante.

Práctico N° 2: Circuitos digitales

Compuertas lógicas. Expresión lógica. Tablas de verdad. Circuitos lógicos. Expresiones lógicas usando una sola conectiva. Circuitos sumadores, restadores, multiplexores y demutiplexores, decodificadores y codificadores. Biestables, flip-flop R-S, flip-flop D. Registros. Contadores. Desplazamiento. Decodificación de direcciones de memoria.

Práctico N° 3: Programación assembly en el DLX (inicial)

Características generales de la arquitectura del DLX. Organización de la memoria. Familiarización con set de instrucciones del DLX y pseudo instrucciones. Programas en lenguaje assembly simples. Instrucciones aritméticas y lógicas. Instrucciones de control condicional.

Práctico N° 4: Programación assembly en el DLX (modos de direccionamiento)

Realizar programas en los que se usen los distintos modos de direccionamiento: inmediato, registro, registro indirecto y desplazamiento (indexado, basado), relativo, simulación de los modos que no posee el DLX.

Práctico N° 5: Programación assembly en el DLX (subrutinas y pasaje de parámetros)

Instrucciones de llamada a subrutina y de retorno de subrutina. Manejo de la pila. Implementación en lenguaje assembly de las distintas formas de pasajes de parámetros: en registro, en área asociada al llamador, en área asociada a la rutina, en línea, en la pila. Pasaje por valor y por dirección.

Práctico N° 6: Programación assembly en el DLX (traducción a lenguaje de máquina)

Analizar los listados generados por el ensamblador. Traducción de diferentes tipos de instrucciones. Calcular los desplazamientos que conforman algunas instrucciones y son expresados en complemento a dos.


Práctico N° 7: Entrada / salida e interrupciones

Protocolo entre los dispositivos para hacer una entrada/salida programada. Programas que realicen entrada/salida en forma programada. Cuestionario sobre conceptos generales de interrupciones. Programas que realicen entrada/salida con interrupciones.


VIII - RÉGIMEN DE APROBACIÓN

Regularización
Para regularizar la materia el alumno deberá cumplir con los siguientes requisitos:

Aprobar dos exámenes parciales. Cada examen parcial tendrá sus correspondiente recuperación.

Examen Final

Los alumnos regulares deberán rendir un examen final (que podrá ser oral o escrito) que consistirá en preguntas sobre los temas desarrollados durante el dictado de la materia.

Alumnos libres

Los alumnos que desean rendir libre la materia se deberán poner en contacto con la cátedra con 15 días de anticipación a los efectos de realizar un práctico, el cual contendrá ejercicios similares a los desarrollados en los prácticos durante el dictado de la materia. Aprobando éste trabajo práctico el alumno tendrá derecho a rendir un examen oral con iguales características que el de los alumnos regulares.



IX.a - BIBLIOGRAFÍA BÁSICA

1. JHON F. WAKERLEY. Microcomputer Architecture and Programming. Ed. JOHN WILEY AND SONS [1981].
2. HAYES J. Computer Architecture and Organization. ED. MC. GRAW HILL [1988].
3. C. WILLIAM GEAR. Computer Organization and Programing. ED. MC. GRAW HILL.
4. WILLIAM STALLINGS. Computer Organization and Architecture. ED. MACMILLAN.
5. WILLIAM STALLINGS. Computer Organization and Architecture fourth edition. ED. PRENTICE HALL [1996].
6. JOHN L. HENNESSY & DAVID PATTERSON. Computer Architecture: A Quantitative Approach. 2nd Edition. ED. MORGAN AND KAUFMANN [1990].
7. NIKLAUS, WIRTH. Digital Circuit Design. Springer [1995].



IX b - BIBLIOGRAFÍA COMPLEMENTARIA


Warning: fread() [function.fread]: Length parameter must be greater than 0. in /extra/alumnos/carreras/impresion.php3 on line 568



COMPLEMENTO DE DIVULGACION


OBJETIVOS DEL CURSO

*Aprender como representar datos y manipularlos usando circuitos digitales.
*Comprender como están diseñados los procesadores secuenciales y como es su ciclo de instrucción.
*Desarrollar una actitud crítica frente al diseño de distintos procesadores.
*Obtener experiencia en programación de bajo nivel.Comprender como interactúan los procesadores con su medio externo.

 

 

PROGRAMA SINTETICO

Sistemas Numéricos. Representación y aritmética de números enteros y fraccionarios. Circuitos Digitales. Circuitos combinacionales básicos. Circuitos secueciales. Organización Básica de una Computadora. Unidad central de procesamiento (UCP). Memoria. Entrada / Salida. Organización interna de una UCP. Ciclo de instrucción. Conjunto de instrucciones de un procesador. Tipos de arquitecturas secuenciales. Lenguaje assembly, assembler y lenguaje de programación. Entrada / Salida. Interfaz con la UCP. Interfaz con los dispositivos. Interrupciones. Excepciones. Llamadas al sistema. Acceso directo a memoria.

 


IMPREVISTOS

Comunicarse con la cátedra.
Arquitectura del Procesador I.
Departamento de Informática.
Facultad de Cs. Fisico, Matemáticas y Naturales.
Universidad Nacional de San Luis.
Ejercito de los Andes 950. CP 5700.