Pregunta

Estoy escribiendo código incrustado sobre todo en el trabajo. Tenemos un gran proyecto a largo plazo que se ha desarrollado, y tiene varias generaciones, y ahora el procesador para el que fue escrito está siendo descontinuado y podría ser imposible incluso para seguir usando procesadores del mismo fabricante. (La transición será probablemente de TI a Renesas FPU-microprocesadores). Parte del problema es que algunos código está escrito en el montaje.
Estoy buscando maneras de hacer que la transición sea lo menos dolorosa posible, y que sea más suave si es necesaria una transición similar en el futuro.
¿Qué se puede sugerir?

¿Fue útil?

Solución

producir una versión genérica de C de como mucho del código como sea posible.

Esto puede parecer una pérdida de tiempo si su intención es que la implementación final para estar en el montaje optimizado a mano, pero realmente no lo es.

Cuando se optimiza para un nuevo destino, puede reescribir secciones clave en el montaje, pero tener una versión C va en primer lugar, dejar que usted tiene algo en marcha muy rápidamente en cada nuevo objetivo, y en segundo lugar proporcionar una implementación de referencia legible con el que comparar cuando optimización, los cuales le hará la vida mucho, mucho más fácil.

Por otra parte, se dan cuenta de que no hay necesidad de todo para ser el montaje optimizado parte, sólo las secciones de código en la que se gasta más tiempo / que ocupan la mayoría del espacio. Para escribir todo de un gran proyecto en el montaje es casi seguro que perder esfuerzo innecesariamente. El resto sólo puede permanecer como genéricos C. Pero usted no sabrá lo que usted debe centrarse en su versión C hasta que ya está en marcha y se puede perfil it. Se puede adivinar, pero no se sabe.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top