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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Вопросы по Spartan 3e, Нужна помощь...очень
Женя
сообщение Sep 5 2011, 19:47
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 5-09-11
Пользователь №: 67 019



Доброго времени суток всем!

Надеюсь не перевелись еще хорошие люди на страницах рунэта
Нужна помощь, сижу голову ломаю не первый день, прочитал (наверное уже мегабайты) статей, так что глаза в мозолях smile3046.gif

Ситуация такая- имеется ПЛИС Spartan 3e. Необходимо запрограммировать его так, чтобы он был как бы переходником. Подключаешь через USB-шник его к ПК, и комп определяет его как новое устройство, с другой стороны, чтобы комп еще определял устройство, подсоединенное через Com порт, к ПЛИСу(любой из SPI, UART, I2C).


Пока я понял вот что. Получается мне надо:
1.написать дрова на него (я так понял, на С/С++ можно через Borland C++ наверное оптимальнее всего)
2.запрограммировать саму эту штуковину и на USB и на COM порт (код надо на VHDL). Вот тут не совсем понятно- получается можно либо просто кодом делать(тогда отладку можно будет сделать прямо без платы), либо нужна схема проектируемого устройства, которую прога (не знаю какая лучше) потом переведет уже в код.

В этом, как Вы уже поняли, я новичок. Буду неимоверно благодарен, если кто передаст знания молодому поколению, даст какие- нибудь советы, статьи там или подскажет что- нибудь. 1111493779.gif В особенности со схемой. Дело очень важное.
Я нарыл тут какую то схему- она подойдет мне или нет?


Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
gk2
сообщение Sep 6 2011, 07:48
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 16-01-09
Пользователь №: 43 460



Вообще то для этого ПЛИС не нужна - есть микросхемы реализующие требуемое.
Например FT232R, FT2232D, FT2232H - http://www.ftdichip.com/Products/ICs/FT2232H.htm
с готовыми драйверами. Или подобные других производителей.



А если все же нужна ПЛИС, то http://www.ftdichip.com/Support/Documents/...fpga-ds-v13.pdf
Go to the top of the page
 
+Quote Post
Apast
сообщение Sep 6 2011, 08:51
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 224
Регистрация: 22-06-04
Из: Новосибирск
Пользователь №: 87



Не совсем понятна, задача. Все можно реализовать, как Вам уже сказали без использования ПЛИС, из вашей же схемы один CY7C68013A - может потянуть все упомянутые задачи. Собственно это 51 микроконтроллер с USB 2.0 контроллером на борту, и реализовать с другой стороны UART, I2C или SPI это уже чисто программная задача.
Реализовать USB, чисто средствами ПЛИС, даже используя внешний приемопередатчик (есть такие), достаточно сложная задача, и требует достаточно больших ресурсов матрицы, хотя и решаемая.
Что касается схемы, то да эта схема работоспособная (похоже она от программатора USB - JTAG).
Я сам достаточно часто использую такую связку CY7C68013A + XILINX (Spartan 3, Spartan 3e), но уменя матрица занимается управлением сбором и буферезацией данных для разнообразных оптических многоэлементных линеек и матриц, а CY7C68013A - интерфейс с РС.
Go to the top of the page
 
+Quote Post
Женя
сообщение Sep 6 2011, 15:22
Сообщение #4





Группа: Участник
Сообщений: 13
Регистрация: 5-09-11
Пользователь №: 67 019



Большое человеческое спасибо, за Ваше потраченное время, на мои вопросы.

Цитата(Apast @ Sep 6 2011, 12:51) *
Собственно это 51 микроконтроллер с USB 2.0 контроллером на борту, и реализовать с другой стороны UART, I2C или SPI это уже чисто программная задача.
Что касается схемы, то да эта схема работоспособная (похоже она от программатора USB - JTAG).


да, Вы правы, схема от программатора JTAG.

