Savino Inserita: 27 maggio 2009 Segnala Inserita: 27 maggio 2009 Mi sembra di ricordare che su S5 l'interrogazione del bit ( P D 0.0) di una DB era particolarmente lenta e (forse) non rappresentabile in KOP...A DB10 U D 0.0potrebbe essere piu veloce che P D 10.0Ma che sono lente ... boh, hai qualche info in merito ?
JumpMan Inserita: 27 maggio 2009 Segnala Inserita: 27 maggio 2009 (modificato) Non ho il manuale della 942, ho però un minimanuale di S95 su cui ci sono i tempi delle singole istruzioni:P D = 32 micro-secondi U M = da 3 a 5 micro-secondi U D non l'ho mai usato perchè credo non me lo accettasse (il 95 di sicuro no lo accetta, la 942 non ricordo).P D è scomodo perchè interroga il bit e basta, poi gli OR/AND devi aggiungerli usando O( e U(, quindi ulteriore dispendio di micro-secondi...Io non usavo flags ritenitivi perchè quelle macchine non richiedevano la memorizzazione dello stato e la continuazione del ciclo in caso di black-out, comunque se dovessi farlo con S5 metterei il selettore su OR (tutti i M ritenitivi) e azzererei on OB21/22 tutte le MW che non voglio ritenitive, in questo modo divido gli M in 2 zone, una ritenitiva e una non ritenitiva.Con S7 è tutta un altra storia (lo fai nella configurazione HW oppure usi tranquillamente bit di DB) Modificato: 27 maggio 2009 da JumpMan
Savino Inserita: 27 maggio 2009 Segnala Inserita: 27 maggio 2009 (modificato) Scusa JumpMan, ma secondo me stai andandoun po' OT non ti pare. La rapidita' o lentezza delle operazioni non sarebbe il problema di fondo. Modificato: 27 maggio 2009 da Savino
JumpMan Inserita: 28 maggio 2009 Segnala Inserita: 28 maggio 2009 Me le hai chieste tu le info sulla velocità...Comunque hai ragione, i 2 argomenti del topic sono stati sviscerati abbastanza.Sarebbe bello che gli autori dei topic ci informassero qualche volta sugli esiti della situazione altrimenti le discussioni vanno avanti sempre con le stesse persone e immancabilmente si rischia di andare OT.Ciao
Savino Inserita: 28 maggio 2009 Segnala Inserita: 28 maggio 2009 (modificato) Scusami JumpMan, ti devo dar ragione Si, e' vero che l'accesso alle merker sara' comunque sempre piu' veloce che all'area DB.Sarebbe interessante sapere come sono state programmate queste sequenze. L'unica cosa, di non fare e' cambiare la posizione di quel selettore perche tante memorie che non dovrebbero essere retentive come ad esempio la memoria di ciclo in corso, se ne diventano allora potrebbero creare degli ulteriori problemi.Aspettiamo il feedback di Andreasol... Modificato: 28 maggio 2009 da Savino
busanela Inserita: 28 maggio 2009 Segnala Inserita: 28 maggio 2009 Ciao,Si, e' vero che l'accesso alle merker sara' comunque sempre piu' veloce che all'area DB.Infatti, in un mio vecchio ed ingiallito manuale S5 (che non sono riuscito a reperire in formato elettronico neppure da mamma Siemens), si fa proprio riferimento ai tempi descritti da JumpMan:P D = 32 micro-secondi U M = da 3 a 5 micro-secondima per tutte le interrogazioni alle b/B/W contenute nei blocchi dati il tempo è quello indicato, non solo per l'istruzione P o PN.Questo solo per dovere di cronaca, senza voler continuare il fuori tema.
Savino Inserita: 28 maggio 2009 Segnala Inserita: 28 maggio 2009 (modificato) Si', ma vedi questo discorso e' saltato fuori per caso.P D = 32 micro-secondi U M = da 3 a 5 micro-secondiQuesto e' relativo, e dipende anche della CPU. Quando il microprocessore muove l' instruction pointer dentro un area DB, i tempi di esecuzione sarebbero relativamente piu' bassi a quelli ove l'indirizzamento indiretto avviene tra diverse aree DBQuindi i 32 microsec. potrebbero essere anche di meno.Ma questo certo non era una forzatura.Bisogna inannzitutto, vedere come sono state fatte le catene sequenziali, se appunto sono fatte in modo di ritenere la memorizzazione dello stato. Poi, vedere se sono state utilizzate memorie retentive o cosa altro.Se, mettiamo che bisognerebbe utilizzare memorie retentive, e non ci sono abbastanza perche sono state impegnate, se poi alla fine ce ne servono tante e non si vuole adottare le memorie DB in runtime, ce sempre la soluzione di salvare a fine scansione le memorie interessate su DB e organizzare il loro ripristino in OB21-22. Semplice, questo l'ho addirittura adottato in applicazioni con S7 pure. Modificato: 28 maggio 2009 da Savino
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora