viernes, 5 de marzo de 2021

Actualización de estado #2 (05/03/2021)

 Bienvenidos al proyecto de Digital Computer Sim(DigitalCompSim).


Como segunda actualización  hemos desarrollado cada una de las partes asociadas con el proyecto.

Estos han sido las nuevas funciones y cambios de esta actualización:


Motor (Sucutucu) v0.0.3:


  • Se han agregado los componentes secuenciales: los biestables (flip flops). Se ha creado una clase FlipFlopSecuencial que sirva de superclase para todos los componentes de esta clase, como son: FlipFlopRS, FlipFlopJK y FlipFlopD.
  • Ahora los componentes se generan en la clase Playground, ya no hace falta agregarlos estáticamente usando la clase ComponenteFactory. Esta última clase obviamente ha sido marcada como obsoleta (deprecated). Con este nuevo sistema, los componentes se crean y agregan a la vez, lo que hace que se provoquen menos conflictos a la hora de establecer las IDs de los componentes.
  • Además de varios cambios menores, se han agregado varias pruebas automáticas para probar el nuevo sistema así como los componentes secuenciales.


Interfaz:


  • Se ha implementado los botones a las toolbars con sus distintas funcionalidades.
  • Se ha impelementado el sistema de MouseListener que permite identificar las coordenadas del mouse respecto al JPanel incrustado donde se realizará las conexiones de los componentes.
  • Se ha implementado un setMinimunSize como medida temporal, esto será sustituido por un layaout gridbag que permita al usuario reajustar la interfaz sin perder funcionalidades.

miércoles, 24 de febrero de 2021

Actualización de estado #1 (24/02/2021)


Bienvenidos al proyecto Digital Computer Sim (DigitalCompSim).

Somos un grupo de 3 personas, estudiantes de Ingeniería Informática de la Universidad de Huelva, que hemos decidido realizar este proyecto debido a que en algunas asignaturas se utilizan simuladores antiguos y que son software privativo. Motivados por el impulso de lograr que todo el software usado en la universidad sea libre, hemos decidido aportar nuestro propio simulador.

Como primera actualización, hemos repartido el trabajo basandonos en la experiencia de los miembros del proyecto, dejando a dos de los miembros más experimentados desarrollando el motor de la aplicación (Sucutucu) y al más inexperto desarrollando la interfaz gráfica.

A continuación vamos a ver las operaciones realizadas:

    Interfaz:

  • Esquematización de la interfaz final.
  • Implementación de los botones superiores de la interfaz.
  • Debate sobre la conexión de esta interfaz con el motor gráfico, dando como resultado la opción de usar una interfaz con un objeto Componentable.

    Motor Sucutucu v0.0.1:
  • Se ha implementado la clase Componente para la creación de puertas y otros elementos lógicos. También una interface, Componentable, que describe los métodos comunes que deben incluir dichos componentes.
  •  La clase Pin se usa a modo de entrada y salida para las puertas, así como de los circuitos, por eso ha pasado de ser de un par de valores a una clase en sí que nos ayuda en la implementación de otras clases.
  • Se ha implementado Playground, que es una abstracción de un circuito en sí; la clase CircuitoIntegrado, utilizada para el control de los componentes que están formados por otros componentes; y la clase CeldaFPGA, que a partir de una tabla de la verdad y un I/O, simula el comportamiento lógico de una celda real.
  • A partir de los componentes, ya se ha implementado la funcionalidad de las puertas AND, OR y NOT, así como varias clases para la simulación de componentes de utilidad: Interruptor y LED.
  • Se han incluido más utilidades, como son los Displays Binarios, Displays Hexadecimales y Displays Decimales, una clase para el deco de BCD a 7 Segmentos y el Display de 7 Segmentos.
    Se ha empezado, además, la nueva versión del motor:
  • Se han incluido las puertas lógicas básicas restantes: NANDNORXOR y XNOR. Se han actualizado las clases necesarias para poder utilizarlas correctamente.
  • Se han realizado varias pruebas de funcionamiento y se han detectado y corregido algunos fallos.

Actualización de estado #2 (05/03/2021)

 Bienvenidos al proyecto de Digital Computer Sim(DigitalCompSim). Como segunda actualización  hemos desarrollado cada una de las partes asoc...