Com a tecnologia de chaveamento elétrico avançado (advanced power gating) a arquitetura Core traz para os processadores um recurso de economia de energia totalmente novo. Este recurso permite que o processador desligue unidades que não estão sendo usadas no momento. Esta idéia vai mais além, já que o processador pode desligar partes específicas dentro de cada unidade do processador de modo a economizar energia, para dissipar menos calor e para otimizar a utilização da bateria (em caso de processadores para notebooks).
Uma outra capacidade de economizar energia da arquitetura Core é ligar apenas os bits necessários nos barramentos internos do processador. Muitos dos barramentos internos do processador são dimensionados para o pior caso – ou seja, a maior instrução x86 que existe, que é de 15 bytes (480 bits)*. Em vez de ligar todas as linhas de dados de 480 bits deste barramento em particular, o processador pode ligar apenas 32 linhas, somente o que é necessário para transmitir uma instrução de 32 bits, por exemplo.
* Você pode ficar um pouco perdido com esta afirmação, já que estamos dizendo que a arquitetura Intel usa instruções de 32 bits, portanto uma explicação mais aprofundada é necessário para um maior entendimento.
Dentro do processador o que é considerado uma instrução é o opcode da instrução (o equivalente em linguagem de máquina da instrução em linguagem assembly), mais todos os dados requeridos. Isto ocorre porque a instrução deve entrar na unidade de execução “completa” de modo a ser executada, isto é, junto com todos os dados requeridos. Além disso, o tamanho do opcode de cada instrução x86 é variável e não fixo em 32 bits, como você poderia imaginar. Por exemplo, uma instrução do tipo mov eax, (dado de 32 bits), que armazena um dado de 32 bits no registrador EAX é considerada internamente como uma instrução de 40 bits (mov eax é traduzida em um opcode de 8 bis mais os 32 bits de seu dado). Na verdade, ter instruções com diferentes comprimentos é o que caracteriza um conjunto de instruções CISC (Complex Instruction Set Computing, computação usando um conjunto de instruções complexo).
Se você quer aprender mais sobre este assunto leia AMD64 Architecture Programmer’s Manual Vol. 3: General Purpose and System Instructions (apesar de a Intel fornecer o mesmo tipo de informação em seu Intel Architecture Software Developer’s Manual Vol. 2A, as explicações e diagramas da AMD são mais fáceis de entender). |