La ingeniería detrás del mundo digital: ¿cómo funcionan los CPUs?

Educación Branch www.youtube.com

Resumen Breve

El video explora cómo funcionan las CPUs, destacando su evolución desde computadoras clásicas hasta procesadores modernos, así como su arquitectura interna y el flujo de procesamiento de instrucciones.

  • Se realiza un desmantelamiento de la MacBook Pro para observar componentes.
  • Se introduce la analogía de una calculadora para explicar diferentes elementos de la CPU, sus funciones y el ciclo de ejecución de instrucciones.

Introducción y evolución de las CPUs

El video comienza explicando el rol crucial de la CPU en diversos dispositivos como computadoras y smartphones, describiéndola como el "cerebro" del dispositivo. Se hace una comparación entre el chip 62 de la Apple 2e de 1983 y el procesador M1 de la MacBook Pro, señalando la evolución de los transistores y los cálculos por segundo capaces de realizar.

Desmontaje de la MacBook Pro y componentes

Se realiza un desmontaje en 3D de la MacBook Pro, identificando componentes como la batería, el panel táctil, la tarjeta madre y la CPU. Al desoldar la CPU, se descubre su estructura interna: una cubierta protectora para disipar calor y un interposer con miles de conexiones. Además, se explorará el diseño complejo del chip que incluye núcleos de alto rendimiento y secciones de almacenamiento.

Analogía de la CPU y sus elementos

La CPU se compara con una calculadora avanzada, introduciendo una mesa, un lápiz, libros y un robot controlador para explicar cómo se mueven los datos e instrucciones. Los estantes representan el almacenamiento, el carrito es la memoria temporal, y los registros y la ALU tienen funciones específicas dentro de la analogía que se relacionan con operaciones lógicas y aritméticas.

Funcionamiento de la CPU: instrucciones y ciclos

Se detallan los pasos del ciclo de búsqueda, decodificación y ejecución de instrucciones. Se explica cómo se cargan programas y se operan sobre ellos mediante la ALU, así como el uso de ciclos for y saltos de programación. También se menciona la importancia del contador de programa para seguir el flujo de las instrucciones en la CPU.

Diferencias entre CPUs clásicas y modernas

Se discuten las diferencias entre las CPU clásicas, como el 6502 de Apple, y los procesadores modernos, destacando el crecimiento en el número de instrucciones, capacidades de registro y mejoramiento en la velocidad del reloj. Se menciona que aunque las arquitecturas han evolucionado, el ciclo básico de operación sigue siendo el mismo.

RISC vs CISC y arquitecturas modernas

Se introduce el concepto de arquitecturas RISC (Reduced Instruction Set Computer) y CISC (Complex Instruction Set Computer), explicando cómo RISC tiene instrucciones más simples y se ejecuta rápidamente, mientras que CISC tiene una mayor variedad de instrucciones. Se analizan las implicaciones de eficiencia y energía en el uso de estas arquitecturas.

Arquitecturas internas y SOCs modernos

Se concluye el video hablando sobre las arquitecturas de procesadores modernos, como el M1, que combina CPU, GPU y otros tipos de procesamiento en un solo chip, conocido como SOC (System on Chip). Se explican las características que diferencian estos chips, incluidas la complejidad arquitectónica y los componentes de hardware utilizados.

Despedida y créditos

El video finaliza agradeciendo a los espectadores y pidiendo que sigan el canal para más contenido educativo. Se hace énfasis en el tiempo y esfuerzo invertido en la creación de los videos, mencionando además la importancia del apoyo de los suscriptores.

Summarize any YouTube video in seconds

Get summaries like this one for any video, in your language, with the free Summ app.

Download on the App Store
Get it on Google Play

Transcript

YouTube Transcript Generator

0:00 En cada computadora, smartphone, consola de videojuegos, laptop o casi cualquier dispositivo que usas, hay una CPU o unidad central de procesamiento. Y en este video vamos a ver cómo funcionan. Un procesador típico para una laptop potente como esta. Está hecho de miles de millones de transistores nanoscópicos conectados por capas de cables y funciona como el cerebro del dispositivo. Antes de analizar el microprocesador y su complejidad, viajemos a los inicios de las computadoras personales y consolas de videojuegos. Comparemos la Apple 2e de 1983 con la MacBook Pro actual. Dentro de la

