KR20110013868A - 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템 - Google Patents

멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템 Download PDF

Info

Publication number
KR20110013868A
KR20110013868A KR1020090071549A KR20090071549A KR20110013868A KR 20110013868 A KR20110013868 A KR 20110013868A KR 1020090071549 A KR1020090071549 A KR 1020090071549A KR 20090071549 A KR20090071549 A KR 20090071549A KR 20110013868 A KR20110013868 A KR 20110013868A
Authority
KR
South Korea
Prior art keywords
processor
command
write
data
instant
Prior art date
Application number
KR1020090071549A
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 KR1020090071549A priority Critical patent/KR20110013868A/ko
Priority to US12/775,748 priority patent/US20110035537A1/en
Publication of KR20110013868A publication Critical patent/KR20110013868A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Memory System (AREA)
  • Multi Processors (AREA)

Abstract

본 발명의 실시예의 멀티 프로세서 시스템은, 메일 박스를 래치 저장부로서 가지며, 데이터 프로세싱을 위한 공유 메모리 영역이 복수의 포트들을 통해 억세스 되는 멀티포트 반도체 메모리 장치와; 데이터의 리드나 라이트 동작을 복수로 명령하는 멀티 코멘드를 한꺼번에 상기 공유 메모리 영역의 코멘드 영역에 멀티 코멘드 셋으로서 라이트하고 상기 메일 박스를 통해 멀티 코멘드 라이트 메시지를 알리는 제1 프로세서와; 상기 멀티포트 반도체 메모리 장치 및 불휘발성 반도체 메모리 장치와 함께 메모리 링크 아키텍쳐 구조를 형성하며, 상기 메일 박스를 리드하여 멀티 코멘드의 수신을 인지한 후 상기 코멘드 영역에 저장된 상기 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 모두 수행하는 제2 프로세서를 구비한다. 본 발명의 실시예의 구성에 따르면, 잦은 인터럽트에 의한 타이밍 오버헤드가 줄어들어 리드/라이트 동작 성능이 개선되고 프로세서의 웨이크 업 타임이 줄어 시스템의 전력소모가 감소된다. 또한, 인스턴트 데이터에 대한 우선처리 동작 기능의 수행에 따라 긴급 또는 중요 데이터의 신뢰성 저하가 방지된다.
Figure P1020090071549
멀티 프로세서 시스템, 메모리 링크 아키텍쳐, 멀티 코멘드, 인스턴트

Description

멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템{Multi processor system having multi command set operation and priority operation function}
본 발명은 멀티 프로세서 시스템에 관한 것으로, 특히 메모리 링크 아키텍쳐를 갖는 멀티 프로세서 시스템에 관한 것이다.
오늘날 인간생활의 유비쿼터스 지향추세와 편리성의 요구에 따라, 인간들이 취급하게 되는 전자적 시스템도 그에 부응하여 눈부시게 발전되고 있다.
최근에 휴대용 멀티미디어 플레이어(PMP), 모바일 폰, 스마트 폰, GPS 내비게이션 장치, 디지털 카메라, 디지털 비디오 카메라 또는 PDA 등의 휴대용 전자기기에서는 기능이나 동작 수행의 고속화 및 원활화를 도모하기 위하여 하나의 시스템 내에 복수의 프로세서들을 채용한 멀티 프로세서 시스템이 선호된다. 예를 들어, 모바일 폰에는 사용자들의 컨버젼스 요구에 따라, 기본적인 전화 기능 이외에 음악, 게임, 카메라, 결제기능, 또는 동영상 기능 등이 추가적으로 구현될 수 있 다. 따라서, 그러한 경우에 통신 변복조 기능을 수행하는 통신 프로세서와, 상기 통신 기능을 제외한 어플리케이션 기능을 수행하는 미디어 프로세서가 상기 모바일 폰 내의 인쇄회로 기판에 함께 채용될 필요성이 있다.
그러한 멀티 프로세서 시스템에서 프로세싱 데이터를 저장하기 위해 채용되는 반도체 메모리는 동작이나 기능 면에서 다양하게 변화될 수 있다. 예컨대, 복수의 억세스 포트를 가지고서 그 억세스 포트들 각각을 통해 동시에 데이터를 입출력할 것이 요구될 수 있다. 예컨대, 삼성전자의 등록상표 원디램(OneDRAM)과 같은 멀티포트 반도체 메모리 장치는 모바일 디바이스 내에서 통신 프로세서와 미디어 프로세서 간의 데이터 처리 속도를 현저히 증가시킬 수 있는 퓨전(fusion)메모리 칩이다. 일반적으로 두 프로세서들이 있는 경우에 두 개의 메모리들이 통상적으로 요구된다. 그렇지만, 원디램 솔루션은, 프로세서들간의 데이터를 단일 칩을 통하여 라우팅할 수 있기 때문에, 두 개의 메모리들에 대한 필요성을 제거할 수 있다. 또한 듀얼 포트 어프로치를 취함에 의해, 원디램은 프로세서들 간의 데이터 전송에 걸리는 시간을 상당히 감소시킨다.
원디램과 같은 멀티포트 반도체 메모리 장치를 채용하는 멀티 프로세서 시스템은, 임의의 한 프로세서에 멀티포트 반도체 메모리 장치와 플래시 메모리가 링크된 메모리 링크 아키텍쳐를 구성할 수 있다.
그러한 메모리 링크 아키텍쳐에서 호스트 프로세서인 제1 프로세서가 메모리 링크 아키텍쳐내의 에이직 프로세서로 한번에 하나씩의 코멘드를 원디램을 통해 줄 경우에는 리드/라이트 동작 성능이 저하되고 시스템의 전력 소모가 증가된다.
즉, 슬립프(sleep) 모드에 있던 에이직 프로세서를 하나의 코멘드 인가시 마다 웨이크업 하는 것은 전력 소모를 증가시키며, 빈번한 인터럽트에 의한 타이밍 오버헤드에 의해 리드/라이트 동작 성능이 저하될 수 있다. 따라서, 한번에 다중의 동작을 정의하는 코멘드를 인가할 필요가 있다.
한편, 멀티플 리드/라이트 동작 중에 긴급 또는 중요한 데이터의 처리가 필요한 경우에는 데이터의 신뢰성 저하를 막을 수 있는 개선된 대책도 요망된다.
본 발명의 목적은 서브 프로세서의 웨이크업 횟수를 줄여서 타이밍 오버헤드를 줄일 수 있는 멀티 프로세서 시스템을 제공함에 있다.
본 발명의 다른 목적은 한번에 다중의 리드/라이트 명령을 정의하는 멀티 코멘드 셋을 인가하여 프로세서의 리드/라이트 동작 성능을 개선할 수 있는 멀티 프로세서 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 호스트 프로세서 측에서는 한번에 다중의 리드/라이트 명령을 정의하는 멀티 코멘드 셋을 공유 메모리 영역에 라이트하고 서브 프로세서 측에서는 멀티 코멘드 셋에 대응되는 멀티플 리드/라이트 동작을 순차로 모두 수행할 수 있는 메모리 링크 아키텍쳐를 갖는 멀티 프로세서 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작 을 수행함에 의해 시스템의 전력 소모를 최소화 또는 줄일 수 있는 멀티 프로세서 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 멀티플 리드/라이트 동작 중에도 긴급 데이터 또는 중요 데이터를 우선적으로 리드 또는 라이트할 수 있는 멀티 프로세서 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 인스턴트 데이터에 대한 우선처리 동작 기능을 수행할 수 있는 고상하고 신규한 멀티 프로세서 시스템을 제공함에 있다.
상기한 목적들을 달성하기 위하여 본 발명의 실시예의 일 양상(an aspect)에 따른 멀티 프로세서 시스템은:
메일 박스를 래치 저장부로서 가지며, 데이터 프로세싱을 위한 공유 메모리 영역이 복수의 포트들을 통해 억세스 되는 멀티포트 반도체 메모리 장치와;
데이터의 리드나 라이트 동작을 복수로 명령하는 멀티 코멘드를 한꺼번에 상기 공유 메모리 영역의 코멘드 영역에 멀티 코멘드 셋으로서 라이트하고 상기 메일 박스를 통해 멀티 코멘드 라이트 메시지를 알리는 제1 프로세서와;
상기 멀티포트 반도체 메모리 장치 및 불휘발성 반도체 메모리 장치와 함께 메모리 링크 아키텍쳐 구조를 형성하며, 상기 메일 박스를 리드하여 멀티 코멘드의 수신을 인지한 후 상기 코멘드 영역에 저장된 상기 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 모두 수행하는 제2 프로세서를 구비한다.
본 발명의 실시예에서, 상기 불휘발성 반도체 메모리 장치는 상기 제2 프로세서를 통해 상기 멀티포트 반도체 메모리 장치에 연결되며, 상기 공유 메모리 영역에 저장된 상기 제1 프로세서의 데이터를 저장하는 플래시 메모리일 수 있다.
본 발명의 실시예에서, 상기 멀티 코멘드는 코멘드 타입, 공유 영역 어드레스, 플래시 메모리 어드레스, 및 섹터 카운터를 포함하는 세팅 값들을 가질 수 있다.
본 발명의 실시예에서, 상기 멀티 코멘드 라이트 메시지는 코멘드 타입, 기능 코드, 및 기능 파라메터를 포함하는 포맷 값들을 가질 수 있다.
본 발명의 실시예에서, 상기 제1 프로세서가 호스트인 경우에 상기 제2 프로세서는 에이직(ASIC)일 수 있다.
본 발명의 실시예에서, 상기 제2 프로세서는, 상기 멀티플 리드/라이트 동작의 수행 중에 상기 메일 박스를 통하여 인스턴트 데이터 처리 메시지가 인가되는 경우에, 현재의 데이터 처리 작업을 중단하고 상기 공유 메모리 영역에 저장된 인스턴트 코멘드에 따라 인스턴트 데이터 우선처리 동작을 즉각적으로 수행할 수 있다.
본 발명의 실시예에서, 상기 제2 프로세서는, 상기 인스턴트 데이터 우선처리 동작이 완료된 경우에, 상기 멀티플 리드/라이트 동작의 나머지 동작을 계속적으로 수행할 수 있다.
본 발명의 실시예의 다른 양상(another aspect)에 따른 멀티 프로세서 시스템은:
대응되는 프로세서들에 의해 전용으로 억세스되는 전용 메모리 영역들과, 상기 프로세서들 모두에 의해 공유적으로 억세스되는 공유 메모리 영역과, 상기 프로세서들 간의 통신을 제공하기 위한 제1,2 메일 박스와, 상기 공유 메모리 영역의 사용에 대한 권한 정보를 알리는 세맵퍼를 구비한 멀티 포트 반도체 메모리 장치와;
데이터의 리드나 라이트 동작을 복수로 명령하는 멀티 코멘드를 한꺼번에 상기 공유 메모리 영역의 코멘드 영역에 멀티 코멘드 셋으로서 라이트하거나 인스턴트 코멘드를 라이트 하고, 상기 제1 메일 박스를 통해 멀티 코멘드 라이트 메시지나 인스턴트 데이터 처리 메시지를 알리는 제1 프로세서와;
상기 멀티포트 반도체 메모리 장치와 함께 메모리 링크 아키텍쳐 구조를 형성하며, 상기 제1 메일 박스를 리드하여 멀티 코멘드를 인지한 후 상기 코멘드 영역에 저장된 상기 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 모두 수행하며, 상기 멀티플 리드/라이트 동작의 수행 중에 상기 메일 박스를 통하여 인스턴트 데이터 처리 메시지가 인가되는 경우에 현재의 작업을 중단하고 상기 공유 메모리 영역에 저장된 인스턴트 코멘드에 따라 인스턴트 데이터 우선처리 동작을 즉각적으로 수행하는 제2 프로세서와;
상기 제2 프로세서에 연결되어 상기 제2 프로세서의 데이터를 불휘발적으로 저장함은 물론, 상기 멀티포트 반도체 메모리 장치를 통해 상기 제1 프로세서의 데이터를 불휘발적으로 저장하기 위한 불휘발성 반도체 메모리 장치를 구비한다.
본 발명의 실시예에서, 상기 제2 프로세서는 상기 인스턴트 데이터 우선처리 동작이 완료된 경우에 상기 멀티플 리드/라이트 동작의 나머지 동작을 계속적으로 수행할 수 있다.
본 발명의 실시예에서, 상기 제2 프로세서는 상기 인스턴트 데이터 우선처리 동작이 완료된 후에는 상기 제2 메일박스에 완료 메시지를 라이트 할 수 있다.
상기 멀티 프로세서 시스템은 모바일 폰, PMP, PSP, PDA, 또는 차량 휴대용 전화기 중의 하나일 수 있다. 또한, 상기 불휘발성 반도체 메모리 장치는 EEPROM 계열의 메모리, 플래시 메모리, 또는 PRAM(Phase-change RAM)일 수 있다.
상기한 바와 같은 본 발명의 실시예적 구성에 따르면, 잦은 인터럽트에 의한 타이밍 오버헤드가 줄어들어 리드/라이트 동작 성능이 개선되고 프로세서의 웨이크 업 타임이 줄어 시스템의 전력소모가 감소된다. 또한, 인스턴트 데이터에 대한 우선처리 동작 기능의 수행에 따라 긴급 또는 중요 데이터의 신뢰성 저하가 방지된다.
이하에서, 호스트 프로세서 측에서는 한번에 다중의 리드/라이트 명령을 정의하는 멀티 코멘드 셋을 공유 메모리 영역에 라이트하고 서브 프로세서 측에서는 멀티 코멘드 셋에 대응되는 멀티플 리드/라이트 동작을 순차로 모두 수행할 수 있는 메모리 링크 아키텍쳐를 갖는 멀티 프로세서 시스템의 예가, 도 1 내지 도 6을 참조로, 제1 실시예로서 설명되고,
멀티플 리드/라이트 동작 중에도 긴급 데이터 또는 중요 데이터를 우선적으로 리드 또는 라이트할 수 있는 멀티 프로세서 시스템의 예가, 도 7 내지 도 9를 참조로, 제2 실시예로서 설명될 것이다.
이하의 실시예에서 많은 특정 상세들이 도면을 따라 예를 들어 설명되고 있지만, 이는 본 분야의 통상의 지식을 가진 자에게 본 발명의 보다 철저한 이해를 돕기 위한 의도 이외에는 다른 의도 없이 설명되었음을 주목(note)하여야 한다. 그렇지만, 본 발명이 이들 특정한 상세들 없이도 실시될 수 있을 것임은 본 분야의 숙련된 자들에 의해 이해될 수 있을 것이다. 다른 예증, 공지 방법들, 프로시져들, 통상적인 다이나믹 랜덤 억세스 메모리나 플래시 메모리 및 그와 관련된 기능적 회로들은 본 발명을 모호하지 않도록 하기 위해 상세히 설명되지 않는다.
먼저, 제1 실시예를 설명하기 위해 도 1을 참조한다.
도 1은 본 발명의 실시예에 따른 멀티 프로세서 시스템의 블록도이다. 도면을 참조하면, 모바일 디바이스를 예로써 구성하는 멀티 프로세서 시스템은, 호스트 프로세서로서의 제1 프로세서(100), 서브 프로세서로서의 제2 프로세서(200), 멀티포트 반도체 메모리 장치로서의 원디램(300), 및 복수의 플래시 메모리(410,420,430,440)를 포함한다.
도면에서, 상기 제1 프로세서(100)는 미리 설정된 타스크(Task) 예컨대 호스트 프로세서로서 기능과 동작을 기본적으로 담당할 수 있다. 상기 제2 프로세서(200)는 통신 데이터의 처리나 게임, 오락 등의 사용자 편의 기능을 수행하는 미 디어 프로세서의 기능을 담당할 수 있다. 그러나, 사안이 다른 경우에 상기 프로세서들의 기능은 서로 반대로 되거나 추가될 수 있다.
상기 제1 프로세서(100)는 시스템 버스(B10)를 통해 상기 원디램(300)과 연결되고, 상기 제2 프로세서(200)는 시스템 버스(B20)를 통해 상기 원디램(300)과 연결되므로, 상기 제1,2 프로세서들(100,200)은 상기 원디램(300)을 공유적으로 사용한다. 따라서, 2개의 DRAM이 채용될 필요가 없으므로 시스템 구현 비용이 저렴하고 시스템 사이즈가 콤팩트해진다.
또한, 복수의 플래시 메모리(410,420,430,440)가 시스템 버스(B30)를 통해 상기 제2 프로세서(200)에 연결되어 있으므로, 상기 제1 프로세서(100)는 상기 원디램(300)과 상기 제2 프로세서(200)를 통해 간접적으로 상기 복수의 플래시 메모리(410,420,430,440)를 억세스 할 수 있다. 한편, 상기 제2 프로세서(200)는 복수의 플래시 메모리(410,420,430,440)를 직접적으로 억세스한다.
상기 복수의 플래시 메모리(410,420,430,440)는 각기, 셀 어레이의 구성이 NOR 구조를 갖게 되는 NOR 플래시 메모리나, 셀 어레이의 구성이 NAND 구조를 갖게 되는 NAND 플래시 메모리가 될 수 있다. 상기 NOR 플래시 메모리나 NAND 플래시 메모리 모두는 플로팅 게이트를 갖는 모오스 트랜지스터로 이루어진 메모리 셀을 어레이 형태로서 갖는 불휘발성 메모리로서, 전원이 오프되더라도 지워져서는 아니되는 데이터 예컨대 모바일 디바이스의 부트 코드, 프로그램, 통신 데이터, 또는 보존용 데이터의 저장을 위해 탑재된다. 상기 제1 프로세서(100)에 플래시 메모리가 연결되지 않은 플래시 레스 구조는 시스템 구현 비용을 낮추고 시스템 사이즈를 콤 팩트하게 한다.
상기 원디램(oneDRAM:300)은 프로세서들(100,200)의 데이터 처리를 위한 메인 메모리로서 기능한다. 또한, 상기 원디램(300)은 멀티포트 억세스를 허용하기 위해, 복수의 포트들(P1,P2)과 복수의 메모리 뱅크들(310,320,330,340)을 가진다. 그러한 복수의 포트들과 메모리 뱅크들의 구성을 갖는 원디램(300)은 단일 포트를 갖는 통상의 DRAM과는 상이하다.
상기 제2 프로세서(200)와 상기 원디램(멀티포트 반도체 메모리 장치;300) 및 상기 복수의 플래시 메모리(410,420,430,440)는 메모리 링크 아키텍쳐(MLA:500)를 구성한다.
도면에서, 상기 원디램(300)의 제1 포트(P1)는 상기 시스템 버스(B10)를 통해 제1 프로세서(100)와 연결되고, 제2 포트(P2)는 상기 시스템 버스(B20)를 통해 제2 프로세서(200)와 연결된다. 결국, 상기 제1,2 프로세서들(100,200)은 서로 다른 2개의 억세스 패쓰를 통하여 상기 원디램(300)의 메모리 뱅크들을 각기 억세스 한다.
상기 원디램(300)이 도면에서 보여지는 바와 같이 4개의 메모리 영역들로 이루어진 메모리 셀 어레이를 가지는 경우라고 하면, 하나의 메모리 영역을 가리키는 제1 뱅크(310)는 제1 프로세서(100)에 의해 전용으로 억세스 되고, 제3 뱅크(330) 및 제4 뱅크(340)는 제2 프로세서(200)에 의해 전용으로 억세스 되도록 할 수 있다. 한편, 제2 뱅크(320)는 서로 다른 포트(P1,P2)를 통하여 상기 제1,2프로세서들(100,200)모두에 의해 억세스 되어질 수 있다. 결국, 메모리 셀 어레이 내에서 제2 뱅크(320)는 공유 메모리 영역으로서 할당되고, 나머지 뱅크들(310,330,340)은 각기 대응되는 프로세서에 의해서만 억세스되는 전용 메모리 영역으로서 할당되는 것이다.
상기 제1 프로세서(100)가 제1 포트(P1)를 통하여 상기 제2 뱅크(320)를 억세스하는 경우에 상기 원디램(300)내의 패쓰 제어부(370)는 상기 제2 뱅크(320)가 상기 시스템 버스(B10)에 연결되도록 한다. 상기 제1 프로세서(100)가 상기 제2 뱅크(320)를 억세스 하는 동안에, 상기 제2 프로세서(200)는 제2 포트(P2)를 통하여 전용 메모리인 상기 제3 뱅크(330) 또는 제4 뱅크(340)를 억세스할 수 있다. 상기 제1 프로세서(100)가 상기 제2 뱅크(320)에 대한 억세스를 종료한 경우에, 상기 제2 프로세서(200)는 비로소 공유 메모리 영역인 상기 제2 뱅크(320)를 억세스 할 수 있게 된다.
상기 제1,2,3,4 뱅크들(310,320,330,340)은 모두 하나의 억세스 트랜지스터와 하나의 스토리지 커패시터로 구성된 디램 셀들로 구현될 수 있다. 상기 디램 셀들은 셀 내의 저장 전하를 보존하기 위해 리프레쉬 동작을 갖는다. 여기서, 상기 제1,2,3,4 뱅크들(310,320,330,340)은 각기 DRAM의 뱅크 단위로 구성될 수 있으며, 하나의 뱅크는 예컨대 16Mb(메가비트), 32Mb, 64Mb, 128Mb, 256Mb, 512Mb, 또는 1024Mb의 메모리 스토리지를 가질 수 있다.
상기 패쓰 제어부(370)의 패쓰 제어에 관한 정보를 제공하며 상기 제1,2 프로세서들(100,200)간의 인터페이싱을 행하는 내부 레지스터(350)는 상기 메모리 셀 어레이 영역과는 별도로 마련된 데이터 저장영역이다. 즉, 상기 내부 레지스 터(350)는 상기 제1,2 프로세서들(100,200)모두에 의해 억세스 되며, 플립플롭 등과 같은 래치회로로 구성될 수 있다. 따라서, 상기 내부 레지스터(350)는 DRAM의 메모리 셀과는 다른 래치타입 메모리 셀(예컨대 SRAM셀)로 구성되므로 리프레쉬 동작을 요하지 않는다.
상기 내부 레지스터(350)는, 세맵퍼(356), 제1 메일박스(352), 및 제2 메일박스(354)를 포함한다.
상기 세맵퍼(356)에는 공유 메모리 영역(320)에 대한 억세스 권한정보가 저장된다. 제1,2 메일박스들(352,354)에는 상기 제1,2 프로세서들(100,200)이 서로 상대 프로세서로 전송하는 메시지(권한 요청, 어드레스, 데이터 사이즈, 데이터가 저장된 공유 메모리의 어드레스를 가리키는 전송 데이터, 또는 명령어 등)가 쓰여진다. 즉, 상기 제1 메일박스(MBA:352)에는 상기 제1 프로세서(100)가 상기 제2 프로세서(200)로 전송하는 메시지가 라이트 되어 있고, 상기 제2 메일박스(MBB:354)에는 상기 제2 프로세서(200)가 상기 제1 프로세서(100)로 전송하는 메시지가 라이트 되어 있다. 상기 세맵퍼(semaphore)영역(356)은 최소한 1비트로 할당될 수 있고, 상기 제1,2 메일박스들(352,354)은 각기 4바이트로서 할당될 수 있다.
상기 제1,2 프로세서들(100,200)간의 데이터 인터페이스가 상기 원디램(300)을 통해 구현될 경우에, 상기 제1,2 프로세서들(100,200)은 상기 제1,2 메일박스들(352,354)을 각기 활용하여 상대 프로세서에게 전송될 메시지를 라이트할 수 있다. 라이트된 메시지를 리드한 수신 측 프로세서는 전송 측 프로세서의 메시지를 인식하고 그에 응답한 동작을 수행한다.
예를 들어, 도 1의 제2 프로세서(200)가 제1 프로세서(100)에게로 원디램(300)의 공유 메모리 영역인 제2 뱅크(320)에 대한 억세스 권한을 이양하는 경우에, 상기 제2 프로세서(200)는 내부 레지스터(350)내의 세맵퍼(356)의 플래그 데이터를 변경한 다음, 제2 메일박스(354)에 억세스 권한을 변경한다는 것을 알리는 메시지를 라이트 한다. 이에 따라, 제2 뱅크(320)에 대한 억세스 권한은 상기 제1 프로세서(100)에게로 넘어가게 된다. 상기 제2 메일박스(354)의 메시지를 리드한 제1 프로세서(100)는 억세스 권한 이양에 대한 메시지를 리드하고, 상기 세맵퍼(356)의 플래그 데이터가 변경되었나를 확인한다. 상기 플래그 데이터가 변경이 되었음을 확인 한 후, 상기 제1 프로세서(100)는 상기 제1 메일박스(352)에 억세스 권한을 접수하였다는 것을 알리는 응답 메시지를 라이트한다. 이 후, 상기 제1 프로세서(100)는 상기 제2 프로세서(200)의 권한 요청이나 자신의 타스크가 완료될 때까지, 상기 공유 메모리 영역(320)에 대한 억세스 권한을 독점적으로 갖는다.
도 1의 공유 메모리 영역인 제2 뱅크(320)내의 특정 영역(321)은 디세이블 영역으로 설정된다. 즉, 공유 메모리 영역(320)의 임의의 1행을 인에이블 시키는 특정 로우 어드레스(0x7FFFFFFFh ~ 0x8FFFFFFFh, 2KB 사이즈 = 1 로우 사이즈)는 상기 내부 레지스터(350)를 대치적으로 억세스 하는데 할당된다. 이에 따라, 상기 특정 로우 어드레스(0x7FFFFFFFh ~ 0x8FFFFFFFh)가 인가될 때, 대응되는 특정 워드라인 영역은 디세이블되며, 대신에 상기 내부 레지스터(350)가 인에이블 된다.
도 2는 도 1중 멀티포트 반도체 메모리 장치의 공유 메모리 영역(320)에 대한 메모리 할당을 보여준다.
도 2를 참조하면, 제2 뱅크(320)내의 특정 영역(321)은 세맵퍼 영역(356), 제1,2 메일박스 영역들(352,354), 체크 비트 영역들(357,358), 및 리저브 영역(359)을 포함한다. 상기 특정 영역(321)중 예를 들어 제1 메일박스 영역(352)을 선택하는 어드레스가 인가되면, 상기 영역(352)이 선택되는 대신에 도 1의 내부 레지스터(350)내의 제1 메일박스(352)가 선택된다. 결국, 상기 제2 뱅크(320)내의 특정 영역(321)은 동작 디세이블 되는 영역이다.
도 2에서 제2 뱅크(320)내의 영역들(323,324,325)은 코멘드 데이터가 각기 라이트되는 코멘드 영역이다. 또한, 영역들(326,327,328)은 페이로드(payload)각기 라이트되는 데이터 영역이다. 예를 들어, 코멘드 영역(323)에 플래시 메모리에 데이터를 라이트할 것을 명령하는 라이트 코멘드가 제1 프로세서(100)에 의해 라이트된 경우에 이에 대응되는 페이로드 영역(326)에는 라이트 되어질 데이터가 저장되어 있게 된다. 또한, 코멘드 영역(324)에 플래시 메모리에 데이터를 라이트할 것을 명령하는 라이트 코멘드가 제1 프로세서(100)에 의해 라이트된 경우에 이에 대응되는 페이로드 영역(327)에는 라이트 되어질 데이터가 저장되어 있게 된다.
본 발명의 제1 실시예에서는 제1 프로세서(100)가 상기 코멘드 영역들(323,324,325)중 임의의 하나에 멀티 코멘드 셋을 라이트 할 수 있다.
결국, 한번에 다중의 리드/라이트 명령을 정의하는 멀티 코멘드 셋을 공유 메모리 영역에 라이트하고, 제2 프로세서가 그에 따른 멀티플 리드/라이트 동작을 순차로 수행하면, 공유 메모리 영역의 억세스 권한 변경 횟수가 다중의 수만큼 줄어든다. 예를 들어, 단일의 코멘드를 제1 프로세서(100)가 줄 때 마다 제2 프로세 서(200)는 웨이크업 되어야 하고, 도 1의 내부 레지스터(350)를 활용함에 의해 상기 공유 메모리 영역(320)에 대한 억세스 권한 변경이 수행되어져야 한다.
그러므로, 제1 프로세서(100)가 n(n은 2이상의 자연수)개의 코멘드를 하나로 포맷팅한 멀티 코멘드 셋을 상기 코멘드 영역(323)에 라이트하고, 제1 메일박스(352)에 멀티 코멘드 셋이 라이트되었다는 것을 알려 줄 경우에, 전력 소모의 증가 문제와 빈번한 인터럽트에 의한 리드/라이트 동작 성능의 저하 문제가 해결된다.
결국, 제1 프로세서(100)는 데이터의 리드나 라이트 동작을 복수로 명령하는 멀티 코멘드를 한꺼번에 상기 공유 메모리 영역의 코멘드 영역(323)에 멀티 코멘드 셋(MCMD)으로서 라이트하고 상기 메일 박스(352)를 통해 멀티 코멘드 라이트 메시지를 제2 프로세서(200)로 알린다.
그리고, 제2 프로세서(200)는 상기 메일 박스(352)의 메시지를 리드하여 멀티 코멘드의 수신을 인지한 후 상기 코멘드 영역(323)에 저장된 상기 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 모두 수행하는 것이다.
도 3은 도 2중 코멘드 영역들에 각기 저장되는 단위 코멘드 포맷도이다.
도 3을 참조하면, 단위 코멘드 포맷은 전체 128 비트로서 구성될 수 있으며, 32비트씩 구성된 제1 내지 제4 코멘드 포맷 프레임들(CF1-CF4)을 포함할 수 있다. 제1 코멘드 포맷 프레임(CF1)은 8비트로 구성되어 코멘드의 타입을 지정하는 코멘드 타입과, 24비트로 구성되어 공유 메모리 영역의 어드레스를 지정하는 공유 메모리 영역 어드레스로 이루어질 수 있다. 제2 코멘드 포맷 프레임(CF2)은 32비트로 구성되어 플래시 메모리의 어드레스를 지정하는 플래시 메모리 어드레스로 이루어질 수 있다. 제3,4 코멘드 포맷 프레임(CF3,4)은 32비트로 각기 구성되어 섹터 카운터를 지정하는 섹터 카운터로 이루어질 수 있다. 단위 코멘드 포맷에 라이트된 데이터의 예는 도 6에 보다 상세히 나타나 있다.
도 4는 도 1중 메일박스의 메시지 포맷도로서, 타입, 펑션 코드, 및 펑션 파라메터를 포함하여 이루어질 수 있다. 예를 들어 상기 타입에 "00"이 저장된 경우에 코멘드를 의미한다. 상기 펑션 코드에는 리드, 라이트 또는 소거 동작을 의미하는 코드가 저장될 수 있다. 한편, 도 4의 값 영역내에 문자 "TBD"는 Test Before Define을 의미한다.
도 5는 도 4의 메시지 포맷을 4바이트로 구현한 경우에 멀티 코멘드 메시지 데이터의 예시적 구성도이다. 도면을 참조하면 4비트의 타입, 8비트의 펑션 코드, 8비트의 펑션 파라메타가 나타나 있다. 따라서, "0000"이 메일박스의 지정비트영역(타입)에 라이트 되면 코멘드를, "00000010"이 메일박스의 지정비트영역(펑션 코드)에 라이트 되면 라이트 동작명령을, "00001000"이 메일박스의 지정비트영역(평션 파라메터)에 라이트 되면 8회연속 라이트를 각기 메시징 하는 것이다.
도 6은 도 2중 코멘드 영역에 저장되는 멀티 코멘드 셋의 예시도로서, CMD0 코멘드 셋을 예로 들면, 코멘드 타입이 "00000000"이고, 공유 메모리 영역의 어드레스가 "0xOOOFh" 이고, 플래시 메모리 영역의 어드레스가 "0x0000OOOFh" 이며, 섹터 카운터가 "0xOOO00004h" 라는 것이 나타나 있다.
다시 도 1을 참조하면, 상기 제1 프로세서(100)는 데이터의 리드나 라이트 동작을 복수로 명령하는 멀티 코멘드의 필요 시에 상기 멀티 코멘드를 한꺼번에 상기 공유 메모리 영역(320)의 코멘드 영역(323)에 멀티 코멘드 셋(MCMD)으로서 라이트하고, 상기 제1 메일 박스(352)를 통해 멀티 코멘드 라이트 메시지를 도 5와 같이 라이트한다.
이어서, 상기 제1 프로세서(100)는 원디램(300)의 공유 메모리 영역인 제2 뱅크(320)에 대한 억세스 권한을 상기 제2 프로세서(200)로 이양한다. 이를 위해, 상기 제1 프로세서(100)는 내부 레지스터(350)내의 세맵퍼(356)의 플래그 데이터를 변경한다.
제2 프로세서(200)는 상기 세맵퍼(356)의 플래그 데이터가 변경되었을 경우에 상기 원디램(300)의 공유 메모리 영역인 제2 뱅크(320)에 대한 억세스 권한을 갖게 된다. 상기 제2 프로세서(200)는 도 5와 같이 포맷된 상기 제1 메일 박스(352)의 메시지를 리드하여 멀티 코멘드의 수신을 인지한다. 그리고, 상기 제2 뱅크(320)에 대한 억세스 권한을 갖게 된 상기 제2 프로세서(200)는 상기 코멘드 영역(323)에 저장된 상기 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 모두 수행하는 것이다.
이에 따라, 상기 제2 프로세서(200)는 일단 한번 웨이크업 된 후에 상기 제2 뱅크(320)에 대한 억세스 권한을 멀티플 리드/라이트 동작동안에는 독점하고서, 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 한꺼번에 수행할 수 있게된다. 그러므로, 잦은 인터럽트에 의한 타이밍 오버헤드가 줄어들어 리드/라이트 동작 성능이 개선되고 프로세서의 웨이크 업 타임이 줄어 시스템의 전력소모가 감 소된다.
한편, 멀티플 리드/라이트 동작 중에 긴급 또는 중요한 데이터를 우선적으로 처리하여야 할 필요가 있는데, 이 경우에는 인스턴트 데이터에 대한 우선처리 동작 기능의 수행이 요구될 수 있다.
본 발명의 제2 실시예는 긴급 또는 중요 데이터의 리드 또는 라이트의 에러로 인해 신뢰성 저하가 일어나는 것을 해결한다.
이제부터는 본 발명의 제2 실시예가 설명될 것이다.
먼저, 도 7은 본 발명의 실시예에 따라 멀티플 동작 수행 중 인스턴트 동작을 보여주는 처리 타이밍도이고, 도 8 및 도 9는 도 1에 따른 멀티 프로세서 시스템의 인스턴트 동작 수행에 관련한 제어흐름도이다.
도 7을 참조하면, 제1 케이스(CA1)의 리드/라이트 동작과 제2 케이스(CA2)의 리드/라이트 동작이 나타나 있다. 제2 실시예의 경우에는 제2 케이스(CA2)의 리드/라이트 동작을 수행한다.
즉, 도 7에서 제2 케이스(CA2)의 리드/라이트 동작은, 도 1의 제2 프로세서(200)가 상기 멀티플 리드/라이트 동작을 수행하는 도중에 상기 제1 메일박스(352)를 통하여 인스턴트 데이터 처리 메시지를 요청 받은 경우에, 현재의 데이터 처리 작업을 중단하고 상기 공유 메모리 영역(320)에 저장된 인스턴트 코멘드에 따라 인스턴트 데이터 우선처리 동작을 즉각적으로 수행하는 동작이다.
도 7의 T2 구간에서 인스턴트 데이터 리드/라이트 메시지(IDH)가 메일박스를 통해 요청된 경우에, 상기 제2 프로세서(200)는 현재의 데이터 처리 작업을 중단하 고 T3 구간에서 인스턴트 데이터의 우선처리 동작을 수행한다. 그리고, 구간 T4에서부터 나머지의 멀티플 리드/라이트 동작을 상기 제2 프로세서(200)는 수행한다. 이러한 우선처리 동작은 긴급하거나 중요한 데이터에 대한 신뢰성을 최대한 보장한다.
만약, 제1 실시예를 통해 설명된 바와 같은 멀티 코멘드 셋에 기인한 멀티플 리드/라이트 동작의 수행 중에 인스턴트 데이터의 우선처리 동작이 수행되지 않는다면, 도 7의 제1 케이스(CA1)의 리드/라이트 동작과 같이, DT 구간이 경과된 이후에 인스턴트 데이터가 처리될 것이다. 그러한 경우에는 타임 포인트 t3 이후에 인스턴트 데이터의 처리가 이루어지므로 리드/라이트 동작에 대한 신뢰성이 저하될 수 있다.
이와 같이, 제2 실시예에서는 멀티플 리드/라이트 동작의 수행 도중 인스턴트 데이터 처리 메시지가 인가되면, 현재의 데이터 처리 작업이 즉각 중단되고, 공유 메모리 영역(320)에 저장된 인스턴트 코멘드에 따라 인스턴트 데이터 우선처리 동작이 즉각적으로 수행된다. 또한, 제2 프로세서는, 상기 인스턴트 데이터 우선처리 동작이 완료된 경우에, 상기 멀티플 리드/라이트 동작의 나머지 동작을 계속적으로 수행할 수 있다.
도 7을 통하여 설명된 제2 실시예에 대한 프로세서들 간의 동작 수행 흐름은 도 8 및 도 9에 도시된다.
먼저, 도 8의 S80단계에서 인스턴트 리드/라이트 발생이 제1 프로세서(100)에 의해 체크된다. 즉, 호스트 프로세서인 제1 프로세서(100)는 인스턴트 리드/라 이트 동작을 미리 설정된 기준에 따라 생성할 수 있다. 따라서, 상기 S80단계가 패스되면, S81단계에서 상기 제1 프로세서(100)는 세맵퍼(356)를 확인하여 원디램(300)내의 상기 공유 메모리 영역(320)에 대한 억세스 권한이 있는 지를 체크한다. 만약, 억세스 권한이 없을 경우에 상기 제1 프로세서(100)는 상기 제1 메일 박스(352)를 활용하여 억세스 권한을 획득한다.
S83단계에서, 상기 제1 프로세서(100)는 인스턴트 리드인 경우에는 상기 공유 메모리 영역에 인스턴트 코멘드를 라이트하고, 인스턴트 라이트인 경우에는 플래시 메모리에 인스턴트 데이터가 저장되어야 하므로 상기 공유 메모리 영역에 인스턴트 데이터를 라이트한다. 그리고, 상기 제1 프로세서(100))는 S84단계에서 상기 제1 메일박스(352)에 억세스 권한을 넘긴다는 메시지를 라이트한 다음 세맵퍼(356)의 플래그를 "1"에서 "0"으로 변경한다.
이에 따라 제1 프로세서(100)가 제2 프로세서(200)로 인가하는 인터럽트 A(INT_A)가 발생한다. 상기 인터럽트 A는 인스턴트 리드/라이트를 요청하는 핸드쉐이킹 타입의 인터럽트이다.
이제부터 제2 프로세서(200)의 동작 흐름을 설명하기 위해 도 9를 참조한다.
도 9의 화살부호(AR1)와 같은 인터럽트 A가 S91단계에서 요청되기 전에 제2 프로세서(200)는 S90단계의 멀티플 리드/라이트 동작을 수행할 수 있다. 상기 멀티플 리드/라이트 동작이 도 7의 T2 구간에 해당되는 경우에 인스턴트 데이터의 신뢰성을 보장하여야 할 필요성이 있으므로, 상기 제2 프로세서(200)는 S91단계가 충족되면 S92단계를 즉각적으로 수행한다. 상기 S92단계는 멀티플 리드/라이트 동작을 중단하고, 공유 메모리 영역(320)에 저장된 인스턴트 코멘드에 따라 인스턴트 데이터 우선처리 동작을 즉각적으로 행하는 단계이다. 인스턴트 코멘드가 리드인 경우에 플래시 메모리의 지정된 영역에 있는 데이터가 상기 공유 메모리 영역의 지정된 영역에 라이트된다. 그러한 리드 동작은 제2 프로세서(200)에 의해 수행된다. 한편, 인스턴트 코멘드가 라이트인 경우에 상기 공유 메모리 영역의 지정된 영역에 저장된 라이트 데이터가 상기 플래시 메모리(예컨대 낸드 플래시 메모리)의 지정된 영역에 불휘발적으로 저장된다.
상기 제2 프로세서(200)는 S93단계에서 도 7의 T3구간에서와 같이 인스턴트 데이터의 처리가 완료되었으면, S94단계에서 제2 메일박스(354)에 처리완료 메시지를 라이트한다. 한편, 인스턴트 리드 시에 상기 제2 프로세서(200)는 제2 메일박스(354)에 억세스 권한을 넘긴다는 메시지를 라이트한 다음 세맵퍼(356)의 플래그를 "1"에서 "0"으로 변경한다.
상기 S94단계에서 제2 프로세서(200)가 제1 프로세서(100)로 인가하는 인터럽트 B(INT_B)가 발생된다. 상기 인터럽트 B는 인스턴트 리드/라이트의 요청에 대한 동작 완료를 알려주는 인터럽트이다.
다시 도 8을 참조하면, 상기 인터럽트 B에 의해 상기 제1 프로세서(100)는 S85단계를 수행한다. 상기 S85단계는 상기 제1 프로세서(100)가 상기 제2 메일 박스(354)를 리드하는 단계이다. 여기서, 인스턴트 리드의 경우에 상기 제1 프로세서(100)는 상기 공유 메모리 영역(320)에 대한 억세스 권한을 획득하고 인스턴트 데이터를 리드한다. 결국, 제1 프로세서(100)는 플래시 메모리에 저장된 중요한 데 이터를 제2 프로세서의 멀티플 리드/라이트 동작 중에도 대기 없이 즉각적으로 받을 수 있게 된다.
다시 도 9로 돌아가서, S95단계를 설명한다. 상기 S95단계는 상기 제2 프로세서(200)가 인스턴트 데이터 우선처리 동작이 완료된 후에, 상기 멀티플 리드/라이트 동작의 나머지 동작을 계속적으로 수행하는 단계이다. 결국, 이는 도 7의 제2 케이스(CA2)에서 타임 포인트 t2 이후의 동작 수행을 의미한다.
본 발명의 제2 실시예에 따르면, 인스턴트 데이터에 대한 우선처리 동작 기능의 수행이 실행되므로 긴급 또는 중요 데이터의 신뢰성 저하가 방지된다.
본 발명이 적용되는 멀티 프로세서 시스템에서 프로세서들의 개수는 3개 이상으로 확장될 수 있다. 상기 멀티 프로세서 시스템의 프로세서는 마이크로프로세서, CPU, 디지털 신호 프로세서, 마이크로 콘트롤러, 리듀스드 명령 세트 컴퓨터, 콤플렉스 명령 세트 컴퓨터, 또는 그와 유사한 것이 될 수 있다. 그러나 시스템 내의 프로세서들의 개수들에 의해 본 발명의 범위가 제한되지 않음은 이해되어져야 한다. 부가하면, 본 발명의 범위는 프로세서들이 동일 또는 다르게 되는 경우에 프로세서들의 어느 특별한 조합에 한정되지 않는다.
상기한 설명에서는 본 발명의 실시예들을 위주로 도면을 따라 예를 들어 설명하였지만, 본 발명의 기술적 사상의 범위 내에서 본 발명을 다양하게 변형 또는 변경할 수 있음은 본 발명이 속하는 분야의 당업자에게는 명백한 것이다. 예를 들어, 사안이 다른 경우에 본 발명의 기술적 사상을 벗어남이 없이, 메모리 링크 아키텍쳐의 구성이나 멀티 코멘드 셋의 포맷, 인스턴트 데이터의 처리 방법을 다양하 게 변형 또는 변경할 수 있음은 물론이다.
또한, 에이직(ASIC)프로세서에 의해 플래시 메모리로의 저장이 수행되었으나, 다른 프로세서에 의해서도 수행될 수 있으며, 원디램 내의 공유 메모리 영역과 , 상기 포트 유닛들 간의 데이터 패쓰를 제어하는 데이터 패쓰 콘트롤의 구현을 다양한 방법으로 구현할 수 있을 것이다. 그리고, 내부 레지스터를 이용한 세맵퍼 및 메일박스의 구성을 예를 들었으나 여기에 한정됨이 없이 PRAM 등과 같은 타의 불휘발성 메모리 등에서도 본 발명의 기술적 사상이 확장가능 할 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 멀티 프로세서 시스템의 블록도
도 2는 도 1중 멀티포트 반도체 메모리 장치의 공유 메모리 영역에 대한 메모리 할당을 보여주는 도면
도 3은 도 2중 코멘드 영역들에 각기 저장되는 단위 코멘드 포맷도
도 4는 도 1중 메일박스의 메시지 포맷도
도 5는 도 4의 메시지 포맷을 4바이트로 구현한 경우에 멀티 코멘드 메시지 데이터의 예시적 구성도
도 6은 도 2중 코멘드 영역에 저장되는 멀티 코멘드 셋의 예시도
도 7은 본 발명의 실시예에 따라 멀티플 동작 수행 중 인스턴트 동작을 보여주는 처리 타이밍도
도 8 및 도 9는 도 1에 따른 멀티 프로세서 시스템의 인스턴트 동작 수행에 관련한 제어흐름도

