-
Notifications
You must be signed in to change notification settings - Fork 0
Home
iamscottmoyers edited this page Aug 18, 2011
·
35 revisions
Welcome to the gsim wiki! #Project Proposed directory structure
gsim/
Makefile
cli/
Makefile
public_header.h
src/
private_class.cpp
private_class.h
doc/
Doxyfile
tests/
com/
sim/
aire/
navvie/
#Navvie Navvie is just a tool and is not part of the simulator. It generates C / CPP from UML files (Class diagrams only). Its main purpose will be to generate template code from the AIRE UML specification, but any component that has an initial design in UML can use it. ##TODO
- The C writer needs to interpret static attributes of a class as global variables in a C file then externed in its header file.
- The C writer needs to add the class it's operating on as the first argument to all functions.
- Work on the C++ writer.
- Work with the AIRE UML model and the C++ / C writers to get the AIRE autogenerated files compiling.
- Support doxygen comments for classes. Autogenerate documentation for files etc. Output a Doxyfile?
#AIRE ##TODO
- Remove that operator[] overloading, there's no need for it. Make sure to document it in the AIRE spec deviations.
- Add documentation to the UML model, a lot of the text can be copied from the AIRE specification.
- Reference counted objects. Why does AIRE make them different, can't we overload new / delete?
- getters / setters - Need them as they should eventually all be atomic - Should the standard be
void set_a(int a){this->a = a;}
orvoid set_a(int val){this->a = val;}
or evenvoid set_a(int val){a = val;}
. The second / third are better but they differ the most from the spec and are a little harder to autogenerate.
#VHDL Parser #Verilog Parser #Simulator ##TODO
- Go for a breadth first implementation, get a design unit all the way to IR and printed out as a .dot file.