Powered By Blogger

martes, 14 de diciembre de 2021

Ciclo y decodificación de ejecución de instrucciones e Interfaces de entrada y salida

 Ciclo y decodificación de ejecución de instrucciones

Hola queridos lectores, espero se encuentren muy bien, el tema de esta semana es acerca de:

-Ciclo y decodificación de ejecución de instrucciones

-Interfaces de entrada y salida

empezando por el ciclo de instrucciones:

Ciclo de Instrucciones

Un ciclo de instrucción: es el período que tarda la unidad central de proceso (CPU) en ejecutar una instrucción de lenguaje máquina.

Comprende una secuencia de acciones determinada que debe llevar a cabo la CPU para ejecutar cada instrucción en un programa. Un ciclo de instrucción está formado por uno o más ciclos máquina.

Lo dividimos en cuatro fases principales:

1) Lectura de la instrucción: Leer la instrucción, decodificar la instrucción, y actualizar el contador del programa

2) Lectura de los operandos fuente: Esta fase se debe repetir para todos los operandos fuente que tenga la instrucción.

3) Ejecución de la instrucción y almacenamiento del operando de destino: Ejecución de instrucción, Almacenamiento del operando de destino=” Resultado”

4) Comprobación de interrupciones: se verifica si se ha activado alguna línea de petición de interrupción del procesador en el transcurso de la ejecución de la instrucción.     


Se divide

Todos siguen el mismo ciclo de instrucción, el cual se divide en tres etapas diferenciadas llamadas Fetch, Decode y Execute, las cuales se traducen como captación, descodificación y ejecución. Os explicamos como funcionan estas etapas y como se organizan.

FETCH:La primera etapa del ciclo de instrucción se encarga de captar las instrucciones que hay en la memoria RAM asignada al procesador a través de una serie de unidades y registros

Decode: diferentes tipos de instrucciones y no todas hacen lo mismo, por lo que dependiendo del tipo de instrucción necesitamos saber hacía que unidades de ejecución se van a enviar

EXECUTE: Instrucciones de movimiento de bits, Instrucciones aritméticas, Instrucciones de salto, Instrucciones a memoria.


Decodificador de Instrucciones

Se trata de un objeto de la presente invención para proporcionar un método y un dispositivo para la prestación de un versátil programa de traducción de las instrucciones para ser ejecutadas por un procesador a microinstrucciones utilizados por el núcleo del procesador.

-Unidad de decodificación: Se encarga de decodificar la instrucción que se va a ejecutar. Es decir, saber qué instrucción es

-Unidad de ejecución: Una vez que la unidad de decodificación sabe cuál es el significado de la instrucción leída de memoria, se lo comunica a la unidad de ejecución.

-Unidad aritmetológica: es el bloque funcional del microprocesador encargado de realizar todas aquellas operaciones matemáticas.


Interfaces de Entrada y salida

Interfaz:

Se emplea el vocablo interfaz para referirse a la dinámica física y lógica de interconexión entre dos aparatos o sistemas independientes o también entre un sistema informático y el usuario humano.

Por ejemplo: un teclado y un ratón constituyen una interfaz de usuario entre un PC y su usuario.

Tipos

1. Interfaz de Lenguaje Natural

El usuario no requiere habilidades especiales para controlarla.

Un ejemplo es Alexa, que cuenta con un software basado en modelos acústicos y del lenguaje.

2. Interfaz de Preguntas y Respuestas

La pantalla muestra una pregunta al usuario. Para interactuar, el cual ingresa una respuesta (a través del teclado), y la computadora actúa sobre esa información de una manera pre-programada, generalmente pasando a la siguiente pregunta.

Los asistentes que se usan para instalar software son un ejemplo común de una interfaz de pregunta y respuesta.

3. Interfaz Gráfica de Usuario

Utiliza imágenes, iconos y menús para mostrar las acciones disponibles en un dispositivo, entre las que el usuario puede escoger.

La interfaz gráfica de usuario de escritorio de Windows o Mac OS son ejemplos muy populares de GUI, que reemplazaron la comunicación mediante comandos de texto y código binario por elementos gráficos.

Interfaces de entrada y salida

La computación de entrada salida, o E/S, se refiere a la comunicación entre un sistema de procesamiento de información (como un computador), y los agentes humanos u otro sistema de procesamiento de información. Las entradas son las señales o datos recibidos por el sistema, y salidas son las señales enviadas por este.

Equipo periférico

Se considera periférico a los dispositivos que no pertenecen al núcleo fundamental del ordenador, formado por la unidad central de procesamiento (CPU) y la memoria principal, permitan realizar operaciones de entrada/salida (E/S) complementarias al proceso de datos que realiza la CPU. Estas tres unidades básicas en un ordenador son: CPU, memoria central y el subsistema de E/S, están comunicadas entre sí por tres buses o canales de comunicación.

Y tenemos los siguientes tipos de periféricos:

