Перейти к содержанию
    

ЧТО удобнее at91sam7s ИЛИ LPC2148

буду работать с UART, USB возможно с ethernet, хочу какую-нибудь ОС для ARM поковырять. например Вижу, что у SAM7S ЕСТЬ pdc(DMA) НА всю периферию, а у LPC2148 ТОЛЬКО на usb. Подскажите, что удобнее в применении, отладке, программированию, по наличию свободных исходников :glare:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тут есть некоторая "засада" - SAM7 имеет PDC (aka DMA) почти на все КРОМЕ USB :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тут есть некоторая "засада" - SAM7 имеет PDC (aka DMA) почти на все КРОМЕ USB :)

 

таак...интересный момент, а про то, что у ATMEL ОЩУТИМО медленный FLASH эТО правда?

 

Да , и , кстати , кто-нибудь использовал для отладки sam7 ОТЛАДЧИК mt-LINK, ЕСТЬ ли смысл его брать или достаточно j-LINK ЧЕРЕЗ LPT?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

J-Link вполне достаточно :)

Флэш работает на частоте 30 МГц, код выбирается через два 32-бит буфера, благодаря чему последовательные Thumb-команды выбираются за 1 цикл при любой тактовой частоте ядра, до максимальной 55 МГц (режим флэша WS=1).

При изменении порядка выполнения команд добавляется цикл на выборку первой из них.

Если тактовая частота ядра ниже 30 МГц, ставим режим WS=0, и за один цикл выбирается уже любая Thumb-команда.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

таак...интересный момент, а про то, что у ATMEL ОЩУТИМО медленный FLASH эТО правда?

Угу. У SAM7 есть еще идиотизм - если используется USB, то максимальная частота ядра - 48МГц, поскольку PLL у ядра и контроллера USB общий и коэфициенты деления одинаковые - то есть нельзя, например, запустить PLL на 192 МГц и поделить для USB на 4 а для ядра - на 3 (получив тем самым 64 Мгц). С учетом WS=1 для флеши на 48 МГц имеем эффективную частоту ядра всего 24 МГц :( Режим Thumb реально сможет заметно помочь (раза в полтора ускорить) только при ручной оптимизации кода.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Угу. У SAM7 есть еще идиотизм - если используется USB, то максимальная частота ядра - 48МГц, поскольку PLL у ядра и контроллера USB общий и коэфициенты деления одинаковые - то есть нельзя, например, запустить PLL на 192 МГц и поделить для USB на 4 а для ядра - на 3 (получив тем самым 64 Мгц).

 

Ссылочку на страничку даташита можно ? Потому что если мне память с кем-то не изменяет там на блок схеме UDPclock и MAINclock все-таки разными делителями заводятся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Главы 25 и 26 в обобщенном самовском даташите.

Делители-то разные. Но коэффициенты у них одинаковые - 1,2 и 4. Для USB надо 48 МГц, соответственно с учетом делителя частота PLL может быть 48, 96 или 192. Для клока ядра делитель может иметь те же самые значения - 1,2,4,8 и т.д (поле PRES в PMC_MCKR). Вот и получается что максимальная частота ядра у SAM7S при использовании USB составляет 48 МГц.

RM3400 в этом случае получше - у него два PLL, один из которых используется для USB, а второй для ядра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...