Lessico IT › Hardware › DWT (Data Watchpoint and Trace)

DWT (Data Watchpoint and Trace)

Hardware Svenska → Aggiornato: 2026-11-03

L'unità Cortex-M che ferma il processore quando qualcuno tocca un dato indirizzo e che, per caso, contiene il cronometro preferito del mondo embedded.

Il DWT dispone di una manciata di comparatori, di solito quattro, che un debugger può puntare su un indirizzo. Quando il core vi scrive, si ferma, e si vede esattamente quale riga ha calpestato il buffer. È l'hardware dietro un watchpoint di GDB e, a differenza dell'alternativa software che esegue ogni istruzione passo passo, non costa alcuna velocità.

Il registro più popolare resta comunque CYCCNT, un contatore a 32 bit che avanza a ogni ciclo di clock. Lo si abilita tramite DEMCR e DWT_CTRL, lo si legge prima e dopo, e la differenza è il tempo di esecuzione al ciclo. A 168 MHz va in overflow dopo poco più di 25 secondi. I Cortex-M0 e M0+ non hanno il contatore, cosa che si tende a scoprire durante il porting.

← Torna al lessico