Суть вопроса вот в чем. Мне сказали, что есть, собственно, сама ПЛИС. есть переходник USB на нее. нужно сделать так, чтобы когда я подключал ее к компу, а к ней ЧТО ТО через Com порт, то комп определял это ЧТО ТО. В общем,как я понимаю, чтобы были организованы протоколы USB на выходе, а SPI(UART,I2C) на входе. То есть запрогать ее на USB, и еще ножки на Com. Но для этого(как я опять же предполагаю) необходима схема ее работы, чтобы уже по ней и составить код на VHDL. Вот сижу убиваюсь над самоучителем wacko.gif

Может еще есть какие мысли? или разъясните насчет схемы? правильно я понимаю- ПЛИС будет делать то, на что ее запрограммируешь, то есть можно как бы составить схему ее работы?
Go to the top of the page
 
+Quote Post
Apast
сообщение Sep 7 2011, 01:31
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 224
Регистрация: 22-06-04
Из: Новосибирск
Пользователь №: 87



Цитата(Женя @ Sep 6 2011, 19:22) *
Может еще есть какие мысли? или разъясните насчет схемы? правильно я понимаю- ПЛИС будет делать то, на что ее запрограммируешь, то есть можно как бы составить схему ее работы?

Да вы правильно понимаете, можно представить ПЛИС как набор неких элементов из которых можно составить необходимую вам схему,
в том числе на ней можно реализовать контроллер UART.
А вот дальше все сложнее, вам нужно разобраться с принципами работы USB шины, там есть понятие ренумерации устройств. Т.е. устройство в момент подключения (или будучи уже подключено и определено в системе определенным образом) "заставляет" систему вычитывать параметры идентифицирующие устройство из него же самого. Т.е. в первый момент ваше устройство онределяется ситемой, предположим, как переходник USB-UART. Дальше уже само устройство под управлением встроенного софта (или "железного" алгоритма) должно определять подключения чего-то через UART (методом опроса, запроса и т.д.) и выполнять ренумерацию (переподключение) уже с параметрами другого устройства подключенного по UART. Возможно немного запутанно - но это так.
Еще учтите что при любом изменении типа устройства на USB, будет запрашиваться драйвер под эти параметры.
Go to the top of the page
 
+Quote Post
XVR
сообщение Sep 7 2011, 12:14
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата
а к ней ЧТО ТО через Com порт, то комп определял это ЧТО ТО.
Это банальный переходник USB->COM
Цитата
чтобы были организованы протоколы USB на выходе, а SPI(UART,I2C) на входе.
Это опять же переходник USB->SPI/I2C.
Осталось понять, как должны были быть связанны 1 и 2, т.к. COM это никоим боком не SPI и не I2C. Как вы собирались подключать SPI/I2C к COM?
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Sep 7 2011, 18:05
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(Женя @ Sep 5 2011, 23:47) *
Доброго времени суток всем!
Надеюсь не перевелись еще хорошие люди на страницах рунэта
Нужна помощь, сижу голову ломаю не первый день, прочитал (наверное уже мегабайты) статей, так что глаза в мозолях...


Первым делом надо отделить мух от котлет.
Если надо сделать быстро работоспособное устройство - то можно купить за 100 рублей китайский переходник COM-USB или взять кипарис CY7C68013A или какой-нибудь PIC c USB илм FTDI м быстро на нём сваять девайс.

Если вы студент и это задание на курсовую или диплом - то приготовьтесь много читать и думать. Знания у вас нулевые и в VHDL и в написании "драйверов на Borland С++", а сделать нужно много.
Go to the top of the page
 
+Quote Post
Женя
сообщение Sep 7 2011, 18:57
Сообщение #8





Группа: Участник
Сообщений: 13
Регистрация: 5-09-11
Пользователь №: 67 019



Цитата(XVR @ Sep 7 2011, 16:14) *
Осталось понять, как должны были быть связанны 1 и 2, т.к. COM это никоим боком не SPI и не I2C. Как вы собирались подключать SPI/I2C к COM?


Уже прочитал несколько статей про протоколы. Спасибо за замечание, понял ошибку свою.

