# Taxa de dados dupla

Na computação, a taxa de dados dupla ou Double data rate (DDR) descreve um barramento] de computador que transfere dados nas bordas ascendente e descendente do sinal de clock e, portanto, dobra a largura de banda da memória transferindo dados duas vezes por ciclo de clock. Isso também é conhecido como bombeamento duplo e transição dupla. O termo modo de alternância é usado no contexto da memória flash NAND.

## Visão geral

A maneira mais simples de projetar um circuito eletrônico com clock é fazê-lo executar uma transferência por ciclo completo (ascensão e queda) de um sinal de clock. Isso, no entanto, requer que o sinal de clock mude duas vezes por transferência, enquanto as linhas de dados mudam no máximo uma vez por transferência. Ao operar em uma largura de banda alta, as limitações de integridade do sinal restringem a frequência do clock.$^[$ Ao usar ambas as bordas do clock, os sinais de dados operam com a mesma frequência limite, dobrando assim a taxa de transmissão de dados.
Esta técnica tem sido usada para barramentos frontais de microprocessadores, Ultra-3 SCSI, barramentos de expansão (AGP, PCI-X), memória gráfica (GDDR), memória principal (RDRAM e DDR1 a DDR5) e o barramento HyperTransport nos processadores Athlon 64 da AMD. Mais recentemente, está sendo usada para outros sistemas com requisitos de alta velocidade de transferência de dados - como um exemplo, para a saída de conversores analógico-digitais (ADCs).
DDR não deve ser confundido com dual channel, em que cada canal de memória acessa dois módulos de RAM simultaneamente. As duas tecnologias são independentes uma da outra e muitas placas-mãe usam ambas, usando memória DDR em uma configuração dual channel.
Uma alternativa ao bombeamento duplo ou quádruplo é tornar o link self-clocking. Essa tática foi escolhida pela InfiniBand e PCI Express.

## Relação entre largura de banda e frequência

Descrever a largura de banda de um barramento de bombeamento duplo pode ser confuso. Cada borda de clock é chamada de beat, com dois beats (um upbeat e um downbeat) por ciclo. Tecnicamente, o hertz é uma unidade de ciclos por segundo, mas muitas pessoas se referem ao número de transferências por segundo. O uso cuidadoso geralmente fala sobre "500 MHz, taxa de dados dupla" ou "1000 MT/s", mas muitos se referem casualmente a um "barramento de 1000 MHz", embora nenhum sinal tenha ciclos mais rápidos do que 500 MHz.
DDR SDRAM popularizou a técnica de se referir à largura de banda do barramento em megabytes por segundo, o produto da taxa de transferência e a largura do barramento em bytes. DDR SDRAM operando com um clock de 100 MHz é chamado de DDR-200 (após sua taxa de transferência de dados de 200 MT/s), e um DIMM de 64 bits (8 bytes) de largura operado nessa taxa de dados é chamado de PC-1600, após sua largura de banda de pico (teórica) de 1600 MB/s. Da mesma forma, a taxa de transferência de 12,8 GB/s DDR3-1600 é chamada de PC3-12800.
Alguns exemplos de designações populares de módulos DDR:
| Nomes | Clock de memória | Clock de barramento de I/O | Taxa de transferência | Largura de banda teórica |
| DDR-200, PC-1600 | 100 MHz | 100 MHz | 200 MT/s | 1.6 GB/s |
| DDR-400, PC-3200 | 200 MHz | 200 MHz | 400 MT/s | 3.2 GB/s |
| DDR2-800, PC2-6400 | 200 MHz | 400 MHz | 800 MT/s | 6.4 GB/s |
| DDR3-1600, PC3-12800 | 200 MHz | 800 MHz | 1600 MT/s | 12.8 GB/s |
| DDR4-2400, PC4-19200 | 300 MHz | 1200 MHz | 2400 MT/s | 19.2 GB/s |
| DDR4-3200, PC4-25600 | 400 MHz | 1600 MHz | 3200 MT/s | 25.6 GB/s |
| DDR5-4800, PC5-38400 | 300 MHz | 2400 MHz | 4800 MT/s | 38.4 GB/s |
| DDR5-6400, PC5-51200 | 400 MHz | 3200 MHz | 6400 MT/s | 51.2 GB/s |
DDR SDRAM usa sinalização de taxa de dados dupla somente nas linhas de dados. Sinais de endereço e controle ainda são enviados para a DRAM uma vez por ciclo de clock (para ser preciso, na borda ascendente do clock), e parâmetros de temporização como latência CAS são especificados em ciclos de clock. Algumas interfaces DRAM menos comuns, notavelmente LPDDR2, GDDR5 e XDR DRAM, enviam comandos e endereços usando taxa de dados dupla. DDR5 usa dois barramentos de comando/endereço de taxa de dados dupla de 7 bits para cada DIMM, onde um chip de driver de clock registrado converte para um barramento SDR de 14 bits para cada chip de memória.