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

 
 
 
Reply to this topicStart new topic
> MII, Минимальный временной интервал между передачей пакетов от MAC к PHY
egorman44
сообщение May 14 2015, 14:44
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 141
Регистрация: 22-11-12
Из: Нижний Новгород
Пользователь №: 74 507



Всем здравствуйте ! sm.gif У меня вопрос.
Есть у меня волшебный MAC контроллер от Xilinx (Ip "Tri - Mode Ethernet Mac cntr") использую в режиме 100 Mbps работает исключительно на передачу. Каждые 4 мс моей логикой формируются 8 пакетов примерно по 1024 байт, для этого используется 8 буферов по 2048 байт каждый. Размер буфера выбрал исходя из количества оставшихся блоков RAM. Данные поступают от фреймера E1.
Мне это все дело необходимо передать PHY трансмиттеру. Есть ли какой-либо минимальный интервал между посылкой пакетов по MII, или я вполне могу слать следующий как только закончена пересылка предыдущего ? На сколько я понял PHY мне не может доложить, что пакет ушел в сеть ? А может все это дело разнести по времени, по мере заполнения буферов, чтобы сразу во внешку все не передавалось ?

UPD: я так понял достаточно соблюсти Interpacket gap ?
Go to the top of the page
 
+Quote Post
Jackov
сообщение May 14 2015, 15:30
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 294
Регистрация: 25-09-13
Из: Н.Новгород
Пользователь №: 78 485



Цитата(egorman44 @ May 14 2015, 17:44) *
UPD: я так понял достаточно соблюсти Interpacket gap ?

Я сейчас делаю Eth под Альтеру тамошняя корка этот самый gap выдерживает сама, мало того его размер можно явно указать, но у меня сейчас стоит по умолчанию, не помню сколько.
Думаю у Хилых должно быть аналогично.
Go to the top of the page
 
+Quote Post
Alex11
сообщение May 14 2015, 16:16
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Interpacket gap - 96 бит соблюсти обязательно. Будет ли корка его соблюдать сама - по идее, должна.
Go to the top of the page
 
+Quote Post
tvcam
сообщение May 14 2015, 17:06
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 10-12-04
Из: spb
Пользователь №: 1 435



Когда то давным давно делал аппаратный стек UDP на Altere, выжимая максимальную скорость из 100Мбит. И вот что у меня осталось в памяти, но я могу ошибаться. Можно было пихать в PHY следующий пакет на следующий такт. Получал максимально возможную скорость передачи от устройства (видеокамера), ещё народ в этой конференции писал что не может быть такого потока. В исходниках сохранён комментарий "Промежуток между пакетами 960 нс". Я не знаю сколько должно быть, но оставляю это время в текущих проектах. Помнится следующая особенность данного промежутка. PHY установленное в устройстве будет тупо принимать пакеты по MMI и тупо передавать их в сетку, так как в PHY железная логика. Простые PHY не содержат не каких длинных буферов и тому подобного (так было давно). Посмотрите внимательно на структуру вашего PHY, есть там буфера или нет, я думаю нет (простый 100 мегабитные). Также PHY работает и по приёму, без буферов. Но фишка оказалась в том что в компьютере часто стоит такой же PHY, только на PCI и тоже без буферов. А на этой шине PCI повешена куча устройств которые тоже нужно обслуживать, и время на это при приходе пакетов подряд без промежутков нет, а тем более на одновременное выполнения приёма и передачи. Короче всё зависит от PHY приёмника (в компьютере). При уменьшении времени Интеловская плата встроенная в материнку принимала пакеты, похоже она подключена напрямую к чипу на материнке, где есть буфер, а Реалтековская дешевая за 5 баксов на PCI начинала пропускать, там по структуре нет буфера. К тому же начинала падать передача от компьютера, от PHY в Альтеру приходил только кусок пакета, при увеличении промежутка в компьютер, пакет от компьютера тоже увеличивался - приходя в норму.
Опс.. опередили:

Цитата(Alex11 @ May 14 2015, 19:16) *
Interpacket gap - 96 бит соблюсти обязательно.

это на какой частоте, сколько по времени между пакетами?
Go to the top of the page
 
+Quote Post
Alex11
сообщение May 14 2015, 17:38
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Там всегда 96 бит, а время разное в зависимости от скорости. 9.6 мкс на 10 Мбит, 0.96 на 100 и 0.096 на 1Гб.
Go to the top of the page
 
+Quote Post
Andrew Su
сообщение May 14 2015, 17:45
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 301
Регистрация: 18-09-07
Из: Украина
Пользователь №: 30 647



Добрый день.
Выдержка из IEEE 802.3-2005

Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
tvcam
сообщение May 14 2015, 18:37
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 10-12-04
Из: spb
Пользователь №: 1 435



Если быть точным, то при 100 Mbps получается 940нс.
Go to the top of the page
 
+Quote Post
Alex11
сообщение May 14 2015, 19:15
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Откуда там 940? В стандарте цифра 960 и это правильно. Битовая скорость в линии 125 М, кодировка 4/5, передача исходного бита идет со скоростью 100 М. 96 бит -> 960 нс.
1.4.147 Inter-Packet Gap (IPG): A delay or time gap between CSMA/CD packets intended to provide
interframe recovery time for other CSMA/CD sublayers and for the Physical Medium. (See IEEE 802.3®,
4.2.3.2.1 and 4.2.3.2.2.) For example, for 10BASE-T, the IPG is 9.6 μs (96 bit times); for 100BASE-T, the
IPG is 0.96 μs (96 bit times).
Go to the top of the page
 
+Quote Post
tvcam
сообщение May 14 2015, 19:40
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 75
Регистрация: 10-12-04
Из: spb
Пользователь №: 1 435



Да, не прав, заклинило, передача в PHY из в данном случае из FPGA идёт на частоте 25 МНz (40нс) при 4 битах. (96 бит / 4) х 40 = 960нс
Go to the top of the page
 
+Quote Post
egorman44
сообщение May 14 2015, 20:44
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 141
Регистрация: 22-11-12
Из: Нижний Новгород
Пользователь №: 74 507



Ребяты всем спасибо , завтра буду пробовать выдерживать паузу a14.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 20th July 2025 - 20:52
Рейтинг@Mail.ru


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