KR20070080307A - Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법 - Google Patents

Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법 Download PDF

Info

Publication number
KR20070080307A
KR20070080307A KR1020060011501A KR20060011501A KR20070080307A KR 20070080307 A KR20070080307 A KR 20070080307A KR 1020060011501 A KR1020060011501 A KR 1020060011501A KR 20060011501 A KR20060011501 A KR 20060011501A KR 20070080307 A KR20070080307 A KR 20070080307A
Authority
KR
South Korea
Prior art keywords
master
memory device
memory
main bus
bus
Prior art date
Application number
KR1020060011501A
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 KR1020060011501A priority Critical patent/KR20070080307A/ko
Priority to US11/583,254 priority patent/US20070186026A1/en
Priority to TW095146397A priority patent/TW200745871A/zh
Priority to CNA2006101565673A priority patent/CN101017466A/zh
Publication of KR20070080307A publication Critical patent/KR20070080307A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47FSPECIAL FURNITURE, FITTINGS, OR ACCESSORIES FOR SHOPS, STOREHOUSES, BARS, RESTAURANTS OR THE LIKE; PAYING COUNTERS
    • A47F3/00Show cases or show cabinets
    • A47F3/004Show cases or show cabinets adjustable, foldable or easily dismountable
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47FSPECIAL FURNITURE, FITTINGS, OR ACCESSORIES FOR SHOPS, STOREHOUSES, BARS, RESTAURANTS OR THE LIKE; PAYING COUNTERS
    • A47F11/00Arrangements in shop windows, shop floors or show cases
    • A47F11/02Removable walls, scaffolding or the like; Pillars; Special curtains or the like
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47FSPECIAL FURNITURE, FITTINGS, OR ACCESSORIES FOR SHOPS, STOREHOUSES, BARS, RESTAURANTS OR THE LIKE; PAYING COUNTERS
    • A47F3/00Show cases or show cabinets
    • A47F3/002Devices for protection against sunlight or theft
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05FDEVICES FOR MOVING WINGS INTO OPEN OR CLOSED POSITION; CHECKS FOR WINGS; WING FITTINGS NOT OTHERWISE PROVIDED FOR, CONCERNED WITH THE FUNCTIONING OF THE WING
    • E05F15/00Power-operated mechanisms for wings
    • E05F15/60Power-operated mechanisms for wings using electrical actuators
    • E05F15/603Power-operated mechanisms for wings using electrical actuators using rotary electromotors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05YINDEXING SCHEME ASSOCIATED WITH SUBCLASSES E05D AND E05F, RELATING TO CONSTRUCTION ELEMENTS, ELECTRIC CONTROL, POWER SUPPLY, POWER SIGNAL OR TRANSMISSION, USER INTERFACES, MOUNTING OR COUPLING, DETAILS, ACCESSORIES, AUXILIARY OPERATIONS NOT OTHERWISE PROVIDED FOR, APPLICATION THEREOF
    • E05Y2900/00Application of doors, windows, wings or fittings thereof
    • E05Y2900/20Application of doors, windows, wings or fittings thereof for furniture, e.g. cabinets

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)
  • Storage Device Security (AREA)

Abstract

CPU의 성능 향상을 위한 시스템과 그 방법이 개시된다. 상기 시스템은 상기 CPU와 같은 제1마스터, 메모리 장치가 접속된 제1로컬버스, 브리지, 및 제2마스터와 주변장치가 접속된 메인 버스를 구비한다. 상기 브리지는 상기 제1마스터와 상기 메모리 장치와 상기 메인버스 사이에 접속된다. 상기 브리지는 래퍼 기능 이외에 상기 제1마스터로부터 출력된 어드레스를 디코딩하는 기능, 상기 메인버스의 소유권 상태를 모니터링하는 기능, 및 상기 디코딩 결과와 상기 모니터링 결과에 기초하여 상기 제1마스터로 대기신호를 출력하는 기능을 구비한다. 상기 제2마스터가 상기 메인 버스를 통하여 상기 주변장치를 액세스하는 경우라도 상기 제1마스터는 상기 제1로컬 버스를 통하여 상기 메모리 장치를 액세스할 수 있다. 상기 메모리 장치는 소정의 데이터를 저장하기 위한 메모리 코어와 중재 기능을 수행하는 컨트롤러를 구비한다.
메인버스, 중재, 브리지(bridge)