Цитата(VladimirB @ Sep 7 2011, 22:05) *
Если надо сделать быстро работоспособное устройство - то можно купить за 100 рублей китайский переходник COM-USB или взять кипарис CY7C68013A или какой-нибудь PIC c USB илм FTDI м быстро на нём сваять девайс.

Если вы студент и это задание на курсовую или диплом - то приготовьтесь много читать и думать. Знания у вас нулевые и в VHDL и в написании "драйверов на Borland С++", а сделать нужно много.


Да, Вы правы. Студент. И, опять же Вы правы. знания в этом нулевые. но мне это очень интересно. и я уже многое читаю сижу. прихожу с учебы- и опять за это дело сажусь.
Задание именно сделать это все на Spartan 3e.


Схемы может, или прошивки, если есть готовые, может кто подкинет?
И еще- какой интерфейс легче всего описать? UART, SPI, I2C или RS232? мне любой из этих можно. или они одинаковые практически?

Для отладки сказали нужно, чтобы с 2х сторон компы подключил, и передался пакет данных с одного компа на другой

омайгад...как же плохо быть пустоголовым в чем- то(это я о себе)...жаль нельзя как в фильмах, подключился к компу и в мозг перегнал себе знания santa2.gif


эх...2 недели...
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Sep 7 2011, 19:23
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(Женя @ Sep 7 2011, 22:57) *
...
Да, Вы правы. Студент. И, опять же Вы правы. знания в этом нулевые. но мне это очень интересно. и я уже многое читаю сижу. прихожу с учебы- и опять за это дело сажусь.
Задание именно сделать это все на Spartan 3e.
...


2 недели мало. Для работы с ПЛИС люди годами мозг себе напильником затачивают.
А вообще вы узнайте поточнее в каком виде "есть ПЛИС и переходник USB для неё" и что они из себя представляют. Может вам повезло и это готовая отладочная плата, а может набор микросхем в пакетике.

HDL ядра COM-порта (UART) имеются в большом количестве на Opencores.org
также есть хорошее ядро UARTa в исходниках для пикоблейза от Кена Чапмана на сайте xilinx.com.
Но по опыту: студент уже не торт пошёл нынче и может даже самую простую задачу по вставлению готового ядра в проект загубить на корню.

Go to the top of the page
 
+Quote Post
Женя
сообщение Sep 7 2011, 22:03
Сообщение #10





Группа: Участник
Сообщений: 13
Регистрация: 5-09-11
Пользователь №: 67 019



Цитата(VladimirB @ Sep 7 2011, 23:23) *
2 недели мало. Для работы с ПЛИС люди годами мозг себе напильником затачивают.
А вообще вы узнайте поточнее в каком виде "есть ПЛИС и переходник USB для неё" и что они из себя представляют. Может вам повезло и это готовая отладочная плата, а может набор микросхем в пакетике.


Мне повезло) есть ПОЛНОСТЬЮ готовая плата, со всеми разъемами и переходниками. задача просто ее запрогать и написать драйвера на компьютер.

Чтобы это было примерно вот как:

Картинка внизу.
Допустим выбран протокол SPI.

Пристыковали комп
кидаем пакет- он преобразуется в USB
это все загоняется в буфер.
затем из буфера идет пакет в преобразователь SPI
и вот этот пакет чтобы конечный был в SPI. и подавался на выход Tx.


Вот может кто подскажет схему этого всего? а то я нашел великое множество этих схем уже, но не знаю какая куда годится


И еще вопрос. разъясните пожалуйста. допустим я нашел схему контроллера- преобразователя интерфейса USB->SPI. могу ли я использовать схему эту для прогания моего Спартана 3е? или нужна схема именно под спартан, так как ножки разные?

Еще где то прочитал, что на спартаны UART реализовать не получится, так ли это??
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Hoodwin
сообщение Sep 8 2011, 07:04
Сообщение #11


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



А если сделать правильный класс устройства, то подойдут стандартные драйвера, которые уже есть в компьютере. Драйвер последовательного порта есть, драйвер HID-устройства есть. Вам в две недели не хватает еще за DDK сесть...
Go to the top of the page
 
