UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA
La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA
Departamento de Ciencias de la Computación y Electrónica Sección Electrónica y Energía
Arquitectura de Computadores Guía didáctica 4 créditos
Titulación ¡
Ingeniero en Informática
Ciclo V
Autores:
Ing. Greyson Paúl Alberca Prieto Ing. Silvana del Cisne Jiménez Rey
Asesoría virtual: www.utpl.edu.ec
ARQUITECTURA DE COMPUTADORES Guía didáctica
Greyson Paúl Aberca Prieto Silvana del Cisne Jiménez
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA CC Ecuador 3.0 By NC ND Diagramación, diseño e impresión: EDILOJA Cía. Ltda. Telefax: 593 - 7 - 2611418 San Cayetano Alto s/n www.ediloja.com.ec
[email protected] Loja-Ecuador Primera edición Tercera reimpresión ISBN-978-9942-08-032-5
Esta versión impresa, ha sido acreditada bajo la licencia Creative Commons Ecuador 3.0 de reconocimiento -no comercial- sin obras derivadas; ni se realicen obras derivadas. http://www.cre http://www.creativecomm ativecommons.org/lice ons.org/licences/by-n nces/by-nc-nd/3.0/ec c-nd/3.0/ec / Abril, 2013
ARQUITECTURA DE COMPUTADORES Guía didáctica
Greyson Paúl Aberca Prieto Silvana del Cisne Jiménez
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA CC Ecuador 3.0 By NC ND Diagramación, diseño e impresión: EDILOJA Cía. Ltda. Telefax: 593 - 7 - 2611418 San Cayetano Alto s/n www.ediloja.com.ec
[email protected] Loja-Ecuador Primera edición Tercera reimpresión ISBN-978-9942-08-032-5
Esta versión impresa, ha sido acreditada bajo la licencia Creative Commons Ecuador 3.0 de reconocimiento -no comercial- sin obras derivadas; ni se realicen obras derivadas. http://www.cre http://www.creativecomm ativecommons.org/lice ons.org/licences/by-n nces/by-nc-nd/3.0/ec c-nd/3.0/ec / Abril, 2013
2. Índice 1. 2. 3. 4.
Datos informativos Índice ................... ....................................... ........................................ ........................................ ......................................... ............................... .......... 3 Introducción .................... ........................................ ........................................ ........................................ ......................................... ..................... 5 Lineamientos generales del Modelo Educativo basado en competencias y créditos académicos UTPL-ECTS.................... ........................................ .............................. .......... 6 4.1 Competencias genéricas ............................ .............................................. .................................... .................................... ....................... ..... 7 4.2 Competencias específicas ......................................... ........................................................... .................................... .......................... ........ 7
5. Bibliografía ................. ...................................... ......................................... ........................................ ........................................ ........................ .... 8 5.1 Básica ............................ .............................................. .................................... .................................... .................................... ............................. ........... 8 5.2 Complementaria ...................................... ........................................................ .................................... .................................... ....................... ..... 8
6. Orientaciones generales para el estudio .................. ...................................... ......................................... .....................10 10 7. Proceso de enseñanza-aprendizaje para el logro de competencias .................. ...................................... ........................................ ........................................ ......................................... .....................13 13 PRIMER BIMESTRE 7.1. Organización y arquitectura arqu itectura ................. ................................... .................................... .................................... ............................. ...........13 7.2. Sistema de evaluación .................. .................................... .................................... .................................... ................................... .................15 7.3. Orientaciones específicas para el ap rendizaje por competencias ................. .................................. .................16 UNIDAD 1. INTRODUCCIÓN A LA ARQUITECTURA DE COMPUTA COMPUTADORES DORES .......... ..................... ....................... ....................... ....................... .............. 16
1.2. Estructura y funcionamiento. ................. ................................... .................................... .................................... ............................. ...........16 1.3. Historia de los computadores com putadores ............................ .............................................. .................................... ................................... .................17 1.4. Máquina de Neumann ........................................ .......................................................... .................................... ................................ ..............17 1.5. Diseño buscando busca ndo mejores prestaciones ........................ .......................................... .................................... .......................... ........20 1.6. Componentes del computador .................. .................................... .................................... .................................... .......................... ........26 Autoevaluación 1 ................ .................................. .................................... .................................... .................................... ................................... .................24 UNIDAD 2. PERSPECTIVA DE ALTO NIVEL DE FUNCIONAMIENTO Y DE LAS INTERCONEXIONES DEL COMPUTAD COMPUTADOR OR ............................ ....................................... ....................... ....................... ...................... ....................... ............... ... 26
2.1. Componentes de un computador compu tador ............................. ............................................... .................................... ............................. ...........26 2.2. Funcionamiento del computador .................. .................................... .................................... .................................... ....................... .....26 2.3. Estructuras de interconexión ................. ................................... .................................... .................................... ............................. ...........28 2.4. Interconexión con buses ................. ................................... .................................... .................................... ................................... .................28 Autoevaluación 2 ................ .................................. .................................... .................................... .................................... ................................... .................31 UNIDAD 3. MEMORIA CACHÉ. .......... ...................... ....................... ...................... ....................... ....................... ....................... ....................... ...................... ...................... ............... 33
3.1. Conceptos básicos sobre sistemas de memoria ........................................... ......................................................... ..............33 3.2. Principios básicos b ásicos de las memorias memoria s caché .................. .................................... .................................... ............................. ...........34 3.3. Elementos de diseño de una caché ............................................ .............................................................. ............................. ...........35 Autoevaluación 3 ................ .................................. .................................... .................................... .................................... ................................... .................40
SEGUNDO BIMESTRE 7.4. Planificación para el trabajo del alumno ..................................................................41 7.5. Sistema de evaluación .........................................................................................43 7.6. Orientaciones específicas para el apr endizaje por competencias ..................................54
UNIDAD 4. ENTRADA Y SALIDA (E/S ................................................................................................. 54
4.1. Dispositivos externos ...........................................................................................44 4.2. Módulos de E/S .................................................................................................45 4.3. E/S Programada ................................................................................................46 4.4. E/S Mediante interrupciones ................................................................................46 4.5. Acceso Directo a Memoria (DMA) .......................................................................... 47 Autoevaluación 4 ................................................................................................................................ 68 UNIDAD 5. ARITMÉTICA DEL COMPUTADOR ......................................................................................... 50
5.1. La unidad aritmético-lógica ...................................................................................50 5.2. Representación de enteros....................................................................................50 5.3. Aritmética con enteros .........................................................................................51 5.4. Representación en coma flotante ........................................................................... 53 Autoevaluación 5 .........................................................................................................68 UNIDAD 6. ESTRUCTURA Y FUNCIONAMIENTO DEL PROCESADOR ............................................................... 57
6.1. Organización del Procesado ..................................................................................57 6.2. Organización de los registros ................................................................................57 6.3. Ciclo de instrucción ..............................................................................................58 6. 4. Segmentación de instrucciones ............................................................................59 Autoevaluación 6 .........................................................................................................83
8. Solucionario ..................................................................................................... 63
PRELIMINARES
Guía didáctica: Arquitectura de Computadores
3. Introducción Una de las materias troncales con 4 créditos que se dicta en la carrera de Ingeniería en Informática, en la Modalidad Abierta y a Distancia, es Arquitectura de Computadores que se ubica en el quinto ciclo. Dentro de la formación de un Ingeniero en Informática, conocer las arquitecturas computacionales es fundamental, ya que muchas de las actividades profesionales exigen un conocimiento en este campo. Por lo que el estudio de esta materia se constituye en uno de los pilares fundamentales debido a que en ella se enseñan los componentes computacionales con cada una de sus especicaciones funcionales . Por ello, el propósito que se persigue con la asignatura es desarrollar las competencias básicas y necesarias para que el alumno esté en capacidad de analizar y resolver los problemas aplicando métodos de la ciencia y la ingeniería como también a aplicar la lógica matemática en el contexto de las Ciencias de la Computación, con proyección, al diseño de circuitos, programación, análisis y desarrollo de algoritmos. En el esfuerzo de cimentar la arquitectura de los computadores, la asignatura se ha organizado de la siguiente manera: En el primer bimestre se estudiarán tres unidades correspondientes a los conceptos fundamentales de la estructura y organización, los sistemas de interconexión de cada uno de los componentes computacionales y nalmente la organización y funcionamiento de la memoria caché. Mientras que en el segundo bimestre los contenidos a cubrir se relacionan con los sistemas de entrada y salida(E/S), la aritmética que se utiliza dentro del procesador y la estructura y funcionamiento del procesador. El reto está planteado, los resultados de su formación personal y profesional depende de su esfuerzo y responsabilidad. Expresamos un cordial saludo y a su vez le invitamos a que juntos llevemos adelante el estudio de la materia. Estamos dispuestos a ser parte de su proceso de aprendizaje.
Muchos Éxitos. Adelante!!!
Guía didáctica: Arquitectura de Computadores
4.
PRELIMINARES
Lineamientos generales del Modelo Educativo basado en competencias y créditos académicos UTPL- ECTS
Sr. Estudiante recuerde que usted ha iniciado su formación de tercer nivel con un sistema educativo basado en el desarrollo de competencias a través de créditos académicos. Este modelo le convierte a usted en protagonista de su propia formación y al profesor en mediador de las experiencias de aprendizaje. Surge entonces la necesidad de que tenga claro dos conceptos fundamentales competencia y crédito académico. •
¿Qué es una competencia? Entendemos por competencia el conjunto de actitudes, habilidades y conocimientos que el alumno adquiere e incorpora según sus características personales y experiencias laborales y, que se ponen de maniesto en el desempeño de la actividad profesional. Las competencias se adquieren a lo largo del proceso formativo de la carrera y se desagregan en objetivos de aprendizaje propuestos en cada asignatura. Elementos de una competencia. Tres son los elementos que podemos distinguir en toda competencia: ¸
•
Actitudes: son predisposiciones y comportamientos ante situaciones concretas.
¸
Habilidades: son destrezas para ejecutar con éxito tareas, utilizar procedimientos y realizar trabajos. Se desarrollan a través de la práctica y la experiencia.
¸
Conocimientos: constituyen los contenidos cientícos, conceptuales, teóricos, conocidos también como el aprendizaje académico.
¿Qué es un crédito académico UTPL / ECTS en la Modalidad a Distancia? Un crédito académico es la unidad de medida del trabajo del estudiante, implica 32 horas de trabajo del alumno (29 horas de trabajo autónomo y 3 horas de interacción) 1. Los créditos académicos que el estudiante irá acumulando en el transcurso de la carrera involucran: aprendizaje autónomo (estudio personal), tareas de investigación, interacción en el Entorno Virtual de Aprendizaje (EVA), participación en tutorías, videoconferencias y otros eventos académicos (Jornadas, seminarios, cursos, congresos avalados por la UTPL), prácticas académicas, pasantías preprofesionales y de vinculación con la colectividad; actividades de evaluación; así como la realización del trabajo de titulación. El modelo adoptado por la UTPL contempla dos tipos de competencias: genéricas y especícas.
1
¸
Competencias Genéricas: Son aquellas capacidades (actitudes, habilidades y conocimientos) comunes a todas las profesiones que se ofrecen en la UTPL. Constituyen una parte fundamental del perl que el estudiante debe desarrollar durante su formación.
¸
Competencias Especícas: son propias de la titulación, aportan a la cualicación especíca para la profesión, dándole consistencia social y profesional al perl formativo.
CONESUP (2008): Reglamento del Régimen Académico del Sistema Nacional de Educación Superior , art. 18.
PRELIMINARES
•
Guía didáctica: Arquitectura de Computadores
Estructura general del programa formativo Las Unidades Académicas o Escuelas de la UTPL han estructurado el programa formativo contemplando cinco ámbitos o bloques de asignaturas: Formación Básica (10%); Genéricas de carrera (15%); Troncales (35%) Complementarias (10%); Libre conguración (10%) y además, el Practicum que comprende las Pasantías preprofesionales y de vinculación con la colectividad y Practicum Académico (20%).
4.1 Competencias genéricas 1. 2. 3. 4. 5. 6. 7. 8. 9.
Capacidad de aplicar los conocimientos en la práctica Conocimiento sobre el área de estudio Capacidad de investigación Habilidades para buscar, procesar y analizar información procedentes de fuentes diversas Capacidad creativa e innovadora Capacidad para organizar y planicar el tiempo Habilidad para trabajar en forma autónoma Habilidades en el uso de las tecnologías de la TIC´S Compromiso ético
4.2 Competencias específcas Estas competencias se encuentran detalladas en la planicación de cada bimestre.
Guía didáctica: Arquitectura de Computadores
PRELIMINARES
5. Bibliografía 4.1. Básica ÿ
Stallings, W. (2006). Organización y Arquitectura de Computadores, Madrid(España), PEARSON Prentice Hall. El texto de Organización y Arquitectura de Computadores hace un amplio análisis de los componentes computacionales y los sistemas de interconexión. Esta organizado en cinco partes detalladas en las primeras páginas. Además contiene ejemplos que le permitirán desarrollar los ejercicios propuestos al nal de cada unidad. En esta materia nosotros revisaremos solamente las tres primeras secciones.
ÿ
Alberca, G. y Jiménez, S. (2011). Guía Didáctica de Arquitectura de Computadores. Loja- Ecuador, UTPL. Guía didáctica diseñada para el estudio de la materia de Arquitectura de Computadores en la carrera de Ingeniería en Informática de la Modalidad Abierta y a Distancia de la Universidad Técnica Particular de Loja. Esta guía le permitirá orientar su proceso de aprendizaje mediante la explicación de los temas que se estudian optimizando el proceso de enseñanza aprendizaje.
4.2. Complementaria RECURSOS OCW ÿ
Garay, N. y Otros. (2009). Arquitectura de computadores I. Departamento de Arquitectura y Tecnología de Computadores. Facultad de Informática. Universidad del País Vasco.[En línea]. Disponible en : http://ocw.ehu.es/ensenanzas-tecnicas /arquitectura-de-computadores-i/Course_ listing. [Consulta 04/05/2011]. El presente recurso OCW lo utilizaremos para apoyar los siguientes temas: la unidad de control, la unidad aritmético/lógica, la estructura de la memoria principal, el subsistema de entrada/salida y la conexión entre subsistemas mediante buses. También como complemento y apoyo a los conceptos teóricos, existen ejercicios, prácticas de laboratorio para trabajar el subsistema de entrada/salida y manipular el hardware típico de un ordenador personal.
ÿ
Puente V. y Abad, P.(2011). Arquitectura e ingeniería de computadores. Departamento de Electrónica y Computadores.Universidad de Cantabria.[En línea]. Disponible en: http://ocw. unican.es/ensenanzas-tecnicas/arquitectura-e-ingenieria-de-computadores/programa. [Consulta 05/05/2011] El presente OCW contiene temas utilizados para describir los fundamentos de diseño de computadores, repertorio de instrucciones, memoria caché. Además contiene actividades que el estudiante puede desarrollar para apoyar su aprendizaje
PRELIMINARES
Guía didáctica: Arquitectura de Computadores
Direcciones electrónicas ÿ
Stallings, W.(2011). Instructor Resources, Computer Organization And Architecture. [En línea]. Disponible en: http://www.box.net/shared/r7evm4jr0d/1/11070107/212600690/1#/shared/ r7evm4jr0d/1/11070107. [Consulta 4/05/2011]. Aquí podrá encontrar un conjunto de erratas del texto. Es importante que revise estas consideraciones.
ÿ
Sutter, G. (2008). Organización y estructura de la memoria cache. Ampliación: Políticas de ubicación en la cache.(transparencias). Universidad Autónoma de Madrid.[En línea]. Disponible en: http://arantxa.ii.uam.es/~gsutter/arq/Arqcap2_extrasUbic.pdf. [Consulta 04/05/2011]. En esta referencia se revisa conceptos relacionados con la Memoria Caché, respecto a la función de correspondencia, políticas de escritura.
ÿ
Aylagas, P. (2007). Notas y transparencias de Arquitectura de computadores. Arquitectura de Computadores. Universidad Politécnica de Madrid.[En línea]. Disponible en: http://www.dia. eui.upm.es/asignatu/arq_com/Paco/Transpaco. htm. [Consulta 04/05/2011]. Estas Notas y Transparencias no pretenden en modo alguno servir de alternativa a cualquiera de los libros de texto indicados en la bibliografía . Sólo son las transparencias de clase con sus notas y comentarios de un curso de 30 horas de introducción a la Arquitectura de Computadores, y simplemente intentan servir de apoyo para su aprendizaje.
ÿ
Quintana, F. (2007). Segmentación. Transparencias del Curso Estructura de computadores de la Universidad de la Palmas de Gran Canaria.[En línea]. Disponible en: http://serdis.dis.ulpgc. es/~itis-ec/Documentacion/Transparencias %20y%20problemas/Tema1_segmentacion/tema1_ segmentacion.pdf. [Consulta 04/05/2011]. El recurso nos permitirá apoyar el tema de segmentación revisado en la unidad 6. Un conjunto de transparencias con imágenes ilustrativas que abordan la segmentación en los computadores.
Guía didáctica: Arquitectura de Computadores
PRELIMINARES
6. Orientaciones generales para el estudio La asignatura “Arquitectura de computadores”, al ser una materia troncal de la Ingeniería en Informática, constituye una de las bases fundamentales para la formación del estudiante dentro de su área profesional, por lo tanto, ofrecemos algunas orientaciones que seguro le ayudarán en su estudio: •
La guía didáctica y un texto básico, los mismos que se detallaron en la bibliografía, y cuya nalidad es la de orientar en el aprendizaje y especicar las diversas actividades que deberá cumplir. Es por ello que se recomienda trabajar en forma paralela la guía con el texto básico.
•
Debido a la temática que se desarrolla dentro de la asignatura, la mejor forma de estudiar y evaluar el avance de los contenidos es a través de la resolución de problemas para lo cual se contará con una sección de autoevaluación utilizada para este n.
•
Tenga presente que los contenidos están divididos en dos partes, para el primer bimestre estudiaremos las unidades 1 a 3 y para el segundo bimestre abordaremos las unidades de 4 a 6. Además es importante que escoja un lugar tranquilo, bien iluminado para el estudio de la asignatura.
•
Lea detenidamente cada uno de los capítulos del texto básico y utilice técnicas de estudio como el subrayado, resúmenes, cuadros sinópticos, mentefactos y/o cualquier estrategia de aprendizaje de acuerdo a su manera de aprender.
•
Como parte de su autoaprendizaje es recomendable que resuelva las autoevaluaciones ubicadas al nal de cada unidad de estudio, hágalas sin consultar ningún documento y luego verique las respuestas en el solucionario ubicado al nal de la guía didáctica.
•
Los trabajos a distancia. Un conjunto de actividades teóricas y prácticas que deben desarrollarse obligatoriamente con el n de evaluar el progreso en el desarrollo de los contenidos. Existen 2 evaluaciones a distancia, una por cada bimestre, que deben entregarse en su centro de estudios en las fechas señaladas por la Universidad. Cada trabajo tiene una valoración de seis puntos y son requisito para presentarse a la evaluación presencial. Los 6 puntos se los obtiene de la siguiente manera: 2 puntos por responder a preguntas objetivas, 2 puntos por resolver los ejercicios de la parte de ensayo y 2 puntos por participación en el EVA (Para nuestra materia existen 2 foros obligatorios por bimestre, evaluaciones en línea, tareas extra, retroalimentaciones, encuestas, los mismos que deben desarrollarse en el EVA)
•
Ingrese al EVA semanalmente, ahí encontrará información que le será de gran ayuda para la comprensión de la asignatura (videos, audios grabados por el tutor, preguntas de compañeros, diapositivas, ejercicios resueltos, etc.).
•
Asista a la videoconferencia, en la que se explicará sobre los temas de la asignatura y participe con preguntas e inquietudes que surjan en el desarrollo de los contenidos.
•
Un curso OCW, el enlace a este curso lo puede revisar en la bibliografía complementaria, que le ayudará a profundizar algunos conceptos. Las lecturas de los temas de este curso, se recomiendan en las secciones nales de cada capítulo de la guía de estudio.
PRELIMINARES
Guía didáctica: Arquitectura de Computadores
•
Para poder recibir ayuda por el profesor (es) – tutor (es) en su aprendizaje, usted puede utilizar los medios de comunicación, el correo electrónico, entorno virtual de aprendizaje (EVA), chat, línea telefónica.
•
Además le recomendamos revisar la “planicación para el trabajo del alumno”, este cuadro le da una visión global de la asignatura, pues allí se encuentran las competencias genéricas, competencias especícas e indicadores de logro por cada uno de los bimestres así mismo puede revisar los contenidos a abordarse, las actividades de aprendizaje y el tiempo estimado para el estudio de cada una de las asignaturas.
•
Si tiene alguna inquietud acerca de los temas tratados puede ubicar sus dudas en el foro o también en el twitter del EVA, para que sus compañeros puedan beneciarse de las respuestas y aprender colaborativamente.
Esperamos que todas y cada una de estas recomendaciones contribuyan al aprendizaje exitoso de esta asignatura. Como parte adicional que se incluye en la guía didáctica usted se podrá guiar con los siguientes iconos que le indicarán la acción a realizar en cada unidad: Indicaciones del profesor
Revisar texto básico
Buscar información en Internet
Interactividad en el EVA. Participe en foros
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
o A d O a M I i A V m R T t s G A T e O N o N E I p O R m R O e C i T
s a i c n e t e p m o c e d o r g o l l e a r a p e j a z i d n e r p a a z n a ñ e s n e e d o s e c o r P . 7
E J A Z I D N E R P A E D S E D A D I V I T C A
E R T S E M I B R E M I R P
n a ó n i c a : c m . a e 2 e o r i y d d e s t r 1 s u n o a t i r a o s e p n h e d A o a t u s V m 2 E e 1 a a r l S o e h n 8 e 1 . 1 s e n o i c c e s s a l n o a c í , u o g c l a i s á e b d o s t a x t e s t e l u e p d o 1 r p o s l e u t t í n p a a g o C r r e e t d n i a r s a u l t c e e t l s e a t l n n o o C c . e 2 i . c 1 i n y I •
o n m u l a l e d o j a b a r t l e a r a p n ó i c a c fi i n a l P
1 . 7
S O D I N E T N O C
s a m e T / s e d a d i n U
E D E S J E A R Z I O D D N A E C I R P D A N I
S A I S C A N C I E Í F T E C P E P M S E O C
y r 2 . o s 2 , e f 1 . o r 2 p n l ó e i c r o c p e s a s t s l e a u n p e o , a r í p o c u g a i s c á i a t b l á e o d m t e x s t e a t t a l s l e e n d u o c 2 p o A l o r V u p E t s e l í t e p n d a c a g o a o r r r o t r u F c t e l n e i e l n a s o e n l e u e p e t i c s c l e i i t t a n r a e o P R c •
A L S A E R O N D A Ó I T C U C P U M D O O C R E T D N I A R : 1 U T C E D T A I U D I Q N R U A
•
a r u t c e t i u q r a y n ó i c a z i n a g r O 1 . 1
a r e m i r p a l e d s o i d u t s e e d a í u g a l n e s o t l e u s e r s a m e l b o r p s o l d e s a i v d i e n R u •
1 d a d i n u a l e d n ó i c a u l a v e o t u a a l e c i l a e R •
n a ó i n c a : c m . 4 e o a e r y d i e s d t r 3 s u n o a t i r a o s p n h e e a o d A t V m 2 u s E e 1 a a r l S o e h n 8 e e t n e i d n o p s e r r o c a i c n a t s i d a n ó i c a u l a v e s a l e d n ó i c u l o s e e r r a t s l e n m o i c b e r c e e m i p i r m p E l a •
s e n o i c a t s s e r o e t r p n o s e d e i r a m t o a u n j n p a e o m m m i c o u o n c e d u s N n F l o e a c y e d s a u d r a b u a n i o t i r c o u ñ u e r t s q s t s i á i E H M D 2 . 3 . 4 . 5 . 1 1 1 1
s e n o d u l n S ó e i n A d c o I u a c l l o a s e v r a d e u t m n c e a ó u d r r g i t c a s i o r a r s r e e r o p e t o o s i r p a c o h d a l r i t o e a u d m l d a a c t a p fi a s i m u r o c o i p o i g n c t b u s n m d e a ó n o d o l E l I c E c
s s e a n m o e i c l c b o u r r t s p n e i d e n d ó i o c t u n l u o j s n e o r c l a l e a r a a z p i l i t S U A I
y o l a d n y a a c i r l i a p c z n i a l e i a n s c a a a l m e e l , b d r r s e o o . d p d a n o í r e r t r e e é i p l v m n e m s o o e s g n o i C r l
, 1 . 3 n a ó í i c u c g e a s l s e a d l n s a e t , s o e c u i s p á o b r p o s t e x t e n t l a e g d o r r 3 t e o i n l u t í s o p l a e t C s e e t d n o a r c u t o c g e e u L L n . o 4 . c 3 e , ú 3 n . i t 3 , n 2 o . C 3 •
a t s e u p o r p a c i t á m e t a l n o c A V E l e d o r o F l e n e e t n e m a v i t a r o b r a o l o s e c f o e r p p l i c e i t r r a o P p
a r e m i r p a l e d s o i d u t s e e d a í u g a l n e s o t l e u s e r s a m e l b o r p s o l d e s a i v d i e n R u
•
•
a l e d n ó i c a u l a v e o t u a a l e d o l l o r r a s e d l e n o c s o t n e i m i c o n o c s 2 u s d e a d n i fi n A u •
O S R T A L L O A E D D A r E Y T o r D U P o d a t O d n T M a u ó A N O t i u p x V E m I C e p I o n T L c o C M E m l E A D o c e c r P N l d t e S e S O E d n R I o t i E C n e N s P e i e d N O t n m s : U I e 2 F X r E n a a u L N o n o t E i p c D D O m c u r A L C o n t u s R D I E E C F E V T 1 2 3 N I . . . U N N I 2 2 2 s s a o r l u t . c r u o r e r t d t s a e n t e u s p e t m n n o e c ó l r i e x e f i e d d n s o e s c t a r l e n t e n n a i o z i p l a n e m o A d c , s , y a n n l e o e ó i t i a d c u c c c s i t s r i a e . á i s s y i i c l o m c o á n r e e p n m t a t a i i C r e m s n o o d a c g a l l , a c e , i n g d n e ó d ó o i ó l o i c c ñ t o e a a a l l x t i l e u s m r t o a n p d a r r r c o g i a l c m s p l o l o r e A e C a p d
s e s u b n o c n ó i x e n o c r e t n I 4 . 2
r e m i r p l e d a i c n a t s i d a n ó i c a u l a v e a l e d n ó i c u l o s e r a l n o c e e ú t r n i t s e n m o i C b •
Guía didáctica: Arquitectura de Computadores
o A d O a M I i A V m R T t s G A T e O N o N E I p O R m R O e C i T
E J A Z I D N E R P A E D S E D A D I V I T C A
n a ó i n c a : c m . 6 e o a r e y d i e s d t r 5 s u n o a t i r a o s p n h e e a o d A t V m 2 u s E e 1 a a r l S o e h n 8 e . 4 . 4 , 3 . 4 , 1 . 4 s e n o i a c í c u e s g a s l a e l d n s a e t , s o e c u i s p o á r b p s o t t x e e t n a l g e o d r r e 4 t n o i l u s t o í l p e a t C s e t l n e o c e s o i g v e e u R L •
S O D I N E T N O C
s a m e T / s e d a d i n U
E D E S J E A R Z I O D D N A E C I R P D A N I
S A I S C A N C I E Í F T E C P E P M S E O C
s o l n o c e p i c i t r a p y é h c a c a i r o m e m a l o d n a l u m e a o m r o a r f g l e o r n p e n s u o e d t a t u l c u e j s E e r •
d a d i n u a l e d n ó i c a u l a v e o t u a e d d a d i v i t c a a l n e s o t n e i m i c o n o c s u s e r o j e M 2 •
s e a i d r o s a m e m e m t s i s s É a s l H e r e r C b o e A o d d a C s t s u s A o p o I c R i c s m i s O á o á c M B e B E s s o d M t a i o : p i 3 e r p é o i c h D n m c n c A o e i r a C c D m P I 2 N 1 . . U 3 3
n a ó i n c a : c m . 8 e o a r e y d i e s d t r 7 s u n o a t i r a o s p n h e e a o d A t V m 2 u s E e 1 a a r l S o e h n 8 e
e r t s e m i b r e m i r p l e d a i c n a t s i d a n ó i c a u l a v e a l e d n ó i c u l o s e r a l e c i l a n i F •
é h c a c a l e d o ñ e s i d e d s o t n e m e l E 3 . 3
s n e o ó i d d c s a a e n o m n i r o c o i a f c l n n e i r . u é e f s h s o d t c e t p a n e C j o a e i c a u r n i e c r fl o o f n i c e l d d s m e s n e o l a o m a l p s z a l i e c a l i r e r l n a t p o n n r o A c A e c
a l a i c n a e t s t n i e d i a d n n o ó p i c s e a r u r l a o v c e y l a i s c e n n e s o e i c r a p u n l a i v ó e c o a t u u l a a v s e a l a l e a d r s a o p d i n n ó e i c e t r t n a s o r e c a p m s e i r o l p b r e s o e i m v m i e o r R c p •
3 a l a 1 a l e d s e d a d i n U
PRIMER BIMESTRE
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
6.3. Sistema de Evaluación * n ó i c a u l a v e o t u A . 1
s e d a d i v i t c A
2. Heteroevaluación Evaluación a Distancia ** a v e i t t r j a e P b O
n ó i A c V c E l a r e e t n n e I
e d o y e a t r s a n P E
Comportamiento ético
X
X
X
X
cumplimiento, puntualidad, responsabilidad
X
X
X
X
Esfuerzo e interés en los trabajos
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
s e d Contribución en el trabajo colaborativo y de equipo a d i l i b a Presentación, orden y ortografía H
Emite juicios de valor argumentadamente
X
s o t n Investigación (cita fuentes de consulta) e i m i c o n Aporta con criterios y soluciones o C
Análisis y profundidad en el desarrollo de temas e e d j a a i z i g d e n t a r r e t s p E a
Puntaje
X
X
Creatividad e iniciativa
PORCENTAJE
a a v b i e t e j u r b P O
X
X
Respeto a las personas y a las normas de comunicación
Dominio del contenido
Evaluación Presencial
TOTAL
10%
10%
10%
2
2
6
1 o t o m n i x u á p M
70% 14
20 puntos
Para aprobar la asignatura se requiere obtener un puntaje mínimo de 28/40 puntos, que equivale al 70%. * Son estrategias de aprendizaje, no tienen calicación; pero debe responderlas con el n de autocomprobar su proceso de aprendizaje. ** Recuerde: que la evaluación a distancia del primero y segundo bimestre consta de dos partes: una objetiva y otra de ensayo, debe desarrollarla y entregarla en las fechas correspondientes. Sr. Estudiante: Tenga presente que la nalidad de la valoración cualitativa es principalmente formativa.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
7.3 Orientaciones específcas para el aprendizaje por competencias
UNIDAD 1 INTRODUCCIÓN A LA ARQUITECTURA DE COMPUTADORES Esta es la primera de seis unidades que se estudiarán durante el presente ciclo de estudios y tiene como nalidad introducirlo en la estructura y funcionamiento de los computadores. Al inicio se analizarán algunos conceptos relacionados con los computadores para luego revisar la historia de la computación. En esta sección se estudiará detenidamente la máquina de Von Neumann (IAS), su estructura, sus características y el conjunto de instrucciones. Al nalizar esta unidad encontrará un conjunto de ejercicios y actividades propuestas para aanzar su aprendizaje. Luego de este breve preámbulo iniciemos con el primer tema. 1.1. Organización y arquitectura.
Conocer sobre la organización y la arquitectura de computadores previo al estudio de sus componentes es fundamental para tener una visión amplia de los contenidos que se abordan en el presente ciclo. Inicie con el estudio del texto básico en el capítulo 1: Introducción, en la sección 1.1 con el tema Organización y Arquitectura. Este tema comenta la naturaleza y características de los computadores como base fundamental para la ubicación de las partes de la computadora y la función de cada una de ellas. Se recomienda que una vez comprendidas las características antes mencionadas describa con sus propias palabras la organización y la arquitectura del computador. ¿Qué le pareció este primer tema? . Interesante ¿verdad? bien, continuemos. 1.2. Estructura y funcionamiento.
El estudio del texto básico debe hacerse desde lo más simple a lo más complejo, es por eso que la estructura y el funcionamiento se lo presenta de manera global. Continuemos con el estudio de los componentes de forma individual y sus interrelaciones. Ahora retome el texto básico en el capítulo 1 en la sección 1.2 Estructura y Funcionamiento. Luego que ha estudiado el tema, observe la fgura 1.5 y fgura 1.6. Aquí se muestra un detalle de la estructura de un computador. Analice cada estructura y cómo éstas se dividen en subestructuras. Por ejemplo la unidad de control tiene como subestructuras: lógica secuencial, registros y decodicadores y memoria de control. Ahora usted puede describir cuales son las subestructuras de ALU, Bus Interno y Registros.
PRIMER BIMESTRE
Guía didáctica: Arquitectura de Computadores
¿Ha comprendido los temas antes mencionados? ¿Podría describir con sus propias palabras la diferencia entre organización y arquitectura de un computador? ¿Cuáles son las posibles operaciones en un computador? ¿Describa las partes de la unidad de control? Si ha comprendido estos temas ahora continúe con la historia de los computadores. 1.3. Historia de los computadores
La historia ha demostrado el avance impresionante que ha tenido la tecnología computacional. Nos encontramos en una era donde la evolución informática se debe ha esos grandes pensadores y creadores de nuevas arquitecturas computacionales. Revisemos las actividades propuestas para comprender el tema en el texto básico. En medida de lo posible trate de realizar estas actividades con otros compañeros de su localidad para que puedan beneciase del trabajo en grupo. En caso de tener algún tipo de inconveniente no dude en hacerlo participe a su profesor. Lea comprensivamente el texto básico base en el capítulo 1 en la sección 2.1: Una breve descripción de los computadores
Interactividad en el EVA : Participe en el primer foro propuesto y comente los aportes de dos de sus compañeros. Por favor trate de crear un ambiente de discusión para el aprendizaje. 1.4. Máquina de Neumann
Actualmente la gran mayoría de computadores están basados en la arquitectura de Neumann. Su origen esta dado a raíz del proyecto ENIAC del matemático húngaro John Von Neumann. Revisemos a continuación sus especicaciones. Revise el texto básico en el capítulo 2 en la sección 2.1 Una breve historia de los computadores en el tema La máquina de von Neumann. Algunos puntos importantes a considerar para abordar el aprendizaje en este tema: -
Primero, tenga en cuenta las características que denen la máquina de Neuman como la cantidad de palabras de la memoria IAS, el formato de la memoria IAS (palabra número y palabra instrucción), cada uno de los registros que utiliza ( MBR, MAR,IR, IBR, PC, AC, MQ).
-
Segundo, las fgura 2.2, fgura 2.3 y fgura 2.4 son clave para el desarrollo de los ejercicios relacionados con el tema. Estudie y comprenda completamente su funcionamiento.
-
Tercero, la tabla 2.1 contiene el conjunto de instrucciones IAS, cuyo propósito es construir microprogramas para realizar operaciones sencillas. Estas micro instrucciones son similares a las utilizadas en el código assembler. No es necesario que se memorice todas las micro instrucciones pero si que identique para que sirve cada una de ellas.
-
Finalmente, la construcción de un microprograma en IAS se lo hace ubicando secuencialmente el conjunto de instrucciones IAS de acuerdo a las problemática a resolver. Tome en cuenta que en una palabra de instrucción contiene dos instrucciones.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
A continuación se presenta un ejemplo de microprograma utilizando el conjunto de instrucciones IAS.
Ejemplo 1.1 Objetivo del problema: Encontrar el mayor de un número en una arreglo de 100 posiciones en la memoria IAS. Desarrollo: 1.
Condiciones iniciales: Es importante considerar que no se cuenta con instrucciones para la toma de datos de entrada (por ejemplo Ingreso por teclado) entonces se asume que el arreglo y los valores iniciales ya están en la memoria IAS. Memoria IAS: Datos D I R R E C C I O N E S D E I A S
000 001 002 003 004 005 006 007 : : 099 100 101 102 103 104
6 5 4 1 2 3 4 10 11 8 9
A R R E G L O
0 0 99 1
Contiene cada elemento del arreglo (S) Contiene el elemento mayor (B) Contiene el numero de posiciones a repetir (C ) Contiene una constate (D)
Observe que la memoria IAS se compone de direcciones de una longitud de 12 bits de acuerdo a la denición. En este ejemplo se ha enumerado el arreglo secuencialmente desde 000 hasta 099, para que pueda entender que se trabajarán con cien elementos. Generalmente estas direcciones se encuentran en Hexadecimales, pero para facilitar la comprensión del ejemplo se ha manejado con expresiones decimales (en base 10). Además de las direcciones otro componente es la información misma que en este caso son números también representados en formato decimal. Bajo el arreglo se observa que los espacios de memoria 101, 102, 103 y 104 son utilizados temporalmente para el proceso de obtener el mayor de los elementos.
2.
Con las instrucciones de la tabla 2.1 se ha diseñado un algoritmo que permita obtener el mayor de estos elementos. Recuerde: No se puede incluir alguna instrucción que no esté en la tabla. Se muestra el algoritmo utilizado: ALGORITMO 1.
Inicializar a B con 0, aquí se guardará temporalmente el elemento mayor en cada comparación.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
2.
Inicializar S con el primer elemento a comparar.
3.
Realizar la operación B-S.
4.
Si la operación anterior es negativa, entonces ubicar en B el valor de S (indica que S es mayor).
5.
Si la operación es positiva ( indica que B es mayor o igual), mantener el valor de B.
6.
Asignar a S el siguiente elemento a comparar.
7.
Volver al paso 3 hasta que se recorran todos los elementos del arreglo. (C<99).
A continuación representamos el algoritmo anterior expresado en instrucciones de IAS.
F0 F1 F2 F3 F4 F5 F6 F7 F8
3.
DIR IZQ LOAD M(099) LOAD M(B) JUMP +M(F3,0:19) LOAD M(C) STOR M(C) JUMP + M(F0,0:19) LOAD M(S) JUMP (F3,0:19)
DIR DER STORE M(S) SUB M(S) JUMP M(F6,0:19) SUB M(D) STOR M(F0,28:39) JUMP (F8,0:19) STOR M(B) ----------
El algoritmo anterior se lo ha formalizado de tal manera que sus instrucciones se representen dentro del formato de la figura 2.2 literal b. Memoria IAS: Instrucciones Codop D I R R
Dirección
Codop
Dirección
105
LOAD M(X)
099
STORE M(X)
101
106
LOAD M(X)
102
SUB M(X)
101
107
JUMP +M(X,0:19)
108
JUMP M(X,0:19)
111
108
LOAD M(X)
103
SUB M(X)
104
E C C I O
109
STOR M(X)
103
STOR M(X,8:19)
105
110
JUMP +M(X,0:19)
105
JUMP M(X,0:19)
113
111
LOAD M(X)
101
STOR M(X)
102
112
JUMP M(X,0:19)
108
---------------
----
N E S
113 114
I N S T R U C C I O N
115 116
4.
Seguido se debe hacer la “corrida de prueba” del algoritmo construido. Para ello debemos utilizar las figuras 2.3 y figura 2.4. Los pasos a seguir son: a.
Se inicia el proceso ubicando en el PC la dirección de la primera instrucción a ejecutar. PC =105.
b.
Se obtiene la siguiente instrucción desde la memoria en la dirección indicada por el contador de programa y la guarda en el registro de instrucción. MBRß M(105).
Guía didáctica: Arquitectura de Computadores
5.
PRIMER BIMESTRE
c.
Se decodica la instrucción mediante la unidad de control. Ésta se encarga de coordinar el resto de componentes del ordenador para realizar una función determinada.
d.
Se ejecuta la instrucción. Ésta puede cambiar el valor del contador del programa, permitiendo así operaciones repetitivas. El contador puede cambiar también cuando se cumpla una cierta condición aritmética, haciendo que el ordenador pueda ‘tomar decisiones’, que pueden alcanzar cualquier grado de complejidad, mediante la aritmética y lógica anteriores.
e.
Se aumenta el contador de programa en la longitud de la instrucción para apuntar a la siguiente.
f.
Se repite el proceso con todas las instrucciones.
Ahora, se utiliza la siguiente tabla para indicar el proceso que se ha seguido: PC F0 (IZQ) F0 (DER) F1(IZQ) F1(DER) F2(IZQ) F2(DER) F6(IZQ) F6(DER) F7(IZQ) F3(IZQ) F3(DER) F4(IZQ) F4(DER) F5(IZQ) F0( IZQ) ….
AC M(099)à9 9 0 (0-9) -9 (AC>0) PC=F6 M(S) 9 9 PC=F3 M(C) 99 (99-1) 98 98 98 (AC>0), PC=F0 M(098) 8 … →
→
→
→
→
M(S) 0 9 9 9 9
M(B) 0 0 0 0 0
M(C) 99 99 99 99 99
M(D) 1 1 1 1 1
9 9 9 9 9 9 9 9 9 …
0 9 9 9 9 9 9 9 9 ..
99 99 99 99 99 98 98 98 98 ..
1 1 1 1 1 1 1 1 1 ..
Cambio de Instrucción
F1: LOAD M(098) ..
Una vez que ha comprendido el ejercicio realice lo siguiente: 1. 2.
Transcriba el algoritmo con representaciones hexadecimales. Complete que función cumplen los registros IBR, MBR, MAR en cada uno de los pasos en el numeral 5.
Si ha realizado esta tarea podemos iniciar el siguiente tema. Por favor no olvide que puede llamar a su profesor para recibir tutoría sobre el tema. 1.5. Diseño buscando mejores prestaciones
Actualmente la renovación tecnológica hace que los sistemas personales tengan grandes capacidades de procesamiento. Además, los nuevos diseños de sistemas operativos permiten que los componentes funcionen mucho mejor que versiones predecesoras. A continuación revisemos algunos conceptos y factores para obtener mejores prestaciones. Revise el texto básico en el capítulo 2 en la sección 2.2. Diseño Buscando mejores prestaciones en los temas: velocidad del microprocesador, equilibrio de prestaciones, mejora en la organización y arquitectura de chips, evolución del Pentium y del Power PC.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
Una vez realizada la actividad podrá describir algunos factores que se debe tomar en cuenta para el diseño de computadoras con altas prestaciones. Ahora lo animamos a que responda las siguientes interrogantes. ¿A qué se reere con el equilibrio de prestaciones en un computador?, ¿Cuáles han sido las mejoras en los microprocesadores Intel?, ¿Cuál ha sido la evolución del PowerPC? Para reforzar los temas relacionados a la primera unidad le invitamos a que revise el tema 1 del recurso OCW de la universidad de Cantabria indicado en la bibliografía complementaria. A continuación presentamos un conjunto de ejercicios resueltos tomados de la sección Problemas del texto básico. La numeración es la misma que en el texto. Problemas resueltos
Ejercicio # 2.1. Sean A = A(l), A(2)..., A(100) y B = B(l), B(2)..., B(100) dos vectores (unidimensionales) que comprenden 1000 números cada uno, que van a ser sumados para formar un vector C, tal que C(I) = A(I) + B(I), donde 1=1, 2..., 100. Usando el conjunto de instrucciones IAS, escribir un programa para resolver este problema. 1.
Esquema del contenido de memoria principal. D I R R E C C I O N E S
2.
Arreglo A 000 6 001 5 002 4 003 1 004 2 005 3 006 4 007 10 : 11 : 8 099 9
A R R E G L O A
Arreglo B 100 1 101 5 102 4 103 1 104 4 105 3 106 3 107 10 : 14 : 8 199 9
Arreglo C
A R R E G L O B
200 201 202 203 204 205 206 207 : : 299
Conjunto de Instrucciones IAS para resolver el problema. D I R R E C C I O N E S D E I A S
300 301 302 303 304 305 306 307 308 309 310 311 312 313
LOAD (099) STOR (299) SUB (D4) STOR M (300, 8:19) SUB (D4) STOR M (300, 28:29) SUB (D4) STOR (301, 8:19) 099 199 299 1
ADD(199) LOAD (D1) STOR (D1) LOAD (D2) STOR (D2) LOAD (D3) STOR (D3) JUMP + M (300, 0:19) D1 D2 D2 D4
A R R E G L O C
Guía didáctica: Arquitectura de Computadores
3.
PRIMER BIMESTRE
Corrida del programa PC 300
Proceso
AC
MAR 300
MBR
IBR
IR MAR
LOAD (099) ADD(199)
MBR
300
←
M(300)
←
IBR MBR(20:39) IR MBR(0:7) MAR MBR(8:19) EJECUCIÓN DE LOAD MBR M(099) AC MBR IR IBR(0:7) MAR IBR(8:19) Incremento de PC PC=300+1 EJECUCIÓN DE ADD MBR M(199) AC AC+MBR MAR 3001 MBR M(301) IBR MBR(20:39) IR MBR(0:7) MAR MBR(8:19) EJECUCIÓN DE STOR MBR AC M(299) MBR ←
099
ADD(199)
LOAD
←
←
9
INSTRUCCIÓN 1
←
9
←
199
ADD
301 9
←
←
←
18
←
301
←
STOR(299) LOAD(D1)
←
←
INSTRUCCIÓN 2
299
LOAD(D1)
STOR
←
←
18
←
←
Ejercicio #2.4 Dados los contenidos de memoria siguientes de un computador IAS: Direcciones 08A 08B 08C
Contenidos 010FA210FB 010FA0F08D 020FA210FB
Mostrar el código del programa en lenguaje ensamblador, empezando en la dirección 08A. Explicar lo que hace el programa.
08A 010FA210FB = 08A 0000000100001111101000100001000011111011 El programa aplica la instrucción LOAD M(X) para la instrucción de la izquierda de la palabra y transere el contenido de la posición 08A de la memoria al acumulador y ejecuta la instrucción STOR M(X) para la instrucción de la derecha transriendo el contenido del acumulador a una posición de memoria X.
08B 010FA0F08D = 08B 0000000100001111101000001111000010001101 El programa aplica la instrucción LOAD M(X) para la instrucción de la izquierda de la palabra y transere el contenido de la posición 08B de la memoria al acumulador y ejecuta la instrucción JUMP + M(X, 0:19) para la instrucción de la derecha solicitando la captura de la siguiente instrucción de la mitad izquierda de la palabra siempre y cuando el numero en el acumulador no sea negativo.
08C 020FA210FB = 08C 0000001000001111101000100001000011111011 El programa aplica la instrucción LOAD – M(X) para la instrucción de la izquierda de la palabra y transere – M(X) al acumulador y ejecuta la instrucción STOR M(X) para la instrucción de la derecha transriendo el contenido del acumulador a una posición de memoria X.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
Ejercicio #2.13. Un programa de prueba se está ejecutando en un procesador de 40 mhz. El código objeto consta de 100.000 instrucciones, con el siguiente conjunto de instrucciones y ciclo de reloj: Tipo de Instrucción
Contador de Instrucciones
Aritméticos enteros enteros Datos transferidos Punto Flotante Control transferidos
Ciclo de reloj
45.000 32.000 15.000 8.000
1 2 2 2
Determinar el CPI efectivo, la velocidad en MIPS y el tiempo de ejecución para este programa. CPI = f/MIPS CPI es el número medio de ciclos por instrucción = 1,55 CPI MIPS=f/CPI T= Ic x CPI x t t= 1/f = 1/(40mhz) = 0.025 x10 -6 seg = 0.025µ seg. DESARROLLO. CPI= (45000x1 + 32000x2 + 15000x2 + 8000x2)/100000
=155000/100000
RESPUESTA CPI = 1.55 MIPS= reloj frecuencia/ (CPI x 100000)
=(40 x 1000000)/(1.55 x 100000) RESPUESTA MIPS = 25.8 Tiempo de ejecución (t) =tiempo del contador * CPI del reloj * instrucción
=cuenta/frecuencia =1.55 * 100000/40000000 =1.55/400 RESPUESTA Tiempo de ejecución (t) = 3.87 ms.
Ha concluido el estudio de la primera unidad. Ahora le invitamos a desarrollar desarro llar la siguiente actividad de autoevaluación para aanzar los conocimientos adquiridos.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
AUTOEVALUACIÓN 1
Parte A: Preguntas Objetivas: Conteste con Verdadero (V) o Falso (F) a cada una de las siguiente expresiones según corresponda 1.
Las funciones básicas de un computador son: Procesamiento de datos, almacenamiento de datos, transferencia de datos y control.
( )
2.
Sistema de Interconexión es la transferencia de datos entre el computador y entorno externo.
( )
3.
La estructura del computador esta conformada por: Memoria Principal, Interconexión de la CPU, Unidad Central de Procesamiento, Entrada/Salida.
( )
4.
La Unidad de Control tiene como función el procesamiento de datos del computador.
( )
5.
El componente electrónico de la tercera generación de los computadores fueron los transistores.
( )
6.
El ENIAC era una máquina decimal y no binaria.
( )
7.
El registro MBR contiene los ocho bits del código de operación de la instrucción que se va ha ejecutar.
( )
8.
La máquina de Von Neumann se baso en el concepto de programa-almacenado.
( )
Parte B: Problemas A continuación se propone ejercicios de este capítulo tomados del texto básico: Evaluación y prestación de Computadores Computadores.. Ejercicio # 2.3 En el IAS, describir con palabras el proceso que tiene que seguir la CPU para leer un valor de memoria, y luego para escribir un valor en memoria. Indique cómo cambian MAR, MBR, el bus de direcciones, el bus de datos y el bus de control. Ejercicio # 2.10 Un procesador está sincronizado por un reloj con una frecuencia constante f, o lo que es lo mismo, un tiempo de ciclo contante Ƭ, donde Ƭ = 1/ f.f. El tamaño de un programa se puede medir con el número de instrucciones de máquina, o número de instrucciones I ,c que contiene el programa. Distintas instrucciones máquina consumen distintos ciclos de reloj. Un parámetro importante es el número medio de ciclos por instrucción de CPI de un programa. El tiempo Ƭ que el procesador necesita para ejecutar un programa dado se puede expresar: = Ic x CPI x Ƭ
Ƭ
Esta fórmula se puede reescribir teniendo en cuenta que q ue durante la ejecución de una instrucción, parte del trabajo lo realiza el procesador, y parte del tiempo se está transriendo a, o desde memoria, una palabra. En este último caso, el tiempo de transferencia depende del tiempo de ciclo de memoria, que puede ser mayor que el tiempo de ciclo del procesador. Se puede reescribir la ecuación anterior: = Ic x [p + (m x k)] x Ƭ
Ƭ
PRIMER BIMESTRE
Guía didáctica: Arquitectura de Computadores
Donde p es el número de ciclos de procesador necesarios para decodicar y ejecutar la l a instrucción, m es el número de accesos a memoria, y k es el cociente entre el tiempo de ciclo del procesador. Los cinco factores de prestaciones de la ecuación anterior (I c,p, m, k, Ƭ) depende de los cuatro atributos del sistema: el diseño del conjunto de instrucciones (conocido como arquitectura del conjunto de instrucciones), de la tecnología del compilador (cómo de efectivo es el compilador produciendo un programa en lenguaje máquina a partir de un programa en un lenguaje de alto nivel), de la implementación del procesador, y de la jerarquía de memoria y de la caché. Hacer una matriz en la que una dimensión muestre los cincos factores de las prestaciones y la otra los cuatro atributos del sistema. Poner una X en cada celda en la que el atributo del sistema afecte al factor de prestaciones. Al fnal de esta guía encontrará una sección de solucionario en donde encontrará las respuestas de
esta autoevaluación. Si usted alcanzó el 80% de logros puede continuar adelante ¡Felicitaciones!; de lo contrario se recomienda revisar nuevamente la temática para tener una mayor comprensión. ¡Ánimo inténtelo de nuevo!.
Revise sus respuestas en el Solucionario que se encuentra al fnal de la presente guía didácca.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
UNIDAD 2 PERSPECTIVA DE ALTO NIVEL DE FUNCIONAMIENTO Y DE LAS INTERCONEXIONES DEL COMPUTADOR. Una vez estudiado los conceptos de la estructura, funcionamiento del computador así como la aplicación de las instrucciones IAS es importante centrarnos en las estructuras básicas utilizadas para la interconexión de los componentes del computador. Para estudiar esta unidad debe hacer referencia al capítulo 3 del texto básico. Como sugerencia haga hincapié en tres partes importantes: primero, realice un examen de las necesidades de interconexión en cada uno de los componentes del computador. Segundo, estudie cada una de las funcionalidades de los componentes descritos en la primera parte. Finalmente analice el uso de los buses que interconectan los componentes. Al nalizar esta unidad encontrará ejercicios resueltos y actividades propuestas para que verique su proceso de aprendizaje. 2.1. Componentes del computador
Gracias a la arquitectura de Neumann los computadores pueden almacenar instrucciones en memoria que luego son utilizadas para proporcionar señales de control necesarias para la reconguración del hardware. Esta reconguración hace posible que los computadores puedan ser utilizados para diferentes propósitos. La siguiente actividad nos introduce en este tema. Revise el texto básico en el capítulo 3: Perspectivas de alto nivel del funcionamiento y de las interconexiones del computador, en la sección 3.1: Componentes del computador. Una vez que ha entendido la diferencia entre la programación por hardware, la programación por software y el uso de códigos de instrucción, ahora encuentre las diferencias en las guras 2.3 y 3.2. del texto básico. ¿Cuáles han sido las diferencias en las guras comentadas anteriormente? ¿Puede nuevamente denir que función tienen los registros PC, IR, MAR, MBR, E/S AR, E/S BR?. Si ha tenido dicultad en contestar, revise nuevamente esta sección. Superada esta actividad se proceda con el siguiente tema. 2.2. Funcionamiento del computador
Los aspectos claves de la ejecución de un programa almacenado en memoria son descritos en esta sección. Le sugerimos abordar el estudio de la sección con el ciclo básico de una instrucción, donde se describe paso a paso lo que sucede en la Figura 3.5 del texto básico. Como requisito de esta actividad es el manejo de las potencias para la obtención de la cantidad de códigos de operación y la cantidad de palabras que se pueden direccionar directamente. A continuación revisemos el texto básico. Continúe con la lectura el texto básico en el capítulo 3 de Perspectivas de alto nivel del funcionamiento y de las interconexiones del computador, en la sección 3.2 Funcionamiento del computador.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
Para aanzar el contenido estudiado presentamos una ampliación de lo comentado en el párrafo anterior: La expresión 2n utilizado en el texto básico, generalmente sirve para obtener las posibles combinaciones de un conjunto n de números binarios. Por ejemplo si se desea conocer cuantos códigos de operación se pueden representar con 4 bits el proceso a seguir es: 24(# de bits)=16 por lo que se puede decir que con 4 bits se representan 16 códigos de operación: Códigos de 4 bits 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Descripción … (cualquier otra micro operación) Cargar AC desde la memoria Almacenar AC en memoria Multiplicar MQ con un dato de memoria Dividir MQ con un dato de memoria Sumar AC un dato en memoria … … … … … … … … … …
¿Ha entendido como se representa los 6 pasos mostrados en la gura 3.5?. Si su respuesta es armativa podemos continuar, caso contrario, le sugiero repasar esta sección en una hoja en blanco, sin abrir el texto básico. Luego compare su respuesta con la del libro. La Figura 3.6 del texto básico un diagrama de estados ampliada del ciclo de una instrucción. Cada circunferencia indica el estado en que se encuentra una instrucción para ser ejecutada. Ahora evaluemos la comprensión de esta sección contestando la denición de cada una de las siguientes siglas IAC, IF, IOD,OAC,OF,DO,OS?. El siguiente tema aporta dos estados más al ciclo normal de una instrucción veamos cuales son y donde se ubican. Las interrupciones
Es momento de iniciar con las interrupciones, que se denen como un mecanismo para aprovechar mejor los recursos de la CPU. En la Tabla 3.1 del texto básico se encuentran cuatro tipos o clases de interrupciones y un buen ejemplo en la Figura 3.7. Es evidente que el uso de las interrupciones no permite que se derroche tiempo valioso de procesamiento. Ahora, es necesario hacer una ampliación al concepto de ciclo de instrucción pero con la utilización de interrupciones. En la Figura 3.9 y Figura 3.12 se hace una explicación del ciclo de instrucción con interrupciones. Analice la importancia de la interrupción y en qué momento se da paso dentro del
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
ciclo de una instrucción. La Figura 3.14 muestra un ejemplo de gestión de interrupciones solicitadas por tres dispositivos: Impresora, comunicaciones y disco. ¿Ha comprendido como funcionan las interrupciones? ¿Conoce que son las interrupciones múltiples?¿Sabe cuál es la función del gestor de interrupciones?; Si necesita aclarar estos temas puede encontrar recursos adicionales en el EVA, además puede solicitar tutoría a su profesor. Ahora es necesario que vaya al nal de esta unidad y resuelvas las actividades propuestas. Concluido este tema continuemos 2.3. Estructuras de interconexión
En este apartado analizaremos las líneas que permiten la comunicación con cada uno de los módulos del computador (memoria, E/S, procesador). Revise el texto básico capítulo 3: Perspectiva de Alto Nivel del Funcionamiento y de las Interconexiones del Computador en la sección 3.3. Estructuras de Interconexión . Puede apoyarse también en el recurso ocw en la web: http://ocw.ehu.es/ensenanzastecnicas/arquitectura-de-computadores-i/apuntes/buses Comprendido cuales son los componentes del computador y su funcionamiento analice los elementos de interconexión que unen los diferentes componentes de un computador. La fgura 3.15 del texto básico sugiere algunos tipos de intercambios en cada módulo (CPU, E/S, Memoria). 2.4. Interconexión con buses
Al bus se lo puede denir como un camino para la transferencia de información entre varios dispositivos. Compuesto por un conjunto de líneas que permiten controlar el ujo de datos entre módulos. El presente tema le ayudará a conocer cuales son aquellas señales de órdenes que le permiten realizar operaciones de lectura, escritura y control del bus. Además se revisará la arquitectura de bus tradicional y la de altas prestaciones, así como también los elementos de diseño de un bus. A continuación revise los siguientes contenidos. Lea el texto básico capítulo 3: Perspectiva de Alto Nivel del Funcionamiento y de las Interconexiones del Computador en el apartado 3.4. Interconexión con Buses . Una vez que ha comprendido la estructura de un bus, su jerarquía y el principio de funcionamiento vuelva a revisar la fgura 3.16 .¿Cuántos tipos de líneas muestra? Realice un resumen por cada tipo de línea, por ejemplo: ÿ
Las líneas de control se utilizan para controlar el acceso y el uso de las líneas del bus. Además transmiten órdenes y señales de temporización entre los módulos. Estas órdenes se pueden clasifcar en:
•
Operaciones a realizar: lectura, escritura, etc.
•
Control de transferencia: protocolo y temporización (reloj)
•
Arbitraje: determina qué dispositivo utiliza el bus (CPU, DMA, dispositivos E/S,...) en caso de conicto
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
Luego de realizado el resumen, revisemos la fgura 3.18 del texto básico en donde se encuentran dos conguraciones de un bus. Analice la diferencia entre una Arquitectura Tradicional y una Arquitectura de Altas prestaciones. Para aanzar lo aprendido te invitamos a participar de la siguiente actividad.
Interactividad en el EVA : Participe en el foro propuesto y comente los aportes de dos de sus compañeros. Por favor trate de crear un ambiente de discusión para el aprendizaje.X Concluida la actividad anterior ahora revisemos los elementos de diseño que proporcionan el diverso comportamiento que tienen los buses. Los elementos de diseño de un bus.
En la tabla 3.2 del texto básico encontrará los elementos de diseño de un bus. Puede basarse en un recurso abierto que explica el tema con profundidad. http://ocw.ehu.es/ensenanzas-tecnicas/ arquitectura-de-computadores-i/apuntes/buses . Es importante prestar atención a la fgura 3.19 del texto básico para entender la cantidad de ciclos de reloj (T) que se utilizan para realizar una operación de lectura o escritura dentro de una temporización síncrona. También la fgura 3.20 describe como se realiza las operaciones tanto de temporización síncrona como una asíncrona. La transferencia de datos se explica en la fgura 3.23 del texto básico con el ejemplo puntual de una operación de lectura de un BUS PCI. Y el arbitraje es indicado en la fgura 3.25 explicando como se distribuye el uso del bus cuando dos dispositivos lo han solicitado. ¿Ha comprendido los elementos del diseño de un bus? Sabe ¿cuáles son los tipos de arbitraje de bus?. Sabe ¿cuál es la medida de la velocidad de un bus?; recuerde utilizar los recursos adicionales del EVA y solicitar ayuda a su profesor para comprender mejor el tema. Ahora para aanzar sus conocimientos resuelve los ejercicios propuestos al nal de esta unidad. Para reforzar los temas relacionados con la segunda unidad le invitamos a que revise el tema Conexión entre Subsistemas, del recurso OCW de la Universidad del País Vasco indicado en la bibliografía complementaria. Además, a continuación presentamos un conjunto de ejercicios resueltos tomados de la sección Problemas del texto básico. La numeración es la misma que en el texto. Problemas resueltos
Ejercicio # 3.3. Considere un hipotético microprocesador de 32 bits cuyas instrucciones de 32 bits están compuestas por dos campos: el primer byte contiene el código de operación (codop) y los restantes un operando inmediato o una dirección de operando. a)
¿Cuál es la máxima capacidad de memoria (en bytes) direccionable directamente?
224 = 16777216 16Megabytes
Guía didáctica: Arquitectura de Computadores
b)
PRIMER BIMESTRE
Discuta el impacto que se produciría en la velocidad del sistema si el microprocesador tiene: 1. 2.
Un bus de dirección local de 32 bits y un bus de datos local de 16 bits, o Un bus de dirección local de 16 bits y un bus de datos local de 16 bits.
Entre las dos alternativas la capacidad del sistema seria la misma ya que se cuenta con un bus de direcciones de 32 bits; pero, En la segunda alternativa disminuirían las prestaciones del sistema ya que el bus de datos deberá realizar 2 accesos a memoria para recuperar los 32 bits . c)
¿Cuántos bits necesitan el contador de programa y el registro de instrucción? Procesador de 32 bits
Codop 8 bits • •
Dirección de operando 24 bits
PC necesita una cantidad igual a una dirección de memoria es decir 24 bits El IR necesita los 32 bits de toda la palabra de instrucción.
Ejercicio # 3.5. Considere un microprocesador de 32 bits, con un bus externo de 16 bits, y con una entrada de reloj de 8 MHz. Asuma que el procesador tiene un ciclo de bus cuya duración mínima es igual a cuatro ciclos de reloj. ¿Cuál es la velocidad de transferencia máxima que puede sostener el microprocesador? Para incrementar sus prestaciones, ¿sería mejor hacer que su bus externo de datos sea de 32 bits o doblar la frecuencia de reloj que se suministra al microprocesador? Establezca las suposiciones que considere y explíquelo. F = 8 MHz T=
1 8MHz
=
1 8*106
= 0.125 * 10 -6 segundos
= 1 MHz = 10 6 Hz Ciclo del bus = Tiempo del procesador Tiempo P = 4 x tiempos del sistema Tiempo procesador = 4 x 0.125 x 10-6 = 0.5 x 10 -6 seg. Velocidad de transferencia VT =
16 bits 16 bits = = 32 x 10 6 bits/seg. -6 seg t. proces. 0.5 * 10
A continuación presentamos un conjunto de ejercicios con el objetivo de aanzar su conocimiento. Desarrolle la actividad de autoevaluación .
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
AUTOEVALUACIÓN 2
Parte A: Preguntas Objetivas: Conteste con Verdadero(V) o Falso(F) a cada una de las siguiente expresiones según corresponda 1.
Los registros internos del CPU son: MAR, MBR, E/S AR, E/S BR, PC, IR.
( )
2.
La CPU interpreta la instrucción de acuerdo a cuatro tipos: Procesador-Memoria, Procesador-E/S, Procesamiento de Datos, Control.
( )
3.
Procesador-Memoria debe transferir datos desde el exterior mediante transferencias entre CPU y un módulo de E/S.
( )
4.
PC es el contador de Instrucciones.
( )
5.
Desde una perspectiva de alto nivel un computador consta de procesador, memoria y unidades de E/S
( )
6.
Un bus de sistema está constituido entre cincuenta y cien líneas.
( )
7.
La estructura de un Bus está compuesta de líneas de control, dirección y datos.
( )
8.
El conjunto de líneas de datos constituyen el bus de datos.
( )
Parte B: Problemas A continuación se propone ejercicios del capítulo tomados del texto básico: Perspectiva de alto nivel del funcionamiento y de las interconexiones del computador. Ejercicio # 3.1 La máquina hipotética de la Figura 3.4 (pág. 64 del libro base) también tiene dos instrucciones de E/S. 0011= Cargar AC desde E/S 0111= Almacenar AC en E/S En estos casos, la dirección de 12 bits identica un dispositivo concreto E/S. Muestre la ejecución del programa (utilizando el formato de la Figura 3.5) para el siguiente programa: 1. 2. 3.
Cargar AC desde el dispositivo 5. Sumar el contenido de la posición de memoria 940. Almacenar AC en el dispositivo 6.
Asuma que el siguiente valor obtenido desde el dispositivo 5 es 3 y que la posición 940 almacena el valor 2.
Ejercicio # 3.13 Un microprocesador utiliza la temporización que se muestra en la Figura 3.19 del texto básico para la escritura en memoria. Su fabricante especica que la extensión temporal de la señal de la escritura viene dada por T-50, donde T es el ciclo de reloj en nanosegundos. a.
¿Cuál es la extensión de la señal de escritura si la frecuencia de reloj del bus es de 5 MHZ?
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
b.
La hoja de características del microprocesador especica que, tras el anco de bajada dela señal de escritura, los datos se mantienen válidos durante 20ns. ¿Durante cuánto tiempo se mantienen válidos los datos que se van a escribir en memoria?
c.
¿Cuántos estados de espera deberían insertarse si la memoria necesita que los datos se mantengan válidos durante al menos 190 ns?
Concluida la autoevaluación: Si usted alcanzó el 80% de logros puede continuar adelante ¡Felicitaciones!; de lo contrario se recomienda revisar nuevamente la temática para tener una mayor comprensión. ¡Ánimo inténtelo de nuevo!.
Revise sus respuestas en el Solucionario que se encuentra al fnal de la presente guía didácca.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
UNIDAD 3 MEMORIA CACHÉ Esta unidad se inicia con la descripción de la jerarquía de memoria. Como se menciona al inicio del capítulo del texto básico, los registros conjuntamente con la memoria caché son los que se encuentran en los niveles superiores. Estas memorias internas del computador son muy veloces, responsables de satisfacer las necesidades de datos del procesador, pero son pequeñas lo cual hace que con frecuencia se realicen procesos de actualización. Es importante tener en cuenta un diseño de la memoria caché lo sucientemente óptimo para satisfacer los requerimientos de procesador. La presente unidad nos revela cuales son estas consideraciones. Para entender mejor esta unidad se recomienda una lectura comprensiva de cada una de los temas. Además, deténgase en las guras y analice completamente el mecanismo de funcionamiento. También utilice los recursos adicionales del EVA y los recursos ocw para una mejor compresión. Al nalizar esta unidad encontrará ejercicios resueltos y una sección de ejercicios propuestos para que verique su proceso de enseñanza aprendizaje. 3.1. Conceptos básicos sobre sistemas de memoria
El sistema de memoria ha sido uno de los componentes más críticos dentro del diseño de un computador. La necesidad de una alta capacidad de almacenamiento con bajo tiempo de acceso es uno de los principales problemas a resolver en este tema. A continuación revisemos las características de los sistemas de memoria. Revise el texto básico en el capítulo de Memoria Caché, en la sección 4.1 Conceptos básicos sobre sistemas de memoria de computadores.
Revisado el texto básico, preste atención a las características claves de la memoria en la Tabla 4.1. Realice una lectura de las características de los sistemas de memoria y dena con sus palabras cada uno de los conceptos de la tabla. ¿Ha denido los conceptos de la tabla 4.1?, ¿cuántos bits puede tener una palabra?, ¿Sabe qué es una unidad direccionable?, ¿Puede describir como se mide la velocidad de transferencia?, ¿Sabe lo que signica bps, Kbps, Mbps?. Entonces puede revisar ahora la Jerarquía de Memoria. Observe la Ilustración 3.1 de esta guía. Desde los niveles superiores a los niveles inferiores se dan las características que se muestran en la parte derecha de la ilustración. Mientras una memoria se aproxime a los niveles inferiores de la jerarquía existirá un menor costo por bit, una mayor capacidad, un mayor tiempo de acceso (memoria más lenta) y un acceso poco frecuente. Lo contrario sucede en los niveles superiores de la memoria.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
Ilustración 3.1. Jerarquía de la Memoria Caché El ejemplo 4.1 del texto básico , muestra los diferentes tiempos de acceso entre algunos niveles de memoria. También se encuentra la tasa de aciertos H , que se dene como “la fracción del total de acceso a memoria encontrados en la memoria mas rápida”. Para este ejemplo la caché tiene un 95 por ciento de los accesos a memoria (H1=0,95) y un 5 por ciento en el nivel 2 (H2=0,05). Lea una y otra vez el ejercicio hasta que entienda como puede obtener la tasa de aciertos. ¿Ha logrado obtener la tasa de aciertos del problema anterior?¿ Obtenga la tasa de aciertos del problema 4.18?. Al nalizar esta unidad encontrará ejercicios propuestos. Siguiendo con el estudio de esta unidad se estudiará los Principios básicos de las memorias caché. 1.2. Principios básicos de las memorias caché
Uno de los problemas de los sistemas de memoria es el tiempo de acceso. Para aquellas memorias grandes el tiempo de acceso aumenta, por lo que debemos utilizar pequeñas memorias intermedias que permitan agilitar la extracción de datos de memoria. La caché cumple con esta función y este tema lo detallamos a continuación. Lea el texto básico en el capítulo de Memoria Caché, la sección 4.2 Principios básicos de las memorias. Recomendamos analizar todas las grácas de esta sección y comprender cada uno de los ejemplos. La fgura 4.3 muestra la posición de la caché con referencia al procesador y la memoria. La memoria caché tiene algunas características descritas en la fgura 4.4. En el literal a se encuentra el número de línea, etiqueta, bloque, longitud de bloque; y en el literal b se encuentra la dirección de memoria, el bloque (K palabras) y la longitud de palabra. En ambos casos podemos ver que tanto la memo ria caché como la memoria principal tiene un número nito de líneas y bloques. A continuación la ilustración 3.2 muestra los conceptos relacionados entre la CPU, caché y memoria principal.
PRIMER BIMESTRE
Guía didáctica: Arquitectura de Computadores
Ilustración 3.2. Principios de la memorias caché (Imagen extraía de Aylagas(2007)). La Figura 4.5 ilustra un diagrama para una operación de lectura. Observe que si la dirección RA no es encontrada en la caché ésta es buscada en memoria principal y luego cargada en una línea de caché. Si ha entendido los principios básicos de la caché es momento de estudiar los elementos de diseño de la caché. 3.3. Elementos de diseño de una caché
En esta sección se estudian algunos criterios básicos para arquitecturas de la caché. Entre los más importantes tenemos: El tamaño de la caché, la función de correspondencia, los algoritmos de sustitución, las políticas de escritura, el tamaño de línea y el número de cachés. A continuación revisemos como se desglosa cada uno de ellos. Revise el texto básico en el capítulo de Memoria Caché, en la sección 4.2 Los elementos de diseño de una caché. Puede apoyarse también en el recurso ocw este link en la web: http://ocw.ehu.es/ensenanzas-tecnicas/arquitectura-de-computadores-i/apuntes/cache Los elementos de diseño de la caché se muestran en la Tabla 4.2. dentro de estos elementos encontramos las funciones de correspondencia , que responden a la pregunta ¿En qué línea de caché se coloca cada bloque? (ver ilustración 3.3) . Por supuesto no descuide todos los otros elementos dentro del diseño de la caché.
Ilustración 3.3. Funciones de correspondencia (Imagen extraía de Aylagas(2007)).
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
El autor del texto básico inicia la explicación de los tres tipos de funciones de correspondencia mediante el Ejemplo 4.2. Correspondencia directa
La correspondencia directa hace referencia a que un bloque de memoria se almacenará en solo una línea de caché si existe un fallo. En una línea de caché pueden ir varios bloques de memoria pero solo uno a la vez y estos bloques siempre se almacenarán en la misma línea. Observemos la ilustración 3.4 que explica como se trabaja con la correspondencia directa, cuya es que cada bloque (de memoria principal) solo puede ir en una línea de memoria caché.
Ilustración 3.4. Correspondencia Directa(Imagen extraída de Sutter(2008)) La fgura 4.7 del texto básico indica la organización de la caché con correspondencia directa. El formato es mostrado en la Figura 4.8 en base al ejemplo 4.2a del texto básico. Se sugiere tener en cuenta que los números representados en las grácas son hexadecimales y cada uno esta representado por 4 binarios (ejemplo FFF8=1111 11111 1111 1000). A continuación presentamos un resumen del formato de instrucción en correspondencia directa
Ilustración 3.5. Formato de la dirección de memoria principal para correspondencia directa
Correspondencia totalmente asociativa A diferencia de la correspondencia directa, la correspondencia asociativa no tiene restricción para los bloques en las líneas de la caché, es decir un bloque puede ir en cualquier línea de una caché. Por supuesto esta es una implementación sencilla, pero implica la utilización de algoritmos de sustitución. Observemos la fgura 4.9 que muestra la organización de la caché con correspondencia totalmente asociativa. Al igual que la correspondencia anterior el ejemplo 4.2b explica lo que sucede en la fgura 4.10.
PRIMER BIMESTRE
Guía didáctica: Arquitectura de Computadores
La ilustración 3.6 muestra una explicación gráca de la correspondencia totalmente asociativa. Ésta correspondencia permite almacenar cualquier bloque de memoria principal en cualquier línea de memoria caché.
Ilustración 3.6. Correspondencia totalmente asociativa ( Imagen extraída de Sutter (2008)) A continuación presentamos el formato de la dirección también mostrado en la gura 4.10:
Ilustración 3. 7 Formato de dirección correspondencia totalmente asociativa Correspondencia asociativa por conjuntos
El mecanismo de funcionamiento se describe en la fgura 4.11 y su mecanismo en la fgura 4.123. A continuación mostramos la ilustración 3.8 que explica grácamente el mecanismo de la correspo ndencia por conjuntos. Se puede observar que al conjunto se lo trata como una línea en correspondencia directa, pero a su vez esta compuesto por líneas que son tratadas como correspondencia asociativa.
Ilustración 3.8. Correspondencia asociativa por conjuntos.(Imagen extraída de Sutter(2008)) Algoritmos de sustitución
Los algoritmos de sustitución son utilizados para introducir nuevos bloques en la memoria caché cuando ésta ya se encuentra llena. Solamente se aplica para las técnicas asociativas. Para reforzar el tema de los algoritmos de sustitución revise el tema Políticas de Sustitución del recurso en línea de Aylagas(2007), indicado en la bibliografía complementaria. 3
Observe que en el Formato de dirección existe una errata . el Formato correcto es Etiqueta+Conjunto+Palabra. Y no etiqueta +Línea +Palabra.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
Políticas de escritura
Las políticas de escritura son aquellas que remplazan un bloque cuando éste ha sido modicado por el procesador. Existen dos tipos la escritura inmediata y la post escritura. Para reforzar el tema de los algoritmos de sustitución revise el tema Políticas de Escritura del recurso en línea de Aylagas(2007), indicado en la bibliografía complementaria. Tamaño de línea y número de caché
Otra cuestión importante son el tamaño de línea y el número de caché. Para entender los criterios de implementación revise el texto básico en el tema tamaño de línea y número de caché Una vez comprendidos los temas anteriores responda a las siguientes preguntas. ¿ Puede denir cuáles son los elementos de diseño de la caché?, ¿Cuáles son las desventajas de la correspondencia directa?, ¿Cuáles son las ventajas de la correspondencia asociativa por conjunto en relación con la directa y asociativa?, ¿Qué tan grande debe ser una línea de caché?, ¿Cuántos niveles de caché aconsejarías?. Algunas de las respuestas dependerán de la perspectiva del arquitecto computacional en base a la problemática que se pretenda resolver. Sin embargo en la mayoría de sistemas de memoria se utiliza como función de correspondencia la asociativa por conjuntos. Ahora bien ha terminado de revisar los contenidos de la unidad 3. Puede resolver los problemas propuestos.
Interactividad en el EVA : Participe en el foro propuesto y comente los aportes de dos de sus compañeros. Por favor trate de crear un ambiente de discusión para el aprendizaje. A continuación presentamos un conjunto de ejercicios resueltos tomados de la sección Problemas del texto básico. La numeración es la misma que en el texto. Problemas resueltos
Ejercicio # 4.1. Una caché asociativa por conjuntos consta de 64 líneas divididas en conjuntos de 4 líneas. La memoria principal contiene 4K bloques de 128 palabras cada uno. Muestre el formato de direcciones de memoria principal. Datos 1. Una caché de 64 líneas / conjuntos de 4 líneas = 16 Conjuntos = 24 2. Cada bloque es igual a: 128 palabras, donde 128 = 2 7 3. Tenemos 128 palabras por cada 4k bloques:
128 / 4 = 32 bloques en la memoria principal, es decir 2 12 8
4
7
equeta
Nro. línea
palabra
Ejercicio # 4.8 Considere una máquina con una memoria principal de 2 16 bytes, direccionables por bytes, y un tamaño de bloque de 8 bytes. Suponga que con esta máquina se utiliza una caché de 32 líneas y correspondencia directa.
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
a)
¿Cómo se divide la dirección de memoria de 16 bits entre etiqueta, número de línea y número de byte? Datos del problema: Tamaño Memoria Principal(MP) = 216 bytes Tamaño de bloque = 8 bytes Número de líneas de caché = 32 líneas Numero de bits necesarios para direccionar 32 líneas = 25 à r = 5 8
5
3
Nro. línea
palabra
Cantidad de bits para direccionar 216 /8 bloques, Bloques MP = 2 16 /23 = 213 , es decir s = 13 Entonces la etiqueta es igual a s – r 13 – 5 = 8 b)
¿En qué líneas se almacenarían los bytes que se encuentran en las siguientes direcciones? Para esto debemos basarnos en el formato de dirección y dividir la cantidad de bits en cada una de las secciones etiqueta, línea y palabra. Luego se transforma el número binario a decimal para conocer en número de la línea 0001 0001 0001 1011 etiqueta: 0001 0001 línea: 00011 palabra: 011 1100 0011 0011 0100 etiqueta: 1100 0011 línea: 00110 palabra: 100 1010 1010 1010 1010 etiqueta: 1010 1010 línea: 10101 palabra: 010 1101 0000 0001 1101 etiqueta: 1101 0000 línea: 00011 palabra: 101
c)
línea 3
línea 6
línea 21
línea 3
Suponga que se almacena en la caché el byte de dirección 0001 1010 0001 1010. ¿Cuáles son las direcciones de los bytes que se almacenan junto con él éste? etiqueta: 0001 1010 línea: 00011 palabra: 010
Guía didáctica: Arquitectura de Computadores
PRIMER BIMESTRE
Junto con el byte de esta dirección se almacenarán todos los bytes que estén en el mismo bloque, o sea los que se encuentren en las direcciones: 0001 1010 0001 1xxx AUTOEVALUACIÓN 3
Ha concluido el estudio de la tercera unidad. Ahora le invitamos a desarrollar la siguiente actividad de autoevaluación para aanzar los conocimientos adquiridos.
Parte A: Preguntas Objetivas: Conteste con Verdadero(V) o Falso(F) a cada una de las siguiente expresiones según corresponda 1. 2. 3. 4. 5. 6. 7. 8.
En una memoria caché las políticas de escritura razonable es la escritura diferida con asignación (de bloque en caché) El espacio de la memoria caché esta divido en líneas. La fórmula de longitud de las direcciones es = (s+w) bits Los tres tipos de correspondencia son directa, asociativa y asociativa por conjuntos La fórmula de tamaño de etiqueta de correspondencia directa es (s-r)bits Los números de caché son : uno o dos niveles y unicada o partida El tiempo de ciclo de memoria es el tiempo de acceso y tiempo más que se requiera antes de iniciar un segundo acceso a memoria Velocidad de transferencia es la velocidad que se puede transferir datos a, o desde una unidad de memoria.
( ) ( ( ( ( ( (
) ) ) ) ) )
( )
Parte B: Problemas A continuación se propone ejercicios de este capítulo tomados del texto básico: Memoria Caché. Ejercicio # 4.2 Una Caché asociativa por conjuntos de dos vías tiene líneas de 16 bytes y una capacidad de total de 8KB. La memoria principal, de 64 MB, es direccionable por bytes. Muestre el formato de las direcciones de memoria principal. Ejercicio # 4.21 Considere una caché de un solo nivel, con un tiempo de acceso de 2,5 ns, un tamaño de línea de 64 bytes y una tasa de aciertos H= 0,95. La memoria principal usa la capacidad de transferencia en bloques, con un tiempo de acceso de 50 ns para la primera palabra (4bytes ), y de 5ns para cada una de las siguientes. a)
¿Qué valor tiene el tiempo de acceso cuando hay un fallo de caché? Suponga que la caché espera hasta que la línea ha sido captada de memoria principal, para entonces ejecutar un acierto de caché.
Al fnal de esta guía encontrará una sección de solucionario en donde encontrará las respuestas de
esta autoevaluación. Si usted alcanzó el 80% de logros puede continuar adelante ¡Felicitaciones!; de lo contrario se recomienda revisar nuevamente la temática para tener una mayor comprensión. ¡Ánimo inténtelo de nuevo!.
Guía didáctica: Arquitectura de Computadores
o A d O a M I i A V m R T t s G A T e O N o N E I p O R m R O e C i T
E J A Z I D N E R P A E D S E D A D I V I T C A
. o i d u : t 8 s e y o t 7 u a a n e a d m s e a S r o h 2 1
n a ó n i c a c m a e r e s t r n o i e p d A s V E a r l o e h n 8 e
o m e r o t c s e a i m c i n b a o t s d i d n u a g e n s ó i l c a a e u t l a n e v i e d y n o s s p e e n r r o o i c c a l u i a l a c v n e e o s t e u r a p n s ó a i l c e a u d l a s v o e d a i l n a e r t n a o p c n ó s i o c l a r e s a i v p e e r R p •
S O D I N E T N O C
s a m e T / s e d a d i n U
E D E S J E A R Z I O D D N A E C I R P D A N I
S A I S C A N C I E Í F T E C P E P M S E O C
6 a l a 4 a l e d s e d a d i n U
SEGUNDO BIMESTRE
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
7.5. Sistema de Evaluación * n ó i c a u l a v e o t u A . 1
s e d a d i v i t c A
2. Heteroevaluación Evaluación a Distancia ** a v e i t t r j a e P b O
n ó i A c V c E l a r e e t n n e I
e d o y e a t r s a n P E
Comportamiento ético
X
X
X
X
cumplimiento, puntualidad, responsabilidad
X
X
X
X
Esfuerzo e interés en los trabajos
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
s e d Contribución en el trabajo colaborativo y de equipo a d i l i b a Presentación, orden y ortografía H
Emite juicios de valor argumentadamente
X
s o t n Investigación (cita fuentes de consulta) e i m i c o n Aporta con criterios y soluciones o C
Análisis y profundidad en el desarrollo de temas e e d j a a i z i g d e n t a r r e t s p E a
Puntaje
X
X
Creatividad e iniciativa
PORCENTAJE
a a v b i e t e j u r b P O
X
X
Respeto a las personas y a las normas de comunicación
Dominio del contenido
Evaluación Presencial
TOTAL
10%
10%
10%
2
2
6
1 o t o m n i x u á p M
70% 14
20 puntos
Para aprobar la asignatura se requiere obtener un puntaje mínimo de 28/40 puntos, que equivale al 70%. * Son estrategias de aprendizaje, no tienen calicación; pero debe responderlas con el n de autocomprobar su proceso de aprendizaje. ** Recuerde: que la evaluación a distancia del primero y segundo bimestre consta de dos partes: una objetiva y otra de ensayo, debe desarrollarla y entregarla en las fechas correspondientes. Sr. Estudiante: Tenga presente que la nalidad de la valoración cualitativa es principalmente formativa.
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
7.6 Orientaciones específcas para el aprendizaje por competencias
UNIDAD 4 ENTRADA Y SALIDA (E/S) Al ser la arquitectura de E/S la interfaz con el exterior del computador, esta unidad permitirá comprender la importancia de la comunicación de los dispositivos internos con los dispositivos externos. En el texto básico encontraremos los contenidos en el capítulo 7: Entrada/Salida. En este capítulo se identica la E/S según los dispositivos internos y externos. Además se analiza la metodología para controlar las interacciones con el exterior proporcionando así información al Sistema Operativo para gestionar la actividad de E/S. También se revisa los métodos de E/S y los diferentes los tipos de interfaces. La ilustración 4.1 nos recuerda la ubicación de los módulos que permiten la conexión con dispositivos tanto internos como con dispositivos externos. Lo que estudiaremos son los controladores que permiten la comunicación.
Ilustración 4.1. Representación del Bus del sistema y los Módulos e E/S. (Imagen extraía de Aylagas(2007)). Antes de empezar la lectura del texto básico, revise el contenido OCW http://ocw.ehu. es/ensenanzas-tecnicas/arquitectura-de-computadores-i/apuntes/entrada_salida, el cual le proporcionará una visión general del tema. A continuación describiremos los detalles de los dispositivos externos como internos. 4.1. Dispositivos externos
Los dispositivos de E/S se utilizan tanto para el ingreso de datos al procesador como también para la visualización de los resultados. Analicemos a continuación las categorías de los dispositivos externos.
SEGUNDO BIMESTRE
Guía didáctica: Arquitectura de Computadores
Analice los dispositivos externos en el texto básico, capítulo 7 de Entrada/Salida, en la sección 7.1. Esta actividad revela cual es el diagrama de bloques de un dispositivo externo ( Figura 7.2). Observe como el transductor se encarga de convertir las señales eléctricas asociadas a un dato a señales de salida, como por ejemplo presentar una letra en la pantalla. En la Tabla 7.1 muestra el carácter asociado a un código binario de 7 bits conocido como ASCII, este código es generalmente utilizado en la transmisión de datos de TECLADO/MONITOR. Los caracteres representados en la tabla 7.2 caracteres especiales utilizados como control para comunicación con el módulo de E/S. 4.2. Módulos de E/S
Un módulo E/S se dene como un elemento que permite que los dispositivos externos se comuniquen con el resto de elementos del sistema. Un dispositivo externo conectado a un módulo de E/S se denomina dispositivo periférico o simplemente periférico. A continuación revisemos en profundidad estos conceptos. Revise el texto básico en el capítulo de Entrada/Salida, en la sección 7. 2 Módulo de E/S Los módulos de E/S también conocidos como controladores tienen la función de controlar, comunicar, almacenar datos y detectar errores en la comunicación con el procesador. Los controladores agrupan dispositivos del mismo tipo por ejemplo existirán controladores para manejar impresoras, monitores y otros para manejar el acceso de red. La ilustración 4.2 muestra una estructura general de diagramas de bloques de un controlador.
Ilustración 4.2. Estructura de un módulo de E/S. (Imagen extraía de Aylagas(2007)). Con la fgura 7.3 y las ilustraciones anteriores, ¿puede identicar cada uno de los bloques de un módulo de E/S?. Si necesita aclarar estos temas puede encontrar recursos adicionales en el EVA, además de poder solicitar tutoría a su profesor. Ahora es necesario que vaya al nal de esta unidad y resuelva las actividades propuestas.
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
Para controlar la recepción y envío de datos entre los dispositivos externos y el CPU se debe implementar un mecanismo para controlar este proceso. Abordemos ahora las técnicas para estas operaciones de E/S. El texto básico describe dos técnicas para estas operaciones: -
La E/S programada La E/S mediante interrupciones
A continuación revisemos cada una de éstas. 4.3. E/S Programada
Es una forma sencilla de realizar operaciones de E/S. Consiste en un conjunto de instrucciones donde el CPU pregunta al dispositivo si esta listo para recibir información mediante un programa. Revisemos en el texto básico este tema. Aprenda como trabaja la E/S Programada. Lea el capítulo 7 el apartado 7.3. La Ilustración 4.4 indica un fragmento de programa que se dedica a leer caracteres de teclado y hacer el respectivo eco en la pantalla. La CPU tiene el control absoluto de la operación de E/S: inicia y lleva a cabo la transferencia. Además realiza la comprobación de estado y la inicialización.
Ilustración 4.4. Ejemplo de instrucciones para en E/S Programada(Aylagas(2007)) Uno de los problemas de esta implementación es que si un periférico requiere atención urgente debe esperar a que el programa llegue a la secuencia de instrucciones para atenderlo. Para resolver este problema estudiemos la E/S Mediante interrupciones. 4.4. E/S Mediante interrupciones
El manejo de los dispositivos con interrupciones permite que la CPU podría realizar otras tareas mientras espera a que el dispositivo este preparado. Esto se consigue haciendo que el dispositivo emita señales al procesador para llamar la atención. Revisemos el texto básico para conocer a profundidad como trabajan las interrupciones. Analice la E/S mediante interrupciones en capítulo 7 del texto básico Entrada/Salida, en la sección 7.4.
SEGUNDO BIMESTRE
Guía didáctica: Arquitectura de Computadores
Observemos la siguiente ilustración donde se identica la relación de la CPU con cada uno de los dispositivos en la E/S mediante interrupciones..
Ilustración 4.5. Esquema E/S mediante interrupciones (Aylagas (2007)) ¿Indique la diferencia en la E/S programada y la E/S mediante interrupciones?, ¿ Cuáles son las cuestiones de diseño en la E/S mediante interrupciones? Si necesita aclarar estos temas puede encontrar recursos adicionales en el EVA, además solicite una tutoría a tu profesor. Ahora es necesario que vaya al nal de esta unidad y resuelvas las actividades propuestas.
4.5. Acceso Directo a Memoria (DMA) Tanto en la E/S programada como en la E/S con interrupciones, el procesador es el encargado de almacenar los datos en memoria desde un dispositivo externo así como también de extraer los datos desde la memoria y enviarlos a un dispositivo externo. Una alternativa a este proceso se conoce como DMA. Revisemos el texto básico para profundizar el tema. Revise el texto básico en el capítulo de Entrada/Salida, la sección 7.5: Acceso Directo a Memoria
Como se menciona la sección 7.5, existen dos inconvenientes al utilizar el E/S programada o E/S mediante interrupciones. El primero relacionado con la velocidad de transferencia y el segundo con la gestión de esta transferencia. Para corregir en parte estos problemas una técnica mas eciente es la DMA. En la fgura 7.11 se observa un diagrama con los bloques de un módulo DMA cuya función principal es hacerse cargo de la transferencia de datos para evitar que el procesador desperdicie su tiempo en esta tarea. Ahora con la gura 7.11 describa cada una de las líneas que van desde y hacia el módulo DMA.
Interactividad en el entorno: Participe en el foro propuesto y comente los aportes de dos de sus compañeros. Por favor trate de crear un ambiente de discusión para el aprendizaje.
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
A continuación presentamos un conjunto de ejercicios resueltos tomados de la sección Problemas del texto básico. La numeración es la misma que en el texto. Problemas resueltos
Ejercicio # 7.1. En un microprocesador típico, se utiliza una dirección de E/S para hacer referencia a los registros de datos de E/S y otra dirección distinta para los registros de estado y control del controlador de E/S del dispositivo correspondiente. Estos registros se denominan puertos. En el 8088 de Intel se utilizan dos formatos de instrucción. En un formato, un código de operación de ocho bits especica la operación de E/S, seguido de ocho bits para la dirección del puerto. En los otros códigos de operación de E/S, Ia dirección del puerto se encuentra en el registro de 16 bits DX. ¿Cuántos puertos puede direccionar el 8088 en cada uno de los modos de direccionamiento de E/S? En el modo de formato ( codop + 8 bits para dirección del puerto ) se puede direccionar hasta 256 puertos . ( 28 ) En el formato donde la dirección se encuentra dentro de los 16 bits se puede direccionar hasta 2 16 puertos ( 64 K ).
Ejercicio # 7.6. En el caso de la E/S programada, la Figura 7.5 pone de maniesto que el procesador se encuentra en un bucle de espera comprobando el estado del dispositivo de E/S. Para incrementar la eciencia, se podría hacer el software de E/S de forma que se comprobase el estado del dispositivo periódicamente. Si el dispositivo no está preparado, el procesador podría pasar a realizar otras tareas. Después de un cierto intervalo, el procesador volvería a comprobar el estado nuevamente. (a) Considere el esquema anterior para enviar un carácter en cada operación de salida a una impresora de diez caracteres por segundo (cps) ,¿Qué pasaría si su estado se comprobase cada 200 ms?
La impresión se efectuaría a solo 5 caracteres por segundo.
(b) A continuación, considere un teclado con un buffer para un solo carácter. En promedio, los caracteres se introducen a una velocidad de 10 cps. Sin embargo, el tiempo entre dos pulsaciones de tecla consecutivas puede ser de solo 60 ms. Con que frecuencia debería el programa de E/S comprobar el teclado? Se debe comprobar cada 60 ms para evitar que los caracteres se sobrescriban en el buffer debido a la velocidad de las pulsaciones. AUTOEVALUACIÓN 3
Ha nalizado el estudio de la cuarta unidad. Ahora le invitamos a desarrollar la siguiente actividad de autoevaluación para mejorar los conocimientos adquiridos.
Parte A: Preguntas Objetivas: Conteste con Verdadero (V) o Falso (F) a cada una de las siguiente expresiones según corresponda. 1.
Los dispositivos externos se pueden clasicar en: Interacción con humanos, con máquinas y de comunicación.
( )
2.
La decodicación de órdenes se envían utilizando las líneas del bus de datos.
( )
SEGUNDO BIMESTRE
Guía didáctica: Arquitectura de Computadores
3.
Una de las principales funciones de modulo de E/S es la Detección de Errores
( )
4.
Las órdenes de E/S son Control, Test, Lectura, Escritura
( )
5.
PSW signica palabra de estado del programa .
( )
6.
Firewire utiliza conexión en cadena (daisy chain ).
( )
7.
Conguración en cadena Daisy chain conecta hasta 63 dispositivos
( )
8.
Adaptadores bridges en Firewire puede tener interconexiones de hasta 1022 buses
( )
Parte B: Problemas A continuación se propone ejercicios de este capítulo tomados del texto básico: Entrada/Salida. Ejercicio # 7.2 En la familia de microprocesadores Z8000 de Ziglog se utiliza un formato de instrucción similar. En este caso es posible realizar un direccionamiento directo de los puertos utilizando una dirección de 16 bits que forma parte de la instrucción, y también un direccionamiento indirecto, al incorporar la instrucción una referencia a uno de los 16 registros de propósito general que contiene la dirección del puerto. ¿Cuántos puertos pueden designar el Z8000 en cada uno de los modos de direccionamiento de E/S? Ejercicio # 7.7 Un microprocesador comprueba el estado de un dispositivo de salida de 20ms. Ésto se lleva a cabo mediante un temporizador que avisa al procesador cada 20 ms. La interfaz del dispositivo tiene dos puertos: uno para el estado y otro para el dato de salida. ¿Cuánto se tarda en comprobar el estado y atender al dispositivo si la frecuencia de reloj es de 8 MHz?. Por simplicidad, considere que todas las instrucciones que intervienen tardan doce ciclos de reloj. Concluida la autoevaluación: Si usted alcanzó el 80% de logros puede continuar adelante ¡Felicitaciones!; de lo contrario se recomienda revisar nuevamente la temática para tener una mayor comprensión. ¡Ánimo inténtelo de nuevo!.
Revise sus respuestas en el Solucionario que se encuentra al fnal de la presente guía didácca.
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
UNIDAD 5 ARITMÉTICA DEL COMPUTADOR Luego de haber analizado la estructura del computador y sus interconexiones, es momento de examinar la unidad aritmética y lógica del Computador. Recordemos que la unidad aritmética lógica (UAL) es la encargada de realizar operaciones matemáticas y lógicas. Internamente esta conformada por un conjunto de integrados que de acuerdo a un conjunto de bits de entrada ésta realiza diferentes operaciones. El texto básico hace referencia a esta unidad en el capítulo 9. De éste revisaremos las cuatro primeras secciones. En esta unidad se recomienda una lectura comprensiva de los temas. Además deténgase en guras y comprenda el mecanismo de funcionamiento. También utilice los recursos adicionales del EVA y los recursos ocw para una mejor comprensión. Al nalizar esta unidad encontrará ejercicios resueltos y una sección de ejercicios propuestos para su proceso de enseñanza aprendizaje 5.1. La unidad aritmético-lógica
La visión general de cómo esta interconecta la ALU dentro del procesador se revisará en esta sección. Iniciemos con la lectura del texto básico. Inicie el estudio de la unidad con la lectura del capítulo Aritmética del computador, en la sección 9.1 La unidad aritmética lógica Observe en la gura 9.1 que la unidad de control da las órdenes para que la ALU realice las operaciones. Después de esta actividad, ya estará en la capacidad de explicar en términos generales como la Unidad Aritmético Lógica se interconecta con el resto del procesador. Comprendida esta temática, continuemos. 5.2. Representación de enteros
Las representaciones tanto de signo magnitud como en complemento permiten la trasformación de un número binario a un número decimal. En la siguiente actividad revisará el problema de la representación signo magnitud. Lea el texto básico el capítulo de Aritmética del computador, en la sección 9.2 Representación de Enteros. Además Recomendamos revisar el Apéndice A del capítulo 9 con el n de que repase los sistemas de numeración. Si ha realizado una lectura comprensiva, descubrirá que el problema de signo magnitud es que cuenta con dos números cero (+=0, -0), problema que es resuelto en la representación complemento A2. Ahora la mayoría de computadores trabaja con A2. A continuación se indica las fórmulas que cada representación.
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
Representación Signo – Magnitud
Representación Complemento A2
Si an-1=0
Si an-1=1
¿Ha comprendido las fórmulas anteriormente presentadas? Observe que en la representación signo magnitud existe una fórmula para los números positivos y otra para los negativos; y en la representación complemento A2 solo una fórmula para ambos números. Ahora, transforme de binario a decimal el siguiente número de 12 bits 10010110111 utilizando cada una de las fórmulas. ¿Qué valor tiene a n-1?, ¿Si tiene que convertir este número a uno de 24 bits que consideraciones debe tomar en cuenta?, ¿A qué se denomina representación en coma ja?. Recuerda utilizar los recursos adicionales del EVA y solicitar ayuda a tu profesor para comprender mejor los temas. 5.3. Aritmética con enteros
Realice una lectura comprensiva del texto básico, capítulo 9 de Aritmética del computador, la sección 9.3 Aritmética con Enteros Luego de realizar la actividad podrá identicar cinco operaciones que se realizan con números binarios enteros: Negación, suma, resta, multiplicación y división . Deténgase en los siguientes casos: 1.
¿Por qué al realizar el complemento a dos del cero(0) nos da como resultado cero(0)?.
2.
¿Por qué al aplicarle al -128 el complemento a dos nos da el mismo número?. La fgura 9.5 del texto básico en el literal a explica lo sucedido.
Cuando se realiza una suma o una resta usted puede tener un desbordamiento. La fgura 9.3 y la fgura 9.4 muestran las condiciones necesarias en los operandos para que se suscite este caso. El proceso de multiplicación en los computadores se hace mediante complemento a dos. Como explica el texto básico la multiplicación directa no es adecuada si el multiplicando o el multiplicador son negativos. Para realizar el proceso correctamente se utiliza el algoritmo de both. En la fgura 9.12 del texto básico encontramos un ujograma con los pasos a seguir para realizar la multiplicación. El siguiente ejemplo explica como se va dando cada uno de los valores de la fgura 9.13.
Ejemplo 5.1 Objetivo: Multiplicar 7X3 (0111 x 0011) Consideraciones: •
Recuerde que tanto el multiplicando(M), como el multiplicador(Q) tienen 4 bits; por lo tanto el número de ciclos a repetir será cuatro.
Guía didáctica: Arquitectura de Computadores
• • •
SEGUNDO BIMESTRE
A es un registro igual al número de bits de Q o M, en este caso 4 bits. Q-1 solo tiene un solo bit Ahora siguiendo la primera parte del algoritmo de la gura 9.12 del texto básico:
Inicialización: Primero ubicar en cero los registro Q -1 y A: A
Q
0000
0011
Q-1 0
M
DESCRIPCION
0111
Valores iniciales
CICLOS
Primer ciclo: •
Se llega a la condicionante (Qo ,Q-1 ). Aquí Qo es el bit que se encuentra más a la derecha de Q (0011) Qo=1.
•
Entonces el par (Qo ,Q-1 ) =(10) y de acuerdo al algoritmo el proceso continúa por la izquierda.
•
De los anterior podemos decir que la operación a realizarse es Aß A-M. Para esto se obtiene -M( o lo que es igual al complemento a dos de M) –M=1001. Luego sumamos A=0000 y (M)=1001. El resultado lo almacenamos en A. Por consiguiente A=1001
•
•
A
Q
1001
0011
Q-1
0
M
DESCRIPCION
0111
A
A-M
←
CICLOS
Primer ciclo
Siguiendo el algoritmo se debe realizar un desplazamiento aritmético a derecha. Esto consiste en desplazar todos los bits de A hacia la derecha pero conservando el bit más signicativo A= 1100. El bit 1 que se encontraba más a la derecha de A ahora forma parte de Q como su bit más signicativo y todo se desplaza hacia la derecha Q=1001. El bit 1 que se encontraba más a la derecha de Q ahora forma parte de Q -1=1. El valor anterior de Q -1 se lo desecha. Entonces el cuadro nos queda de la siguiente manera: A
Q
Q-1
M
DESCRIPCION
1001
0011
0
0111
A
1100
1001
1
0111
Desplazamiento
A-M
←
CICLOS
Primer ciclo
Observe que el valor de M no se mueve, este se mantiene durante todo el proceso. Como aún faltan tres ciclos por completar se repite nuevamente el proceso desde la condición.
Segundo ciclo: •
Como Qo ,Q-1 ahora tiene el valor de (1,1) solo se realiza el desplazamiento ( El proceso va por el centro del algoritmo). A
Q
1110
0100
Q-1
1
M
0111
DESCRIPCION
CICLOS
Desplazamiento Primer ciclo
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
•
Nuevamente se repite el proceso desde el condicionante hasta que completen cuatro ciclos.
De esta manera el resultado se encuentra al unir los bits de A y Q en un nuevo registro de 8 bits. ¿Ha entendido el proceso para realizar el algoritmo de both?. Entonces ahora puede analizar la división utilizando el mismo razonamiento. Recuerda utilizar los recursos adicionales del EVA y solicitar ayuda a tu profesor para comprender mejor los temas. 5.4. Representación en coma otante
La desventaja que tiene la notación de coma ja es el rango de números que se puede representar. Si utilizamos la notación de coma otante podemos representar un rango de número muy grandes y muy pequeños con solo unos cuantos dígitos. Analicemos como se puede representar números en coma otante en la siguiente actividad. Lea comprensivamente el texto básico, el capítulo de Aritmética del computador, la sección 9.4 Representación en coma fotante Luego de la lectura es importante que recuerde tres partes importantes en la representación de un número de coma otante: 1. 2. 3.
El Signo La parte signicativa El exponente (representada en forma sesgada)
A continuación mostramos un ejemplo de cómo se realiza la transformación de un decimal a un binario en su forma de representación de coma otante.
Ejemplo 5.2 Objetivo: Expresar en formato de coma otante -1,5 Consideraciones: Para este problema vamos a utilizar un formato típico de 32 bits Signo
Exponente
Parte signicativa
1 bit
8 bits
23 bits
Primer paso: Convertir el número decimal en binario. •
Procedemos a convertir el numero -1,5 en binario. La parte izquierda del número en binario es 1. La parte decimal o derecha del numero es 0,1. Por lo tanto el número -1,5 en binario es -1,1.
Segundo paso: Normalizar el número. •
El número normalizado en base 2 debe tener la siguiente forma ±0,1bbb…bX 2 +/-E: -1,1 normalizado es -0,11 X 2 1
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
Tercer paso: Obtener exponente sesgado •
Para este proceso se suma 127 al exponente original para almacenarlo en el campo de exponente: 127+1=128 ó 01111111(127)+00000001(1)=10000000(128) Signo 1
Exponente 10000000
Parte Signicativa
1 bit
8 bits
23 bits
Cuarto paso: Asignar la parte signicativa •
El primer bit 1 no se lo toma en cuenta puesto que siempre existirá un 0,1. El resto de espacios se completa con 0. Signo 1
Exponente 10000000
Parte Signicativa 10000000000000000000000
1 bit
8 bits
23 bits
El proceso para convertir de binario con representación de coma otante es el inverso de lo anteriormente descrito. ¿Si ha entendido el proceso de conversión de decimal a binario con representación de coma otante, realice la conversión de binario a decimal de 1,68?. Recuerda utilizar los recursos adicionales del EVA y solicitar ayuda a tu profesor para comprender mejor los temas.
Interactividad en el EVA : Participe en el foro propuesto y comente los aportes de dos de sus compañeros. Por favor trate de crear un ambiente de discusión para el aprendizaje. A continuación presentamos un conjunto de ejercicios resueltos tomados de la sección Problemas del texto básico. La numeración es la misma que en el texto. Problemas resueltos
Ejercicio 9.15. Use el algoritmo de Booth para multiplicar 23 (multiplicando) por 29 (multiplicador),
donde cada número está representado con 7 bits. A
Q
Q-1
M
DESCRIPCION
CICLOS
0000000
0011101
0
0010111
Valores iniciales
1101001 1110100
0011101 1001110
0 1
0010111 0010111
A A-M DESPLAZAMIENTO
Primer ciclo
0001011 0000101
1001110 1100111
1 0
0010111 0010111
A A+M DESPLAZAMIENTO
Segundo ciclo
1101110 1110111
1100111 0110011
0 1
0010111 0010111
A A-M DESPLAZAMIENTO
Tercer ciclo
←
←
←
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
A
Q
Q-1
M
DESCRIPCION
CICLOS
1111011
1011001
1
0010111
DESPLAZAMIENTO
Cuarto ciclo
1111101
1101100
1
0010111
DESPLAZAMIENTO
Quinto ciclo
0010100 0001010
1101100 0110110
1 0
0010111 0010111
A A+M DESPLAZAMIENTO
Sexto ciclo
0000101
0011011
0
0010111
DESPLAZAMIENTO
Séptimo ciclo
←
RESPUESTA de la operación 23 x 29= 0000101 0011011 = 66710 Ejercicio 9.20. Divida -145 entre 13 en notación binaria de complemento a dos utilizando palabras de
12 bits. Emplee el algoritmo en la sección 9.3. CICLOS 1 2 3 4 5 6 7 8 9 10 11 12
A 111111111111 111111111111 000000001100 111111111111 111111111111 000000001100 111111111111 111111111111 000000001100 111111111111 111111111111 000000001100 111111111111 111111111110 000000001011 111111111110 111111111101 000000001010 111111111101 111111111011 000000001000 111111111011 111111110110 000000000011 111111110110 111111101101 111111111010 111111111010 111111110101 000000000010 111111110101 111110110111 111111000100 111111000100 111110001001 111110010110 111110010110
Q 111101101111 111011011110 111011011110
M 000000001101 000000001101
110110111100 110110111100
000000001101
101101111000 101101111000
000000001101
011011110000 011011110000
000000001101
110111100000 110111100000
000000001101
101111000000 101111000000
000000001101
011110000000 011110000000
000000001101
111100000000 111100000000
000000001101
111000000000 111000000001
000000001101
110000000010 110000000010
000000001101
100000000100 100000000101
000000001101
000000001010 000000001011
000000001101
RESPUESTA Cociente en Q=000000001011
DESCRIPCION Valores iniciales Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Poner Qo=1 Desplazamiento Suma A ß A + M Restablecimiento Aß A-M Desplazamiento Suma A A + M Poner Qo=1 Desplazamiento Suma A A + M Poner Qo=1 ←
←
←
←
←
←
←
←
←
←
←
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
AUTOEVALUACIÓN 5
Es momento que ponga en práctica lo que ha aprendido en esta unidad para que nalice su proceso de aprendizaje. Te invitamos a desarrollar la siguiente actividad de autoevaluación.
Parte A: Preguntas Objetivas: Conteste con Verdadero (V) o Falso (F) a cada una de las siguiente expresiones según corresponda. 1.
La multiplicación se puede realizar con una representación de “Enteros sin signo”.
( )
2.
La regla del desbordamiento sucede al sumar dos números positivos o negativos y el resultado tiene signo opuesto.
( )
3.
El complemento a dos utiliza el bit menos signicativo.
( )
4.
Las entradas de ALU son la unidad de control y registros.
( )
5.
Las salidas de ALU son los registros e indicadores.
( )
6.
El 0 en signo magnitud tiene dos representaciones negativa y positiva.
( )
7.
En la negación se aplica la regla de invertir el bit del signo.
( )
8.
El desbordamiento es también conocido como overow.
( )
Parte B: Problemas A continuación se propone ejercicios tomados del texto básico capítulo: Aritmética del Computador. Ejercicio # 9.14 Dados x=0101 e y =1010 en notación de complemento a dos (es decir, x=5 e y = -6), calcule el producto p=x X y y con el algoritmo de Booth. Ejercicio # 9.23 Exprese en formato de coma otante IEEE de 32 bits los siguientes números: a. b. c. d. e.
-6 -1.5 384 1/16 -1/32
Concluida la autoevaluación: Si usted alcanzó el 80% de logros puede continuar adelante ¡Felicitaciones!; de lo contrario se recomienda revisar nuevamente la temática para tener una mayor comprensión. ¡Ánimo inténtelo de nuevo!.
Revise sus respuestas en el Solucionario que se encuentra al fnal de la presente guía didácca.
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
UNIDAD 6 ESTRUCTURA Y FUNCIONAMIENTO DEL PROCESADOR. Dos aspectos importantes se abordan en la presente unidad. Primero los registros visibles para el usuario y los registros de control y estado . Segundo, la segmentación dentro de los procesadores para la acelerar la ejecución de los programas. El capítulo 12 del texto básico hace referencia a lo anteriormente señalado. Si bien el capítulo 10 y 11 no han sido tratados en esta guía recomendamos un lectura rápida para claricar mejor los conceptos en este capítulo. También le sugerimos hacer una lectura comprensiva de cada una de los temas. Deténgase en las guras y entienda completamente el mecanismo de funcionamiento. Es conveniente que utilice los recursos del EVA y los recursos OCW para a apoyar su aprendizaje. Al nalizar esta unidad encontrará ejercicios resueltos y una sección de ejercicios propuestos para que retroalimente el aprendizaje 6.1. Organización del Procesado
Para abordar este tema es importante recordar las siguientes deniciones: captación de instrucción, interpretar una instrucción, captar datos, procesar datos, escribir datos. Luego de esto concluirá que para procesar información se necesita algunos datos temporales. A continuación introduciremos este tema. Analice el texto básico en el capítulo 12 Estructura y Funcionamiento del Procesador, la sección 12.1 Organización del procesador En la gura 12.1 y la gura 12.2 del texto básico se indica los componentes y las conexiones tanto fuera del procesador como dentro de él. Los componentes ya se han tratado en unidades anteriores, pero la lectura anterior nos recuerda cada uno de ellos. ¿Qué son los indicadores de estado?, ¿cuál es la función del bus interno del procesador?, ¿Puede describir como la función de los registros? Si es así entonces pasemos a La organización de los registros. Una vez que ha dado respuesta a las interrogantes antes planteadas continuemos. 6.2. Organización de los registros
Como se lo había denido anteriormente los registros son memorias muy rápidas, caras y pequeñas, que proporcionan información inmediata y temporal al procesador. La siguiente lectura le permitirá conocer mas información acerca de los registros. Lea el texto básico el capítulo de Estructura y Funcionamiento del Procesador, la sección 12.2 Organización de los registros Como se menciona anteriormente los registros se dividen en dos tipos:
Guía didáctica: Arquitectura de Computadores
-
SEGUNDO BIMESTRE
Los registros visibles por el usuario. Los registros de control y estado.
A continuación se muestra un cuadro sinóptico resumiendo los registros.
Cuadro 6.1. Cuadro resumen de los registros del procesador En la fgura 12.3 del texto básico se indican tres ejemplos de organización de registros para los procesadores Motorola MC68000, el Intel 8086 y el Pentium 4 80386. Observe la diferencia entre cada uno de ellos. ¿Cuáles son las ventajas de los registros visibles por el usuario?¿Que inconvenientes tienen los registros de códigos de condición? ¿Cuál es la ventaja del 80286 frente al MC68000? Si contestó correctamente las preguntas iniciaremos el estudio del Ciclo de instrucción. 6.3. Ciclo de instrucción
El ciclo de instrucción consta de tres ciclos: Captación, ejecución y la interrupción. En la presente sección se estudia otro ciclo adicional a los mencionados anteriormente “el ciclo indirecto”. Lea el texto básico el capítulo de Estructura y Funcionamiento del Procesador, la sección 12.3 Ciclo del procesador del procesador. La fgura 12.5 del texto básico indica los estados de ciclos de una instrucción con la incorporación del ciclo indirecto del procesador. La explicación de este proceso es mostrada en las fguras 12.6 y 12.7. Observe que se trata de un proceso sencillo , donde los N bits más a la derecha de MBR contienen la dirección de referencia que se transeren a MAR.
SEGUNDO BIMESTRE
Guía didáctica: Arquitectura de Computadores
¿Cuántos ciclos adicionales se incorporan al ciclo de instrucción tradicional con el direccionamiento indirecto? Si contestaste correctamente las preguntas continuemos con el tema de la segmentación.
6.4.
Segmentación de instrucciones Revise el texto básico el capítulo de Estructura y Funcionamiento del Procesador, la sección 12.4 Segmentación de instrucciones
La estrategia de la segmentación o encausamiento es similar al montaje de una fábrica como comenta el autor. La idea principal es sacar provecho de tiempo a través de varias etapas de producción. Usted podría imaginar a la segmentación como el problema de la lavandería mostrada en la ilustración 6.1, donde cuatro personas individualmente quieren lavar, secar, doblar y colocar su ropa.
Ilustración 6.1. Ejemplo de la Lavandería para Segmentación(1). Quintana, F. (2007). El problema principal del ejemplo anterior radica en que si lo hacen de forma tradicional (como se muestra en la ilustración 6.2) les llevaría aproximadamente 8 horas. (Proceso no Segmentado). Pero si optimizamos las etapas y utilizamos adecuadamente los recursos (proceso Segmentado) el tiempo se reduce en 3.5 horas.
Ilustración 6.2. Ejemplo de la lavandería para Segmentación (2). Quintana, F. (2007).
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
La explicación y algunas dicultades que se encuentran en la segmentación la encontramos en la sección de ESTRATEGIAS DE SEGMENTACIÓN. Preste atención que aquí las etapas son cada uno de los ciclos de la instrucción. La predicción de saltos es una característica de la segmentación y es muy útil al momento de considerar las prestaciones de los procesadores. En las fguras 12.16 y 12.7 encontraremos una explicación a este tema. ¿Por qué es importante la segmentación?, ¿Qué son los latch?, ¿Puede explicar la gura 12.16 para predecir un salto en la segmentación? Ahora bien ha terminado de revisar los contenidos de la unidad 6. Puede resolver los Problemas propuestos no sin antes revisar los problemas que ya se han resuelto.
Interactividad en el EVA: Participe en el foro propuesto y comente ¿Por qué es importante que un cause de instrucciones de dos etapas reduzca el tiempo de ciclo de instrucción a la mitad, en comparación con el diseño no segmentado?. Luego que escriba su aporte comente los aportes de dos de sus compañeros. Por favor trate de crear un ambiente de discusión para el aprendizaje. A continuación presentamos un conjunto de ejercicios resueltos tomados de la sección Problemas del texto básico. La numeración es la misma que en el texto. Problemas resueltos
Ejercicio # 12,3. Un microprocesador trabaja a una frecuencia de reloj de 5 GHz. a.
¿Cuál es la duración del ciclo de reloj?
b.
¿Cuál es la duración de un tipo particular de instrucción de maquina que conste de tres ciclos de reloj?. T=1/f periodo T=1/5Ghz = 1/5x 106Hz T= 0,2 x 10-6 s = 0,2 us Duración en tres ciclos de reloj: El retardo de tiempo d es igual a un pulso de reloj t = 3* 0,2 x 10 5 s t = 0,6 us
Ejercicio # 12,7 Considere un diagrama de tiempos de la gura 12, 10. Suponga que hay un cauce de solo dos etapas (Captar y ejecutar). Redibuje el diagrama para mostrar cuantas unidades de tiempo se necesitan ahora para cuatro instrucciones.
SEGUNDO BIMESTRE
Guía didáctica: Arquitectura de Computadores
Ejercicio # 12,8. Suponga un cauce de cuatro etapas; captar instrucción (FI), decodicar la instrucción y calcular direcciones (DA) captar operando (FO) y ejecutar (EX), dibuje un diagrama similar a la gura 12, 10 para una secuencia de siete instrucciones, en la cual la tercera instrucción es un salto que tiene lugar y además no hay dependencia de datos.
Ha nalizado la última unidad. Ahora le invitamos a desarrollar la siguiente autoevaluación para mejorar los conocimientos adquiridos.
Parte A: Preguntas Objetivas: Conteste con Verdadero(V) o Falso(F) a cada una de las siguiente expresiones según corresponda 1.
MSR es el registro de estado de la máquina.
( )
2.
Interrupciones de Power PC 00500h es externa.
( )
3.
El registro de condición consta de 8 campos de código de condición de cuatro bits.
( )
4.
La interrupciones enmascarables reciben el procesador por el pin NMI.
( )
5.
La interrupciones no enmascarables reciben el procesador por el pin INTR.
( )
6.
El 0 en vector de interrupción signica Error al dividir.
( )
7.
Task Switched TS indica que el procesador tiene tareas conmutadas.
( )
8.
La Paginación (Paging, PG) solo habilita la paginación.
( )
Parte B: Problemas A continuación se propone ejercicios tomados del texto base capítulo: Estructura y Funcionamiento del procesador. Ejercicio # 12.11 Considere una secuencia de instrucciones de longitud n que atraviesa un cauce de instrucciones. Sea p la probabilidad de encontrar una instrucción de salto condicional o incondicional, y sea q la probabilidad de que la ejecución de una instrucción de salto I provoque un salto a una dirección no consecutiva. Suponga que cada salto de este tipo requiera vaciar el cauce, destruyendo todo el procesamiento de instrucciones en marcha, cuando I salga de la última etapa. Modique las Ecuaciones (12.1) y (12.2) (pag 455) de modo que tengan en cuenta estas posibilidades
Guía didáctica: Arquitectura de Computadores
SEGUNDO BIMESTRE
Ejercicio # 12.14 Las Máquinas Motorolas 680x0 incluyen la instrucción <
Concluida la autoevaluación: Si usted alcanzó el 80% de logros puede continuar adelante ¡Felicitaciones!; de lo contrario se recomienda revisar nuevamente la temática para tener una mayor comprensión. ¡Ánimo inténtelo de nuevo!.
Guía didáctica: Arquitectura de Computadores
SOLUCIONARIO
8. Solucionario AUTOEVALUACIÓN 1 Parte A: Preguntas Objetivas 1. 3. 5. 7.
(V) (V) (F). (F)
2. 4. 6. 8.
(F) (F) (V) (V)
Parte B: PROBLEMAS ÿ
Desarrollo ejercicio # 2.3: Para leer un valor de la memoria, la CPU coloca la dirección del valor que quiere en Registro de Dirección de Memoria (MAR). La CPU conrma la línea de control de lectura a la memoria y la ubicación de dirección en el bus de direcciones. El contenido de la memoria y la posición de memoria están almacenados en el Bus de Datos. Estos datos son luego transferidos al Registro Temporal de Memoria (MBR). Para escribir un valor en la memoria, la CPU coloca la dirección del valor que quiere escribir en Registro de Dirección de Memoria (MAR). La CPU también coloca los datos que quiere escribir en el Registro Temporal de Memoria (MBR). La CPU conrma la escritura en la línea de control y las ubicaciones de direcciones en el bus de direcciones y el bus de datos. La Memoria transere los datos en el bus de datos correspondiente a la ubicación de memoria.
ÿ
Desarrollo ejercicio # 2.10: factores
Ic (# de instrucciones)
p (# ciclos de procesador )
Diseño del conjunto de Instrucciones (Arquitectura instrucciones)
X
X
Tecnología del Compilador
X
X
Atributos del Sistema
Implementación del Procesador
m
(# de accesos a memoria)
Parte A: Preguntas Objetivas (V) (F)
X X
AUTOEVALUACIÓN 2 2. 4.
(V) (F)
T
(tempo requerido x procesador)
X
X
Jerarquía de Memoria y de la Caché.
1. 3.
k (tempo ciclo memoria /ciclo procesador )
X
Guía didáctica: Arquitectura de Computadores
5. 7.
(V) (V)
6. 8.
SOLUCIONARIO
(V) (V)
PARTE B ÿ
Desarrollo ejercicio # 3.1 Memoria (hexadecimal): 300: 3005; 301: 5940; 302: 7006
Pasos: 1: 3005 ->IR 2: 3 -> AC 3: 5940 -> IR 4: 3 + 2 = 5 -> AC 5: 7006 -> IR 6: AC -> Device 6
1º ciclo de búsqueda.
1.
Como el programa comienza en la dirección 300, se empieza colocando el PC a 300. A continuación se transere el contenido del PC al registro de dirección de memoria (MAR).
SOLUCIONARIO
Guía didáctica: Arquitectura de Computadores
2.
MAR mantiene la dirección a la MP, mientras la UC genera las señales de control a la MP para que esta ponga el contenido de la posición de memoria (1940) en sus salidas de datos.
3.
El dato leído de la MP (1940) se almacena en el registro buffer de memoria (MBR) por la U.C.
1º ciclo de ejecución.
1.
Se transere el contenido del MBR al registro de instrucción (IR).
2.
Los primeros 4 bits en el IR indican la operación que debe realizarse con los datos. En este caso 0001(1) indica una operación de carga en el acumulador. La palabra de la memoria cuyo contenido se va a cargar en el Ac, se indica mediante los 12 bits inferiores de la instrucción. En este caso la dirección es 940.
3.
La UC decodica el código de operación, según se ha comentado en el punto 2, y realiza las acciones correspondientes. -
Cargar MAR con 940. Generar las señales a la MP para leer el contenido de esa posición de memoria. Cargar el contenido de la posición 940 (0003) en Ac.
Esta instrucción requiere un acceso a la MP por lo que se deben utilizar los registros MAR y MBR. Igualmente ocurre con todos los ciclos de búsqueda. En lo sucesivo no se hará referencia a este proceso. 4.
Se incrementa el PC.
2º ciclo de búsqueda.
1.
Se busca la instrucción de la posición de memoria indicada por el valor actualizado del PC, 301.
2.
Se carga en el IR la instrucción de la palabra 301 (5941). El código de operación es 5, que corresponde a la instrucción de sumar el contenido del Ac con el de la palabra de memoria, indicada por los 12 bits inferiores de la instrucción (941).
2º ciclo de ejecución.
1.
Para ejecutarse la instrucción debe realizarse una operación de lectura de la MP, y sumar el contenido al del Ac.
2.
Al nal del ciclo de ejecución el Ac contiene el valor 3+2(941) = 5.
3.
Se incrementa el PC, por lo que apuntará a la posición 302.
3º ciclo de búsqueda.
1.
Se busca la instrucción en la posición 302.
2.
Se carga el contenido de la posición 302 (2914) en el IR.
Guía didáctica: Arquitectura de Computadores
SOLUCIONARIO
3º ciclo de ejecución.
1.
IR contiene el código de instrucción 2941, en el que los 4 bits de mayor peso (2) corresponden a una instrucción de almacenamiento. Se transere el contenido del Ac a la posición de memoria indicada por los 12 bits de menor peso (941).
2.
El Ac contiene el dato 5, que se transere mediante un acceso externo de escritura a la MP. Al nal del ciclo de ejecución la posición de memoria 941 tendrá el dato 5.
3.
Se incrementa el PC.
En este programa se han necesitado 3 ciclos de instrucción para sumar el contenido de la palabra 940 al de la 941 y almacenar el resultado en la posición 941. ÿ
Desarrollo del ejercicio 3.13 a. T=
T=
1 F
=
1 = 0,2 5MHz
1 = 2x101 = 200 ns 1 5x10
T - 50 =200ns - 50 = 150 ns 5MHz reloj correspondiente a un periodo de reloj de 200ns. La señal tiene una duración de 150ns b.
T de la señal = 150 ns; tras el anco de bajada los datos se mantienen = 20 ns (tiempo de espera) 150 ns + 20 ns = 170 ns
c.
¿Cuántos estados de espera deberían insertarse si la memoria necesita que los datos se mantengan válidos durante al menos 190 ns? Un estado de espera.
AUTOEVALUACIÓN 3 Parte A: Preguntas Objetivas: Conteste V o F según corresponda 1. 3. 5. 7.
(V) (V) (V) (V)
2. 4. 6. 8.
(V) (V) (V) (V)
Guía didáctica: Arquitectura de Computadores
SOLUCIONARIO
Parte B: Problemas A continuación se propone ejercicios tomados del texto básico Capítulo: Memoria Caché. ÿ
Desarrollo ejercicio # 4.2 La dirección de memoria principal es: Etiqueta 14
ÿ
Línea 8
Palabra 4
-
Hay un total de 8 kbytes / 16 bytes = 512 líneas de memoria caché.
-
La Caché consta de 256 de dos líneas cada una. Por ende 8 bits son necesarios para identicar el conjunto de número.
-
La memoria principal de 64 MB, una dirección de 26 bits que se necesita.
-
Consiste en 64 MB / 16 bytes = 222 bloques .
-
Las longitudes de etiquetas es de 14 bits
-
La longitud de palabra 4 bits
Desarrollo ejercicio # 4.21 a) 2,5 ns son necesarios para determinar que se produce un error (fallo) de caché. Luego la línea requerida es leída en la caché. Adicional de 2,5 ns son necesarios para leer la palabra solicitada. T fallo= 2.5 + 50 + (15)(5) + 2.5 = 130 ns
b) Cantidad (T1+ T2). En las condiciones iniciales, usando la ecuación (4.1), el tiempo de acceso medio es:
Ts = H × T 1 + (1 – H) × (T 1 + T 2) = (0.95)(2.5) + (0.05)(130) = 8.875 ns En fallo tenemos: Tfallo = 2,5 + 50 + (31) (5) + 2,5 = 210 ns
Ts = H × T 1 + (1 – H) × (T 1 + T 2) = (0.97)(2.5) + (0.03)(210) = 8.725 ns
Guía didáctica: Arquitectura de Computadores
SOLUCIONARIO
AUTOEVALUACIÓN 4 Parte A: Preguntas Objetivas: Conteste V o F según corresponda 1. 3. 5. 7.
(V) (V) (V) (V)
2. 4. 6. 8.
(F) (V) (V) (V)
Parte B: Problemas A continuación se propone ejercicios tomados del texto básico capítulo: Entrada/Salida. ÿ
Desarrollo ejercicio # 7.2 En el modo de direccionamiento directo, una instrucción puede direccionar hasta 2 16 = 64K puertos. En modo de direccionamiento indirecto, la dirección del puerto se encuentra en una de 16 bits registros, por lo que de nuevo, la instrucción puede direccionar hasta 216 = 64K puertos.
ÿ
Desarrollo ejercicio # 7.7 8 MHz=>el procesador tiene un período de reloj de 0,125 µs, de modo que un ciclo de instrucción 12 × 0.125 = 1.5 µs. Para comprobar el estado de una instrucción de input-type de el registro de estado del dispositivo. Si el dispositivo está listo, una instrucción de output-type es necesaria para presentar datos al controlador de dispositivo. El total es de 3 instrucciones, que requieren 4.5 µs.
AUTOEVALUACIÓN 5 Parte A: Preguntas Objetivas: Conteste V o F según corresponda 1. 3. 5. 7.
(V) (F ) (V) (V)
2. 4. 6. 8.
(V) (V) (V) (V )
Parte B: Problemas A continuación se propone ejercicios tomados del texto básico capítulo: Aritmética del Computador. ÿ
Desarrollo ejercicio # 9.14
Guía didáctica: Arquitectura de Computadores
SOLUCIONARIO
A
Q
Q-1
M
0000
1010
0
0101
Inicial
0000
0101
0
0101
Shift
1011 1101
0101 1010
0 1
0101 0101
A <-A – M Shift
0010 0001
1010 0101
1 0
0101 0101
A <-A + M Shift
1100 1110
0101 0010
0 1
0101 0101
A <-A – M Shift
Desarrollo ejercicio # 9.23
ÿ
a)
-6 110 = 1.10 x 10 2 10000000000000000000000 127 + 2 = 129 = 10000001 1
1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o n g i S
b)
1 o n g i s
1
Mantisa
-1.5 1.1= 1.1 x 10 8 10000000000000000000000 127 + 8 = 135 = 10000111 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Exponente
c)
0
Exponente
Mantisa
384 101 = 1.01 x 10 2 01000000000000000000000
1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o n g i s
Exponente
d)
1/16 = 0,0625 1.0 x 10-4 00000000000000000000000 127 - 4 = 123 = 01111011
Mantisa
Guía didáctica: Arquitectura de Computadores
0
0 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o n g i S
Exponente
e)
1
SOLUCIONARIO
Mantisa
-1/32 = - 0.03125 1.0 x 10-5 00000000000000000000000 127 - 5 = 122 = 01111010
0 1 1 1 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
o n g i S
Exponente
Mantisa
AUTOEVALUACIÓN 6 Parte A: Preguntas Objetivas: Conteste V o F según corresponda 9. 2. 4. 6.
(V) (V) (F) (V)
1. 3. 5. 7.
(V) (F) (V) (F)
Parte B: Problemas A continuación se propone ejercicios tomados del texto básico capítulo: Estructura y Funcionamiento del procesador. ÿ
Desarrollo ejercicio # 12.11
ÿ
Desarrollo ejercicio # 12.14 La comparación de la memoria dirigida por A0 y A1 hace que la BNE condición falsa, porque las cadenas de datos son los mismos. El programa de bucles entre las dos primeras líneas hasta que el contenido de D1 se disminuye por debajo de 0 (a -1). El bucle se termina DBNE. D1 se disminuye de 255 ($ FF) a -1, por lo que el bucle se ejecuta un total de 256 veces.
SOLUCIONARIO
Guía didáctica: Arquitectura de Computadores
Debido a la LongWord el acceso y la post-incremento abordar, los registros A0 y A1 son incrementa en un 4 x $ 100 = $ 400, a $ 4400 y $ 5400, respectivamente. b. La primera comparación hace que la condición BNE verdad, porque la comparación patrones de datos son diferentes. Por lo tanto el bucle DBNE se termina en la primera comparación. El A0 y A1 registros se incrementan a $ 4004 y $5004, respectivamente. D1 todavía contiene $ FF.
GPAP-SCJR/ymtm/15-07-2011/71 jclg/2012-12-10