¿Cómo identificar la arquitectura de un microcontrolador? [cerrado]

-1

Actualmente estoy aprendiendo sobre la arquitectura interna del microcontrolador. Me encontré con términos como la arquitectura de Harvard y Von Newman. Leí sobre la diferencia entre estos dos. Pero, ¿hay una manera de identificar la arquitectura con solo mirar el mapa de memoria?

    
pregunta santhosh

3 respuestas

2

Bueno, simplemente mire la definición de los dos términos. Si el libro de datos dice que el espacio del programa (flash / rom) (0x0000 a 0x8000 por ejemplo) está en un espacio de direcciones particular, por ejemplo, y también tiene el ram y / o periféricos en ese mismo espacio (0x0000 a 0x4000 por ejemplo), entonces hay que ir Si no tiene conflictos de direcciones entre el espacio de direcciones de instrucciones y el espacio de acceso a datos en la documentación, entonces no puede decirlo estrictamente desde el espacio de direcciones.

Ahora, diciendo que eso todavía no le da la respuesta como se señaló en los comentarios, estos son híbridos, buses cpu modernos (y ese es un término cargado en cuanto a cuándo comenzó) comparten la dirección y los buses de datos, pero tienen controles adicionales. que incluyen el tipo de transacción que incluye esta es una búsqueda de instrucciones o un ciclo de datos, así como características como esta cacheable o no. Ir a ver la documentación del bus AXI / AHB del brazo. Como ARM puede afirmar que usted es Von Newman y Harvard (bueno, ellos afirman que Harvard, si recuerdo bien para los núcleos Mcu) porque ambos "comparten el mismo bus" y "aíslan las instrucciones y los accesos de datos". Que tocan las dos definiciones. Creo que ARM ha ido aún más lejos al tener varios buses en el núcleo, pero al menos uno, si no todos, puede hacer transacciones I y D en el mismo espacio de direcciones para los mismos objetivos.

Von Newman vs Harvard es el tema menos interesante cuando se trata del diseño de la arquitectura del procesador / mcu. Concéntrese en el conjunto de instrucciones y la implementación, y para un mcu los aspectos adicionales interesantes que tengo que ver con la gestión del consumo de energía y el tamaño / costo.

    
respondido por el old_timer
2
  

Pero, ¿hay una manera de identificar la arquitectura con solo mirar el mapa de memoria?

Sí. Es muy fácil de ver.

Harvard:

VonNeumann:

¿Loves?
Harvardtienetresmapasdememoriadesde0x0,mientrasqueNeumanntieneunespaciodesde0x0.

ElHarvardtendrádiferentesinstruccionesparaaccederacadaespaciodememoria.Estoesunadesventajacuandosetrabajaconpunteros.Porqueladirección0x100puedeestarenmásdeunlugar.MientrasqueenunvonNeumann0x100esúnico.

Ensuformamássimple,Harvardesmásrápido,yaquepuedeejecutarmúltiplesaccesosalamemoriaalavez.Porejemplo:unCortexM0yunAtmelAVR.

Peroenrealidad,losdiseñadoresdechipssehanllevadolomejordeambosmundos.
MireunARMCortexM4ysuaccesoalautobús.Elnúcleotiene3interfacesdebus,unaparaaccederainstrucciones(I),unaparaaccederadatos(D),unaparaaccederaperiféricos(S).Lostressepuedenutilizarsimultáneamente.Laarquitecturadechipsubyacentedefinequébusesseutilizaránparaquémemoriaparaunavelocidadóptima. Lógicamente, es un von Neumann, físicamente es un Harvard.

    
respondido por el Jeroen3
-2

Los diagramas de tiempo proporcionan mucha información sobre esas arquitecturas. Harvard tiene concurrencia de datos y programa.

Con todos los transistores, y los diminutos anchos de línea, es fácil de implementar la concurrencia, de hecho es probable que sea preferible porque las dos memorias no tienen que estar mezcladas entre sí.

    
respondido por el analogsystemsrf

Lea otras preguntas en las etiquetas