Интерфейсы и DDR
У многих сокращение DDR (double data rate) связывается исключительно с опереативной памятью, хотя работа по двум фронтам синхросигнала используется в различных интерфейсах. Актуальный пример — XGMII интерфейс, используемый в технологии 10G Ethernet. Шина данных в нем 32-х битная и синхросигнал имеет частоту 156.25 МГц. Если умножить одно на другое, то то мы получим только 5 ГБит/с, но никак не 10 ГБит/с. Все дело как раз в DDR, то есть у нас появляется новое 32-х битное слово данных каждый полупериод синхросигнала — по положительному и отрицательному фронту. В итоге пропускная способность увеличивается в два раза.
Для работы с DDR интерфейсом в ПЛИС Altera (Cyclone III в частности) предусмотрены т.н. DDR регистры. Все подробности содержатся в Cyclone III handbook. Отмечу лишь, что DDR регистры бывают входные и выходные. Входные преобразовывают N-битный DDR интерфейс в 2*N-битный, работающий по одному фронту. Выходные же регистры выполняют обратную процедуру: выдают 2*N-битное слово, поступающее по одному фронту синхросигнала, половинками по N бит, но по каждому (и положительному и отрицательному) фронту, т.е. каждый полупериод.
законный вопрос: а где это у нас используется и где может быть полезно?