CPU CIRCUIT 004

From PSXDEV
Jump to: navigation, search

Contents

Декодер 9-в-10 ???

Схема содержит 419 ячеек.

Функционально - это крайне неэффективно сделанный декодер 9-в-10. То что в процессорах эпохи NMOS делается небольшой "решеткой" монтажного-И/ИЛИ в процессоре PSX превращается в монструозную схему.

Логика работы простая:

  • у схемы 10 выходов, каждый выход идёт с большого 6-NOR или 6-NAND (в зависимости от того, как генератор сделал де-Моргана)
  • на каждый большой 6-"ствольный" вентиль стекается куча рассыпухи, нанизанной на входные 18 проводов. Почему 18? Потому что входные 9 идут как в прямой, так и в инверсной логике.
  • синтезатор "деморганит" схему как считает нужным. получается просто адский треш из кучи вентилей разного сорта (NAND,NOR,OR,AND, которые могут быть 2-х и 3-х входовыми)

Большие подозрения что это схема т.н. Register Select (выбор регистра), а точнее она выбирает группу регистров (DMA, Root counters итп.), в зависимости от младших 9 разрядов. Других декодеров в процессоре мало (декодер кода операции например, но он принимает на вход только 6 разрядов).

Локатор

Circ004 locator.jpg

Топология

Трассировка завершена.

800px

Логическая схема

Есть небольшой прогресс (разобрано 5 входов, примерно 150 ячеек, инверторы не показаны):

800px

Это первая стадия декодирования, когда входы в прямой и инверсной логике расходятся на всякие вентили.

Разбор

Статус: конструирование