You are on page 1of 109

Arquitectura de

Computadoras
Ing. Informática
Unidad 1.
• 1.1. Arquitectura básica y sus operaciones.
• 1.2. Tipos de arquitecturas en la evolución del CPU.
• 1.3. Arquitectura multinúcleo.
• 1.4. Multiprocesamiento (multihilos) en multinúcleo.
1.1 ARQUITECTURA BÁSICA Y SUS
OPERACIONES
• El microprocesador tiene una arquitectura parecida a la computadora digital. En otras
palabras, el microprocesador es como la computadora digital porque ambos realizan
cálculos bajo un programa de control. Consiguientemente, la historia de la computadora
digital ayuda a entender el microprocesador. El hizo posible la fabricación de potentes
calculadoras y de muchos otros productos.
• El microprocesador utiliza el mismo tipo de lógica que es usado en la unidad procesadora
central (CPU) de una computadora digital. El microprocesador es algunas veces llamado
unidad microprocesadora (MPU).
• En otras palabras, el microprocesador es una unidad procesadora de datos. En un
microprocesador se puede diferenciar diversas partes:
Tarea: 1 Consultar
Encapsulado
Memoria Cache
Coprocesador matemático
Registro
Registros:
Tipos de operaciones

• son básicamente un tipo de memoria


pequeña con fines especiales que el
micro tiene disponible para algunos usos
particulares. Hay varios grupos de
registros en cada procesador. Un grupo
de registros esta diseñado para control
del programador y hay otros que no son
diseñados para ser controlados por el
procesador pero que la CPU los utiliza
en algunas operaciones, en total son
treinta y dos registros.
Memoria:
Tipos de operaciones

• es el lugar donde el procesador


encuentra las instrucciones de los
programas y sus datos. Tanto los datos
como las instrucciones están
almacenados en memoria, y el
procesador las accede desde allí. La
memoria es una parte interna de la
computadora y su función esencial es
proporcionar un espacio de
almacenamiento para el trabajo en curso
Puertos:

• es la manera en que el procesador se


comunica con el mundo externo. Un
puerto es análogo a una línea de
teléfono. Cualquier parte de la
circuitería de la computadora con la cual
el procesador necesita comunicarse,
tiene asignado un «número de puerto»
que el procesador utiliza como si fuera
un número de teléfono para llamar
circuitos o a partes especiales.
• La información se puede representar como:

• Caracteres que ocupan 1 byte en memoria. También se


les llama caracteres alfanuméricos
MANEJO INTERNO • Números enteros que generalmente ocupan 2 bytes en
memoria (depende del compilador)
DE DATOS • Números reales que ocupan 4 bytes en memoria
• Cadenas conjunto de caracteres.
• Datos Lógicos: Conocidos también como datos booleanos, este tipo
de dato es aquel que sólo admite dos tipos de valores, los que son
verdadero (true) o falso (false). Son usados para la representación
de alternativas (si/no) que se dan según la condición que se
plantee
Cómo se da la información a un computador?

 Se la da en la forma usual escrita que utilizan los seres humanos;


– con ayuda de un alfabeto o conjunto de símbolos, denominados caracteres.

 Categorías de los caracteres:


– Caracteres alfabéticos: son los mayúsculas y minúsculas del abecedario
inglés:
A, B, C, D, E,…, X, Y, Z, a, b, c, d,…, x, y, z
– Caracteres numéricos: están constituidos por las diez cifras decimales:
Ø, 1, 2, 3, 4, 5, 6, 7, 8, 9
 El cero suele marcarse con una raya inclinada (ø) para evitar posibles
confusiones con la O mayúscula.
Cont…

– Caracteres especiales: son los símbolos no incluidos en los


grupos anteriores, entre otros los siguientes:
) ( , * / ; : Ñ ñ = ! ? .  ‘’ & > # < { Ç } SP
 Con SP representamos el carácter o espacio en blanco, tal como el que
separa dos palabras.
– Carácter de control: representan órdenes de control, como el
carácter indicador de fin de línea o el carácter indicador de
sincronización de una transmisión de que se emita un pitido en un
terminal, etc.
 Muchos de estos son generados e insertados por el propio
computador.
– Caracteres Gráficos: son símbolos o módulos con los que se
pueden representar figuras (o iconos) elementales.
Codificación de la Información
 Codificación es una transformación que representa los elementos de un conjunto
mediante los de otro, de forma tal que a cada elemento del primer conjunto le
corresponda un elemento distinto del segundo.

 Ejemplo:
– código de provincia en las matrículas de los coches;
– código de enfermedades definido por la Organización Mundial de la Salud (OMS)
– número de cedula de identidad

 Los códigos se permiten comprimir y estructurar la información


 En el interior de los computadores la información se almacena y se transfiere de
un sitio a otro según un código que utiliza sólo dos valores (un código binario)
representados por 0 y 1.
Cont…

 Codificación y Decodificación
– Al tener que <traducir> toda la información suministrada al computador a ceros y unos, es
necesario establecer una correspondencia entre el conjunto de todos los caracteres
 = { A, B, C, D, …, Z, a, b,…, z, 0, 1, 2, 3, …, 9, /, +, (, ), … }

– y el conjunto binario
 = { 0, 1 } n

 Estos códigos de trasformación se denominan códigos de Entrada / Salida (E/S) o


códigos externos.

– Las operaciones aritméticas con datos numéricos se suelen realizar en una representación más
adecuada para este objetivo que la obtenida con el código de E/S.
MANEJO INTERNO DE DATOS

• Bit (binary digit): Es la unidad mínima de información en


computación. Consiste de dos valores: 0,1
• Byte: Conjunto de 8 bits
• Nibble: Conjunto de 4 bits
• Palabra de Computadora (word): Número de bits que
puede manejar el bus de datos al mismo tiempo. Ej.
Arquitecturas de 8, 16, 32 y 64 bits
MANEJO INTERNO DE DATOS

• La capacidad de la memoria de la computadora se mide en bytes, por


ejemplo
1 KB mil bytes 1000 bytes o 210 = 1024 bytes
1 MB 1000 KB o un millón de bytes 1000 KB o 1 000 000 de bytes
220 = 1,048,576 bytes
1 GB 1000 MB o un millón de KB 1000 MB o 1 000 000 de KB o
230 = 1,073,741,824 bytes
1 TB 1000 GB o un millón de MB 1000 GB o 1 000 000 de MB o
240 = 1,099,511,627,776 bytes
1 PB 1000 TB o un millón de GB 1000 TB o 1 000 000 de GB o
250 = 1,125,899,906,842,624 bytes
1 EB 1000 PB o un millón de TB 1000 PB o 1 000 000 de TB o
260 = 1,152,921,504,606,846,976 bytes

Prefijos: k = kilo = 103, M = mega = 106, G = giga = 109 , T = tera = 1012,


P = peta = 1015 , E = exa = 1018 en sistema decimal
 Código: Ley de correspondencia entre valores de información y
combinaciones de dígitos de un sistema digital utilizadas para
representarlos.
 Codificación: Información -> Código
azul ----> 0 azul ----> 100
verde ----> 1 ó verde ----> 101
rojo ----> 2 rojo ----> 111

 Decodificación: Código -> Información


azul <---- 0 azul <---- 100
verde <---- 1 ó verde <---- 101
rojo <---- 2 rojo <---- 111

 Código binario: Cuando el sistema digital utilizado tiene sólo 2


estados (0,1).
Sistemas de numeración usuales en informática

 Los computadores suelen efectuar las operaciones aritméticas


utilizando una representación para los datos numéricos basada en el
sistema de numeración base dos (sistema binario).

 También se utilizan los sistemas de numeración, preferentemente el


octal y hexadecimal, para obtener códigos intermedios.

 Un número expresado en uno de estos dos códigos puede


transformarse directa y fácilmente a binario y viceversa.
– Por lo que a veces se utilizan como paso intermedio en las
transformaciones de decimal a binario y viceversa.
Representación posicional de los números

 Un sistema de numeración en base b utiliza para representar los


números un alfabeto compuesto por b símbolos o cifras.
 Todo número se expresa por un conjunto de cifras, contribuyendo cada
una e ellas con un valor que depende de:

a) la cifra en sí, y
b) la posición que ocupe dentro del número.

 En el sistema de numeración decimal (sistema en base 10):


