Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
Все основное там 32-битное и 40-битное. Это все арифметические операции, логические, сдвиги, пересылки. Все что делает D-юнит. Основные регистры там ВСЕ 40-битные. Это AC0-AC3. Дополнительные регистры T0..T3 - 16 битные. Адресные регистры XARn - 23-битные. Шины данных там спариваются, если нужно 32-битное обращение в режимах адресации dbl() и pair(). Однако могут распарится, чтобы за 1 такт достать 32 бита данных из двух разных мест. Далее. АЛУ там 16 битное есть, но это ДОПОЛНИТЕЛЬНОЕ АЛУ (A-unit), которое может выполнить операцию над 16-битными данными ПАРАЛЛЕЛЬНО с основным АЛУ (D-unit), которое пожизненно 40-битное. И предназначено это доп. АЛУ в первую очередь для адресных модификаций, всяких счетчиков, и т.п.
И никто не запрещает сделать ADD dbl(memory), AC0 и операция эта прибавит за 1 такт 32 битное содержимое памяти к 40-битному регистру в 40-битном сумматоре. И, можно ПАРАЛЛЕЛЬНО с этим в том же одном такте в дополнительном АЛУ сложить-вычесть-еще-что-нить-сделать с парой 16-битных данной. Итого процессор за 1 такт позволяет обработать 32+16 = 48 бит данных.
А C55 совместим с C54, если сассемблировать код специальным портирующим транслятором и установить бит совместимости с 54 в статусном регистре.