0:45 Apple 12 hay un chip 62, considerado uno de los grandes antecesores de los procesadores modernos. Este chip está construido con 4,528 transistores y puede realizar alrededor de 430,000 cálculos por segundo. Aunque solo ejecutaba aplicaciones básicas y videojuegos simples, este chip fue clave para una generación de computadoras y consolas como el NES. la Commodor 64 y la Atari. Compáralo con el procesador M1 de la MacBook Pro, que está construido con 16,000 millones de transistores y es capaz de realizar alrededor de 3 billones de cálculos por segundo, lo que le permite generar mundos 3D expansivos

1:33 con gráficos envolventes. Aunque estos dos chips se lanzaron con 45 años de diferencia, sus principios de funcionamiento son similares. Estos dispositivos comparten una especie de ADN tecnológico común. De hecho, si abriéramos una computadora de escritorio y sacáramos la CPU o la GPU dentro de la tarjeta gráfica o desarmáramos un Nintendo Switch o un teléfono inteligente y encontráramos el sistema en un chip o soc, o incluso si pudieras entrar a un centro de datos de IA y tomar un chip de IA de última generación, encontrarías que estos procesadores operan con los mismos principios fundamentales. En otras palabras, tanto el Oregon Trail

2:18 de hace 50 años como los algoritmos avanzados de IA se ejecutan en procesadores con un ADN tecnológico similar, pero por supuesto uno de estos chips 10,000 millones de veces más potente computacionalmente que el otro. Así que en este video vamos a desarmar este microprocesador y descubrir [música] exactamente cuál es el ADN tecnológico compartido y cómo permite que funcionen la CPU. Y solo para que quede claro, el ADN tecnológico no son los transistores y no son [música] las compuertas lógicas, sino más bien es un diseño arquitectónico y un principio operativo básico que es fundamental para los microprocesadores y que diferencia a estos chips de otros

3:04 circuitos integrados. Así que quédate y vamos a sumergirnos de lleno. [música] Hagamos un rápido desmontaje animado en 3D de esta MacBook Pro. Al abrirla hallamos varios componentes como el panel táctil, batería, bocinas, ventilador y tarjeta madre. En el centro, sobre la tarjeta madre, están las unidades disco duro que almacenan tus archivos. y varios otros chips. Bajo el tubo de calor está la Drum, memoria de trabajo temporal y la unidad central de procesamiento. Desoldamos la Drum y la CPU, las abrimos y hallamos tres partes dentro. En la

3:51 parte superior hay una cubierta protectora que conduce y disipa el calor. Abajo hay un interposer con miles de puntos de conexión a ambos lados y cables internos soldados. él está el circuito integrado o CA, que también se llama dado y es la parte funcional de la CPU en el dado. Observamos el diseño complejo de miles de millones de transistores y cables organizados en secciones como los cuatro núcleos de cómputo de alto rendimiento, cuatro núcleos de bajo consumo de energía, núcleos de procesamiento gráfico, caché, memoria y muchas otras secciones. Nos acercaremos a un núcleo de alto rendimiento donde encontramos que se divide en bloques funcionales que etiquetaremos y reorganizaremos en un

4:38 diagrama arquitectónico. Este diagrama muestra cómo se mueven datos e instrucciones dentro de un núcleo de la CPU. Y aunque es bastante complicado, al final de este video entenderás cómo funciona. Pero por ahora, acerquémonos aún más para obtener una vista nanoscópica de un enorme laberinto de múltiples capas de cables con los transistores en la parte más baja. Observamos seis transistores conectados para formar una compuerta lógica AMD. En esta vista vemos unos 650 transistores de los 16,000 millones que forman el chip. Como miles de millones de transistores trabajan juntos. Construir una CPU capaz de jugar

5:24 videojuegos, ver películas o navegar por internet requerirá un poco de trabajo. Comencemos con una analogía que quizá conozcas. Las CPU son como calculadoras muy potentes. Esta analogía está solo un 20% completa, ya que le faltan partes críticas. Así que vamos a agregarlas para hacer una analogía más precisa. Primero vamos a agregar una mesa para que la calculadora se siente junto con un lápiz y una hoja de papel. Luego vamos a agregar filas y filas de estanterías que contienen miles de libros junto con un carrito que puede transportar una pequeña pila de libros entre las estanterías y la mesa. [música] Por último, agregaremos un robot automatizado llamado unidad de

