Skip to content

Definitions.h

Ludovic Apvrille requested to merge sophie_wrk into master

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...

Merge request reports