Wishbone (bus de la computadora)


El Wishbone Bus es un bus informático de hardware de código abierto destinado a permitir que las partes de un circuito integrado se comuniquen entre sí. El objetivo es permitir la conexión de diferentes núcleos entre sí dentro de un chip. El Wishbone Bus es utilizado por muchos diseños en el proyecto OpenCores .

Wishbone está pensado como un "bus lógico". No especifica información eléctrica ni la topología del bus. En cambio, la especificación está escrita en términos de "señales", ciclos de reloj y niveles altos y bajos.

Esta ambigüedad es intencional. Wishbone está diseñado para permitir que los diseñadores combinen varios diseños escritos en Verilog , VHDL o algún otro lenguaje de descripción lógica para la automatización del diseño electrónico (EDA). Wishbone proporciona una forma estándar para que los diseñadores combinen estos diseños lógicos de hardware (llamados "núcleos"). Wishbone se define para tener buses de 8, 16, 32 y 64 bits. Todas las señales son síncronas con un solo reloj, pero algunas respuestas esclavas deben generarse combinatoriamente para obtener el máximo rendimiento. Wishbone permite agregar un "bus de etiquetas" para describir los datos. Pero el restablecimiento, las lecturas y escrituras direccionadas simples, el movimiento de bloques de datos y los ciclos de bus indivisibles funcionan sin etiquetas.

Wishbone es de código abierto , lo que facilita a los ingenieros y aficionados compartir diseños de dominio público para la lógica del hardware en Internet. Para evitar la preferencia de sus tecnologías por patentes agresivas, la especificación Wishbone incluye ejemplos de la técnica anterior , para demostrar que sus conceptos son de dominio público.

Un dispositivo no cumple con la especificación Wishbone a menos que incluya una hoja de datos que describa lo que hace, el ancho del bus, la utilización, etc. La promoción de la reutilización de un diseño requiere la hoja de datos. Hacer que un diseño sea reutilizable a su vez hace que sea más fácil compartirlo con otros.

Wishbone se adapta bien a topologías comunes como punto a punto, muchos a muchos (es decir, el sistema de bus clásico), jerárquico o incluso estructuras conmutadas como los interruptores de barra transversal . En las topologías más exóticas, Wishbone requiere un controlador de bus o árbitro, pero los dispositivos aún mantienen la misma interfaz.


Interfaces Master y Slave Wishbone.