Description

CPU의 성능 향상을 위한 버스 구조를 갖는 시스템과 성능 향상방법{System having bus architecture for improving CPU performance and method using the same}
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 플래시 메모리 장치를 내장하는 종래의 MCU 시스템의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 버스 구조를 갖는 시스템의 블록도이다.
본 발명은 CPU의 성능향상을 위한 방법과 시스템에 관한 것으로, 보다 상세하게는 DMA와 같은 마스터가 메인버스에 대한 소유권을 가지는 구간에서도 CPU의 성능을 최적화할 수 있는 방법과 장치에 관한 것이다.
플레쉬 메모리 장치를 내장하는 MCU(micro control unit) 시스템은 상기 플레쉬 메모리 장치에서 1-사이클 코드 액세스가 가능하므로, CPU는 캐시(또는 캐시 메모리)를 구비하지 않는 구조를 갖는다.
도 1은 플래시 메모리 장치를 내장하는 종래의 MCU 시스템의 블록도이다.
도 1을 참조하면, 상기 시스템(100)의 메인버스(107)에는 CPU(101), 플래시 메모리 장치(103), SRAM 장치(105), DMA(109), 주변장치(111), 및 중재기(113)가 접속된다.
상기 중재기(113)의 중재에 의하여 상기 DMA(109)가 상기 메인버스(107)에 대한 소유권(ownership)을 가질 때, 상기 CPU(101)가 상기 메인버스(107)를 통하여 상기 플래시 메모리 장치(103) 또는 SRAM 장치(105)를 액세스하고자 하는 경우, 상기 CPU(101)는 상기 DMA(109)가 상기 메인버스(107)에 대한 소유권을 상실할 때까지 홀드(hold) 상태를 유지해야 한다.
또한, 상기 DMA(109)가 주변장치(111)와 상기 메인 버스(107)를 통하여 데이터를 주고받는 경우, 캐시(또는 캐시 메모리)가 없는 상기 CPU(101)는 상기 DMA(109)가 상기 메인버스(107)에 대한 소유권을 상실할 때까지 홀드 상태를 유지해야 한다.
즉, 상기 DMA(109)가 상기 메인버스(107)를 통하여 상기 주변장치(111)를 액세스하는 경우, 상기 CPU(101)는 상기 플래시 메모리 장치(103) 또는 SRAM 장치(105)에 대한 상기 DMA(109)의 액세스가 없음에도 불구하고 상기 DMA(109)가 상기 메인버스(107)에 대한 소유권을 상실할 때까지 홀드 상태를 유지해야 한다.
상술한 바와 같이 상기 CPU(101)의 불필요한 홀드는 상기 시스템(100)의 성능을 떨어뜨리는 문제점이 있다.
따라서 본 발명이 이루고자 하는 기술적인 과제는 DMA와 같은 마스터가 메인 버스에 대한 소유권을 가지는 구간에서 CPU와 같은 마스터의 성능을 최적화할 수 있는 방법과 장치를 제공하는 것이다.
상기 기술적 과제를 달성하기 위한 CPU의 성능 향상을 위한 시스템은 제1마스터, 메모리 장치가 접속된 제1로컬버스, 브리지, 및 제2마스터와 주변장치가 접속된 메인 버스를 구비한다. 상기 브리지는 상기 제1마스터와 상기 메모리 장치와 상기 메인버스 사이에 접속된다.
상기 브리지는 래퍼 기능 이외에 상기 제1마스터로부터 출력된 어드레스를 디코딩하는 기능, 상기 메인버스의 소유권 상태를 모니터링하는 기능, 및 상기 디코딩 결과와 상기 모니터링 결과에 기초하여 상기 제1마스터로 대기신호를 출력하는 기능을 구비한다.
상기 제2마스터가 상기 메인 버스를 통하여 상기 주변장치를 액세스하는 경우라도 상기 제1마스터는 상기 제1로컬 버스를 통하여 상기 메모리 장치를 액세스할 수 있다.
상기 시스템은 상기 메모리 장치와 상기 메인 버스 사이에 접속된 제2로컬 버스를 더 구비한다. 상기 메모리 장치는 소정의 데이터를 저장하기 위한 메모리 코어와 중재 기능을 수행하는 컨트롤러를 구비한다. 따라서 상기 제1마스터와 상기 제2마스터가 동시에 메모리 코어를 액세스하는 경우, 상기 컨트롤러는 상기 제1마스터와 상기 제2마스터의 우선순위에 기초하여 우선순위가 높은 마스터에게는 상기 메모리 코어에 대한 액세스를 허용하고 다른 마스터에게는 대기신호를 출력한다.
또한, 상기 브리지는 상기 제2마스터가 상기 주변장치를 액세스하는 동안 상기 주변장치에 대한 액세스를 시도하는 상기 제1마스터에게 대기신호를 출력한다.
상기 제1마스터는 CPU이고 상기 제2마스터는 DMA(direct memory access)가 될 수 있다. 또한, 상기 메모리 코어는 비휘발성 메모리(예컨대, Flash 또는 ROM) 셀 또는 휘발성 메모리 셀(예컨대, DRAM 또는 SRAM)로 구현될 수 있다.
상기 기술적 과제를 달성하기 위한 CPU의 성능 향상을 위한 액세스 방법은 CPU에 접속되고, 주변장치와 DMA가 접속된 메인 버스에 접속되고, 로컬 버스를 통하여 제1메모리 장치와 제2메모리 장치에 접속된 브리지가 상기 메인 버스의 소유권에 대한 상태를 모니터링 하는 단계, 상기 브리지가 상기 CPU로부터 출력된 제1어드레스를 디코딩하는 단계, 및 상기 브리지가 상기 모니터링 결과와 상기 디코딩 결과에 기초하여 상기 CPU로 제1대기신호를 출력하거나 또는 상기 CPU로부터 출력된 제1어드레스를 상기 주변장치와 상기 제1메모리 장치와 상기 제2메모리 장치 중에서 어느 하나로 출력하는 단계를 구비한다.
또한 상기 제1메모리 장치가 컨트롤러와 소정의 데이터를 저장하기 위한 메모리 코어를 구비하는 경우, 상기 컨트롤러는 상기 제1로컬 버스를 통하여 입력된 상기 메모리 코어를 액세스하기 위한 상기 제1어드레스와 상기 DMA로부터 출력되고 제2로컬 버스를 통하여 입력된 상기 메모리 코어를 액세스하기 위한 제2어드레스를 수신하는 단계, 및 수신된 제1어드레스와 제2어드레스에 기초하여 상기 CPU의 우선순위와 상기 DMA의 우선순위를 비교하고 비교결과에 기초하여 상기 CPU와 상기 DMA 중에서 어느 하나에게는 상기 메모리 코어에 대한 액세스를 허용하고 다른 하나에 게는 대기신호를 출력하는 단계를 더 구비한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 2는 본 발명의 일실시예에 따른 버스 구조를 갖는 시스템의 블록도이다. 상기 시스템은 캠코더, 컴퓨터, 카메라가 장착된 휴대전화가 같은 영상 처리 시스템에 사용될 수 있으나 이에 한정되는 것은 아니다.
도 2를 참조하면, 본 발명에 따른 시스템(200)은 제1마스터(201), 브리지(203), 제1메모리 장치(205), 제2메모리 장치(211), 제1로컬 버스(217), 메인 버스(219), 제2마스터(221), 주변장치(223), 제2로컬 버스(225), 제3로컬버스(227), 및 중재기(229)를 구비한다.
CPU (central process unit) 또는 MCU (micro control unit)로 구현될 수 있는 제1마스터(201)는 브리지(203)를 통하여 제1메모리 장치(205)와 제2메모리 장치(211)와 주변장치 (223)중에서 어느 하나와 데이터를 주고받을 수 있다.
본 발명에 따른 상기 브리지(203)는 제1마스터(201), 제1메모리 장치(205), 제2메모리 장치(211), 및 메인 버스(219)에 접속된다.
상기 브리지(203)는 CPU 래퍼 (wrapper)기능 이외에 상기 CPU(201)로부터 출 력된 어드레스를 디코딩하는 기능, 메인 버스(219)의 소유권을 모니터링하는 기능, 및 상기 디코딩 결과와 상기 모니터링 결과에 기초하여 상기 제1마스터(201)로 제1대기신호(WT1)를 출력하는 기능을 구비한다. 상기 브리지(203)는 CPU(201)로부터 출력된 어드레스를 해석하여 상기 CPU(201)가 액세스하고자 하는 장치(205, 211, 또는 223)로 상기 어드레스를 전송한다.
상기 제1메모리 장치(205)는 소정의 데이터를 저장할 수 있는 메모리 코어(207)와 컨트롤러(209)를 구비한다.
상기 메모리 코어(207)는 DRAM 또는 SRAM 등과 같은 휘발성 메모리로 구현될 수 있다. 또한 상기 메모리 코어(207)는 플래시 메모리, ROM 등과 같은 비휘발성 메모리로 구현될 수도 있고, SFR(special function register)로 구현될 수 있으나 이에 한정되는 것은 아니다.
상기 컨트롤러(209)는 상기 제1마스터(201)와 상기 제2마스터(221)가 동시에 대응되는 버스(217과 225)를 통하여 상기 메모리 코어(207)를 액세스하는 경우, 소정의 우선순위(priority)에 따라 상기 제1마스터(201)와 상기 제2마스터(221) 중에서 어느 하나의 마스터에게는 상기 메모리 코어(207)에 대한 액세스를 허용하고 나머지 하나의 다른 마스터에게는 제2대기신호(WT2)를 출력한다. 상기 우선순위(priority)는 H/W(예컨대, 레지스터) 또는 S/W로 설정할 수 있다.
상기 제2메모리 장치(211)는 소정의 데이터를 저장할 수 있는 메모리 코어(213), 및 컨트롤러(215)를 구비한다.
상기 메모리 코어(213)는 DRAM 또는 SRAM 등과 같은 휘발성 메모리로 구현될 수 있다. 또한, 상기 메모리 코어(213)는 플래시 메모리, ROM 등과 같은 비휘발성 메모리로 구현될 수도 있고, SFR로 구현될 수 있으나 이에 한정되는 것은 아니다.
상기 컨트롤러(215)는 상기 제1마스터(201)와 상기 제2마스터(221)가 동시에 대응되는 버스(217과 227)를 통하여 상기 메모리 코어(213)를 액세스하는 경우, 소정의 우선순위에 따라 상기 제1마스터(201)와 상기 제2마스터(221) 중에서 어느 하나의 마스터에게는 상기 메모리 코어(207)에 대한 액세스를 허용하고 나머지 하나의 다른 마스터에게는 제3대기신호(WT3)를 출력한다. 즉, 상기 컨트롤러(215)는 메인 버스(219) 상에서 중재기(229)에 의한 중재시에 발생되는 추가적인 시간 손실(time loss)을 줄이기 위한 중재기능을 수행한다.
상기 제1로컬 버스(217)는 상기 브리지(203)와 제1메모리 장치(205) 사이에 그리고 상기 브리지(203)와 상기 제2메모리 장치(211) 사이에 접속된다.
상기 메인버스(219)는 AHB (advanced high-performance bus) 버스로 구현될 수 있으나 이에 한정되는 것은 아니다.
상기 제2마스터(221)는 DMA (direct memory access)로 구현될 수 있으나 이에 한정되는 것은 아니다. 상기 제2마스터(221)는 제1메모리 장치(205)와 제2메모리 장치(211)와 주변 장치(223) 중에서 어느 하나와 소정의 데이터를 주고받을 수 있다.
상기 주변장치(223)는 입출력 제어회로, WDT (watch dog timer), A/D 컨버터, UART(Universal Asynchronous Receiver/Transmitter) 중의 어느 하나가 될 수도 있다.
상기 메인 버스(219)에는 제2마스터(221)와 주변장치(223)가 접속된다. 상기 제2마스터(221)가 상기 메인 버스(219)에 대한 소유권을 갖는 경우, 상기 제2마스터(221)는 상기 메인 버스(219)를 통하여 상기 주변장치(223)와 소정의 데이터를 주고받는다.
상기 제2로컬 버스(225)는 상기 제1메모리 장치(205)와 상기 메인 버스(219) 사이에 접속된다. 따라서 제2마스터(221)는 상기 메인 버스(219) 및/또는 상기 제2로컬 버스(225)를 통하여 상기 제1메모리 장치(205)와 소정의 데이터를 주고받을 수 있다.
상기 제3로컬 버스(227)는 상기 제2메모리 장치(211)와 상기 메인 버스(219) 사이에 접속된다. 따라서 제2마스터(221)는 상기 메인 버스(219) 및/또는 상기 제3로컬 버스(227)를 통하여 상기 제2메모리 장치(211)와 소정의 데이터를 주고받을 수 있다. 다른 구현예에 따라 제1메모리 장치(205)와 제2메모리 장치(211)는 하나의 로컬 버스(225 또는 227)에 접속될 수도 있다.
중재기(229)는 소정의 우선순위에 기초하여 제1마스터(201) 또는 제2마스터(221)에게 메인 버스(219)에 대한 소유권을 중재한다. 상기 우선순위는 당업계에서 잘 알려진 바와 같은 라운드 로빈 방식 또는 고정 순위 방식 등이 있다.
도 2를 참조하여 제1마스터(201) 및/또는 제2마스터(221)가 대응되는 장치(또는 슬레이브; 205, 211, 또는 223)를 액세스하는 방법을 설명하면 다음과 같다.
첫째, 제1마스터(201)가 메인 버스(219)에 대한 소유권(또는 제어권)을 갖고 있는 경우, 상기 제1마스터(201)는 자유롭게 제1메모리 장치(205), 제2메모리 장치 (211), 또는 주변장치(223)를 액세스할 수 있다. 이 경우 시스템(200)의 성능 저하는 없다.
둘째, 제2마스터(221)가 메인 버스(219)에 대한 소유권을 갖고 있을 때, 상기 제1마스터(201)가 제1로컬 버스(217)를 통하여 제1메모리 장치(205) 또는 제2메모리 장치(211)를 액세스하는 경우(즉, 상기 제2마스터(221)가 상기 메인버스(219)에 접속된 상기 주변장치(223)를 액세스하고, 상기 제1마스터(201)가 상기 제1로컬버스(217)에 접속된 상기 제1메모리 장치(205) 또는 상기 제2메모리 장치(211)를 액세스하는 경우), 상기 제1마스터(201)는 상기 제1로컬 버스(217)에 대한 소유권을 갖고 상기 제1메모리 장치(205) 또는 상기 제2메모리 장치(211)를 액세스한다. 또한, 상기 제2마스터(221)는 상기 메인 버스(219)에 대한 소유권을 가지고 상기 주변장치(223)를 액세스한다.
셋째, 상기 제2마스터(221)가 상기 메인 버스(219)에 대한 소유권을 갖고 있을 때, 상기 제1마스터(201)와 상기 제2마스터(221)가 상기 제1메모리 장치(205)의 메모리 코어(207)를 동시에 액세스하는 경우, 컨트롤러(209)는 중재기능을 구비하고 있으므로, 상기 컨트롤러(209)는 상기 제1마스터(201)와 상기 제2마스터(221) 중에서 우선순위가 높은 마스터(예컨대, 제1마스터(201))에게는 상기 메모리 코어(207)에 대한 액세스를 허용하고 나머지 마스터 (예컨대, 제2마스터(221))에게는 제2대기신호(WT2)를 출력한다. 따라서 상기 제2마스터(221)는 상기 제2대기 신호(WT2)에 응답하여 상기 제2대기 신호(WT2)가 해제(release)될 때까지 홀드 된다.
반대로, 상기 제2마스터(221)가 상기 메모리 코어(207)를 액세스하는 경우 상기 제1마스터(201)는 상기 제2대기 신호(WT2)에 응답하여 상기 제2대기 신호(WT2)가 해제될 때까지 홀드 된다.
상기 홀드에 의하여 발생하는 지연(delay)은 단지 제1메모리 장치(205) 또는 제2메모리 장치(211)에 대한 액세스 구간에서만 발생하는 지연이기 때문에, 상기 컨트롤러(209 또는 215)의 중재에 의하여 발생된 지연은 중재기(229)에 의하여 발생되는 지연의 1/2 정도이다.
왜냐하면, 상기 제2마스터(221)가 상기 제1메모리 장치(205)와 상기 주변장치(223)를 순차적으로 액세스하는 경우, 중재기(229)에 의한 중재에 의하면 상기 제2마스터(221)가 상기 주변장치(223)를 액세스하는 구간에서도 상기 제1마스터(201)는 제1메모리 장치(205)를 액세스할 수 없다.
그러나 본 발명에 따른 시스템(200)에서는 상기 제2마스터(221)가 상기 제1메모리 장치(205)와 상기 주변장치(223)를 순차적으로 액세스하는 경우, 상기 제2마스터(221)가 상기 메인 버스(219)를 통하여 상기 주변장치(223)를 액세스하는 구간에서도 상기 제1마스터(201)는 상기 제1로컬 버스(217)를 통하여 제1메모리 장치(205)를 액세스할 수 있다. 따라서 본 발명에 따른 시스템(200)의 성능은 증가한다.
상기 제2메모리 장치(221)의 컨트롤러(215)의 기능과 상기 제1메모리 장치(205)의 컨트롤러(209)의 기능은 동일하므로, 당업자는 상기 제2메모리 장치(221)의 컨트롤러(215)의 기능을 용이하게 이해할 수 있을 것이다.
넷째, 상기 제2마스터(221)가 메인 버스(219)에 대한 소유권을 갖고 있을 때 , 상기 제1마스터(201)가 상기 주변장치(223)를 액세스하기 위한 어드레스를 브리지(203)로 출력하는 경우, 상기 브리지(203)는 상기 어드레스를 디코딩하고, 상기 디코딩 결과와 메인 버스 소유권 상태 정보(MBSI : main bus status information)에 기초하여 상기 제1마스터(201)로 제1대기 신호(WT1)를 출력한다. 상기 제1마스터(201)는 상기 제1대기 신호(WT1)에 응답하여 상기 제1대기 신호(WT1)가 해제될 때까지 홀드 상태를 유지한다.
예컨대, 상기 제2마스터(221)가 상기 메인 버스(219)에 대한 소유권을 갖는 경우, 상기 메인 버스 소유권 상태 정보(MBSI)는 활성화(예컨대, 하이 레벨( 데이터 "1"))되고 그 이외의 경우에는 비활성화(예컨대, 로우 레벨(데이터 "0"))된다. 따라서 상기 브리지(203)는 상기 메인 버스 소유권 상태 정보(MBSI)의 레벨 변화에 기초하여 상기 메인 버스(219)의 소유 상태를 알 수 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이 본 발명에 따른 CPU의 성능 향상을 위한 시스템과 그 방법을 이용하면 DMA와 같은 제1마스터가 메인 버스에 대한 소유권을 가지고 있는 경우라도 CPU와 같은 제2마스터가 로컬버스를 통하여 상기 로컬버스에 접속된 메모리 장치를 액세스하는 경우 상기 제2마스터는 홀드 상태를 유지하지 않아도 되는 효과가 있다.
또한, DMA와 같은 제1마스터가 메인 버스에 대한 소유권을 가지고 있고, 상기 제1마스터와 CPU와 같은 제2마스터가 동시에 메모리 장치를 액세스하는 경우 상기 메모리 장치의 컨트롤러의 중재에 의하여 시간 손실을 줄일 수 있는 효과가 있다. 따라서 본 발명에 따른 버스 구조를 갖는 시스템과 액세스 방법은 CPU의 성능을 향상시키는 효과가 있다.