– b = 10 y el alfabeto está constituido por diez símbolos o cifras decimales:

{0,1,2,3,4,5,6,7,8,9}
EJEMPLOS

 por ejemplo, el número 3278.52 puede obtenerse como suma de:

 se verifica que:

3278.52 = 3*103 + 2*102 + 7*101 + 8*100 + 5*10-1 + 2*10-2


Representación de un número en una base b:
Forma abreviada:

N = … n4 n3 n2 n1 n0 . n-1 n-2 n-3 …

Valor:

N = … n4 * b4 + n3 * b3 + n2 * b2 + n1 * b1 + n0 * b0 + n-1 * b-1 …

 Para representar un número:


– Resulta más cómodo que los símbolos (cifras) del alfabeto o la base de numeración
sean los menos posibles, pero ,
– Cuanto menos es la base, mayor es el número de cifras que se necesitan para
representar una cantidad dada.
MANEJO INTERNO DE DATOS

• Enteros
• Conversión de base 10 (decimal) a base n
• Conversión de enteros decimales a enteros binarios
• Conversión de enteros decimales a enteros octales
• Conversión de enteros decimales a enteros hexadecimales

• Conversión de base m a base 10


• Conversión de binario a decimal
• Conversión de octal a decimal
• Conversión de hexadecimal a decimal

• Conversión de base m a base n


• Conversión de binario a octal y octal a binario
• Conversión de binario a hexadecimal y hexadecimal a binario
• Conversión de hexadecimal a octal y octal a hexadecimal
MANEJO INTERNO DE DATOS

Octal Binario Hexadecimal Binario


0 000 0 0000
1 001 1 0001
2 010 2 0010
3 011 3 0011
4 100 4 0100
5 101 5 0101
6 110 6 0110
7 111 7 0111
8 1000
9 1001
A 1010
B 1011
C 1100
D 1101
E 1110
F 1111
MANEJO INTERNO DE DATOS

• Caracteres: permiten representar texto en la computadora; para ello se


han establecido el uso de varios códigos que agrupan la representación
de sus símbolos. Los más comunes son:
• ASCII (American Standard Code for Information Interchange — Código
Estadounidense Estándar para el Intercambio de Información) es un código de
caracteres basado en el alfabeto latino tal como se usa en el inglés moderno y en
otras lenguas occidentales.
MANEJO INTERNO DE DATOS

• Caracteres
• EBCDIC (Extended Binary Coded Decimal Interchange Code) es
un código estándar de 8 bits usado por computadoras mainframe
IBM. Representa caracteres alfanuméricos, controles y signos de
puntuación.
MANEJO INTERNO DE DATOS

• Caracteres
• Unicode es un estándar industrial cuyo objetivo es proporcionar el medio por
el cual un texto en cualquier forma e idioma pueda ser codificado para manejo
de la información. (Se asigna un código único a cada carácter)
• Es el esquema de codificación de caracteres más extenso y completo, siendo
el más dominante en la internacionalización y adaptación local del software.
• Se han definido más de 90.000 caracteres codificados, sin embargo ya no es
de 8 bits, ya que usa grupos de bytes para representar los caracteres para los
alfabetos de muchos de los lenguajes del mundo
MANEJO INTERNO DE DATOS

• Caracteres
• Unicode
• Existen varias codificaciones, la más común es la UTF-8
MANEJO INTERNO DE DATOS

• Enteros

Parte alta Parte baja


(bits o cifras (bits o cifras
más menos
significactivos) significactivos)
MANEJO INTERNO DE DATOS

• Enteros
• Sin Signo (magnitud no signada)
• Con signo (magnitud signada)

• ¿Cuántos posibles valores tendrá s = bit de signo


c/u?
MANEJO INTERNO DE DATOS

• Enteros
• Sistemas de representación numérica
o de numeración posicional
• Decimal o base 10
• Binario o base 2
• Octal o base 8
• Hexadecimal o base 16
Conversión de Decimal a Binario

 Se aplica el método de las “divisiones y multiplicaciones ”


sucesivas con la base como divisor y multiplicador (b = 2).
 Ejemplo: 26.1875 )10 = 11010.0011 )2
 Para la parte entera:

 Para la parte fraccionaria:


Conversión de Binario a Decimal

 Se desarrolla la representación binaria (con b=2) y se opera el


polinomio en decimal.
 Ejemplos:

110100)2 = 1·25 + 1·2 4 + 0·2 3 + 1·2 2 + 0·2 1 + 0·2 0 = 52


)10

10100.001)2 = 1·2 4 + 0·23 + 1·22 + 0·21 + 0·20 + 0·2- 1


+ 0·2- 2 +1·2-3 = 20.125 )10
 Realmente basta con sumar los pesos (2i ) de las posiciones (i)
en las que hay un 1.
1.2 TIPOS DE
ARQUITECTURAS Y
EVOLUCION DEL CPU
ARQUITECTURAS CISC

• La microprogramación es una característica importante


y esencial de casi todas las arquitecturas CISC.
• Como por ejemplo:
• Intel 8086, 8088, 80286, 80386, 80486.
• Motorola 68000, 68010, 68020, 68030, 6840.
• La microprogramación significa que cada instrucción de máquina es
interpretada por un microprograma localizado en una memoria en el
circuito integrado del procesador.
• En la década de los sesentas la micropramación, por sus características, era
la técnica más apropiada para las tecnologías de memorias existentes en
esa época y permitía desarrollar también procesadores con compatibilidad
ascendente. En consecuencia, los procesadores se dotaron de poderosos
conjuntos de instrucciones.
• Las instrucciones compuestas son decodificadas internamente y ejecutadas
con una serie de microinstrucciones almacenadas en una ROM interna.
Para esto se requieren de varios ciclos de reloj (al menos uno por
microinstrucción).
ARQUITECTURAS RISC

• Buscando aumentar la velocidad del procesamiento