Claims (10)

  1. 메일 박스를 래치 저장부로서 가지며, 데이터 프로세싱을 위한 공유 메모리 영역이 복수의 포트들을 통해 억세스 되는 멀티포트 반도체 메모리 장치와;
    데이터의 리드나 라이트 동작을 복수로 명령하는 멀티 코멘드를 한꺼번에 상기 공유 메모리 영역의 코멘드 영역에 멀티 코멘드 셋으로서 라이트하고 상기 메일 박스를 통해 멀티 코멘드 라이트 메시지를 알리는 제1 프로세서와;
    상기 멀티포트 반도체 메모리 장치 및 불휘발성 반도체 메모리 장치와 함께 메모리 링크 아키텍쳐 구조를 형성하며, 상기 메일 박스를 리드하여 멀티 코멘드의 수신을 인지한 후 상기 코멘드 영역에 저장된 상기 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 모두 수행하는 제2 프로세서를 구비함을 특징으로 하는 멀티 프로세서 시스템.
  2. 제1항에 있어서, 상기 불휘발성 반도체 메모리 장치는 상기 제2 프로세서를 통해 상기 멀티포트 반도체 메모리 장치에 연결되며, 상기 공유 메모리 영역에 저장된 상기 제1 프로세서의 데이터를 저장하는 플래시 메모리임을 특징으로 하는 멀티 프로세서 시스템.
  3. 제2항에 있어서, 상기 멀티 코멘드는 코멘드 타입, 공유 영역 어드레스, 플래시 메모리 어드레스, 및 섹터 카운터를 포함하는 세팅 값들을 가짐을 특징으로 하는 멀티 프로세서 시스템.
  4. 제2항에 있어서, 상기 멀티 코멘드 라이트 메시지는 코멘드 타입, 기능 코드, 및 기능 파라메터를 포함하는 포맷 값들을 가짐을 특징으로 하는 멀티 프로세서 시스템.
  5. 제2항에 있어서, 상기 제1 프로세서가 호스트인 경우에 상기 제2 프로세서는 에이직(ASIC)임을 특징으로 하는 멀티 프로세서 시스템.
  6. 제2항에 있어서, 상기 제2 프로세서는, 상기 멀티플 리드/라이트 동작의 수행 중에 상기 메일 박스를 통하여 인스턴트 데이터 처리 메시지가 인가되는 경우에, 현재의 데이터 처리 작업을 중단하고 상기 공유 메모리 영역에 저장된 인스턴트 코멘드에 따라 인스턴트 데이터 우선처리 동작을 즉각적으로 수행함을 특징으로 하는 멀티 프로세서 시스템.
  7. 제6항에 있어서, 상기 제2 프로세서는, 상기 인스턴트 데이터 우선처리 동작이 완료된 경우에, 상기 멀티플 리드/라이트 동작의 나머지 동작을 계속적으로 수행함을 특징으로 하는 멀티 프로세서 시스템.
  8. 대응되는 프로세서들에 의해 전용으로 억세스되는 전용 메모리 영역들과, 상 기 프로세서들 모두에 의해 공유적으로 억세스되는 공유 메모리 영역과, 상기 프로세서들 간의 통신을 제공하기 위한 제1,2 메일 박스와, 상기 공유 메모리 영역의 사용에 대한 권한 정보를 알리는 세맵퍼를 구비한 멀티 포트 반도체 메모리 장치와;
    데이터의 리드나 라이트 동작을 복수로 명령하는 멀티 코멘드를 한꺼번에 상기 공유 메모리 영역의 코멘드 영역에 멀티 코멘드 셋으로서 라이트하거나 인스턴트 코멘드를 라이트 하고, 상기 제1 메일 박스를 통해 멀티 코멘드 라이트 메시지나 인스턴트 데이터 처리 메시지를 알리는 제1 프로세서와;
    상기 멀티포트 반도체 메모리 장치와 함께 메모리 링크 아키텍쳐 구조를 형성하며, 상기 제1 메일 박스를 리드하여 멀티 코멘드를 인지한 후 상기 코멘드 영역에 저장된 상기 멀티 코멘드 셋에 따른 멀티플 리드/라이트 동작을 순차로 모두 수행하며, 상기 멀티플 리드/라이트 동작의 수행 중에 상기 메일 박스를 통하여 인스턴트 데이터 처리 메시지가 인가되는 경우에 현재의 작업을 중단하고 상기 공유 메모리 영역에 저장된 인스턴트 코멘드에 따라 인스턴트 데이터 우선처리 동작을 즉각적으로 수행하는 제2 프로세서와;
    상기 제2 프로세서에 연결되어 상기 제2 프로세서의 데이터를 불휘발적으로 저장함은 물론, 상기 멀티포트 반도체 메모리 장치를 통해 상기 제1 프로세서의 데이터를 불휘발적으로 저장하기 위한 불휘발성 반도체 메모리 장치를 구비함을 특징으로 하는 멀티 프로세서 시스템.
  9. 제8항에 있어서, 상기 제2 프로세서는 상기 인스턴트 데이터 우선처리 동작이 완료된 경우에 상기 멀티플 리드/라이트 동작의 나머지 동작을 계속적으로 수행함을 특징으로 하는 멀티 프로세서 시스템.
  10. 제8항에 있어서, 상기 제2 프로세서는 상기 인스턴트 데이터 우선처리 동작이 완료된 후에는 상기 제2 메일박스에 완료 메시지를 라이트함을 특징으로 하는 멀티 프로세서 시스템.