Periféricos de entrada: Captan y digitalizan los datos de ser necesario para ser procesados.

Periféricos de salida: Son dispositivos que muestran o proyectan información hacia el exterior del ordenador. Un ejemplo: Impresora.

Periféricos de entrada/salida (E/S): Sirven para la comunicación de la computadora con el medio externo.

Periféricos de almacenamiento: Son los dispositivos que almacenan datos e información. Ejemplos: Disco duro, Memoria flash, Cinta magnética, Memoria portátil, Disquete, Grabadora o lectora de: CD; DVD; Blu-ray; HD-DVD.

Periféricos de comunicación: Permiten la interacción entre dos o más dispositivos.

Comunicación de datos

se refiere al proceso de intercambio de información entre ordenadores, es decir, el intercambio de comunicación reside en enviarse bytes de un computador a otro. Las computadoras modernas son fundamentales en el término de dígitos binarios llamados bits, que solo aceptan valores de 0 ó 1.

Los datos que son procesados y almacenados por un ordenador se representan en dígitos binarios, por lo que el intercambio de datos entre equipos implica exportar bits de un lado a otro. La comunicación de datos requiere de elementos primordiales tales como:

-Emisor: unidad que transfiere los datos.

-Mensaje: lo constituyen los datos transferidos.

-Medio: se refiere al viaje de los datos desde su principio hasta su final.

-Receptor: unidad de destino de los datos.

Receptor: Unidad de destino de los datos

Bit: es el dispositivo más pequeño de información y la base de las comunicaciones.

Byte: grupo de bits sucesivos pequeños que permiten una dirección de información en un sistema informatizado.

Trama: conjunto de bits con un formato establecido utilizado en protocolos direccionados a bit.

Paquete: segmentos de un mensaje de tamaño específico, donde cada parte incluye información de principio y de destino.

Interfaces: es el elemento de conexión que permite la comunicación entre dos o más ordenadores

Paridad: es el método que se refiere a la suma de un bit a un símbolo para forzar al grupo de unos a ser impar o par.

Códigos: conjunto de símbolos o signos, por ejemplo, la combinación de bits representa un símbolo dentro de la tabla de códigos

Modulación: es el procedimiento de manejar de forma controlada los elementos de una señal portadora para que incluya la información que se va a transferir.

Chips de entrada y salida

Los controladores de E/S son una clase de circuitos integrados que comenzaron a utilizarse en placas base de computadoras personales a finales de la década de 1980, originalmente como tarjetas complementarias, posteriormente incrustadas en las placas base. Un chip de E/S combina interfaces para una variedad de dispositivos de bajo ancho de banda

Un chip de E/S combina interfaces para una variedad de dispositivos de bajo ancho de banda. Las funciones a continuación son proporcionadas por los controladores de E/S si están en la placa base: ... Un controlador embebido y/o controlador de teclado que es a veces conectado a un teclado PS/2 y/o interfaz de ratón.

Los controladores de E/S originales se comunicaban con la unidad de procesamiento central a través del bus ISA (Industry Standard Architecture). Con la evolución de ISA hacia el uso del bus de interconexión de componentes periféricos (PCI), el controlador de E/S era, a menudo, el mayor motivo para continuar la inclusión de ISA en la placa base.

Arreglo de discos

RAID: Consiste en una serie de sistemas para organizar varios discos como si de uno solo se tratara, pero haciendo que trabajen en paralelo para aumentar la velocidad de acceso o la seguridad frente a fallos del hardware o ambas cosas.

RAID es una forma de obtener discos duros más grandes, más rápidos, más seguros y baratos aprovechando la potencia de la CPU para tareas que necesitarán circuitos especializados y caros

Funcionamiento de RAID

Básicamente el RAID es un sistema el cual permite almacenar información en una cantidad de discos de tal forma que agilice el proceso máquina-disco.

El sistema RAID evitará en lo más posible la pérdida de data de la siguiente manera

Los discos optimizados para RIAD poseen circuitos integrados que detecta si el disco está fallando, de ser así este circuito se encargará por encima del tiempo real de sacar la información y almacenarla en otros discos.

Material de apoyo

Al igual que en anteriores ocasiones aquí se dejara un material visual de apoyo (un video) para ayudar a una mejor comprensión del tema:


Conclusión

Para cerrar ambos temas, resulta muy interesante el como es que nuestra maquina, el computador que hemos usado de toda la vida, cual es lo que sucede de tras para que el ordenador pueda realizar una instrucción.


Espero la información quede clara, gracias por leerme

martes, 7 de diciembre de 2021

Funcionamiento interno de una computadora

 Funcionamiento Interno de una Computadora

hola lectores como están, espero que se encuentren bien, el tema que se vera esta semana es acerca del funcionamiento interno de una computadora, haciendo énfasis en dos subtemas, que es: "Sincronización del tiempo "y "Ejecución de Instrucciones"

Empecemos por la introducción al funcionamiento del computador:

