Hardware vs Software
Parte de la sección Fundamentos del Journey de Verilog de Coddy — lección 2 de 90.
Escribimos código tanto para software como para hardware, ¡pero funcionan de manera completamente diferente! Comprender estas diferencias es la clave para pensar como un diseñador de hardware.
El software se ejecuta paso a paso. El hardware ejecuta todo a la vez.
Software (C, Python, Java):
- Hace una cosa, luego la siguiente
- Las variables aparecen y desaparecen
- El tiempo es aproximado
Hardware (Verilog):
- Hace muchas cosas al mismo tiempo
- Los circuitos existen permanentemente
- El tiempo es exacto
Ejemplo: Un sitio web se carga paso a paso. Un interruptor de luz se enciende al instante. Esa es la diferencia.
Por qué es importante: Cuando escribes Verilog, estás describiendo un circuito que funciona en paralelo, para siempre, con una sincronización precisa.
Hoja de referencia
Ejecución de Software vs Hardware:
- Software (C, Python, Java): se ejecuta paso a paso, las variables aparecen/desaparecen, el tiempo es aproximado
- Hardware (Verilog): ejecuta todo en paralelo, los circuitos existen para siempre, el tiempo es exacto
Al escribir Verilog, estás describiendo un circuito que se ejecuta en paralelo, para siempre, con una temporización precisa.
Pruébalo tú mismo
Esta lección no incluye un desafío de código.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
1Introducción
¿Qué es Verilog?Hardware vs SoftwareNiveles de abstracción de diseñoTu primer móduloComentarios4Operadores Parte 1
Operadores aritméticosOperador de móduloOperadores de comparaciónRepaso - Matemáticas simplesOperadores bit a bit7Asignación y Compuertas
Asignación ContinuaAsignación con OperadoresPrimitivas de Compuertas IntegradasCompuertas AND OR NOTCompuertas XOR XNORResumen - Circuito de Compuertas Lógicas10Toma de decisiones
Sentencia IfIf - ElseRepaso - Comparador simpleSentencia CaseCasex y CasezRepaso - Diseño de ALU5Operadores Parte 2
Operadores lógicosOperadores de reducciónOperadores de desplazamientoOperador de concatenaciónOperador condicionalResumen - Desafío de operadores3Sistema de numeración
Representación binariaNúmeros con tamaño definidoNúmeros sin tamaño definidoNúmeros negativosValores especiales X y ZResumen - Formatos de números6Módulos
Estructura del móduloPuertos de entrada y salidaPuertos InoutInstanciación de módulosMapeo de puertos por nombreMapeo de puertos por ordenResumen: Construye un módulo