For users of TTool: (e.g., for users having a read-only access to the git) ------------------- You can clone the repository, and compile TTool as explained in the developer section below. For more information: http://ttool.telecom-paristech.fr Beware, if you want to use other options of TTool, please, start it with the needed command line, or make your own ttool.exe. See the online documentation for more information For developers: (rw access to the git) --------------- * Compiling the latest version of TTool: $ make ttool * Compiling the latest version of TTool + companions software: $ make all If the compilation fails with the following error: 'unmappable character for encoding ASCII', you need to do, before the compilation process: export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8 Alternatively, if you wish to compile TTool without running tests (tests can be long to run), do: $ make ttoolnotest or $ gradle build -x test Graphical tests might be long to execute. An alternative is to execute only non graphical tests: $make noguitest * Installing TTool once compiled $ make install This installs all necessary files in bin/ * Generating a release: $ make release * Starting TTool from the git clone You should not modify bin/config.xml. Create your own config.xml (e.g. myconfig.xml), and create your own "ttool.exe" file (e.g., myttool.exe) if you need to modify the config.xml file -> proceed as follows: $ cp ttool.exe myttool.exe $ cp bin/config.xml bin/myconfig.xml Then edit myttool.exe and replace config.xml with myconfig.xml You can now start TTool: $ ./myttool.exe Enjoy!!
Sophie Coudert
authored
-------------- Ajout de constantes pour les types de transaction: // length has not been computed // length has been computed Transaction.h -------------- Ajout d'un nouveau protected attribut et de ses accès: unsigned int _transType inline void setTransType(byte i) {_transType=i;} inline byte getTransType() {return _transType;} Rectification du calcul de endTime pour les transactions bus !!WARNING: nonsens si _transtype est BUS_TRANS_NoLength SingleCoreCPU.cpp ---------------- Mise à jour de _nexttransaction->transType dans calcStartTimeLength Révision du starttime des transactions bus Restriction de truncateAndAddNextTrans aux nonComm transactions Ajout du calcul de longueur des transactions bus dans getNextTrans. Rectification des calculs de longueur virtuelle à un arrondi supérieur plutôt qu'inférieur. ajout du nouvel algorithme (protected): void truncateNextTrans(TMLTime iTime); MultiCoreCPU.cpp ----------------- Report des modifs de SingleCore.cpp, à l'identique. BusMaster.h: ------------ ajout de l'export: //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ inline SchedulableCommDevice* getNextBus() {return _nextBus;} pour le rendre accessible au nouveaux (truncateNextTrans, CPU::addtrans) Bus.h: ------ sorti des protected: void calcStartTimeLength(TMLTime iTimeSlice) const; pour le rendre accessible au nouvel algo (truncateNextTrans) ajout de calcLength() dans les exportés Bus.cpp: -------- correction de la mise à jour du StartTime dans calcStartTimeLength deplacement du calcul de longueur de calcStartTimeLength vers nouvelle méthode calcLength. déplacement de la prise en compte du burstsize de schedule vers calcStartTimeLength SchedulableCommDevice.h: ------------------------ ajout de l'export: virtual void calcStartTimeLength(TMLTime iTimeSlice) const=0; pour le rendre accessible aux nouveaux algos (truncateNextTrans, xxxCPU:addtrans) TMLChannel.h/.cpp ------------------ ajout d'une methode isLastMaster qui teste sans faire avancer le master courrant. Simulator.cpp -------------- ligne 1101, remplacement de depNextTrans=depCPU->getNextTransaction(); par depNextTrans=depCPU->SchedulableDevice::getNextTransaction(); pour ne pas rater les transactions bus not granted...