Considerando  la  definición  de  computador,  se  puede  decir  que  informática  o  ciencia  e ingeniería  de  los  computadores  es  el  campo  de  conocimiento  que  abarca  todos  los  aspectos del  diseño  y  uso  de  los  computadores.

En  informática  es  frecuente  codificar  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.

computador,  computadora  u  ordenador  es  una  máquina  capaz  de  aceptar  unos  datos  de entrada,  efectuar  con  ellos  operaciones  lógicas  y  aritméticas,  y  proporcionar  la  información  resultante  a  través  de  un  medio  de  salida;  todo  ello  sin  intervención  de  un  operador  humano  y  bajo el  control  de  un  programa  de  instrucciones  previamente  almacenado  en  el  propio  computador.

Un  computador  puede  considerarse  como  un  sistema  cuyas  salidas  o  resulta dos  son  función  (dependen)  de  sus  entradas,  constituidas  por  datos  e  instrucciones.

ORDENADORES

Son máquinas electrónicas capaces de tratar y procesar la información de una forma secuenciada,  rápida y eficaz.

Con 2 componentes:

Hardware: son los elementos físicos como el monitor, ratón, teclado, impresora, etc.

Software: son los programas que organizan y coordinan la forma lógica las distintas funciones.

Misión del CPU:

Interpretar y procesar las instrucciones que recibe el ordenador a través de los dispositivos de entrada. Ofrecer los resultados a través de los dispositivos de salida.

¿Cómo funciona el CPU?

La información se introduce a través de las unidades de entrada (teclado, ratón), según una secuencia de impulsos eléctricos codificados en código binario que el ordenador se encarga de identificar y procesar.

La información se almacena en la memoria principal y se efectúan los cálculos en la unidad aritmético-lógica, gracias a que la unidad de control organiza y establece el orden en el que se deben desarrollar las distintas tareas. Este conjunto de elementos constituye la CPU. Una vez procesada y traducida la información, los ordenadores la presentan a través de los dispositivos de salida (monitor, impresora).




ARQUITECTURA DEL ORDENADOR

Estos 3 componentes forman la CPU (Unidad central de procesamiento) consta de 3 partes: 

Memoria principal

Unidad de control

Unidad aritmético-lógica

MEMORIA PRINCIPAL

La memoria Principal es la parte más importante de la máquina.

Se encuentra conectada directamente al microprocesador, de tal forma que conceptualmente podríamos definir un ordenador como un sistema microprocesador-memoria principal.

Físicamente son circuitos integrados en los que la información se representa mediante señales eléctricas.

Hay dos tipos básicos de memoria principal: ROM: Read Only Memory: Memoria de Solo Lectura. RAM: Random Access Memory: Memoria de Acceso Aleatorio.

ROM La ROM (Read Only Memory: Memoria de Solo Lectura) es una memoria de uso específico que ya viene de fábrica grabada. Constituye una mínima parte del total de memoria principal. Su comportamiento es especial puesto que no se puede grabar y no es volátil. El fabricante incluye datos esenciales para el funcionamiento de la máquina que nunca se pueden borrar. Esta memoria se puede encontrar en un chip especial llamado BIOS.

LA UNIDAD DE CONTROL

Como su propio nombre indica, es la encargada de controlar la operación de los componentes de la CPU, y también los elementos externos a ella, mediante el envío de señales de control. Su trabajo consiste en encargarse de: Controlar la secuencia de instrucciones a ser ejecutadas. Controlar el flujo de datos entre las diferentes partes que forman un ordenador. Interpretar las instrucciones. Regular tiempos de acceso y ejecución en el procesador. Enviar y recibir señales de control de periféricos externos. UNIDAD DE CONTROL.

        UNIDAD ARITMÉTICO-LÓGICA

La Unidad Aritmético Lógica (UAL), o Arithmetic Logic Unit (ALU), es un circuito digital que calcula operaciones aritméticas (como adición, substracción, etc.) y operaciones lógicas (como OR, NOT, XOR, etc.), entre dos números.

UNIDAD DE ENTRADA  (E):

Es  un  dispositivo  por  el  que  se  introducen  en  el  computador  los  datos  e  instrucciones.  En estas  unidades  se  transforman  las  informaciones  de  entrada  en  señales  binarias  de  naturaleza eléctrica.  Un  mismo  computador  puede  tener  distintas  unidades  de  entrada  (en  la  Figura  1.3  se incluye  una  sola  por  simplificar).  Son  unidades  de  entrada:  un  teclado,  un  ratón,  un  escáner de  imágenes,  una  lectora  de  tarjetas  de  crédito,  etc.

UNIDAD DE SALIDA  (S):

Es  un  dispositivo  por  el  que  se  obtienen  los  resultados  de  los  programas  ejecutados  en  el computador.  La  mayor  parte  de  estas  unidades  (un  computador  suele  tener  varias  de  ellas) transforman  las  señales  eléctricas  binarias  en  información  perceptible  por  el  usuario.  Son dispositivos  de  salida  unidades  tales  como  una  pantalla,  una  impresora  o  un  altavoz.