Claims (10)

  1. 주변장치가 접속된 메인 버스;
    중재 기능을 구비하는 컨트롤러와 소정의 데이터를 저장하기 위한 메모리 코어를 구비하는 메모리 장치가 접속된 제1로컬 버스;
    상기 메인 버스와 상기 메모리 장치 사이에 접속된 제2로컬 버스;
    상기 주변 장치를 액세스하기 위하여 상기 메인 버스에 대한 소유권 (ownership) 또는 상기 메모리 장치를 액세스하기 위하여 상기 제1로컬 버스에 대한 소유권을 가질 수 있는 제1마스터;
    상기 메인 버스에 접속되고, 상기 주변장치를 액세스하기 위하여 상기 메인 버스에 대한 소유권 또는 상기 메모리 장치를 액세스하기 위하여 상기 제2로컬 버스에 대한 소유권을 가질 수 있는 제2마스터; 및
    상기 메인 버스, 상기 제1마스터, 및 상기 메모리 장치에 접속되고, 상기 제2마스터가 상기 메인 버스에 대한 소유권을 갖는지의 여부를 모니터링하고, 상기 제1마스터로부터 출력된 어드레스를 디코딩하고, 모니터링 결과와 디코딩 결과에 기초하여 상기 제1마스터로 제1대기신호를 출력하거나, 상기 어드레스를 상기 메모리 장치 또는 상기 주변장치로 출력하는 브리지를 구비하며,
    상기 제1마스터와 상기 제2마스터가 동시에 상기 메모리 코어를 액세스하는 경우, 상기 컨트롤러는 상기 제1마스터와 상기 제2마스터 중에서 우선순위(priority)가 높은 마스터에게는 상기 메모리 코어에 대한 액세스를 허용하고 우선 순위가 낮은 마스터에게는 제2대기신호를 출력하는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서,
    상기 제1마스터는 CPU이고 상기 제2마스터는 DMA (direct memory access)인 것을 특징으로 하는 시스템.
  3. 제1항에 있어서,
    상기 메모리 코어는 비휘발성 메모리 셀들을 구비하는 것을 특징으로 하는 시스템.
  4. 제1항에 있어서,
    상기 메모리 코어는 휘발성 메모리 셀들을 구비하는 것을 특징으로 하는 시스템.
  5. 제1항에 있어서,
    상기 제1마스터는 상기 제1대기신호에 응답하여 홀드 (hold)되는 것을 특징으로 하는 시스템.
  6. 제1항에 있어서,
    상기 우선순위가 낮은 마스터는 상기 제2대기신호에 응답하여 홀드되는 것을 특징으로 하는 시스템.
  7. CPU에 접속되고, 주변장치와 DMA가 접속된 메인 버스에 접속되고, 로컬 버스를 통하여 제1메모리 장치와 제2메모리 장치에 접속된 브리지가 상기 메인 버스의 소유권에 대한 상태를 모니터링하는 단계;
    상기 브리지가 상기 CPU로부터 출력된 제1어드레스를 디코딩하는 단계; 및
    상기 브리지가 상기 모니터링 결과와 상기 디코딩 결과에 기초하여 상기 CPU로 제1대기신호를 출력하거나 또는 상기 CPU로부터 출력된 제1어드레스를 상기 주변장치와 상기 제1메모리 장치와 상기 제2메모리 장치 중에서 어느 하나로 출력하는 단계를 구비하는 것을 특징으로 하는 액세스 방법.
  8. 제7항에 있어서,
    상기 DMA가 상기 메인 버스에 대한 소유권을 갖는 동안 상기 브리지는 상기 CPU로 상기 제1대기신호를 출력하는 것을 특징으로 하는 액세스 방법.
  9. 제7항에 있어서,
    상기 제1메모리 장치는 비휘발성 메모리 장치이고 상기 제2메모리 장치는 휘발성 메모리 장치인 것을 특징으로 하는 액세스 방법.
  10. 제7항에 있어서,
    상기 제1메모리 장치가 컨트롤러와 소정의 데이터를 저장하기 위한 메모리 코어를 구비하는 경우,
    상기 컨트롤러는 상기 제1로컬 버스를 통하여 입력된 상기 메모리 코어를 액세스하기 위한 상기 제1어드레스와 상기 DMA로부터 출력되고 제2로컬 버스를 통하여 입력된 상기 메모리 코어를 액세스하기 위한 제2어드레스를 수신하는 단계; 및
    수신된 제1어드레스와 제2어드레스에 기초하여 상기 CPU의 우선순위와 상기 DMA의 우선순위를 비교하고 비교결과에 기초하여 상기 CPU와 상기 DMA 중에서 어느 하나에게는 상기 메모리 코어에 대한 액세스를 허용하고 다른 하나에게는 대기신호를 출력하는 단계를 더 구비하는 것을 특징으로 하는 액세스 방법.