se descubrió en base a experimentos que, con una
determinada arquitectura de base, la ejecución de
programas compilados directamente con
microinstrucciones y residentes en memoria externa
al circuito integrado resultaban ser mas eficientes,
gracias a que el tiempo de acceso de las memorias se
fue decrementando conforme se mejoraba su
tecnología de encapsulado.
• Debido a que se tiene un conjunto de instrucciones
simplificado, éstas se pueden implantar por
hardware directamente en la CPU, lo cual elimina el
microcódigo y la necesidad de decodificar
instrucciones complejas.
• En investigaciones hechas a mediados de la década de los setentas, con respecto a la
frecuencia de utilización de una instrucción en un CISC y al tiempo para su ejecución, se
observó lo siguiente:
• - Alrededor del 20% de las instrucciones ocupa el 80% del tiempo total de ejecución de un
programa.
• - Existen secuencias de instrucciones simples que obtienen el mismo resultado que
secuencias complejas predeterminadas, pero requieren tiempos de ejecución más cortos.
• Las características esenciales de una arquitectura RISC pueden resumirse como sigue:
• Estos microprocesadores siguen tomando como base el esquema moderno de Von
Neumann.
• Las instrucciones, aunque con otras características, siguen divididas en tres grupos:
• a) Transferencia.
• b) Operaciones.
• c) Control de flujo.
• Reducción del conjunto de instrucciones a instrucciones básicas simples, con la que
pueden implantarse todas las operaciones complejas.
• Arquitectura del tipo load-store (carga y almacena). Las únicas instrucciones que tienen
acceso a la memoria son 'load' y 'store'; registro a registro, con un menor número de
acceso a memoria.
• Casi todas las instrucciones pueden ejecutarse dentro de un ciclo de reloj. Con un control
implantado por hardware (con un diseño del tipo load-store), casi todas las instrucciones
se pueden ejecutar cada ciclo de reloj, base importante para la reorganización de la
ejecución de instrucciones por medio de un compilador.
• El hecho de que la estructura simple de un procesador RISC conduzca a una notable
reducción de la superficie del circuito integrado, se aprovecha con frecuencia para ubicar
en el mismo, funciones adicionales:
• Unidad para el procesamiento aritmético de punto flotante.
• Unidad de administración de memoria.
• Funciones de control de memoria cache.
• Implantación de un conjunto de registros múltiples.

Tarea: Consultar cual es la función de cada uno!!


1.3 ARQUITECTURA
MULTINUCLEO
Arquitectura multinucleo

• HISTORIA
• Como historia se puede decir que el primer procesador multinúcleo en el mercado fue el
IBM Power 4 en el año 2000. Una alternativa a los procesadores multinúcleo son los
sistemas multiprocesadores, que consisten en una placa madre que podía soportar desde 2
a más procesadores. El rendimiento es bastante bueno, pero también es bastante caro.
DESCRIPCION
• Un microprocesador multinúcleo es aquel que combina dos o más procesadores
independientes en un sólo circuito integrado. Un dispositivo doble núcleo contiene
solamente dos microprocesadores independientes. En general, los microprocesadores
multinúcleo permiten que una computadora trabaje con Multiprocesamiento, es decir
procesamiento en simultáneo con dos o más procesadores. Por otro lado, la tecnología de
doble núcleo mejora el rendimiento de los entornos de trabajo multitarea y las
aplicaciones con múltiples subprocesos. Por ejemplo, permite que aplicaciones
fundamentales como antivirus o antiespías se ejecuten al mismo tiempo que aplicaciones
empresariales con un impacto mínimo sobre el rendimiento del sistema.
• Durante agosto de 2007 comenzaron a aparecer los procesadores de cuádruple núcleo,
encabezados por el lanzamiento del Core 2 Quad de Intel. En el caso de las computadoras
portátiles.
CLASES DE PROCESADORES MULTINUCLEOS

• Antes de comenzar a nombrar los diferentes procesadores multinucleo definieremos lo


que es HyperThreading.
• HyperThreading: esta tecnología fue creada por Intel, para los procesadores Pentium 4
más avanzados. El Hyperthreading hace que el procesador funcione como si fuera dos
procesadores. Esto fue hecho para que tenga la posibilidad de trabajar de forma multihilo
(multithread) real, es decir pueda ejecutar muchos hilos simultáneamente.

• Un procesador con la tecnología Hyperthreading tiene un 5% más de transistores que el


mismo procesador sin esa tecnología.
• Clases de procesadores multinucleo • Clases de procesadores multinucleo
INTEL: AMD:
 PentiPentium D están conformados por
dos procesadores Pentium 4 Prescott sin
Hyperthreadingum.  Athlon 64 X2

 Core Duo  Opteron X2

 Core 2 Duo  Turion X2 (Portatiles)

 Core2Quad
• FUTURO DE LOS PROCESADORES
MULTINÚCLEO ---Investigación---
1.4 MULTIPROCESAMIENTO Y MULTINUCLEO

• Multiprocesamiento • . Los programas típicamente se escriben


asumiendo que sus datos son
• Multiprocesamiento o multiproceso es incorruptibles. Sin embargo, si otra copia
tradicionalmente conocido como el uso de del programa se ejecuta en otro
múltiples procesos concurrentes en un procesador, las dos copias pueden
sistema en lugar de un único proceso en un interferir entre sí intentando ambas leer o
instante determinado. Como la multitarea escribir su estado al mismo tiempo. Para
que permite a múltiples procesos evitar este problema se usa una variedad
compartir una única CPU, múltiples CPUs de técnicas de programación incluyendo
pueden ser utilizados para ejecutar semáforos y otras comprobaciones y
múltiples hilos dentro de un único proceso. bloqueos que permiten a una sola copia del
programa cambiar de forma exclusiva
• El multiproceso para tareas generales es, a ciertos valores.
menudo, bastante difícil de conseguir
debido a que puede haber varios
programas manejando datos internos
(conocido como estado o contexto) a la
vez
Multinucleo

• Los procesadores multi núcleo son chips independientes que contienen dos o más
procesadores o núcleos de ejecución distintos en el mismo circuito integrado. Aunque son
independientes, su construcción les permite compartir tareas de forma interdependiente.
• Y, ¿eso qué significa para el usuario? Cada día que pasa se desarrollan programas que
envían múltiples instrucciones que se tienen que procesar simultáneamente.
• Estos programas toman miles de millones de decisiones en un segundo, especialmente
mientras se ejecutan programas exigentes como reproducción de vídeo de alta definición o
programas de ingeniería.
• Los procesadores Intel Core 2 Duo incorporan dos núcleos de ejecución en un mismo
paquete que ofrece, con el software adecuado, la ejecución totalmente paralela de varios
subprocesos. Esto permite que cada núcleo funcione a una frecuencia menor, dividiendo la
potencia normalmente asignada a un único núcleo.
• El resultado para el usuario no es sólo un procesamiento más rápido. Es… bueno, ¡que tu
foto ya está lista! Mientras chateas. Y has imprimido un diseño arquitectónico.
• La tecnología de cuatro núcleos consiste en un único procesador que cuenta con cuatro
núcleos. Piensa que son cuatro cerebros que están pensando al mismo tiempo pero que
pueden trabajar juntos o por separado en una tarea grande, lo que se traduce en unos
resultados más rápidos y eficientes.
2. Memorias
2 2.1. Organización básica.
2.2. Acceso a los datos y temporización.
2.3. Tipos de memorias.
Sistemas de computación personal
Gabinetes y fuentes de alimentación
El gabinete de una computadora de escritorio contiene los componentes internos, como la
fuente de alimentación, la placa madre, la unidad de procesamiento central (CPU), la
memoria, las unidades de disco y distintas tarjetas de adaptador.
Por lo general, los gabinetes están hechos de plástico, acero o aluminio, y proporcionan la
estructura para el soporte, la protección y la refrigeración de los componentes internos.
Fuentes de alimentación
La electricidad proveniente de los tomacorrientes es de tipo corriente alterna (CA). Sin
embargo, todos los componentes internos de una computadora requieren alimentación de
corriente continua (CC). Para obtener alimentación de CC, las computadoras utilizan una
fuente de alimentación, para convertir la alimentación de CA a un voltaje inferior de
alimentación de CC.
Una fuente de alimentación incluye varios conectores distintos, como se muestra en la
Figura 2. Estos conectores se utilizan para alimentar los distintos componentes internos,
como la placa madre y las unidades de disco.
Comúnmente, las especificaciones de las fuentes de alimentación se expresan en vatios (W).
Por lo general, las computadoras usan fuentes de alimentación cuya potencia de salida varía
entre los 250 W y los 800 W. No obstante, algunas computadoras necesitan fuentes de
alimentación con una potencia de 1200 W o más.
Componentes internos de una pc