MEMORIA INTERNA (MI):

Es  la  unidad  donde  se  almacenan  tanto  los  datos  como  las  instrucciones  durante  la  ejecución de  los  programas.  La  memoria  interna  (también  a  veces  denominada  memoria  central  o  memoria  principal)  actúa  con  una  gran  velocidad  y  está  ligada  directamente  a  las  unidades  más rápidas  del  computador  (unidad  de  control  y  unidad  aritmética-lógica).  Para  que  un  programa se  ejecute  debe  estar  almacenado  (cargado)  en  la  memoria  principal.  En  los  computadores actuales  está  formada  por  circuitos  electrónicos  integrados  (chips).

Sincronización del tiempo

Control y sincronización de tiempo: Existen dos tipos principales de organizaciones de control:

 1. Control por cableado

 2. Control microprogramado

CONTROL POR CABLEADO

En la organización por cableado, la lógica de control se logra mediante compuertas, Flip -Flops y otros circuitos digitales. Esto tiene la ventaja de que puede utilizarse para producir un modo de operación más rápido

CONTROL MICROPROGAMADO

En la organización microprogramada, la información de control esta almacenada en una memoria de control . La memoria de control está programada para iniciar la secuencia de microoperaciones requerida .

Todas las operaciones del computador están sincronizadas por un generador de tiempo maestro, cuyos pulsos de reloj se aplican a todos los flip-flops del sistema. Además esta disponible cierto numero de variables de tiempo en la unidad de control para darle secuencia a la operación en el orden adecuado.
VS
La unidad de control coordina todos los componentes del computador, de modo que los eventos tomen lugar en la secuencia apropiada del momento correcto.
EJECUCIÓN DE INSTRUCCIONES

 A partir del registro de instrucción, los datos que forman la instrucción son decodificados por la unidad de control. El resultado generado por la operación es almacenado en la memoria principal o enviado a un dispositivo de salida dependiendo de la instrucción.

Instrucciones de Entrada: Su misión consiste en leer uno o varios datos de un dispositivo de entrada y almacenarlos en la memoria central, en los objetos cuyos identificadores aparecen la propia instrucción.

Instrucciones de Salida: Su misión consiste en enviar datos a un dispositivo externo tomados, de la memoria central o definidos de alguna forma en la propia instrucción.

Interrupciones: Las interrupciones son llamadas automáticas a procedimiento no debidas al programa sino a una causa exterior. La diferencia entre las interrupciones y los desvíos es que éstos son provocados por el mismo programa mientras que las interrupciones son provocadas por causas externas de forma totalmente asíncrona

MATERIAL DE APOYO
dejare un video como material visual de apoyo para que quede mas claro el tema: 

CONCLUSION
Es importante tener conocimiento de como es que nuestro computador tiene todo un proceso interno para poder realizar las acciones y funciones comunes que conocemos.


lunes, 29 de noviembre de 2021

Lógica de Transferencia de Registros

 Lógica de Transferencia de Registros

Como están queridos lectores espero que se encuentren muy bien, el tema de esta semana es acerca de la "Lógica de Transferencia de Registros"

comencemos por ver:

Representación de números binarios en punto fijo

Un número binario con signo se puede representar por tres métodos diferentes, denominados: signo y módulo, complemento a la base disminuida ( también llamado complemento a 1: Ca1) y complemento a la base ( complemento a 2: Ca2).

Los empleados actualmente son los de complemento a 1 y complemento a 2, los cuales se utilizan para expresar números binarios en formato de punto fijo, es decir, teniendo tres campos: uno para el signo, otro para la parte entera y el restante para la parte decimal.

El tratamiento en Ca1 y Ca2 hace que el signo queda embebido dentro del campo de la parte entera del número y empleando la definición de complemento de un número binario éste automáticamente queda establecido así como en el caso de realizar operaciones de suma y de resta.

Datos Binarios de un Punto Fijo

Un número binario con signo se puede representar por tres métodos diferentes ,denominados: signo y módulo, complemento a la base disminuida ( también llamado complemento a 1: Ca1) y complemento a la base ( complemento a 2: Ca2).

Los empleados actualmente son los de complemento a 1 y complemento a 2, los cuales se utilizan para expresar números binarios en formato de punto fijo, es decir, teniendo tres campos: no para el signo, otro para la parte entera y el restante para la parte decimal.

El tratamiento en Ca1 y Ca2 hace que el signo queda embebido dentro del campo de la parte entera del número y empleando la definición de complemento de un número binario éste automáticamente queda establecido, así como en el caso de realizar operaciones de suma y de resta.

La parte decimal (parte del número después de la coma), también queda embebida dentro de la representación del número completo, ya que cuando se deban realizar operaciones aritmética, al igual que como se procede en números de base 10, se toma todo el número para la operación.