6:10 control o controlador. El controlador puede mover libros entre estanterías, carrito y mesa y devolverlos a su lugar. El controlador también puede leer el contenido de cada libro. escribir en el papel y en los libros y usar la calculadora. Piensa en el controlador como un humano muy rápido, pero como no animamos bien humanos, usamos un robot. Ya tenemos todas las partes de la analogía. Ahora veamos cómo funciona cada una en la analogía de la CPU. Para empezar, los estantes son los dispositivos de almacenamiento en tu computadora, como los chips disco duro. El carrito representa la Drum y la mesa y su contenido representan la CPU. En la mesa

6:57 de la CPU hay un pequeño espacio para un solo libro abierto, lo cual es similar a la capacidad muy limitada de la memoria caché dentro de la propia CPU. A continuación, la hoja de papel representa los registros que se utilizan para almacenar valores o números que se están usando activamente. En ella hay cuatro registros de propósito general y otros espacios especiales de los que hablaremos luego. Además, el lápiz está ahí para escribir y borrar cosas en el papel y en los libros. La calculadora representa la unidad aritmética lógica alu. Esta calculadora alu opera en binario, solo usa los dígitos 0 y un y

7:43 puede realizar funciones simples como sumar, restar o multiplicar dos números. La calculadora alu ofrece más funciones que quizá no conozcas, pero siguen siendo simples. Por ejemplo, puede incrementar o decrementar un número en uno o la alu, realizar desplazamientos de bits, que son tomar un número y añadirle un cero al final. Desplazar bits en binario es como multiplicar por dos, mientras que en decimal es como multiplicar por 10. La alu también puede realizar funciones lógicas en dos números, como las operaciones lógicas Aend, OR o XO. Por ejemplo, aquí está la operación lógica AND para dos entradas

8:29 binarias y puedes ver que la salida es un AN lógico para cada valor posicional de las dos entradas. Sin embargo, más importante, la calculadora Alu también realiza comparaciones. Por ejemplo, puedes ingresar dos números y presionar el botón de comparación para comprobar si los números son iguales entre sí. Si lo son, se activa la bandera de igualdad y las otras como menor que o mayor que siguen desactivadas. La pantalla de la calculadora Alu que muestra el resultado se llama acumulador. Entonces, ahora que ya explicamos las diferentes partes de esta analogía, ¿cómo funciona todo junto? Primero, hay que cargar el programa a ejecutar. Es

9:14 como pasar varios libros del estante al carrito y luego poner uno en la mesa y abrirlo. Es importante notar que el carrito de drum y la memoria caché en la mesa son ambos lugares temporales y de capacidad limitada. Los estantes de disco duro almacenan mucho más y son almacenamiento semipermanente a largo plazo. Además, cuando la computadora está apagada, no hay libros en la Drum CU. Al encender la computadora, el carrito y la mesa mueven libros activamente. Revisemos el contenido de uno de los libros. Esencialmente hay dos tipos de páginas: instrucciones y datos. Puedes pensar en las instrucciones como las

10:00 indicaciones en un libro de cocina, con cada paso numerado secuencialmente a lo largo de las páginas. [música] Y las páginas de datos contienen una lista de direcciones con valores almacenados en cada dirección y son como los ingredientes que van en la receta misma. Como en la cocina, requieres receta e ingredientes para que funcione. Solo unos pocos ingredientes pueden combinarse de muchas formas con diferentes recetas, pero para no usar una analogía dentro de otra analogía, dejemos la de la cocina y enfoquémonos en los libros, la mesa y la calculadora. Empecemos desde el principio de este programa y pasemos a la página uno, la instrucción uno que se llama carga y es el tipo de instrucción más común que

10:45 tiene esta carga. Abrimos las páginas de datos y buscamos una dirección [música] específica. Luego copiamos y anotamos el valor almacenado en esa dirección en uno de los registros de propósito general en la hoja de papel. Con la instrucción uno completada, pasamos a la instrucción dos, que es incrementar el valor en el registro cero en uno. Así que colocamos el valor en la calculadora alu y presionamos sumar uno. La tercera instrucción llamada instrucción de almacenamiento se utiliza para guardar o almacenar la salida de la calculadora que se encuentra en la pantalla del acumulador en las páginas de datos en la misma dirección en la que estaba antes. Estas instrucciones simples, pero muy comunes, son

