|
|
|
![]() |
|
Strumenti |
![]() |
#21 |
Member
Iscritto dal: Sep 2007
Messaggi: 265
|
|
![]() |
![]() |
![]() |
#22 | |
Senior Member
Iscritto dal: Jan 2007
Messaggi: 6017
|
Quote:
L'ottimizzazione era pensata in primo luogo per ridurre le dimensioni del codice eseguibile per applicazioni embedded senza complicare troppo il core (infatti il decoder Thumb è quasi banale da implementare in piggyback su un decoder "ARM 32"). Le versioni "più ridotte all'osso" (es: M3) hanno solo le istruzioni Thumb (e relativo core ancora più semplificato), ma le istruzioni Thumb sono presenti anche nei modelli di fascia superiore. Thumb2 aggiunge solo qualche istruzione che si è visto tornava utile e semplifica il "mixaggio" di codice "ARM a 32bit" e codice "Thumb a 16bit" (sono entrambi set d'istruzioni a 32bit, "a 32bit" e "a 16bit" è riferito solo alla dimensione più frequente delle istruzioni). |
|
![]() |
![]() |
![]() |
#23 | |
Senior Member
Iscritto dal: Sep 2001
Città: Pescara
Messaggi: 3695
|
Quote:
lavorare con istruzioni "ottimizzate" principalmente a 16 bit significa non solo compattare il codice, ma anche dover "accendere" solo la metà delle linee di comunicazione sul bus esterno (almeno per quanto riguarda il trasferimento delle istruzioni). E' per questo che dicevo che Thumb2, più orientato verso i 32 bit, potrebbe trovarsi a consumare leggermente di più rispetto a Thumb (che a sua volta comunque deve pagare il costo della "decompressione" degli opcode a 16 bit in istruzioni a 32 bit). Ovviamente poi andrebbe tutto quantificato... magari parliamo di scostamenti di consumo così bassi da essere insignificanti... Qualche riferimento: http://www.arm.com/products/processo...php?tab=Thumb+ http://www.arm.com/products/processo...p?tab=Thumb-2+ Ciao. ![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:23.