реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> 2SPI + DMA
Allregia
сообщение Jul 22 2011, 20:47
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Придумал тут как упростить немного устройство. но для этого нужна синхронная работа двух SPI-интерфейсов.
Т.е. есть две области памяти, каждая из которых пересылается в свой SPI.
Оба SPI - в slave, с общими CS и CLK.
Я тут в командировке, так что в железе попробовать смогу только через неделю. а уже не терпится sm.gif Что думает уважаемая публика?
Не очень понятен вопрос взаимодействия периферии, при одновременных двух работающих пересылках DMA RAM->SPI, будет-ли оно сихронно? Нужно чтобы 0-1 байт их первого буфера, передавался по SPI1 одновременно с передачей 0-го байта по SPI2? затем первый байт и т.д. Т.е свего рода "2-х битный SPI".

Я думаю так - поскольку шина одна, то пересылка "Память1-SPI1" и "Память2-SPI2" одновременно быть не могут. В лучшем случае - они могут быть по очереди. FIFO SPI он забьют довольно быстро, а поскольку оба SPI тактируются одним и тем-же клоком и CS, то передавать начнут синхронно, но если какой-то из каналов DMA замешкается по каким-то причинам, а второй в это время будет работать - возникнет разсинхронизация.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jul 22 2011, 21:22
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Allregia @ Jul 23 2011, 00:47) *
...если какой-то из каналов DMA замешкается по каким-то причинам

По каким причинам DMA должен замешкаться, если только шина не загружена по самое не могу?
Go to the top of the page
 
+Quote Post
Allregia
сообщение Jul 23 2011, 09:19
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Цитата(aaarrr @ Jul 22 2011, 23:22) *
По каким причинам DMA должен замешкаться, если только шина не загружена по самое не могу?


А кто его знает, как там арбитраж шины устроен. В доках вроде писали что 30% процессору, остальное на ДМА, но как эти 70% между собой поделятся?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jul 23 2011, 09:33
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Allregia @ Jul 23 2011, 13:19) *
В доках вроде писали что 30% процессору, остальное на ДМА, но как эти 70% между собой поделятся?

Вы бы хоть намекнули, о каком процессоре идет речь.
Но из общих соображений, SPI в слейве по определению не откусит более 6.25% (8 бит, частота SPI не более 1/4 частоты шины-периферии).
Go to the top of the page
 
+Quote Post
Allregia
сообщение Jul 23 2011, 09:58
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Цитата(aaarrr @ Jul 23 2011, 11:33) *
Вы бы хоть намекнули, о каком процессоре идет речь.
Но из общих соображений, SPI в слейве по определению не откусит более 6.25% (8 бит, частота SPI не более 1/4 частоты шины-периферии).


LPC17xx
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jul 23 2011, 13:23
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Allregia @ Jul 23 2011, 13:58) *
LPC17xx

Ну вот, тактовая слейва для SSP будет не более 1/12 периферийной. Чтобы не успеть в таких условиях, надо очень сильно постараться.
Go to the top of the page
 
+Quote Post
Allregia
сообщение Jul 23 2011, 15:06
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Надо 7MHz тактовую на слейве, но - параллельно будут работать два SPI и USB или Ethernet.
Спасибо что обнадежили sm.gif
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 10:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.014 секунд с 7
ELECTRONIX ©2004-2016