RU2406114C2 - Способ и устройство для управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками - Google Patents
Способ и устройство для управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками Download PDFInfo
- Publication number
- RU2406114C2 RU2406114C2 RU2008108471/08A RU2008108471A RU2406114C2 RU 2406114 C2 RU2406114 C2 RU 2406114C2 RU 2008108471/08 A RU2008108471/08 A RU 2008108471/08A RU 2008108471 A RU2008108471 A RU 2008108471A RU 2406114 C2 RU2406114 C2 RU 2406114C2
- Authority
- RU
- Russia
- Prior art keywords
- comparison
- memory
- mode
- access
- cache
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
- G06F11/1641—Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Hardware Redundancy (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Изобретение относится к способу и устройству для сравнения выходных данных по меньшей мере двух исполнительных блоков микропроцессора. Технический результат заключается в обеспечении возможности переключения в переключаемой многопроцессорной системе между режимом повышенной производительности и режимом сравнения. Такой результат достигается тем, что в устройстве для управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками, предусмотрены буферная память, в частности кэш-память, а также средства переключения и средства сравнения, причем переключение осуществляется между режимом повышенной производительности и режимом сравнения, причем в режиме сравнения доступ к буферной памяти закрывают для всех исполнительных блоков, а в режиме повышенной производительности доступ к буферной памяти открывают по меньшей мере для одного исполнительного блока. 2 н. и 11 з.п. ф-лы, 8 ил.
Description
Область техники, к которой относится изобретение
Настоящее изобретение относится к способу и устройству для сравнения выходных данных по меньшей мере двух исполнительных блоков микропроцессора согласно ограничительной части независимых пунктов формулы изобретения.
Уровень техники
Нерегулярные или случайные сбои, обусловленные альфа-частицами или космическим излучением, представляют собой все большую проблему для интегральных полупроводниковых схем. В связи с уменьшением структурной ширины, понижением напряжения и повышением тактовой частоты возрастает вероятность того, что пик напряжения, вызванный воздействием альфа-частицы или космического излучения, приведет к искажению логического значения в интегральной схеме. Следствием может стать ошибочный результат расчета. Поэтому в системах, важных с точки зрения безопасности, в частности в автомобиле, такие ошибки необходимо с уверенностью обнаруживать.
В системах, важных в отношении безопасности, например в системе регулирования антиблокировочного устройства автомобиля, в которых сбои электроники должны надежно отслеживаться, обычно используются устройства управления с избыточностью по обнаружению ошибок. Так, например, в известных антиблокировочных системах в каждом случае дублируется целый микроконтроллер, причем все антиблокировочные функции вычисляются с избыточностью и проверяются на соответствие. Если имеет место несоответствие результатов, антиблокировочная система отключается.
Такие процессоры по меньшей мере с двумя интегрированными ядрами известны также как двухъядерные или многоядерные архитектуры. Различные исполнительные блоки (ядра) отрабатывают с резервированием и тактовой синхронизацией один и тот же сегмент программы, результаты, полученные обоими ядрами, сравниваются, и при их сравнении на соответствие устанавливается возможное наличие ошибки.
Для ускорения доступа к командам (инструкциям) и данным процессоры оснащают кэш-памятью. Это необходимо при постоянно увеличивающемся объеме данных, с одной стороны, и усложнении обработки данных процессорами с постоянно повышающимся быстродействием, с другой стороны. Устройство кэш-памяти отчасти позволяет ускорить доступ к большой (основной) памяти, и, следовательно, процессору не нужно ожидать подготовки данных. Известны устройства кэш-памяти исключительно для команд и исключительно для данных, но также и "унифицированные устройства кэш-памяти", в которых хранятся как данные, так и команды. Известны также системы с несколькими уровнями (иерархическими ступенями) устройств кэш-памяти. Такие многоуровневые устройства кэш-памяти используются, чтобы посредством градации емкости памяти и различных стратегий адресации устройств кэш-памяти на различных уровнях обеспечить оптимальное согласование быстродействия между процессором и (главной) памятью.
Второй причиной использования устройств кэш-памяти является необходимость устранения конфликтов доступа по системным шинам и шинам памяти в микропроцессорных системах. В этих системах каждый процессор принято оснащать кэш-памятью, а в случае многоуровневых устройств кэш-памяти - соответственно несколькими устройствами кэш-памяти.
В известной конфигурации устройств кэш-памяти в переключаемой двухъядерной системе каждое из двух ядер имеет постоянно приданную ему кэш-память, к которой ядро обращается в режиме повышенной производительности. В режиме сравнения каждое из двух ядер обращается к своей кэш-памяти. Наряду с тем фактом, что в режиме сравнения информация многократно сохраняется в кэш-памяти (отдельно для каждого исполнительного блока), затраты времени на переключение, в частности, из режима повышенной производительности в режим сравнения значительны. При этом переключении состояние устройств кэш-памяти должно быть одинаковым. Только тогда можно гарантировать, что в режиме сравнения не окажется так, что кэш-память одного из участвующих в сравнении блоков окажется пустой (требуемая информация не записана в кэш-память и должна дозагружаться), кэш-память другого -заполненной (требуемая информация записана в кэш-память, и в дозагрузке нет необходимости).
Раскрытие изобретения
Задача изобретения состоит в том, чтобы устранить недостатки известных способов при использовании устройств кэш-памяти в переключаемой многопроцессорной системе. При этом к недостаткам относится прежде всего то, что в известных конфигурациях устройств кэш-памяти они требуют сложной синхронизации при переключении из режима повышенной производительности в режим сравнения.
Для обеспечения возможности переключения в переключаемой многопроцессорной системе между различными режимами, в частности режимом повышенной производительности и режимом сравнения, предпочтительно, чтобы не каждый исполнительный блок имел собственную кэш-память, так как особенно при переключении в режим сравнения пришлось бы выполнять затратное по времени согласование устройств кэш-памяти. В предлагаемых структурах от этого можно практически полностью отказаться.
Далее предпочтительно, чтобы размер различных устройств кэш-памяти для различных режимов (сравнения и повышенной производительности) можно было согласовывать с требованиями режимов. Кроме того, в некоторых режимах может оказаться целесообразным полный отказ от кэш-памяти, в частности, если сам доступ к шине не намного медленнее, чем доступ к кэш-памяти.
Соответственно, объектом изобретения является способ управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками, в которой предусмотрены буферная память, в частности кэш-память, а также средства переключения и средства сравнения, причем переключение осуществляется между режимом повышенной производительности и режимом сравнения, отличающийся тем, что в режиме сравнения доступ к буферной памяти закрывают для всех исполнительных блоков, а в режиме повышенной производительности доступ к буферной памяти открывают по меньшей мере для одного исполнительного блока.
В предпочтительном варианте осуществления предлагаемого в изобретении способа в режиме сравнения соединение исполнительного блока, связанного с буферной памятью, разрывают с помощью средств переключения.
В еще одном предпочтительном варианте осуществления предлагаемого в изобретении способа в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки запрещают доступ к памяти, не являющейся буферной.
В еще одном предпочтительном варианте осуществления предлагаемого в изобретении способа в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки данные в памяти, не являющейся буферной, делают недействительными или блокируют.
В еще одном предпочтительном варианте осуществления предлагаемого в изобретении способа в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки вычислительную систему перезапускают или повторно включают.
В еще одном предпочтительном варианте осуществления предлагаемого в изобретении способа в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки по меньшей мере один исполнительный блок перезапускают или повторно включают.
Объектом изобретения является также устройство для управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками, в которой предусмотрены буферная память, в частности кэш-память, а также средства переключения и средства сравнения, причем переключение осуществляется между режимом повышенной производительности и режимом сравнения, отличающееся тем, что оно содержит средства, выполненные таким образом, чтобы в режиме сравнения закрывать доступ к буферной памяти для всех исполнительных блоков, а в режиме повышенной производительности открывать доступ к буферной памяти по меньшей мере для одного исполнительного блока.
В предпочтительном варианте выполнения предлагаемого в изобретении устройства указанные средства выполнены как средства переключения, запрещающие или разрешающие исполнительному блоку доступ к буферной памяти.
В еще одном предпочтительном варианте выполнения предлагаемого в изобретении устройства средства сравнения выполнены таким образом, чтобы в режиме сравнения проверять данные на соответствие, и при несоответствии данных устанавливать наличие ошибки, в случае которой они запрещают доступ к памяти, не являющейся буферной.
В еще одном предпочтительном варианте выполнения предлагаемого в изобретении устройства средства сравнения выполнены таким образом, чтобы в режиме сравнения проверять данные на соответствие, и при несоответствии данных устанавливать наличие ошибки, в случае которой они делают недействительными или блокируют данные в памяти, не являющейся буферной.
В еще одном предпочтительном варианте выполнения предлагаемого в изобретении устройства средства сравнения расположены между по меньшей мере одним исполнительным блоком и буферной памятью.
В еще одном предпочтительном варианте выполнения предлагаемого в изобретении устройства буферная память расположена между по меньшей мере одним исполнительным блоком и средствами сравнения.
При этом средства переключения и средства сравнения могут быть выполнены в виде одного блока переключения и сравнения.
Краткое описание чертежей
Ниже приводится подробное описание вариантов осуществления изобретения, поясняемое чертежами, на которых показаны:
на фиг.1 - система C100 с двумя исполнительными блоками, из которых только один в режиме повышенной производительности и в режиме сравнения через кэш-память имеет доступ к шине C10;
на фиг.2 - система С 100с с двумя исполнительными блоками, каждый из которых в режиме повышенной производительности и в режиме сравнения имеет доступ к шине C10 через свою кэш-память, из которых, однако, в режиме сравнения используется только одна;
на фиг.3 - система С 100а с двумя исполнительными блоками, из которых только один в режиме повышенной производительности через кэш-память имеет доступ к шине C10; в режиме сравнения кэш-память не используется;
на фиг.4 - система С200 с двумя исполнительными блоками, каждый из которых в режиме повышенной производительности и в режиме сравнения через свою кэш-память имеет доступ к шине C10; в режиме сравнения доступ к шине осуществляется через отдельный блок подключения к шине;
на фиг.5 - система С200а с двумя исполнительными блоками, каждый из которых в режиме повышенной производительности и в режиме сравнения имеет доступ к шине C10 через свою кэш-память; в режиме сравнения доступ к шине осуществляется через отдельную кэш-память и отдельный блок подключения к шине;
на фиг.6 - система С300 с двумя исполнительными блоками, каждый из которых в режиме повышенной производительности и в режиме сравнения имеет доступ к шине C10 через свою кэш-память, из которых, однако, в режиме сравнения используется только одна; используемая в режиме сравнения кэш-память для решения своих задач использует внутри себя разные запоминающие устройства в зависимости от текущего режима работы системы С300;
на фиг.7 - система С400 с двумя исполнительными блоками, каждый из которых в режиме повышенной производительности и в режиме сравнения имеет доступ к шине C10 через свою кэш-память, из которых, однако, в режиме сравнения используется только одна; используемая в режиме сравнения кэш-память для решения своих задач использует внутри себя разные запоминающие устройства в зависимости от текущего режима работы системы С400; соотношение размеров этих двух запоминающих устройств регулируется отдельным устройством;
на фиг.8 - система С500 с двумя исполнительными блоками, имеющими доступ к шине C10 через кэш-память; в зависимости от режима работы системы С500 операции обращения исполнительных блоков к памяти обслуживаются по-разному.
Осуществление изобретения
Исполнительным блоком могут в дальнейшем именоваться как процессор, ядро, центральный процессор, так и модуль обработки операций с плавающей точкой, процессор цифровых сигналов, сопроцессор или арифметическое логическое устройство.
В некоторых многопроцессорных системах кэш-память используется только для того, чтобы избежать конфликтов доступа к системной шине и/или шине памяти. Если бы в системе был только один исполнительный блок, то в этом случае кэш-память не потребовалась бы, так как основная память имеет достаточное быстродействие, чтобы выполнять запросы на чтение от исполнительного блока.
На фиг.1 показан первый вариант исполнения многопроцессорной системы C100 с двумя исполнительными блоками С110а и C110b, которая по шине C10 может обращаться к памяти. Блок С130 регулирует доступ к шине C10 в зависимости от режима работы системы C100. В режиме повышенной производительности переключатель С131 замкнут, а переключатель С132 разомкнут. Таким образом, исполнительный блок С110b через кэш-память С120 и блок (разъем) С150 подключения к шине получает доступ к шине C10. Исполнительный блок С110а связан с шиной C10 напрямую через блок С140. Если кэш-память С120 имеет правильный размер или емкость, то обращения исполнительного блока С110b к памяти обслуживаются преимущественно кэш-памятью С120, поэтому доступ к шине C10 требуется лишь в редких случаях. При обращении же к памяти исполнительного блока С110а всегда необходим доступ к шине C10. Только в том случае, если доступ к основной памяти не может обслуживаться кэш-памятью С120, блок С150 обеспечивает доступ к шине. Если в то же время исполнительный блок С110а обращается к шине C10 через блок (разъем) С140, возникает конфликт доступа к шине, который должен быть разрешен протоколом шины. Поскольку кэш-память С120 не видна программному обеспечению, предпочтительно, чтобы блок С120 на шине C10 следил (этот процесс называется "bus snooping") за тем, изменяет ли исполнительный блок С110а через блок С140 информацию в памяти, которая также находится в кэш-памяти С120. Если это так, соответствующая информация в кэш-памяти С120 должна быть заменена новой информацией или помечена как недействительная.
В режиме сравнения переключатель С132 замкнут, а переключатель С131 разомкнут. Оба исполнительных блока получают совместный доступ к шине C10 через кэш-память С120. Компаратор С160 сравнивает выходные сигналы обоих исполнительных блоков и при несоответствии генерирует сигнал ошибки. Как возможный вариант, компаратор С160 может быть соединен с блоком С150 подключения к шине (на схеме такая связь не показана) и запрещать обращение к памяти для записи, если выходные сигналы обоих ядер не совпадают. В режиме повышенной производительности компаратор С160 отключен. Отключение компаратора может быть реализовано различными способами: либо компаратор С160 не выполняет сравнение, и сигналы для сравнения на компаратор С160 не поступают, либо, несмотря на выполненное сравнение, результат игнорируется.
Один из вариантов осуществления изобретения представлен на фиг.2 системой С 100с. В этом варианте известные из фиг.1 элементы работают аналогично. Однако исполнительный блок С100а в режиме повышенной производительности при замкнутом переключателе С131 получает доступ к шине C10 также через кэш-память С140а и блок (разъем) С140 подключения к шине. В режиме сравнения при замкнутом в этом случае переключателе С132 кэш-память С120 используется обоими исполнительными блоками С110а и C110b, тогда как кэш-память С140а используется исполнительным блоком С110 только в режиме повышенной производительности. Обе кэш-памяти С120 и С140а могут иметь различную емкость и соответственно могут быть оптимизированы для выполнения задач, соответствующих различным режимам работы.
На фиг.3 показан еще один вариант осуществления изобретения. При этом многопроцессорная система обозначена как C100а. В данном случае в режиме повышенной производительности переключатель С133 разомкнут, а переключатель С134 замкнут, и исполнительный блок С110b через кэш-память С120 и блок С150 подключения к шине имеет доступ к шине C10. Другой исполнительный блок С110а через блок С140 имеет прямой доступ к шине C10. В режиме же сравнения переключатель С133 замкнут, а переключатель С134 разомкнут, оба исполнительных блока через блок С140 имеют прямой доступ к шине C10, и кэш-память С120 не используется. Компаратор С160 сравнивает выходные сигналы обоих исполнительных блоков и при несоответствии генерирует сигнал ошибки. Как возможный вариант, в данном случае компаратор С160 также может быть соединен с блоком С140 подключения к шине (на схеме это соединение не показано) и препятствовать обращению к памяти для записи, если выходные сигналы исполнительных блоков не совпадают. В режиме повышенной производительности компаратор С160 отключен. Его отключение может быть реализовано различными, уже рассмотренными выше, способами.
В еще одном варианте исполнения многопроцессорной системы устройства кэш-памяти также используются лишь для устранения конфликтов доступа к шине памяти. На фиг.4 показана многопроцессорная система С200 с двумя исполнительными блоками С120а и С120b, которые могут обращаться к памяти по шине C10 различными способами. Блок С230 регулирует порядок доступа к шине C10 в зависимости от режима работы системы С200. В режиме повышенной производительности переключатели С231 и С234 замкнуты, а переключатели С232 и С233 разомкнуты. Поэтому исполнительный блок С210а получает доступ к шине C10 через кэш-память С240а с блоком С250а подключения к шине, а исполнительный блок С210b - через кэш-память С240b с блоком С250b подключения к шине. Доступ к шине C10 должен осуществляться только в том случае, если операции обращения к памяти не могут обслуживаться из соответствующих устройств кэш-памяти исполнительных блоков. Если доступ к шине C10 одновременно получают другие исполнительные блоки, возникает конфликт доступа к шине, который должен быть разрешен протоколом шины. Поскольку программное обеспечение не видит устройства кэш-памяти С240а и С240b, предпочтительно, чтобы информация, записываемая исполнительным блоком С210а, С210b в соответствующую кэш-память С250а, С250b, немедленно записывалась в память через подключение С250а и С250b на шине C10 (стратегия сквозной записи).
Далее предпочтительно, чтобы блоки С240а и С240b (соответственно через блоки С250а и С250b) на шине следили, изменяет ли в памяти исполнительный блок С210а через С250а или исполнительный блок С210b через С250b информацию, которая находится также в других устройствах кэш-памяти. Если это так, соответствующая информация в другой кэш-памяти должна быть заменена на новую или помечена как недействительная.
В режиме сравнения переключатели С232 и С233 замкнуты, а переключатели С231 и С234 разомкнуты. Оба исполнительных блока одновременно через блок С260 подключения к шине получают доступ к шине C10. Устройства кэш-памяти М240а, С240b не используются. Компаратор С160 сравнивает выходные сигналы обоих исполнительных блоков и при несоответствии генерирует сигнал ошибки. Как возможный вариант, компаратор С220 может быть соединен с блоком С260 подключения к шине (на схеме это соединение не показано) и препятствовать обращению к памяти для записи, если выходные сигналы исполнительных блоков не совпадают. В режиме повышенной производительности компаратор С160 отключен. Такое отключение может быть реализовано различными, уже рассмотренными выше, способами.
На фиг.5 показан еще один вариант исполнения многопроцессорной системы С200а, в которую в отличие от варианта исполнения, представленного на фиг.4, включена дополнительная кэш-память С270 для режима сравнения. Рассмотренные выше со ссылкой на фиг.4 компоненты работают в этом варианте аналогичным образом. В этой системе также предпочтительно применять для всех устройств кэш-памяти стратегию сквозной записи и поддерживать непротиворечивость содержимого всех устройств кэш-памяти путем слежения за шиной.
Представленные выше на фиг.4 и 5 варианты можно распространить более чем на два исполнительных блока. На каждый исполнительный блок в этом случае имеется одна кэш-память и один блок подключения к шине, используемые в режиме повышенной производительности. В режиме сравнения все исполнительные блоки через блок С260 подключения к шине (возможно с кэш-памятью С270) получают доступ к шине C10.
На фиг.6 показан следующий вариант осуществления изобретения. В данном случае многопроцессорная система С300 также состоит по меньшей мере из двух исполнительных блоков С310а и С310b, которые обращаются к основной памяти каждый через свою кэш-память С340а, С340b и свой блок С350а, С350b подключения к шине, а также шину C10. В режиме повышенной производительности переключатель С332 разомкнут, а переключатель С331 в блоке С330 переключения замкнут. Исполнительный блок С310а в этой конфигурации получает доступ к шине C10 через кэш-память С340а и блок С350а подключения к шине, а исполнительный блок С310b - через кэш-память С340b и блок С350b подключения к шине.
В режиме сравнения переключатель С332 в блоке C330 переключения замкнут, а переключатель С331 разомкнут. Теперь оба исполнительных блока получают доступ к шине C10 через кэш-память С340а и блок С350а подключения к шине. Сама кэш-память С340а состоит, в свою очередь, из двух запоминающих устройств или областей памяти С341, С342, используемых для кэширования. В режиме повышенной производительности используется только запоминающее устройство или область памяти С341, тогда как в режиме сравнения для кэширования дополнительно к запоминающему устройству или области памяти С341 используется запоминающее устройство или область памяти С342. Компаратор С320 в режиме сравнения сравнивает выходные сигналы обоих исполнительных блоков и при несоответствии генерирует сигнал ошибки. Как возможный вариант, в данном случае компаратор С320 также может быть соединен с блоком С350а подключения к шине (на схеме это соединение не показано) и препятствовать обращению к памяти для записи, если выходные сигналы исполнительных блоков не совпадают. В режиме повышенной производительности компаратор С320 отключен, как это было рассмотрено в отношении компаратора С160, показанного на фиг.1.
В другом варианте исполнения кэш-память С340а может быть организована таким образом, чтобы в режиме сравнения запоминающие устройства С341 и С342 также использовались одновременно, но чтобы при этом только содержимое запоминающего устройства С342 могло вытесняться и заменяться другим содержимым.
Все варианты исполнения, показанные на фиг.6, можно распространить более чем на два исполнительных блока. На каждый исполнительный блок в этом случае имеются кэш-память и блок подключения к шине, используемые в режиме повышенной производительности. В режиме сравнения все исполнительные блоки через кэш-память с340а и блок С350а подключения к шине получают доступ к шине C10.
Другой возможный вариант осуществления изобретения показан на фиг.7. В данном случае многопроцессорная система С400 также состоит по меньшей мере из двух исполнительных блоков С410а и С410b, которые обращаются к основной памяти каждый через свою кэш-память С440а, С440b и блок С450а, С450b подключения к шине, а также шину C10.
В режиме повышенной производительности переключатель С432 разомкнут, а переключатель С431 в блоке С430 переключения замкнут. Исполнительный блок С410а в этой конфигурации получает доступ к шине C10 через кэш-память С440а и блок С450а подключения к шине, а исполнительный блок С410b - через кэш-память С440b и блок С450b подключения к шине.
В режиме сравнения переключатель С432 в блоке С430 переключения замкнут, а переключатель С341 разомкнут. Теперь оба исполнительных блока получают доступ к шине C10 через кэш-память С440а и блок С450а подключения к шине. Сам кэш С340а, в свою очередь, состоит из двух отдельных запоминающих устройств или областей памяти С441, С442, используемых для кэширования. В режиме повышенной производительности используется только запоминающее устройство или область памяти С441, тогда как в режиме сравнения для кэширования используется запоминающее устройство или область памяти С342. Суммарная емкость обоих запоминающих устройств или областей памяти С441+С442 постоянна, но соотношение значений емкости запоминающих устройств или областей памяти С441 и С442 регулируется блоком С443. блок С443 позволяет изменять это соотношение во время работы системы.
Компаратор С420 в режиме сравнения сравнивает выходные сигналы обоих исполнительных блоков и при несоответствии генерирует сигнал ошибки. Как возможный вариант, в данном случае компаратор С420 также может быть соединен с блоком С450а подключения к шине (на схеме это соединение не показано) и препятствовать обращению к памяти для записи, если выходные сигналы исполнительных блоков не совпадают. В режиме повышенной производительности компаратор С420 отключен, как это было рассмотрено в отношении компаратора С160, показанного на фиг.1.
Кэш-память С440а при сохранении функции блока С443 может быть организована следующим образом:
1. В режиме сравнения оба запоминающих устройства С441 и С442 используются в качестве кэш-памяти.
2. В режиме сравнения оба запоминающих устройства С441 и С442 используются в качестве кэш-памяти, однако при этом содержимое запоминающего устройства С442 в режиме сравнения может быть вытеснено и заменено другим содержимым.
Все варианты схемы, показанной на фиг.7, можно распространить более чем на два исполнительных блока. На каждый исполнительный блок в этом случае имеются кэш-память и блок подключения к шине, используемые в режиме повышенной производительности. В режиме сравнения все исполнительные блоки получают доступ к шине C10 через кэш-память С440а и блок С450а подключения к шине.
На фиг.8 показан еще один возможный вариант осуществления изобретения. В микропроцессорной системе С500 имеются по меньшей мере два исполнительных блока С510а и С510b. Оба исполнительных блока связаны с блоком С530 кэш-памяти. Этот блок С530 на каждый исполнительный блок содержит один блок С550а, С550b подключения к шине, через который по шине C10 возможен доступ к основной памяти. Блок С530 кэш-память включает в себя на каждый подключенный к нему исполнительный блок по два запоминающих устройства (С531 и С533 для исполнительного блока С510а, а также С534 и С536 для исполнительного блока С510b). Суммарная емкость этих пар запоминающих устройств постоянна, но соотношение значений емкости в каждой паре можно изменять в процессе работы с помощью соответствующего блока (блока С532 для запоминающих устройств С531, С533 и блока С535 для запоминающих устройств С534, С536).
В режиме повышенной производительности обращения исполнительных блоков к памяти всегда кэшируются парой запоминающих устройств, которая назначена соответствующему исполнительному блоку. При этом используется только одно из двух запоминающих устройств кэш-памяти (в данном случае запоминающее устройство С531 для исполнительного блока С510а и запоминающее устройство С534 для исполнительного блока С510b). Если обращения к основной памяти не могут обслуживаться из кэш-памяти, то необходимые обращения к шине C10 всегда осуществляются через блок подключения к шине, сопряженный с соответствующим исполнительным блоком (в данном случае через блок С550а подключения к шине для исполнительного блока С510а и через блок С550b подключения к шине для исполнительного блока для С510b). Обращения к памяти в режиме повышенной производительности, которые происходят одновременно, могут также одновременно обслуживаться блоком С530 кэш-памяти, если только не возникает конфликт доступа к шине C10.
В режиме сравнения операции обращения исполнительных блоков к основной памяти обслуживаются устройствами кэш-памяти, не используемыми в режиме повышенной производительности (в данном случае устройствами С533 и С536 кэш-памяти). Для доступа к шине можно использовать любой блок подключения к шине. Компаратор С520 в режиме сравнения сравнивает выходные сигналы всех исполнительных блоков и при несоответствии генерирует сигнал ошибки. Как возможный вариант, в данном случае компаратор С520 также может быть соединен с блоками С550а, С550b подключения к шине (на схеме эти соединения не показаны) и препятствовать обращению к памяти для записи, если выходные сигналы исполнительных блоков не совпадают. В режиме повышенной производительности компаратор С520 отключен. Такое отключение может осуществляться, как в случае компаратора С160, показанного на фиг.1.
Еще в одном варианте исполнения блок С530 кэш-памяти может быть организован таким образом, чтобы в режиме сравнения использовались все запоминающие устройства кэш-памяти (в данном случае запоминающие устройства С531, С533, С534, С536), однако при этом содержимое только тех запоминающих устройств, которые в режиме повышенной производительности не используются, сбрасывается и заменяется новым.
Для всех вариантов осуществления изобретения, приведенных здесь в качестве примера, общим является то, что блок переключения и сравнения всегда располагается между исполнительными моделями и сопряженными с ними устройствами кэш-памяти. Если в режиме сравнения используется кэш-память, то она должна быть защищена кодом с исправлением ошибок или кодом четности, чтобы обнаруживать ошибки и этими средствами. Кроме того, для устройств кэш-памяти целесообразно использовать стратегию сквозной записи и путем отслеживания шины поддерживать непротиворечивость содержимого устройств кэш-памяти.
Claims (13)
1. Способ управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками, в которой предусмотрены буферная память, в частности кэш-память, а также средства переключения и средства сравнения, причем переключение осуществляется между режимом повышенной производительности и режимом сравнения, отличающийся тем, что в режиме сравнения доступ к буферной памяти закрывают для всех исполнительных блоков, а в режиме повышенной производительности доступ к буферной памяти открывают по меньшей мере для одного исполнительного блока.
2. Способ по п.1, отличающийся тем, что в режиме сравнения соединение исполнительного блока, связанного с буферной памятью, разрывают с помощью средств переключения.
3. Способ по п.1, отличающийся тем, что в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки запрещают доступ к памяти, не являющейся буферной.
4. Способ по п.1, отличающийся тем, что в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки данные в памяти, не являющейся буферной, делают недействительными или блокируют.
5. Способ по п.1, отличающийся тем, что в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки вычислительную систему перезапускают или повторно включают.
6. Способ по п.1, отличающийся тем, что в режиме сравнения с помощью средств сравнения проверяют данные на соответствие и при несоответствии данных устанавливают наличие ошибки, причем в случае ошибки по меньшей мере один исполнительный блок перезапускают или повторно включают.
7. Устройство для управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками, в которой предусмотрены буферная память, в частности кэш-память, а также средства переключения и средства сравнения, причем переключение осуществляется между режимом повышенной производительности и режимом сравнения, отличающееся тем, что оно содержит средства, выполненные таким образом, чтобы в режиме сравнения закрывать доступ к буферной памяти для всех исполнительных блоков, а в режиме повышенной производительности открывать доступ к буферной памяти, по меньшей мере, для одного исполнительного блока.
8. Устройство по п.7, отличающееся тем, что указанные средства выполнены как средства переключения, запрещающие или разрешающие исполнительному блоку доступ к буферной памяти.
9. Устройство по п.7, отличающееся тем, что средства сравнения выполнены таким образом, чтобы в режиме сравнения проверять данные на соответствие и при несоответствии данных устанавливать наличие ошибки, в случае которой они запрещают доступ к памяти, не являющейся буферной.
10. Устройство по п.7, отличающееся тем, что средства сравнения выполнены таким образом, чтобы в режиме сравнения проверять данные на соответствие и при несоответствии данных устанавливать наличие ошибки, в случае которой они делают недействительными или блокируют данные в памяти, не являющейся буферной.
11. Устройство по п.7, отличающееся тем, что средства сравнения расположены между по меньшей мере одним исполнительным блоком и буферной памятью.
12. Устройство по п.7, отличающееся тем, что буферная память расположена между по меньшей мере одним исполнительным блоком и средствами сравнения.
13. Устройство по п.11 или 12, отличающееся тем, что средства переключения и средства сравнения выполнены в виде одного блока переключения и сравнения.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102005037250.3 | 2005-08-08 | ||
DE102005037250A DE102005037250A1 (de) | 2005-08-08 | 2005-08-08 | Verfahren und Vorrichtung zur Steuerung eines Speicherzugriffs bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2008108471A RU2008108471A (ru) | 2009-09-20 |
RU2406114C2 true RU2406114C2 (ru) | 2010-12-10 |
Family
ID=37269323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2008108471/08A RU2406114C2 (ru) | 2005-08-08 | 2006-07-24 | Способ и устройство для управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP1915683B1 (ru) |
JP (1) | JP2009505177A (ru) |
KR (1) | KR20080031373A (ru) |
CN (1) | CN101238443B (ru) |
AT (1) | ATE415659T1 (ru) |
DE (2) | DE102005037250A1 (ru) |
RU (1) | RU2406114C2 (ru) |
WO (1) | WO2007017365A1 (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2523935C2 (ru) * | 2012-04-28 | 2014-07-27 | Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук | Способ устранения конфликта доступа к центру и реализующая способ система |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7042709B2 (ja) * | 2018-06-28 | 2022-03-28 | ルネサスエレクトロニクス株式会社 | 半導体装置、制御システムおよび半導体装置の制御方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT1215539B (it) * | 1987-06-03 | 1990-02-14 | Honeywell Inf Systems | Memoria tampone trasparente. |
US5297269A (en) * | 1990-04-26 | 1994-03-22 | Digital Equipment Company | Cache coherency protocol for multi processor computer system |
JP3317776B2 (ja) * | 1994-02-16 | 2002-08-26 | 株式会社日立製作所 | 情報処理装置 |
JPH07248919A (ja) * | 1994-03-10 | 1995-09-26 | Fujitsu Ltd | データ処理装置 |
US5530932A (en) * | 1994-12-23 | 1996-06-25 | Intel Corporation | Cache coherent multiprocessing computer system with reduced power operating features |
US5651137A (en) * | 1995-04-12 | 1997-07-22 | Intel Corporation | Scalable cache attributes for an input/output bus |
JP3247043B2 (ja) * | 1996-01-12 | 2002-01-15 | 株式会社日立製作所 | 内部信号で障害検出を行う情報処理システムおよび論理lsi |
GB9704542D0 (en) * | 1997-03-05 | 1997-04-23 | Sgs Thomson Microelectronics | A cache coherency mechanism |
US5822576A (en) * | 1997-03-26 | 1998-10-13 | International Business Machines Corporation | Branch history table with branch pattern field |
US6640313B1 (en) * | 1999-12-21 | 2003-10-28 | Intel Corporation | Microprocessor with high-reliability operating mode |
US6751749B2 (en) * | 2001-02-22 | 2004-06-15 | International Business Machines Corporation | Method and apparatus for computer system reliability |
US7076609B2 (en) * | 2002-09-20 | 2006-07-11 | Intel Corporation | Cache sharing for a chip multiprocessor or multiprocessing system |
JP2005165807A (ja) * | 2003-12-04 | 2005-06-23 | Hitachi Ltd | プロセッサ多重化システムにおける動作比較方式 |
-
2005
- 2005-08-08 DE DE102005037250A patent/DE102005037250A1/de not_active Withdrawn
-
2006
- 2006-07-24 AT AT06777920T patent/ATE415659T1/de not_active IP Right Cessation
- 2006-07-24 CN CN2006800291424A patent/CN101238443B/zh not_active Expired - Fee Related
- 2006-07-24 WO PCT/EP2006/064560 patent/WO2007017365A1/de active Application Filing
- 2006-07-24 RU RU2008108471/08A patent/RU2406114C2/ru not_active IP Right Cessation
- 2006-07-24 DE DE502006002217T patent/DE502006002217D1/de active Active
- 2006-07-24 JP JP2008525515A patent/JP2009505177A/ja active Pending
- 2006-07-24 KR KR1020087002897A patent/KR20080031373A/ko not_active Application Discontinuation
- 2006-07-24 EP EP06777920A patent/EP1915683B1/de not_active Not-in-force
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2523935C2 (ru) * | 2012-04-28 | 2014-07-27 | Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук | Способ устранения конфликта доступа к центру и реализующая способ система |
Also Published As
Publication number | Publication date |
---|---|
KR20080031373A (ko) | 2008-04-08 |
JP2009505177A (ja) | 2009-02-05 |
DE102005037250A1 (de) | 2007-02-15 |
ATE415659T1 (de) | 2008-12-15 |
DE502006002217D1 (de) | 2009-01-08 |
CN101238443A (zh) | 2008-08-06 |
EP1915683B1 (de) | 2008-11-26 |
WO2007017365A1 (de) | 2007-02-15 |
CN101238443B (zh) | 2010-06-16 |
RU2008108471A (ru) | 2009-09-20 |
EP1915683A1 (de) | 2008-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8990506B2 (en) | Replacing cache lines in a cache memory based at least in part on cache coherency state information | |
RU2443011C2 (ru) | Фильтрация отслеживания с использованием кэша запросов отслеживания | |
US8291168B2 (en) | Disabling cache portions during low voltage operations | |
EP3830699B1 (en) | Hybrid precise and imprecise cache snoop filtering | |
JP2016224531A (ja) | 半導体装置及び診断テスト方法 | |
US5958068A (en) | Cache array defect functional bypassing using repair mask | |
KR100406575B1 (ko) | 멀티프로세서 데이터 처리 시스템에서 복구 불가능한에러를 허용하는 방법 및 장치 | |
US10528473B2 (en) | Disabling cache portions during low voltage operations | |
US20110125968A1 (en) | Architecture and method for cache-based checkpointing and rollback | |
US11269799B2 (en) | Cluster of processing elements having split mode and lock mode | |
US5943686A (en) | Multiple cache directories for non-arbitration concurrent accessing of a cache memory | |
US10324858B2 (en) | Access control | |
EP3588313B1 (en) | Non-volatile memory aware caching policies | |
RU2406114C2 (ru) | Способ и устройство для управления доступом к памяти в вычислительной системе по меньшей мере с двумя исполнительными блоками | |
KR20080033348A (ko) | 멀티프로세서 시스템 내의 메모리 유닛을 모니터링하기위한 방법 및 장치 | |
EP0567355B1 (en) | A method and apparatus for operating a multiprocessor computer system having cache memories | |
US20100131718A1 (en) | Multiprocessor system | |
Kempf et al. | Runtime adaptive cache checkpointing for risc multi-core processors | |
US20100211819A1 (en) | Method and a device for controlling a memory access in a computer system having at least two execution units | |
US6584580B1 (en) | Processor and multiprocessor system | |
JPH03163640A (ja) | マルチプロセッサシステムおよびそれに用いるキャッシュメモリ | |
KR102376396B1 (ko) | 멀티 코어 프로세서 및 그것의 캐시 관리 방법 | |
US11934257B2 (en) | Processing tasks in a processing system | |
JPH03230238A (ja) | キャッシュメモリ制御方式 | |
CN101238444A (zh) | 用于在具有至少两个执行单元的计算机***中控制存储器访问的方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20150725 |