Los transistores sirven para múltiples propósitos en un circuito eléctrico, es decir, interruptores, para amplificar señales electrónicas, lo que le permite controlar la corriente, etc.
Sin embargo, recientemente leí sobre la ley de Moore, entre otros artículos aleatorios de Internet, que los dispositivos electrónicos modernos tienen una gran cantidad de transistores empaquetados, y la cantidad de transistores que se encuentran en la electrónica moderna está en el rango de millones, si no miles de millones.
Sin embargo, ¿por qué exactamente alguien necesitaría tantos transistores de todos modos? Si los transistores funcionan como interruptores, etc., ¿por qué necesitaríamos una cantidad tan absurdamente grande de ellos en nuestros dispositivos electrónicos modernos? ¿No somos capaces de hacer las cosas más eficientes para usar muchos menos transistores que los que usamos actualmente?
Los transistores son interruptores, sí, pero los interruptores son más que solo para encender y apagar las luces.
Los interruptores se agrupan en puertas lógicas. Las puertas lógicas se agrupan en bloques lógicos. Los bloques lógicos se agrupan en funciones lógicas. Las funciones lógicas se agrupan en chips.
Por ejemplo, una puerta TTL NAND generalmente usa 2 transistores (las puertas NAND se consideran uno de los componentes básicos de la lógica, junto con NOR):
simular este circuito : esquema creado con CircuitLab
A medida que la tecnología pasó de TTL a CMOS (que ahora es el estándar de facto), básicamente hubo una duplicación instantánea de transistores. Por ejemplo, la puerta NAND pasó de 2 transistores a 4:
Se puede hacer un pestillo (como un SR) usando 2 puertas CMOS NAND, es decir, 8 transistores. Por lo tanto, se podría crear un registro de 32 bits utilizando 32 flip-flops, es decir, 64 puertas NAND o 256 transistores. Una ALU puede tener varios registros, además de muchas otras puertas, por lo que la cantidad de transistores crece rápidamente.
Cuanto más complejas sean las funciones que realiza el chip, más puertas se necesitan y, por lo tanto, más transistores.
Su CPU promedio en estos días es considerablemente más compleja que, digamos, un chip Z80 de hace 30 años. No solo usa registros que tienen 8 veces el ancho, sino que las operaciones reales que realiza (transformaciones 3D complejas, procesamiento de vectores, etc.) son mucho más complejas que las que pueden realizar los chips más antiguos. Una sola instrucción en una CPU moderna puede tomar muchos segundos (o incluso minutos) de cómputo en una antigua de 8 bits, y todo eso se hace, en última instancia, al tener más transistores.
Revisé al proveedor local de varios dispositivos semiconductores y el chip SRAM más grande que tenían era de 32 Mbits. Son 32 millones de áreas individuales donde se puede almacenar un 1 o un 0. Dado que se necesita "al menos" 1 transistor para almacenar 1 bit de información, entonces eso es 32 millones de transistores como mínimo absoluto.
¿Qué te da 32 Mbits? Son 4 Mbytes o aproximadamente el tamaño de un archivo de música MP3 de 4 minutos de baja calidad.
EDITAR: una celda de memoria SRAM según mi búsqueda en Google se ve así: -
Entonces, eso es 6 transistores por bit y más como 192 millones de transistores en ese chip que mencioné.
Creo que el OP puede confundirse con los dispositivos electrónicos que tienen tantos transistores. La Ley de Moore afecta principalmente a las computadoras (CPU, SRAM/DRAM/almacenamiento relacionado, GPU, FPGA, etc.). Algo así como una radio de transistores podría estar (en su mayoría) en un solo chip, pero no puede hacer uso de tantos transistores. Los dispositivos informáticos, por otro lado, tienen un apetito insaciable por los transistores para funciones adicionales y anchos de datos más amplios.
Como se indicó anteriormente, SRAM requiere 6 transistores por bit. A medida que ampliamos nuestros cachés (por motivos de eficiencia), necesitamos más y más transistores. Mirando una oblea de procesador , puede ver que el caché es más grande que un solo núcleo de un procesador y, si mira más de cerca los núcleos, verá partes bien organizadas en él, que también son caché (probablemente datos e instrucciones L1 cachés). Con 6 MB de caché, necesita 300 millones de transistores (más la lógica de direccionamiento).
Pero, también como se dijo anteriormente, los transistores no son la única razón para aumentar el número de transistores. En un Core i7 moderno, tiene más de 7 instrucciones ejecutadas por período de reloj y por núcleo (utilizando la conocida prueba dhrystone). Esto significa una cosa: los procesadores de última generación realizan una gran cantidad de cómputo paralelo. Hacer más operaciones al mismo tiempo requiere tener más unidades para hacerlo y una lógica más inteligente para programarlo. Una lógica más inteligente requiere ecuaciones lógicas mucho más complejas y muchos más transistores para implementarla.
Alejándonos un poco de los detalles:
Las computadoras son dispositivos de conmutación digital complejos. Tienen capa sobre capa sobre capa de complejidad. El nivel más simple son las compuertas lógicas como las compuertas NAND, como se discutió. Luego llegas a sumadores, registros de desplazamiento, pestillos, etc. Luego agregas lógica sincronizada, decodificación de instrucciones, cachés, unidades aritméticas, decodificación de direcciones, y sigue y sigue y sigue. . (Sin mencionar la memoria, que requiere varios transistores por bit de datos almacenados)
Cada uno de esos niveles utiliza muchas partes del nivel de complejidad anterior, todas las cuales se basan en muchas puertas lógicas básicas.
Luego agregas concurrencia. Para obtener un rendimiento cada vez más rápido, las computadoras modernas están diseñadas para hacer muchas cosas al mismo tiempo. Dentro de un solo núcleo, el decodificador de direcciones, la unidad aritmética, el procesador vectorial, el administrador de caché y varios otros subsistemas se ejecutan al mismo tiempo, todos con sus propios sistemas de control y sistemas de temporización.
Las computadoras modernas también tienen un número cada vez mayor de núcleos separados (múltiples CPU en un chip).
Cada vez que subes una capa de abstracción, tienes muchos órdenes de magnitud más de complejidad. Incluso el nivel más bajo de complejidad tiene miles de transistores. Vaya a subsistemas de alto nivel como una CPU y estará hablando de al menos millones de transistores.
Luego están las GPU (Unidades de procesamiento de gráficos). Una GPU puede tener MIL procesadores de punto flotante separados que están optimizados para hacer matemáticas vectoriales, y cada subprocesador tendrá varios millones de transistores.
Sin intentar discutir cuántos transistores se necesitan para elementos específicos, las CPU usan más transistores para aumentar las capacidades, que incluyen:
Además de aumentar las capacidades de almacenamiento en bruto de RAM, caché, registros y agregar más núcleos de cómputo y anchos de bus más amplios (32 frente a 64 bits, etc.), se debe a que la CPU es cada vez más complicada.
Las CPU son unidades informáticas formadas por otras unidades informáticas. Una instrucción de la CPU pasa por varias etapas. En los viejos tiempos, había una etapa, y la señal del reloj sería tan larga como el tiempo en el peor de los casos para que todas las puertas lógicas (hechas de transistores) se establecieran. Luego inventamos el revestimiento de tuberías, donde la CPU se dividía en etapas: obtención de instrucciones, decodificación, procesamiento y resultado de escritura. Esa simple CPU de 4 etapas podría funcionar a una velocidad de reloj de 4 veces la del reloj original. Cada etapa, está separada de las otras etapas. Esto significa que no solo puede aumentar la velocidad de su reloj a 4x (con una ganancia de 4x), sino que ahora puede tener 4 instrucciones en capas (o "encauzadas") en la CPU, lo que da como resultado un rendimiento 4x. Sin embargo, ahora se crean "peligros" porque la entrada de una instrucción puede depender del resultado de la instrucción anterior, pero porque está canalizado, no lo obtendrá cuando ingrese a la etapa de proceso cuando el otro salga de la etapa de proceso. Por lo tanto, debe agregar un circuito para enviar este resultado a la instrucción que ingresa a la etapa del proceso. La alternativa es detener la canalización, lo que reduce el rendimiento.
Cada etapa de la canalización, y en particular la parte del proceso, se puede subdividir en más y más pasos. Como resultado, termina creando una gran cantidad de circuitos para manejar todas las interdependencias (peligros) en la tubería.
También se pueden mejorar otros circuitos. Un sumador digital trivial llamado sumador de "acarreo ondulado" es el sumador más fácil, más pequeño pero más lento. El sumador más rápido es un sumador de "carry look-ahead" y requiere una enorme cantidad exponencial de circuitos. En mi curso de ingeniería informática, me quedé sin memoria en mi simulador de un sumador anticipado con acarreo de 32 bits, así que lo corté a la mitad, 2 sumadores CLA de 16 bits en una configuración de acarreo ondulado. (Sumar y restar son muy difíciles para las computadoras, multiplicar es fácil, dividir es muy difícil)
Un efecto secundario de todo esto es que a medida que reducimos el tamaño de los transistores y subdividimos las etapas, las frecuencias del reloj pueden aumentar. Esto permite que el procesador haga más trabajo para que funcione más caliente. Además, a medida que aumentan las frecuencias, los retrasos en la propagación se vuelven más evidentes (el tiempo que tarda en completarse una etapa de tubería y en que la señal esté disponible en el otro lado). Debido a la impedancia, la velocidad efectiva de propagación es de aproximadamente 1 pie por nanosegundo. (1GHz). A medida que aumenta la velocidad de su reloj, el diseño del chip se vuelve cada vez más importante, ya que un chip de 4 Ghz tiene un tamaño máximo de 3 pulgadas. Entonces ahora debe comenzar a incluir buses y circuitos adicionales para administrar todos los datos que se mueven alrededor del chip.
También agregamos instrucciones a los chips todo el tiempo. SIMD (datos múltiples de instrucción única), ahorro de energía, etc., todos requieren circuitos.
Finalmente, agregamos más funciones a los chips. En los viejos tiempos, su CPU y su ALU (Unidad Lógica Aritmética) estaban separados. Los combinamos. La FPU (unidad de coma flotante) estaba separada, que también se combinó. Hoy en día, agregamos USB 3.0, aceleración de video, decodificación de MPEG, etc. Movemos más y más computación del software al hardware.
Majenko tiene una gran respuesta sobre cómo se usan los transistores. Entonces, permítanme ir desde un vector de enfoque diferente y tratar con la eficiencia.
¿Es eficiente usar la menor cantidad posible de transistores al diseñar algo?
Básicamente, esto se reduce a la eficiencia de la que estás hablando. Tal vez sea miembro de una religión que sostiene que es necesario usar la menor cantidad posible de transistores; en ese caso, la respuesta está prácticamente dada. O tal vez usted es una empresa que crea un producto. De repente, una simple pregunta sobre la eficiencia se convierte en una pregunta muy complicada sobre la relación costo-beneficio.
Y aquí viene el truco: los transistores en los circuitos integrados son extremadamente baratos y cada vez son más baratos con el tiempo (los SSD son un gran ejemplo de cómo se redujo el costo de los transistores). La mano de obra, por otro lado, es extremadamente costosa.
En los tiempos en que los circuitos integrados recién comenzaban, había un cierto impulso para mantener la cantidad de componentes necesarios lo más baja posible. Esto se debió simplemente a que tenían un impacto significativo en el costo de un producto final (de hecho, a menudo representaban la mayor parte del costo del producto), y cuando está construyendo un producto terminado "en caja", el costo de mano de obra es reparte sobre todas las piezas que hagas. Las primeras computadoras basadas en IC (piense en salas de juegos de video) fueron impulsadas a un costo por pieza lo más pequeño posible. Sin embargo, los costos fijos (a diferencia de los costos por pieza) se ven fuertemente afectados por la cantidad que puede vender. Si solo iba a vender un par, probablemente no valía la pena dedicar demasiado tiempo a reducir los costos por pieza. Si estuviera tratando de construir un mercado enorme, por otro lado,
Tenga en cuenta una parte importante: solo tiene sentido invertir mucho tiempo en mejorar la "eficiencia" cuando está diseñando algo para la producción en masa. Esto es básicamente lo que es la "industria": con los artesanos, los costos de mano de obra calificada son a menudo el costo principal del producto terminado, en una fábrica, la mayor parte de los costos provienen de los materiales y la mano de obra (relativamente) no calificada.
Avancemos rápidamente a la revolución de la PC. Cuando surgieron las PC estilo IBM, eran muy estúpidas. Extremadamente estúpido. Eran computadoras de propósito general. Para prácticamente cualquier tarea, podría diseñar un dispositivo que pudiera hacerlo mejor, más rápido y más barato. En otras palabras, desde el punto de vista simplista de la eficiencia, eran muy ineficientes. Las calculadoras eran mucho más baratas, cabían en el bolsillo y funcionaban durante mucho tiempo con una batería. Las consolas de videojuegos tenían un hardware especial que las hacía muy buenas para crear juegos. El problema era que no podían hacer nada más. La PC podía hacerlo todo: tenía una relación precio / rendimiento mucho peor, pero no te obligaron a hacer una calculadora o una consola de juegos de sprites 2D. ¿Por qué Wolfenstein y Doom (y en las PC de Apple, Marathon) aparecen en computadoras de propósito general y no en consolas de juegos? Porque las consolas eran muy buenas para hacer juegos basados en sprites en 2D (imagínese el típico JRPG o juegos como Contra), pero cuando quiso alejarse del hardware eficiente, ¡descubrió que no hay suficiente potencia de procesamiento para hacer otra cosa!
Entonces, el enfoque aparentemente menos eficiente le brinda algunas opciones muy interesantes:
Todo esto viene con un "desperdicio" de transistores, pero no es un desperdicio real, porque los costos totales reales son más bajos de lo que serían si presionara por el simple "tan pocos transistores como sea posible".
Otro lado de la historia de "tantos transistores" es que estos transistores no están diseñados individualmente por un ser humano. Un núcleo de CPU moderno tiene del orden de 100 millones de transistores, y ningún ser humano diseña cada uno de esos transistores directamente. No sería posible. Una vida útil de 75 años es de solo 2.300 millones de segundos.
Entonces, para hacer factibles diseños tan grandes, los humanos están involucrados en la definición de la funcionalidad del dispositivo a un nivel de abstracción mucho más alto que los transistores individuales. La transformación a los transistores individuales se conoce como síntesis de circuitos, y se realiza mediante herramientas propietarias muy costosas que, en conjunto, cuestan alrededor de mil millones de dólares para desarrollarlas a lo largo de los años, agregando entre los principales fabricantes de CPU y fundiciones.
Las herramientas de síntesis de circuitos no generan diseños con el menor número de transistores posible. Esto se hace por una multitud de razones.
Primero, cubramos el caso más básico: cualquier circuito complejo puede ser simulado por una CPU mucho más simple, quizás en serie, con suficiente memoria. Ciertamente, puede simular un chip i7, con una precisión perfecta, si solo conecta suficiente RAM en serie a un Arduino. Tal solución tendrá muchos menos transistores que la CPU real y funcionará con una lentitud abismal, con una frecuencia de reloj efectiva de 1 kHz o menos. Claramente, no pretendemos que la reducción del número de transistores vaya tan lejos .
Por lo tanto, debemos limitarnos a una cierta clase de transformaciones de diseño a transistores: aquellas que mantienen la capacidad paralela integrada en el diseño original.
Incluso entonces, la optimización para una cantidad mínima de transistores probablemente producirá diseños que no se pueden fabricar utilizando ningún proceso de semiconductores existente. ¿Por qué? Porque los chips que en realidad puedes hacer son estructuras 2D y requieren alguna redundancia de circuito simplemente para que puedas interconectar esos transistores sin requerir un kilogramo de metal para hacerlo. El fan-in y fan-out de los transistores y las puertas resultantes son importantes.
Finalmente, las herramientas no son teóricamente perfectas: generalmente requeriría demasiado tiempo de CPU y memoria para generar soluciones que son globalmente mínimas en términos de números de transistores, dada la restricción de un chip fabricable.
Creo que lo que el OP necesita saber es que un 'interruptor simple' a menudo necesita varios transistores. ¿Por qué? Bueno, por muchas razones. A veces, se necesitan transistores adicionales para que el uso de energía sea bajo para el estado "encendido" o "apagado". A veces, se necesitan transistores para lidiar con las incertidumbres en las entradas de voltaje o las especificaciones de los componentes. Muchas razones. Pero aprecio el punto. ¡Mire el diagrama de circuito de un OP-AMP y verá unas pocas docenas de transistores! Pero no estarían allí si no sirvieran para algún propósito en el circuito.
Básicamente, todo lo que la computadora entiende es 0 y 1... lo cual es decidido por estos interruptores... Sí, las funciones de los transistores son más que las de los interruptores. Entonces, si un interruptor puede decidir si la salida debe ser un 0 o un 1 (suponiendo que sea una sola operación bi), mayor será la cantidad de bits. cuantos más transistores... así que no es de extrañar por qué tenemos que incrustar millones de transistores en un solo microprocesador... :)
En la era de la tecnología, necesitamos dispositivos inteligentes (pequeños, rápidos y eficientes). Estos dispositivos se componen de circuitos integrados (IC) que contienen un no. de transistores Necesitamos más y más transistores para hacer que los circuitos integrados sean más inteligentes y rápidos porque en electrónica, cada circuito en un circuito integrado está hecho de un sumador, restador, multiplicador, divisor, puertas lógicas, registros, multiplexores, chanclas, contadores, cambiadores, memorias. y microprocesadores, etc. para implementar cualquier lógica en los dispositivos y estos están compuestos solo por transistores (MOSFET). Con la ayuda de transistores, podemos implementar cualquier lógica. Así que necesitamos más y más transistores...
Dzarda
Colina de Warren
Pablo A. Clayton
Marca
OJFord
Lame caliente
usuario253751
Lame caliente
usuario253751
Lame caliente
usuario34920
peluqueria2