Пр о ц е с с о р TMS 3 2 0C4 x
111
ции параллельно с некоторыми операциями АЛУ и умножителя за один цикл.
Для достижения максимальной эффективности параллельных команд требуют-
ся соответствующие режимы адресации и упорядочивание операндов в памяти.
Регистровая адресация операндов
облегчает выполнение параллельных
инструкций и помогает избежать конфликтов командного конвейера.
Кэширование команд.
Кэш-память ускоряет выборку команд и делает ее
одноцикловой даже при наличии относительно медленной внешней памяти. Ра-
бота кэш-памяти незаметна для пользователя, надо только не забыть разрешить
ее, записав 1 в разряды 11 и 12 и 0 в разряд 10 слова состояния процессора ST
.
Размещение данных во внутренней памяти вместо внешней.
Внут-
ренняя память процессора поддерживает сразу два обращения в одном цикле,
поэтому, если есть возможность, предпочтительно располагать операнды во
внутренней памяти. Для повышения производительности можно использовать
подкачку данных из внешней памяти, используя сопроцессор ПДП параллельно
с работой CPU.
Анализ и устранение конфликтов командного конвейера.
В случае
программ, некритичных к времени выполнения, на конфликты командного кон-
вейера можно не обращать внимания, поскольку они не нарушают работу про-
цессора. В случае приложений реального времени необходимо быть уверен-
ным, что процессорные циклы не теряются из-за конфликтов конвейера.
Для определения конфликтов конвейера команд можно воспользоваться
следующим подходом. Из системы команд процессора известно время выпол-
нения каждой команды в машинных циклах. Для критичных по времени участ-
ков программы теоретически рассчитывается время выполнения. Если оно сов-
падает с временем, которое показывает симулятор, значит конфликтов конвей-
ера нет. В противном случае требуется выяснить причину возникновения кон-
фликта конвейера и попытаться устранить ее.