Los fabricantes de FPGA dicen que si usa un 'núcleo blando', es decir, un microcontrolador escrito en VHDL, entonces ese diseño de VHDL puede implementarse en cualquier hardware FPGA programable futuro, lo que lo libera de la posibilidad de cualquier pieza particular de Hardware saliendo de producción.
Para comprar ese argumento, debe asumir que el hardware programable continuará estando disponible durante su tiempo (lo cual es probable), y continuará estando disponible en tamaños de chip, costos y voltajes que se adaptarán a su producto (que Me cuesta más creerlo. Para utilizar este enfoque, deberías aceptar que es posible que debas hacer un nuevo diseño de hardware para aceptar un nuevo paquete, lo que derrota un poco tu objeto de no realizar cambios importantes.
Mi enfoque, y mi consejo sería, aislar su procesamiento de control del resto de los circuitos en una placa pequeña y definir su propia interfaz, cuantos menos pines, mejor. Quizás SPI crea una interfaz adecuada, o un bus de nybble con datos de lectura / escritura y direcciones estroboscópicas. Luego, si el procesador elegido se vuelve obsoleto durante la vida útil del producto, solo tiene que rediseñar y probar una pequeña placa, en lugar de una gran placa con funciones de producto analógicas vitales.
Programe el procesador de control en C. Divida su código estrictamente en algoritmos genéricos y módulos de interfaz de hardware. Entonces, si ciertos bits de hardware tienen que cambiar, ha aislado la reescritura a una pequeña cantidad de módulos y no está rastreando todo su código.
Elija un voltaje adecuado, prefiero 3.3v a 5v, por ejemplo.
Cuando elige su pequeña placa de control, podría hacer peor que elegir un factor de forma que coincida con una placa Arduino o PIC dev disponible. Luego, su desarrollo y creación de prototipos se recuperan, e incluso podría comenzar la producción de baja ejecución con los módulos comprados antes de diseñar un reemplazo de menor costo.