Свежие обсуждения
Измерения

Осц.-пр. к ПК версия 2 (упрощенная)

1 26 44

efo.ru - at91sam7s64 на несколько десятков центов дороже атмега16
caddr: (что, кстати, и было сделано в прошивке автора темы)
В прошивке автора темы было: DVM: 400 пар in + sts (по размеру буфера).

 

AnSi: Кстати какой смысл в кольцевом буфере ???
Нужна цифровая линия задержки , что бы видеть, что было в момент синхронизации и чуть раньше.
Без этого получится игрушка.

 

AnSi

Точно можно получить 20 мегасемплов на AT91SAM7S? Я плохо знаком с системой команд и таймингами ARM7, могу ошибаться, но вроде бы ldr + str займут 5 тактов при условии доступа к Flash и SRAM за 1 такт (и, конечно, если конвеер не сбрасывать). 1-тактный доступ к Flash гарантирован максимум на 30МГц, получаем 6 мегасэмплов в итоге.

Про кольцевой буфер Alexey уже ответил.

 

плохо знаком с мк, но в AT91SAM7S есть ПДП. Т.о. предварительное чтение сделать на сколько нить мега семплов в кольцевой, а потом читать на полной скорости в линейный.. Правда, потеряются сколько то отсчетов между переходом кольцевой-линейный буфер. Или я в корне не прав?

 


caddr: Точно можно получить 20 мегасемплов на AT91SAM7S?
С ними еще не разбирался, но из даташита:
– Runs at up to 55 MHz, providing 0.9 MIPS/MHz
это в SRAM
– Single Cycle Access at Up to 30 MHz in Worst Case Conditions
Система команд очень серьезная, за такт делает Си-шную конструкцию
SiNil: Т.о. предварительное чтение сделать на сколько нить мега семплов в кольцевой
Надо использовать ФИФО, тогда никаких потерь не будет.

 

0.9 MIPS/MHz -- некая средняя величина в типовой программе, по мнению Атмел. Подозреваю, там учтено не слишком много инструкций чтения/записи в память и переходов : - )

Может ли контроллер DMA работать с PIO -- пока не понял (вроде как нет).

 

PS. У меня есть отладочная плата с AT91SAM7S64 и программатор, так что можно проверить идеи "в железе". Под ARMы писал только на Си, посему смутно представляю возможности ручной оптимизации на асме.

 

Во первых - огласите цену и главное тип КОРПУСА на этот ARM - а то при шаге выводов 0,6 мм пайка становится известным сексуальным упражнением.

6 мег8ых - это 6х180 руб по местным ценам - многовато однако.

О ПЛИС - опятьже корпус, корпус....

Единственно пока здравое 70000ая серия от альтерыв, но минимум 3 корпуса и 1000 руб.... многовато перед рассыпухой выходит.

 

Wladimir_TS - цена митинского радиорынка - мега8=35р, АТ91SAM7S64=176р.

caddr - 1-тактный доступ к Flash гарантирован максимум на 30МГц, получаем 6 мегасэмплов в итоге. -- доступ к Flash это выборка команд, внутри стоит умножитель частоты(до200мгц), от которого и считаются такты выполнения. Сохранить порт в память - одна команда и соответственно можно выбрать 30мегасемплов. если тактовать проц 192Мгц и сохранение пройдет за 8тактов то =24мгц, точно пока не считал сколько длится сохранение, но надеюсь за 8 тактов успеет
192Мгц выбрано для возможности работать с USB(кратно 48).
кстати 30мгц - это при 32битном чтении, при длине команд 16бит частота соответственно удваивается и "может" получиться 60
кстати АТ91 может выполнять код из оперативки, загрузившись из флеша.

SiNil - плохо знаком с мк, но в AT91SAM7S есть ПДП. -- из даташита вроде видно что ПДП используется для периферийных модулей, порты к сожалению к ним не относятся. Порт там рассматривается как регистр и соответственно можно сохранить одной командой регистр->память. используя ПДП можно одной командой слить в UART все 16 килобайт.

 

извиняюсь с одной командой сохранения кажется поспешил, языками плохо владеем
но если выполнять программу из ОЗУ то 24мега должно получиться.