Работа и связь FPU с CPU.
В системе локальной шины, обменом всегда управляет CPU: – формирует адреса выборки команд и операндов, при обмене данными между FPU и DRAM – считывает информацию из ОЗУ и регистров FPU. FPU i387 подключен к CPU параллельно в 32-разрядном формате шины, а i287 - в 16-разрядном.
Взаимодействие FPU с системой осуществляется посредством команд. Все команды, транслируемые в CPU, параллельно поступают и в FPU, но команды FPU имеют особый код ESC (11011).
При встрече в программе команды ESC, выполняются следующие процедуры:
1) CPU записывает в свои регистры: код операции FPU, адреса команды, операнда и направление передачи;
2) в режиме РМ, CPU обеспечивает защиту информации и анализирует линию /BUSY от FPU;
3) если /BUSY=L, CPU переходит в ожидание, так как результат выполнения команды ESC может быть востребован очередной командой;
4) CPU подготавливает линии локальной шины для обмена с FPU;
5) FPU начинает выполнение очередной команды;
6) если FPU требуются данные, он выставляет на линию PE сигнал REQ=H, и тогда, –
7) CPU, имея все сведения для обмена на своих регистрах, активизирует линии /ADS, W/R#, Addres, М/IO#.
Обмен данными с FPU занимает не менее двух циклов CPU (по два внутрипроцессорных такта Ts и Tc, по два такта синхронизации CLK каждый, т. е. всего 8 тактов CLK2).
В первом цикле, CPU либо считывает данные из ОЗУ, запоминая их в своих регистрах, либо данные из арифметических регистров FPU (также запоминая их), теперь – для записи в ОЗУ.
Во втором цикле обмена, CPU, через сигналы своего внешнего интерфейса, записывает данные из своего внутреннего регистра в ОЗУ, либо через порты FPU – в арифметические регистры FPU.
Дата добавления: 2015-07-18; просмотров: 876;