+Quote Post
XVR
сообщение Sep 8 2011, 08:16
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата
Вот может кто подскажет схему этого всего?
У вас же есть готовая плата. Вот ее схему и берите.
Цитата
могу ли я использовать схему эту для прогания моего Спартана 3е?
У вас там (насколько я понял) кроме Спартана еще и Кипарис стоит. Если все это будет в той схеме, что вы нашли - то скорее всего ее можно будет адаптировать под вашу плату.
Цитата
или нужна схема именно под спартан, так как ножки разные?
Ножки у Спартана можно засунуть куда угодно (ну почти куда угодно), так что это не проблема
Цитата
Еще где то прочитал, что на спартаны UART реализовать не получится, так ли это??
Нет, не так. UART довольно примитивный интерфейс. Вот RS232 реализовать только на Спартане не получится - поплохеет ему от +/- 12В sm.gif
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Sep 8 2011, 11:17
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(Женя @ Sep 8 2011, 02:03) *
Мне повезло) есть ПОЛНОСТЬЮ готовая плата, со всеми разъемами и переходниками. задача просто ее запрогать и написать драйвера на компьютер.

Дык вы можете по человечески рассказать людям, что за плата, что на ней стоит, выложить её схему или фото или название.
А то постов в теме уже много, а телепаты всё не могут угадать, что у вас есть.
Go to the top of the page
 
+Quote Post
Женя
сообщение Sep 8 2011, 19:27
Сообщение #14





Группа: Участник
Сообщений: 13
Регистрация: 5-09-11
Пользователь №: 67 019



Цитата(VladimirB @ Sep 8 2011, 15:17) *
Дык вы можете по человечески рассказать людям, что за плата, что на ней стоит, выложить её схему или фото или название.
А то постов в теме уже много, а телепаты всё не могут угадать, что у вас есть.



Плата сама внизу

Немного не понимаю- когда я пишу драйвер для USB- то это как бы универсальный драйвер? Просто я нашел тут способ прямо пошаговый как драйвер и ПО забацать.

http://www.fpga-cpld.ru/build.html

Подскажите, Способ, который описан тут, подойдет мне для моего Spartan 3e?

и вот на этом же сайте есть как с помощью схемы запрогать сам ПЛИС.
http://www.fpga-cpld.ru/sapr1.html

Разъясните пожалуйста, Если стоит цель ИЗ ПЛАТЫ СДЕЛАТЬ ПРОСТО ПРЕОБРАЗОВАТЕЛЬ ИНТЕРФЕЙСА USB-> UART(либо SPI,либо IIC), то КАКИЕ ИМЕННО шаги мне надо сделать? а то я уже совсем запутался.

Мне нужна схема(так как VHDL я только начал учить)-это я знаю точно

НО! Схемы мне нужно 2? для самого интерфейса USB, и еще одна, которая переводит USB-> UART?

Все запчасти (переходники и тому подобное) уже ВСЕ ЕСТЬ. и все собрано. Задача только запрогать ПЛИС, написать( ИЛИ найти) драйвер и ПО.
Задача должна быть не особо сложная, так как Человек, кто давал задание должен понимать, что я в этом новичок.

Тут еще нашел схему(она подойдет для примитивного подключения просто на USB?)

От выполнения этой задачи зависит ближайший год моей жизни (учусь ведь я в институте) =)
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
ЕвгенийФ
сообщение Sep 8 2011, 21:04
Сообщение #15





Группа: Новичок
Сообщений: 1
Регистрация: 14-07-11
Из: СПб
Пользователь №: 66 216



Цитата(Женя @ Sep 8 2011, 23:27) *
Плата сама внизу
...

Это Spartan-3E Starter Kit

На сайте Xilinx есть подробное описание этой платы и куча примеров для неё.

В интернетах есть описание на русском ( и другие статьи Зотова или Тарасова)
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 15th June 2025 - 21:39
Рейтинг@Mail.ru


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