KR1020090071549A 2009-08-04 2009-08-04 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템 KR20110013868A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090071549A KR20110013868A (ko) 2009-08-04 2009-08-04 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템
US12/775,748 US20110035537A1 (en) 2009-08-04 2010-05-07 Multiprocessor system having multi-command set operation and priority command operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090071549A KR20110013868A (ko) 2009-08-04 2009-08-04 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템

Publications (1)

Publication Number Publication Date
KR20110013868A true KR20110013868A (ko) 2011-02-10

Family

ID=43535661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090071549A KR20110013868A (ko) 2009-08-04 2009-08-04 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템

Country Status (2)

Country Link
US (1) US20110035537A1 (ko)
KR (1) KR20110013868A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180118926A (ko) * 2017-04-24 2018-11-01 에스케이하이닉스 주식회사 복수의 프로세서를 포함하는 컨트롤러 및 컨트롤러의 동작방법
CN110858187A (zh) * 2018-08-23 2020-03-03 慧荣科技股份有限公司 具有分布式信箱结构的多处理器系统及其处理器错误检查方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101301840B1 (ko) * 2010-12-08 2013-08-29 삼성전자주식회사 비휘발성 메모리 장치의 데이터 처리 방법
US9760526B1 (en) * 2011-09-30 2017-09-12 EMC IP Holdings Company LLC Multiprocessor messaging system
KR101993258B1 (ko) 2012-11-22 2019-09-27 삼성전자주식회사 레지스터 슬라이싱 회로 및 이를 포함하는 시스템 온 칩
KR102156222B1 (ko) * 2013-12-24 2020-09-15 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것을 포함하는 데이터 처리 시스템
US9384830B2 (en) 2014-05-06 2016-07-05 Micron Technology, Inc. Apparatuses and methods for performing multiple memory operations
US10664276B2 (en) * 2016-09-28 2020-05-26 International Business Machines Corporation Remote command invocation using a register for storing a command and an attention bit indicating command has been issued
JP2020503612A (ja) * 2016-12-22 2020-01-30 ニッサン ノース アメリカ,インク 自律走行車両サービスシステム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54129942A (en) * 1978-03-31 1979-10-08 Fujitsu Ltd Direct transfer system between sub-systems
US4494185A (en) * 1981-04-16 1985-01-15 Ncr Corporation Data processing system employing broadcast packet switching
US4387441A (en) * 1981-04-16 1983-06-07 Ncr Corporation Data processing system wherein at least one subsystem has a local memory and a mailbox memory within the local memory for storing header information
US5655131A (en) * 1992-12-18 1997-08-05 Xerox Corporation SIMD architecture for connection to host processor's bus
FR2708763B1 (fr) * 1993-06-30 2002-04-05 Intel Corp Dispositif de mémoire flash, procédé et circuit de traitement d'un ordre d'utilisateur dans un dispositif de mémoire flash et système d'ordinateur comprenant un dispositif de mémoire flash.
US5931920A (en) * 1997-08-05 1999-08-03 Adaptec, Inc. Command interpreter system in an I/O controller
US6785892B1 (en) * 2000-06-23 2004-08-31 Unisys Communications between partitioned host processors and management processor
JP2003114825A (ja) * 2001-10-04 2003-04-18 Hitachi Ltd メモリ制御方法、その制御方法を用いたメモリ制御回路、及びそのメモリ制御回路を搭載する集積回路
US7380085B2 (en) * 2001-11-14 2008-05-27 Intel Corporation Memory adapted to provide dedicated and or shared memory to multiple processors and method therefor
US7302503B2 (en) * 2002-04-01 2007-11-27 Broadcom Corporation Memory access engine having multi-level command structure
US6721820B2 (en) * 2002-05-15 2004-04-13 M-Systems Flash Disk Pioneers Ltd. Method for improving performance of a flash-based storage system using specialized flash controllers
US7203811B2 (en) * 2003-07-31 2007-04-10 International Business Machines Corporation Non-fenced list DMA command mechanism
US20060149877A1 (en) * 2005-01-03 2006-07-06 Pearson Adrian R Interrupt management for digital media processor
US8117475B2 (en) * 2006-12-15 2012-02-14 Microchip Technology Incorporated Direct memory access controller
KR101430687B1 (ko) * 2007-09-28 2014-08-18 삼성전자주식회사 다이렉트 억세스 부팅동작을 갖는 멀티 프로세서 시스템 및그에 따른 다이렉트 억세스 부팅방법
KR20090033539A (ko) * 2007-10-01 2009-04-06 삼성전자주식회사 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180118926A (ko) * 2017-04-24 2018-11-01 에스케이하이닉스 주식회사 복수의 프로세서를 포함하는 컨트롤러 및 컨트롤러의 동작방법
CN110858187A (zh) * 2018-08-23 2020-03-03 慧荣科技股份有限公司 具有分布式信箱结构的多处理器系统及其处理器错误检查方法