Placa madre
Es la médula de la computadora ,una placa madre es una placa de circuito impreso (PCB)
que contiene los buses, o las rutas eléctricas, que interconectan los componentes
electrónicos. Estos componentes se pueden soldar directamente a la placa madre o se pueden
agregar mediante sockets, ranuras de expansión y puertos.
Las siguientes son algunas de las conexiones en la placa madre en las que pueden agregarse componentes de
computación.
Unidad de procesamiento central (CPU): Se considera el cerebro de la computadora.
Memoria de acceso aleatorio (RAM, Random Access Memory): Esta es una ubicación temporal para
almacenar datos y aplicaciones.
Ranuras de expansión: Brindan las ubicaciones para conectar componentes adicionales.
Conjunto de chips: Consta de los circuitos integrados en la placa madre que controlan la manera en que el
hardware del sistema interactúa con la CPU y la placa madre. Además, establece cuánta memoria se puede
agregar a una placa madre y el tipo de conectores de esta placa.
Chip de sistema básico de entrada y salida (BIOS) y chip de Unified Extensible Firmware Interface
(UEFI): El BIOS se usa para ayudar a arrancar la computadora y administrar el flujo de datos entre la
unidad de disco duro, la tarjeta de video, el teclado, el mouse y otros componentes. Recientemente, por
UEFI ha mejorado el BIOS. UEFI especifica una interfaz de software diferente para los servicios de
arranque y de tiempo de ejecución, pero aún depende del BIOS tradicional para la configuración del sistema,
la prueba automática de encendido (POST) y la configuración.
Sistemas de refrigeración
El flujo de corriente entre los componentes electrónicos genera calor. Los componentes de la
PC funcionan mejor cuando se los mantiene refrigerados. Si no se elimina el calor, es
posible que la computadora funcione más lentamente. Si se genera mucho calor, la
computadora puede bloquearse o pueden dañarse los componentes. Por lo tanto, es
fundamental que las computadoras se mantengan ventiladas.
ROM

Un chip de computación esencial es el chip de memoria de solo lectura (Read-Only


Memory, ROM). Los chips de ROM se ubican en la placa madre y otras placas de circuitos,
y contienen instrucciones a las que la CPU puede acceder de forma directa. Las
instrucciones almacenadas en la ROM incluyen instrucciones de operaciones básicas como
arrancar la computadora y cargar el sistema operativo.
RAM

La RAM es el área de almacenamiento de trabajo temporal de datos y programas a los que


accede la CPU. Al contrario de la ROM, la RAM es una memoria volátil, lo cual significa
que el contenido se borra cuando la computadora se apaga.
Agregar más RAM en una computadora mejora el rendimiento del sistema. Por ejemplo,
más RAM aumenta la capacidad de memoria de la computadora para mantener y procesar
programas y archivos.
Tarjetas de adaptador y ranuras de expansión
Las tarjetas de adaptador aumentan la funcionalidad de una PC al agregar controladores para dispositivos específicos o al
reemplazar los puertos que no funcionan correctamente.

Existen varias tarjetas de adaptador disponibles que se suelen utilizar para expandir y personalizar la funcionalidad de una
computadora:

Adaptador de sonido: Los adaptadores de sonido proporcionan la funcionalidad de audio.

Tarjeta de interfaz de red (Network Interface Card, NIC): Conecta una computadora a una red mediante un cable de red.

NIC inalámbrica: Conecta una computadora a una red mediante radiofrecuencias.

Adaptador de video: Los adaptadores de video proporcionan funcionalidad de video.

Tarjeta de captura: Las tarjetas de captura envían una señal de video a una computadora para que se pueda grabar en el disco duro
de la computadora con un software de captura de video.

Tarjeta sintonizadora de TV: Proporciona la capacidad de mirar y grabar señales de televisión en una computadora conectando
una televisión de cable, un satélite o una antena a la tarjeta sintonizadora instalada.

Puerto de bus serial universal (USB, Universal Serial Bus): Conecta una computadora a los dispositivos periféricos.

Tarjeta Thunderbolt: Conecta una computadora a los dispositivos periféricos.

Matriz redundante de discos independientes (RAID): Un adaptador de RAID se conecta a varias unidades de disco duro (HDD)
o unidades de estado sólido (SSD), y hace que trabajen como una unidad lógica.
Tarjetas de adaptador y ranuras de expansión
Las tarjetas de adaptador aumentan la funcionalidad de una PC al agregar controladores para dispositivos específicos o al
reemplazar los puertos que no funcionan correctamente.

Existen varias tarjetas de adaptador disponibles que se suelen utilizar para expandir y personalizar la funcionalidad de una
computadora:

Adaptador de sonido: Los adaptadores de sonido proporcionan la funcionalidad de audio.

Tarjeta de interfaz de red (Network Interface Card, NIC): Conecta una computadora a una red mediante un cable de red.

NIC inalámbrica: Conecta una computadora a una red mediante radiofrecuencias.

Adaptador de video: Los adaptadores de video proporcionan funcionalidad de video.

Tarjeta de captura: Las tarjetas de captura envían una señal de video a una computadora para que se pueda grabar en el disco duro
de la computadora con un software de captura de video.

Tarjeta sintonizadora de TV: Proporciona la capacidad de mirar y grabar señales de televisión en una computadora conectando
una televisión de cable, un satélite o una antena a la tarjeta sintonizadora instalada.

Puerto de bus serial universal (USB, Universal Serial Bus): Conecta una computadora a los dispositivos periféricos.

Tarjeta Thunderbolt: Conecta una computadora a los dispositivos periféricos.

Matriz redundante de discos independientes (RAID): Un adaptador de RAID se conecta a varias unidades de disco duro (HDD)
o unidades de estado sólido (SSD), y hace que trabajen como una unidad lógica.
PCI: es un bus estándar de computadoras para conectar dispositivos periféricos
directamente a la placa base.
Mini-PCI: es una versión mas pequeña de la PCI para las computadoras portátiles.
PCI-X: es una versión actualizada del PCI, utiliza un bus de 32 bits con un ancho de banda
mayor al de la PCI. Puede funcionar hasta 4 veces mas rápido que el PCI.
PCI Express: es un desarrollo del bus PCI que usa los conceptos de programación y los
estándares de comunicación existentes, pero se basa en un sistema de comunicación serie
mucho más rápido.
Dispositivos de almacenamiento

Las unidades de almacenamiento, como las que se muestran en la Figura 1, leen o escriben
información en medios de almacenamiento magnéticos, ópticos o semiconductores. La
unidad se puede utilizar para almacenar datos de forma permanente o para recuperar
información de un disco de medios.
Unidad de disco duro (HDD): Las unidades de disco duro son dispositivos de discos
magnéticos tradicionales que se han utilizado durante años. Su capacidad de
almacenamiento va de gigabytes (GB) a terabytes (TB). Su velocidad se mide en
revoluciones por minuto (RPM).
Unidad de estado sólido (SSD): Esta unidad utiliza chips de memoria flash no volátiles para almacenar datos. Esto
significa que es más rápida que las HDD magnéticas.

Unidad híbrida: También se denomina unidad híbrida de estado sólido (Solid State Hybrid Drive, SSHD) y es una
unidad intermedia entre una HDD magnética y una SSD.
Unidades ópticas: Utilizan láseres para leer los datos almacenados en los medios ópticos.

Unidad de memoria flash externa: La unidad de memoria flash externa es un dispositivo de memoria USB que se
conecta a un puerto USB.
Puertos y cables externos

