1 |
1
호스트의 중앙 프로세싱 유닛(central processing unit, CPU)의 기능을 보조하거나 상기 CPU와 별도로 데이터 프로세싱을 수행하는 코프로세서로서,상기 코프로세서의 코어에 해당하며, 상기 호스트에서 전달되는 커널을 실행하는 프로세싱 엘리먼트,상기 프로세싱 엘리먼트에서 상기 커널의 실행에 따라 생성된 메모리 요청을 관리하는 서버,저항 변화 메모리(resistance switching memory) 모듈,상기 저항 변화 메모리 모듈에 연결되어 있으며, 상기 프로세싱 엘리먼트가 상기 저항 변화 메모리 모듈에 액세스하도록 하여서, 컴퓨팅 디바이스의 운영 체제(operation system, OS)의 도움 없이 상기 서버로부터 전달되는 상기 메모리 요청에 따라 상기 저항 변화 메모리 모듈과 상기 프로세싱 엘리먼트 사이에서 상기 메모리 요청에 따른 데이터를 이동시키는 메모리 컨트롤러, 그리고상기 프로세싱 엘리먼트, 상기 서버 및 상기 메모리 컨트롤러를 통합하는 네트워크를 포함하는 코프로세서
|
2 |
2
제1항에서,상기 데이터의 이동 시에 상기 호스트로는 상기 데이터가 저장되지 않는 코프로세서
|
3 |
3
제1항에서,상기 서버는, 상기 커널의 실행을 위해 상기 저항 변화 메모리 모듈에 저장된 상기 커널의 메모리 어드레스를 상기 프로세싱 엘리먼트에 저장하는 코프로세서
|
4 |
4
제3항에서,상기 서버는 상기 커널의 메모리 어드레스를 상기 프로세싱 엘리먼트의 캐시에 부트 어드레스로 저장하는 코프로세서
|
5 |
5
제4항에서,상기 서버의 제어에 따라 상기 프로세싱 엘리먼트의 슬립 모드를 제어하는 파워 슬립 컨트롤러를 더 포함하며,상기 서버는 상기 커널의 메모리 어드레스를 상기 프로세싱 엘리먼트에 저장하기 전에 상기 파워 슬립 컨트롤러를 통해 상기 프로세싱 엘리먼트를 슬립 모드로 전환하고, 상기 커널의 메모리 어드레스를 상기 프로세싱 엘리먼트에 저장한 후에 상기 파워 슬립 컨트롤러를 통해 상기 프로세싱 엘리먼트를 깨우는코프로세서
|
6 |
6
제3항에서,상기 호스트와 통신하기 위한 인터페이스 모듈을 더 포함하며,상기 서버가 상기 인터페이스 모듈을 통해 상기 호스트로부터의 인터럽트를 수신한 후에, 상기 메모리 컨트롤러가 상기 커널을 상기 호스트에서 상기 저항 변화 메모리 모듈로 저장하는코프로세서
|
7 |
7
제1항에서,상기 프로세싱 엘리먼트는 캐시를 포함하며,상기 프로세싱 엘리먼트의 상기 캐시에서 미스가 발생한 경우, 상기 프로세싱 엘리먼트가 상기 메모리 요청을 상기 서버로 전달하며,상기 메모리 컨트롤러는, 상기 컴퓨팅 디바이스의 다른 메모리의 도움 없이, 상기 저항 변화 메모리 모듈에서 상기 메모리 요청에 해당하는 데이터를 읽고, 읽은 데이터를 상기 프로세싱 엘리먼트의 캐시로 저장하는 코프로세서
|
8 |
8
제1항에서,상기 프로세싱 엘리먼트는 캐시를 포함하며,상기 메모리 요청은 데이터 쓰기를 요청하는 메모리 요청이고,상기 메모리 컨트롤러는, 상기 컴퓨팅 디바이스의 다른 메모리의 도움 없이, 상기 프로세싱 엘리먼트의 캐시로부터 상기 메모리 요청에 해당하는 데이터를 로드하고, 로드한 데이터를 상기 저항 변화 메모리 모듈로 쓰는코프로세서
|
9 |
9
제1항에서,상기 저항 변화 메모리 모듈은 DDR(double data rate) 인터페이스를 채용하는 코프로세서
|
10 |
10
제9항에서,상기 DDR 인터페이스는 비휘발성 메모리 인터페이스인 코프로세서
|
11 |
11
제1항에서,상기 저항 변화 메모리 모듈은, 복수의 저항 변화 메모리 셀을 포함하는 메모리 셀 어레이,복수의 행 어드레스 버퍼, 그리고상기 메모리 셀 어레이에서 행을 선택하기 위한 행 디코더를 포함하며,상기 메모리 컨트롤러는, 상기 메모리 요청에 따라 상기 저항 변화 메모리 모듈에 액세스하기 위한 행 어드레스를 상위 어드레스와 하위 어드레스로 나누고, 상기 상위 어드레스를 상기 복수의 행 어드레스 버퍼 중 타깃 행 어드레스 버퍼로 전달하고, 상기 하위 어드레스를 상기 행 디코더로 전달하며,상기 행 디코더는 상기 타깃 행 어드레스 버퍼에 저장된 상기 상위 어드레스와 상기 메모리 컨트롤러로부터 수신한 상기 하위 어드레스를 결합한 어드레스에 기초해서 상기 행을 선택하는코프로세서
|
12 |
12
제11항에서,상기 메모리 컨트롤러는 상기 복수의 행 어드레스 버퍼 중 타깃 행 어드레스 버퍼를 선택하기 위한 어드레스를 상기 복수의 행 어드레스 버퍼로 전달하는 코프로세서
|
13 |
13
제11항에서,상기 저항 변화 메모리 모듈은, 복수의 행 데이터 버퍼를 더 포함하며, 상기 메모리 셀 어레이에서 선택된 행에서 읽은 데이터는 상기 복수의 행 데이터 버퍼 중 타깃 행 데이터 버퍼에 저장되는 코프로세서
|
14 |
14
제11항에서,상기 저항 변화 메모리 모듈은,상기 복수의 메모리 셀 어레이에 매핑된 레지스터, 그리고상기 레지스터의 값에 기초해서 상기 메모리 셀 어레이에 기입될 데이터를 저장하는 프로그램 버퍼를 더 포함하며,상기 프로그램 버퍼에 저장된 데이터가 상기 메모리 셀 어레이에 기입되는 코프로세서
|
15 |
15
제1항에서,상기 저항 변화 메모리 모듈은 상변화 메모리(phase-change memory) 모듈, 저항성 메모리(resistive memory) 모듈 또는 자기저항 메모리(magnetoresistive memory) 모듈을 포함하는 코프로세서
|
16 |
16
호스트의 중앙 프로세싱 유닛(central processing unit, CPU)의 기능을 보조하거나 상기 CPU와 별도로 데이터 프로세싱을 수행하는 코프로세서로서,상기 호스트와 통신하기 위한 인터페이스 모듈,상기 호스트로부터 전달된 커널을 저장하는 저항 변화 메모리(resistance switching memory) 모듈,상기 코프로세서의 코어에 해당하며, 상기 저항 변화 메모리 모듈로부터 상기 커널을 로드하여서 실행하는 프로세싱 엘리먼트,상기 인터페이스 모듈을 통해 상기 호스트와 통신하며, 상기 프로세싱 엘리먼트로부터 상기 커널의 실행에 따라 생성된 메모리 요청을 수신하는 서버,상기 저항 변화 메모리 모듈에 연결되어 있으며, 상기 서버로부터 상기 메모리 요청을 수신하여 상기 프로세싱 엘리먼트가 저항 변화 메모리 모듈에 액세스하도록 하는 메모리 컨트롤러, 그리고상기 인터페이스 모듈, 상기 프로세싱 엘리먼트, 상기 서버 및 상기 메모리 컨트롤러를 통합하는 네트워크를 포함하는 코프로세서
|
17 |
17
제16항에서,상기 메모리 컨트롤러는, 컴퓨팅 디바이스의 운영 체제 및 다른 메모리의 도움 없이, 상기 메모리 요청에 따라 상기 저항 변화 메모리 모듈에 액세스하여 상기 저항 변화 메모리 모듈와 상기 프로세싱 엘리먼트 사이에서 데이터를 이동시키는 코프로세서
|
18 |
18
제17항에서,상기 데이터의 이동 시에 상기 호스트로는 상기 데이터가 저장되지 않는 코프로세서
|
19 |
19
제16항에서,상기 서버는 상기 저항 변화 메모리 모듈에 저장된 상기 커널의 메모리 어드레스를 상기 프로세싱 엘리먼트에 저장하며,상기 프로세싱 엘리먼트는 상기 메모리 어드레스에 기초해서 상기 커널을 로드하는코프로세서
|
20 |
20
제19항에서,상기 서버의 제어에 따라 상기 프로세싱 엘리먼트의 슬립 모드를 제어하는 파워 슬립 컨트롤러를 더 포함하며,상기 서버는 상기 커널의 메모리 어드레스를 상기 프로세싱 엘리먼트에 저장하기 전에 상기 파워 슬립 컨트롤러를 통해 상기 프로세싱 엘리먼트를 상기 슬립 모드로 전환하고, 상기 커널의 메모리 어드레스를 상기 프로세싱 엘리먼트에 저장한 후에 상기 파워 슬립 컨트롤러를 통해 상기 프로세싱 엘리먼트를 깨우는코프로세서
|
21 |
21
제1항 내지 제20항 중 어느 한 항에 기재된 코프로세서,CPU,시스템 메모리, 그리고상기 코프로세서, 상기 CPU 및 상기 시스템 메모리를 연결하는 메모리 브릿지를 포함하는 컴퓨팅 디바이스
|