11:31 equivalentes a esta línea de código. A continuación pasamos a la instrucción cuatro y la completamos, luego a la instrucción cinco y así sucesivamente, avanzando por la lista de instrucciones que sigue y sigue. Para llevar un registro de cuál es la siguiente instrucción que se debe completar, usamos una de las ubicaciones especiales en la hoja de papel que mencionamos anteriormente. Se llama contador de programa o PC también, registro de dirección o puntero de instrucción. Como el PC actualmente tiene un valor de cinco, buscamos la instrucción cinco, la completamos y aumentamos el contador de programa en uno. Por lo tanto, la siguiente instrucción a completar será

12:16 la seis. Pero, ¿qué sucede si tras completar la instrucción seis queremos ir directo a la instrucción 42? Bueno, para hacer esto usamos una instrucción de salto en la siete que establece directamente el valor en el contador de programa a un nuevo número y en este caso es 42. Como resultado, la secuencia de instrucciones será 5 6 7, que es la instrucción de salto, luego 42, 43 44 y así sucesivamente. Un conjunto similar de instrucciones se llama rama condicional, que se utiliza para implementar sentencias if. bucles y otro código condicional. Usaremos un ejemplo de ciclo for con algunas líneas

13:01 simples de código adentro. Este ciclo repite el código dentro de él cuatro veces. Aquí están las instrucciones del ciclo for y del código dentro de él. Codificamos por colores los elementos para rastrear qué líneas de código corresponden a cada instrucción. Más adelante, en este video, explicaremos cómo los compiladores transforman el código en instrucciones. Pero por ahora enfoquémonos en el ciclo for y sus instrucciones. Aquí es donde la variable i se establece en cero y se almacena en una dirección en las páginas de datos. Aquí la variable i se carga desde esa dirección, se incrementa en uno y está el contenido del ciclo. En la parte superior puedes ver las tres

13:48 instrucciones: cargar, comparar y saltar si es mayor o igual que la carga. Primero toma el valor de i y lo coloca en el registro cer0. Comparar alimenta el valor de i almacenado en el registro cer0 y un valor de cuatro en la ALU y los compara, lo que da como resultado que se activen las banderas de comparación correspondientes. Después, la instrucción de bifurcación mayor o igual verifica si está activada la bandera de mayor, que o la de igual, y si es así, establece el contador de programa en 23. lo que corresponde a completar y salir del ciclo. Sin embargo, si es menor que 4, no se activan esas banderas y el ciclo continúa hasta que llega a la

14:35 instrucción de salto en la dirección 22, donde el salto establece el contador de programa en seis, que corresponde al inicio del ciclo for. Como resultado, el ciclo se repetirá un total de cuatro veces. Nota que este código de la izquierda está en C, mientras que las instrucciones reales que ejecuta tu CPU están en un lenguaje binario llamado código máquina y la versión semileíble de las instrucciones se llama ensamblador. Modificamos este ensamblador para mayor legibilidad. Un dato interesante es que podrías pensar que con todo lo que puede hacer una computadora debe haber decenas de miles de instrucciones diferentes. El procesador 6502 en la Apple segunda E

15:22 de 1983 solo ejecutaba 56 instrucciones. El chip M1 moderno de la MacBook Pro ejecuta 354 instrucciones. Esta es la lista de instrucciones que cada chip ejecuta. Si te fijas, la mayoría de las instrucciones son simples. Pensemos en eso por un momento. Cada cosa que haces en tu computadora puede construirse usando solo varias secuencias de 354 instrucciones diferentes. Sin embargo, muchos programas tienen millones y millones de líneas de instrucciones y esperemos que no tengan errores. Ahora que hablamos del rango de instrucciones, exploremos cómo funcionan

16:09 los CPU. Para completar una instrucción siempre hay tres pasos clave: buscar, decodificar y ejecutar. El primer paso es buscar y es donde el controlador usa el valor en el contador de programa para buscar entre las páginas de instrucciones en el libro la dirección de instrucción correspondiente. El controlador luego copia la instrucción encontrada en esa dirección a una ubicación especial llamada registro de instrucción actual o sir. El controlador también incrementa el contador de programa en uno. El segundo paso es decodificar, donde la instrucción actual se envía al decodificador de instrucciones. En la analogía anterior, este decodificador es clave para el controlador y en esencia

