Jump to content
    

как правильно организовать работу с spi шиной

Здравствуйте!

На одной шине клока - spi_clk, данных к spi устройству - spi_sdi и данные с spi устройства - spi_sdo.

Всего 3 утройства АЦП, и два ЦАПа (в одном корпусе с 4мя аналоговыми выходами). Как правильно организовать последовательную работу с этими 3мя устройствами?

 

Я вижу эту огранизацию так: заводится счетчик. Первые, например, 32 такта работает АЦП, проверяем если счетчик достиг 33 выключаем chip select АЦП, включаем chip select ЦАП, 24 такта работает ЦАП, проверяем если счетчик достиг 57 выключаем chip select ЦАП, проверяем если счетчик достиг 58 включаем chip select ЦАП, 24 такта работает ЦАП, проверяем если счетчик достиг 82 обнуляем счетчик и все начинаеться сначала.

Так правильно арбитрировать 3 устройства таким способом или нет? %)

Share this post


Link to post
Share on other sites

Здравствуйте!

На одной шине клока - spi_clk, данных к spi устройству - spi_sdi и данные с spi устройства - spi_sdo.

Всего 3 утройства АЦП, и два ЦАПа (в одном корпусе с 4мя аналоговыми выходами). Как правильно организовать последовательную работу с этими 3мя устройствами?

 

Я вижу эту огранизацию так: заводится счетчик. Первые, например, 32 такта работает АЦП, проверяем если счетчик достиг 33 выключаем chip select АЦП, включаем chip select ЦАП, 24 такта работает ЦАП, проверяем если счетчик достиг 57 выключаем chip select ЦАП, проверяем если счетчик достиг 58 включаем chip select ЦАП, 24 такта работает ЦАП, проверяем если счетчик достиг 82 обнуляем счетчик и все начинаеться сначала.

Так правильно арбитрировать 3 устройства таким способом или нет? %)

Вроде все правильно, но существует еще несколько вариантов. Прежде чем что-то предлагать Вам, хотелось бы выяснить некоторые детали:

- всегда ли Вам нужна описанная жесткая последовательность обращений к устройствам и никакая другая? Ваш способ не позволит менять ее без значительных изменеий в проекте

 

- все это (то, что Вы описали) бежит под управлением процессора или State machine? Если второе, то подразумевается жесткая последовательность обращений

 

- SPI Master контроллер Вашей собственной разработки или что-то готовое. Если "что-то готовое", то оно накладывает определенные ограничения, с которыми приходится считаться. Ни под что готовое (то, что знаю я) Ваше описание не слишком подходит.

Share this post


Link to post
Share on other sites

жесткая последовательность обращений к устройствам и никакая другая?

Да, нужна жесткая и БЫСТРАЯ последовательность обращения к устройствам.

 

все это (то, что Вы описали) бежит под управлением процессора или State machine?

State machine, с помощью case проверяется значение счетчика и соответственно включаются по chip select АЦП или ЦАП. На процессоре, мне кажеться, было бы проще и управлять устройствами и обрабатывать данные с АЦП, но т.к. нужна быстрая работа поэтому считаю что жесткая логика лучше...

 

SPI Master контроллер Вашей собственной разработки или что-то готовое. Если "что-то готовое", то оно накладывает определенные ограничения, с которыми приходится считаться. Ни под что готовое (то, что знаю я) Ваше описание не слишком подходит.

 

ПЛИС, АЦП и ЦАП стоят на Spartan-3E Starter Kit Board.

Простите за незнание, а SPI Master контроллер это что?

Я думал, что управление по SPI ведется в самом простом случае по 3 проводам: клок, chip select и вывод или ввод данных. Т.е. все эти три проводника подключены не посредственно к ПЛИС без использования дополнительного контроллера. А сигналы управления, клок и chip select генерируются дизайном.

Share this post


Link to post
Share on other sites

SPI MASTER - это устройство которое генерирует тактовую частоту, все остальные ведомые

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...