KR1020060011501A 2006-02-07 2006-02-07 Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법 KR20070080307A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060011501A KR20070080307A (ko) 2006-02-07 2006-02-07 Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법
US11/583,254 US20070186026A1 (en) 2006-02-07 2006-10-19 System having bus architecture for improving CPU performance and method thereof
TW095146397A TW200745871A (en) 2006-02-07 2006-12-12 System having bus architecture for improving CPU performance and method thereof
CNA2006101565673A CN101017466A (zh) 2006-02-07 2006-12-28 具有用于改进cpu性能的总线构架的系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060011501A KR20070080307A (ko) 2006-02-07 2006-02-07 Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법

Publications (1)

Publication Number Publication Date
KR20070080307A true KR20070080307A (ko) 2007-08-10

Family

ID=38335327

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060011501A KR20070080307A (ko) 2006-02-07 2006-02-07 Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법

Country Status (4)

Country Link
US (1) US20070186026A1 (ko)
KR (1) KR20070080307A (ko)
CN (1) CN101017466A (ko)
TW (1) TW200745871A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798492B2 (en) 2014-04-15 2017-10-24 SK Hynix Inc. Semiconductor device including a plurality of function blocks

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402188B2 (en) * 2008-11-10 2013-03-19 Micron Technology, Inc. Methods and systems for devices with a self-selecting bus decoder
JP6939665B2 (ja) * 2018-03-15 2021-09-22 オムロン株式会社 ネットワークシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3382337B2 (ja) * 1994-02-04 2003-03-04 キヤノン株式会社 情報処理システム及び電子機器及び制御方法
US5983025A (en) * 1995-06-07 1999-11-09 International Business Machines Corporation Computer system buffers for providing concurrency and avoid deadlock conditions between CPU accesses, local bus accesses, and memory accesses
US5768622A (en) * 1995-08-18 1998-06-16 Dell U.S.A., L.P. System for preemptive bus master termination by determining termination data for each target device and periodically terminating burst transfer to device according to termination data
JPH0981507A (ja) * 1995-09-08 1997-03-28 Toshiba Corp コンピュータシステム
US5857083A (en) * 1996-06-07 1999-01-05 Yamaha Corporation Bus interfacing device for interfacing a secondary peripheral bus with a system having a host CPU and a primary peripheral bus
JP2001180083A (ja) * 1999-12-24 2001-07-03 Fuji Xerox Co Ltd 印刷装置
US6859852B2 (en) * 2000-09-08 2005-02-22 Texas Instruments Incorporated Immediate grant bus arbiter for bus system
KR100432218B1 (ko) * 2001-07-28 2004-05-22 삼성전자주식회사 데이타 액세스 타이밍을 조정하는 듀얼 포트 메모리콘트롤러

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798492B2 (en) 2014-04-15 2017-10-24 SK Hynix Inc. Semiconductor device including a plurality of function blocks

