KR20230127824A - 시스템 온 칩, 그것의 버스 파워 게이팅 방법 및 시스템 - Google Patents

시스템 온 칩, 그것의 버스 파워 게이팅 방법 및 시스템 Download PDF

Info

Publication number
KR20230127824A
KR20230127824A KR1020220069112A KR20220069112A KR20230127824A KR 20230127824 A KR20230127824 A KR 20230127824A KR 1020220069112 A KR1020220069112 A KR 1020220069112A KR 20220069112 A KR20220069112 A KR 20220069112A KR 20230127824 A KR20230127824 A KR 20230127824A
Authority
KR
South Korea
Prior art keywords
bus
power
circuit
control signal
transaction
Prior art date
Application number
KR1020220069112A
Other languages
English (en)
Inventor
이익수
강종성
허정훈
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US18/159,787 priority Critical patent/US20230273630A1/en
Priority to CN202310162951.8A priority patent/CN116661582A/zh
Publication of KR20230127824A publication Critical patent/KR20230127824A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

본 발명의 개시에 따른 시스템 온 칩의 파워 게이팅 방법은, PMU가 버스에 제1 제어 신호를 전달하는 단계, 버스가 제1 제어 신호에 응답하여 PMU에 응답 신호를 전달하는 단계, 버스가 트랜잭션을 라이트 버스 회로로 이동시키는 단계, 및 PMU가 응답 신호를 기초로 제2 제어 신호를 전력 제어 회로로 전달함으로써 버스에 제공되는 전력을 조절하는 단계를 포함할 수 있다.

Description

