ИНСТРУКЦИЯ И ЛОГИКА ДЛЯ ДОСТУПА К ПАМЯТИ В КЛАСТЕРНОЙ МАШИНЕ ШИРОКОГО ИСПОЛНЕНИЯ

1. Процессор, содержащий:
кэш уровня 2 (L2);
первый кластер исполнительных блоков;
второй кластер исполнительных блоков;
первый блок кэш данных (DCU), соединенный с возможностью связи с первым кластером исполнительных блоков и с кэш L2; и
второй DCU, соединенный с возможностью связи со вторым кластером исполнительных блоков и кэш L2;
причем:
первый DCU и второй DCU каждый включают в себя:
кэш данных;
первую логику для приема операции с памятью из исполнительного блока;
вторую логику для ответа на операцию с памятью с информацией из кэша данных, когда информация доступна в кэше данных; и
третью логику для извлечения информации из кэш L2,
когда информация недоступна в кэше данных; при этом
процессор дополнительно содержит четвертую логику для поддержания контента кэша данных первого DCU равным контенту кэша данных второго DCU во всех тактовых циклах работы процессора.
2. Процессор по п. 1, в котором:
каждый из первого DCU и второго DCU дополнительно включает в себя буфер обратной записи; а
процессор дополнительно содержит:
пятую логику для выполнения выделения первой записи в буфер обратной записи первого DCU и второй записи в буфер обратной записи второго DCU в том же тактовом цикле работы процессора, причем первая запись и вторая запись эквиваленты друг другу; и
шестую логику для выполнения освобождения третьей записи в буфере обратной записи первого DCU и выделения четвертой записи в буфере обратной записи второго DCU в том же тактовом цикле работы процессора, причем третья запись и четвертая запись эквивалентный друг другу.
3. Процессор по п. 1, в котором:
процессор дополнительно содержит один или более кластеров интерфейсов, соединенных с возможностью связи между первым DCU и первым кластером исполнительных блоков, и между вторым DCU и вторым кластером исполнительных блоков; причем
один или более кластеров интерфейсов включают в себя:
пятую логику для сбора операции сохранения из комбинации первого кластера исполнительных блоков и второго кластера исполнительных блоков; и
шестую логику для выдачи операции сохранения в первый DCU и во второй DCU.
4. Процессор по п. 1, в котором каждый из первого DCU и второго DCU дополнительно включают в себя:
пятую логику для выполнения синхронного процесса перемещения из кэша данных; и
шестую логику для выполнения синхронного процесса заполнения в кэш данных.
5. Процессор по п. 1, в котором:
процессор дополнительно содержит кластер интерфейсов, соединенный с возможностью связи между первым DCU и первым кластером исполнительных блоков, причем кластер интерфейсов включает в себя:
пятую логику для сбора операции загрузки из первого кластера исполнительных блоков; и
шестую логику для выдачи операции загрузки в первый DCU; при этом
каждый из первого DCU и второго DCU дополнительно включают в себя буфер заполнения; причем
первый DCU и второй DCU соединены с возможностью связи с шиной; и
первый DCU дополнительно включает в себя:
седьмую логику для идентификации пропуска операции загрузки на кэш данных;
восьмую логику для записи операции загрузки в буфер заполнения на основании пропуска; и
девятую логику для выдачи операции загрузки во второй DCU через шину.
6. Процессор по п. 1, в котором:
каждый из первого DCU и второго DCU дополнительно включают в себя буфер отслеживания; и
процессор дополнительно содержит пятую логику для поддержания контента буфера отслеживания первого DCU равным контенту буфера отслеживания второго DCU для всех тактовых циклов работы процессора.
7. Процессор по п. 1, в котором
процессор дополнительно содержит один или более интерфейсов кэш соединенных с возможностью связи между первым DCU и кэш L2 и между вторым DCU и кэш L2; а
один или более кластеров интерфейсов включают в себя пятую логику для одновременной выдачи запроса отслеживания из кэш L2 в первый DCU и во второй DCU.
8. Способ, содержащий выполняемые с помощью процессора этапы, на которых:
принимают операции с памятью из первого кластера исполнительных блоков на первом блоке кэша данных (DCU)
принимают операции с памятью из второго кластера исполнительных блоков на втором DCU;
отвечают на операции с памятью, принятые на первом DCU с информацией из первого кэша данных в первом DCU, когда информация доступна в первом кэше данных;
отвечают на операции с памятью, принятые на втором DCU с информацией из второго кэша данных во втором DCU, когда информация доступна во втором кэше данных;
извлекают информацию из кэш L2, соединенного с возможностью связи с первым DCU и вторым DCU, когда информация недоступна в первом кэше данных и втором кэш данных; и
поддерживают контент кэша данных первого DCU, равным контенту кэша данных второго DCU во всех тактовых циклах работы процессора.
9. Способ по п. 8, дополнительно содержащий этапы, на которых:
выполняют выделение первой записи в буфер обратной записи первого DCU и второй записи в буфер обратной записи второго DCU в одном тактовом цикле работы процессора, причем первая запись и вторая запись эквивалентны друг другу; и
выполняют высвобождение третьей записи в буфере обратной записи первого DCU и выделение четвертой записи в буфер обратной записи второго DCU одном тактовом цикле работы процессора, причем третья запись и четвертая запись эквивалентны друг другу.
10. Способ по п. 8, дополнительно содержащий этапы, на которых:
собирают операцию сохранения из комбинации первого кластера исполнительных блоков и второго кластера исполнительных блоков; и
выдают операцию сохранения в первый DCU и во второй DCU.
11. Способ по п. 8, дополнительно содержащий этапы, на которых:
осуществляют синхронную обработку эквивалентных перемещений из первого кэша данных и второго кэша данных; и
осуществляют синхронную обработку эквивалентных заполнений в первый кэш данных и во второй кэш данных.
12. Способ по п. 8, дополнительно содержащий этапы, на которых:
собирают операцию загрузки из первого кластера исполнительных блоков;
выдают операцию загрузки в первый DCU;
осуществляют идентификацию пропуска операции загрузки на первом кэше данных;
записывают, на основании пропуска, операцию загрузки в первый буфер заполнения в первом DCU; и
выдают операцию загрузки из первого буфера заполнения во второй буфер заполнения второго DCU через шину.
13. Способ по п. 8, дополнительно содержащий этап, на котором поддерживают контент первого буфера отслеживания первого DCU, равный контенту второго буфера отслеживания второго DCU во всех тактовых циклах работы процессора.
14. Система, содержащая:
поток инструкций;
процессор, соединенный с возможностью связи с потоком инструкций, и включающий в себя:
первую логику для выполнения потока инструкций;
кэш второго уровня (L2);
первый кластер исполнительных блоков;
второй кластер исполнительных блоков;
первый блок кэш данных (DCU), соединенный с возможностью связи с первым кластером исполнительных блоков и кэш L2; и
второй DCU, соединенный с возможностью связи со вторым кластером исполнительных блоков и в кэш L2;
причем
первый DCU и второй DCU каждый включают в себя:
кэш данных;
вторую логику для приема операции с памятью из исполнительного блока;
третью логику для ответа на операцию с памятью с информацией из кэша данных, когда информация доступна в кэше данных; и
четвертую логику для извлечения информации из кэш L2, когда информация не доступна в кэше данных; а
процессор дополнительно содержит пятую логику для поддержания контента кэша данных первого DCU равным контенту кэша данных второго DCU во всех тактовых циклах работы процессора.
15. Система по п. 14, в которой:
каждый из первого DCU и второго DCU дополнительно включат в себя буфер обратной записи; а
процессор дополнительно включает в себя:
пятую логику, выполненную с возможностью выделения первой записи в буфер обратной записи первого DCU и второй записи в буфер обратной записи второго DCU в одном тактовом цикле работы процессора, причем первая запись и вторая запись эквиваленты друг другу; и
шестую логику, выполненную с возможностью освобождения третьей записи в буфере обратной записи первого DCU и выделения четвертой записи в буфере обратной записи второго DCU в том же тактовом цикле работы процессора, причем третья запись и четвертая запись эквивалентны друг другу.
16. Система по п. 14, в которой:
процессор дополнительно включает в себя один или более кластеров интерфейсов, соединенных с возможностью связи между первым DCU и первым кластером исполнительных блоков и между вторым DCU и вторым кластером исполнительных блоков; при этом
один или более кластеров интерфейсов включают в себя:
шестую логику для сбора операции сохранения из комбинации первого кластера исполнительных блоков и второго кластера исполнительных блоков; и
седьмую логику для выдачи операции сохранения первому DCU и второму DCU.
17. Система по п. 14, в которой каждый из первого DCU и второго DCU дополнительно включают в себя:
шестую логику, выполненную с возможностью синхронного осуществления процесса перемещения из кэша данных; и
седьмую логику, выполненную с возможностью синхронного осуществления процесса заполнения в кэш данных.
18. Система по п. 14, в которой:
процессор дополнительно включает в себя кластер интерфейсов, соединенный с возможностью связи между первым DCU и первым кластером исполнительных блоков, причем кластер интерфейсов включает в себя:
шестую логику, выполненную с возможностью сбора операции загрузки из первого кластера исполнительных блоков; и
седьмую логику, выполненную с возможностью выдачи операции загрузки первому DCU; при этом
каждый из первого DCU и второго DCU дополнительно включают в себя буфер заполнения; причем
первый DCU и второй DCU соединены с возможностью связи с шиной; а
первый DCU дополнительно включает в себя:
восьмую логику, выполненную с возможностью идентификации пропуска операции загрузки в кэше данных;
девятую логику, выполненную с возможностью записи операции загрузки в буфер заполнения, на основе пропуска; и
десятую логику, выполненную с возможностью выдачи операции загрузки во второй DCU через шину.
19. Система по п. 14, в которой:
каждый из первого DCU и второго DCU дополнительно включают в себя буфер отслеживания; а
процессор дополнительно включает в себя шестую логику, выполненную с возможностью поддержания контента буфера отслеживания первого DCU, равного контенту буфера отслеживания второго DCU во всех тактовых циклах работы процессора.
20. Система по п. 14, в которой
процессор дополнительно включает в себя один или более интерфейсов кэша, соединенных с возможностью связи между первым DCU и кэш L2 и между вторым DCU и кэш L2; а
один или более кластеров интерфейсов включают в себя шестую логику, выполненную с возможностью синхронной выдачи запроса на отслеживание из кэш L2 в первый DCU и во второй DCU.