¿Qué vende exactamente ARM a los vendedores?

28

Suposiciones

  1. Arquitectura de la computadora: describe cómo los diferentes módulos de un procesador interactúan entre sí.

  2. Una arquitectura de computadora se define usando vhdlarchivos

  3. Organización de la computadora: describe el diseño físico de los módulos del procesador en silicio.

  4. Una organización informática se define utilizando un conjunto de máscaras fotográficas (y un proceso de fabricación, por ejemplo, químico, que se realiza en cada paso)

  5. Computer Organization, por lo tanto, requiere que se tenga en cuenta el proceso fab.

  6. ARM no está en el negocio de fabricación, por lo tanto, no vende máscaras fotográficas.


Mis preguntas):

  1. ¿Qué es exactamente ARM vendiendo a un proveedor (por ejemplo: freescale)?
  2. Para un SoC (System On Chip), (por ejemplo: iMx6 ), ¿qué parte es ARM y cuál es Freescale? ¿Quién hizo la integración?
aiao
fuente
1
Puede ser aún más complejo con 3 compañías involucradas: ARM diseña la IP para CPU, Qualcomm diseña un producto (SOC) con eso y luego hace que el chip se fabrique en TSMC. También es posible que TSMC también haga la generación del diseño físico, por lo que no Qualcomm.
Bimpelrekkie
ARM vende sus núcleos de procesador, te dan el código fuente (definitivamente en verilog, quizás vhdl no sé sobre eso), con muchas reglas y tarifas. Los procesadores se detienen en el bus AMDA / AXI, se requiere alguien más o algún otro código para conectar ese procesador a otras cosas en el chip. ARM vende / ha vendido otras cosas que ayudan con un SoC, pero lo principal son los procesadores.
old_timer

Respuestas:

29

Estás usando esos términos incorrectamente. "Organización informática" es un término poco utilizado para la microarquitectura, y "arquitectura informática" es un superconjunto de eso.

Los bloques de circuitos integrados IP vienen en dos formas básicas:

  • Una macro suave es el RTL (VHDL o Verilog) que describe la implementación funcional de la IP. Esto se compila en una lista de red de nivel de puerta, que luego se convierte en un diseño físico para producir el conjunto de máscara para la fabricación. Aquí hay un ejemplo de Cadence : un MAC Ethernet. Cuando lo compra, obtiene archivos de Verilog, documentación y un banco de pruebas de Verilog para verificación.

  • Una macro rígida es un diseño físico de la IP adecuado para un proceso dado. Se agrega al diseño de chip más grande como un solo bloque, lo que ahorra algunos pasos en el proceso de diseño. Aquí hay otro ejemplo de Cadencia : un PHY de Ethernet. Se ofrece en procesos de 180 nm y 130 nm en TSMC, UMC y SMIC, y se entrega al cliente en forma de archivos de diseño GDSII.

ARM vende ambos. Las MCU en las que he trabajado usualmente usan macros suaves de CPU ARM Cortex. Teníamos un producto más antiguo con macros duros ARM7, pero no sé si ARM o nosotros los endurecimos. Hoy, ARM tiene versiones macro duras de la serie Cortex-A que figuran en su sitio web . Sin embargo, la mayoría de sus productos son sintetizables (macros suaves). Parece que puede descargar el Cortex-M0 (suave) de forma gratuita para uso no comercial en el sitio ARM DesignStart .

En un SoC, la parte ARM es solo la CPU. (El diseñador también puede comprar IP periférica de ARM, pero no es obligatorio). Los SoC en los que he trabajado tienen una combinación de IP interna y de terceros.

Adam Haun
fuente
44
ARM también licencia la arquitectura para diseños personalizados (por ejemplo, Kyro de Qualcomm en el Snapdragon 820). Las macros duras también pueden estar más optimizadas (para un objetivo dado) que las herramientas comunes ( Paquete de optimización del procesador ). En teoría, una macro dura puede usar un diseño personalizado completo, pero la optimización de relativamente pocos componentes (especialmente los componentes de memoria) proporciona gran parte del beneficio a un menor costo.
Paul A. Clayton el
13
  1. ¿Qué es exactamente ARM vendiendo a un proveedor (por ejemplo: freescale)?