En la suma y resta, la posición de la coma nunca se modifica. Si hay que sumar o restar dos números, se debe primero hacer coincidir las posiciones de la coma y luego realizar la operación aritmética como si el número fuera entero.

En caso de realizar operaciones de multiplicación y división, el procedimiento es análogo; lo único que cambia es que se debe correr la coma al número binario resultado, según corresponda, de igual forma que en el caso de números decimales.



Código de Instrucciones

Es un grupo de bits que instruye a la computadora sobre cómo ejecutar una operación específica, siendo su parte más básica la parte de operación, el cual es un grupo de bits que define operaciones como sumar, restar, multiplicar, desplazar y complementar.


Pasos para ejecutar las instrucciones:

Los pasos a seguir para el procesamiento de las instrucciones son los siguientes:

- Búsqueda de la instrucción: es a través de la lectura de las mismas, desde la memoria, por el procesador.

 -Ejecución de la instrucción: realizada por el procesador.

-Repetición de la lectura y ejecución: conforman la “ejecución de un programa”. Dicha ejecución puede detenerse si: la máquina se apaga, ocurre un error que no puede ser recuperado, o si, se encuentra una instrucción en el programa que detenga la computadora

Tipo de Instrucciones

Las instrucciones de procesamiento son operados en memoria

 -Instrucciones de movimiento o transferencia de datos

 -Instrucciones aritméticas

-Instrucciones lógicas

-Instrucciones de comparación

-Instrucciones de desplazamiento

Ciclo de Instrucciones

Es el período de tiempo durante el cual un ordenador lee y procesa una instrucción de lenguaje máquina de su memoria o la secuencia de acciones que la unidad central (CPU) funciona para ejecutar cada instrucción de código de máquina en un programa.

En la computadora básica cada ciclo de instrucción consiste en las siguientes fases:

• Buscar una instrucción de la memoria

• Decodificar la instrucción

• Leer la dirección efectiva de la memoria si la instrucción tiene una dirección indirecta

• Ejecuta la instrucción.

Códigos de Instrucción

La organización de interna de un sistema digital se define por la secuencia de microoperaciones que ejecuta sobre los datos almacenados .Una computadora puede ejecutar y recibir instrucciones sobre las operaciones que debe realizar, el usuario puede controlar el proceso mediante un programa, el cual consta de un conjunto de instrucciones que especifican las operaciones.

Las computadoras realizan instrucciones mediante el código binario. Estos códigos e instrucciones la computadora los almacena en la memoria.

La computadora lee los códigos e instrucciones de la memora y los ejecuta mediante microoperaciones, cada computadora tiene un conjunto de instrucciones único.

Código de Instrucción

Es un conjunto de bits que construye la computadora sobre como ejecutar una operación específica.

Código de operación:

Es básicamente un conjunto de bits que define operaciones como la suma, resta, multiplicar, desplazar y complementar

Una operación es parte de una instrucción almacenada en la memoria que le envía un código binario a la computadora para ejecutar una operación especifica esta es recibida por la unidad de control después este los interpreta y emite una señal de control para iniciar microoperaciones en los registros internos de la computadora.

La parte operativa de un código de instrucción debe mostrar no solo la operación sino que también los registros o palabras de la memoria donde se van a encontrar los operandos al igual que el registro de la memoria donde se va almacenar el resultado.

Esto se realiza al especificarse registros del procesador y asignándole a la instrucción otro código binario de k bits.

Existen varias formas de códigos binarios además de que cada computadora tiene su propio formato de códigos de instrucciones y especifican la arquitectura de la computadora.


Instrucciones de Movimiento o Transferencia de datos

Estas instrucciones mueven datos de una parte a otra del sistema; hacia la memoria principal, de los registros de datos, puertos de E/S y registros de segmentación.

Las instrucciones de transferencia de datos son las siguientes:

• MOV transfiere

• XCHG intercambia

 • IN entrada

• OUT salida

• XLAT traduce usando una tabla

 • LEA carga la dirección efectiva

 • LDS carga el segmento de datos • LES carga el segmento extra

• LAHF carga los indicadores en AH 

• SAHF guarda AH en los indicadores

• PUSH FUENTE (sp) fuente

Control de Bucles (instrucciones simples) Estas posibilitan el grupo de control más elemental de nuestros programas. Un bucle es un bloque de código que se ejecuta varias veces. Hay 4 tipos de bucles básicos:

• Bucles sin fin

 • Bucles por conteo

 • Bucles hasta

 • Bucles mientras

Las instrucciones de control de bucles son las siguientes:

 

⋅ INC incrementar

⋅ DEC decrementar

⋅ LOOP realizar un bucle

⋅ LOOPZ,LOOPE realizar un bucle si es cero

⋅ LOOPNZ,LOOPNE realizar un bucle si no es   cero

⋅ JCXZ salta si CX es cero

Estas instrucciones son las que realiza directamente el 8086/8088

a)Grupo de adición

b)Grupo de sustracción