시스템 온 칩, 그것의 버스 파워 게이팅 방법 및 시스템{SYSTEM ON CHIP, BUS POWER GATING METHOD THEREOF AND BUS POWER GATING SYSTEM}
본 개시의 기술적 사상은 시스템 온 칩에 관한 것이며 더욱 상세하게는, 시스템 온 칩, 그것의 파워 게이팅 방법 및 버스 에 관한 것이다.
모바일 SOC(System On Chip)에서 멀티미디어 기능은 증가하고 있고 이에 따라 성능 향상을 위해 백본 버스(backbone bus)의 영역(area)은 커지고 있다. 그리고 반도체 공정이 미세화되고 있으며 버스의 동작 주파수도 증가 하고 있는데, 이 때문에 백본 버스의 리키지 파워(leakage power)가 증가하는 문제가 있다. 이와 같은 리키지 파워를 줄이기 위해 백본 버스에 대해 파워 게이팅(power gating)을 적용할 수 있으나, 백본 버스에 대한 파워 게이팅은 파워 게이팅 진출입 지연시간(latency)이 커서 트랜잭션(transaction)이 긴 시간 동안 전혀 일어나지 않는다는 것이 보장되어야한다. 따라서, 짧은 유휴 상태(short idle)를 가지면서도 빈번한 트랜잭션이 발생할 경우에는 파워 게이팅 진출입 지연시간에 의한 성능 저하 문제가 있어 파워 게이팅 진입률이 매우 낮거나, 진입이 불가하게 되는 문제가 있다. 따라서, 백본 버스에 대해 효율적으로 파워 게이팅을 하기 위한 기술이 요구되고 있다.
본 개시의 기술적 사상은 시스템 온 칩, 시스템 온 칩의 파워 게이팅 방법 및 버스에 있어서, 버스 파워 게이팅 진입률 향상과 버스 파워 게이팅 진출입 지연시간 감소를 위한 방법 및 장치를 제공한다.
본 개시의 기술적 사상의 일 측면에 따른 시스템 온 칩의 파워 게이팅 방법은, PMU가 버스에 제1 제어 신호를 전달하는 단계, 버스가 제1 제어 신호에 응답하여 PMU에 응답 신호를 전달하는 단계, 버스가 트랜잭션(transaction)을 라이트 버스 회로로 이동시키는 단계, 및 PMU가 응답 신호를 기초로 제2 제어 신호를 전력 제어 회로로 전달함으로써 버스에 제공되는 전력을 조절하는 단계를 포함할 수 있다.
본 개시의 기술적 사상의 일 측면에 따른 시스템 온 칩은, 메인 버스 회로와 라이트 버스 회로를 포함하며, 상기 메인 버스 회로와 상기 라이트 버스 회로를 통해 트랜잭션을 처리하고, 상기 라이트 버스 회로의 트랜잭션 임계값에 기초하여 잔여 트랜잭션(pending transaction)이 라이트 버스 회로에서 처리되도록 구성되는 버스와, 메인 버스 파워 스위치, 라이트 버스 파워 스위치 및 전력 경로 컨트롤러를 포함하며, 상기 버스에 공급되는 전력을 제어하도록 구성되는 전력 제어 회로 및 트랜잭션의 양에 기초하여 제1 제어 신호 및 제2 제어 신호를 생성하고, 제1 제어 신호를 버스에 전달하여 버스의 동작을 제어하고, 제2 제어 신호를 전력 제어 회로에 전달하여 전력 제어 회로의 동작을 제어하도록 구성되는 PMU를 포함할 수 있다.
본 개시의 기술적 사상의 일 측면에 따른 버스는, 버스의 트랜잭션을 처리하는 메인 버스 회로(main bus circuit) 및 라이트 버스 회로(light bus circuit)을 포함하고, 트랜잭션의 양이 상기 라이트 버스 회로의 트랜잭션 임계값보다 같거나 큰 경우, 상기 메인 버스 회로와 상기 라이트 버스 회로를 이용하여 상기 트랜잭션을 처리하고, 트랜잭션의 양이 임계값보다 작은 경우, 라이트 버스 회로를 이용하여 잔여 트랜잭션을 처리하도록 구성되는 것을 특징으로 한다.
본 개시의 예시적 실시 예에 따른 시스템 온 칩, 시스템 온 칩의 파워 게이팅 방법 및 버스에 따르면, 백본 버스에 대한 파워 게이팅 진입률이 향상 될 수 있고, 백본 버스에 대한 파워 게이팅 진출입 지연시간이 감소될 수 있다. 이에 따라 백본 버스에서의 리키지 파워가 감소될 수 있다.
특히, 짧은 유휴 상태(short idle)를 가지면서 빈번한 트랜잭션이 발생할 경우에도 파워 게이팅이 가능하여 백본 버스에서 리키지 파워가 감소될 수 있다.
도 1은 본 개시의 예시적 실시 예에 따른 시스템 온 칩을 나타낸다.
도 2는 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 많은 경우버스에 공급되는 전력을 나타내기 위한 도면이다.
도 3은 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 적은 경우 버스에 공급되는 전력을 나타내기 위한 도면이다.
도 4는 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 적은 경우 버스에 공급되는 전력을 나타내기 위한 도면이다.
도 5는 본 개시의 예시적 실시 예에 따라 버스가 처리해야 할 트랜잭션이 없는 경우 버스에 공급되는 전력을 나타내기 위한 도면이다.
도 6은 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 적은 경우 IP 블록 및 메모리에 연결된 버스에 공급되는 전력을 나타내기 위한 도면이다.
도 7은 라이트 버스 회로가 없는 경우 버스 파워 게이팅 방법을 시간 흐름에 따라 나타낸 도면이다.
도 8은 도 7의 파워 게이팅 방법에 의한 파워 게이팅 응답시간을 나타내기 위한 도면이다.
도 9는 본 개시의 예시적 실시 예에 따른 버스 파워 게이팅 방법을 시간 흐름에 따라 나타낸 도면이다.
도 10은 본 개시의 예시적 실시 예에 따른 파워 게이팅 응답시간을 나타내기 위한 도면이다.
도 11은 본 개시의 예시적 실시 예에 따른 시스템 온 칩의 파워 게이팅 방법을 도시한 흐름도이다.
도 12는 도 11의 단계 S350을 구체적으로 설명하기 위한 순서도이다.
도 13은 본 개시의 예시적 실시 예에 따른 전자 장치를 도시하는 블록도이다.
도 14는 본 개시의 다른 실시예에 따른 전자 장치를 도시하는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다.
도 1은 본 개시의 예시적 실시 예에 따른 시스템 온 칩(10)을 나타낸다.
시스템 온 칩(SOC; System On Chip)(10)은, PMU(Power Management Unit)(110), 버스(bus)(120), 전력 제어 회로(Power Control Circuit)(130), IP 블록(Intellectual Property block)(141, 142)을 포함할 수 있다. 비록 도면에서는 예시적으로 제1 IP 블록(141)과 제2 IP 블록(142) 2개를 포함하는 것으로 도시되어 있으나, 실제로는 이것들보다 더 많거나 적을 수 있다.
시스템 온 칩(10)은 전체 시스템을 하나의 칩에 담은 기술 집약적인 반도체일 수 있다. 즉, 시스템 온 칩(10)은 여러 기능을 가진 기기들로 구성된 시스템을 하나의 칩으로 구현된 것일 수 있다. 여러 기능을 가진 기기들이 하나의 칩으로 통합되면, 제품의 소형화가 가능하고, 각 기능을 갖는 반도체들을 별도로 제조하는 것에 비하여 제조 비용이 감소할 수 있다.
시스템 온 칩(10)은 여러 기능을 수행하기 위해 외부로부터 외부 공급 전압을 수신할 수 있다. 일 실시예에서, 시스템 온 칩(10)은 전원 관리 집적 회로(PMIC)로부터 메인 전원(Main Power)(MAIN_PWR)과 보조 전원(Always On Power)(AON_PWR)을 공급 받을 수 있다.
PMU(110)는, 시스템 온 칩(10)의 동작에 필요한 전원을 조절하기 위해, 버스(120)와 전력 제어 회로(130)를 제어할 수 있다. PMU(110)는 버스(120)가 처리중이거나 처리해야할 트랜잭션 양에 기초하여 제1 제어 신호(CTRL_BUS)와 제2 제어 신호(CTRL_PCC)를 생성할 수 있다. 예시적 실시 예에 있어서, 버스(120)가 처리중이거나 처리해야할 트랜잭션 양이 라이트 버스 회로(122)가 처리 할 수 있는 트랜잭션 임계값보다 작은 경우, PMU(110)는 제1 제어 신호(CTRL_BUS) 및 제2 제어 신호(CTRL_PCC)를 생성할 수 있다.
PMU(110)는 버스(120)에 제1 제어 신호(CTRL_BUS)를 전달하고, 버스(120)로부터 응답 신호(ACK_BUS)를 전달받아 버스(120)에 공급될 전력을 제어할 수 있다. 예를 들어, 제1 제어 신호(CTRL_BUS)는 LPI(Low Power Interface) Request일 수 있다. 일 실시예에서, PMU(110)는 버스(120)에 대해 LPI Request 신호를 전달하여 버스(120)가 낮은 전력으로 트랜잭션을 처리하도록 제어할 수 있다. 예를 들어, 버스(120)는 라이트 버스 회로(122)를 통해 트랜잭션을 처리하는 경우 메인 전원(MAIN_PWR)이 아닌 보조 전원(AON_PWR)을 이용하여 동작함으로써, 더 낮은 전력으로 트랜잭션을 처리할 수 있다.
PMU(110)는 전력 제어 회로(130)에 제2 제어 신호(CTRL_PCC)를 전달하여 버스(120)에 공급되는 전력을 조절할 수 있다. 예를 들어, 제2 제어 신호(CTRL_PCC)는 버스의 전력을 조절하는 신호일 수 있다. 일 실시예에서, PMU(110)는 버스(120)로부터 응답 신호(ACK_BUS)를 전달받은 뒤 전력 제어 회로(130)에 제2 제어 신호(CTRL_PCC)를 전달하여 버스(120)에 공급되는 전력을 조절할 수 있다.
도면에는 도시되지 않았지만, PMU(110)는 라이트 버스 회로(122)가 처리 가능한 트랜잭션 임계값과 관련한 SFR(Special Function Register)을 포함할 수 있고, SFR은 상기 임계값에 대한 정보를 포함할 수 있다. 메인 버스 회로(121)가 처리 가능한 트랜잭션 한계치에 대한 트랜잭션 임계값은, 라이트 버스 회로(122)가 처리 가능한 트랜잭션 한계치에 대한 트랜잭션 임계값보다 클 수 있다. 버스(120)에 대한 파워 게이팅을 구현하는 것에 대한 구체적인 일 실시 예는 도 2 내지 도 6을 참조하여 보다 자세히 설명된다.
버스(120)는, 버스는 시스템 온 칩(10)내의 다양한 구성 요소들 사이를 연결할 수 있다. 버스(120)는 백본 버스(backbone bus)일 수 있다. 비록 도면에서는 예시적으로 시스템 온 칩(10)이 1개의 버스(120)를 포함하는 것으로 도시되어 있으나, 실제로는 이것보다 더 많을 수 있다.
버스(120)는 다양한 버스 프로토콜들 중 하나에 기반하여 동작할 수 있다. 상기 다양한 버스 프로토콜은 AMBA(Advanced Microcontroller Bus Architecture) 프로토콜, USB(Universal Serial Bus) 프로토콜, MMC(MultiMedia Card) 프로토콜, PCI(Peripheral Component Interconnection) 프로토콜, PCI-E(PCI-Express) 프로토콜, ATA(Advanced Technology Attachment) 프로토콜, Serial-ATA 프로토콜, Parallel-ATA 프로토콜, SCSI(Small Computer Small Interface) 프로토콜, ESDI(Enhanced Small Disk Interface) 프로토콜, IDE(Integrated Drive Electronics) 프로토콜, MIPI(Mobile Industry Processor Interface) 프로토콜, UFS(Universal Flash Storage) 프로토콜 등 중 적어도 하나를 포함할 수 있다.
버스(120)는 IP 블록(141, 142)들에 대한 트랜잭션(TR1, TR2)을 처리하기 위해 메인 버스 회로(121)와 라이트 버스 회로(122) 및 버스 컨트롤러(123)를 포함할 수 있다. 버스(120)는 트랜잭션의 양에 따라 트랜잭션을 메인 버스 회로(121) 또는 라이트 버스 회로(122)를 통해 처리할 수 있다. 메인 버스 회로(121)는 메인 전원(MAIN_PWR)을 공급받아 버스(120)의 트랜잭션을 처리할 수 있다. 라이트 버스 회로(122)는 메인 전원(MAIN_PWR) 또는 보조 전원(AON_PWR)을 공급받아 버스(120)의 트랜잭션을 처리할 수 있다. 이 때, 라이트 버스 회로(122)가 보조 전원(AON_PWR)을 공급받아 처리하는 트랜잭션은 잔여 트랜잭션(pending transaction)일 수 있다. 일 실시예에 있어서, 라이트 버스 회로(122)가 라이트 버스 회로(122)의 트랜잭션 임계값보다 같거나 많은 양의 트랜잭션을 처리해야 하는 경우, 라이트 버스 회로(122)는 메인 전원(MAIN_PWR)을 공급받아 트랜잭션을 처리할 수 있다. 일 실시예에 있어서, 라이트 버스 회로(122)가 라이트 버스 회로(122)의 트랜잭션 임계값보다 적은 양의 트랜잭션을 처리해야 하는 경우, 라이트 버스 회로(122)는 보조 전원(AON_PWR)을 공급받아 트랜잭션을 처리할 수 있다. 버스(120)에 대한 파워 게이팅을 구현하는 것에 대한 구체적인 일 실시 예는 도 2 내지 도 6을 참조하여 보다 자세히 설명된다.
전력 제어 회로(130)는, 외부 전원으로부터 전원을 공급받아 버스(120)에 전원을 공급할 수 있다. 전력 제어 회로(130)는 메인 버스 파워 스위치(Main Bus Power Switch)(131), 라이트 버스 파워 스위치(Light Bus Power Switch)(132), 전력 경로 컨트롤러(Power Path Controller)(133)를 포함할 수 있다. 일 실시예에 있어서, 전력 제어 회로(130)는 외부 전원으로부터 메인 전원(MAIN_PWR)과 보조 전원(AON_PWR)을 공급받을 수 있다. 예를 들어, 외부 전원은 전원 관리 집적 회로(PMIC; Power Management Integrated Circuit)에 의해 공급될 수 있다. 예시적 실시 예에 있어서, 메인 전원(MAIN_PWR)이 버스(120)에 공급할 수 있는 전력은 보조 전원(AON_PWR)이 버스(120)에 공급할 수 있는 전력보다 클 수 있다.
전력 제어 회로(130)는 PMU의 제2 제어 신호(CTRL_PCC)에 따라 버스(120)에 공급되는 전력을 조절할 수 있다. 메인 버스 파워 스위치(131)는 PMU의 제2 제어 신호(CTRL_PCC)에 응답하여 메인 버스 회로(121)로 전원을 공급하거나, 공급되는 전원을 차단할 수 있다. 라이트 버스 파워 스위치(132)는 PMU의 제2 제어 신호(CTRL_PCC)에 응답하여 라이트 버스 회로(122)로 전원을 공급하거나, 공급되는 전원을 차단할 수 있다. 전력 경로 컨트롤러(133)는, PMU의 제2 제어 신호(CTRL_PCC)에 응답하여 라이트 버스 회로(122)에 공급될 전원을 선택하거나, 어떤 전원도 공급되지 않도록 동작할 수 있다.
예시적 실시 예에 있어서, 버스(120)의 트랜잭션의 양이 많은 경우 메인 전원(MAIN_PWR)을 이용하여 버스(120)가 트랜잭션을 처리하도록 PMU(110)는 전력 제어 회로(130)를 제어할 수 있고, 전력 제어 회로(130)는 PMU(110)의 제어에 따라 버스(120)에 메인 전원(MAIN_PWR)이 공급되도록 전력을 조절할 수 있다. 버스(120)의 트랜잭션의 양이 적은 경우 보조 전원(AON_PWR)을 이용하여 라이트 버스 회로(122)가 트랜잭션을 처리하도록 PMU(110)는 전력 제어 회로(130)를 제어할 수 있고, 전력 제어 회로(130)는 PMU(110)의 제어에 따라 라이트 버스 회로(122)에 보조 전원(AON_PWR)이 공급되도록 전력을 조절할 수 있다.
도 2는 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 많은 경우버스에 공급되는 전력을 나타내기 위한 도면이다. 제1 버스(220)는 도 1의 버스(120)에 대응될 수 있다. 도 2의 전력 제어 회로(230)는 도 1의 전력 제어 회로(130)에 대응될 수 있다. 도 2는 도 1을 참조하여 설명될 것이다.
전원 관리 집적 회로(20)는 메인 전원(21) 및 보조 전원(22)을 포함할 수 있다. 비록 도면에서는 예시적으로 2개의 전원을 포함하는 것으로 도시되어 있으나, 실제로는 이것들보다 더 많거나 적을 수 있다. 전원 관리 집적 회로(20)는 제1 버스(220)가 트랜잭션을 처리하는데 필요한 전력을 공급할 수 있다. 전원 관리 집적 회로(20)가 제1 버스(220)로 공급하는 전원은 전력 제어 회로(230)에 의해 조절될 수 있다. 예시적 실시 예에 있어서, 전원 관리 집적 회로(20)가 제1 버스(220)에 공급하는 메인 전원(21) 또는 보조 전원(22)은 전력 제어 회로(230)의 제어에 따라 메인 버스 회로(321)나 라이트 버스 회로(322)에 전달되거나 차단될될 수 있다.
제1 버스(220)는 메인 버스 회로(221), 라이트 버스 회로(222), 버스 컨트롤러(223)를 포함할 수 있다. 도면에는 도시되지 않았지만, 제1 버스(220)는 브리지(bridge)를 포함할 수 있고, 메인 버스 회로(221)와 라이트 버스 회로(222)는 브리지를 통해 연결될 수 있다. 제1 버스(220)는 제1 버스(220)에 연결된 IP 블록(241, 242)들이 발생시키는 트랜잭션(TR1a, TR2a) 양에 따라, 트랜잭션(TR1a, TR2a)을 메인 버스 회로(221) 또는 라이트 버스 회로(222) 중 적어도 하나를 이용해 처리할 수 있다. 비록 도면에서는 예시적으로 제1 IP 블록(241)과 제2 IP 블록(242) 2개가 제1 버스(220)에 트랜잭션(TR1a, TR2a)을 전달하는 것으로 도시되어 있으나, 연결된 IP 블록의 수는 이것들보다 더 많거나 적을 수 있다.
메인 버스 회로(221)는 다른 장치들에 트랜잭션(TR_MB1)을 전달하거나 수신할 수 있다. 예를 들어, 다른 장치는 다른 버스, IP블록 또는 메모리일 수 있다.
예시적 실시 예에 있어서, 버스 컨트롤러(223)는 메인 버스 회로(221)와 라이트 버스 회로(222)간에 처리되어야 할 트랜잭션을 이동시킬 수 있다. 비록 도면에는 예시적으로 제1 IP 블록(241) 및 제2 IP 블록(242)이 메인 버스 회로(221)에 연결되어 트랜잭션(TR1a, TR2a)을 처리하는 것으로 도시되었지만, 라이트 버스 회로(222)도 메인 버스 회로(221)와 함께 트랜잭션(TR1a, TR2a)을 처리할 수 있다.
예시적 실시 예에 있어서, 제1 버스(220)는 제1 IP 블록(241)에 의한 트랜잭션(TR1a)과, 제2 IP 블록(242)에 의한 트랜잭션(TR2a)으로 인해 처리해야하는 트랜잭션의 양이 많은 상태일 수 있다. 제1 버스(220)는 IP 블록(241, 242)에 의한 트랜잭션(TR1a, TR2a)의 양이 많은 경우에 트랜잭션(TR1a, TR2a)을 메인 버스 회로(221)와 라이트 버스 회로(222)를 모두 이용하여 제1 버스(220)의 트랜잭션(TR1a, TR2a)을 처리할 수 있다. 예를 들어, 제1 IP 블록(241) 및 제2 IP 블록(242)에 의한 트랜잭션(TR1a, TR2a)의 양은, 제1 버스(220)의 라이트 버스 회로(322)가 처리 가능한 트랜잭션 한계치에 대한 트랜잭션 임계값보다 같거나 클 수 있고, 또는 제1 버스(220)의 메인 버스 회로(221)가 처리 가능한 트랜잭션 한계치에 대한 트랜잭션 임계값보다 같거나 클 수 있다.
전력 제어 회로(230)는 메인 버스 파워 스위치(main bus power switch)(231), 라이트 버스 파워 스위치(light bus power switch)(232), 전력 경로 컨트롤러(Power Path Controller)(233)를 포함할 수 있다. 전력 제어 회로(230)는 PMU(110)의 제2 제어 신호(CTRL_PCC)에 의해 제1 버스(220)에 공급되는 전력을 제어할 수 있다. 예시적 실시 예에 있어서, 도 1의 제2 제어 신호(CTRL_PCC)는 메인 버스 파워 스위치 제어 신호(CTRL1_MPSa), 라이트 버스 파워 스위치 제어 신호(CTRL1_LPSa), 전력 경로 컨트롤러 제어 신호(CTRL1_PPCa)를 포함할 수 있다.
본 개시의 예시적 실시예에 따르면, 제1 버스(220)가 처리해야 할 트랜잭션의 양이 라이트 버스 회로(222)가 처리 가능한 트랜잭션 임계값보다 같거나 큰 경우, PMU(110)는 제2 제어 신호(CTRL_PCC)를 전력 제어 회로(230)로 전달 할 수 있다. 전력 제어 회로(230)는 제2 제어 신호(CTRL_PCC)에 포함된 메인 버스 파워 스위치 제어 신호(CTRL1_MPSa)에 응답하여 메인 전원(21)이 메인 버스 회로로 공급되도록 제어할 수 있다. 전력 제어 회로(230)는 제2 제어 신호(CTRL_PCC)에 포함된 전력 경로 컨트롤러 제어 신호(CTRL1_PPCa)에 응답하여 전력 경로 컨트롤러(233)가 메인 전원(21)과 보조 전원(22)중 메인 전원(21)을 선택하도록 제어할 수 있다. 전력 제어 회로(230)는 제2 제어 신호(CTRL_PCC)에 포함된 라이트 버스 파워 스위치 제어 신호(CTRL1_LPSa)에 따라 라이트 버스 회로에 메인 전원(21)이 공급되도록 제어할 수 있다.
도 3은 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 적은 경우 버스에 공급되는 전력을 나타내기 위한 도면이다. 제2 버스(320)는 도 1의 버스(120)에 대응될 수 있다. 도 3의 전력 제어 회로(330)는 도 1의 전력 제어 회로(130)에 대응될 수 있다. 도 3은 도 1, 도 2를 참조하여 설명될 것이다. 도 1, 도 2와 중복되는 설명은 생략될 수 있다.
전원 관리 집적 회로(20)는 제2 버스(320)가 트랜잭션을 처리하는데 필요한 전력을 공급할 수 있다. 전원 관리 집적 회로(20)가 제2 버스(320)로 공급하는 전원은 전력 제어 회로(330)에 의해 조절될 수 있다. 예시적 실시 예에 있어서, 전원 관리 집적 회로(20)가 공급하는 메인 전원(21) 또는 보조 전원(22)은 전력 제어 회로(330)의 제어에 따라 메인 버스 회로(321)나 라이트 버스 회로(322)에 전달되거나 차단될될 수 있다.
제2 버스(320)는 메인 버스 회로(321), 라이트 버스 회로(322), 버스 컨트롤러(323)를 포함할 수 있다. 도면에는 도시되지 않았지만, 제2 버스(320)는 브리지를 포함할 수 있고, 메인 버스 회로(321)와 라이트 버스 회로(322)는 브리지를 통해 연결될 수 있다. 제2 버스(320)는 제2 버스(320)에 연결된 제3 IP 블록(343)이 발생시키는 트랜잭션(TR3a) 양에 따라, 트랜잭션을 메인 버스 회로(321) 또는 라이트 버스 회로(322) 중 적어도 하나를 이용해 처리할 수 있다. 비록 도면에서는 예시적으로 제3 IP 블록(343) 1개만이 제2 버스(320)에 트랜잭션을 전달하는 것으로 도시되어 있으나, 연결된 IP 블록의 수는 이것보다 더 많을 수 있다. 라이트 버스 회로(322)는 다른 장치들에 트랜잭션(TR_LB2)을 전달하거나 수신할 수 있다. 예를 들어, 다른 장치는 다른 버스, 다른 IP블록 또는 메모리일 수 있다. 예시적 실시 예에 있어서, 버스 컨트롤러(323)는 메인 버스 회로(321)와 라이트 버스 회로(322)간에 처리되어야 할 트랜잭션을 이동시킬 수 있다.
예시적 실시 예에 있어서, 제2 버스(320)는 제3 IP 블록(343)에 의한 트랜잭션(TR3a)으로 인해 처리해야하는 트랜잭션의 양이 적은 상태일 수 있다. 제2 버스(320)는 제3 IP 블록(343)에 의한 트랜잭션(TR3a)이 적은 경우에, 라이트 버스 회로(322)를 이용하여 제2 버스(320)의 트랜잭션(TR3a)을 처리할 수 있다. 예를 들어, 제3 IP 블록(343)에 의한 트랜잭션(TR3a)의 양은, 제2 버스(320)의 라이트 버스 회로(322)가 처리 가능한 트랜잭션 한계치에 대한 트랜잭션 임계값보다 작을 수 있다.
전력 제어 회로(330)는 메인 버스 파워 스위치(331), 라이트 버스 파워 스위치(332), 전력 경로 컨트롤러(333)를 포함할 수 있다. 전력 제어 회로(330)는 PMU(110)의 제2 제어 신호(CTRL_PCC)에 의해 제2 버스(320)에 공급되는 전력을 제어할 수 있다. 예시적 실시 예에 있어서, 도 1의 제2 제어 신호(CTRL_PCC)는 메인 버스 파워 스위치 제어 신호(CTRL2_MPSa), 라이트 버스 파워 스위치 제어 신호(CTRL2_LPSa), 전력 경로 컨트롤러 제어 신호(CTRL2_PPCa)를 포함할 수 있다.
본 개시의 예시적 실시예에 따르면, 제2 버스(320)가 처리해야 할 트랜잭션의 양이 라이트 버스 회로(322)가 처리 가능한 트랜잭션 임계값보다 작은 경우, PMU(110)는 제1 제어 신호(CTRL_BUS)를 제2 버스(320)로 전달할 수 있고, 제2 제어 신호(CTRL_PCC)를 전력 제어 회로(330)로 전달 할 수 있다. 전력 제어 회로(330)는 제2 제어 신호(CTRL_PCC)에 포함된 메인 버스 파워 스위치 제어 신호(CTRL2_MPSa)에 응답하여 메인 버스 파워 스위치(331)가 메인 전원(21)이 메인 버스 회로(321)로 공급되는 것을 차단하도록 제어할 수 있다. 전력 제어 회로(330)는 제2 제어 신호(CTRL_PCC)에 포함된 전력 경로 컨트롤러 제어 신호(CTRL2_PPCa)에 응답하여 전력 경로 컨트롤러(333)가 메인 전원(21)과 보조 전원(22)중 보조 전원(22)을 선택하도록 제어할 수 있다. 전력 제어 회로(330)는 제2 제어 신호(CTRL_PCC)에 포함된 라이트 버스 파워 스위치 제어 신호(CTRL1_LPSa)에 따라 라이트 버스 회로에 보조 전원(22)이 공급되도록 제어할 수 있다.
도 4는 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 적은 경우 버스에 공급되는 전력을 나타내기 위한 도면이다. 제3 버스(420)는 도 1의 버스(120)에 대응될 수 있다. 도 4의 전력 제어 회로(430)는 도 1의 전력 제어 회로(130)에 대응될 수 있다. 도 4는 도 1 내지 도 3을 참조하여 설명될 것이다. 도 1 내지 도 3과 중복되는 설명은 생략될 수 있다.
전원 관리 집적 회로(20)는 제3 버스(40)가 트랜잭션을 처리하는데 필요한 전력을 공급할 수 있다. 전원 관리 집적 회로(20)가 제3 버스(420)로 공급하는 전원은 전력 제어 회로(430)에 의해 조절될 수 있다. 예시적 실시 예에 있어서, 전원 관리 집적 회로(20)가 공급하는 메인 전원(21) 또는 보조 전원(22)은 전력 제어 회로(430)의 제어에 따라 메인 버스 회로(421)나 라이트 버스 회로(422)에 전달되거나 차단될될 수 있다.
제3 버스(420)는 메인 버스 회로(421), 라이트 버스 회로(422), 버스 컨트롤러(423)를 포함할 수 있다. 도면에는 도시되지 않았지만, 제3 버스(420)는 브리지를 포함할 수 있고, 메인 버스 회로(421)와 라이트 버스 회로(422)는 브리지를 통해 연결될 수 있다. 제3 버스(420)는 제3 버스(420)에 연결된 제4 IP 블록(444)이 발생시키는 트랜잭션(TR4a) 양에 따라, 트랜잭션을 메인 버스 회로(421) 또는 라이트 버스 회로(422) 중 적어도 하나를 이용해 처리할 수 있다. 비록 도면에서는 예시적으로 제4 IP 블록(443) 1개만이 제3 버스(420)에 트랜잭션을 전달하는 것으로 도시되어 있으나, 연결된 IP 블록의 수는 이것보다 더 많을 수 있다. 메인 버스 회로(421)는 다른 장치들에 트랜잭션(TR_MB3)을 전달하거나 수신할 수 있다. 예를 들어, 다른 장치는 다른 버스, 다른 IP블록 또는 메모리일 수 있다. 예시적 실시 예에 있어서, 버스 컨트롤러(423)는 메인 버스 회로(421)와 라이트 버스 회로(422)간에 처리되어야 할 트랜잭션을 이동시킬 수 있다.
예시적 실시 예에 있어서, 제3 버스(420)는 제4 IP 블록(444)에 의한 트랜잭션(TR4a)으로 인해 처리해야하는 트랜잭션(TR4a)의 양이 적은 상태일 수 있다. 예를 들어, 트랜잭션(TR4a)의 양은 라이트 버스 회로(422)의 처리 가능한 트랜잭션 임계값보다는 같거나 크고, 메인 버스 회로(421)의 처리 가능한 트랜잭션 임계값보다는 작을 수 있다. 제3 버스(420)는 메인 버스 회로(421)를 이용하여 제3 버스(420)의 트랜잭션(TR4a)을 처리할 수 있다.
전력 제어 회로(430)는 메인 버스 파워 스위치(431), 라이트 버스 파워 스위치(432), 전력 경로 컨트롤러(433)를 포함할 수 있다. 전력 제어 회로(430)는 PMU(110)의 제2 제어 신호(CTRL_PCC)에 의해 제3 버스(420)에 공급되는 전력을 제어할 수 있다. 예시적 실시 예에 있어서, 도 1의 제2 제어 신호(CTRL_PCC)는 메인 버스 파워 스위치 제어 신호(CTRL3_MPSa), 라이트 버스 파워 스위치 제어 신호(CTRL3_LPSa), 전력 경로 컨트롤러 제어 신호(CTRL3_PPCa)를 포함할 수 있다.
본 개시의 예시적 실시예에 따르면, 제3 버스(420)가 처리해야 할 트랜잭션의 양은, 라이트 버스 회로(422)가 처리 가능한 트랜잭션 임계값보다 작거나, 라이트 버스 회로(422)가 처리 가능한 트랜잭션 임계값보다는 같거나 크지만 메인 버스 회로(421)가 처리 가능한 트랜잭션 임계값보다 작을 수 있다. 이 때 PMU(110)는 제1 제어 신호(CTRL_BUS)를 제3 버스(420)로 전달할 수 있고 제2 제어 신호(CTRL_PCC)를 전력 제어 회로(430)로 전달 할 수 있다. 전력 제어 회로(430)는 제2 제어 신호(CTRL_PCC)에 포함된 메인 버스 파워 스위치 제어 신호(CTRL3_MPSa)에 응답하여 메인 버스 파워 스위치(431)가 메인 전원(21)이 메인 버스 회로(421)로 공급되도록 제어할 수 있다. 전력 제어 회로(430)는 제2 제어 신호(CTRL_PCC)에 포함된 전력 경로 컨트롤러 제어 신호(CTRL3_PPCa)에 응답하여 전력 경로 컨트롤러(433)가 메인 전원(21)과 보조 전원(22)중 어느 하나를 선택하거나 어느 전원도 선택하지 않도록 제어할 수 있다. 전력 제어 회로(430)는 제2 제어 신호(CTRL_PCC)에 포함된 라이트 버스 파워 스위치 제어 신호(CTRL3_LPSa)에 따라 라이트 버스 회로에 전원의 공급이 차단되도록 제어할 수 있다.
도 5는 본 개시의 예시적 실시 예에 따라 버스가 처리해야 할 트랜잭션이 없는 경우 버스에 공급되는 전력을 나타내기 위한 도면이다. 제4 버스(520)는 도 1의 버스(120)에 대응될 수 있다. 도 5의 전력 제어 회로(530)는 도 1의 전력 제어 회로(130)에 대응될 수 있다. 도 5는 도 1 내지 도 4을 참조하여 설명될 것이다. 도 1 내지 도 4와 중복되는 설명은 생략될 수 있다.
전원 관리 집적 회로(20)는 제4 버스(40)가 트랜잭션을 처리하는데 필요한 전력을 공급할 수 있다. 전원 관리 집적 회로(20)가 제4 버스(520)로 공급하는 전원은 전력 제어 회로(530)에 의해 조절될 수 있다. 예시적 실시 예에 있어서, 전원 관리 집적 회로(20)가 공급하는 메인 전원(21) 또는 보조 전원(22)은 전력 제어 회로(530)의 제어에 따라 메인 버스 회로(521)나 라이트 버스 회로(522)에 전달되거나 차단될 수 있다.
제4 버스(520)는 메인 버스 회로(521), 라이트 버스 회로(522), 버스 컨트롤러(523)를 포함할 수 있다. 도면에는 도시되지 않았지만, 제4 버스(520)는 브리지를 포함할 수 있고, 메인 버스 회로(521)와 라이트 버스 회로(522)는 브리지를 통해 연결될 수 있다. 예시적 실시 예에 있어서, 버스 컨트롤러(523)는 메인 버스 회로(521)와 라이트 버스 회로(522)간에 처리되어야 할 트랜잭션을 이동시킬 수 있다.
전력 제어 회로(530)는 메인 버스 파워 스위치(531), 라이트 버스 파워 스위치(532), 전력 경로 컨트롤러(533)를 포함할 수 있다. 전력 제어 회로(530)는 PMU(110)의 제2 제어 신호(CTRL_PCC)를 수신하여 제4 버스(520)에 공급되는 전력을 제어할 수 있다. 예시적 실시 예에 있어서, 도 1의 제2 제어 신호(CTRL_PCC)는 메인 버스 파워 스위치 제어 신호(CTRL4_MPSa), 라이트 버스 파워 스위치 제어 신호(CTRL4_LPSa), 전력 경로 컨트롤러 제어 신호(CTRL4_PPCa)를 포함할 수 있다.
본 개시의 예시적 실시예에 따르면, 도 5에는 도시하지 않았지만 제4 버스(520)에 연결되었던 IP 블록이 발생시키는 트랜잭션의 처리가 완료됨에 따라, 제4 버스에는 잔여 트랜잭션이 없는 상태일 수 있고, PMU(110)는 전력 제어 회로(530)를 제어하여 제4 버스에 공급되는 전력을 차단할 수 있다. 전력 제어 회로(530)는 제2 제어 신호(CTRL_PCC)에 포함된 메인 버스 파워 스위치 제어 신호(CTRL4_MPSa)에 응답하여 메인 버스 파워 스위치(531)가 메인 전원(21)이 메인 버스 회로(521)로 공급되는 것을 차단하도록 제어할 수 있다. 전력 제어 회로(450)는 제2 제어 신호(CTRL_PCC)에 포함된 전력 경로 컨트롤러 제어 신호(CTRL4_PPCa)에 응답하여 전력 경로 컨트롤러(533)가 메인 전원(21)과 보조 전원(22)중 보조 전원(22) 어느 하나를 선택하거나, 어느 전원도 공급되지 않도록 제어할 수 있다. 전력 제어 회로(530)는 제2 제어 신호(CTRL_PCC)에 포함된 라이트 버스 파워 스위치 제어 신호(CTRL4_LPSa)에 따라 라이트 버스 회로에 보조 전원(22)의 공급이 차단되도록 제어할 수 있다.
도 6은 본 개시의 예시적 실시 예에 따라 버스의 트랜잭션 양이 적은 경우 IP 블록 및 메모리에 연결된 버스에 공급되는 전력을 나타내기 위한 도면이다. 제5 버스(620a) 및 제6 버스(620b)는 도 1의 버스(120)에 대응될 수 있다. 비록 도 6에는 2개의 버스(620a, 620b)만을 도시하였지만 더 많은 버스가 시스템 온 칩(10)에 포함될 수 있다. 제5 버스에 대한 전력 제어 회로(630a) 및 제6 버스에 대한 전력 제어 회로(630b)는 각각 도 1의 전력 제어 회로(130)에 대응될 수 있다. 도 6은 도 1 내지 도 5를 참조하여 설명될 것이다. 도 1 내지 도 5와 중복되는 설명은 생략될 수 있다.
전원 관리 집적 회로(20)는 제5 버스(620a) 및 제6 버스(620b)가 트랜잭션을 처리하는데 필요한 전력을 공급할 수 있다. 전원 관리 집적 회로(20)가 제5 버스(620a) 및 제6 버스(620b)로 공급하는 전원은 제5 버스에 대한 전력 제어 회로(630a) 및 제6 버스에 대한 전력 제어 회로(630b)에 의해 조절될 수 있다. 예시적 실시 예에 있어서, 전원 관리 집적 회로(20)가 공급하는 메인 전원(21) 또는 보조 전원(22)은 제5 버스에 대한 전력 제어 회로(630a) 및 제6 버스에 대한 전력 제어 회로(630b)의 제어에 따라 제5 버스의 메인 버스 회로(621a), 제6 버스의 라이트 버스 회로(621b), 제5 버스의 메인 버스 회로(622a) 및 제6 버스의 라이트 버스 회로(622b)에 전달되거나 차단될 수 있다.
제5 버스(620a) 및 제6 버스(620b)는 각각 메인 버스 회로(621a, 621b), 라이트 버스 회로(622a, 622b), 버스 컨트롤러(623a, 623b)를 포함할 수 있다. 도면에는 도시되지 않았지만, 제5 버스(620a) 및 제6 버스(620b)는 브리지를 포함할 수 있고, 각각의 메인 버스 회로(621a, 621b)와 라이트 버스 회로(622a, 622b)는 브리지를 통해 연결될 수 있다. 예시적 실시 예에 있어서, 제5 IP 블록(645)은 호스트가 요청한 작업의 수행을 위해 메모리(650)에의 접근이 필요할 수 있고, 제5 버스(620a) 및 제6 버스(620b)를 통해 트랜잭션의 처리가 수행될 수 있다. 메모리(650)는 시스템 온 칩(10)의 내부 또는 외부에 존재할 수 있다. 메모리(650)는 시스템 온 칩(10) 내에서 이용되는 각종 데이터, 프로그램 및 인스트럭션들과 같은 제어 정보들을 저장할 수 있다. 예시적 실시 예에 있어서, 메모리(650)는 휘발성 메모리로 구현될 수 있으며, 휘발성 메모리는 DRAM(Dynamic Random Access Memory), SDRAM(Synchronous DRAM), DDR SDRAM(Double Data Rate SDRAM), LPDDR SDRAM(Low Power Double Data Rate SDRAM), GDDR SDRAM(Graphics Double Data Rate SDRAM), RDRAM(Rambus DRAM) 및 SRAM(Static RAM) 등 중 적어도 하나를 포함할 수 있으나 이에 한정되는 것은 아니다.
제5 버스에 대한 전력 제어 회로(630a)는 제5 버스에 대한 메인 버스 파워 스위치(631a), 제5 버스에 대한 라이트 버스 파워 스위치(632a) 및 제5 버스에 대한 전력 경로 컨트롤러(633a)를 포함할 수 있다. 제6 버스에 대한 전력 제어 회로(630b)는 제6 버스에 대한 메인 버스 파워 스위치(631b), 제6 버스에 대한 라이트 버스 파워 스위치(632b) 및 제6 버스에 대한 전력 경로 컨트롤러(633b)를 포함할 수 있다. 제5 버스에 대한 전력 제어 회로(630a) 는 PMU(110)의 제2 제어 신호(CTRL_PCC)를 수신하여 제5 버스(620a)에 공급되는 전력을 제어할 수 있다. 제6 버스에 대한 전력 제어 회로(630b) 는 PMU(110)의 제2 제어 신호(CTRL_PCC)를 수신하여 제6 버스(620b)에 공급되는 전력을 제어할 수 있다. 예시적 실시 예에 있어서, 도 1의 제2 제어 신호(CTRL_PCC)는 제5 버스에 대한 메인 버스 파워 스위치 제어 신호(CTRL5_MPSa), 제5 버스에 대한 라이트 버스 파워 스위치 제어 신호(CTRL5_LPSa), 제5 버스에 대한 전력 경로 컨트롤러 제어 신호(CTRL5_PPCa), 제6 버스에 대한 메인 버스 파워 스위치 제어 신호(CTRL6_MPSa), 제6 버스에 대한 라이트 버스 파워 스위치 제어 신호(CTRL6_LPSa) 및 제6 버스에 대한 전력 경로 컨트롤러 제어 신호(CTRL6_PPCa)를 포함할 수 있다.
본 개시의 예시적 실시예에 따르면, 제5 IP 블록(645)은 호스트의 요청을 처리하기 위해 메모리(650)에 접근할 수 있다. 제5 IP 블록(645)은 제5 버스(620a)에 트랜잭션(TR5a)을 전달할 수 있다. 제5 버스(620a)는 제6 버스(620b)에 트랜잭션(TR5b)을 전달할 수 있다. 제6 버스(620b)는 메모리(650)에 트랜잭션을 전달할 수 있다. 트랜잭션(TR5a, TR5b, TR5c)들을 처리하는데 있어, 트랜잭션의 양은 제5 버스에 대한 라이트 버스 회로(622a)의 트랜잭션 임계값보다 작으면서 제6 버스에 대한 라이트 버스 회로(622b)의 트랜잭션 임계값보다 작을 수 있다. 제5 버스에 대한 전력 제어 회로(630a)는 제2 제어 신호(CTRL_PCC)에 포함된 메인 버스 파워 스위치 제어 신호(CTRL5_MPSa)에 응답하여 메인 버스 파워 스위치(631a)가 메인 전원(21)이 메인 버스 회로(621a)로 공급되는 것을 차단하도록 제어할 수 있다. 제5 버스에 대한 전력 제어 회로(630a)는 제2 제어 신호(CTRL_PCC)에 포함된 전력 경로 컨트롤러 제어 신호(CTRL4_PPCa)에 응답하여 전력 경로 컨트롤러(633a)가 메인 전원(21)과 보조 전원(22)중 보조 전원(22)을 선택하도록 제어할 수 있다. 제5 버스에 대한 전력 제어 회로(630a)는 제2 제어 신호(CTRL_PCC)에 포함된 라이트 버스 파워 스위치 제어 신호(CTRL5_LPSa)에 따라 라이트 버스 회로에 보조 전원(22)이 공급되도록 제어할 수 있다.
도 7은 라이트 버스 회로(122)가 없는 경우 버스 파워 게이팅 방법을 시간 흐름에 따라 나타낸 도면이다. 이하에서 도 7의 버스(120a)는 도 1의 라이트 버스 회로(122)가 없는 것으로 가정된다. 도면에는 도시하지 않았지만, 버스(120a)는 PMU(110a)의 제어에 응답하여 버스에 공급되는 파워를 조절하는 버스 파워 스위치를 포함할 수 있다.
도 7을 참조하면, 단계 S110에서 PMU(110a)는 버스(120a)에 제1 제어 신호를 전달할 수 있다. 예를 들어, 제1 제어 신호는 LPI(Low Power Interface) Request 신호일 수 있다.
단계 S120에서, 버스(120a)는 PMU(110a)로부터 제1 제어 신호를 수신한 후, 버스(120a)에 남아있는 잔여 트랜잭션의 처리를 수행할 수 있다.
단계 S130에서, 버스(120a)는 단계 S120에서 잔여 트랜잭션의 처리를 완료한 후, PMU(110a)에 응답 신호를 전달할 수 있다. 예를 들어, 응답 신호는 ACK 신호일 수 있다.
단계 S140에서, PMU(110a)는 버스(120a)의 버스 파워 스위치에 제2 제어 신호를 전달할 수 있다. 예를 들어, 제2 제어 신호는 전력 감소 제어 신호 또는 전력 차단 제어 신호일 수 있다.
단계 S150에서, 버스 파워 스위치는 PMU(110a)의 제2 제어 신호에 응답하여 전원 관리 집적 회로로부터 버스(120a)로 공급되는 전력을 감소시키거나 차단할 수 있다. 따라서 버스(120a)에 공급되는 전력이 감소되거나 차단됨으로써 파워 게이팅이 수행될 수 있다.
도 8은 도 7의 파워 게이팅 방법에 의한 파워 게이팅 응답시간을 나타내기 위한 도면이다. 도 8은 도 7을 참조하여 설명될 것이다.
구체적으로, 도 8은 도 7의 파워 게이팅 방법에 따라 PMU(110a)가 버스(120a)로 신호(REQn)가 전달되는 시점 및 버스(120a)에 공급되는 파워(PWR)가 감소되거나 또는 차단되는 시점을 도시하기 위한 타이밍도 이다. 예시적 실시 예에 있어서, REQn은 PMU(110a)와 버스(120a)간에 LPI Request를 전달하는 단자의 논리 레벨을 나타날 수 있다. 예를 들어, LPI Request가 전달되면 REQn은 논리 레벨이 로우가 될 수 있다. PWR은 버스에 공급되는 전력을 나타낼 수 있다. 논리 레벨이 하이일 때는 메인 전원에 의해 전원을 공급받고 있는 상태를 의미할 수 있고, 논리 레벨이 로우일 때는 전원 공급이 끊긴 상태를 의미할 수 있다.
도 8을 참조하면, 도 7의 실시예에 따른 방법에 의해, PMU(110a)가 버스(120a)에 제1 제어 신호로 LPI Request 신호를 전달할 수 있다. 즉, PMU(110a)는 버스(120a)에 대한 파워 게이팅을 수행하기 위해, 제1 시간(T1)에 버스(120a)로 LPI Request를 전달할 수 있다. 버스(120a)는 PMU(110a)로부터 LPI Request를 수신한 뒤, 버스(120a)에 공급되는 전력을 제어하기 전에 버스(120a)에 남아있는 잔여 트랜잭션을 모두 처리해야한다. 버스(120a)는 제2 시간(T2)까지 트랜잭션의 처리를 수행할 수 있다. 제1 시간(T1)부터 제2 시간(T2)까지의 구간(ta)은 파워 게이팅 응답시간을 나타낼 수 있다. 도 8의 파워 게이팅 응답 시간(ta)은 버스(120a)가 잔여 트랜잭션의 처리를 마치는데 걸리는 시간이 될 수 있다. 도 8의 파워 게이팅 응답 시간(ta)은 버스(120a)에 남아있는 잔여 트랜잭션의 양에 따라 달라질 수 있다. 버스(120a)에 공급되는 전력은 제2 시간(T2)이후의 구간에서 감소되거나 차단될 수 있다. 도 8의 파워 게이팅 응답 시간(ta)으로 인해 도 7의 방법에 의한 파워 게이팅은 버스(120a)의 트랜잭션이 없다는 것이 보장되어야 수행될 수 있어, 파워 게이팅 지연시간(latency)이 발생하게 되고 이로 인해 파워 게이팅 진입률이 낮을 수 있다.
도 9는 본 개시의 예시적 실시 예에 따른 버스 파워 게이팅 방법을 시간 흐름에 따라 나타낸 도면이다. 도 9의 PMU(110)는 도 1의 PMU(110)에 대응될 수 있다. 도 9의 버스(120)는 도 1의 버스(120)에 대응될 수 있다. 도 9의 전력 제어 회로(130)는 도 1의 전력 제어 회로(130)에 대응될 수 있다. 도 9는 도 1을 참조하여 설명될 것이다.
도 9를 참조하면, 버스(120)는 트랜잭션의 처리를 메인 버스 회로(121)와 라이트 버스 회로(122)를 통해 처리할 수 있다.
단계 S210에서, 버스(120)는 메인 버스 회로(121)를 통해 또는 메인 버스 회로(121)와 라이트 버스 회로(122)를 모두 이용하여 트랜잭션을 처리하는 중일수 있다. PMU(110)는 버스(120)에 제1 제어 신호(CTRL_BUS)를 전달할 수 있다. 예를 들어, 제1 제어 신호(CTRL_BUS)는 LPI Request 신호일 수 있다.
단계 S220에서, 버스(120)는 PMU(110)로부터 제1 제어 신호(CTRL_BUS)를 전달받은후, PMU(110)에 응답 신호(ACK_BUS)를 전달할 수 있다. 예를 들어, 응답 신호는 ACK 신호일 수 있다.
단계 S230에서, 버스 컨트롤러(123)는 버스(120)에 남아있는 잔여 트랜잭션을, 메인 버스 회로(121)에서 라이트 버스 회로(122)로 이동시킬 수 있다.
단계 S240에서, PMU(110)는 전력 제어 회로(130)에 제2 제어 신호(CTRL_PCC)를 전달할 수 있다. 예를 들어, 제2 제어 신호(CTRL_PCC)는 전력 제어 신호일 수 있다.
단계 S250에서, 전력 제어 회로(130)가 PMU(110)의 제어에 응답하여 전원 관리 집적 회로로부터 버스(120)에 공급되는 전력을 감소시키거나 차단함으로써, 시스템 온 칩의 버스 파워 게이팅이 수행될 수 있다.
도 10은 본 개시의 예시적 실시 예에 따른 파워 게이팅 응답시간을 나타내기 위한 도면이다. 도 10은 도 1 및 도 8, 도 9를 참조하여 설명될 것이다.
구체적으로, 도 10은 도 9의 파워 게이팅 방법에 따라 PMU(110)가 버스(120)로 신호(REQn)가 전달되는 시점 및 버스(120)에 공급되는 파워(PWR)가 감소되거나 또는 차단되는 시점을 도시하기 위한 타이밍도 이다. 예시적 실시 예에 있어서, REQn은 PMU(110a)와 버스(120a)간에 LPI Request를 전달하는 단자의 논리 레벨을 나타날 수 있다.
예를 들어, LPI Request가 전달되면 REQn은 논리 레벨이 로우가 될 수 있다. PWR은 버스에 공급되는 전력을 나타낼 수 있다. 논리 레벨이 하이일 때는 메인 전원에 의해 전원을 공급받고 있는 상태를 의미할 수 있고, 논리 레벨이 로우일 때는 메인 전원에 의해 전원을 공급받지 않는 상태를 의미할 수 있다.
예를 들어, 논리 레벨이 로우일 때는 전원 공급이 끊긴 상태 또는 보조 전원에 의해 전원을 공급받고 있는 상태를 의미할 수 있다.
도 10을 참조하면, PMU(110)가 버스(120)에 제1 제어 신호(CTRL_BUS)로써 LPI Request 신호를 전달할 수 있다. PMU(110)는 버스(120)에 대한 파워 게이팅을 수행하기 위해, 제3 시간(T3)에 버스(120)로 LPI Request를 전달할 수 있다. 버스(120)는 PMU(110)로부터 LPI Request를 수신한 뒤, 즉시 응답 신호(ACK_BUS)로써 ACK 신호를 PMU(110)으로 전달할 수 있다. 따라서 도 8과 달리 잔여 트랜잭션의 처리가 완료되기 전에 버스에 공급되는 전원을 메인 전원(MAIN_PWR)에서 보조 전원(AON_PWR)으로 변경할 수 있으므로, 제4 시간(T4)에 버스에 공급되는 전력의 감소 또는 차단을 할 수 있다. 제3 시간(T3)부터 제4 시간(T4)까지의 구간(tb)은 파워 게이팅 응답 시간을 나타낼 수 있다. 도 10의 파워 게이팅 응답시간(tb)은 버스 컨트롤러(123)가 버스(120)의 잔여 트랜잭션을 메인 버스 회로(121)에서 라이트 버스 회로(122)로 이동시키는데 걸리는 시간이 될 수 있다. 따라서 도 10의 파워 게이팅 응답시간(tb)은 도 8의 파워 게이팅 응답 시간(ta)보다 짧을 수 있다.
도 11은 본 개시의 예시적 실시 예에 따른 시스템 온 칩의 파워 게이팅 방법을 도시한 흐름도이다. 도 11은 도 1을 참조하여 설명될 것이다.
도 11을 참조하면, 단계 S310에서 버스(120)는 IP 블록(141, 142)들에 의한트랜잭션을 메인 버스 회로(121)와 라이트 버스 회로(122)를 이용하여 처리할 수 있다. 도면에는 도시되지 않았으나 시스템 온 칩(10)은 중앙 처리 장치(CPU; central processing unit)를 포함할 수 있다. 시스템 온 칩(10)의 중앙 처리 장치는 버스(120)가 처리중인 트랜잭션의 양을 라이트 버스 회로(122)가 처리 가능한 트랜잭션의 한계치인 트랜잭션 임계값과 비교할 수 있다. 예시적 실시 예에 있어서, 메인 버스 회로(121)가 처리 할 수 있는 트랜잭션 임계값은 라이트 버스 회로(122)가 처리 할 수 있는 트랜잭션 임계값보다 더 클 수 있다.
단계 S320에서, PMU(110)는 단계 S310에서의 비교 결과에 기초하여 제1 제어 신호(CTRL_BUS)를 생성할 수 있다. 단계 S310에서 중앙 처리 장치가 버스(120)가 처리해야하는 트랜잭션의 양이 라이트 버스 회로(122)의 트랜잭션 임계값보다 작다고 판단한 경우, PMU(110)는 제1 제어 신호(CTRL_BUS)를 생성하여 버스(120)에 전달할 수 있다. 예를 들어, 제1 제어 신호(CTRL_BUS)는 버스(120)에 공급되는 전압을 낮추기 위한 제어 신호인 LPI Request일 수 있다. 예시적 실시 예에 있어서, 제1 제어 신호(CTRL_BUS)는 버스 컨트롤러(123)가 수신할 수 있다.
단계 S320에서, 단계 S310에서 중앙 처리 장치가 버스(120)가 처리해야하는 트랜잭션의 양이 라이트 버스 회로(122)의 트랜잭션 임계값보다 같거나 크다고 판단한 경우, PMU(110)는 제1 제어 신호(CTRL_BUS)를 버스(120)에 전달하지 않을 수 있고, 따라서 파워 게이팅은 종료될 수 있다.
단계 S330에서, 버스(120)는 PMU(110)의 제1 제어 신호(CTRL_BUS)에 응답하여 PMU(110)에 응답 신호(ACK_BUS)를 전달할 수 있다. 예를 들어, 응답 신호(ACK_BUS)는 ACK 신호일 수 있다. 예시적 실시 예에 있어서, 버스(120)가 PMU(110)의 제1 제어 신호(CTRL_BUS)에대해 응답 신호(ACK_BUS)를 전달하기에 앞서 잔여 트랜잭션의 처리가 수행되지 않을 수 있고, 따라서 버스(120)가 응답 신호(ACK_BUS)를 전달하는 시점은 제1 제어 신호 수신 직후일 수 있다.
단계 S340에서, 버스(120)는 잔여 트랜잭션을 라이트 버스 회로(122)로 이동시킬 수 있다. 버스(120)는 트랜잭션의 처리가 라이트 버스 회로(122)에서 이루어지도록 트랜잭션을 메인 버스 회로(121)와 라이트 버스 회로(122)간에 이동시킬 수 있다. 구체적으로, 트랜잭션의 이동은 버스 컨트롤러(123)에 의해 이루어질 수 있다. 예시적 실시 예에 있어서, 잔여 트랜잭션의 처리는 메인 버스 회로(121)만을 이용하여 수행될 수도 있고, 라이트 버스 회로(122)만을 이용하여 수행될 수도 있고, 메인 버스 회로(121)와 라이트 버스 회로(122)를 모두 이용하여 수행될 수도 있다. 예시적 실시 예에 있어서, 버스(120)가 PMU(110)로부터 LPI Request신호를 수신하기 전에 버스(120)가 메인 버스 회로(121)와 라이트 버스 회로(122)를 모두 이용하여 트랜잭션을 처리하고 있는경우, 버스 컨트롤러(123)는 PMU(110)의 LPI Request에 따라 버스(120)에 공급되는 전력을 줄이기 위해, 트랜잭션의 처리가 라이트 버스 회로(122)만을 이용하여 처리되도록 트랜잭션을 이동시킬 수 있다. 예시적 실시 예에 있어서, 버스(120)가 PMU(110)로부터 LPI Request신호를 수신하기 전에 버스(120)가 메인 버스 회로(121)를 이용하여 트랜잭션을 처리하고 있는경우, 버스 컨트롤러(123)는 PMU(110)의 LPI Request에 따라 버스(120)에 공급되는 전력을 줄이기 위해, 트랜잭션의 처리가 라이트 버스 회로(122)만을 이용하여 처리되도록 트랜잭션을 이동시킬 수 있다.
단계 S350에서, PMU(110)는 전력 제어 회로(130)에 제2 제어 신호(CTRL_PCC)를 전달할 수 있다. 예를 들어, 제2 제어 신호(CTRL_PCC)는 버스(120)에 공급되는 전원을 조절하기 위한 전력 조절 신호일 수 있다. 전력 제어 회로(130)는 PMU(110)의 제2 제어 신호(CTRL_PCC)에 응답하여 버스(120)에 공급되는 전력을 조절할 수 있다. 제2 제어 신호(CTRL_PCC)는 메인 버스 파워 스위치(131)에 대한 제어 신호, 라이트 버스 파워 스위치(132)에 대한 제어 신호, 전력 경로 컨트롤러(133)에 대한 제어신호를 포함할 수 있다. 예시적 실시 예에 있어서, 단계 S350은 버스(120)가 유휴 상태(idle)일때 수행될 수 있다. 단계 S350은 도 12를 참조하여 보다 자세히 설명된다.
도 12는 도 11의 단계 S350을 구체적으로 설명하기 위한 순서도이다. 도 12는 도 1을 참조하여 설명될 것이다.
도 12를 참조하면, 단계 S351에서, PMU(110)의 제2 제어 신호(CTRL_PCC)를 수신한 전력 제어 회로(130)는, 전력 경로 컨트롤러(133)를 통해 라이트 버스 회로(122)로 공급되는 전원이 변경되도록할 수 있다. 예를 들어, 전력 경로 컨트롤러(133)는 메인 전원(MAIN_PWR)과 보조 전원(AON_PWR)을 라이트 버스 회로(122)로 선택적으로 제공하거나, 어떠한 전원도 라이트 버스 회로(122)로 출력되지 않도록 라이트 버스 회로(122)에 공급되는 전원을 제어할 수 있다. 예시적 실시 예에 있어서, PMU(110)의 제2 제어 신호(CTRLPCC)를 수신한 전력 제어 회로(130)는, 전력 경로 컨트롤러(133)를 통해 라이트 버스 회로(122)로 공급되는 전원이 메인 전원(MAIN_PWR)에서 보조 전원(AON_PWR)이 되도록 제어할 수 있다.
단계 S352에서, PMU(110)의 제2 제어 신호(CTRL_PCC)를 수신한 전력 제어 회로(130)는, 제2 제어 신호(CTRL_PCC)에 응답하여 메인 버스 파워 스위치(131)를 통해 메인 버스 회로(121)로 공급되는 메인 전원(MAIN_PWR)을 차단할 수 있다.
단계 S353에서, PMU(110)의 제2 제어 신호(CTRL_PCC)를 수신한 버스 컨트롤러(123)는, 라이트 버스 회로(122)가 잔여 트랜잭션을 처리중인지 판단할 수 있다.
단계 S354에서, 단계 S353에서 라이트 버스 회로(122)에 잔여 트랜잭션의 처리가 진행중인 경우, 전력 제어 회로(130)는 라이트 버스 파워 스위치(132)를 차단하지 않고, 라이트 버스 회로(122)가 잔여 트랜잭션의 처리를 완료할 때 까지 대기할 수 있다.
단계 S355에서, 라이트 버스 회로(122)가 잔여 트랜잭션의 처리를 완료한 경우, 전력 제어 회로(130)는 라이트 버스 파워 스위치(132)를 통해 라이트 버스 회로로 공급되는 보조 전원(AON_PWR)을 차단할 수 있다. 예시적 실시 예에 있어서, 라이트 버스 파워 스위치(132)를 통해 라이트 버스 회로로 메인 전원(MAIN_PWR)이 공급되는 경우, 라이트 버스 파워 스위치(132)는 메인 전원(MAIN_PWR)의 공급을 차단할 수 있다.
도 13은 본 개시의 예시적 실시 예에 따른 전자 장치를 도시하는 블록도이다.
도 13을 참조하면, 전자 장치(1)는 이동 전화기, 스마트폰, 태블릿 PC (tablet personal computer), PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(portable multimedia player), PND(personal navigation device 또는 portable navigation device), 휴대 가능한 게임 콘솔(handheld game console), 또는 e-북(e-book)과 같이 휴대 가능한 장치(handheld device)로 구현될 수 있다.
전자 장치(1)는 시스템 온 칩(1000), 외부 메모리(1850), 디스플레이 장치(1550), 및 전원 관리 집적 회로(PMIC; power management integrated circuit)(1950)를 포함할 수 있다.
시스템 온 칩(1000)은 중앙 처리 장치(CPU; central processing unit)(1100), 클럭 관리 유닛(CMU; clock management unit)(1200), 그래픽 처리 장치(GPU; Graphics Processing Unit)(1300), 타이머(1400), 디스플레이 컨트롤러(1500), RAM(random access memory)(1600), ROM(read only memory)(1700), 메모리 컨트롤러(1800), 전력 관리 유닛(PMU; Power Management Unit), 및 버스(1050)를 포함할 수 있다. 시스템 온 칩(1000)은 도시된 구성 요소 이외에 다른 구성 요소들을 더 포함할 수 있다. 예를 들어, 전자 장치(1)는 디스플레이 장치(1550), 외부 메모리(1850), 및 PMIC(1950)를 더 포함할 수 있다. PMIC(1950)가 시스템 온 칩(1000)의 외부에 구현될 수 있다. 하지만, 이에 한정되는 것은 아니며, 시스템 온 칩(1000)은 PMIC(1950)의 기능을 수행할 수 있는 전력 관리 유닛(PMU; power management unit)을 포함할 수도 있다.
CPU(1100)는 프로세서(processor)라고도 불릴 수 있고, 외부 메모리(1850)에 저장된 프로그램들 및/또는 데이터를 처리 또는 실행할 수 있다. 예컨대, CPU(1100)는 CMU(1200)로부터 출력된 동작 클럭 신호에 응답하여 프로그램들 및/또는 데이터를 처리 또는 실행할 수 있다.
CPU(1100)는 멀티-코어 프로세서(multi-core processor)로 구현될 수 있다. 멀티-코어 프로세서는 두 개 또는 그 이상의 독립적인 실질적인 프로세서들('코어들(cores)'이라고 불림)을 갖는 하나의 컴퓨팅 컴포넌트(computing component)이고, 프로세서들 각각은 프로그램 명령들(program instructions)을 읽고 실행할 수 있다. ROM(1700), RAM(1600), 및/또는 외부 메모리(1850)에 저장된 프로그램들 및/또는 데이터는 필요에 따라 CPU(1100)의 메모리(미도시)에 로드(load)될 수 있다.
CMU(1200)는 동작 클럭 신호를 생성한다. CMU(1200)는 위상 동기 루프(PLL; phase locked loop), 지연 동기 루프(DLL; delayed locked loop), 또는 크리스탈 오실레이터 등과 같은 클럭 신호 생성 장치를 포함할 수 있다.
동작 클럭 신호는 GPU(1300)로 공급될 수 있다. 물론, 동작 클럭 신호는 다른 구성 요소(예컨대, CPU(1100) 또는 메모리 컨트롤러(1800) 등)로 공급될 수도 있다. CMU(1200)는 동작 클럭 신호의 주파수를 변경할 수 있다.
GPU(1300)는 메모리 컨트롤러(1800)에 의해 외부 메모리(1850)로부터 리드 된 데이터(read data)를 디스플레이 장치(1550)에 적합한 신호로 변환할 수 있다.
타이머(1400)는 CMU(1200)로부터 출력된 동작 클럭 신호에 기초하여 시간을 나타내는 카운트 값을 출력할 수 있다.
디스플레이 장치(1550)는 디스플레이 컨트롤러(1500)로부터 출력된 이미지 신호들을 디스플레이할 수 있다. 예컨대, 디스플레이 장치(1550)는 LCD(liquid crystal display), LED(light emitting diode) 디스플레이, OLED(organic LED) 디스플레이, AMOLED(active-matrix OLED) 디스플레이, 또는 플렉시블(flexible) 디스플레이로 구현될 수 있다. 디스플레이 컨트롤러(1500)는 디스플레이 장치(1550)의 동작을 제어할 수 있다.
RAM(1600)은 프로그램들, 데이터, 또는 명령들(instructions)을 일시적으로 저장할 수 있다. 예컨대, 메모리에 저장된 프로그램들 및/또는 데이터는 CPU(1100)의 제어에 따라 또는 ROM(1700)에 저장된 부팅 코드(booting code)에 따라 RAM(1600)에 일시적으로 저장될 수 있다. RAM(1600)은 DRAM(dynamic RAM) 또는 SRAM(static RAM)으로 구현될 수 있다.
ROM(1700)은 영구적인 프로그램들 및/또는 데이터를 저장할 수 있다. ROM(1700)은 EPROM(erasable programmable read-only memory) 또는 EEPROM (electrically erasable programmable read-only memory)으로 구현될 수 있다.
메모리 컨트롤러(1800)는 인터페이스를 통해 외부 메모리(1850)와 통신할 수 있다. 메모리 컨트롤러(1800)는 외부 메모리(1850)의 동작을 전반적으로 제어하며, 호스트와 외부 메모리(1850) 사이의 데이터 교환을 제어한다. 예컨대, 메모리 컨트롤러(1800)는 호스트의 요청에 따라 외부 메모리(1850)에 데이터를 쓰거나 외부 메모리(1850)로부터 데이터를 읽을 수 있다. 여기서, 호스트는 CPU(1100), GPU(1300), 또는 디스플레이 컨트롤러(1500)와 같은 마스터(master) 장치일 수 있다.
외부 메모리(1850)는 데이터를 저장하기 위한 저장 매체(storage medium)로서, OS(Operating System), 각종 프로그램들, 및/또는 각종 데이터를 저장할 수 있다. 외부 메모리(1850)는 예컨대 DRAM일수 있으나 이에 한정되는 것은 아니다. 예를 들어, 외부 메모리(1850)는 비휘발성 메모리 장치(예컨대, 플래시 메모리, PRAM(phase change RAM), MRAM(magnetic RAM), RRAM (resistive RAM), 또는 FeRAM 장치)일 수도 있다. 본 발명의 다른 실시 예에서 외부 메모리(1850)는 시스템 온 칩(1000)의 내부에 구비되는 내장 메모리일 수 있다. 또한, 외부 메모리(1850)는 플래시 메모리, eMMC(embedded multimedia card), 또는 UFS(universal flash storage)일 수 있다.
PMU(1910)는 시스템 온 칩(1000)에 연결된 각 장치들이 동작하기 위해 필요한 전압을 제어할 수 있다.
CPU(1100), CMU(1200), GPU(1300), 타이머(1400), 디스플레이 컨트롤러(1500), RAM(1600), ROM(1700), 메모리 컨트롤러(1800), 전력 제어 회로(1900), PMU(1910) 각각은 버스(1050)를 통하여 서로 통신할 수 있다.
도 14는 본 개시의 다른 실시예에 따른 전자 장치를 도시하는 블록도이다.
도 14를 참조하면, 전자 장치(1)는 PC(personal computer), 데이터 서버, 또는 휴대용 전자 장치로 구현될 수 있다.
전자 장치(1)는 시스템 온 칩(2000), 카메라 모듈(2100), 디스플레이(2200), 파워 소스(2300), 입출력 포트(2400), 메모리(2500), 스토리지(2600), 외부 메모리(2700), 및 네트워크 장치(2800)를 포함할 수 있다.
카메라 모듈(2100)은 광학 이미지를 전기적인 이미지로 변환할 수 있는 모듈을 의미한다. 따라서, 카메라 모듈로부터 출력된 전기적인 이미지는 스토리지(2600), 메모리(2500), 또는 외부 메모리(2700)에 저장될 수 있다. 또한, 카메라 모듈로부터 출력된 전기적인 이미지는 디스플레이(2200)를 통하여 표시될 수 있다.
디스플레이(2200)는 스토리지(2600), 메모리(2500), 입출력 포트(2400), 외부 메모리(2700), 또는 네트워크 장치(2800)로부터 출력된 데이터를 디스플레이(2200)할 수 있다. 디스플레이(2200)는 도 13에 도시된 디스플레이 장치(1550)일 수 있다.
파워 소스(2300)는 구성 요소들 중 적어도 하나로 동작 전압을 공급할 수 있다. 파워 소스(2300)는 도 13에 도시된 PMIC(1950)에 의해 제어될 수 있다.
입출력 포트(2400)는 전자 장치(1)로 데이터를 전송하거나 또는 전자 장치(2)로부터 출력된 데이터를 외부 장치로 전송할 수 있는 포트들을 의미한다. 예컨대, 입출력 포트(2400)는 컴퓨터 마우스와 같은 포인팅 장치(pointing device)를 접속하기 위한 포트, 프린터를 접속하기 위한 포트, 또는 USB 드라이브를 접속하기 위한 포트일 수 있다.
메모리(2500)는 휘발성 메모리 또는 비휘발성 메모리로 구현될 수 있다. 실시 예에 따라, 메모리(2500)에 대한 데이터 액세스 동작, 예컨대, 리드 동작, 라이트 동작(또는 프로그램 동작), 또는 이레이즈 동작을 제어할 수 있는 메모리 컨트롤러는 시스템 온 칩(2000)에 집적 또는 내장될 수 있다. 다른 실시 예에 따라, 메모리 컨트롤러는 시스템 온 칩(2000)과 메모리(2500) 사이에 구현될 수 있다.
스토리지(2600)는 하드디스크 드라이브(hard disk drive) 또는 SSD(solid state drive)로 구현될 수 있다.
외부 메모리(2700)는 SD(secure digital) 카드 또는 MMC(multimedia card)로 구현될 수 있다. 실시 예에 따라, 외부 메모리(2700)는 SIM(subscriber identification module) 카드 또는 USIM(universal subscriber identity module) 카드일 수 있다.
네트워크 장치(2800)는 전자 장치(1)를 유선 네트워크 또는 무선 네트워크에 접속시킬 수 있는 장치를 의미한다.
이상에서와 같이 도면과 명세서에서 예시적인 실시 예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시 예들이 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (10)

  1. PMU(Power Management Unit), 전력 제어 회로, 및 메인 버스 회로와 라이트 버스 회로를 포함하는 버스(bus)를 포함하는 시스템 온 칩(System On Chip)의 파워 게이팅 방법에 있어서,
    상기 PMU가 상기 버스에 제1 제어 신호를 전달하는 단계;
    상기 버스가 상기 제1 제어 신호에 응답하여 상기 PMU에 응답 신호를 전달하는 단계;
    상기 버스가 트랜잭션(transaction)을 상기 라이트 버스 회로로 이동시키는 단계; 및
    상기 PMU가 상기 응답 신호를 기초로 제2 제어 신호를 상기 전력 제어 회로로 전달함으로써 상기 버스에 제공되는 전력을 조절하는 단계를 포함하는 시스템 온 칩의 파워 게이팅 방법.
  2. 제 1항에 있어서,
    상기 PMU가 상기 버스에 제1 제어 신호를 전달하는 단계는,
    상기 버스가 처리중인 트랜잭션의 양과 상기 라이트 버스 회로의 트랜잭션 임계값의 비교 결과를 기초로 상기 PMU가 상기 제1 제어 신호를 생성하는 단계를 포함하는 시스템 온 칩의 파워 게이팅 방법.
  3. 제 2항에 있어서,
    상기 PMU가 상기 버스에 제1 제어 신호를 전달하는 단계는,
    상기 버스가 처리중인 트랜잭션의 양이 상기 임계값보다 작은 경우에 상기 PMU가 상기 제1 제어 신호를 상기 버스에 제공하는 단계를 포함하는 시스템 온 칩의 파워 게이팅 방법.
  4. 제 1항에 있어서,
    상기 버스에 제공되는 전력을 조절하는 단계는,
    상기 전력 제어 회로가 상기 제2 제어 신호에 응답하여 제1 전원 또는 제2 전원을 상기 라이트 버스 회로에 선택적으로 제공하는 단계를 포함하는 시스템 온 칩의 파워 게이팅 방법.
  5. 제 4항에 있어서,
    상기 전력 제어 회로가 상기 제2 제어 신호에 응답하여 제1 전원 또는 제2 전원을 상기 라이트 버스 회로에 선택적으로 제공하는 단계는,
    상기 전력 제어 회로가 상기 제2 제어 신호에 응답하여 상기 메인 버스 회로에 제공되는 전원을 차단하는 단계를 포함하는 시스템 온 칩의 파워 게이팅 방법.
  6. 시스템 온 칩으로서,
    메인 버스 회로와 라이트 버스 회로를 포함하며, 상기 메인 버스 회로와 상기 라이트 버스 회로를 통해 트랜잭션을 처리하고, 상기 라이트 버스 회로의 트랜잭션 임계값에 기초하여 잔여 트랜잭션(pending transaction)이 상기 라이트 버스 회로에서 처리되도록 구성되는 버스;
    메인 버스 파워 스위치, 라이트 버스 파워 스위치 및 전력 경로 컨트롤러를 포함하며, 상기 버스에 공급되는 전력을 제어하도록 구성되는 전력 제어 회로; 및
    상기 트랜잭션의 양에 기초하여 제1 제어 신호 및 제2 제어 신호를 생성하고, 상기 제1 제어 신호를 상기 버스에 전달하여 상기 버스의 동작을 제어하고, 상기 제2 제어 신호를 상기 전력 제어 회로에 전달하여 상기 전력 제어 회로의 동작을 제어하도록 구성되는 PMU를 포함하는 시스템 온 칩.
  7. 제 6항에 있어서,
    상기 전력 경로 컨트롤러는,
    상기 제2 제어 신호에 응답하여, 상기 버스로 공급되는 제1 전원과 제2 전원중 적어도 하나의 전원을 선택하고, 선택된 적어도 하나의 전원을 상기 라이트 버스 회로에 공급하는 것을 특징으로 하는 시스템 온 칩.
  8. 제 6항에 있어서,
    상기 트랜잭션의 양이 상기 임계값보다 같거나 큰 경우,
    상기 버스는 상기 트랜잭션을 상기 메인 버스 회로와 상기 라이트 버스 회로를 이용하여 처리하고,
    상기 전력 제어 회로는 상기 버스에 메인 전력을 공급하는 것을 특징으로 하는 시스템 온 칩.
  9. 제 6항에 있어서,
    상기 트랜잭션의 양이 상기 임계값보다 작은 경우,
    상기 버스는 잔여 트랜잭션을 상기 라이트 버스 회로를 이용하여 처리하고,
    상기 전력 제어 회로는 상기 PMU의 제어에 따라 상기 버스에 제2 전원을 공급하고, 상기 메인 버스 파워 스위치를 제어하여 제1 전원의 공급을 차단하는것을 특징으로 하는 시스템 온 칩.
  10. 버스(bus)로서,
    상기 버스의 트랜잭션을 처리하는 메인 버스 회로(main bus circuit) 및 라이트 버스 회로(light bus circuit)을 포함하고,
    상기 트랜잭션의 양이 상기 라이트 버스 회로의 트랜잭션 임계값보다 같거나 큰 경우, 상기 메인 버스 회로와 상기 라이트 버스 회로를 이용하여 상기 트랜잭션을 처리하고,
    상기 트랜잭션의 양이 상기 임계값보다 작은 경우, 상기 라이트 버스 회로를 이용하여 잔여 트랜잭션을 처리하도록 구성되는 것을 특징으로 하는 버스.