Un puerto de video conecta un monitor a una PC mediante un cable. Los puertos de video y los
cables de monitor transfieren señales analógicas, señales digitales o ambas. Las PC son
dispositivos digitales que producen señales digitales.
Interfaz visual digital (DVI, Digital Visual Interface): Por lo general, el conector DVI es
blanco y consta de 24 pines (tres filas de ocho contactos) para las señales digitales, 4 pines para
las señales analógicas y 1 pin plano denominado barra de conexión a tierra. Específicamente, la
interfaz DVI-D solo maneja señales digitales, mientras que la interfaz DVI-A solo maneja señales
analógicas. DVI utiliza una interfaz de doble enlace que crea dos grupos de canales de datos que
pueden transmitir más de 10 Gb/s de la información de video digital.
Conector de DisplayPort: DisplayPort es una tecnología de interfaz que está diseñada para
conectar PC de alta gama con capacidad para gráficos y pantallas, así como equipos de cine en
casa y pantallas. El conector consta de 20 pines y se puede utilizar para audio, video o ambos.
DisplayPort admite velocidades de datos de video de hasta 8,64 Gb/s.
Mini DisplayPort: Una versión más pequeña que el conector de DisplayPort se denomina Mini
DisplayPort. Se utiliza en las implementaciones de Thunderbolt 1 y Thunderbolt 2.
HDMI: La interfaz multimedia de alta definición fue desarrollada específicamente para los
televisores de alta definición. Sin embargo, sus funciones digitales también lo convierten en
un buen candidato para las computadoras. Existen dos tipos comunes de cables HDMI. El
cable HDMI de tamaño normal tipo A es el cable estándar que se utiliza para conectar los
dispositivos de video. Las HDMI de tipo C se utilizan para conectar computadoras portátiles
y dispositivos portátiles como tablets. El tipo de conector C que se muestra en la Figura 3 es
más pequeño que el tipo de conector A y tiene 19 pines.
Conector VGA: (Figura 5) Es un conector para video analógico. Tiene 3 filas y 15 pines.
También se conoce como conector DE-15 o HD-15.
Conectores RCA: Los conectores RCA cuentan con un conector que tiene un aro a su
alrededor y se utilizan para transmitir audio o video. Los conectores RCA a menudo se
encuentran en grupos de tres, donde el conector amarillo transmite video y un par de
conectores rojo y blanco transmite los canales derecho e izquierdo de audio.
Conector BNC: Los conectores BNC conectan cables coaxiales a dispositivos mediante un
esquema de conexión de un cuarto de vuelta. Los conectores BNC se utilizan con audio o
video analógico o digital.
Din-6: Este conector tiene 6 pines y se suele utilizar para audio y video analógico, y para la
alimentación en aplicaciones de cámaras de seguridad.
Otros puertos y cables
Puertos PS/2: Un puerto PS/2 conecta un teclado o un mouse a una computadora. El puerto PS/2 tiene un
conector mini-DIN hembra de 6 pines. Los conectores para el teclado y el mouse a menudo son de colores
diferentes. Si los puertos no están codificados por colores, busque una pequeña figura de un mouse o un
teclado junto a cada puerto.
Puertos de audio: Los puertos de audio conectan dispositivos de audio a la computadora. Los puertos
analógicos suelen incluir una línea en el puerto para conectar a una fuente externa (p. ej., un sistema
estéreo), un puerto de micrófono y una línea a través de puertos para conectar altavoces o auriculares. La
entrada digital y los puertos de salida también están disponibles para conectar las fuentes digitales y los
dispositivos de salida. Estos conectores y cables transfieren pulsaciones de luz mediante cables de fibra
óptica.
Puerto de juegos/MIDI: Se conecta a un joystick o a un dispositivo con interfaz MIDI.
Puerto de red Ethernet: Se trata de un puerto de red que anteriormente se conocía como puerto RJ-45. Un
puerto de red Ethernet tiene 8 pines y conecta los dispositivos a una red. La velocidad de conexión depende
del tipo de puerto de red. Puertos y cables USB: El bus universal en serie (USB, Universal Serial Bus) es
una interfaz estándar que conecta dispositivos periféricos a una computadora.
Dispositivos de E/S

Los dispositivos de entrada introducen datos o instrucciones en una PC.


Los siguientes son ejemplos de dispositivos de entrada:
 Mouse y teclados: Estos son los dos dispositivos de entrada que se utilizan con más frecuencia. El teclado se
utiliza para introducir texto mientras que el mouse se utiliza para navegar la interfaz gráfica de usuario (GUI).
Las computadoras portátiles también tienen paneles táctiles para proporcionar las funciones integradas del
mouse.
 Pantallas táctiles: Estos dispositivos de entrada tienen pantallas táctiles o sensibles a la presión. La PC recibe
instrucciones específicas según el lugar de la pantalla que toque el usuario.
 Joysticks y controladores para juegos: Estos son dispositivos de entrada que se usan para jugar juegos. Los
controladores para juegos permiten al jugador controlar el movimiento y la vista con pequeños joysticks y
varios botones. Muchos controladores para juegos también tienen gatillos que registran la cantidad de presión
que ejerce el jugador. Los joysticks se utilizan a menudo para jugar juegos de simulación de vuelo.
 Cámaras digitales y cámaras de video digitales: estos dispositivos de entrada capturan las imágenes que
pueden almacenarse, mostrarse, imprimirse o alterarse. Las cámaras web independientes o integradas capturan
imágenes en tiempo real.
 Escáneres: Estos dispositivos digitalizan imágenes o documentos. La digitalización de la imagen se
almacena como un archivo que se puede mostrar, imprimir o modificar. Un lector de código de barras es
un tipo de escáner que lee las barras del código de producto universal (UPC, Universal Product Code).
Este tipo se utiliza ampliamente para registrar información de precios e inventario.

 Digitalizadores: Este dispositivo permite a un diseñador o un artista crear planos, imágenes u otros
trabajos artísticos usando una herramienta similar a un lápiz, llamada stylus, sobre una superficie que
detecta dónde la toca la punta del stylus. Algunos digitalizadores cuentan con más de una superficie o
sensor que le permiten al usuario crear modelos 3D al realizar acciones con el lápiz en el aire.

 Dispositivos de identificación biométrica: Estos dispositivos de entrada identifican a un usuario basado


en función de una característica física única, como sus huellas digitales o su voz. Ahora, muchas
computadoras portátiles cuentan con lectores de huellas digitales para automatizar el inicio de sesión en el
dispositivo.

 Lectores de tarjetas inteligentes: Estos dispositivos de entrada se utilizan en una computadora para
autenticar al usuario. Una tarjeta inteligente puede tener el tamaño de una tarjeta de crédito con un
microprocesador integrado que se encuentra generalmente en un relleno de contacto dorado en un lado de
la tarjeta.
Los dispositivos de salida le presentan información
de una PC al usuario.
Los monitores y proyectores son dispositivos de salida principales de una PC. Existen dos tipos de monitores. La diferencia más
importante entre estos tipos de monitores es la tecnología que se utiliza para crear una imagen:

 LCD: La pantalla de cristal líquido (LCD, liquid crystal display) se suele utilizar en los monitores de pantalla plana y en las
computadoras portátiles. Consta de dos filtros polarizadores con una solución de cristal líquido entre ambos. Una corriente
electrónica alinea los cristales a fin de permitir o impedir el paso de luz.

 LED: Las pantallas de diodos emisores de luz (LED, Light-Emitting Diode) son pantallas de LCD que utilizan iluminación de