c)Grupo de multiplicación

d)Grupo de división

e)conversiones

Instrucciones lógicas

Son operaciones bit a bit que trabajan sobre octetos o palabras completas:

• NOT negación

• AND producto lógico

• OR suma lógica

• XOR suma lógica exclusiva

Instrucción de Comparación

Las instrucciones EQU, NEQ, GRT, LES, GEQ y LEQ funcionan prácticamente igual, hay dos números que se comparan entre si, a diferencia del LIM que la comparación se hace con 3 elementos.

Parámetros para EQU, NEQ, GRT, LES, GEQ y LEQ

A continuación se muestran las instrucciones con sus parámetros:

Instrucción de desplazamiento
aquí tenemos 2 tipos de desplazamiento aritmético hacia la izquierda y aritmético hacia la derecha

Material de apoyo
Al igual que antiguas ocasiones aquí se dejara un material de apoyo 


Gracias por leerme

lunes, 15 de noviembre de 2021

LOGICA DE TRANSFERENCIA DE REGISTROS

 
Lógica
 De Transferencia De Registros

Hola queridos lectores espero se encuentren bien, el tema de esta semana será  bien como dice el titulo de esta entrada, hablaremos acerca de la lógica en la transferencia de registros, sin nada mas que agregar, comenzamos:

Es un conjunto de expresiones y afirmaciones con una notación simbólica para especificar las interconexiones necesarias entre los distintos componentes de un sistema digital.

Se seleccionan registros como los componentes primitivos de un sistema digital en vez de las compuertas y los flip-flop como en la lógica secuencial

De esta forma es posible describir de forma precisa y concisa el flujo de información y las tareas de procesamiento entre los datos acumulados entre registros

El conjunto de registros en un sistema y sus funciones.

La información en código binario almacenado en los registros.

Las operaciones realizadas a partir de la información almacenada en los registros.

Las funciones de control que inician la secuencia de operaciones.

Estos cuatro componentes forman la base del método de lógica de transferencia entre registros

El lenguaje de transferencia entre registros constituye un conjunto de expresiones y afirmaciones con una notación simbólica para especificar las interconexiones necesarias entre los distintos componentes de un sistema digital. Presenta las herramientas necesarias para describir el sistema , así como la secuencia de micro operaciones que se realizan en el mismo

Tenemos los registros:

Registro de 4 bits

Registro con carga paralela

Registro de Corrimientos


Transferencia de datos entre registros

La transferencia de datos de un registro a otro es justamente almacenar en un registro los datos de otro registro. Para esto es necesario que la salida del registro que posee los datos (registro origen) esté conectada a la entrada del registro en el que vamos a almacenar la información (registro destino). Al aplicar un pulso de reloj, el registro destino toma los datos provenientes del registro origen

En este caso tenemos varias transferencias de datos entre registros tales como:

Trasferencia de 1 Registro a 1 registro

Trasferencia de varios registros a 1 registro

Transferencia de varios registros a varios registros   

Transferencia entre registros con estructura de buses


Microoperaciones  Aritméticas

Las microoperaciones que se encuentran con mayor frecuencia en las computadoras digitales se clasifican en cuatro categorías:


Microoperaciones de transferencia de registros

Microoperaciones aritméticas

Microoperaciones lógicas

Microoperaciones de corrimiento

Las microoperaciones aritméticas básicas son suma, resta, incremento, decremento y corrimiento.

Los registros de computadora están representados por letras mayúsculas (en ocasiones seguidas de números), para denotar la función del registro

Los flip-flops individuales en un registro de n bits están numerados en una secuencia de 0 hasta n-1, comenzando desde 0 en la posición de la extrema derecha y aumentando los números hacia la izquierda. La manera más común de representar un registro es mediante una caja rectangular con el nombre del registro dentro

La transferencia de información de un registro a otro se representa en forma simbólica mediante un operador de sustitución.

Microoperaciones Lógicas

Las microoperaciones lógicas especifican operaciones binarias para arreglos de bits almacenados en registros. Estas operaciones consideran cada bit de registro en forma separada y los tratan como variables binarias.

Microoperaciones de corrimiento

Corrimiento lógico : es aquel que transfiere un 0 por la entrada serial.
Corrimiento circular : hace circular los bits del registro por los dos extremos sin pérdida de información. Esto se consigue al conectar la salida serial del registro de corrimiento a su entrada serial.

Corrimiento aritmético : recorre un número binario con signo a la derecha o a la izquierda. Un corrimiento aritmético a la izquierda multiplica un número binario con signo por 2

Lenguaje de Transferencia de Registro

El diseño de sistemas digitales utiliza de manera invariable un enfoque modular. Los módulos se construyen a partir de componentes digitales como registros, decodificadores, elementos aritméticos y lógica de control. Los diferentes módulos están interconectados con los datos y las trayectorias de control comunes para formar un sistema de computadora digital