KR1020220069112A 2022-02-25 2022-06-07 시스템 온 칩, 그것의 버스 파워 게이팅 방법 및 시스템 KR20230127824A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US18/159,787 US20230273630A1 (en) 2022-02-25 2023-01-26 System on chip, bus power gating method thereof, and bus power gating system
CN202310162951.8A CN116661582A (zh) 2022-02-25 2023-02-24 片上系统、该片上系统的总线电力门控方法和总线

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220025513 2022-02-25
KR20220025513 2022-02-25

Publications (1)

Publication Number Publication Date
KR20230127824A true KR20230127824A (ko) 2023-09-01

Family

ID=87975068

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220069112A KR20230127824A (ko) 2022-02-25 2022-06-07 시스템 온 칩, 그것의 버스 파워 게이팅 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR20230127824A (ko)

Similar Documents

Publication Publication Date Title
US10991446B2 (en) Electronic device performing training on memory device by rank unit and training method thereof
KR102060430B1 (ko) 웨이크-업 시간을 줄일 수 있는 시스템 온 칩. 애플리케이션 프로세서, 및 상기 시스템 온 칩을 포함하는 컴퓨터 시스템
CN107621959B (zh) 电子装置及其软件训练方法、计算系统
US9092150B2 (en) Systems and methods of performing a data save operation
US9766647B2 (en) Clock circuit for generating clock signal and semiconductor integrated circuit device including the same
US9588915B2 (en) System on chip, method of operating the same, and apparatus including the same
US11693466B2 (en) Application processor and system on chip
TWI785249B (zh) 初始化方法及關聯控制器、記憶體裝置及主機
US9996398B2 (en) Application processor and system on chip
KR102225313B1 (ko) 데이터 저장 장치의 동작 방법
US11960728B2 (en) Interface circuit, memory device, storage device, and method of operating the memory device
KR20140021283A (ko) 다중 dvfs 정책을 이용한 soc 및 이의 동작 방법
KR20230127824A (ko) 시스템 온 칩, 그것의 버스 파워 게이팅 방법 및 시스템
US10216421B2 (en) Method of operating storage device using serial interface and method of operating data processing system including the same
US20210004176A1 (en) Semiconductor system and method for operating semiconductor system
US20230273630A1 (en) System on chip, bus power gating method thereof, and bus power gating system
CN116661582A (zh) 片上系统、该片上系统的总线电力门控方法和总线
US20150052374A1 (en) Data storage device and data processing system including the same
US11899974B2 (en) Method and apparatus for performing automatic setting control of memory device in predetermined communications architecture with aid of auxiliary setting management
US20240036627A1 (en) System on chip and semiconductor device including the same