![]() |
конвеер в памяти и процессоре
Люди помогите пож., завтра работу писать, там может попасть такой вопрос, в НЭТЕ ничего не могу найти про это!
(понял из найденного только одно, что конвеер ускоряет работу памяти и проца. Ну если кто чего знает , может от себя!??? :молись: |
Где-то в интернете я видел хорошую статью на эту тему, не помню только где(давно это было).Попрубую объяснить как могу(за возможные ошибки не отвечаю :contract: )
Действительно процессорный конвейер ускоряет работу. Проиходит это следующим образом: Для примера возьмём конвейер с 3 функциональными блоками(чтение, выполнение, запись). Из этого следует, что выполнение какой-либо команды происходит в 3 этапа: чтение, выполнение, запись. Допустим, что выполнение каждой команды проихсодит за 3 такта. Мы имеем например последовательность команд Ком1,Ком2,Ком3 Код:
Такты Чтение Выполнение Запись.Использование конвейера предполагает, что после освобождение блока в него загружается следующая команда программы. Код:
Такты Чтение Выполнение Запись.Получается, что теперь на выполнение тех-же 3 последовательностей команд, процессору требуется только 5 тактов.Производительность почти удваивается. Объяснил как мог. Удачи!!! :) |
пасибо огромное! нашел кое что , кому интересно почитает !
КОНВЕЙЕР В ПРОЦЕССОРЕ Konveier protsessoris(Pipeline) Идея конвейера в том, что команда подразделяется на несколько этапов, каждый из которых выполняется определенной час¬тью аппаратного обеспечения, причем все эти части могут работать параллельно. На рис. 2.3, а изображен конвейер из 5 блоков, которые называются стадиями. Стадия С1 вызывает команду из памяти и помещает ее в буфер, где она хранится до тех пор, пока не будет нужна. Стадия С2 декодирует эту команду, определяя ее тип и тип операндов, над которыми она будет производить определенные действия. Стадия СЗ определяет местонахождение операндов и вызывает их или из регистров, или из памяти. Стадия С4 выполняет команду, обычно путем провода операндов через тракт данных. И наконец, стадия С5 записывает результат обрат¬но в нужный регистр. На рис. 2.3, б мы видим, как действует конвейер во времени. Во время цикла 1 стадия С1 работает над командой 1, вызывая ее из памяти. Во время цикла 2 ста¬дия С2 декодирует команду 1, в то время как стадия С1 вызывает из памяти коман¬ду 2. Во время цикла 3 стадия СЗ вызывает операнды для команды 1, стадия С2 декодирует команду 2, а стадия С1 вызывает третью команду. Во время цикла 4 стадия С4 выполняет команду 1, СЗ вызывает операнды для команды 2, С2 деко¬дирует команду 3, а С1 вызывает команду 4. Наконец, во время пятого цикла С5 записывает результат выполнения команды 1 обратно в регистр, тогда как другие стадии работают над следующими командами. (рисунки не нашел времени вставлять, если интересно , то пишите, выложу) :yees: |
| Часовой пояс GMT +4, время: 12:15. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.