ID del artículo: 000086175 Tipo de contenido: Resolución de problemas Última revisión: 26/11/2024

¿Por qué hay una llamada 0x0 dentro del código ensamblador de Nios® II aplicación?

Descripción

Durante la Nios® II el desarrollo y la depuración de aplicaciones, es posible que observe un comando de restablecimiento en la vista de código ensamblador como este "call 0x0". Este restablecimiento provino de una memoria que se corrompió. Esta corrupción provenía de escribir en un periférico de solo lectura o leer desde una dirección desconocida.

Entonces, ¿qué pasará con esta transacción incorrecta? Se enruta al esclavo "predeterminado". El esclavo predeterminado se define como
1- Periférico con el mayor rango de direcciones.
2- Periférico que fue seleccionado como esclavo predeterminado en Qsys.

Si no está definiendo el esclavo predeterminado, el periférico de memoria será el esclavo predeterminado.

Resolución

Para evitar este comando de restablecimiento inesperado, haga lo siguiente:

1- No escriba para leer solo periféricos.
2- Defina un periférico esclavo Qsys predeterminado para recibir todas las transacciones no asignadas. -- Debe haber un periférico esclavo predeterminado que capture la dirección de la transacción no válida que recibió.

3- Utilice el puente timoute AXI o el esclavo predeterminado AXI

Productos relacionados

Este artículo se aplica a 1 productos

Mostrar todo

1

El contenido de esta página es una combinación de la traducción humana y automática del contenido original en inglés. Este contenido se ofrece únicamente para su comodidad como información general y no debe considerarse completa o precisa. Si hay alguna contradicción entre la versión en inglés de esta página y la traducción, prevalecerá la versión en inglés. Consulte la versión en inglés de esta página.