본 발명에 따른 반도체 칩은 내부회로; 상기 내부회로에 구동전압 공급을 스위칭하는 파워 게이팅 트랜지스터; 상기 내부회로의 활성상태에 따라 제어 신호를 생성하는 시스템 메니저; 및 상기 제어 신호에 응답하여 상기 파워 게이팅 트랜지스터에 흐르는 전류량을 제어하는 전류량 제어기를 포함한다.
이 실시예에 있어서, 상기 전류량 제어기는 상기 파워 게이팅 트랜지스터와 전류 미러 방식으로 구성된다.
이 실시예에 있어서, 상기 전류량 제어기는 상기 파워 게이팅 트랜지스터와 복수의 전류 미러들을 구성된다.
이 실시예에 있어서, 상기 전류량 제어기는 복수의 상기 파워 게이팅 트랜지스터들로부터 공유된다.
이 실시예에 있어서, 상기 전류량 제어기는 상기 복수의 전류 미러들의 동작을 각각 온/오프하는 스위치들을 포함하되, 상기 스위치들은 상기 제어 신호에 응답하여 동작한다.
이 실시예에 있어서, 상기 제어 신호는 상기 반도체 칩이 정상 모드 진입시 생성된다.
이 실시예에 있어서, 상기 파워 게이팅 트랜지스터는 전원전압을 공급할 때는 피모스 트랜지스터를 이용하며, 접지전압을 공급할 때는 엔모스 트랜지스터이다.
이 실시예에 있어서, 상기 내부회로의 활성 상태에 정보는 상기 반도체 칩이 슬립 모드로 진입시 상기 시스템 메니저에 저장된다.
이 실시예에 있어서, 상기 전류량 제어기는 소스가 동작전압(VDD)에 연결되고, 게이트가 상기 파워 게이팅 트랜지스터의 게이트에 연결된 상기 복수의 피모스 트랜지스터들; 상기 복수의 피모스 트랜지스터들의 각각의 드레인들과 접지(VSS) 사이에 연결된 상기 복수의 서로 다른 전류 소스들; 및 상기 복수의 피모스 트랜지스터들의 각각의 드레인과 게이트 사이에 연결되며, 상기 제어 신호에 의해 온/오프되는 상기 복수의 스위치들을 포함한다.
이 실시예에 있어서, 상기 전류량 제어기는 복수의 상기 파워 게이팅 트랜지스터들 각각이 상기 복수의 전류 미러들을 구성한다.
이 실시예에 있어서, 상기 복수의 전류 미러들의 동작을 각각 온/오프하는 스위치들을 포함하되, 상기 스위치들은 상기 제어 신호에 따라 동작한다.
이 실시예에 있어서, 상기 제어 신호는 상기 반도체 칩이 정상 모드 진입시 생성된다.
이 실시예에 있어서, 상기 파워 게이팅 트랜지스터는 전원전압을 공급할 때는 피모스 트랜지스터를 이용하며, 접지전압을 공급할 때는 엔모스 트랜지스터이다.
이 실시예에 있어서, 상기 내부회로의 활성 상태에 대한 정보는 상기 반도체 칩이 슬립 모드 진입시 상기 시스템 메니저에 저장된다.
이 실시예에 있어서, 전류 제어기는 소스가 동작전압(VDD)에 연결되고, 게이트가 상기 복수의 파워 게이팅 트랜지스터들의 각각의 게이트에 연결된 상기 복수의 피모스 트랜지스터들; 상기 복수의 피모스 트랜지스터들의 각각의 드레인들과 접지(VSS)사이에 연결된 상기 복수의 서로 다른 전류 소스들; 및 상기 복수의 피모스 트랜지스터들의 각각의 드레인과 게이트 사이에 연결되며, 상기 제어 신호에 의해 온/오프되는 상기 복수의 스위치들을 포함한다.
이 실시예에 있어서, 상기 반도체 칩은 SOC(system on a chip)이다.
본 발명에 따른 반도체 칩에 구동전압을 공급하는 파워 게이팅 방법은: 상기 반도체 칩 내부의 활성화된 블럭들에 대한 정보를 저장하는 단계: 정상 동작 모드 진입을 명령하는 단계; 및 상기 저장된 활성화 블럭들에 대한 정보에 따라, 파워 게이팅 트랜지스터를 통하여 흐르는 전류를 제어하면서 구동전압을 공급하는 단계를 포함한다.
이 실시예에 있어서, 상기 반도체 칩의 슬립 모드 진입시 상기 내부의 활성화된 블럭들에 대한 정보를 저장한다.
이 실시예에 있어서, 상기 파워 게이팅 트랜지스터와 전류 미러 방식으로 구성되어, 상기 파워 게이팅 트랜지스터에 흐르는 전류를 제어하는 전류량 제어기를 포함한다.
이 실시예에 있어서, 상기 전류량 제어기는 상기 파워 게이팅 트랜지스터와 복수의 서로 다른 전류 미러들을 구성한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 본 발명의 실시예를 첨부된 도면을 참조하여 설명한다.
도 2는 본 발명에 따라 구동전압을 공급하는 반도체 칩(100)을 보여주고 있다. 도 2을 참조하면, 반도체 칩(100)은 파워 게이팅 트랜지스터들(101~104), 전류량 제어기들(110~140), 내부회로(150) 및 시스템 메니저(151)를 포함하고 있다.
본 발명의 반도체 칩(100)은 SOC(system on a chip)이다. SOC은 한개의 칩 상에 독립적으로 구동 가능한 제품, 즉 시스템이 들어있는 칩을 말한다. 컴퓨터가 명령어를 처리하기 위해 필요한 모든 하드웨어 컴포넌트를 하나의 칩 상에 포함하고 있는 데 비해, SOC은 그 컴퓨터와 필요한 모든 부수적인 전자 부품들을 포함한 다. 예를 들면, 통신에 사용되는 SOC에는 마이크로프로세서(microprocessor), DSP(Digital Signal Processor), RAM(Random Access Memory)과 ROM(read only memory) 등이 함께 포함될 수 있다. SOC을 이용하면 일반적으로 시스템의 크기가 작아지며, 조립 과정도 단순해진다.
파워 게이팅 트랜지스터들(101~104)은 스위칭 동작을 통하여 각각의 구동전압들(VDDA1~VDDA3)이 내부회로(150)에 공급되도록 하는데 이용된다. 일반적으로 내부회로(150)에 공급되는 구동전압들은 매우 많지만, 도 2에서는 설명의 편의를 위하여 공급되는 구동전압들(VDDA1~VDDA4)을 4개로 한정하고 있다. 구동전압들(VDDA1~VDDA4)은 외부로부터 반도체 칩(100)의 패드들을 이용하여 공급되어 진다.
구동전압들(VDDA1~VDDA4)은 내부회로(150)의 블럭 단위로 각각 공급될 수도 있다. 곧 기능 블럭들이 각각의 구동전압들(VDDA1~VDDA4) 중 어느 하나로 공급되어지는 파워 도메인들을 형성할 수 있다. 그러나 여기서는 구동전압들(VDDA1~VDDA4)이 내부회로(150) 전체에 전원을 공급하고 있다고 가정한다. 도시되어 있지는 않지만, 본 발명에 따른 내부회로(150)는 메쉬(mesh) 구조 이루어진 파워 라인들을 포함하고 있으며, 구동전압들(VDDA1~VDDA4)은 파워 라인들에 연결되어 공급되어 진다.
전류량 제어기들(110~140)은 각각의 파워 게이팅 트랜지스터들(101~104)의 게이트에 연결되어 있다. 전류량 제어기들(110~140)은 시스템 메니저(151)에서 생성되는 제어 신호에 응답하여 파워 게이팅 트랜지스터들(101~104)에 흐르는 전류량 을 제어한다. 파워-업시 내부회로(150)의 블럭들의 필요에 따라 다양한 전류량을 흐르게 할 수 있게 한다.
시스템 메니저(151)는 내부회로(150)의 블럭들의 활성 상태에 대한 정보를 저장해 두고 있다. 블럭 활성 정보는 반도체 칩이 슬립 모드 진입시 자동으로 저장된다. 파업-업시에 시스템 메니저(151)는 저장된 블럭 활성 정보에 따라 제어 신호를 생성하고, 생성된 제어 신호를 전류량 제어기들(110~140)에 전달한다.
도 3은 파워 라인(156)을 이용하여 내부회로(150)의 블럭들(152~155)에 구동전압(VDDA1~VDDA4)들을 공급하는 모습을 도시하고 있다. 도 3을 참조하면, 파워 라인(156)은 원래 메쉬 구조로 이루어져 있지만, 설명의 편의를 위하여 선형적으로 도시하고 있다.
도 3을 참조하면, 반도체 칩(100)은 복수의 블럭들(152~155)을 포함하고 있다. 각각의 블럭들(152~155) 가까이에는 구동전압들(VDDA1~VDDA4) 공급을 스위칭하는 파워 게이팅 트랜지스터들(101~104)이 존재한다. 설명의 편의를 위해서 도 3에서는, 각각의 블럭들(152~155)을 연산장치(ALU:152), 캐쉬(CASHE:153), 롬(ROM:154) 및 부동소수점처리장치(FPU:155)로 한정하고 있다.
종래의 반도체 칩은 파업-업시 각각의 블럭들이 안정전압까지 도달하는 시간이 달랐다. 예를들어, 회로가 복잡한 연산장치(152)는 상대적으로 회로가 간단한 캐쉬(153)보다 늦게 안정전압에 도달한다. 연산장치(152)는 안정전압까지 도달하는데 캐쉬(152)보다 상대적으로 많은 양의 전류량을 필요로 하기 때문이다. 따라서, 종래의 반도체 칩은 연산장치(152)가 안정전압에 도달하기까지 동작하지 않는다.
반면에 본 발명에 따른 반도체 칩(100)의 파워 게이팅은 전류량 제어기들(110~140)을 구비하고 있어, 웨이크 업이 늦어질 수 있는 블럭들에 대하여는 전류량을 더많이 늘려 공급함으로 보다 빠르게 안정전압에 도달하게 한다. 따라서 전체적으로 반도체 칩(100)의 웨이크-업 레이턴시는 줄어들게 된다. 본 발명에 따른 반도체 칩(100)은 전류량 제어기들(110~140)을 적절하게 조절하면 블럭들 중에 가장 빠르게 안정 전압에 도달하는 시간에 전체적인 안정 전압이 도달하게 할 수 있다.
시스템 메니저(151)는 내부회로(150)의 블럭 활성화 정보를 이용하지 않고, 반도체 칩(100)의 동작 모드에 따라 고정된 제어 신호들(S1,S2,...,Sn)을 생성할 수도 있다. 이는 반도체 칩(100)을 구현하는데 편리하다. 예를들어, 슬립 모드일 때, 정지 모드일 때, 정상 동작 모드일 때, 정지모드에서 정상 동작 모드로 변환될 때, 정상 동작 모드에서 슬립 모드로 변환될 때, 슬립 모드에서 정상 동작 모드로 변환될 때 등 다양한 반도체 칩(100)의 동작 모드에 따라 시스템 메니저(151)는 각각 다른 제어 신호들(S1,S2,...,Sn)을 생성하여 전류량 제어기(110)에 전달한다.
그러나 웨이크 업시 복구해야할 상태가 현저하게 다르면 문제가 된다. 예를 들어 반도체 칩(100)이 슬립 모드 진입시 로드 데이터 중이든지, 덧셈 연산을 하고 있던 상태였다면, 다른 슬립 모드의 상태와 비교하여 웨이크 업하는데 상당한 많은 시간이 걸리게 될 것이다. 따라서 내부회로(150)의 블럭 활성 정보를 기억해 두었다가 웨이크 업 과정에서 적절하게 전류량을 제어하는 것이 유리하다.
파워 게이팅 트랜지스터들(101~104)은 전류량을 제어 가능하게 하기 위해서 종래 파워 게이팅 트랜지스터들과는 차이가 난다. 본 발명에 따른 파워 게이팅 트랜지스터들(101~104)은 다양한 전류량을 제어하기 위해서 그만큼 더 큰 구동능력을 소유하고 있어야 한다.
한편, 파워 게이팅 트랜지스터들(101~104)은 전원전압을 공급할 때는 피모스 트랜지스터를 이용하고, 접지전압을 공급할 때는 엔모스 트랜지스터를 이용한다.
도 4는 본 발명에 따른 전류량 제어기(110)의 제 1 실시예이다. 도 4를 참조하면, 전류량 제어기(110)는 파워 게이팅 트랜지스터(101)와 복수의 전류 미러 구조로 구성되어 있다.
전류량 제어기(110)는 피모스 트랜지스터들(111,112,113), 스위치들(114,115,116) 및 전류 소스들(117,118,119)을 포함하고 있다.
제 1 피모스 트랜지스터(111)는 전원전압(VDD)에 연결되어 있는 소스, 제 1 전류 소스(117)에 연결되는 드레인 및 파워 게이팅 트랜지스터(101)의 게이트에 연결된 게이트를 포함하고 있다. 제 1 스위치(114)는 제 1 피모스 트랜지스터(111)의 게이트와 드레인 사이에 연결되어 있다. 제 1 전류 소스(117)는 제 1 피모스 트랜지스터(111)의 드레인과 접지(VSS) 사이에 연결되어 있다.
제 1 피모스 트랜지스터(111), 제 1 스위치(114), 제 1 전류 소스(117), 및 파워 게이팅 트랜지스터(101)는 제 1 전류 미러를 구성하고 있다. 만약 제 1 스위치(114)가 온상태가 되었다면, 제 1 전류 미러에 따른 전류(Iout)는 다음 수식을 만족한다.
여기서 (W/L)out은 피모스 트랜지스터(101)의 구동능력이며, (W/L)in1은 피모스 트랜지스터(111)의 구동능력이다.
본 발명에 따른 전류량 제어기(110)는 파워 게이팅 트랜지스터(101)에 흐르는 전류(Iout)를 제어하기 위해서, 전류 소스(117)의 전류(Iin1)를 제어하거나, 피모스 트랜지스터(111)의 구동능력 즉 (W/L)in1을 가변할 수 있다.
제 2 피모스 트랜지스터(112)는 전원전압(VDD)에 연결되어 있는 소스, 제 2 전류 소스(118)에 연결되는 드레인 및 파워 게이팅 트랜지스터(101)의 게이트에 연결된 게이트를 포함하고 있다. 제 2 스위치(115)는 제 2 피모스 트랜지스터(112)의 게이트와 드레인 사이에 연결되어 있다. 제 2 전류 소스(118)는 제 2 피모스 트랜지스터(112)의 드레인과 접지(VSS) 사이에 연결되어 있다.
제 2 피모스 트랜지스터(112), 제 2 스위치(115), 제 2 전류 소스(118), 및 파워 게이팅 트랜지스터(101)는 제 2 전류 미러를 구성하고 있다. 만약 제 2 스위치(115)가 온상태가 되었다면, 제 2 전류 미러에 따른 전류(Iout)는 다음 수식을 만족한다.
본 발명에 따른 전류량 제어기(110)는 파워 게이팅 트랜지스터(101)에 흐르는 전류(Iout)를 제어하기 위해서, 전류 소스(118)의 전류(Iin2)를 제어하거나, 피모스 트랜지스터(112)의 구동능력 즉 (W/L)in2을 가변할 수 있다.
제 3 피모스 트랜지스터(113)는 전원전압(VDD)에 연결되어 있는 소스, 제 3 전류 소스(119)에 연결되는 드레인 및 파워 게이팅 트랜지스터(101)의 게이트에 연결된 게이트를 포함하고 있다. 제 3 스위치(116)는 제 3 피모스 트랜지스터(113)의 게이트와 드레인 사이에 연결되어 있다. 제 3 전류 소스(119)는 제 3 피모스 트랜지스터(113)의 드레인과 접지(VSS) 사이에 연결되어 있다.
제 3 피모스 트랜지스터(113), 제 3 스위치(116), 제 3 전류 소스(119) 및 파워 게이팅 트랜지스터(101)는 제 3 전류 미러를 구성하고 있다. 만약 제 3 스위치(116)가 온상태가 되었다면, 제 3 전류 미러에 따른 전류(Iout)는 다음 수식을 만족한다.
본 발명에 따른 전류량 제어기(110)는 파워 게이팅 트랜지스터(101)에 흐르 는 전류(Iout)를 제어하기 위해서, 전류 소스(119)의 전류(Iinn)를 제어하거나, 피모스 트랜지스터(113)의 구동능력 즉 (W/L)inn을 가변할 수 있다.
본 발명에 따른 전류량 제어기(110)는 서로 다른 n개의 전류 소스들을 포함할 수도 있고, n개의 동일한 전류 소스들을 포함할 수 있다. 만약 도 5에 도시된 전류량 제어기(110)이 n개의 동일한 전류 소스들을 포함하고, 각각의 피모스 트랜지스터들(111,112,113)의 구동능력도 동일하다면, 파워 게이팅 트랜지스터의 구동능력은 최소한 피모스 트랜지스터들(111,112,113)의 구동능력의 n배 이상이어야 한다.
웨이크 업 과정에서 전류량 제어기(110)의 동작 설명은 다음과 같다. 구동전압(VDDA1)은 파워 게이팅 트랜지스터(101)을 통하여 연산장치(152) 근처에 공급되고 있다고 가정한다. 설명을 위해서, 연산장치(152)의 두 가지 경우를 생각해 보겠다. 두 가지 경우는 연산장치(152)가 아무런 동작을 하지 않은 상태로 슬립 모드로 진입한 경우와 연산장치(152)가 덧셈 동작을 하는 중에 슬립 모드로 진입한 경우이다. 시스템 메니저(151)는 반도체 칩(100)이 슬립모드 진입시 연산장치(152)의 활성 상태에 대한 정보를 기억해 둔다. 반도체 칩(100)이 슬립모드에서 정상 동작 모드로 진입하려고 할 때, 시스템 메니저(151)는 연산장치(152)의 활성 상태에 대한 정보를 바탕으로 제어 신호들(S1,S2,...,Sn)을 생성하여 전류량 제어기(110)에 전달한다. 연산장치(152)가 덧셈 연산을 하던 중에 슬립모드 진입했을 경우가 아무런 동작없이 슬립 모드로 진입했을 경우보다 웨이크 업 과정에서 더 많은 전류량을 필요로 할 것이다. 따라서 시스템 메니저(151)는 필요한 전류량을 공급하기 위해서 적절한 제어 신호들(S1,S2,...,Sn)를 생성하게 될 것이다.
웨이크 업 과정을 마친 후 반도체 칩(100)은 안정전압에 도달하게 되어 정상 동작을 시작하게 된다. 이때, 시스템 메니저(151)는 전류 안정기(110)에 전달하였던 제어신호들(S1,S2,...Sn)을 계속해서 유지하거나 혹은 정상 동작으로 인하여 바뀐 내부회로(150)의 블럭 활성에 따른 전류량을 공급하기 위해 새로운 제어신호들(S1,S2,...,Sn)을 생성하여 전류량 제어기(110)에 전달할 수 있다.
본 발명에 따른 전류량 제어기(110)는 n개의 전류 미러들을 포함하고 있다. 본 발명에 따른 전류량 제어기(110)는 제어 신호들(S1,S2,...,Sn)에 따라 전류 미러들을 동작시킨다. 따라서 n개의 전류 미러 조합으로 파워 게이팅 트랜지스터(101)에 다양한 전류(Iout)가 흐르게 된다. 이때 파워 게이팅 트랜지스터(101)에 흐르는 전류량은 시스템 매니저(151)이 내부회로(151)의 블럭 활성화 상태에 따라 결정한다.
한편 본 발명에 따른 전류량 제어기(110)는 제 1 구동전압(VDDA1)을 공급하는 복수의 파워 게이팅 트랜지스터들의 전류를 제어하도록 공유될 수 있다. 도 5은 m개의 파워 게이팅 트랜지스터들(105,106,107)이 전류량 제어기(110)를 공유한 모습을 도시하고 있다. 여기서 m개의 파워 게이팅 트랜지스터들(105,106,107)의 구동능력은 동일하다. 따라서 각각의 파워 게이팅 트랜지스터들(105,106,107)은 전류량 제어기(110)의 구동능력의 n/m배 이상인 구동능력을 가지고 있으면 된다.
도 5의 전류량 제어기(110)의 동작은 상술한 도 4의 전류량 제어기(110)와 동일하다.
도 6은 본 발명에 따른 전류량 제어기(110)의 또다른 실시예이다. 도 6를 참조하면, 전류량 제어기(110)는 복수의 파워 게이팅 트랜지스터들(171,172,173)과 각각 전류 미러들을 형성하고 있다. 도 6를 참조하면, n개의 전류 미러들이 형성되어 있는 것을 보게 된다. 전류 미러들은 제어 신호들(S1,S2,...,Sn)에 따라 연결되어진 각각의 파워 게이팅 트랜지스터들 턴온시키고, 전류를 제어하게 된다.
도 4 및 도 5의 파워 게이팅 트랜지스터들(101,105,106,107)은 전류량 제어기(110)의 트랜지스터들(117,118,119)보다 최소 n/m배 이상의 구동능력을 가지도록 설계해야만 한다. 그러나 도 6의 파워 게이팅 트랜지스터들(171,172,173)과 대응되는 각각의 전류량 제어기(110)의 트랜지스터들(161,164,167)은 서로 동일한 구동능력을 가지도록 설계할 수 있게 된다.
도 6의 전류 제어기(110)의 동작은 상술한 도 4의 전류 제어기(110)의 동작과 같다.
한편, 도시되어 있지는 않지만, 본 발명에 따른 전류량 제어기는 파워 게이팅 트랜지스터에 다양한 전압을 인가하여 파워 게이팅 트랜지스터의 전류를 제어할 수도 있다.
도 7은 본 발명에 따른 반도체 칩의 파워 게이팅 방법을 도시하고 있다.
S10 단계에서는 반도체 칩(100)이 슬립 모드 진입할 때, 내부 블럭의 활성화 상태를 파악한 정보를 저장해 둔다.
S20 단계에서는 슬립 모드 상태의 반도체 칩(100)이 정상 동작 모드 진입 명령을 받게 된다. 반도체 칩(100)은 정상 동작을 하기 위해 파워 게이팅 트랜지스터 를 통해 구동전압들을 공급받게 된다.
S30 단계에서는 S10 단계에서 저장해 두었던 활성화 블럭 정보에 따라, 제어 신호를 생성하고, 전류량 제어기들(110~140)은 생성된 제어 신호에 따라 구동 전압들(VDDA1~VDDA4)이 공급되는 각각의 파워 게이팅 트랜지스터(101~104)의 전류량을 제어하게 된다. 시스템 메니저(151)는 안정전압까지 도달하는데 많은 전류량을 필요로 하는 곳에는 많은 전류를 흐르게 하도록 제어 신호를 생성하여 전류량 제어기들(110~140)에 전달한다. 따라서 좀더 빠르게 반도체 칩(100)이 안정전압까지 도달하도록 한다.
S40 단계에서는 안정전압에 도달하면, 반도체 칩(100)을 정상 동작시킨다.
본 발명에 따른 반도체 칩은 전류량 제어기를 구비하여, 파업-업 동작시 파워 게이팅 트랜지스터에 흐르는 전류를 제어하고 있다. 전류량 제어기는 상대적으로 구동전압이 느리게 상승하는 블럭에 대하여 보다 빠르게 상승하도록 하기 위해서 많은 전류를 흐르게 한다. 따라서 본 발명에 따른 반도체 칩은 보다 빠르게 안정 전압에 도달하게 된다.
본 발명에 따른 시스템 메니저(151)는 실시간으로 각 노드들의 전압을 감지하여 제어 신호를 생성할 수도 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지로 변형할 수 있다. 그러므로 본 발명의 범위는 상술한 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구범위 뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.