|
"Открытый" последовательный интерфейс, Найти готовый или рискнуть и взяться за разработку? |
|
|
|
Jan 22 2006, 20:52
|
Группа: Новичок
Сообщений: 10
Регистрация: 15-01-06
Пользователь №: 13 195

|
Существует много стандартный последовательных интерфесов от SPI до Fibre Channel. Но почему-то не получается ничего подобрать. Вот требования:
1) Реализуемость на ПЛИС FPGA (с ценой до 20$) для скоростей порядка 10MBit/s 2) Произвольный выбор реализации уровня "проводов" от банального TTL, до LVDS, потенциальный код с двумя уровнями. 3) Хорошее (большое) отношение пропускной способности к требуемой полосе пропускания канала. Возможность применения гальванической развязки через трансформатор (т.е. код без постоянной составляющей). К примеру, соблазнительно выглядит кодирование 4B/5B, 8B/9B или 8B/10B. 4) Произвольный выбор скорости от 1MBit/s до потолка, например, 100MBit/s. 5) "Дальность" (как и скорость) зависит от реализации. 6) Ассинхронный. Чтобы была возможность использовать "один провод" и при большой дальности между абонентами не было критичности к задержке между шиной данных и синронизацией. 7) Передача пачками байтов (или слов), контроль ошибок (исправление необязательно). 8) Соединение точка-точка (как RS232), возможность расширения, например, соединение нескольких устройств по кольцу или через коммутатор (Switch). 9) Наращиваемость.
Зачем это нужно? Хотелось бы иметь собсвенные наработки на VHDL/Verilog и применять их где только возможно в силу универсальности.
Вот некоторая критика сущесвующих протоколов:
RS-232 и его братья. Плюсы: простота, любая скорость. Минусы: нельзя вырезать постоянную составлющую ибо допустимо 9 одинаковых бит подряд и даже больше в паузах, эквивалентое кодирование 8B/10B было бы эффективнее, к примеру.
ARINC-429 (используется в авионике, кодирование с возвратом к нулю). Плюсы: используется в области моей деятельности, прост. Минусы: трехуровневое кодирование (а хочется двухуровневое). широкий спектр, нельзя вырезать постоянную составляющую, низкие скорости (менее 100KBit/s).
MIL-1553 (т.н. Манчестер-2, так же "военный" и авиационный интерфейс). Плюсы: нет постоянной составляющей, это стандарт ГОСТ. Минусы: не самое эффективное кодирование, потому широкий спектр, не очень большая скорость (<1MBit/s), "тяжелость" стандартной обвязки.
Fibre Channel. Плюсы: Очень быстрый, то, что надо. Минусы: Реализуем только с помощью специализированных дорогих ИМС (на ПЛИС, полагаю, сложно), слишком сложный и узкоспециализированный, для простого межплатного обмена не подойдет.
PCI-Express. Минусы: слишком сложный, только для межплатного взаимодейсвия, на ПЛИС не реализуешь.
SPI. Минусы: синхронный, соединить две деревни по витой паре типа "полевка" невозможно.
Если ничего подобного не подвернется, возникла идея о реализации приемопередатчика типа 4B/5B или 8B/9B на VHDL/Verilog для ПЛИС. Если получится что-либо "достойное" результат можно "выложить" в сети и получится что-то типа "Open Serial Bus".... $-)
Не критикуйте за "Пионерство".
|
|
|
|
|
 |
Ответов
|
Jan 23 2006, 10:18
|
Группа: Новичок
Сообщений: 10
Регистрация: 15-01-06
Пользователь №: 13 195

|
Evgeny_CD, спасибо, почитаем.
iosifk, сейчас у меня нет конкретной задачи, просто хочется немного заняться "радиолюбительством", повторюсь, но задача чисто на "интерес". Практически можно было бы объеденить блоки еще не сущесвующей в природе РЛС. Приемопередатчик найти готовый было бы интересно, но где? opencores.org? Был бы признателен, если бы кто-ть дал открытый Verilog/VHDL проект. Vertex-4 это круто, полагаю для упращенного варианта 4B/5B хватит ПЛИС за 10$.
Кстати, брать чисто (Fast) Ethernet не очень удобно. Нет гарантии доставки пакетов, если включено несколько устройсв (все "кричат" как хотят и могут мешать друг-другу). Кроме того для Eth лучше использовать специальный чип для MAC уровня, а не заниматься радиолюбительством с ПЛИС.
|
|
|
|
|
Jan 23 2006, 11:54
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(Alex Zorg @ Jan 23 2006, 13:18)  Evgeny_CD, спасибо, почитаем.
iosifk, сейчас у меня нет конкретной задачи, просто хочется немного заняться "радиолюбительством", повторюсь, но задача чисто на "интерес". Практически можно было бы объеденить блоки еще не сущесвующей в природе РЛС. Приемопередатчик найти готовый было бы интересно, но где? opencores.org? Был бы признателен, если бы кто-ть дал открытый Verilog/VHDL проект. ... полагаю для упращенного варианта 4B/5B хватит ПЛИС за 10$.
Кроме того для Eth лучше использовать специальный чип для MAC уровня, а не заниматься радиолюбительством с ПЛИС. Начните вот хотя бы с XAPP250 - Clock and Data Recovery With Coded Data Streams http://www.xilinx.com/xlnx/xweb/xil_public...7&iLanguageID=1Что касается МАС, то мой проект, который Вы называете "радиолюбительством" уже года 4 работает. Краткое его описание у меня на сайте в статье о Fast Eth. Удачи!
--------------------
www.iosifk.narod.ru
|
|
|
|
Сообщений в этой теме
Alex Zorg "Открытый" последовательный интерфейс Jan 22 2006, 20:52 Evgeny_CD HDLC?
http://www.interfacebus.com/Design_HDLC.html... Jan 22 2006, 21:14 iosifk Цитата(Alex Zorg @ Jan 22 2006, 23:52) Су... Jan 23 2006, 06:04 Alex Zorg P.S. Evgeny_CD, кажется FM/MFM/RLL это хорошие про... Jan 23 2006, 11:11 Evgeny_CD Цитата(Alex Zorg @ Jan 23 2006, 14:11) P.... Jan 23 2006, 14:55 Alex Zorg нiosifk, нет... радиолюбительством я называю разра... Jan 23 2006, 14:35 Alex Zorg "open source 8b10b encoder/decoder на Verilog... Jan 23 2006, 15:30 ASN Alex Zorg
Я уже приводил пример приёмопередатчика... Jan 23 2006, 20:50 yornik Мне кажется, уже начальная установка "Зачем э... Jan 23 2006, 22:30 Alex Zorg ASN
На соседнюю ветку уже попал, как-то "... Jan 24 2006, 16:26
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|