Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
25.04.2019, 10:49
|
|
Почётный гражданин KAZUS.RU
Регистрация: 15.11.2010
Сообщений: 2,378
Сказал спасибо: 338
Сказали Спасибо 328 раз(а) в 253 сообщении(ях)
|
DMA в MSP430FR57xx
Читаю даташит в секции Burst-BlockTransfer:
Цитата:
|
In burst-block mode,transfersare block transfers with CPU activity interleaved.The CPU executes two MCLK cycles after every four byte or word transfers of the block, resultingin 20% CPU execution capacity. After the burst-block, CPU execution resumes at 100% capacity and the DMAEN bit is cleared
|
Так происходит только в этом режиме или во всех? И зачем так сделано?
Не понимаю следующий момент - в памяти лежит таблица формы сигнала. Я хочу сгенерировать этот сигнал. Я пересылаю первое значение в компаратор таймера. Таймер тикает, компаратор перещелкивает. А следующее значение DMA перешлет в компаратор по флагу CCIFG таймера?
|
|
|
|
25.04.2019, 20:57
|
|
Модератор
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,246
Сказал спасибо: 11,165
Сказали Спасибо 3,854 раз(а) в 2,925 сообщении(ях)
|
Re: DMA в MSP430FR57xx
parovoZZ, самое правильное - немного потратить времени на ощупывание всего железа во всех режимах. Потом оно быстро окупится.
Заодно неплохо заглянуть в errata на предмет обнаруженных несоответствий с документацией и узких мест…
Сейчас под рукой нет подходящего пациента для проверки
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
|
|
|
|
25.04.2019, 21:06
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,901
Сказал спасибо: 499
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: DMA в MSP430FR57xx
Сообщение от parovoZZ
|
зачем так сделано?
|
Одновременный доступ к шине контроллером ДМА и процессором невозможен, и тут его делят 20:80 - гарантировано и выполнение программы во время трансфера ("на 1/5 скорости от максимума"), и скорость дма-пересылки
|
|
|
Сказали "Спасибо" AR_Favorit
|
|
|
25.04.2019, 21:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 7,765
Сказал спасибо: 2,667
Сказали Спасибо 2,634 раз(а) в 1,947 сообщении(ях)
|
Re: DMA в MSP430FR57xx
Сообщение от parovoZZ
|
Так происходит только в этом режиме или во всех?
|
Цитата:
|
In burst-block mode
|
Вангую, что - только в этом режиме, потому что название больно уж подходит под описанное фунциклирование.
Последний раз редактировалось Yuri222; 25.04.2019 в 21:18.
|
|
|
|
26.04.2019, 10:49
|
|
Почётный гражданин KAZUS.RU
Регистрация: 15.11.2010
Сообщений: 2,378
Сказал спасибо: 338
Сказали Спасибо 328 раз(а) в 253 сообщении(ях)
|
Re: DMA в MSP430FR57xx
Сообщение от AR_Favorit
|
Одновременный доступ к шине контроллером ДМА и процессором невозможен,
|
Но ведь вся прелесть в ДМА именно в том, чтобы пересылать данные без участия ЦПУ. А получается, что смысл этой фразы надо понимать буквально))
Вот кстати в остальных секциях я такой сноски не нашел, а из описания на контроллеры MSP430x1xx и MSP430x4xx (в русскоязычном переводе) понятно, что ЦПУ стоит. Получается, что с ДМА у нас выигрыш только в скорости переноса.
Сообщение от mike-y-k
|
самое правильное - немного потратить времени на ощупывание всего железа во всех режимах.
|
Я на ТИАЙ ком никак не могу наполнить корзину - и этого хочется, и того)) Поэтому железа нет ещё. Скорее всего, из терры быстрее приедет пара плат на СС430. Снйчас там у них цена вкусняшка. Но без программатора на них только посмотреть))
|
|
|
|
26.04.2019, 15:17
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.03.2010
Сообщений: 2,901
Сказал спасибо: 499
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
|
Re: DMA в MSP430FR57xx
Сообщение от parovoZZ
|
Но ведь вся прелесть в ДМА именно в том, чтобы пересылать данные без участия ЦПУ. А получается, что смысл этой фразы надо понимать буквально))
|
Ну, строго говоря, если бы ЦПУ не просто притормаживал на время DMA бурста, а именно сам бы пнресылкой занимался параллельно с основной задачей, накладные расходы (на сохранение контекста, например) и сопутствующее падение скорости выполнения основной задачи были бы не в пример больше.
|
|
|
Сказали "Спасибо" AR_Favorit
|
|
|
26.04.2019, 17:57
|
|
Прописка
Регистрация: 10.03.2016
Сообщений: 114
Сказал спасибо: 14
Сказали Спасибо 46 раз(а) в 41 сообщении(ях)
|
Re: DMA в MSP430FR57xx
Сообщение от parovoZZ
|
И зачем так сделано?
|
Потому что ДМА не панацея и сама реализация ДМА в разных МК совсем разная. Это всё изначально отдано на откуп производителю, как слепил - так и будет. В некоторых МК приоритеты ядра и ДМА можно менять, в остальных - как в данном случае, ну там плюс-минус. В особо печальных случаях лучше сразу взять МК с двумя шинами, чтобы ядро вообще никак не влияло на транзакции ДМА.
Сообщение от parovoZZ
|
Не понимаю следующий момент - в памяти лежит таблица формы сигнала. Я хочу сгенерировать этот сигнал. Я пересылаю первое значение в компаратор таймера. Таймер тикает, компаратор перещелкивает. А следующее значение DMA перешлет в компаратор по флагу CCIFG таймера?
|
Всё это уяснить вам помогут только натурные испытания, особенно с применением ДМА. Ибо возможны и варианты.
|
|
|
|
26.04.2019, 18:28
|
|
Прописка
Регистрация: 30.07.2006
Адрес: Фрязино, М.О.
Сообщений: 116
Сказал спасибо: 0
Сказали Спасибо 23 раз(а) в 20 сообщении(ях)
|
Re: DMA в MSP430FR57xx
Сообщение от parovoZZ
|
Таймер тикает, компаратор перещелкивает. А следующее значение DMA перешлет в компаратор по флагу CCIFG таймера?
|
В ДМА есть следующие основные параметры функционирования: указатель источника данных, указатель назначения данных, источник РЕКВЕСТОВ транзакций, количество транзакций за сессию, режим сессии (циклический или однократный). Все. Остальное - несущественные подробности.
Следующее (как и первое) значение будет переслано по флагу ИСТОЧНИКА РЕКВЕСТОВ. Что в этом качестве назначено, то и определит интервал между транзакциями. Для синтеза сигнала таким источником должен быть СЕМПЛИРУЮЩИЙ ТАЙМЕР, задающий частоту дискретизации синтезируемого сигнала.
|
|
|
|
26.04.2019, 18:49
|
|
Прописка
Регистрация: 10.03.2016
Сообщений: 114
Сказал спасибо: 14
Сказали Спасибо 46 раз(а) в 41 сообщении(ях)
|
Re: DMA в MSP430FR57xx
Сообщение от my504
|
Следующее (как и первое) значение будет переслано по флагу ИСТОЧНИКА РЕКВЕСТОВ. Что в этом качестве назначено, то и определит интервал между транзакциями. Для синтеза сигнала таким источником должен быть СЕМПЛИРУЮЩИЙ ТАЙМЕР, задающий частоту дискретизации синтезируемого сигнала.
|
Угу. ТСа тема квестов и тайных комнат мало интересует. Его больше интересует возможность наличия джиттера или искажения сигнала из-за конфликта интересов ядра и ДМА. И "СЕМПЛИРУЮЩИЙ ТАЙМЕР" здесь уже получается как бы не самый главный. Всё упрётся в возможности периферии в целом.
|
|
|
|
26.04.2019, 19:09
|
|
Модератор
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,246
Сказал спасибо: 11,165
Сказали Спасибо 3,854 раз(а) в 2,925 сообщении(ях)
|
Re: DMA в MSP430FR57xx
parovoZZ На тему вопроса - стоит прошерстить e2e community, учебники и статьи у ковбоев по вопросу. В давние времена у них там был очень хороший материал по множеству аспектов 430. На странице самого чипа стоит посмотреть список документации и training
Ну а на этой неделе терра на пару с дко решила ничего не продавать (минимум физикам ) - товары уже в корзине при оформлении отмечаются как запрещённые к покупке. Манагеры по телефону блеют о технических работах с базой данных. Плюнул и заказал на mouser - и дешевле вышло и сроки меньше.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 20:35.
|
|