Una licencia para vender chips que incluyen propiedad intelectual de ARM.

  1. Para un SoC (System On Chip), (por ejemplo: iMx6), qué parte es ARM

La definición de los núcleos de CPU y sus interfaces.

... y cual es Freescale?

La implementación física, incluido el diseño de cualquier lógica periférica incluida en el chip.

¿Quién hizo la integración?

Freescale, por supuesto.

Dave Tweed
fuente
1
"La definición del núcleo o los núcleos de la CPU y sus interfaces" ... ¿podría explicar qué significa "definición", eso incluye el vhdl del núcleo, o esto queda libre para resolver?
aiao
1
Sí, la definición indudablemente incluye una descripción HDL (no necesariamente VHDL) del núcleo, porque esa es la forma menos ambigua de transmitir ese tipo de información.
Dave Tweed
11

Cuando participé en un proyecto de diseño de chips que incluía la integración de un ARM, lo que obtuvimos fue netlist Verilog . Es decir, una lista completa de las puertas y conexiones que componen el chip, pero no en una forma de nivel superior adecuada para una fácil modificación.

Luego hicimos nuestra propia colocación y enrutamiento. Esto generalmente es necesario en cada proyecto ya que la forma del área del chip asignada a ARM será diferente.

Creo que hay varios niveles de licencia disponibles para que pueda comprar un núcleo colocado en una forma estándar para ahorrar tiempo.

(Las netlists colocadas son exactamente como suenan: una lista de puertas y sus ubicaciones).

pjc50
fuente
3
"lista completa de las puertas y conexiones que componen el chip", debe ser una lista increíble.
Rev1.0
3
No es tan malo: Cortex M0 tiene solo 12K puertas. Son los grandes diseños de GPU los que son la lucha ..
pjc50
Pensé que un "núcleo" son millones o miles de millones de puertas? Según se informa, el Intel 4004 fue nombrado porque tiene tantas puertas.
JDługosz
@ JDługosz: Intel 4004 tiene 2.300 transistores, según una lista de recuento de transistores .
davidcary
2
@JDlugosz La canalización de procesamiento para el brazo es corta y el caché y el soporte de los periféricos de la matriz (gran contribuyente al conteo de transistores) están separados de la IP del núcleo (los conecta al bus). El SOC / ASIC completo tendrá un recuento de compuertas mucho mayor. Un dispositivo como un x86 tiene una capa de microcódigo adicional y una tubería mucho más larga (10x) que requiere, por ejemplo, una predicción de rama más compleja, así como en la memoria caché y recientemente en la MMU de la matriz
crasic
5

ARM vende propiedad intelectual (IP) a otras compañías. En su ejemplo, Freescale compra los derechos para usar ARM IP, es decir, el núcleo del procesador. ¿Qué es el "núcleo"? El núcleo es casi cualquier cosa que no sea un periférico, como un controlador SPI o un ADC o DAC. Como parte del núcleo, ARM incluyó sistemas de hardware para actuar como puentes entre el procesador real y el periférico del cliente.

En cuanto a los entregables, ARM no proporciona un HDL completo al cliente. Proporcionan abstracciones de alto nivel con las que el HDL del usuario final puede vincularse (envoltorios HDL), y probablemente también proporcionen el diseño físico del núcleo.

ARM vende más que solo núcleos de procesador, también tienen un segmento completo de IP complejo que no son procesadores. Cuando ARM vende un núcleo de procesador, obtienen dinero por adelantado y / o obtienen regalías de todos los dispositivos vendidos con sus diseños en ellos. Es un trato bastante bueno para ellos, teniendo en cuenta que hay alrededor de 10 mil millones de procesadores ARM en la naturaleza.

Para resumir:

  • ARM vende IP (diseños básicamente) a los clientes para integrarlos en su producto final
  • Los fabricantes de SoC como Freescale diseñan sus propios periféricos para el núcleo ARM.
Brendan Simpson
fuente