|
"Открытый" последовательный интерфейс, Найти готовый или рискнуть и взяться за разработку? |
|
|
|
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, 11:11
|
Группа: Новичок
Сообщений: 10
Регистрация: 15-01-06
Пользователь №: 13 195

|
P.S. Evgeny_CD, кажется FM/MFM/RLL это хорошие протоколы для передачи по радиоканалу, для записи на магнитный носитель, но низкочастотная часть полосы пропускания используется плохо, т.е. если бы сделали Fast Ethernet на MFM, но полоса пропускания витой пары 5 кат. 0-130 MHz (примерно) использовалась больше в области высоких частот, а хочется эффективно использовать и низкие частоты, табу только на постоянную составляющую, т.е. я склоняюсь к 4B/5B и т. п... Насчет спектров конечно я не уверен на 100%, это лишь домыслы.
|
|
|
|
|
Jan 23 2006, 14:55
|
Гуру
     
Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892

|
Цитата(Alex Zorg @ Jan 23 2006, 14:11)  P.S. Evgeny_CD, кажется FM/MFM/RLL это хорошие протоколы для передачи по радиоканалу, для записи на магнитный носитель, но низкочастотная часть полосы пропускания используется плохо, т.е. если бы сделали Fast Ethernet на MFM, но полоса пропускания витой пары 5 кат. 0-130 MHz (примерно) использовалась больше в области высоких частот, а хочется эффективно использовать и низкие частоты, табу только на постоянную составляющую, т.е. я склоняюсь к 4B/5B и т. п... Насчет спектров конечно я не уверен на 100%, это лишь домыслы. Инфа по кодированию http://ariu.berdyansk.net/~andy/basic_lan_...06_06.shtml.htmNRZI Метод кодирования 4B/5B http://www.rhyshaden.com/encoding.htm5B/6B много всего http://dfe3300.karelia.ru/koi/net/nets08.htm#pmipmdФункции уровня PMI. Квартетная канальная шифрация, кодирование 5B/6B. Функции уровня PMD. Очень медленно открывается. http://www.frontiernet.net/~prof_tcarr/4B-5B/index.html4B/5B Encoding Simulation written by Teresa Carrigan. JAVA аплет, который наглядно показывает работу 4B/5B и NRZI. A random 16-bit pattern is generated. This is the data that we want to transmit on our 100Mbps network. Starting from the left-most bit, each set of 4 bits is replaced by its 5-bit 4B/5B equivalent. The 4B/5B encoding of the data is then transmitted over the network using NRZI transmission encoding. For each bit sent, both a synchronization clock pulse and the transmission waveform are displayed. http://asics.chuckbenz.com/open source 8b/10b encoder/decoder Тогда уж лучше выбрать 5b/6b - он симметричный (кстати, полного его описания не нашел - есть у кого?). А вообще все это очень быстро скатится к Витерби декодеру и прочей суровой теории цировых систем связи.
|
|
|
|
Сообщений в этой теме
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 Evgeny_CD, спасибо, почитаем.
iosifk, сейчас у ме... Jan 23 2006, 10:18 iosifk Цитата(Alex Zorg @ Jan 23 2006, 13:18) Ev... Jan 23 2006, 11:54 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
|
|
|