fondo con LED para iluminar la pantalla. Los LED consumen menos energía que la iluminación de fondo de la pantalla de LCD
estándar y permiten que el panel sea más delgado, liviano y brillante, y que tenga un mejor contraste.

 OLED: Las pantallas de LED orgánicos (OLED, organic LED) utilizan una capa de material orgánico que responde a estímulos
eléctricos para emitir luz. Este proceso permite que cada pixel se ilumine de forma individual, lo que tiene como resultado
niveles de negro mucho más profundos que los de las pantallas de LED. Las pantallas de OLED también son más delgadas y
livianas que las pantallas de LED.

 Plasma: Las pantallas de plasma son otro tipo de monitor de pantalla plana que pueden lograr altos niveles de brillo, niveles
profundos de negro y una amplia gama de colores. Las pantallas de plasma se pueden fabricar en tamaños de hasta 150 pulgadas
(381 cm) o más. Las pantallas de plasma reciben su nombre del uso de diminutas celdas de gas ionizado que se iluminan cuando
reciben un estímulo eléctrico.

 DLP: El procesamiento digital de luz (DLP, Digital Light Processing) es una tecnología de proyección. Los proyectores DLP
utilizan una rueda de colores giratoria con un conjunto de espejos controlado por un microprocesador denominado “dispositivo
digital de microespejos” (DMD, digital micromirror device).
Otros dispositivos de salida
2.2 Acceso a los datos
y temporización.
Módulos de memoria
• La velocidad de la memoria tiene impacto directo en cuántos datos puede procesar un
procesador en un período de tiempo determinado. Al aumentar la velocidad del
procesador, la velocidad de la memoria también debe aumentar. El rendimiento de la
memoria también se ha mejorado con tecnología multicanal. La RAM estándar es de canal
único, lo que significa que todas las ranuras de RAM se direccionan al mismo tiempo. La
RAM de canal doble agrega un segundo canal para poder acceder a un segundo módulo al
mismo tiempo. La tecnología de canal triple proporciona otro canal para poder acceder a
tres módulos al mismo tiempo.
• La memoria más rápida generalmente es la RAM estática (SRAM) que es una caché para
almacenar los datos utilizados más recientes y las instrucciones de la CPU. La SRAM le
proporciona al procesador un acceso más rápido a los datos que la RAM dinámica
(DRAM, dynamic RAM), o memoria principal, que tarda más en recuperarlos.
DMA
• Para afrontar la necesidad de acceso de datos, se definió un canal de acceso directo a la memoria denominada
DMA (Direct Memory Access) por sus siglas en ingles.
• El canal DMA es un acceso a una ubicación y una “dirección de fin” hace referencia. Este método permite
que un periférico utilice canales especiales que le den acceso directo a la memoria, sin involucrar al
microprocesador. Esto permite que el microprocesador se libre de la necesidad de hacer este trabajo.
• Los canales DMA se asignan de la siguiente forma:
• DMA0=libre
• DMA1=(tarjeta de sonido)/libre
• DMA2=controlador de disquetes
• DMA3=puerto paralelo
• DMA4=controlador de acceso directo a la memoria.
• DMA5=(tarjeta de sonido)/libre
• DMA6=(SCSI)/libre
• DMA7=disponible
ACCESO A MEMORIA Y EL RELOJ DEL SISTEMA

• El acceso a memoria es probablemente la actividad más común de un CPU, se trata en


definitiva de una operación sincronizada al reloj del sistema, esto es, la lectura o escritura
no puede ser más rápida que un ciclo de reloj, de hecho en muchos sistemas 80x86 el
acceso a memoria toma varios ciclos de reloj. El tiempo de acceso a memoria es el
número de ciclos de reloj que el sistema necesita para acceder a una ubicación de
memoria, que este es un valor importante ya que a mayor número de ciclos menor
desempeño. El tiempo de acceso a memoria es la cantidad de tiempo que transcurre desde
que se solicita una operación sea de lectura o escritura y el tiempo en que la memoria
completa dicha operación.

• En procesadores de 5Mhz (80x86) el tiempo de acceso a memoria es de 800


nanosegundos.
DIRECCIONAMIENTO DE MEMORIA EN
TIEMPOREAL.
• El modo real (también llamado modo de dirección real en los manuales de Intel) es un
modo de operación del 80286 y posteriores CPUs compatibles de la arquitectura x86. El
modo real está caracterizado por 20 bits de espacio de direcciones
segmentado(significando que solamente se puede direccionar 1 MB de memoria), acceso
directo del software a las rutinas del BIOS y el hardware periférico, y no tiene conceptos
de protección de memoria o multitarea a nivel de hardware. Todos los CPUs x86 de las
series del 80286 y posteriores empiezan en modo real al encenderse el computador; los
CPUs 80186 y anteriores tenían solo un modo operacional, que era equivalente al modo
real en chips posteriores.
Temporización

• El reloj de una computadora se utiliza para dos funciones principales:1. Para sincronizar las
diversas operaciones que realizan los diferentes subcomponentes del sistema informático.2.
Para saber la hora. El reloj físicamente es un circuito integrado que emite una cantidad de
pulsos por segundo, de manera constante. Al número de pulsos que emite el reloj cada
segundo se llama Frecuencia del Reloj. La frecuencia del reloj se mide en Ciclos por
Segundo, también llamados Hertzios, siendo cada ciclo un pulso del reloj. Como la
frecuencia del reloj es de varios millones de pulsos por segundo se expresa habitualmente en
Megaherzios. El reloj marca la velocidad de proceso de la computadora generando una señal
periódica que es utilizada por todos los componentes del sistema informático para sincronizar
y coordinar las actividades operativas, evitando el que un componente maneje unos datos
• incorrectamente o que la velocidad de transmisión de datos entre dos componentes sea
distinta.
Acceso a memoria y el reloj del sistema

• El acceso a memoria es probablemente la actividad más común de un CPU, se trata en


definitiva de una operación sincronizada al reloj del sistema, esto es, la lectura o escritura
no puede ser más rápida que un ciclo de reloj, de hecho, en muchos sistemas80x86 el
acceso a memoria toma varios ciclos de reloj. El tiempo de acceso a memoria es el
número de ciclos de reloj que el sistema necesita para acceder a una ubicación de
memoria, este es un valor importante ya que a mayor número de ciclos menor desempeño.
El tiempo de acceso a memoria es la cantidad de tiempo que transcurre desde que se
solicita una operación (sea de lectura ó escritura) y el tiempo en que la memoria completa
dicha operación. En procesadores de 5 Mhz (80x88, 80x86) el tiempo de acceso a
memoria es de aproximadamente 800 ns. (nanosegundos), en cambio, un procesador de 50
Mhz (80x486) el tiempo es de aproximadamente 20 ns.
3.2. Evolución de los buses y el tamaño del dato.
• Funciones que debe realizar un computador para ejecutar trabajos de entrada/salida:
 Direccionamiento o selección del dispositivo que debe llevar a cabo la operación de E/S.
 Transferencia de los datos entre el procesador y el dispositivo (en uno u otro sentido).
 Sincronización y coordinación de las operaciones.
• Esta última función es necesaria debido a la diferencia de velocidades entre los
dispositivos y la CPU y a la independencia que debe existir entre los periféricos y la CPU.
• Una transferencia elemental de información es la transmisión de una sola unidad de
información (normalmente un byte) entre el procesador y el periférico o viceversa.
Para efectuar una transferencia elemental de
información son precisas las siguientes funciones:
 Comunicación física entre el procesador y el periférico para la transmisión de la unidad de
información.
 Control de los periféricos. Para realizar estas funciones la CPU gestionará las líneas de control