El control que inicia la secuencia de micro operaciones. La notación simbólica que se utiliza para describir las transferencias de micro operaciones entre registros se llama lenguaje de transferencia de registros.

Transferencia 

Los registros de computadora están representados por letras mayúsculas (en ocasiones seguidas de números),  para denotar la función del registro.

En estos caso, las señales que realizan estas operaciones se propagan por las compuertas y el resultado de la operación se puede transferir a un registro destino mediante un pulso de reloj, tan pronto como la señal de salida se propaga por el circuito combinatorio.

Tipos de Micro operaciones

La función básica de las micro operaciones es la transferencia de información de un lugar del computador a otro, generalmente de un registro a otro, tanto si son internos al procesador como externos.

 Dicho proceso de transferencia puede implicar solo mover la información, pero también transformarla.

 Ve rememos brevemente tres tipos básicos de micro operaciones:

Transferencia interna: operaciones de transferencia entre registros internos del procesador.

Transferencia interna con transformación: operaciones aritméticas o lógicas utilizando registros internos del procesador.

Transferencia externa: operaciones de transferencia entre registros internos del procesador y registros externos al procesador o módulos externos al procesador (como el bus del sistema o la memoria principal).

Material  de Apoyo

Al igual que en temas anteriores en caso de que la información no haya quedado lo suficientemente clara se dejara aquí un material visual: 


Conclusión

Talvez con el el paso de las entradas, con el paso de los temas puedan ir tomando talvez cada mas dificultad, sabemos que son temas de importancia pero a parte de eso, son muy interesantes, solo que si se necesita poner mucha atención a los temas y cada desglose de la información.

Gracias por leerme, los veo en el siguiente tema. ☻




lunes, 8 de noviembre de 2021

Lógica Secuencial, Registros y Unidad de Memoria

 Lógica Secuencial y Unidad de Memoria

Hola Lectores, espero se encuentren bien.

Esta semana trataremos 2 temas, el primero se vera de manera algo rápida ya que al ser tema de continuación de la entrada de la semana pasada solo se complementara.

Iniciemos con la Lógica Secuencial, esta semana centrándonos en el tema de una ecuación de Estado:

Ecuación de Estado

Una ecuación de estado (también conocida como una ecuación de aplicación) es una expresión algebraica que especifica las condiciones para la transición de estado de un flip-flop.

Una ecuación de estado es similar a la en forma a una ecuación característica de un Flip Flop.

La ecuación de estado es una función de Boole con un tiempo incluido. Es aplicable solamente en los circuitos secuenciales de reloj, ya que A(t + 1) se define para que cambie de valor con la ocurrencia del pulso del reloj en instantes discretos de tiempo.

 La ecuación de estado se deriva directamente de la tabla de estado.

Ejemplo:


El lado derecho de la ecuación de estado es una función de Boole para un estado presente

CASO 1: Cuando esta función es igual a 1, la ocurrencia de los pulsos de reloj causa que el flip-flop "A" tenga el siguiente estado de 1

CASO 2: Cuando una función es igual a 0, el pulso del reloj causara que "A" tenga el siguiente estado de 0

El lado izquierdo de la ecuación identifica los Flip Flops por un símbolo de letra seguido de una designación en función

de tiempo (t + 1), para enfatizar que este valor sea alcanzado por el Flip Flop, un pulso posterior de la secuencia.

Finalizado con el tema acerca de la lógica secuencial, entramos en materia del tema de: Unidad de Memoria

Empezando por el tema de registros y unidad de memoria:

Registros

En arquitectura de ordenadores, un registro es una memoria de alta velocidad y poca capacidad, integrada en el microprocesador, que permite guardar transitoriamente y acceder a valores muy usados, generalmente en operaciones matemáticas.

Los registros están en la cumbre de la jerarquía de memoria, y son la manera más rápida que tiene el sistema de almacenar datos. Los registros se miden generalmente por el número de bits que almacenan.

Los registros del procesador se dividen o clasifican atendiendo al propósito que sirven o a las instrucciones que les ordenan.

Tenemos los registros GPR que son Registros de propósito general (en inglés GPRs o General Purpose Registers), en arquitectura de ordenadores, un registro es una memoria de alta velocidad y poca capacidad, integrada en el microprocesador

Tenemos dentro de los Registros GPR estos tipos:

AX, AH, AL (Acumulador) 

BX, BH, BL (Base)

CX, CH, CL (Contador)

DX, DH, DL (Datos)

También tenemos los Registros Apuntadores y de Índices

  Estos registros son usados como índices por algunas instrucciones. También pueden ser usados como operandos (excepto el registro IP). Los registros SP (apuntador de la pila) Y BP (apuntador de base) están asociados con el registro SS y permiten al sistema accesar datos en el segmento de la pila.

Tenemos los:

SP (Apuntador de pila)

 BP (Apuntador de base)

DI (Índice destino)

SI (Índice fuente)

IP (Apuntador de instrucciones)

Existen también los registros de Segmentos