Also Published As

Publication number Publication date
US20110035537A1 (en) 2011-02-10

Similar Documents

Publication Publication Date Title
KR20110013868A (ko) 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템
KR20100133649A (ko) 메모리 링크 아키텍쳐에서 파워 오프 시 데이터 로스를 방지하는 기능을 갖는 멀티 프로세서 시스템
KR20090033539A (ko) 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법
KR20110013867A (ko) 메모리 링크 아키텍쳐에서 플래시 레스 부팅 기능을 갖는 멀티 프로세서 시스템
US7411859B2 (en) Multi-port memory device for buffering between hosts
US8423755B2 (en) Memory system and memory management method including the same
JP4593575B2 (ja) 埋め込み型コンピュータシステムの各構成部材のための共通化インターフェース
KR20100041309A (ko) 각 프로세서들의 어플리케이션 기능을 모두 활용 가능한 멀티 프로세서 시스템
US20080256305A1 (en) Multipath accessible semiconductor memory device
KR100847968B1 (ko) 컴퓨팅 시스템, 전자 통신 디바이스, 컴퓨팅 시스템 운영 방법 및 정보 처리 방법
CN1988034A (zh) 具有在端口间的数据发送模式的多径访问半导体存储器件
US8171233B2 (en) Multi port semiconductor memory device with direct access function in shared structure of nonvolatile memory and multi processor system thereof
US20090254698A1 (en) Multi port memory device with shared memory area using latch type memory cells and driving method
KR20090013342A (ko) 멀티 포트 반도체 메모리 장치 및 그에 따른 리프레쉬 방법
US20160062659A1 (en) Virtual memory module
US8886915B2 (en) Multiprocessor system having direct transfer function for program status information in multilink architecture
US10241687B2 (en) Method for operating semiconductor device and semiconductor system
KR20090008519A (ko) 공유 레지스터를 갖는 멀티패쓰 억세스블 반도체 메모리장치 및 그에 따른 공유 레지스터 운영방법
US11856058B2 (en) Peer to peer transfer of proof of space plots to or from solid state drives
US11960756B2 (en) Management of storage space in solid state drives to support proof of space activities
US20100077130A1 (en) Multiprocessor system with booting function using memory link architecture
US20230185738A1 (en) Automated Participation of Solid State Drives in Activities Involving Proof of Space
US20100070691A1 (en) Multiprocessor system having multiport semiconductor memory device and nonvolatile memory with shared bus
KR20130021704A (ko) 멀티포트 메모리 소자, 이를 포함하는 반도체 장치 및 시스템
KR20090032415A (ko) 프로세서 웨이크 업 기능을 갖는 멀티포트 반도체 메모리장치 및 이를 채용한 멀티 프로세서 시스템 그리고 멀티프로세서 시스템에서의 프로세서 웨이크 업 방법

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