Jump to content

    
Sign in to follow this  
Hadgehog

Fibre Channel

Recommended Posts

Хорошо, а каким образом микросхема CYP15G010DXB определяет, служебная информация подается или данные? И еще не совсем понятно. Основной неделимой единицей передачи информации является кадр. Он имеет определенную структуру, состоящую из поля данных и нескольких полей служебной информации. При чем сказано, что размер поля данных может быть до 2112 байт (528 слов по 32bit). Не нашел, где задается размер этого поля. Есть только в поле заголовка порядковый номер кадра в данной последовательности и бит последнего кадра. Как система понимает, где заканчиваются данные?

Share this post


Link to post
Share on other sites
Хорошо, а каким образом микросхема CYP15G010DXB определяет, служебная информация подается или данные? И еще не совсем понятно. Основной неделимой единицей передачи информации является кадр. Он имеет определенную структуру, состоящую из поля данных и нескольких полей служебной информации. При чем сказано, что размер поля данных может быть до 2112 байт (528 слов по 32bit). Не нашел, где задается размер этого поля. Есть только в поле заголовка порядковый номер кадра в данной последовательности и бит последнего кадра. Как система понимает, где заканчиваются данные?

добрый вечер,

разделение служебной информации от данных производится на основе анализа сформированого кода 8/10, коды данных - кодируются строго по правилам, служебные команды нарушают правила кодирования.

 

Для определения длинны кадра специально предусмотрены служебные символы SOF и POF которые однозначно определяют границы кадра, поэтому объём данных вычисляется по мере приёма кадра, просто должен стоять программый ограничитель на длинну кадра. Если длинна кадра вышла за допустимые граници -сигнализировать о ошибке кадра.

Share this post


Link to post
Share on other sites

С форматом пакета немного разобрался, теперь с данными и кодированием. Мы тоже используем микросхему CYP15G0101DXB. Есть входная шина TXD[7:0] на нее подается код символа. Также имеем TXCT[1:0] двухразрядную шину для кодирования. SCSEL как-то тоже участвует в кодировании. И TXMODE[1:0] -- это совсем не понятно. Задает какие-то режимы работы. В первую очередь хочу понять, какие режимы нужны в моем случае, или туда можно канстанту какую-нибудь подать?

Если будем передавать только слова IDLE. По Т.З. формат слова имеет структуру: N-K28.5 D21.4 D21.5 D21.5. В Т.З. также сказано, что каждый передаваемый символ состоит из восьми бит: a,b,c,d,e,f,g,h. Имет обозначение Zxx.y Где Z -- контрольная переменная (может принимать значение D или K). xx -- десятичное значение двоичного числа, составленного из битов e,d,c,b,a, y--десятичное значение двоичного числа, составленного из битов h,g,f.

По этим правилам получается

D21.4 = 100_10101,

D21.5= 101_10101,

K28.5= 101_11100.

С символами D-типа проблем нет. А вот значения символа K-типа противоречит описанию микросхемы. Какое значение поставить пока не знаю. Также пока разбираюсь, какие режимы передачи задавать TXMODE[1:0] во время передчи слов IDLE и как кодировать слова...

Share this post


Link to post
Share on other sites

Добрый вечер.

Вопрос по формированию десятибитовой последовательности в микрухе CYP15G010DXB, она может быть разной.

Вот цитата с http://text.marsu.ru/osp/lan/2000/01/019.htm

 

/*

Каждый байт данных или специальный символ имеет два (возможно, одинаковых) передаваемых кода, т. е. каждый передаваемый символ имеет два представления, в частности K28.5 может быть представлен и как десятибитовая последовательность 0011111010, и как 1100000101. Какое из двух возможных представлений будет выбрано для передачи, зависит от значения «текущего дисбаланса» (Running Disparity, RD). Двоичный параметр RD вычисляется на основании баланса 0 и 1 в подблоках передаваемого символа. 1 соответствует сигналу с большей оптической мощностью (для оптических каналов) или сигналу с большим напряжением на контакте +, чем на контакте – (в случае медных линий). Текущий дисбаланс вычисляется после первых шести битов каждого передаваемого символа и затем после последних четырех его битов.

*/

 

Собственно хотел спросить, кто-нибудь может подробнее обьяснить, как вычисляется этот RD.

 

Спасибо.

Share this post


Link to post
Share on other sites

Добрый день, Esquire.

 

У нас возникла необходимость в адаптере GRAV32_PCI_FCAV фирмы Great River Inc.

Вы ранее упоминали о таких. Подскажите, пожалуйста, каким образом и где возможно

