0

Что значит иметь конвейерный datapath в архитектуре MIPS?Pipelined Datapath

Все примеры, которые я прочитал, включают в себя стирку и ожидание выполнения определенных задач, прежде чем переходить к другим, довольно просто понять.

Я надеялся на более подробное техническое объяснение того, как точно конвейерный datapath помогает архитектуре MIPS работать быстрее и как работают киоски.

ответ

2

Я полагаю, что лучшее объяснение в вашем учебнике, StackOverflow немного узок, чтобы перейти в углубленных объяснения, но так или иначе -

Трубопровод просто способ сломать цепочку задач в последовательные шаги , Конвейерный процессор имеет специальные защелки между шагами, которые синхронизируются с часами, так что в каждый такт каждый шаг может выполнять свою задачу и отправлять результаты на следующую. Большая польза от конвейерной обработки связана с тем, что, как только вы загрузили первый элемент в трубу (будь то инструкция или сумка с бельем или whateve), в следующем цикле можно принять следующий, задолго до предыдущего элементы завершили полный набор данных (как это сделал бы многоцилиндровый MIPS).

Это позволяет в стационарном режиме подавать один элемент в трубу за цикл, если не обнаружено никаких угроз управления/данных. Следовательно, максимальная пропускная способность машины остается 1 элемент за цикл (IPC = 1 в номенклатуре CPU), в то время как у вас практически нет ограничений на длину цикла! Теоретически вы можете разделить работу на более простые и короткие этапы, а также сократить время цикла (повышение частоты и общую производительность работы за раз).

Конечно, есть ограничения, так как промышленность процессора обнаружила не так давно - когда труба становится слишком большой, штраф за флеши (мы проигнорировали ранее) стал огромным штрафом, так что это не все розы. Поиск sweetspot глубины и сложности в основном является ключевым моментом в проектировании трубопроводов.

Смежные вопросы