Also Published As

Publication number Publication date
TW200745871A (en) 2007-12-16
US20070186026A1 (en) 2007-08-09
CN101017466A (zh) 2007-08-15

Similar Documents

Publication Publication Date Title
US20060004976A1 (en) Shared memory architecture
JPH11513150A (ja) Pci間ブリッジを統合する入出力プロセッサ用アーキテクチャ
US7934029B2 (en) Data transfer between devices within an integrated circuit
US9170963B2 (en) Apparatus and method for generating interrupt signal that supports multi-processor
US20160275028A1 (en) Semiconductor device
JP2008009817A (ja) 半導体装置及びデータ転送方法
KR100630071B1 (ko) 다중 프로세서 환경에서의 dma를 이용한 고속 데이터전송 방법 및 그 장치
US7058740B2 (en) Effective bus utilization using multiple buses and multiple bus controllers
US6959354B2 (en) Effective bus utilization using multiple bus interface circuits and arbitration logic circuit
US5933613A (en) Computer system and inter-bus control circuit
KR20070080307A (ko) Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법
US7895388B2 (en) Bus control device
JP2005303718A (ja) マトリックス状バス接続システム
JP4151362B2 (ja) バス調停方式、データ転送装置、及びバス調停方法
JP2007052685A (ja) マイクロコントローラ
US20100153610A1 (en) Bus arbiter and bus system
JP5146796B2 (ja) ホストコントローラ
JP2000029822A (ja) ブリッジ装置
JP2007108858A (ja) ピン共有装置およびピン共有方法
TW475118B (en) Bus system for information processing device
JP2009187327A (ja) 情報通信システムの処理要求調停方法及びそのシステム並びにそのための制御プログラム
JPS63175964A (ja) 共有メモリ
JPH0351943A (ja) 高速バスと低速バスのバスライン共用化方式
JP2011108051A (ja) バス制御装置、プロセッサ、電子装置及びバス制御方法
JP2005215953A (ja) 情報処理装置

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid