Архитектура ЭВМ Лекция 7: Конфликты конвейера. Улучшения микроархитектуры

Лекция посвящена изучению проблем и конфликтов, которые могут возникать в конвейере и способов их решения, таких как переименование регистров, внеочередное выполнение команд и других. Также рассматриваются различные оптимизации, включая раннее прогнозирование переходов. Лектор: Кирилл Кринкин
Другие полезные материалы: online.osll.ru/useful

Пікірлер: 12

  • @JusticeOfHeart
    @JusticeOfHeart2 жыл бұрын

    Здравствуйте а сколько лекций еще осталось?

  • @protiv_bio
    @protiv_bio2 жыл бұрын

    Здравствуйте, Кирилл Владимирович. А программа industrial software engineering еще действует?

  • @industrialsoftwareengineering

    @industrialsoftwareengineering

    2 жыл бұрын

    Здравствуйте! На данный момент программа приостановлена. Но мы тем же авторским коллективом создали свою платформу, где со дня на день запустятся курсы по Linux, Kotlin, Си и в перспективе многие другие. Будем рады видеть вас на нашем сайте online.osll.ru/

  • @user-bx6tk2sn1s

    @user-bx6tk2sn1s

    2 жыл бұрын

    @@industrialsoftwareengineering а как же платформа cub?

  • @daviddav4778
    @daviddav47782 жыл бұрын

    скажите пожалуста почему лучше выбрать профессию "сисадмин" чем "web програмирование" ?

  • @coldrevenge673

    @coldrevenge673

    2 жыл бұрын

    Сначала на системного администратора отучись, а потом на программиста. Одно другому не мешает.

  • @user-bw7un6ht6f
    @user-bw7un6ht6f Жыл бұрын

    т.е. вас книга научила делать так и никак иначе.!

  • @user-bw7un6ht6f
    @user-bw7un6ht6f Жыл бұрын

    Я не понимаю, дешифрация инструкции происходит на первей же стадии, значит переход должен быть обнаружен уже на первой же стадии ,по чему у вас это происходит на 3-4 стадии машинного цикла я вообще не понимаю.

  • @boristiutrin7984
    @boristiutrin79842 жыл бұрын

    Вместо двух АЛУ в однотактном процессоре создали УУ и Hazard Unit. Неужели сложнее спроектировать и добавить 2 АЛУ (тем более так логарифмы и синусы вычислять не надо, только целочисленная арифметика) и выполнять 1 команду за такт, а не растягивать команду на 5 тактов и создавать CU и HU? Прямо чудеса какие-то.

  • @ForgottenPirat

    @ForgottenPirat

    2 жыл бұрын

    Вроде как объясняли в лекциях прошлых, но ты пропустил, или забыл, здесь такты будут намного короче, так как нет АЛУ и других логических устройств (можешь почитать про задержку распространения и другие вещи в книжке по которой читаются эти лекции, почему добавление логических устройств черевато), во вторых, здесь такты короче, так как здесь время такта определяется самой длинной задержкой распространения в одном из шагов конвеера (если вспомнишь, то в однотактной архитектуре у нас как бы все шаги конвеера выполняются в одном такте, там всё неделимо, а здесь мы этот такт грубо говоря делим на множество более маленьких (то есть делим операцию, на ещё более маленькие части) и так как мы за одно и тоже время 1 такта в однотактном процессоре выполним 5 тактов в конвеерном, получается что мы сделаем в 5 раз больше команд (хотя это варьируется опять же от конфликтов как ты видел). В однотактном процессоре не получится у нас никак помещать сразу несколько команд за один такт, так как опять же там негде хранить состояние для того чтобы читать следующую команду, если хотите глубже разобраться в вопросе, почитайте саму книжку, там объясняется и про задержки и про подходы к распаралеливанию команд, там можно не только строить конвееры, но и увеличивать кол-во ядер в том числе, какие плюсы и минусы у каждого подхода, ну и плюс там более подробно расскрывается конечно то что читает лектор.

  • @user-kv2fx1jf4c
    @user-kv2fx1jf4c2 жыл бұрын

    Зачем я смотрю это утром???

  • @coldrevenge673

    @coldrevenge673

    2 жыл бұрын

    Зачем ты задаёшь глупые вопросы?

Келесі