осуществить заказ этого адаптера в России.

Заранее благодарен.

------------

Onneg

Share this post


Link to post
Share on other sites

Добрый день.

 

Вычисление параметра Running Disparity (Текущего дисбаланса или нечётности)

в соответствии с FC-PH по ANSI X3.230-1994 происходит следующим образом:

 

 

- 10 бит a, b, c, d, e, i, f, g, h, j представляется двумя субблоками

a, b, c, d, e, i и f, g, h, j;

 

- Текущая нечётность в начале 6-ти битового субблока является текущей

нечётностью в конце последнего переданного символа;

 

- Текущая нечётность в начале 4-х битового субблока является текущей

нечётностью в конце 6-ти битового субблока;

 

- Текущая нечётность в конце символа является текущей нечётностью в конце 4-х

битового субблока;

 

- Текущая нечётность устанавливается положительной, если число единиц

в субблоке больше числа нулей. Также текущая нечётность устанавливается

положительной в случае, если субблок содержит комбинацию 000111 (или 0011);

 

- Текущая нечётность устанавливается отрицательной, если число нулей в субблоке

больше числа единиц. Также текущая нечётность устанавливается отрицательной в

случае, если субблок содержит комбинацию 111000 (или 1100);

 

- Во всех других случаях текущая нечётность не изменяется.

 

Изначально (перед передачей первого символа,

после включения и инициализации передатчика)

текущая нечётность автоматически устанавливается отрицательной.

 

Onneg.

Share this post


Link to post
Share on other sites

Если кто владеет, подскажите, что указывается в поле Parameter заголовка FC кадра? Я предполагаю, что это физический адрес в памяти, куда следует положить первое полезное слово данного пакета. Если это так, то адрес является абсолютным, а во всех описаниях сказано, что данный адрес является относительным. Если так, то относительно чего этот адрес надо вычислять? Спасибо...

Share this post


Link to post
Share on other sites

Добрый день.

 

Уважаемые господа разработчики! Подскажите пожалуйста, кто сталкивался с выбором(покупкой)драйвера-эквалайзера для организации FC канала на 50-омном кабеле.

В частности интересует продукция "Pulse Specialty Components" TM266DCB2 и TM531DCB2.

Если с мелкосерийной закупкой TM266DCB2 вопрос как то решается( срок поставки 10-12 недель), то с TM531DCB2 совсем плохо :05: .

Буду признателен за любую информацию по теме. :help:

Share this post


Link to post
Share on other sites

Приветствую.

Подскажите пожалуйста, кто сталкивался с выбором(покупкой)драйвера-эквалайзера для организации FC канала на 50-омном кабеле.

 

Ну не совсем на 50-омном, но сталкивался. Делаю по стандарту на 75 ом. Применяю трансформатор от Mini-Circuits Tx-2-5-1. У них же есть трансформаторы FC до 533 МГц.

 

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

 

В частности интересует продукция "Pulse Specialty Components" TM266DCB2 и TM531DCB2.

Если с мелкосерийной закупкой TM266DCB2 вопрос как то решается( срок поставки 10-12 недель), то с TM531DCB2 совсем плохо :05: .

Буду признателен за любую информацию по теме. :help:

Mini-Curcuits покупается в "Альтекс"

С уважением, Артем.

Share this post


Link to post
Share on other sites

Ого, тут оказывается вокруг Fiber жизнь кипит, а я думал мы одни такие умные :biggrin: А у нас есть мезонины и PCI-карты для FC-ASM для меди и отечественной оптики (от ЗАО ВОСПИ). Канал на 1 ГБит/с. Скорость передачи с ПК на ПК до 90 МБайт/с. Пока сердце системы Virtex2Pro, сейчас переводим это дело на ASIC.

 

Если кто владеет, подскажите, что указывается в поле Parameter заголовка FC кадра? Я предполагаю, что это физический адрес в памяти, куда следует положить первое полезное слово данного пакета. Если это так, то адрес является абсолютным, а во всех описаниях сказано, что данный адрес является относительным. Если так, то относительно чего этот адрес надо вычислять? Спасибо...

Это не так. Данное поле может использоваться как относительное начальное смещение данных в пакете протокола верхнего уровня. Это определяется значением соответствующего бита в F_CTL. В основном данное поле служит для сборки пакета верхнего уровня разбитого на несколько отдельных последовательностей кадров. Куда складывать полученные данные определяет протокол верхнего уровня, например, FC-VI или FC-ASM, cам FC-FS отвечает только за пересылку данных по сети.

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.

Sign in to follow this