Galería de mapas mentales Mapa mental de los principios de composición informática.
Este es un mapa mental sobre los principios de composición de 02 computadoras, incluida una descripción general, operaciones de datos, sistemas de almacenamiento, unidades centrales de procesamiento, etc.
Editado a las 2023-12-08 15:47:38,La seconda unità del corso obbligatorio di biologia ha riassunto e organizzato i punti di conoscenza, coprendo tutti i contenuti principali, il che è molto comodo da apprendere per tutti. Adatto per la revisione e l'anteprima degli esami per migliorare l'efficienza dell'apprendimento. Affrettati a ritirarlo per imparare insieme!
Questa è una mappa mentale sull'estrazione e la corrosione del me. Il contenuto principale include: corrosione dei metalli, estrazione dei metalli e serie di reattività.
Questa è una mappa mentale sulla reattività dei metalli. Il contenuto principale include: reazioni di spostamento dei metalli, serie di reattività dei metalli.
La seconda unità del corso obbligatorio di biologia ha riassunto e organizzato i punti di conoscenza, coprendo tutti i contenuti principali, il che è molto comodo da apprendere per tutti. Adatto per la revisione e l'anteprima degli esami per migliorare l'efficienza dell'apprendimento. Affrettati a ritirarlo per imparare insieme!
Questa è una mappa mentale sull'estrazione e la corrosione del me. Il contenuto principale include: corrosione dei metalli, estrazione dei metalli e serie di reattività.
Questa è una mappa mentale sulla reattività dei metalli. Il contenuto principale include: reazioni di spostamento dei metalli, serie di reattività dei metalli.
Principios de composición informática.
Capítulo uno Descripción general
jerarquía del sistema informático
hardware
Computadora von Neumann
procedimiento almacenado
controlador de flujo de control
Los programas y datos compilados previamente se envían a la memoria principal. La computadora ejecuta artículo por artículo
monoprocesador
Las instrucciones y los datos tienen el mismo estado.
Los datos de las instrucciones son todos códigos binarios.
Centrado en el operador
computadora moderna
centrado en la memoria
estructura
dispositivo de entrada
dispositivo de salida
memoria
Memoria principal (almacenamiento interno)
Banco de memoria
Almacenamiento auxiliar (almacenamiento externo)
UPC
MAR (memoria de direcciones)
El número de bits corresponde al número de unidades de almacenamiento.
Dirección de acceso a la tienda
MDR(memoria de datos)
El número de bits es igual a la longitud de la palabra de almacenamiento.
Almacena temporalmente información leída y escrita desde la memoria.
operador
ALU (Unidad Aritmética Lógica)
circuito lógico combinacional
ACC (acumulador)
MQ (Registro de cociente multiplicador)
X registro de propósito general
Almacenamiento temporal de operandos y resultados intermedios.
IX (registro índice)
BE (registro de dirección base)
PSW (Registro de palabras de estado del programa/Registro de bandera)
Almacene la información de bandera obtenida por la operación, como: desbordamiento, acarreo y préstamo
controlador
PC (Contador de programas)
Almacena la dirección de la instrucción que se va a ejecutar actualmente. Después de la ejecución, se incrementa automáticamente en uno para formar la dirección de la siguiente instrucción.
Número de dígitos de longitud de palabra → Número de palabras de memoria
IR (Registro de Instrucciones)
Se utiliza para almacenar el comando actual.
Contenido de MDR
Longitud de la palabra de instrucción
CU (Unidad de control)
software
composición
software del sistema
sistema operativo sistema operativo
Sistema de gestión de bases de datos DBMS
sistema de procesamiento del lenguaje
sistema de software de red
programa de servicio
solicitud
Software de uso diario
idioma
Lenguaje de máquina
La computadora se puede ejecutar directamente.
código binario
lenguaje ensamblador
Palabras en inglés y letras abreviadas.
Convertir a lenguaje de máquina antes de la ejecución.
lenguaje de alto nivel
Java, c, c, etc.
Programa fuente a archivo ejecutable
jerarquía multinivel
Programa de interpretación: traduce y ejecuta al mismo tiempo.
Actuación
longitud de la palabra
Es un múltiplo entero de bytes (1B u 8 bits)
longitud de la palabra de la máquina
Ancho de ruta de datos dentro de la CPU para aritmética de enteros
Dígitos largos de ALU
Número de bits de registro general
Longitud de la palabra de instrucción
El número de bits de código binario en una palabra de instrucción.
Longitud de la palabra de almacenamiento
Longitud del código binario de una unidad de memoria
ancho de banda de la ruta de datos
El número de bits transmitidos en paralelo en el bus de datos al mismo tiempo.
Capacidad de la memoria principal
calculando la velocidad
Rendimiento
Número de solicitudes procesadas por unidad de tiempo
Frecuencia principal
frecuencia de reloj de la CPU
¿Cuántos HZ es generalmente?
1hz significa una vez por segundo
1GHz = 10⁹
¿Cuántos ciclos de reloj por segundo?
ciclo de reloj de la CPU
Cuenta atrás de la frecuencia principal.
1/frecuencia principal
¿Cuántos segundos es un ciclo de reloj?
IPC
El número de ciclos de reloj que se necesitan para ejecutar una instrucción.
¿Cuántos ciclos de reloj se necesitan para ejecutar una instrucción?
relacionado con tres factores
Conjunto de instrucciones
Programación (estructura del sistema)
Organización informática (arquitectura)
tiempo de ejecución de la CPU
(número de instrucciones × CPI) / frecuencia principal
MIPS
¿Cuántos millones (M) de instrucciones se ejecutan por segundo?
Frecuencia principal / (CPI×10⁶)
fracasos
mflops
¿Cuántos millones de operaciones de punto flotante se realizan por segundo?
Número de operaciones de coma flotante / (tiempo de ejecución × 10⁶)
flops
mil millones
10⁹
tflops
billones
10¹²
flops
Cuatrillones
10¹⁵
zflops
Transparencia
Contenido invisible
Para programadores de lenguajes de alto nivel, El formato de instrucción, el proceso de operación de datos, etc. son contenidos invisibles.
Para programadores en lenguaje de máquina o lenguaje ensamblador, El formato de instrucción, la estructura de la máquina y el formato de datos son contenidos visibles.
Los programadores no pueden ver el contenido de MAR, MDR e IR en la CPU
Capitulo dos Operaciones de datos
método base
binario
la base es 2
octal
Cada ocho se convierte en uno
El truco: números binarios de tres dígitos
decimal
hexadecimal
123456789ABCDEF
Consejo ①: número binario de cuatro dígitos
Consejo ②: A representa 10
código BCD
8421 códigos
Cuatro dígitos binarios representan un número decimal
Método de corrección:
① Si el resultado de la operación de dos dígitos es menor o igual al número decimal 9, no se realizará ninguna corrección.
② Si el resultado de la operación de dos dígitos es mayor o igual al número decimal 10, sume el número decimal 6 (0110)
Tres yardas más
Suma 3 al código 8421 (0011) De esta manera, cada número tiene un resto de tres.
2421 códigos
Desde la posición más alta hasta la posición más baja, son 2421 Tales como: 5=(0101)
representación codificada
código original
0 significa no único
La longitud de la palabra es n 1, el rango del código original firmado -(2ⁿ-1)≤ x ≤ 2ⁿ-1
código inverso
un numero positivo Código original=código inverso
numero negativo El bit de signo permanece sin cambios y el valor se invierte.
complementar
0 significa único
un numero positivo Código original=código inverso=código complementario
numero negativo Conversión de código inverso del código original: el código original es de derecha a izquierda, encuentra el primer 1, invierte todos los bits numéricos a la izquierda de este 1, es decir, obtiene el código complementario
La longitud de la palabra es n 1, rango de complemento con signo -2ⁿ ≤ x ≤ 2ⁿ-1
Almacenado en forma de complemento a dos en lenguaje C
cambio de marco
0 significa único
exponente que representa un número de punto flotante
Compensar
Negar el bit de signo del complemento → cambio de marco
desplazamiento de punto fijo
desplazamiento aritmético
Para números simbólicos
El bit de signo permanece sin cambios al cambiar
desplazamiento aritmético positivo Complete 0 para denegaciones y complementos originales.
desplazamiento aritmético negativo Complete 0 para el código original El código de complemento se completa con 0 para el desplazamiento a la izquierda y 1 para el desplazamiento a la derecha. Complete el código inverso con 1
cambio lógico
Para números sin firmar
Desplazamiento lógico a la izquierda, bit alto perdido, bit bajo lleno de ceros
Desplazamiento lógico a la derecha, el bit bajo se pierde, el bit alto se llena con ceros
Suma y resta de números de punto fijo.
Suma y resta en complemento a dos
Operación directa adicional
Sustracción Un complemento (-B) complemento
Identificador
número sin firmar
CF llevar prestado
Determinar el desbordamiento de números sin signo
además llevar
Determinar el préstamo de resta
Pequeño - Grande Asientos prestados disponibles
Marca cero ZF
El resultado es 0, entonces ZF=1
número firmado
Marca cero ZF
Bandera del símbolo SF
El símbolo que representa el resultado.
OF bandera de desbordamiento
Determinar el desbordamiento de números con signo
Juicio de desbordamiento
un bit de signo
dos bits de signo (complemento de módulo cuatro)
Solo se almacena un bit al almacenar
Si los dos bits son iguales, no hay desbordamiento.
dos personas diferentes
01
Desbordamiento positivo
10
desbordamiento negativo
Multiplicación de números de coma fija
Multiplicación de un bit del código original
Cálculo manual
Similar al decimal, calcula directamente
cálculo por computadora
Calcular A×B
Ilustración
El multiplicando A se almacena en el registro general X.
Almacenar el multiplicador B en MQ
Los resultados del cálculo de cada ronda se almacenan en ACC.
proceso
El multiplicando y el multiplicador toman el valor absoluto para participar en la operación. El bit de signo se procesa por separado (operación XOR)
① ¿Cuándo se suma el número del ACC al número del registro general X? Compruebe si el bit más bajo de MQ es 1. Si es 1, se suman ACC y X y el resultado se coloca en ACC
(CAC) (X) → CAC
② Después de almacenar el nuevo resultado en ACC, realice un desplazamiento lógico a la derecha Desplazamiento lógico a la derecha MQ, desplazamiento lógico a la derecha ACC El bit alto de ACC se llena con 0 y el número desplazado hacia la derecha desde el bit bajo de ACC se mueve al bit alto de MQ. Se mueve el bit bajo de MQ
Multiplicación en complemento a uno
Cálculo manual
cálculo por computadora
Bit auxiliar: bit más bajo de MQ = 1, complemento (ACC) (x)
Bit auxiliar: bit más bajo de MQ = 0, (ACC) 0
Bit auxiliar: bit más bajo de MQ = -1, (ACC) (-x) complemento
proceso
Multiplicación de un bit en complemento a dos usando dos bits de signo
Realice n rondas de suma, cambio y finalmente agregue nuevamente.
Cada desplazamiento es un desplazamiento aritmético a la derecha.
El bit de signo participa en la operación.
El bit auxiliar está después del bit más bajo de MQ e inicialmente es 0 El número adicional del desplazamiento a la derecha de MQ reemplaza el 0 inicial u otro número del bit auxiliar original.
Los procesos de suma y desplazamiento son los mismos que los de la multiplicación de un bit del código original.
División de punto fijo
División del código original (método de recuperación del resto)
a÷b
ACC almacena dividendo a, resto
Cociente de almacenamiento MQ (inicialmente todo 0)
X almacena el divisor b
proceso
Primero, el cociente predeterminado es 1; si ocurre un error, se cambia a 0 y se restaura el resto.
Si el cociente es 0, realice el complemento ACC (b) y ponga el resultado en ACC
Cociente 1, realizar suplemento ACC (-b)
Si el bit de signo del resultado calculado es 1, significa que el cociente es incorrecto, luego restaure
Después de la operación de suma y se obtiene el nuevo resultado, ACC y MQ se desplazan lógicamente hacia la izquierda y los bits bajos de MQ se llenan con 0.
Repita la operación anterior.
División de código original (método alternativo de suma y resta)
Acabo de empezar, Complementa a (-b) para obtener el nuevo resto.
Si el resto es negativo, el cociente es 0 y el resto se desplaza lógicamente hacia la izquierda y luego (b) se complementa
Si el resto es positivo, entonces el cociente es 1, y el resto se desplaza lógicamente hacia la izquierda y luego se complementa (-b).
último paso Si el resto es negativo, el cociente es 0, (b) complemento para obtener el resto correcto
División en complemento a dos (suma y resta alternadas)
El bit de signo participa en la operación, bit de doble signo
Acabo de empezar Determine si el dividendo y el divisor tienen el mismo signo, Si tienen el mismo signo, dividendo - divisor Si hay signos diferentes, el dividendo es el divisor.
Hacer un seguimiento El resto y el divisor tienen el mismo signo. Cociente 1, resto y cociente (ACC MQ) desplazados hacia la izquierda, restar divisor El resto y el divisor tienen signos diferentes. Cociente 0, resto y cociente desplazados a la izquierda, sumar divisor
Disposición de almacenamiento de datos
almacenamiento big endian
Igual que los hábitos de lectura de las personas.
almacenamiento little endian
de lo contrario
alineación de fronteras
tipo entero
tipo entero
4B 32 bits
largo
4B 32 bits
tipo corto
2B 16 bits
tipo de carácter
1B 8 bits
número de punto flotante
Formato de representación
símbolo de número
código
Representado por cambio de marco
mantisa
Expresado en forma decimal del código original.
Estandarización
Zuogui
Desplaza la mantisa una posición hacia la izquierda y disminuye el exponente en uno.
regla correcta
Desplaza la mantisa una posición hacia la derecha y suma uno al exponente.
IEEE754
Precisión simple de 32 bits
constituir
número de 1 dígito
Código de expansión (código de marco) 8 bits
Expandir valor verdadero = código de cuadro - valor de compensación 127
Rango de código 1~254
23 dígitos de mantisa
Valor de compensación 127
proceso de conversión
① Símbolos numéricos
② mantisa
③ El verdadero valor del código.
④ Código de cuadro (código de cuadro) = valor de verdad del código - valor de compensación
⑤ La mantisa se mueve según el valor verdadero del exponente.
ejemplo
El código no puede ser todo 0 o 1.
Doble precisión de 64 bits
número de 1 dígito
Código 11 dígitos
52 bits de mantisa
Valor de compensación 1023
Suma y resta en coma flotante
① Orden correcto
Los pequeños pasos están alineados con los grandes pasos.
La mantisa pequeña del código del exponente se desplaza una posición hacia la derecha, el exponente es 1
② Suma de mantisas
③ Estandarización
regla correcta
Cuando 1×.××, calibre derecho
Desplaza la mantisa hacia la derecha y suma uno al exponente.
Zuogui
Cuando 0.0, regla izquierda
Desplaza la mantisa hacia la izquierda y disminuye el exponente en 1
Número normalizado
El bit superior de la mantisa del código original no es 0, y el bit superior de la mantisa del código complementario es diferente del símbolo numérico.
complementar
Normalización de símbolo único
0.1xxx 1.0xxx
Normalización de dos símbolos
00.1xxx 11.0xxx
④ Redondeo
El redondeo se produce al alinear o girar a la derecha.
0 método de redondeo
Similar al redondeo
método de conjunto constante 1
Independientemente de si el bit más alto es 1 o 0, establezca el final de la mantisa después del desplazamiento a la derecha en 1.
⑤ Juicio de desbordamiento
Para un desbordamiento insuficiente positivo y un desbordamiento negativo, la computadora lo trata como 0
elenco
char→int→long→doble
flotador → doble
tercer capitulo Sistema de almacenamiento
Clasificación de la memoria
Clasificados por nivel
cache
memoria principal
almacenamiento auxiliar
Ordenar por medios
superficie magnética
cinta
disco
núcleo magnético
semiconductor
CD
Clasificados por método de acceso
RAM - memoria de acceso aleatorio
ROM - memoria de solo lectura
Los recuerdos modernos se pueden borrar eléctricamente
memoria de acceso serie
Clasificación por capacidad de almacenamiento de información.
Volátil cuando está apagado
RAM
No volátil
ROM
superficie magnética
CD
Métricas de rendimiento de la memoria
almacenamiento
Número de palabras almacenadas × longitud de la palabra
Velocidad de almacenamiento
Tiempo de acceso
El período de tiempo desde el inicio del acceso hasta su finalización.
periodo de almacenamiento
Tiempo de acceso Periodo de recuperación
ancho de banda de la memoria principal
tasa de transferencia de datos
El número máximo de mensajes que entran y salen de la memoria principal por segundo.
sistema de almacenamiento multinivel
CPU-caché-memoria principal-memoria auxiliar
La transferencia de datos antes de la CPU y el caché se realiza mediante hardware (invisible)
La conexión entre la memoria principal y la memoria secundaria la completa el hardware y el sistema operativo (no visible para el programador de aplicaciones)
memoria principal
memoria de acceso aleatorio
RAM
el caché es implementado por SRAM
SRAM
memoria estática de acceso aleatorio
flip-flop biestable
lectura no destructiva
Alto costo, alta velocidad, baja integración
La memoria principal está implementada por DRAM.
DRACMA
Memoria dinámica de acceso aleatorio
capacitancia de puerta
Hay que actualizar de vez en cuando
Actualización centralizada
Utilice un tiempo fijo para actualizar el condensador.
tiempo muerto
Actualización dispersa
Distribuya la actualización de cada fila en varios ciclos
sin zona muerta
Actualización asincrónica
Período de actualización dividido por el número de filas Actualizar de vez en cuando
Tiempo de intervalo máximo 2 ms
Hay tiempo para morir
Bajo costo, baja velocidad, alta integración
Multiplexación de pines de dirección
ROM
ROM
Características
Estructura simple
No volátil
Clasificación
Memoria de sólo lectura con patrón de máscara MROM
Contenido inmutable
Memoria PROM de sólo lectura programable una sola vez
Una vez escrito, no se puede cambiar.
Memoria de sólo lectura programable y borrable EPROM
Reescribible, tiempos de programación limitados, tiempo de escritura prolongado.
memoria flash (memoria flash)
Almacenamiento de información a largo plazo.
Reescritura de borrado rápido en línea
CD ROM
CD ROM
Unidad de estado sólido SSD
Almacenamiento de información a largo plazo.
Borrado rápido, reescribir
memoria paralela
memoria de doble puerto
paralelismo espacial
memoria paralela de cuerpos múltiples
paralelismo temporal
Cruce de alto orden (modo secuencial)
acceso serial
memoria secuencial
Intercalado de orden bajo (modo de direccionamiento entrelazado)
La dirección interna de orden superior se envía al módulo de orden inferior para su decodificación.
Enfoque de canalización
Bit de ciclo de acceso T para acceder a una palabra El ciclo de transmisión del bus es r
Número de módulos cruzados ≥ T/r
El tiempo necesario para acceder a m palabras de forma continua es T (m-1)/r
Conexión de memoria principal y CPU
La línea de datos es bidireccional. Las líneas de dirección son unidireccionales
Capacidad de expansión
expansión de palabras
Función de decodificador 2/4: Seleccionar chip
extensión de bits
La señal de selección de chip cs debe estar vinculada a todos los chips.
Conexión de memoria a CPU
Línea de selección de chip alta, línea de dirección baja
① Línea de dirección
② Cable de datos
③ línea IO
④ Línea de selección de chip
Almacenamiento externo
disco
Unidad mínima de lectura, un sector
Características
① Bajo costo y gran capacidad.
②Almacenamiento a largo plazo
③Lectura no destructiva
Clasificación
almacenamiento de disco
zona de almacenamiento
Cabezal magnético (número de caras de grabación)
Una superficie de grabación corresponde a un cabezal magnético
cilindro
¿Cuántas pistas hay en cada plato?
sector
¿Cuantos sectores hay en cada pista?
Ubicado en el mismo sector → todos los datos se pueden leer en un solo acceso a la memoria
Actuación
tiempo promedio de acceso
tiempo de búsqueda
El tiempo que tarda la cabeza en moverse hasta la pista de destino.
demora
El tiempo que tarda el cabezal magnético en localizar los sectores de lectura y escritura.
Tiempo de transmisión
Hora de transferir datos
Hora del sector de consulta
buscar tiempo/2
tasa de transferencia de datos
revoluciones por segundo × capacidad de cada pista n bits
Las operaciones de lectura y escritura son en serie.
Matriz de discos
RAID0
Sin redundancia ni suma de comprobación
RAID1
Matriz de discos espejo
respaldo mutuo
RAID2
Error al corregir la matriz de discos del código Hamming
RAID3
verificación de paridad cruzada de bits
RAID4
bloquear paridad cruzada
RAID5
Control de paridad sin verificación independiente
memoria flash ssd
No es diferente del disco U
La escritura aleatoria es lenta
Habrá desgaste
escondite
principio de funcionamiento
La CPU emite una solicitud de acceso a la memoria, Si la dirección física de la memoria principal está en el caché, se accede y el caché se lee directamente. Si el caché falla, aún necesita acceder a la memoria principal y cargarlo en el caché desde la memoria principal.
Longitud del bloque de caché, también conocida como longitud de línea
Invisible para todos los programadores
Método de mapeo de caché y memoria principal.
mapeo directo
La tasa de aciertos más baja y el menor tiempo necesario
establecer mapeo asociativo
La etiqueta y el número de grupo forman el número de bloque de memoria principal.
Suponiendo que cada grupo tiene r líneas de caché, se denomina conjunto asociativo de r vías r actúa como un grupo
El número de comparadores en el caché también es r.
Capacidad de caché (bits) = número de filas × (datos por fila, bits válidos, bits sucios, bits de control de reemplazo, bits de bandera)
La unidad de cada fila de datos es bit.
Partes sucias (mantenimiento constante)
Método de reescritura
reemplazar el bit de control
Cuando se utiliza el algoritmo de reemplazo, este bit Cuando se utiliza una estrategia de reemplazo aleatorio, este bit no está disponible
algoritmo de reemplazo
① Algoritmo aleatorio
② Algoritmo primero en entrar, primero en salir
Reemplace primero la línea más antigua
③ Algoritmo utilizado menos recientemente (Principio de localidad) LRU
Reemplazar filas no visitadas recientemente
④ LFU se usa menos comúnmente
mapeo totalmente asociativo
La tasa de aciertos más alta y el mayor tiempo necesario
estrategia de escritura de caché
①
Método de escritura completo (escritura directa)
Alta seguridad
Acierto de escritura de CPU en caché
Los datos deben escribirse en la memoria principal y en la caché al mismo tiempo. Cuando sea necesario reemplazar un determinado bloque, sobrescríbalo directamente con el nuevo bloque.
búfer de escritura
Para reducir la pérdida de tiempo al escribir directamente en la memoria principal
La CPU escribe datos en el caché y escribe en el búfer al mismo tiempo. Escriba el búfer y luego escriba el contenido en la memoria principal.
método de asignación sin escritura
Error de escritura de CPU en caché
Escribir en la memoria principal no realiza el ajuste del bloque
②
Método de reescritura (método de reescritura)
para intensivo
Acierto de escritura de CPU en caché
Solo escribe datos en la caché, no en la memoria principal inmediatamente Sólo escribe en la memoria principal cuando se intercambia este bloque
escribir método de asignación
Error de escritura de CPU en caché
Cargue el bloque de memoria principal en el caché y luego actualice el bloque de caché
Desventaja: cada vez que ocurre un error, se debe leer un bloque de la memoria principal.
memoria virtual
Dirección lógica (dirección virtual) para programación de usuario La unidad de memoria principal es la dirección física (dirección real)
Dirección virtual = número de página de memoria virtual dentro de la página
Dirección real = número de página de la memoria principal dentro de la página
La CPU utiliza direcciones de memoria virtual para descubrir la relación de mapeo entre direcciones virtuales y reales a través de hardware auxiliar. Si está en la memoria principal, mediante conversión de direcciones. Si no está en la memoria principal, se busca en la memoria principal y la CPU accede a él. Si la memoria principal está llena, se utiliza el algoritmo de reemplazo
Los resultados faltantes tendrán un gran impacto en el rendimiento del sistema.
Utilice un mapeo totalmente asociativo para mejorar la tasa de aciertos
Método de reescritura
Invisible para los programadores de aplicaciones, visible para los programadores de sistemas
Clasificación
memoria de página
en paginas
tabla de páginas
Encuentre la entrada de la tabla de páginas correspondiente según el número de página virtual en los bits altos de la dirección virtual.
Tabla rápida TLB
Consiste en memoria asociativa.
Direccionamiento de contenidos
Utilice grupo asociativo o totalmente asociativo.
etiqueta TLB
Número de página virtual totalmente asociado
Bit alto del número de página virtual asociativo establecido
sistema de almacenamiento multinivel
La relación entre TLB, página y caché.
El TLB almacena una copia parcial de la página.
La caché almacena una copia de una parte de la memoria principal.
Si el TLB llega, la página debe llegar. Si falta el TLB, es posible que la página aún llegue. Si falta la página, deben faltar tanto el TLB como el caché.
Los errores de caché los realiza el hardware La página que falta la completa el software (falta el controlador de excepciones de la página del sistema operativo) La eliminación de TLB se puede realizar tanto en hardware como en software.
memoria segmentada
Número de segmento, dirección de segmento, composición
Registros de la tabla de segmentos: ① primera dirección del segmento ② bit de carga ③ longitud del segmento
memoria segmentada
Con página como unidad de transmisión básica.
① Número de sección ② Número de página dentro de la sección ③ Dirección dentro de la página
Capítulo cuatro instrucción
Arquitectura del conjunto de instrucciones ISA
Contenido principal: formato de instrucción, tipo y formato de datos, método de almacenamiento de operandos, número de registros accesibles al programa y sus números. Tamaño del espacio de almacenamiento y modo de direccionamiento, modo de direccionamiento, modo de control de ejecución de instrucciones, etc.
Formato de comando
Código de operación OP Código de dirección A
La longitud de la palabra de instrucción es un múltiplo entero de bytes.
Clasificación
instrucción de dirección cero
Sólo operación de código de operación
Instrucciones operativas: sin operación, apagado, interrupción de apagado Las instrucciones aritméticas se utilizan en las computadoras de pila (los operandos provienen de la parte superior de la pila y de la parte superior de la segunda pila)
un comando de dirección
Instrucción de un solo operando con un solo operando de destino
El resultado se guarda en la dirección original.
Instrucciones de dos operandos con operandos de destino acordados implícitamente
ACC proporciona otro operando mediante un acuerdo de direccionamiento implícito, El resultado de la operación se almacena en ACC.
Dos instrucciones de dirección
Indique el operando de destino y el operando de origen.
El resultado se guarda en la dirección del operando de destino.
Tres instrucciones de dirección
Indique el operando de destino, el operando de origen y el resultado.
Acceda a la memoria 4 veces: obtenga la instrucción una vez, obtenga el operando 2 veces, almacene el resultado una vez
Cuatro instrucciones de dirección
op, operando de destino, operando de origen, resultado, siguiente dirección
El código de operación es de 8 bits y los 4 códigos de dirección son de 6 bits cada uno.
Formato de instrucción de código de operación extendido
① El código de operación corto no puede ser el mismo que la parte anterior del código de operación largo.
② Los códigos de operación de cada instrucción no se repiten.
Modo de extensión
Todos los unos están reservados para la siguiente expansión de instrucciones de dirección.
Tipo de operación
① Transmisión de datos
② Operaciones aritméticas y lógicas
③ Operación de cambio
④ Operación de transferencia
transferencia incondicional
Ejecutar en cualquier caso
transferencia condicional
Ejecutar bajo condiciones específicas.
La diferencia entre instrucciones de transferencia e instrucciones de llamada
La instrucción de llamada guardará la siguiente dirección de instrucción (dirección del remitente) La instrucción de transferencia no vuelve a ejecutarse.
⑤ Operaciones de entrada y salida
Instrucciones de control del programa
transferencia incondicional
transferencia condicional
llamada de subrutina
Comando de retorno
Instrucciones de bucle
Instrucciones privilegiadas
Para sistemas operativos y software del sistema
No disponible para los usuarios
Modo de direccionamiento de instrucciones
direccionamiento de instrucciones
direccionamiento secuencial
Contador de programa de PC 1, forma la siguiente instrucción
saltar direccionamiento
Implementado a través de instrucciones de transferencia.
La instrucción actual modifica el valor de la PC y la siguiente instrucción aún se proporciona a través de la PC.
Direccionamiento de datos
Clasificación
direccionamiento implícito
El otro operando de una instrucción de dirección única se puede obtener mediante direccionamiento implícito, derivado de ACC
especificación del programa
direccionamiento inmediato
El campo de dirección proporciona directamente el operando en sí, utilizando la representación en complemento a dos.
Conveniente
direccionamiento directo
EA=A
El número de bits en A determina el rango de direccionamiento del operando.
Longitud de comando reducida
1 acceso
direccionamiento indirecto
EA = (A)
Una dirección indirecta requiere dos accesos a la memoria.
Facilita la expansión del rango de direccionamiento
Registrar direccionamiento
EA = Ri
Dar directamente el número de registro
La fase de ejecución no accede a la memoria principal, sólo a los registros.
La longitud del código de dirección es pequeña (acortada)
registrar direccionamiento indirecto
EA = (Ri)
Ri no es un operando, sino la dirección de la unidad de memoria principal donde se encuentra la operación.
Necesidad de acceder a la memoria
Los operandos están en la memoria principal.
direccionamiento relativo
EA = (PC) A
A es el desplazamiento relativo al valor actual de PC, expresado en complemento
para instrucciones de transferencia
1 acceso
direccionamiento base
EA = (BR) A
Utilizado para el diseño multicanal, BR es el registro de dirección base (visible)
1 acceso
direccionamiento indexado
Dirección efectiva = dirección formal A registro índice IX EA = (IX) A
Orientado al usuario
Tratar con problemas de matriz
1 acceso
Direccionamiento de pila
último en entrar primero en salir
Representación de código a nivel de máquina
Formato de montaje
formato AT&T
El primero es el operando de origen, el segundo es el operando de destino, La dirección es de izquierda a derecha, lo cual es natural.
Los registros tienen el prefijo %, y los números inmediatos tienen el prefijo $.
Usos del direccionamiento de memoria ()
formato de información
El primero es el operando de destino, el segundo es el operando de origen, Dirección de derecha a izquierda
Los registros y números inmediatos no necesitan prefijo
Usos del direccionamiento de memoria [ ]
Comparado
Comandos comunes
formato intel
mirando de derecha a izquierda
Clase de transferencia de datos
instrucción mov
Copiar un valor a otro
por ejemplo: mov eax, ebx Copiar el valor de ebx a eax
instrucción de empuje
empujar para apilar
comando emergente
estallido
Operaciones aritméticas y lógicas.
agregar/subcomando
Adición y sustracción
Guarde el resultado en el primer número.
por ejemplo: sub eax, 10 eax - 10 → eax
instrucciones de aum/dism (incremento/disminución)
Autocreciente y autodecreciente
directiva imul (multiplicación)
Multiplicación de números simbólicos
El resultado se almacena en el primer operando, que debe ser un registro.
por ejemplo: imul eax, [var] eax × [var] → eax
por ejemplo: imul esi, edx, 25 25 × edx → esi
directiva idiv (división)
División de números simbólicos
Sólo hay un operando, el divisor.
por ejemplo: idiv ebx
y/o/xor instrucciones
Y, O, XOR
El resultado se coloca en el primer operando.
por ejemplo: y eax, 0 fH Los primeros 28 bits de eax son 0 y los últimos 4 bits permanecen sin cambios.
no instrucción
poco volteado
0→1, 1→0
instrucción negativa (negativo)
toma lo negativo
por ejemplo: neg eax -eax→eax
comando shl/shr (cambio)
Desplazamiento lógico a la izquierda, desplazamiento lógico a la derecha
El primer operando representa el objeto de ejecución. El segundo número representa el número de turnos.
por ejemplo: shl eax, 1 eax se desplaza lógicamente 1 bit a la izquierda shr ebx, cl ebx se desplaza lógicamente hacia la derecha n bits (n es el valor en cl)
clase de flujo de control
comando jmp
instrucción de transferencia
instrucción de condición j
instrucciones de transferencia condicional
comando cmp/prueba
tamaño del valor de comparación cmp La prueba realiza una operación AND bit a bit en los operandos.
instrucción de llamada/retirada
Llamada y retorno de subrutina
CISC y RISC
CISC
sistema de comando complejo
RISC
Sistema de comando optimizado
Comparado
capitulo cinco UPC
estructura de la CPU
operador
Unidad de operación lógica aritmética ALU
Operaciones aritméticas y lógicas
bloc de notas
Almacenar temporalmente los datos leídos desde la memoria principal.
Registro de acumulación ACC
Almacenar temporalmente la información de resultados de ALU
Registro general X
Permite a los usuarios programar libremente y puede almacenar datos y direcciones.
Igual que la longitud de la palabra de la máquina
visible
Registro de palabra de estado del programa PSW
Mantener diversa información de estado de los resultados.
visible
palanca de cambios
Realizar operaciones de cambio en operandos o resultados de operaciones.
Contador CT
Controlar el número de pasos para operaciones de multiplicación y división.
controlador
PC contador de programas
Indica la dirección de almacenamiento en memoria principal de la instrucción a ejecutar.
El número de bits es el mismo que el número de bits de dirección de memoria. La dirección de la memoria depende de la capacidad de almacenamiento.
visible
Registro de instrucciones IR
Guarde el comando que se está ejecutando actualmente
La misma longitud que la longitud de la palabra de instrucción.
no puede ser reemplazado por registros de propósito general
decodificador de instrucciones
Decodificar el código de operación
Invisible
registro de dirección de memoria MAR
Almacenar la dirección de la unidad de memoria principal.
Invisible
Registro de datos de memoria MDR
Almacenar información escrita o leída desde la memoria principal.
Invisible
sistema de sincronización
Se utiliza para generar varias señales de sincronización.
Generador de señales
función de CPU
El controlador es responsable de coordinar y controlar la secuencia de instrucciones (búsqueda, análisis, ejecución) del programa ejecutado por cada componente de la computadora. Las calculadoras procesan datos
① Control de instrucciones, completar las operaciones de buscar, analizar y ejecutar instrucciones.
② Control de operación
③ Control de tiempo
④ Procesamiento de datos
⑤ Interrumpir procesamiento
Proceso de ejecución de instrucciones
ciclo de instrucción
El tiempo que lleva buscar y ejecutar una instrucción.
Representado por varios ciclos de máquina.
ciclo de la máquina
Longitud fija
Longitud no fijada
Recuperación de instrucciones, dirección indirecta, ejecución, interrupción
ciclo de recuperación
Según el contenido de la PC, el código de instrucción se recupera de la memoria principal y se coloca en el IR.
La PC almacena la dirección de la instrucción. Según esta dirección, la instrucción se recupera de la unidad de memoria correspondiente y se coloca en el IR.
PC 1 mientras busca
Las instrucciones son recuperadas automáticamente por la máquina.
ciclo de direcciones indirectas
Obtener la dirección efectiva del operando.
Envía el código de dirección de la instrucción a MAR y al bus de direcciones cu emite un comando de lectura para obtener la dirección efectiva y finalmente la almacena en MDR.
Dos accesos
ciclo de ejecución
Tome el operando y produzca el resultado a través de la operación ALU de acuerdo con el código de operación de la palabra de instrucción del IR.
ciclo de interrupción
Manejar solicitud de interrupción
plan de ACCION
ciclo de instrucción único
múltiples ciclos de instrucción
Solución de tubería
Ruta de datos
Función
Ruta de transmisión de datos entre componentes funcionales.
Describe dónde comienza la información, por qué registro o multiplexor pasa y a qué registro se transmite finalmente.
controlado por unidad de control
estructura basica
Modo de bus único interno de la CPU
Modo multibus interno de la CPU
Los puertos de entrada y salida de todos los registros están conectados a múltiples rutas comunes
Enfoque de ruta de datos dedicada
leer el dedo
(PC)→MAR 1→R MEM (MAR)→MDR (MDR)→IR
(MDR)→MAR 1→R MEM (MAR)→MDR (MDR)→Y (ACC) (Y)→Z (Z)→ACC
controlador
controlador cableado
unidad de control
IR
El campo de código de operación de la instrucción es la señal de entrada a la unidad de control.
FR (Registro de banderas)
Información de retroalimentación de la unidad de ejecución.
Momento
generador de ritmos
Generar señales de período de máquina y señales de ritmo.
La unidad de control también acepta señales de control del bus del sistema, como interrupciones, DMA
Microoperaciones
Se pueden completar múltiples microoperaciones en un ciclo de máquina
buscar
(PC)→MAR 1→R M(MAR)→MDR (MDR)→IR (PC) 1→PC
dirección indirecta
Anuncio(IR)→MAR 1→R M(MAR)→MDR
implementar
no recuperar
CLA
Borrar ACC
CoM
Negar
SHR
desplazamiento aritmético a la derecha
CSL
Ciclo a la izquierda
STP
cerrar
Acceso
suma Anuncio(IR)→MAR M(MAR)→MDR (MDR) (ACC)→ACC Instrucción de tienda STA X Ad(IR)→MAR, 1→escritura en memoria de escritura (ACC)→MDR (MDR)→M(MAR) Instrucción de recuperación de LDA X Anuncio(IR)→MAR,1→R M(MAR)→MDR (MDR)→ACC
transferir
JMP X(transferencia incondicional) Ad(IR)→PC BAN X (transferencia condicional)
método de control
Método de control sincrónico
reloj unificado
Método de control asincrónico
Cada componente funciona a su propia velocidad inherente.
método de control conjunto
La mayoría usa síncrono, algunos usan asíncrono
controlador microprogramado
Utilice lógica de almacenamiento para codificar señales de microoperaciones
Una instrucción de máquina se escribe como un microprograma y cada microprograma contiene múltiples microinstrucciones. Una instrucción de máquina se puede descomponer en una secuencia de microoperaciones (las más básicas y no se pueden dividir más)
Normalmente, un ciclo de microprograma corresponde a un ciclo de instrucción.
Es para asegurar la sincronización de toda la señal de control de la máquina.
Las microinstrucciones se almacenan en la unidad de almacenamiento de control.
Los microcomandos son las señales de control de las microoperaciones y las microoperaciones son los procesos de ejecución de los microcomandos.
La memoria principal se utiliza para almacenar datos y programas y se implementa fuera de la CPU mediante RAM. La memoria de control CM se utiliza para almacenar microprogramas. Se implementa con ROM (EPROM) dentro de la CPU y se accede a ella según la dirección de la microinstrucción.
estructura
Proceso de trabajo
buscar microinstrucciones
Desde el campo de código de operación de la instrucción de la máquina, el componente formador de microdirecciones genera la dirección de entrada del microprograma correspondiente a la instrucción de la máquina y la envía a CMAR.
Obtenga las microinstrucciones correspondientes una por una del CM y ejecútelas
Regrese a la dirección de entrada del microprograma y repita la operación.
Codificación
Control directo
Método de codificación directa de campo
El campo de microcomandos se divide en varios, Los microcomandos mutuamente excluyentes se colocan en el mismo campo y los comandos de compatibilidad se colocan en campos diferentes.
Todo 0 significa que no hay operación
Método de codificación indirecta de campo.
Un microcomando para un campo es interpretado por un microcomando para otro campo, Acortar la longitud de las palabras de microinstrucción
Método de formación de direcciones de microinstrucciones.
método de juicio
Dado por la dirección bajo la microinstrucción.
Códigos de operación formados según instrucciones de la máquina.
recuento incremental
firmar la ley
ley cibernetica
ley de hardware
Formato de microinstrucción
microinstrucciones horizontales
Fuerte capacidad de operación paralela
Corto tiempo de ejecución
microinstrucciones verticales
Sólo se puede realizar una operación básica en paralelo
Largo tiempo de ejecución
microinstrucciones híbridas
Comparado
Excepciones e interrupciones
anormal
Los eventos inesperados generados dentro de la CPU se denominan excepciones (interrupciones internas)
Tales como: interrupción por falla de hardware (error de verificación de memoria, error de bus) Excepciones programáticas (división por 0, desbordamiento, punto de interrupción, seguimiento de un solo paso, instrucción ilegal, desbordamiento de pila, dirección fuera de límites, error de página)
La interrupción interna es una interrupción no enmascarable.
La detección de anomalías la completa la propia CPU
Clasificación
Interrupción programada (interrupción de software)
Falla
Sección faltante
Página faltante
Cargue los segmentos o páginas requeridos desde el disco a la memoria principal y regrese a la instrucción fallida para continuar la ejecución.
Código de operación ilegal
divisor es 0
La falla no se puede recuperar a través del controlador de excepciones (aún es necesario llamar al controlador), la ejecución no se puede devolver al punto de interrupción y el proceso finaliza directamente.
atraparse
Configuración de puntos de interrupción para la depuración del programa Cuando se ejecutan estas instrucciones, Llame automáticamente al programa del núcleo del sistema operativo para su ejecución incondicional o condicional
Terminar (interrupción de hardware)
Error del controlador, error de comprobación de la memoria, etc.
Llame a la rutina del servicio de interrupción y reinicie el sistema.
Interrupción externa (interrupción de hardware)
Un dispositivo externo a la CPU que emite una solicitud de interrupción a la CPU se denomina interrupción (interrupción externa)
Por ejemplo: interrupción de IO emitida por un dispositivo IO (entrada de teclado, impresora sin papel) Evento especial (el usuario presiona la tecla esc y el cronómetro llega al tiempo)
La CPU debe obtener información del origen de la interrupción a través de la línea de solicitud de interrupción.
Clasificación
Interrupción enmascarable (baja prioridad)
Solicitud de interrupción emitida a la CPU a través de la línea de solicitud de interrupción enmascarable INTR, La CPU puede enmascarar o no configurar la palabra de máscara correspondiente en el controlador de interrupciones. Las solicitudes de interrupción enmascaradas no se envían a la CPU
Interrupción no enmascarable (alta prioridad)
Por ejemplo: corte de energía
Solicitud de interrupción emitida a la CPU a través de la línea de solicitud de interrupción dedicada no enmascarable NMI
proceso de respuesta
No se puede interrumpir todo el proceso de respuesta.
Desactivar interrupciones
Deshabilite las nuevas interrupciones correspondientes configurando el bit de habilitación de interrupción IF flip-flop.
Guardar puntos de interrupción y estado del programa
Para poder regresar al lugar interrumpido para continuar la ejecución después de que se complete el procesamiento de excepciones e interrupciones.
Identifique excepciones e interrupciones y vaya al programa apropiado.
Método de identificación
Identificación de software
La CPU establece un registro de estado de excepción para registrar la causa de la excepción. Consulta el registro de estado de excepción en orden de prioridad y luego ve al controlador correspondiente en el kernel.
Identificación de hardware
interrupción vectorizada
La primera dirección de una excepción o interrupción se denomina vector de interrupción. Todos los vectores de interrupción se colocan en la tabla de vectores de interrupción. Cada interrupción o excepción corresponde a un número de tipo de interrupción.
canal de instrucción
definición
Una instrucción se divide en múltiples etapas, cada etapa se completa con el componente funcional correspondiente.
Requerir
La longitud de la instrucción debe ser la misma. Formato de comando normal Al utilizar instrucciones de carga/almacenamiento, ningún otro registro puede acceder a la memoria. Los datos y las instrucciones están alineados en la memoria.
Aventura en la línea de montaje
① Estructura de aventura
Varias instrucciones compiten por el mismo recurso al mismo tiempo
Solución 1) Suspender instrucciones posteriores 2) Configure la memoria de datos y la memoria de instrucciones por separado
② Aventura de datos
La siguiente instrucción utilizará el resultado del cálculo de la instrucción actual y las dos instrucciones provocarán un conflicto de datos.
leer después de escribir
Lee y escribe
escribir tras escribir
Solución 1) Suspender las instrucciones y las instrucciones posteriores que encuentren conflictos relacionados con los datos durante uno o varios ciclos 2) Configure rutas de datos relevantes (tecnología de derivación de datos) y envíe rápidamente los resultados de la operación al registro tan pronto como se obtengan. 3) Ajustar el orden de las instrucciones.
③ Controla la aventura
Las instrucciones de transferencia, llamadas, devoluciones, etc. cambiarán el valor de la PC y provocarán la interrupción del flujo.
Solución 1) Predecir ramas para instrucciones de transferencia y generar direcciones de destino de transferencia lo antes posible 2) Captura previa de instrucciones de destino en dos direcciones de flujo de control, exitosas y no exitosas.
Indicadores de desempeño del oleoducto
Rendimiento de la tubería
Aceleración del oleoducto
Tecnología avanzada de tuberías
tubería superescalar
Tecnología dinámica de múltiples emisiones.
Combinado con tecnología de programación dinámica de tuberías, mediante predicción dinámica de sucursales y otros medios. Se pueden ejecutar múltiples instrucciones independientes simultáneamente por ciclo de reloj.
Tecnología de palabra de instrucción muy larga.
Tecnología estática de múltiples emisiones.
Combine múltiples instrucciones que puedan operar en paralelo en una palabra de instrucción muy larga con múltiples códigos de operación
Tecnología de súper tubería
Los segmentos funcionales se dividen en más
multiprocesador
Flujo de instrucciones único flujo de datos único SISD
de serie
Un procesador y una memoria
ejecución secuencial
Flujo de instrucciones único flujo de datos múltiples SIMD
Tecnología paralela de datos
procesador vectorial
Flujo de datos único de múltiples instrucciones MISD
no existe
Múltiples instrucciones Múltiples flujos de datos MIMD
computación paralela
Hardware multiproceso
Subprocesos múltiples de grano fino
El subproceso múltiple se turna y se ejecuta de forma cruzada
Similar a la rotación de intervalos de tiempo
Multiproceso de grano grueso
Solo cambie de hilo cuando un hilo tenga una gran sobrecarga
Subprocesos múltiples simultáneos
En el mismo ciclo de reloj, se emiten para su ejecución varias instrucciones en varios subprocesos diferentes.
multiprocesador de memoria compartida (PSM)
Al compartir un espacio de direcciones físicas, puede ejecutar programas de forma independiente en su propio espacio de direcciones virtuales.
Acceso al almacenamiento unificado UMA
Cómo se conecta el procesador a la memoria compartida
Acceso al almacenamiento no uniforme NUMA
Circuitos lógicos combinacionales y circuitos lógicos secuenciales.
Los circuitos lógicos combinacionales no tienen control de reloj unificado Los circuitos lógicos secuenciales deben funcionar bajo tics de reloj.
Los circuitos lógicos combinacionales no contienen celdas de memoria para almacenar señales. Los circuitos lógicos secuenciales contienen celdas de memoria que almacenan señales.
Capítulo Seis autobús
Una línea de transmisión de información pública que puede ser compartida por múltiples componentes en tiempo compartido.
Envía a tiempo, recibe al mismo tiempo
Clasificación de autobuses
Autobús en chip
El autobús dentro del chip.
sistema de autobús
autobús de direcciones
Un bus unidireccional utilizado por la CPU para seleccionar la dirección de la unidad de memoria principal y la dirección del puerto IO, y no se puede transmitir de regreso.
Bus de datos
Transmitir información de datos, línea bidireccional.
autobús de control
bus de E/S
Conecte dispositivos IO de velocidad baja a media
cable de datos
Transferir datos del registro del búfer, contenido del registro de comando/estado
dirección
Dirección de puerto para transmitir datos intercambiados con la CPU
línea de control
Enviar señales de lectura y escritura.
autobús de comunicación
autobús externo
Un bus que transmite información entre sistemas informáticos o entre sistemas informáticos y otros sistemas.
Estructura del bus del sistema
Estructura de autobús único
Estructura de autobús dual
El bus de memoria principal se utiliza para transferir datos entre la CPU, la memoria principal y los canales. El bus IO se utiliza para transferir datos entre dispositivos y canales externos.
Estructura de tres autobuses.
bus de memoria principal autobús de E/S Autobús DMA
estándar de autobús
ES UN
Industria estandar de arquitectura
EISA
isa extendida para CPU de 32 bits
VESA
Asociación de estándares de electrónica de vídeo Autobús local de 32 bits
PCI
Interconexión de dispositivos externos
Bus de alto rendimiento de 32 o 64 bits
conecta y reproduce
Pertenece al autobús local.
AGP
Puerto de gráficos acelerados
Pertenece al autobús local.
PCI-E
Los últimos estándares de interfaz de bus
de serie
Reemplazar PCI, AGP
RS-232C
bus de comunicación serie
USB
bus serie universal
PCMCIA
Interfaz de computadora portátil
IDE
circuito de dispositivo integrado
SCSI
interfaz de sistema informático pequeño
sata
tecnología avanzada en serie
Actuación
Ciclo de transferencia de autobús
Consta de varios ciclos de reloj de bus.
Ciclo del reloj del autobús
Frecuencia de funcionamiento del autobús
= frecuencia de reloj/N
frecuencia del reloj del bus
El recíproco del período del reloj del autobús.
ancho de banda del bus
= Frecuencia de funcionamiento del autobús × (ancho del autobús/8)
transacción de autobús
preguntar
arbitraje
direccionamiento
transmisión
liberado
Transmisión en ráfaga (transmisión en ráfaga)
Enviar dirección primero y luego datos. Solo necesita transmitir la dirección una vez y los datos posteriores se envían continuamente.
Modo de sincronización
Modo de sincronización sincrónico
El sistema utiliza una señal de reloj unificada.
Alta eficiencia de transmisión
Poca confiabilidad
Modo de sincronización asíncrona
Temporización mediante señal de apretón de manos
Sin modo de enclavamiento
Método de semi-entrelazado
Método de entrelazado completo
Control de arbitraje de autobuses (arbitraje de autobús)
centralizado
cadena
diseño de circuito
El dispositivo más cercano al autobús tiene la máxima prioridad.
Equipo fácil de ampliar
Sensible a fallos de circuito
Utilice sólo dos cables para determinar qué bus utiliza un dispositivo
Contratiempo
diseño de circuito
El conteo comienza desde 0.
Prioridad fija
El conteo comienza desde el punto final.
Las prioridades son iguales
El valor del contador lo establece el programa.
prioridad variable
Control complejo
Tome líneas de inicio de sesión₂
solicitud independiente
diseño de circuito
respuesta rápida
Control de prioridad flexible
El control del autobús es complejo
Toma 2n líneas
repartido
La lógica de control se distribuye entre varios dispositivos conectados al bus.
Capítulo VII de entrada y salida
sistema de E/S
hardware de E/S
Los dispositivos IO están conectados al bus del sistema de la placa base a través del controlador de dispositivos
dispositivo externo
dispositivo de entrada
teclado ratón
dispositivo de salida
monitor
tamaño de pantalla
resolución
Escala de grises
La diferencia de color, cuantos más niveles de grises, más realista será la imagen.
8 bits (256 niveles) → 256 colores
actualizar
frecuencia de actualización
memoria de visualización
Capacidad de VRAM = resolución × número de bits en escala de grises Ancho de banda de VRAM = resolución × número de bits en escala de grises × velocidad de fotogramas
impresora
Clasificación por método de trabajo.
impresora matricial de puntos
Impresora matricial de puntos
Impresoras de inyección de tinta
impresora laser
En una computadora, un código interno de caracteres chinos ocupa 2B en la memoria principal.
interfaz
Un dispositivo lógico que coordina la transferencia de datos entre los periféricos y el host.
dispositivo de entrada
dispositivo de salida
Almacenamiento externo
software de E/S
conductor
programa de usuario
programa de gestion
método de control IO
Método de consulta del programa
La CPU comprueba continuamente mediante el programa si el dispositivo IO está listo
Una vez que la CPU inicia IO, debe detener la ejecución del programa actual.
Características
La CPU tiene un fenómeno de espera escalonada.
Sigue repitiendo la misma operación hasta completar
Trabajo en serie de CPU y IO
Modo de interrupción del programa
Cuando el dispositivo IO esté listo, envíe una solicitud de interrupción a la CPU
Función
Paralelismo de CPU y IO
Manejo de fallas de hardware, errores de software.
la interacción persona-ordenador
Múltiples programas, operaciones de tiempo compartido.
Proceso de trabajo
La respuesta de interrupción ocurre al final de la ejecución de una instrucción.
solicitud de interrupción
Arbitraje de respuesta a interrupción
Interrupción no enmascarable > Excepción interna > Interrupción enmascarable
Condiciones de respuesta a la interrupción
La fuente de interrupción tiene una solicitud de interrupción.
interrupción de apertura de CPU
Se ejecuta una instrucción
vector de interrupción
La dirección de entrada del programa de interrupción.
Determinar el tipo de interrupción
Después de que la CPU responde a la interrupción, obtiene el número del tipo de interrupción identificando la fuente de la interrupción y calcula la dirección del vector de interrupción correspondiente. Luego, de acuerdo con esta dirección, la dirección de entrada del programa de servicio de interrupción se extrae de la tabla de vectores de interrupción y luego se envía a la PC y luego se ejecuta el programa de servicio de interrupción.
prioridad de respuesta
Hecho a través de la cola de hardware
prioridad de procesamiento
Ajuste dinámicamente utilizando tecnología de enmascaramiento de interrupciones
palabra de máscara de interrupción
Proceso de manejo de interrupciones
múltiples interrupciones
modo DMA memoria de acceso directo
Ruta de datos directa, entre la memoria principal y los dispositivos IO
Existe una ruta de datos directa entre la memoria principal y la interfaz DMA.
camino lógico
Un método para controlar la transmisión de información completamente mediante hardware.
Durante la transferencia de datos, la determinación de la dirección de la memoria principal la completa directamente el circuito de hardware.
La memoria principal debe abrir un búfer dedicado para proporcionar y recibir datos periféricos de manera oportuna.
El programa debe preprocesar DMA antes de la transmisión y posprocesarlo mediante interrupción una vez completada la transmisión.
La respuesta de DMA ocurre después de una transacción de bus y el DMA tiene mayor control que la CPU.
Método de transferencia DMA
1) Detener el acceso de la CPU a la memoria
2) Apropiación indebida periódica
3) DMA y CPU acceden alternativamente a la memoria
Proceso de transferencia DMA
1) El preprocesamiento consume CPU La CPU completa los preparativos necesarios.
Entre ellos, DMA no puede contactar directamente con el programa de usuario y utiliza el controlador del dispositivo como intermediario.
2) La transmisión de datos no ocupa CPU Totalmente controlado por hardware DMA
3) El posprocesamiento consume CPU El controlador DMA envía una solicitud de interrupción a la CPU
modo de canal
Cuando el host ejecuta un comando IO, inicia el canal relevante, ejecuta el programa del canal y completa la operación IO.
Procesador de canal, un coprocesador especialmente utilizado para la gestión de IO, con funciones de interrupción, DMA y control de programa.
El programa del canal está en la memoria principal, es ejecutado por el canal y solo se puede ejecutar en un sistema IO con un canal.
Más eficiente
interfaz E/S (controlador IO)
Función
Decodificación de dirección, selección de dispositivo.
Comunicación entre el host y los periféricos.
buffer de datos
Conversión de formato de señal
Transmitir comandos de control e información de estado.
estructura basica
La interfaz IO está conectada a la memoria y la CPU a través del bus IO en el lado del host.
Los puertos son registros utilizados para leer y escribir en circuitos de interfaz. Múltiples puertos y lógica de control juntos forman una interfaz
La instrucción IO es una instrucción privilegiada que utiliza el software IO subyacente del kernel del sistema operativo.
tipo
Dividido por método de transmisión de datos.
de serie
paralelo
Dividido por método de control
interfaz del programa
Interfaz de interrupción
Interfaz DMA
Dividido por función
Programable
No programable
Puerto E/S
Memoria a la que accede directamente la CPU en el circuito de interfaz
Direccionamiento
Direccionamiento unificado
mapeo de memoria
Distinguir del código de dirección
Trate los puertos IO como unidades de almacenamiento para la asignación de direcciones
Utilice instrucciones de acceso a la memoria unificada para acceder a los puertos IO
Direccionamiento independiente
método de mapeo IO
Configure instrucciones IO especiales para acceder
Al ejecutar una instrucción, la CPU usa líneas de dirección para seleccionar el puerto IO Utilice líneas de datos para transferir datos entre registros de CPU y puertos IO