|
|
  |
Как оптимально передать сигнал от 10бит АЦП, к 8 битной памяти |
|
|
|
Jul 1 2008, 05:22
|
Участник

Группа: Участник
Сообщений: 65
Регистрация: 6-02-07
Пользователь №: 25 099

|
Цитата(ecos-rtos_in_ua @ Jul 1 2008, 08:27)  Собственно вопрос Как сигнал от 10 битного АЦП передать к 8 битной sdram памяти с максимальной скоростью? Лишние два разряда АЦП терять не хочется, но с другой стороны хочется максимальной скорости передачи, так как память и так узкое место.
Можно ли эти данные как-то сжать? Все зависит от типа оцифровываемого сигнала. Что за сигнал?
|
|
|
|
|
Jul 1 2008, 08:00
|
Участник

Группа: Свой
Сообщений: 43
Регистрация: 17-10-06
Из: Санкт Петербург
Пользователь №: 21 387

|
ставить логику и упаковывать данные перед записью, имеется в виду следующее: 1 слово - старшие 8 бит пишем на прямую в память, а 2 младших запоминаем, 2 слово - старшие 8 бит пишем на прямую в память, а 2 младших запоминаем, 3 слово - старшие 8 бит пишем на прямую в память, а 2 младших запоминаем, 4 слово - старшие 8 бит пишем на прямую в память, а 2 младших запоминаем, итого запомненных у нас 8 бит, вот их теперь тоже пишем в память. Но! так с памятью лучше не работать (как писалось выше - узкое место) - лучше поставить еще одну микруху памяти, а этот алгоритм использовать при передаче данных "наружу"
|
|
|
|
|
Jul 2 2008, 15:54
|
Местный
  
Группа: Свой
Сообщений: 209
Регистрация: 15-03-08
Из: Украина, Винница
Пользователь №: 35 931

|
Цитата(Евгений Николаев @ Jul 2 2008, 13:57)  Я бы взял частоту 250МГц (меандр): поделил на 2 - получил 125МГц для SDRAM, поделил (250МГц) на 2,5 (пользуясь скважностью меандра) - получил 100МГц для АЦП. При таком соотношении можно на 100МГц (укладываемся в 105МГц) получать 10-битные данные с АЦП и складывать на 125МГц (опять-таки, укладываемся в 143МГц) 8-битные слова в ОЗУ пакетами по 40 бит. Между приемом данных с АЦП и записью в ОЗУ надо будет сделать буфер и простенький конвеер на 4/5 стадий АЦП/ОЗУ. Спасибо за совет, попробую.
|
|
|
|
|
Jul 6 2008, 21:58
|
Местный
  
Группа: Свой
Сообщений: 292
Регистрация: 28-01-05
Из: МО, Мытищи
Пользователь №: 2 274

|
Цитата(Евгений Николаев @ Jul 2 2008, 14:57)  Я бы взял частоту 250МГц (меандр): поделил на 2 - получил 125МГц для SDRAM, поделил (250МГц) на 2,5 (пользуясь скважностью меандра) - получил 100МГц для АЦП. При таком соотношении можно на 100МГц (укладываемся в 105МГц) получать 10-битные данные с АЦП и складывать на 125МГц (опять-таки, укладываемся в 143МГц) 8-битные слова в ОЗУ пакетами по 40 бит. Между приемом данных с АЦП и записью в ОЗУ надо будет сделать буфер и простенький конвеер на 4/5 стадий АЦП/ОЗУ. Так работать не будет. У Вас получился темп данных с АЦП в 1000 Мбит/c. При 125 МГц у памяти получим 100% загрузку пропускной способности её шины (125 МГц * 8 бит = 1000 Мбит/c). Но SDRAM это не статика. Для её работы обязательно нужно проводить регенерацию, открывать и закрывать банки.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|