necesarias.
• Una operación de E/S es el conjunto de acciones necesarias para la transferencia de un
conjunto de datos. Para la realización de una operación de E/S se deben efectuar las siguientes
funciones:
 Recuento de las unidades de información transferidas (normalmente bytes) para reconocer el
fin de operación.
 Sincronización de velocidad entre la CPU y el periférico.
 Detección de errores (e incluso corrección).
 Almacenamiento temporal de la información. Es más eficiente utilizar un buffer temporal
específico para las operaciones de E/S que utilizan el área de datos del programa.
Conversión de códigos, conversión serie/paralelo,
etc.
3.3. Tipos de puertos estándar.
• Cada máquina conectada a una red utilizando el protocolo TCP / IP, tiene asignado un
grupo de 4 bloques de un máximo de 3 cifras que van del 0 al255 que la identifica como
única en la red a la que esta conectada, de forma que pueda recibir y enviar información
de y a otras máquinas en concreto. A este grupo de cifras se le denomina dirección IP. La
petición, envío y recepción de información la realizan aplicaciones que están corriendo en
las máquinas en red, con el fin de realizar diversas tareas. Para poder realizar varias de
forma simultánea, la ip tiene asignados65536 puntos de salida y entrada de datos, algunos
de ellos asignados por un estándar, definido por IANA (”Internet Assigned Numbers
Authority”) en el documento rfc1700, a unos servicios determinados (web, ftp, telnet,
etc)de forma que las aplicaciones sepan en todo momento en qué Puerta encontrarán un
tipo de información determinada. Éstos son los puertos que van del 0 al 1023 y se
denominan “Puertos bien conocidos”. Por otra partelos puertos que van del 1024 al 65535
son conocidos como “Puertosazarosos” y pueden ser utilizados libremente por las
aplicaciones.
5. Arquitecturas
embedidas o
microcontroladores
(MCUs).
Sistema Embebido
• .Un sistema embebido (anglicismo "embedded") o empotrado es un sistema de
computación diseñado para realizar una o algunas pocas funciones dedicadas
frecuentemente en un sistema de computación en tiempo real. Al contrario de lo que
ocurre con los ordenadores de propósito general (como por ejemplo una computadora
personal o PC) que están diseñados para cubrir un amplio rango de necesidades, los
sistemas embebidos se diseñan para cubrir necesidades específicas. En un sistema
embebido la mayoría de los componentes se encuentran incluidos en la placa base (la
tarjeta de vídeo, audio, módem, etc.).
• Su funcionamiento en términos generales consta de:
 Entrada (Sensores y/o periféricos)
 Proceso (tiempo real)
 Salida (Respuesta, resultados, periféricos)
Microcontrolador.

• Un microcontrolador (abreviado μC, UC o MCU) es un circuito integrado programable,


capaz de ejecutar las órdenes grabadas en su memoria.
• Está compuesto de varios bloques funcionales, los cuales cumplen una tarea específica.
Un microcontrolador incluye en su interior las tres principales unidades funcionales de
una computadora:
Unidad central de procesamiento, memoria y
periféricos de entrada/salida.
• Algunos microcontroladores pueden utilizar palabras de cuatro bits y funcionan a
velocidad de reloj con frecuencias tan bajas como 4 kHz, con un consumo de baja
potencia (mW o microvatios). Por lo general, tendrá la capacidad para mantener la
funcionalidad a la espera de un evento como pulsar un botón o de otra interrupción.
• Los microcontroladores son diseñados para reducir el costo económico y el consumo de
energía de un sistema en particular.
5.1 ORGANIZACION DE
MICROCONTROLADORES
• Está compuesto de varios bloques funcionales, los cuales cumplen una tarea específica.
Un microcontrolador incluye en su interior las tres principales unidades funcionales de
una computadora:
• Unidad central de procesamiento, memoria y periféricos de entrada/salida.
Algunos microcontroladores pueden utilizar palabras de cuatro bits y funcionan a
velocidad de reloj con frecuencias tan bajas como 4 kHz, con un consumo de baja
potencia (mW o microvatios). Por lo general, tendrá la capacidad para mantener la
funcionalidad a la espera de un evento como pulsar un botón o de otra interrupción.
Los microcontroladores son diseñados para reducir el
costo económico y el consumo de energía de un sistema
en particular.
• Tipos de Microcontroladores
Los microcontroladores se pueden clasificar en:
-Microcontroladores embebidos de 8 bits.
-Microcontroladores de 16-32 bits.
-Procesadores de señales digitales (DSP).

-Microcontroladores de 8 bits.
Todos los recursos necesarios están incluidos en el chip.
Solo necesitan alimentación y reloj.
Proporcionan control e interfaz con dispositivos
externos de manera económica y programable.
• Disponen de:
Reset
Reloj
Procesador
Memoria ROM para el programa e interfaz de programación
Memoria RAM para variables.
I/O Pins.

• Adicionalmente pueden incluir:


Capacidad de debugging
Interrupciones
I/O analógica
Comunicación serial y/o paralela
Interfaz con memoria
• -Microcontroladores de 16, 32 bits
Muy poca RAM (decenas de KB).
Muy poca velocidad de reloj (decenas de MHZ).
Muy utilizados en aplicaciones de control.
Bajo costo.
Bajo consumo energético (algunos μA).
• -Procesador de señales digital.
Es una categoría relativamente nueva de microprocesadores.
El objetivo de los DSP es tomar una señal analógica y calcular una respuesta apropiada.
Ejecutan a gran velocidad para permitir el control en tiempo real.
Fabricantes

• Intel
-8048
-8051 (Intel y Otros)
-80186, 80186 y 80386 EX.
• Microchip
-PIC
• Motorola
-68HC11 (Motorola y Toshiba)
-683xx
• Atmel
-AVR
ARQUITECTURAS DE COMPUTADORA
• Básicamente existen dos arquitecturas de computadoras, y por supuesto, están presentes
en el mundo de los microcontroladores: Von Neumann y Harvard. Ambas se diferencian
en la forma de conexión de la memoria al procesador y en los buses que cada una
necesita.
• La arquitectura Von Neumann: es la que se utiliza en las computadoras personales, para
ella existe una sola memoria, donde coexisten las instrucciones de programa y los datos,
accedidos con un bus de dirección, uno de datos y uno de control.
• En el caso de los microcontroladores, existen dos tipos de memoria bien definidas:
memoria de datos (típicamente algún tipo de SRAM) y memoria de programas (ROM,
PROM, EEPROM, FLASH u de otro tipo no volátil).
ARQUITECTURA VON NEUMANN: 24 ITS
Tequila Arquitectura de Computadoras
• Esta arquitectura es la variante adecuada para las PC, porque permite ahorrar una buena
cantidad de líneas de E/S, que son bastante costosas, sobre todo para aquellos sistemas
como las PC, donde el procesador se monta en algún tipo de socket alojado en una placa
madre (motherboard).
• También esta organización les ahorra a los diseñadores de motherboards una buena
cantidad de problemas y reduce el costo de este tipo de sistemas.
• Algunas familias de microcontroladores como la INTEL-51 y la Z80 implementan este
tipo de arquitectura, fundamentalmente porque era la utilizada cuando aparecieron los
primeros microcontroladores.
LA ARQUITECTURA HARVARD:
• Y por excelencia la utilizada en supercomputadoras, en los microcontroladores, y sistemas
embebidos en general. En este caso, además de la memoria, el procesador tiene los buses
segregados, de modo que cada tipo de memoria tiene un bus de datos, uno de direcciones y uno
de control.
 La ventaja fundamental de esta arquitectura es que permite adecuar el tamaño de los buses a
