Abstract:
A coherence management circuit includes: an arbitration unit which receives request signals from a plurality of cores and provides one among the request signal; a coherence management unit which provides the arbitration unit with requested data corresponding to the provided request signal among cache lines of cache memories, and which maintains the coherence of the data stored in the cache memories; and a directory memory which includes a plurality of directory lines each of which at least comprises a pivot field, where an identifier of a reference cache memory accessing at least one memory entry among the cache memories is written, and a pattern field, where present bits indicating whether to share the at least one memory entry of the cache memories within a predetermined range (pattern window) from the reference cache memory, based on the reference cache memory are written. The coherence management unit controls the directory memory, and maintains the coherence of the data with reference to the directory memory.
Abstract:
A method for managing coherence of a plurality of cache memories, which are respectively connected to a plurality of cores provided in a multi-core semiconductor device and respectively include a plurality of cache lines in which data are stored, comprises the steps of: receiving a request signal from one among the cores; extracting a partial tag from an address of the request signal; comparing the extracted partial tag with partial tag sets which are a part of the tag information of a plurality of tag memories which store a copy of tag information and line status information stored in each of the cache memories; and, based on the comparison result, selectively accessing the tag memories and, based on whether a first cache line in which requested data corresponding to the request signal are stored exists, providing the requested data to a second cache line within a cache memory connected to a core which provides the request signal.
Abstract:
태그 매칭 장치는 데이터 비교부 및 패리티 비교부를 포함한다. 데이터 비교부는 태그 데이터 및 수신 코드 워드에 포함되는 수신 데이터에 기초하여 태그 데이터와 수신 데이터의 일치 여부를 결정하는 비교 데이터 결과를 출력한다. 패리티 비교부는 태그 데이터를 인코딩하여 태그 패리티 데이터를 생성하고, 태그 패리티 데이터 및 수신 코드 워드에 포함되는 수신 패리티 데이터에 기초하여 태그 패리티 데이터와 수신 패리티 데이터의 일치 여부를 결정하는 비교 패리티 결과를 출력한다. 본 발명의 실시예들에 따른 태그 매칭 장치를 사용하는 경우, 태그 패리티 데이터를 생성하는 동작과 태그 데이터와 수신 데이터를 비교하는 동작을 동시에 병렬적으로 수행하기 때문에 태그 매칭 연산을 수행하는 시간이 감소할 수 있다.
Abstract:
일관성 관리 회로는 상기 복수의 코어들로부터 요청 신호들을 수신하고, 상기 요청 신호들 중 하나를 제공하는 중재부; 상기 복수의 캐시 메모리의 상기 캐시 라인들 중 상기 제공된 요청 신호에 대응하는 요청된 데이터를 상기 중재부에 제공하고, 상기 캐시 메모리들에 저장된 상기 데이터의 일관성을 유지하는 일관성 관리부; 및 각각이 상기 복수의 캐시 메모리들 중 적어도 하나의 메모리 엔트리를 액세스하는 기준 캐시 메모리의 식별자가 기입되는 피벗 필드와 상기 기준 캐시 메모리를 기준으로 하여 상기 기준 캐시 메모리와 일정한 범위(패턴 윈도우) 내의 복수의 캐시 메모리들의 상기 적어도 하나의 메모리 엔트리를 공유하는지 여부를 나타내는 프레즌트 비트들이 기입되는 패턴 필드를 적어도 구비하는 복수의 디렉토리 라인을 포함하는 디렉토리 메모리를 포함하고, 상기 일관성 관리부는 상기 디렉토리 메모리를 제어하고, 상기 디렉토리 메모리를 참조하여 상기 데이터의 일관성을 유지한다.
Abstract:
멀티 코어 반도체 장치에 구비되는 복수의 코어들과 각각 연결되고 데이터가 저장된 복수의 캐시 라인들을 각각 포함하는 복수의 캐시 메모리의 일관성 관리 방법은 상기 복수의 코어들 중 하나로부터 요청 신호를 수신하는 단계; 상기 요청 신호의 어드레스로부터 부분 태그를 추출하는 단계; 상기 추출된 부분 태그를 상기 캐시 메모리들 각각의 태그 정보 및 라인 상태 정보의 복사본을 저장하는 복수의 태그 메모리들의 상기 태그 정보의 일부인 부분 태그 세트들과 비교하는 단계; 및 상기 비교 결과에 기초하여 상기 복수의 태그 메모리들을 선택적으로 액세스하고 상기 요청 신호에 대응하는 요청된 데이터가 저장되어 있는 제1 캐시 라인이 존재하는지 여부에 기초하여, 상기 요청 신호를 제공한 코어와 연결된 캐시 메모리 내의 제2 캐시 라인에 상기 요청된 데이터를 제공하는 단계를 포함한다.