16:57 es el circuito que recibe una instrucción y tanto interpreta lo que realmente hace el código de máquina de una instrucción, como produce simultáneamente las señales de control para ejecutar correctamente esa instrucción. Este circuito de codificador usa los valores binarios de la instrucción y una compleja red de compuertas lógicas para generar las señales de control que luego se envían a los elementos correspondientes. En la CPU, los decodificadores de instrucciones son de las partes más complejas, pero aquí tienes un ejemplo y una explicación simplificada. Supongamos que esta instrucción de suma está en el CIR y entra al decodificador de instrucciones.

17:42 La primera parte de la instrucción binaria especifica que queremos usar la alu. Con la alu seleccionada, los siguientes 3 bits indican que queremos usar la función de suma y luego los últimos 4 bits de la instrucción lo indican. Queremos que los valores en el registro cero y el registro uno sean direccionados y enviados a la ALU. Decodificar instrucciones es mucho más complejo, pero continuemos con el tercer paso, ejecutar. En esta etapa, usando nuestro ejemplo de instrucción, las señales de control del decodificador de instrucciones y un conjunto intrincado de señales eléctricas de temporización se usan primero para enviar el valor en el registro cero y luego el valor en el

18:29 registro uno a la ALU. Las señales de temporización ajustan el tiempo que la electricidad tarda en ir de los registros a la ALU. Para que transistores y compuertas lógicas cambien de estado. Así se asegura el resultado correcto en la salida. Tras ingresar los valores, la ALU suma ambos números y una señal de temporización guarda el resultado en el acumulador. Así finalizando la ejecución. Estos [música] tres pasos, buscar, decodificar y ejecutar, se utilizan para completar una sola línea de instrucciones y una vez que se completa, estos pasos se repiten usando el nuevo valor en el contador de programa. Buscar, decodificar y ejecutar forman un

19:15 ciclo. Repasémoslo. Durante la fase de búsqueda, el controlador usa el valor del contador de programa para obtener la instrucción correspondiente y la coloca en el CR y el contador de programa aumenta en uno. Durante la decodificación, el binario de la instrucción va al decodificador, donde con puertas lógicas generan las señales de control eléctricas adecuadas. Finalmente, durante la ejecución, la instrucción se completa usando señales de control y temporización. Aquí el valor del acumulador se guarda nuevamente en una dirección de memoria. Esto usando la analogía es como guardar el valor de la pantalla de la calculadora en una ubicación de datos

20:01 del libro. El ciclo de buscar, de codificar y ejecutar se repite usando el siguiente valor del contador de programa. El ciclo de buscar, decodificar y ejecutar se utiliza en todos los procesadores sin importar si es el 6502 en la Apple CD o el M1 en la MacBook Pro. Pero por supuesto hay muchas diferencias como el tamaño de la memoria caché, los registros o las funciones en la calculadora Alu y mucho más. Veremos las diferencias exactas pronto. Por ahora, es importante saber que Fetch 2 Code usa el reloj de tu computadora para regular su ritmo. El chip 6502 tenía un reloj de 1 MHz marcando un

20:48 millón de veces por segundo, por lo que cada ciclo fetch to Code duraba un microsegundo. Además, el 6502 era un procesador de 8 bits, lo que significa que el tamaño de los registros en la entrada y salida de la alu era de 8 bits de ancho. El chip M1 es un procesador de 64 bits que maneja números más grandes y usa un reloj de 3.2 GHz. Así que cada paso toma un tercio de nanoseundo. El chip M1 y otros modernos usan segmentación de instrucciones poniendo varias en cola para que la obtención, de codificación y ejecución de diferentes instrucciones y contadores de programa

21:35 se realicen simultáneamente. Al mismo tiempo, hay muchas otras optimizaciones en los procesadores modernos de las que pronto hablaremos, pero es importante entender eso desde el momento en que enciendes tu laptop, smartphone, consola de videojuegos, GPU o servidor de IA, hasta el momento en que lo apagas, el procesador está ciclando continuamente. buscar, decodificar, ejecutar una y otra vez usando programas llenos de instrucciones y datos junto con el reloj de la CPU para regular su ritmo. En esencia, este ciclo de buscar, de codificar y ejecutar es la sección común del ADN tecnológico que ha impulsado a cada procesador construido en los últimos 50 años. Este ciclo de pasos es

