Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: данные с uPP в последовательные и наоборот
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
NSergeevich
Добрый день всем! Помогите реализовать при помощи ПЛИС следующую задачу. С uPP (universal parallel port) поступают параллельные данные 16бит их нужно преобразовать в последовательные, а потом наоборот из последовательных в параллельные.
Kuzmi4
2 NSergeevich
телепаты как всегда в отпуске, дайте больше конкретики - как приходят, в какой именно параллельный интерфейс нужен, зачем это всё ...
Александр77
NSergeevich, повангую на общих основаниях при сломанном телепаторе.
Разберитесь как работают регистры 74SN165 и 74SN595, тогда вы сможете решить поставленную учебную задачу. Возможная подсказка тут
NSergeevich
Цитата(Kuzmi4 @ Feb 6 2015, 19:30) *
2 NSergeevich
телепаты как всегда в отпуске, дайте больше конкретики - как приходят, в какой именно параллельный интерфейс нужен, зачем это всё ...


Мне нужно реализовать вот эту штуку http://processors.wiki.ti.com/index.php/Fi..._connection.PNG Все, что мне нужно это взять вот эти [16:0] на входе и перевести их в последовательные данные. Т.е. на входе куча ножек на выходе одна. Как я понимаю нужно использовать мультиплексор и описать при помощи оператора "case". Как грамотно сделать не знаю.
Kuzmi4
2 NSergeevich
Существенно яснее не стало.
Смысл схемы "parallel-serial-parallel" чтобы просто завернуть провода всё так же остаётся скрытым.. Как и "serial" стандарт wacko.gif
Maverick
Цитата(NSergeevich @ Feb 9 2015, 10:35) *
Все, что мне нужно это взять вот эти [16:0] на входе и перевести их в последовательные данные. Т.е. на входе куча ножек на выходе одна. Как я понимаю нужно использовать мультиплексор и описать при помощи оператора "case". Как грамотно сделать не знаю.

мультиплексор + счетчик до 17 (управление мультиплексором)
silantis
Цитата(NSergeevich @ Feb 9 2015, 13:35) *
Мне нужно реализовать вот эту штуку http://processors.wiki.ti.com/index.php/Fi..._connection.PNG Все, что мне нужно это взять вот эти [16:0] на входе и перевести их в последовательные данные. Т.е. на входе куча ножек на выходе одна. Как я понимаю нужно использовать мультиплексор и описать при помощи оператора "case". Как грамотно сделать не знаю.


uPP это как я понимаю интерфейс OMAPL138, Вам надо принимать поток данных c OMAP по uPP преобразовать их в последовательную форму и выдать в серийном виде по одному проводу.
Тут три засады.
1. uPP это не просто строб данные, там надо разобраться с управлением, несложно, но надо разобраться,
есть там кстати и провод wait позволяет притормозить OMAP чтоб он не выдавал следующее слово до завершения операции
можно настроить управлением конфигом интерфейса по проводам, тогда ПЛИС еще и конфигурить будет под себя.
Короче надо разбираться.

2. Засада два, uPP может молотить данные со скоростью 75MHz по 16 бит, не быстро, но и не медленно, Вам соответственно чтобы эти 16 бит сериализовать надо
либо иметь частоту в 16 раз большую, то есть 1.2GHz, если работать на максимальной скорости, и естественно выдавать из ПЛИС уже через GTP трансивер
То есть придется разобраться с GTP/GTX гигабитными трансиверами

3. Засада три, поток данных непрерывный или нет, если непрерывный, то это большой вопрос как реализовать его в OMAPL138
И если все же он реализован, то в ПЛИС нужно FIFO, чтобы принимать данные куда то, пока текущее слово сериализуется.

Короче не такая простая задача, если работать на пределе uPP.

По собственно реализации, это будет честный state-machine плюс FIFO. Операторами сase или мультиплексором тут не обойдешься.
Слово "памагите" тут неуместно, советы можно дать только в общем виде, а так работа в два этапа
1. Модель создается и симулируется
2. Допиливается в конкретном железе при работа с OMAP, большое влияние на связку окажет софт управляющий uPP.
А значит с ним тоже надо разбираться, что там и как сделано.

И вся работа в целом выливается в небольшой такой но таки да геморрой.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.