Итак, задача заключается в следующем: имеется последовательная шина данных , скорость 44 мбита , по шине идет пакетная передача данных, длина пакета 188 байт , пакеты имеют идентификаторы, по этим идентификатором мне нужно из потока выбирать нужные пакеты и отправлять для обработки на МК. Количество нужных пакетов в потоке 10. Пакет может менять свое значение в течении времени от 10 секунд до 5 минут, если содержимое пакета изменилось, то в заголовке пакета меняется определенный байт , что помогает не отправлять один и тот же пакет на обработку.
Получается, что при максимальной скорости изменения данных в пакете , ПЛИС должна выбрать из потока 10 пакетов по 188 байт за 10 секунд и отправить их на МК.
Делать буду на ПЛИС от Altera. Для поставленной задачи мне посоветовали семейство Cyclone III ,а конкретно EP3C5E144C8N.
Описание интерфейса
Serial Output InterfaceThe serial bit stream is available on D7, where MSB is first to reconstruct the originalorder. If
RS0 = 0, then the parity bits are output If RS0 = 1, the data is null during the parity time slots.
STR_OUT is only high during the first bit of eachpacket, instead of during the first byte in parallel mode.
ERROR has the same function as in parallel mode.
CLK_OUT is the serial bit clock; it is derived from either the master clock,
M_CLK or from the internal VCO frequency divided by 6 ,by skipping some pulses to accommodate the frequency difference. All of the outputs are synchronous of the same master clock edge.
D0, STR_OUT, D/P and
ERROR may be properly sampled externally by the rising edge of
CLK_OUT, if RS1 = 0, or by the falling edge of
CLK_OUT if
RS1 = 1. This clock runs continuously, even during parity data, whatever the value of
RS0.
The first bit detected in a valid packet may be decoded if it is found on the appropriate edge of
CLK_OUT, where
STR_OUT = 1,
ERROR = 0,
D/P = 1. The following bits only require the assertion of
D/P (while
D/P = 1,...).
Сообщение отредактировал Zemlyanov - Jun 16 2011, 07:32
Эскизы прикрепленных изображений