22:23 increíblemente poderoso, capaz de realizar billones a cuatrillones de operaciones matemáticas cada segundo en un solo chip. Tal vez te preguntes si hay alternativas al ciclo, buscar, decodificar ejecutar. Bueno, existe un mundo de diferentes tipos de microchips, pero específicamente las alternativas incluyen circuitos integrados de aplicación específica o Asix. como estos microchips que se encuentran en esta computadora de minería de Bitcoin. Los arreglos de compuertas programables en campo o FPGAS son chips clave en computadoras automotrices y cámaras. Asix y FPGs no buscan ni decodifican, sino que ejecutan operaciones

23:10 repetitivas a través de patrones fijos de compuertas lógicas y unidades de ejecución. Esto los hace muy optimizados, pero poco flexibles. Más lejos de estos chips están las computadoras cuánticas basadas en cubits y circuitos cuánticos que abordaremos en futuros videos. Ya cubrimos Buscar, decodificar y ejecutar. Ahora es importante mencionar dos pasos más: [música] memoria y escritura de resultados. La memoria es análoga a mover libros de los estantes disco duro al carrito de drum y luego a la mesa o memoria caché. Y la escritura de resultados es como escribir datos en los libros. Cuando se requiere espacio para un libro nuevo en

23:55 la mesa, el libro anterior se pone en el carrito de drum y luego vuelve a los estantes. Estos pasos usan el registro de dirección de memoria esencial para el funcionamiento de una computadora. Pero suelen tardar más que buscar, decodificar y ejecutar. Y por lo tanto, en algunas arquitecturas y libros de texto se incluyen en el ciclo y a veces no. Preparamos un video sobre el movimiento de información entre estas memorias, así que estate atento. Ahora que descubrimos el ADN tecnológico en todos los procesadores, así como el ADN en el núcleo, tiene varias capas de organización en los seres vivos. También existen muchas capas de complejidad o

24:42 abstracción entre el ciclo de buscar, de codificar y ejecutar en una computadora, jugar videojuegos o navegar en internet. Repasemos brevemente algunos temas más avanzados para terminar este video. Antes dijimos que el chip M1 de la MacBook Pro ejecuta 354 instrucciones diferentes. Este conjunto de instrucciones llamado ARM84 pertenece a la arquitectura Risk, es decir, una computadora con conjunto reducido de instrucciones. Por ejemplo, aquí hay un juego simple de la viborita usando 145 líneas de código en C. Es trabajo de un compilador que es un software aparte. Tomar este código junto con las 354 instrucciones, Risk de ARM

25:30 B84 y generar una lista de 676 instrucciones en ensamblador equivalentes a las instrucciones de código máquina que se encontrarían en un libro o programa llamado Snake App. La otra arquitectura común en chips de Intel y AMD se llama Cisc, computadora con conjunto de instrucciones complejo y tiene miles de instrucciones posibles. Por ejemplo, aquí está el programa equivalente de Snila para ejecutarse en un chip de Intel o AMD usando Cisc e instrucciones X86 de 64 bits. Ahora solo son 560 instrucciones. Algunas diferencias clave entre Risk y CIS son que cada instrucción Risk es

26:16 relativamente simple y se ejecuta a una velocidad de ejecución consistentemente rápida. Las arquitecturas Risk son más eficientes energéticamente y por eso se usan en teléfonos inteligentes, mientras que las SIS tienen miles de instrucciones y agrupan más en una sola. El decodificador de instrucciones Sisc es más complejo y las instrucciones pueden tener velocidad de ejecución variable, a veces tomando varios ciclos de reloj. Existen más ventajas y desventajas entre Risk y CISC, que explicaremos en otro video, pero consideramos importante mencionar estas diferencias simplificadas aquí. La arquitectura de computadoras es muy

27:01 compleja con múltiples capas y aspectos. Plane hacer más videos que profundicen en estos temas, pero es importante señalar que cada video que hacemos toma cerca de 100 horas combinadas de investigación, escritura [música] de guion, modelado, animación y edición. Por ejemplo, pasamos más de 250 horas desarmando estas computadoras que compramos en eBay [música] y reconstruyendo meticulosamente cada uno de los modelos 3D en Blender. Así que [música] si pudieras tomarte unos segundos para darle like a este video, suscribirte si aún no lo has hecho y compartir este video con alguien. Si tienes curiosidad sobre cómo funcionan los CPU, escribe un comentario abajo.

