Основы цифровой обработки сигналов

5.3.1     Шины

Процессоры семейства ADSP-21xx (см. рис. 5.2) имеют пять внутренних шин для повышения эффективности передачи данных. Шины адреса памяти программы (PMA) и адреса памяти данных (DMA) используются одновременно для адресации в пределах адресных пространств памяти программ и памяти данных. Шины данных памяти программ (PMD) и шина данных памяти данных (DMD) используются для передачи данных из соответствующих областей памяти. При выводе шин на корпус за пределы кристалла они объединяются в одну внешнюю шину адреса и в одну внешнюю шину данных; области памяти выбираются соответствующими сигналами управления. Шина результата (R) используется для пересылки промежуточных результатов напрямую между различными вычислительными блоками.

Шина PMA, имеющая 14 разрядов, позволяет получить прямой доступ к 16 К слов памяти программ. Шина DMD является 16-разрядной. Она обеспечивает доступ к содержимому любого регистра процессора для передачи его в любой другой регистр или любую ячейку памяти данных за один цикл. Адрес памяти данных может поступать от двух источников: в виде абсолютного значения, содержащегося в коде команды (прямая адресация), или на выходе адресного генератора (косвенная адресация). Для выборки данных из памяти программ используется только косвенная адресация.

Шина данных памяти программы (PMD) может также использоваться для передачи данных между вычислительными блоками напрямую или через блок обмена между шинами PMD-DMD. Блок обмена между шинами PMD-DMD позволяет передавать данные от одной шины к другой. Он содержит технические средства, которые позволяют, когда это необходимо, преодолевать разницу в 8 бит между двумя шинами.

В памяти программ могут храниться как команды, так и данные, что позволяет DSP семейства ADSP-21xx одновременно осуществлять выборку двух операндов в одном цикле: один из памяти программы, а другой из памяти данных. Команды поступают либо прямо из памяти программ путем осуществления двойного доступа в одном машинном цикле (процессоры серии ADSP-218x), либо из кэш-памяти программ (в процессоре серии ADSP-219x и SHARC).