las características de cada tipo de memoria; además, el procesador puede acceder a cada una de
ellas de forma simultánea, lo que se traduce en un aumento significativo de la velocidad de
procesamiento, típicamente los sistemas con esta arquitectura pueden ser dos veces más
rápidos que sistemas similares con arquitectura Von Neumann.
 La desventaja está en que consume muchas líneas de E/S del procesador; por lo que en
sistemas donde el procesador está ubicado en su propio encapsulado, solo se utiliza en
supercomputadoras.
• Sin embargo, en los microcontroladores y otros sistemas embebidos, donde usualmente la
memoria de datos y programas comparten el mismo encapsulado que el procesador, este
inconveniente deja de ser un problema serio y es por ello que encontramos la arquitectura
Harvard en la mayoría de los microcontroladores.
5.2. Conjunto de instrucciones y lenguaje
ensamblador.
• Conjunto o repertorio de instrucciones, este elemento determina lo que puede hacer el
procesador.
Define las operaciones básicas que puede realizar el procesador, que conjugadas y
organizadas forman lo que conocemos como software. El conjunto de instrucciones
vienen siendo como las letras del alfabeto, el elemento básico del lenguaje, que
organizadas adecuadamente permiten escribir palabras, oraciones y cuanto programa se le
ocurra.
• Existen dos tipos básicos de repertorios de instrucciones, que determinan la arquitectura
del procesador: CISC y RISC.
LENGUAJE ENSAMBLADOR.
• El lenguaje ensamblador, o assembler (assembly language en inglés), es un lenguaje de
programación de bajo nivel para los computadores,
microprocesadores, microcontroladores y otros circuitos integrados programables.
Implementa una representación simbólica de los códigos de máquina binarios y otras
constantes necesarias para programar una arquitectura dada de CPU y constituye la
representación más directa del código máquina específico para cada arquitectura legible
por un programador.

• Características
Ensamblador es directamente traducible al Lenguaje de Máquina, y viceversa.
• La computadora no entiende directamente al Lenguaje Ensamblador; es necesario
traducirle a Lenguaje de Máquina.
• Se utilizan traductores que convierten el código fuente (en Lenguaje Ensamblador) a
código objeto.
• La programación en lenguaje ensamblador puede
resultar un tanto ardua para el principiante, pero permite
desarrollar programas muy eficientes, ya que otorga al
programador el dominio absoluto del sistema. Los
fabricantes suelen proporcionar el programa
ensamblador de forma gratuita y en cualquier caso
siempre se puede encontrar una versión gratuita para
los microcontroladores más populares.
El Compilador.
La programación en un lenguaje de alto nivel (como C
o Basic) permite disminuir el tiempo de desarrollo de un
producto y si además está familiarizado con C o Basic
es una buena opción. No obstante, cuando el
compilador convierta el código del programa a un
lenguaje ensamblado, cada línea de código del
programa en lenguaje de alto nivel habrá generado
bastantes más líneas de código en lenguaje
ensamblador, normalmente en una relación de uno a
tres. Esto significa que para utilizar un lenguaje de alto
nivel necesitaremos un microcontrolador con una
capacidad de memoria relativamente grande.
5.3 CARACTERÍSTICAS Y USO DE
ELEMENTOS DEL MICROCONTROLADOR
• Los microcontroladores son diseñados para disminuir el coste económico y el consumo de
energía de un sistema en particular. Por eso el tamaño de la CPU, la cantidad de memoria
y los periféricos incluidos dependerán de la aplicación. El control de un electrodoméstico
sencillo como una batidora, utilizará un procesador muy pequeño (4 u 8 bit) por que
sustituirá a un autómata finito. En cambio un reproductor de música y/o vídeo digital
(mp3 o mp4) requerirá de un procesador de 32 bit o de 64 bit y de uno o más Códec de
(audio y/o vídeo). El control de un sistema de frenos ABS se basa normalmente en un
microcontrolador de 16 bit, al igual que el sistema de control electrónico del motor.
Puertos, temporizadores y convertidores
• Puertas de Entrada y Salida:
Las puertas de Entrada y Salida (E/S) permiten comunicar al procesador con el mundo
exterior, a través de interfaces, o con otros dispositivos. Estas puertas, también llamadas
puertos, son la principal utilidad de las patas o pines de un microprocesador. Según los
controladores de periféricos que posea cada modelo de microcontrolador, las líneas de E/S
se destinan a proporcionar el soporte a las señales de entrada, salida y control.
Temporizadores o Timers:
Se emplean para controlar periodos de tiempo (temporizadores) y para llevar la cuenta de
acontecimientos que suceden en el exterior (contadores).
Para la medida de tiempos se carga un registro con el valor adecuado y a continuación
dicho valor se va incrementando o decrementando al ritmo de los impulsos de reloj o
algún múltiplo hasta que se desborde y llegue a 0, momento en el que se produce un
aviso. Cuando se desean contar acontecimientos que se materializan por cambios de nivel
o flancos en alguna de las patitas del microcontrolador, el mencionado registro se va
incrementando o decrementando al ritmo de dichos impulsos.
• Convertidores:
• Es un circuito electrónico que convierte una señal analógica en digital. Se utiliza en
equipos electrónicos como ordenadores o computadoras, grabadores digitales de sonido y
de vídeo, y equipos de comunicaciones. La señal analógica, que varía de forma continua
en el tiempo, se conecta a la entrada del dispositivo y se somete a un muestreo
(cuantificación discreta, o asignación de un valor numérico a una determinada intensidad
de la señal) a una velocidad fija, obteniéndose así una señal digital a la salida del mismo.
Esta señal se puede volver a convertir en analógica mediante un convertidor digital
analógico.
5.4 Aplicaciones de los microcontroladores.

• Si sólo se dispusiese de un modelo de microcontrolador, éste debería tener muy


potenciados todos sus recursos para poderse adaptar a las exigencias de las diferentes
aplicaciones. Esta potenciación supondría en muchos casos un despilfarro. En la práctica
cada fabricante de microcontroladores oferta un elevado número de modelos diferentes,
desde los más sencillos hasta los más poderosos. Es posible seleccionar la capacidad de
las memorias, el número de líneas de E/S, la cantidad y potencia de los elementos
auxiliares, la velocidad de funcionamiento, etc. Por todo ello, un aspecto muy destacado
del diseño es la selección del microcontrolador a utilizar.
• Los microcontroladores están siendo empleados en multitud de sistemas presentes en
nuestra vida diaria, como pueden ser juguetes, horno microondas, frigoríficos, televisores,
ordenadores, impresoras, módems, el sistema de arranque de nuestro coche, etc. Y otras
aplicaciones con las que seguramente no estaremos tan familiarizados como
instrumentación electrónica, control de sistemas en una nave espacial, etc.
Los microcontroladores se encuentran por todas
partes:
• Sistemas de comunicación: en grandes automatismos como centrales y en télefonos fijos,
móviles, fax, etc.
• Electrodomésticos: lavadoras, hornos, frigoríficos, lavavajillas, batidoras, televisores, vídeos,
reproductores DVD, equipos de música, mandos a distancia, consolas, etc.
• Industria informática: Se encuentran en casi todos los periféricos; ratones, teclados,
impresoras, escáner, etc.
• Automoción: climatización, seguridad, ABS, etc.
• Industria: Autómatas, control de procesos, etc
• Sistemas de supervisión, vigilancia y alarma: ascensores, calefacción, aire acondicionado,
alarmas de incendio, robo, etc.
• Otros: Instrumentación, electromedicina, tarjetas (smartcard), sistemas de navegación, etc.

You might also like