Микропроцессорное программное управление. Архитектура IXA. Зарубин А.А. - 16 стр.

UptoLike

Составители: 

Рубрика: 

16
Интерфейс SRAM 32-разрядный - это половина разрядности шины SDRAM , поскольку
SRAM предназначен для быстрого поиска, не для хранения большого количества данных.
Как и для интерфейса SDRAM, рабочая частота интерфейса SRAM - половина
основной частоты.
PCI Unit
Модуль PCI обеспечивает работу стандартной 32-разрядной PCI (Peripheral
Component Interconnect) шины, реализуя PCI интерфейс для периферийных устройств,
таких как главный процессор и приборы управления доступом к среде (MAC). Модуль
PCI поддерживает быстродействие до 66 МГц и "PCI Local Bus Specification Revision 2.2".
Работу более чем на 33 МГц, поддерживают только два PCI устройства: IXP1200 и второе
устройство PCI. Чтобы поддерживать большее количество приборов на высоких частотах,
может использоваться мост PCI-to-PCI.
Модуль PCI связан с модулем SDRAM и центральной частью ЗУ StrongARM.
Приборы на шине PCI имеют полный доступ к SDRAM. Центральная часть ЗУ StrongARM
также имеет полный доступ к интерфейсу PCI и может быть устройством управления
шиной.
Два контроллера DMA интегрированы в модуль PCI. Они оба могут использоваться
или центральной частью ЗУ StrongARM или Microengine. Контроллеры DMA
программируются с помощью DMA описателей, которые постоянно находятся в SDRAM.
Описатели могут быть соединены так, чтобы блоки состоящие из нескольких несмежных
участков данных от SDRAM могли быть переданы в PCI как один блок.
При передаче данных между модулями PCI и IX bus, должны использоваться
микропроцессоры. Как правило, данные могут быть переданы от FIFO модулей IX bus
непосредственно к SDRAM, тогда, Microengine использовал бы PCI DMA контроллер,
чтобы передать данные от SDRAM к PCI интерфейсу.
Алгоритм обработки пакета в IXP1200
Обработка пакета модулями процессора IXP1200 производится следующим
образом (рис. 10):
Приём пакета:
1.
Пакет поступает от MAC в модуль IX bus.
2. Заголовок отсылается в подпроцесс приёма в Microengine.
3. Тело пакета отсылается на хранение в SDRAM.
4. Подпроцесс приёма производит просмотр SRAM и затем получает адресную
информацию из SDRAM.
5. Microengine изменяет заголовок в соответствии с адресной информацией.
6. Модифицированный заголовок присоединяется к телу пакета в SDRAM.
7. Подпроцесс приёма посылает дискриптор пакета в очередь передачи в SRAM.
Передача пакета:
1. Подпроцесс передачи считывает дискриптор протокола из очереди передачи.
2. Используя информацию из дескриптора пакета, подпроцесс передачи находит
пакет в SDRAM и отдаёт команду модулю SDRAM передать пакет в FIFO
передачи модуля IX bus.
3. Модуль SDRAM пересылает пакет в модуль IX bus.
4. Подпроцесс передачи возвращает освободившийся дискриптор пакета обратно
в очередь передачи.
5. Модуль IX bus передаёт пакет в MAC и далее из процессора IXP1200.