27:46 Nos ayudaría mucho. Solo unos segundos de tu tiempo nos ayudan mucho más de lo que crees. Así que gracias. En la sección final de este video hablaremos sobre este diagrama que mostramos antes y la arquitectura de procesadores modernos como el M1. En contraste, la analogía que hemos presentado es bastante simple y probablemente pienses que debe haber más componentes en una CPU real. De hecho, esta analogía se parece bastante a lo que sucede dentro de una computadora Apple OC. Las unidades de disquete son las estanterías y los chips de drum, el carrito al abrir la computadora y luego al entrar en el procesador 6502

28:32 encontramos un circuito integrado o chip que tiene las secciones correspondientes que se organizarán en un diagrama arquitectónico interno. En este diagrama puedes ver el decodificador de instrucciones, la alu, el contador de programa, el registro de instrucción actual, los otros registros y algunas otras secciones. Aquí se usa el contador de programa para obtener una instrucción. Aquí es donde las instrucciones y datos de los chips Drumen. [música] Aquí se decodifican las instrucciones y se generan señales de control. No hay caché en el 6502 porque la drum de los 80 era tan rápida como las instrucciones. La tabla en la

29:18 analogía es aún más pequeña. Como mencionamos al inicio, el chip 6502 está hecho de 4528 transistores. Así que veamos cómo se vería un chip M1 con 16,000 millones de transistores. Para empezar tenemos que aumentar significativamente el tamaño de esta tabla. Luego tenemos que dividir áreas para cada uno de los núcleos de rendimiento y eficiencia energética, la GPU y otras áreas. Cuando nos enfocamos en uno de los núcleos de rendimiento, vemos el diagrama complejo de antes. Así que hablemos de cómo se compara este diagrama con nuestra analogía. Hay un conjunto separado de cachés de datos e instrucciones de 64 KB. Como mencioné

30:06 antes, hay una canalización para poner en cola ocho instrucciones por ciclo de reloj y secciones adicionales, como un predictor de bifurcaciones para reducir problemas con las bifurcaciones condicionales y ayudar a que la canalización funcione sin problemas. Aquí ves el decodificador en canalización y 32 registros generales. La diferencia principal es que la calculadora se divide en ocho calculadoras pequeñas, cada una con funciones específicas. incluye una sección especial para instrucciones de carga y almacenamiento. Este es el diseño de solo un núcleo de los ocho. Existen arquitecturas muy distintas, tanto en la unidad de procesamiento gráfico como en la de procesamiento neuronal. Una nota importante es que la inclusión de estos

30:52 tres tipos de procesadores, junto con aceleradores de hardware como el motor de medios hace que este chip M1 esté más cerca de un sistema en un chip o soc. que de una CPU tradicional. De manera similar, todos los procesadores en estos dispositivos, incluyendo la CPU y tu computadora de escritorio, pueden considerarse Socks y por lo tanto la diferencia es más un término de mercadotecnia que uno técnico. Cabe mencionar que el M1, como todos los procesadores modernos, son diseños y conocimientos propietarios. Por eso, los diagramas mostrados son aproximaciones basadas en aportes de expertos de la industria. Finalmente, hablemos de nuestra analogía en términos de los chips GPU que se encuentran en las

31:39 tarjetas gráficas. Tenemos un video aparte que cubre cómo funcionan las tarjetas gráficas, pero con respecto a esta analogía, un núcleo CUDA de GPU en realidad es muy similar en complejidad a la arquitectura del 6502. Por lo tanto, con entre 10,000 y 20,000 núcleos CUDA en un solo chip de GPU es como tener una enorme matriz de núcleos 6502. La diferencia es que las GPU normalmente usan calculadoras alu de 32 bits y realizan cálculos de instrucción única, múltiples hilos o SIMTI, donde se obtiene una sola instrucción, se decodifica y luego se distribuye a un grupo de núcleos. Y luego esos núcleos ejecutan esa instrucción usando

32:24 diferentes direcciones y datos. ST y la arquitectura [música] de las GPU tienen más particularidades. Terminemos este video sobre el funcionamiento de los CPU. Agradecemos a nuestros patrocinadores de Patreon y miembros de YouTube por su apoyo. Para apoyar nuestro trabajo, encuentra los enlaces en la descripción. [música] Esto es Branch Education y creamos animaciones en 3D que exploran a fondo la tecnología que impulsa nuestro mundo moderno. Mira otro video de branch en estas tarjetas o suscríbete aquí. Gracias por ver todo.

Share

YouTube Video Summaries