Contiene 16 bits de longitud y facilita un área de memoria para direccionamiento conocida como el segmento actual. Esta dirección, más un valor de desplazamiento en una instrucción, genera una referencia a la localidad de un byte específico en el segmento de datos

En estos tenemos:

CS (Código)
DS (Datos)

ES (Extra)

SS (Pila)

Y también los Registros de Control:

Que se utilizan para controlar las operaciones del procesador, la mayor parte de estos registros no son visibles al usuario y algunos pueden ser accesibles a las instrucciones de maquina ejecutadas en un modo de control.

Los registros utilizados son los siguientes:

Registro de direcciones de memoria (MAR)

Registro de datos de memoria (MBR)

Registro de direcciones de entrada y salida (I/O AR)

Registro de datos de entrada y salida (I/O BR)

Registro de instrucciones (IR)

Palabras de estado del programa (PSW)



Bien ahora el tema se enfoca en las secuencias de tiempo

Secuencias de Tiempo

La secuencia de las operaciones en un sistema digital se especifica por una unidad de control. La unidad de control que supervisa las operaciones en un sistema digital en forma normal consta de señales de temporizado que determinan la secuencia del tiempo en el cual se ejecutan las operaciones

Las secuencias de tiempo en la unidad de control pueden generarse con facilidad mediante contadores o registros de corrimiento. Esta sección demuestra el uso de esas funciones MSI en la generación de señales de temporizado para una unidad de control.

También tenemos las Señales de Temporizado:

En un modo paralelo de operación, un sólo pulso de reloj puede especificar el tiempo al cual debe ejecutarse una operación. La unidad de control en un sistema digital que opera en el modo paralelo debe generar señales de tiempo que permanecen activas sólo por un periodo de pulso de reloj, pero estas señales de tiempo deben diferenciarse unas de otras.

Unidad de Memoria

La memoria es un ordenador se organiza en varios niveles en función de su velocidad. Esta distribución se denomina jerarquía de memoria y optimiza su uso, ya que la información se ubica en un determinado nivel según su probabilidad de ser utilizada: mientras mayor es la probabilidad o frecuencia de uso, menor es su nivel

Transferencia de información hacia y desde registros de memoria.

La transferencia de información hacia y desde los registros en memoria y el medio externo se comunica a través de un registro común llamado registro buffer de memoria (otros nombres son registros de información y registro de almacén). Cuando la unidad de memoria recibe una señal de control para escritura, el control interno interpreta el contenido de registro buffer como la configuración de bits de la palabra que va a almacenarse en un registro de memoria

Memoria de acceso aleatorio

(Random Access Memory, RAM) En la RAM se cargan todas las instrucciones que ejecuta la unidad central de procesamiento (CPU) y otras unidades del computador, además de contener los datos que manipulan los distintos programas.

Se denomina de acceso aleatorio porque se puede leer o escribir en una posición de memoria con un tiempo de espera igual para cualquier posición, no es necesario seguir un orden para acceder (acceso secuencial) a la información de la manera más rápida posible.

Memoria de Núcleo Magnético

Una memoria de núcleo magnético usa núcleos magnéticos para almacenar la información binaria. Un núcleo magnético tiene forma toroidal y está hecho de material magnético. En contraste con un flip-flop semiconductor que necesita sólo una cantidad física, como por ejemplo voltaje, para su operación un núcleo magnético empleares cantidades físicas: corriente, flujo magnético y voltaje. La señal que excita al núcleo es un pulso de corriente en un alambre que pasa a través del núcleo. La información binaria almacenada se representa por la dirección del flujo magnético dentro del núcleo. La información binaria de salida se extrae mediante un alambre que se eslabona al núcleo en la forma de un pulso de voltaje..

La propiedad física que hace que un núcleo magnético sea adecuado para el almacenamiento binario es su circuito de histéresis, que se muestra en la Fig. 7-31(c). Este circuito es una gráfica de corriente comparada con el flujo magnético y tiene la forma de un circuito cuadrado. Con corriente cero, un flujo que es positivo (dirección en sentido contrario a las manecillas del reloj) o bien negativo (dirección en el sentido de las manecillas del reloj) permanece en el núcleo magnetizado. Una dirección, por ejemplo magnetización contraria al sentido de las manecillas del reloj, se usa para representar un 1 y la otra para representar un O.


Material de Apoyo

Al igual que en las anteriores entradas se dejara aquí un video para que quede mas claro el tema:


Conclusión
Ya se ha dicho anteriormente con todo el proceso y avance que se ha tenido a lo largo de este blog, la importancia de como nos vamos adentrando en el funcionamiento, así que esta ocasión no es una excepción, es un tema que aparte de ser de gran relevancia es interesante


Ciclo y decodificación de ejecución de instrucciones e Interfaces de entrada y salida

 Ciclo y decodificación de ejecución de instrucciones Hola queridos lectores, espero se encuentren muy bien, el tema de esta semana es acerc...