Version 1/2 - Next » - Current version
Dmitry Smekhov, 02/27/2012 12:19 am


Контроль передачи

Надёжность передачи данных обеспечивают компоненты prq_link_out и prq_link_in

Компонент prq_link_out содержит память для четырёх пакетов по 256 слов. Сигнал tx_ready разрешает запись пакета в память. Для записи пакета надо выставить tx_data_title - заголовок пакета. tx_data и tx_data_we - данные пакета - от 1 до 256 слов, tx_data_eof - конец пакета. После получения tx_data_eof блок памяти помечается как занятый. Блок будет помечен как свободный, только
после прихода подтверждения о доставке пакета. Может быть записан пакет меньшей длины чем 256 слов, но передаются всегда пакеты длиной 256 слов.

Процесс pr_stp проверяет блоки данных на занятость. Если блок содержит пакет для передачи, то он передаётся. Если нет, то проверяется следующий блок. Возможна ситуация, когда будет заполнен только один блок данных. В этом случае он будет передан несколько раз до момента прихода подтверждения. Если заполнено два или больше блоков, то подтверждение должно успеть прийти в процессе передачи следующих блоков и повторной отправки пакета не произойдёт.