Тактовая частота 8086 и 80386 и быстродействие.

Тема в разделе "WASM.ASSEMBLER", создана пользователем cppasm, 29 дек 2006.

  1. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    Вот решил спросить у знатоков процессоров.
    Вроди и себя не последним балбесом считал, ну да ладно :)
    В общем в этом топике http://forum.sources.ru/index.php?showtopic=166026&st=0 человек мне доказывает что два проца:
    8086 133MHz и 386 133MHZ будут работать с разной скоростью.

    Т.е. например по даташитам clc занимает 2 такта как на 8086, так и на 386. Так вот он утверждает что это некие "системные" такты.
    И при одинаковой тактовой частоте 2 такта на 386 по времени будет меньше чем 2 такта на 8086 %)

    И я вот думаю - или я ваще ничего не понимаю, или он про какие-то не те такты мне толкует...
    В общем если кто может разъясните.
     
  2. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    частота процессора - частота импульсов, поступающих на вход синхронизации процессора. машинный такт может совпадать с периодом тактовых импульсов, а может и нет. вроде как у 8086 такт был равен периоду, а затем за период стали выполнять два такта - один по положительному фронту, другой - по отрицательному, но когда это стали делать - с 386 или с 486 - не скажу. (могу и ошибаться, в принципе)
     
  3. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    Так, уже вроди понятней.
    Я наверное в оригинальном посте непрально понял "системные такты" и "такты кварца"...
    Один вопрос: такт - это время выполнения микрооперации?
    Т.е. выходит что при одинаковой тактовой частоте длительность такта по факту у 386 будет в два раза меньше?
     
  4. shoo

    shoo New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2003
    Сообщения:
    1.537
    Адрес:
    Ukraine
    так нельзя сказать. такт - это такт. есть всякие диаграммы работы процессоров, на которых нарисовано, что выполняется за машинный такт, но я такие смотрел только для КР580ВМ80А (он довольно прост), поэтому сказать точно не могу. возможно, команда может состоять из микроопераций, но это совсем не значит, что они должны выполняться именно за один такт. такт - это один переход во внутреннем автомате процессора.

    также я сказал, что не помню, с какого процессора появилось такое "удвоение" - вполне возможно, что с 486 - нужно смотреть мануалы. по 386-м еще можно найти в сети, хотя уже с трудом - может, там и есть.
     
  5. BoMBeR

    BoMBeR New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2007
    Сообщения:
    7
    Помимо тактов есть еще такое понятие как машинный цикл, длительность которого различна у разных процев ... под временем выполнения команды обычно подразумевают именно кол-во машинных циклов. Т.е. вполне возможно что команда CLC выполняется за 2 цикла, но на 8086 машинный цикл может занимать больше тактов генератора чем на 80386.
    Кроме того для многих команд в процессе разработки процев изменялись внутренние реализации комманд и многие команды на 80386 потребуют меньше машинных циклов чем на 8086.