В то время, когда был разработан этот чип, люди использовали как можно меньше транзисторов в процессоре, чтобы сделать их достаточно маленькими, чтобы соответствовать имеющимся чипам.
Я подозреваю, что практически каждый «регистр» (как видимый программисту регистр набора команд, так и внутренние защелки микроархитектуры) в ЦП той эпохи хранил данные в прозрачной стробированной D-защелке или что-то подобное. В настоящее время в микросхеме много транзисторов, поэтому проще использовать полные триггеры типа «ведущий-ведомый», хотя они используют вдвое больше транзисторов.
Многие инструкции берут данные из некоторого регистра A, объединяют его с некоторыми другими данными с ALU и сохраняют результат обратно в регистр A. Это довольно легко сделать, если регистр A реализован с полным триггером D-master-slave.
Но если регистр A представляет собой прозрачную стробированную D-защелку, вам нужны неперекрывающиеся часы. Вы используете импульс на одном такте для хранения какого-либо промежуточного результата где-то (в то время как регистр A сохраняет свою выходную постоянную), а затем импульс на другом такте для загрузки регистра A с новым значением (в то время как промежуточный регистр сохраняет свою выходную постоянную).
Это требует двухфазных часов. Самый простой способ сделать неперекрывающиеся 2-фазные часы (в те дни, когда транзисторов было мало) - это небольшая внешняя схема, которая берет входные часы и делит их на два.
Со временем люди выяснили, как упаковать все больше и больше транзисторов в ИС. Таким образом, люди, разрабатывающие ЦП, все больше и больше интегрировали все компоненты ЦП в полную компьютерную систему в чип ЦП.
Читая между строк статьи о тактовых сигналах в Википедии , у меня складывается впечатление, что у людей, которые проектировали 8085, 6502 и другие чипы той эпохи, было немного больше места, чем в интегрированных процессорах предыдущего поколения, и они решили, что лучше. использование этой комнаты состояло в том, чтобы поместить эту маленькую внешнюю цепь в чип. Но они сохранили все регистры той же закрытой D-защелки, что и раньше.
Вот почему тактовая частота делится на два. Можно вспомнить, что первый внешний тактовый импульс генерирует импульс во внутреннем тактовом сигнале phase_one для обновления этого промежуточного регистра результата, а второй импульс из внешнего тактового генератора генерирует импульс во внутреннем тактовом сигнале phase_two для обновления видимого программистом регистра.