KR20090033539A - 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법 - Google Patents

프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법 Download PDF

Info

Publication number
KR20090033539A
KR20090033539A KR1020070098588A KR20070098588A KR20090033539A KR 20090033539 A KR20090033539 A KR 20090033539A KR 1020070098588 A KR1020070098588 A KR 1020070098588A KR 20070098588 A KR20070098588 A KR 20070098588A KR 20090033539 A KR20090033539 A KR 20090033539A
Authority
KR
South Korea
Prior art keywords
area
processor
processors
memory
memory device
Prior art date
Application number
KR1020070098588A
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 KR1020070098588A priority Critical patent/KR20090033539A/ko
Priority to US12/197,472 priority patent/US20090089487A1/en
Publication of KR20090033539A publication Critical patent/KR20090033539A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0851Cache with interleaved addressing
    • 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/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • 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
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers

Landscapes

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

Abstract

공유 메모리 영역 내에 메일박스처럼 사용 가능한 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치를 포함하는 멀티 프로세서 시스템이 개시된다. 그러한, 멀티 프로세서 시스템은, 제1 타스크를 수행하는 제1 프로세서; 제2 타스크를 수행하는 제2 프로세서; 및 상기 제1,2 프로세서들에 의해 각기 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역 내에서, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 구비한 멀티포트 반도체 메모리 장치를 구비한다. 공유 메모리 영역 내에 메일박스처럼 사용할 수 있는 프로토콜 정의영역을 할당하고 프로세서들이 메모리들을 제어하는데 필요한 표준 프로토콜을 제공하는 본 발명에 따르면, 프로세서 메이커의 메모리 제어 알고리즘이 규격화되어 시스템 개발이 용이해지는 효과가 있다.
Figure P1020070098588
멀티 프로세서 시스템, 멀티포트 반도체 메모리 장치, 공유 메모리 영역, 프로토콜 정의영역,

Description

프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및 그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체 메모리 장치의 억세스 방법{Multi port semiconductor memory device having protocol define portion and access method therefore}
본 발명은 멀티포트 반도체 메모리 장치에 관한 것으로, 특히 다중경로를 통하여 억세스 되는 공유 메모리 영역을 갖는 반도체 메모리 장치와 그 반도체 메모리 장치를 구비한 멀티 프로세서 시스템에 관한 것이다.
오늘날 인간생활의 유비쿼터스 지향추세에 따라, 인간들이 취급하게 되는 전자 시스템도 그에 부응하여 눈부시게 발전되고 있다. 최근에 모바일 통신 시스템, 예를 들어 휴대용 멀티미디어 플레이어(PMP), 핸드 헬드 폰(HHP), 또는 PDA 등의 멀티미디어 전자기기에서는 기능이나 동작 수행의 고속화 및 원활화를 도모하기 위하여 하나의 시스템 내에 복수의 프로세서를 채용한 멀티 프로세서 시스템이 선호된다. 예를 들어, 도 1에서 보여지는 바와 같은 휴대용 전화기(1)은 바디부(1a)와, 표시부(1b)를 가지는데, 사용자들의 컨버젼스 요구에 부응하여, 전화 기능 이외에 음악, 게임, 카메라, 또는 동영상 기능 등이 구현될 수 있다. 따라서, 그러한 경우에 통신 변복조 기능을 수행하는 통신 프로세서와, 상기 통신 기능을 제외한 어플리케이션 기능을 수행하는 응용 프로세서가 상기 바디부(1a)내의 인쇄회로 기판에 함께 채용될 필요성이 있다.
그러한 멀티 프로세서 시스템에서 프로세싱 데이터를 저장하기 위해 채용되는 반도체 메모리는 동작이나 기능 면에서 다양하게 변화된다. 예컨대, 복수의 억세스 포트를 가지고서 그 억세스 포트들 각각을 통해 동시에 데이터를 입출력할 것이 요구될 수 있다.
일반적으로, 2개의 억세스 포트를 갖는 반도체 메모리 소자는 듀얼포트 메모리로 칭해지고 있다. 전형적인 듀얼포트 메모리는 널리 공지된 것으로서, 랜덤 시퀀스로 억세스 가능한 RAM포트와 시리얼 시퀀스만으로 억세스 가능한 SAM 포트를 가지는 이미지 프로세싱용 비디오 메모리이다. 한편, 후술될 본 발명의 설명에서 보다 명확하게 구별될 것이지만, 그러한 비디오 메모리의 구성과는 달리, SAM 포트를 가지지 않으며, DRAM 셀로 구성된 메모리 셀 어레이 중 공유 메모리 영역을 복수의 억세스 포트를 통하여 각각의 프로세서들이 억세스 할 수 있도록 하는 다이나믹 랜덤 억세스 메모리를 우리는 상기 듀얼포트 메모리와 보다 철저히 구별하기 위하여 본 명세서 내에서 멀티포트 반도체 메모리 장치 또는 멀티패쓰 억세스블 반도체 메모리 장치라고 칭하기로 한다.
상기한 멀티 프로세서 시스템에 적합한 멀티포트 반도체 메모리를 개시하는 선행 기술의 일 예는, 에우지니 피.매터(Matter)외 다수에 의해 발명되어 2003년 5 월 15일자로 미합중국에서 특허공개된 공개번호 US2003/0093628호에 개시되어 있다. 상기 선행기술은 공유 메모리 영역이 복수의 프로세서에 의해 억세스될 수 있게 하는 기술로서, 메모리 어레이는 제1,2,3 포션으로 이루어져 있고, 상기 메모리 어레이의 제1 포션은 제1 프로세서에 의해서만 억세스되고 상기 제2 포션은 제2 프로세서에 의해서만 억세스되며, 제3 포션은 공유 메모리 영역으로서 상기 제1,2 프로세서들 모두에 의해 억세스 된다.
상기한 선행기술과는 대조적으로, 전형적인 멀티 프로세서 시스템에서는 프로세서의 부트 코드가 저장되어 있는 불휘발성 메모리 예컨대 플래시 메모리가 프로세서 당 1개씩 구비되어 있으며, 휘발성 메모리로서의 디램도 각기 대응되는 프로세서마다 연결되어 있다. 따라서, 각 프로세서마다 디램 및 플래시 메모리가 각기 채용되어 있는 구조이므로, 멀티 프로세서 시스템의 구성이 복잡하고 시스템 구현시 가격이 상승됨은 분명하다.
따라서, 본 분야에서의 컨벤셔날 기술로서, 모바일 통신 디바이스에 채용될 수 있는 멀티 프로세서 시스템이 도 2와 같이 제안되었다. 도 2는 컨벤셔날 기술에 따라 멀티포트 반도체 메모리 장치(원디램)을 갖는 멀티 프로세서 시스템의 개략적 블록도이다.
도 1에서 보여지는 바와 같이, 제1,2 프로세서들(100,200)을 가지는 멀티 프로세서 시스템에서, 하나의 멀티포트 DRAM(400)과 하나의 플래시 메모리(300)가 공유적으로 사용된다. 여기서, 상기 제1 프로세서(100)는 설정된 타스크(Task) 예컨대 통신신호의 변조 및 복조를 수행하는 모뎀(MODEM) 프로세서의 기능을 담당할 수 있으며, 상기 제2 프로세서(200)는 통신 데이터의 처리나 게임, 오락 등의 사용자 편의 기능을 수행하기 위한 어플리케이션 프로세서의 기능을 담당할 수 있다. 그러나, 사안이 다른 경우에 상기 프로세서들의 기능은 서로 반대로 되거나 추가될 수 있다.
상기 플래시 메모리(300)는, 셀 어레이의 구성이 NOR 구조를 갖게 되는 NOR 플래시 메모리나 셀 어레이의 구성이 NAND 구조를 갖게 되는 NAND 플래시 메모리일 수 있다. NOR 플래시 메모리나 NAND 플래시 메모리 모두는 플로팅 게이트를 갖는 모오스 트랜지스터로 이루어진 메모리 셀을 어레이 형태로서 갖는 불휘발성 메모리로서, 전원이 오프되더라도 지워져서는 아니되는 데이터 예컨대 휴대용 기기의 부트 코드 및 보존용 데이터의 저장을 위해 탑재된다.
또한, 원디램(oneDRAM)으로도 불려지는 멀티포트 DRAM(400)은 프로세서들(100,200)의 데이터 처리를 위한 메인 메모리로서 기능한다. 도 2에서 보여지는 바와 같이, 하나의 멀티포트 DRAM(400)이 서로 다른 2개의 억세스 패쓰를 통하여 제1,2 프로세서들(100,200)에 의해 각기 억세스 될 수 있도록 하기 위해, 상기 멀티포트 DRAM(400)의 내부에는 시스템 버스들(B1,B2)에 각기 대응적으로 연결되는 포트들과 메모리 뱅크들이 마련된다. 그러한 복수의 포트 구성은 단일 포트를 갖는 통상의 DRAM과는 상이함을 알 수 있다.
도 2의 멀티포트 DRAM(400)내에서 4개의 메모리 영역들(10,11,12,13)이 메모리 셀 어레이를 구성하는 것이 보여진다. 예를 들어, 제1 뱅크(10)는 제1 포트를 통하여 제1 프로세서(100)에 의해 전용으로 억세스 되고, 제3 뱅크 및 제4 뱅 크(12,13)는 제2 포트를 통하여 제2 프로세서(200)에 의해 전용으로 억세스 될 수 있다. 한편, 제2 뱅크(11)는 서로 다른 포트인 제1,2 포트를 통하여 상기 제1,2프로세서들(100,200) 모두에 의해 억세스 될 수 있다. 결국, 메모리 셀 어레이 내에서 제2 뱅크(11)는 공유 메모리 영역으로서 할당되고, 제1,3, 및 4 뱅크들(10,12,13)은 각기 대응되는 프로세서에 의해서만 억세스되는 전용 메모리 영역으로서 할당되었음을 알 수 있다.
또한, 메일 박스들(52,53)은 상기 멀티포트 DRAM(400)내에서 메모리 셀 어레이 영역과는 별도로 마련된 내부 레지스터에 포함되는 저장영역이다. 상기 메일 박스들(52,53)은 DRAM의 메모리 셀과는 다른 래치타입 저장셀로 구성되므로 리프레쉬 동작을 요하지 않는다.
상기 제1,2 프로세서들(100,200)간의 데이터 인터페이스가 멀티포트 DRAM(400)을 통해 구현되는 경우라면 상기 제1,2 프로세서들(100,200)은 상기 메일 박스들(52,53)활용하여 상대 프로세서에게 메시지를 라이트할 수 있다. 라이트된 메시지를 리드한 수신 측 프로세서는 전송 측 프로세서의 메시지를 인식하고 그에 응답한 동작을 수행한다.
이와 같이 메일 박스들(52,53)을 활용하여 프로세서들이 디램 인터페이스를 통한 데이터 통신을 행하면, 호스트 인터페이스가 제거 또는 최소화되고 시스템 구조가 콤팩트 해지며, 시스템 동작상의 이점이 기대된다. 이에 따라, 플래시 메모리(300)와 직접적으로 연결되어 있지 아니한 제1 프로세서(100)도 상기 멀티포트 DRAM(400)을 통하여 플래시 메모리(300)를 간접적으로 억세스 하는 것이 가능하게 된다.
상술한 바와 같이 공유 메모리 영역을 갖는 멀티포트 DRAM(400)을 구비한 도 2의 멀티 프로세서 시스템에서는 각 프로세서마다 DRAM 및 플래시 메모리가 각기 대응적으로 할당될 필요 없이 공유적으로 사용되므로, 시스템 사이즈의 복잡성이 제거되며 메모리들의 채용 개수가 줄어듬을 알 수 있다.
도 2내에서 보여지는 멀티포트 DRAM(400)은 메모리 반도체 메이커로서 세계적으로 유명한 대한민국의 삼성전자에 의해 등록제품명 "원디램" 으로서 제조되는 디램 타입 메모리의 기능과 실질적으로 유사하다. 그러한 원디램은 모바일 디바이스 내에서 통신 프로세서와 미디어 프로세서 간의 데이터 처리 속도를 현저히 증가시킬 수 있는 퓨전 메모리 칩이다. 일반적으로 두 프로세서들이 있는 경우에 두 개의 메모리 버퍼들이 통상적으로 요구된다. 그렇지만, 원디램 솔루션은, 프로세서들간의 데이터를 단일 칩을 통하여 라우팅할 수 있기 때문에, 두 개의 메모리 버퍼들에 대한 필요성을 제거할 수 있다. 또한 듀얼 포트 어프로치를 취함에 의해, 원 디램은 프로세서들 간의 데이터 전송에 걸리는 시간을 상당히 감소시킨다. 단일 원디램 모듈은 고성능 스마트 폰 및 다른 멀티미디어 리치 핸드 셋(rich-handset)내에서 적어도 2개의 모바일 메모리 칩들을 대치할 수 있다. 프로세서들 간의 데이터 처리 속도가 보다 빨라짐에 따라 원디램은 전력 소모를 약 30퍼센트 정도 감소시키며, 필요해지는 칩 수를 줄이고, 토탈 다이 에리어 커버리지를 약 50퍼센트 축소시킬 수 있다. 이 결과는 셀룰러 폰의 속도를 약 5배 증가시키고 배터리 수명을 길게 하고 핸드셋 디자인을 슬림하게 하는 결과를 야기한다.
그러나, 도 2의 멀티 프로세서 시스템에서, 원디램(400) 인터페이스를 통해 데이터 통신을 하는데 대한 표준화된 통신 규약이 없는 실정이다. 즉, 원디램을 사용할 경우 양쪽의 프로세서가 상호간 동작에 대한 프로토콜을 규정하여 원디램을 통한 통신을 행하여야 하는데, 원디램을 동작시키는 방법은 원디램을 채용하는 프로세서마다 제각기 다르므로, 시스템의 개발 시간이나 개발 아이템이 늘어난다.
따라서, 멀티포트 반도체 메모리 장치인 원디램을 보다 효율적으로 사용하기 위해 메모리 억세스에 대한 프로세서 상호간 프로토콜을 효율적으로 규정해야할 필요성이 있다. 또한, 상기 메일 박스에 라이트 되는 메시지의 용량을 줄이고, 시스템 개발의 용이성을 증진시키기 위해 프로세서 메이커의 메모리 제어 알고리즘을 규격화되도록 할 필요성이 있다.
결국, 컨벤셔날 기술에서는 멀티포트 반도체 메모리 장치를 통해 데이터 통신을 하는데 대한 표준화된 통신 규약이 없어, 시스템의 개발 시간이나 개발 아이템이 늘어나게 되는 문제가 있다.
본 발명의 목적은 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및 그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체 메모리 장치의 억세스 방법을 제공함에 있다.
본 발명의 다른 목적은 메모리 억세스에 대한 프로세서 상호간 프로토콜을 효율적으로 규정할 수 있는 영역을 갖는 멀티포트 반도체 메모리 장치를 제공함에 있다.
본 발명의 또 다른 목적은 메일 박스에 라이트 되는 메시지의 용량을 줄이고, 시스템 개발의 용이성을 증진시키기 위해 프로세서 메이커의 메모리 제어 알고리즘이 규격화되게 할 수 있는 멀티포트 반도체 메모리 장치 및 그를 채용한 멀티 프로세서 시스템을 제공함에 있다.
본 발명의 또 다른 목적은 공유 메모리 영역 내에 메일박스처럼 사용할 수 있는 프로토콜 정의영역을 할당하고 프로세서들이 메모리들을 제어하는데 필요한 표준 프로토콜을 제공할 수 있는 멀티포트 반도체 메모리 장치를 제공함에 있다.
상기한 본 발명의 목적들을 달성하기 위하여 발명의 일 양상(aspect)에 따른 멀티 프로세서 시스템은, 제1 타스크를 수행하는 제1 프로세서; 제2 타스크를 수행하는 제2 프로세서; 및 상기 제1,2 프로세서들에 의해 각기 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역 내에서, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 구비한 멀티포트 반도체 메모리 장치를 구비한다.
본 발명의 실시 예에서는, 상기 프로세서들 간의 데이터 인터페이스 기능을 제공하기 위해 상기 공유 메모리 영역의 특정 어드레스에 대응하여 대치적으로 억 세스 되며, 상기 메모리 셀 어레이의 외부에 위치된 내부 레지스터를 더 구비한다. 여기서, 상기 내부 레지스터는 상기 공유 메모리 영역에 대한 제어 권한을 저장하는 세맵퍼 영역과, 데이터 전송 방향에 대응되는 프로세서로 각기 인가되어질 메시지를 저장하는 메일박스 영역들을 포함한다.
본 발명의 실시예에서 상기 프로토콜 정의영역은 상기 메일박스 영역들에 저장되어질 메시지의 일부를 디램 메모리 셀에 대치적으로 저장하는 기능을 수행한다.
바람직하기로, 상기 프로토콜 정의영역에는 코맨드 셋이 저장되거나, 코맨드, 어드레스, 또는 프로세서들 간 데이터 통신 프로토콜을 위한 플래그 데이터가 저장될 수 있다.
본 발명의 실시예에서 상기 제2 프로세서에 의해 억세스되며, 낸드 타입의 메모리 셀 구조를 갖는 낸드 타입 플래시 메모리가 더 구비되며, 상기 메모리 셀 어레이 내에는 상기 제1,2 프로세서들 각각에 의해 전용으로 억세스 되는 전용 메모리 영역들이 더 구비된다.
바람직하기로, 상기 제1 타스크는 통신 변복조 기능을 수행하는 작업을 포함하며, 상기 제2 타스크는 멀티미디어 정보를 처리하는 기능을 수행하는 작업을 포함할 수 있다.
본 발명의 실시예에서 상기 멀티 프로세서 시스템은 차량 모바일 폰, PMP, PSP, PDA, 또는 휴대용 전화기 중의 하나이며, 상기 설정된 메모리 용량단위는 메모리 뱅크 단위이다.
본 발명의 다른 기술적 양상에 따라, 제1 타스크를 수행하는 제1 프로세서와 제2 타스크를 수행하는 제2 프로세서의 사이에 동작적으로 연결되는 멀티포트 반도체 메모리 장치는,
상기 제1,2 프로세서들에 의해 각기 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역과; 상기 공유 메모리 영역은 특정 어드레스에 대응하여 디세이블 되는 디세이블 영역과, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 가지며,
상기 제1,2 프로세서들 간의 데이터 인터페이스 기능을 제공하기 위해 상기 공유 메모리 영역의 특정 어드레스에 대응하여 대치적으로 억세스 되며, 상기 메모리 셀 어레이의 외부에 위치된 내부 레지스터를 구비한다.
본 발명의 실시예에서 상기 제1 프로세서는 통신 프로세서이고, 상기 제2 프로세서는 어플리케이션 프로세서이다.
본 발명의 실시예에서 상기 내부 레지스터는 상기 공유 메모리 영역에 대한 제어 권한을 저장하는 세맵퍼 영역과, 데이터 전송 방향에 대응되는 프로세서로 각기 인가되어질 메시지를 저장하는 메일박스 영역들을 포함한다.
바람직하기로, 상기 프로토콜 정의영역은 상기 메일박스 영역들에 저장되어질 메시지의 일부를 디램 메모리 셀에 대치적으로 저장하는 기능을 수행한다.
또한, 상기 프로토콜 정의영역에는 코맨드, 어드레스, 또는 프로세서들 간 데이터 통신 프로토콜을 위한 플래그 데이터가 저장될 수 있다.
본 발명의 실시예에서, 상기 메모리 셀 어레이 내에는 상기 제1,2 프로세서들 각각에 의해 전용으로 억세스 되는 전용 메모리 영역들이 더 구비될 수 있다.
본 발명의 또 다른 기술적 양상에 따라, 제1 타스크를 수행하는 제1 프로세서와 제2 타스크를 수행하는 제2 프로세서의 사이에 동작적으로 연결되는 멀티포트 반도체 메모리 장치와 상기 제2 프로세서에 동작적으로 연결된 불휘발성 반도체 메모리 장치를 가지는 멀티 프로세서 시스템에서의, 상기 멀티포트 반도체 메모리 장치를 구동하는 방법은,
상기 멀티포트 반도체 메모리 장치 내에 서로 다른 포트를 통해 공유적으로 억세스 되는 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역과, 특정 어드레스에 대응하여 디세이블되는 디세이블 영역을 메모리 셀 어레이 내에 마련하고,
상기 특정 어드레스에 대응하여 대치적으로 억세스 되도록 하기 위해 상기 메모리 셀 어레이의 외부에 내부 레지스터를 준비하고,
상기 프로토콜 정의영역을 점유한 프로세서가 미리 정의된 영역에 메시지를 규정대로 라이트 한 다음에 데이터 통신을 수행한다.
보다 구체적인 실시예에 따라, 제1 타스크를 수행하는 제1 프로세서와 제2 타스크를 수행하는 제2 프로세서의 사이에 동작적으로 연결되는 멀티포트 반도체 메모리 장치와 상기 제2 프로세서에 동작적으로 연결된 불휘발성 반도체 메모리 장치를 가지는 멀티 프로세서 시스템에서의, 상기 멀티포트 반도체 메모리 장치를 억세스하는 방법은,
상기 멀티포트 반도체 메모리 장치 내에 서로 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역을 준비하되, 상기 공유 메모리 영역에는 특정 어드레스에 대응하여 디세이블되는 디세이블 영역과, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 준비하는 단계와;
상기 공유 메모리 영역의 특정 어드레스에 대응하여 대치적으로 억세스 되도록 하기 위해 상기 메모리 셀 어레이의 외부에 내부 레지스터를 준비하는 단계와;
상기 프로토콜 정의영역을 점유한 프로세서가 정의된 영역에 메시지를 규정대로 라이트 하고 상기 공유 메모리 영역의 데이터 저장영역에 데이터를 라이트한 다음, 상기 내부 레지스터의 상대 프로세서를 향한 메일 박스에 라이트 이벤트의 발생을 라이트 하는 단계와;
상기 상대 프로세서가 상기 메일 박스를 리드하고 상기 프로토콜 정의영역에 라이트된 메시지를 리드한 후, 상기 공유 메모리 영역의 데이터 저장영역에 라이트된 데이터를 리드하는 단계를 구비한다.
상기한 바와 같이, 공유 메모리 영역 내에 메일박스처럼 사용할 수 있는 프로토콜 정의영역을 할당하고 프로세서들이 메모리들을 제어하는데 필요한 표준 프로토콜을 제공하는 본 발명에 따르면, 프로세서 메이커의 메모리 제어 알고리즘이 규격화되어 시스템 개발이 용이해지는 효과가 있다.
이하에서는 본 발명에 따라, 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및 그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체 메모리 장치의 억세스 방법에 관한 바람직한 실시예가 첨부된 도면들을 참조로 설명될 것이다.
이하의 실시예에서 많은 특정 상세들이 도면을 따라 예를 들어 설명되고 있지만, 이는 본 분야의 통상의 지식을 가진 자에게 본 발명의 보다 철저한 이해를 돕기 위한 의도 이외에는 다른 의도 없이 설명되었음을 주목(note)하여야 한다. 그렇지만, 본 발명이 이들 특정한 상세들 없이도 실시될 수 있을 것임은 본 분야의 숙련된 자들에 의해 이해될 수 있을 것이다. 다른 예증, 공지 방법들, 프로시져들, 통상적인 다이나믹 랜덤 억세스 메모리 및 회로들은 본 발명을 모호하지 않도록 하기 위해 상세히 설명되지 않는다.
먼저, 본 발명의 기술적 특징을 간략히 설명하면 다음과 같다. 프로세서들이 공통으로 억세스할 수 있는 공유 메모리 영역의 일부를 프로토콜 정의영역으로 설정하고, 그 설정된 영역에 코멘드/어드레스 등 프로세서들 상호간 통신을 위한 정보가 저장되도록 하는 것이다. 이에 따라 프로토콜 정의영역은 내부 레지스터처럼 활용되어, 멀티포트 반도체 메모리 장치를 통한 프로세서들 간의 데이터 통신이 설정된 프로토콜에 의해 수행된다. 따라서, 프로세서들에게 규격화된 원디램 제어 알고리즘을 제공하고 원디램의 메일 박스 사이즈는 최소화되거나 줄어든다. 또한, 프로세서 메이커간 규격화되어진 프로토콜이 제공되어 시스템 개발의 편리성이 도모 된다.
도 3은 본 발명에 따라 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치를 채용한 멀티 프로세서 시스템의 개략적 블록도이다.
모바일 폰, PMP, PSP, PDA, 또는 휴대용 전화기 중의 하나를 구성할 수 있는 도 3을 참조하면, 제1,2 프로세서들(100,200)을 가지는 멀티 프로세서 시스템에서, 하나의 멀티포트 DRAM(400)과 하나의 플래시 메모리(300)가 공유적으로 사용되는 시스템 연결 구조가 보여진다.
도 3의 멀티 프로세서 시스템에서는 도 2의 연결구조와는 달리, 공유 메모리 영역인 제2 뱅크(11)내에 프로토콜 정의영역(110)이 설정되어 있다. 즉, 상기 제1,2 프로세서들(100,200)에 의해 각기 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역(11)내에서, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역(REA:110)을 구비한 것이 본 발명의 실시예에서의 기술적 특징이다.
도 3의 멀티포트 DRAM(400)내에서도 4개의 메모리 영역들(10,11,12,13)이 메모리 셀 어레이를 구성할 수 있다. 이 경우에 예를 들어, 제1 뱅크(10)는 제1 포트를 통하여 제1 프로세서(100)에 의해 전용으로 억세스 되고, 제3 뱅크 및 제4 뱅크(12,13)는 제2 포트를 통하여 제2 프로세서(200)에 의해 전용으로 억세스 될 수 있다. 한편, 제2 뱅크(11)는 서로 다른 포트인 제1,2 포트를 통하여 상기 제1,2프로세서들(100,200) 모두에 의해 억세스 될 수 있다. 결국, 메모리 셀 어레이 내에 서 제2 뱅크(11)는 공유 메모리 영역으로서 할당되고, 제1,3, 및 4 뱅크들(10,12,13)은 각기 대응되는 프로세서에 의해서만 억세스되는 전용 메모리 영역으로서 할당된다.
여기서, 상기 4개의 메모리 영역들(10,11,12,13)은 각기 DRAM의 뱅크 단위로 구성될 수 있으며, 하나의 뱅크는 예컨대 64Mb(메가비트), 128Mb, 256Mb, 512Mb, 또는 1024Mb 의 메모리 스토리지를 가질 수 있다.
도 3에서도 메일 박스들(52,53)은 상기 멀티포트 DRAM(400)내에서 메모리 셀 어레이 영역과는 별도로 마련된 내부 레지스터에 포함되는 저장영역이다. 상기 메일 박스들(52,53)은 DRAM의 메모리 셀과는 다른 래치타입 저장셀로 구성되므로 리프레쉬 동작을 요하지 않는다.
상기 제1,2 프로세서들(100,200)간의 데이터 인터페이스가 멀티포트 DRAM(400)을 통해 구현되는 경우에, 상기 제1,2 프로세서들(100,200)은 상기 프로토콜 정의영역(110)을 통하여 메시지를 포맷대로 라이트하고, 상기 메일 박스들(52,53)을 통해 상대 프로세서에게 메시지를 라이트한 결과를 전송할 수 있다.
도 4는 도 3중 공유 메모리 영역에 설정되는 프로토콜 정의영역의 구성 예를 보여주는 도면이다.
도 4를 참조하면, 도 3의 제2뱅크(11)가 3개의 영역으로 구별된 것이 보여진다. 영역(A)은 데이터의 저장이 수행되지 않는 디세이블 영역이고, 영역(C)은 데이터의 저장이 수행되는 데이터 저장영역이다. 상기 디세이블 영역(A)은 세맵퍼/메일박스/체크 비트 갖는 상기 레지스터 영역의 인에이블을 위해 디세이블 되는 1 로우 디세이블 영역이다.
본 발명에 따라, 상기 제2뱅크(11)내에 마련된 프로토콜 정의영역(110)의 규정은 다음과 같이 설정될 수 있다. 상기 프로토콜 정의영역(110)도 상기 디세이블 영역(A)과 유사하게 약 2K바이트 영역으로 설정되며, 코멘드/어드레스/메시지 등의 데이터가 디램 셀로 이루어진 셀들 내에 라이트된다.
상기 프로토콜 정의영역(110)내에서, 디램/플래시 영역(11a)은 2비트로서 할당될 수 있으며, 여기에는 디램 또는 플래시 메모리의 코멘드 라는 것을 나타내는 데이터가 들어있다. 예를 들어, 데이터 "11"이 저장되어 있으면 디램을 억세스 하는 코멘드라는 것을 의미하고, 데이터 "00"이 저장되어 있으면, 플래시 메모리를 억세스하기 위한 코멘드라는 것을 의미한다. 공유 메모리 영역의 리드/라이트를 나타내는 영역(11b)은 1 비트로서 할당될 수 있다. 예를 들어, 데이터 "1"이 저장되어 있으면 공유 메모리 영역의 데이터를 리드하라는 코멘드이고, 데이터"0"이 저장되어 있으면 공유 메모리 영역의 데이터를 라이트 하라는 코멘드이다.
공유 메모리 영역의 스타트 어드레스를 나타내는 스타트 어드레스 영역(11c)은 26비트로서 할당될 수 있다. 공유 영역의 목적지 어드레스를 나타내는 목적지(destination)어드레스 영역(11d)은 26비트로서 할당될 수 있다. 데이터 사이즈를 나타내는 영역(11e)은 전송되어질 데이터의 사이즈를 가리키는 영역으로서 10비트로서 할당될 수 있다. 플래시 메모리의 리드/프로그램을 나타내는 영역(11f)은 1비트로서 할당될 수 있다. 플래시 메모리에 데이터를 리드/프로그램할 스타트 어드레스를 가리키는 영역(11g)은 30비트로서 할당될 수 있다. 플래시 메모리에 데이터 를 리드/프로그램할 목적지 어드레스를 가리키는 영역(11h)은 30비트로서 할당될 수 있다. 플래시 메모리에 리드/프로그램할 데이터 사이즈를 나타내는 영역(11i)은 10비트로서 할당될 수 있다. 리저브 영역(11j)은 필요시 추가로 정의될 수 있는 여분의 영역이다.
도 4에서 설명된 바와 같이, 규격화된 프로토콜을 제공할 경우에 프로세서 메이커 업체별로 제각각 프로토콜 정의를 할 필요가 없어, 통일된 IPC(인터 프로세서 콜:inter processor call)드라이버 제공이 용이해진다. 결국, 업체 바이 업체 별로 기술협의를 통한 IPC 알고리즘 수립이 필요 없기 때문에, 메모리 링크 아키텍쳐 구성 시 IPC 드라이버 개발을 위한 리소스 투입이 줄어든다.
또한, 상기 프로토콜 정의영역을 마련하는 것에 의해, 내부 레지스터 내에 할당된 메일 박스들의 저장 사이즈가 대폭적으로 줄어든다. 즉, 전달 메시지의 대부분의 내용은 상기 프로토콜 정의영역에 저장되기 때문에, 메일 박스들은 메시지의 전달 여부만을 알려주는 기능만 하면 되는 것이다. 이에 따라 32비트 정도로 할당되던 레지스터 영역을 약 2비트 이내로 줄일 수 가 있다.
그리고, 원디램의 억세스 동작시 바운더리를 규정지을 수 있기 때문에 테스트 아이템 정의가 가능하게 되어, 테스트 커버리지 확보기능이 제공된다.
결국, 공유 메모리 영역 내에 메일박스처럼 사용할 수 있는 프로토콜 정의영역을 할당하고 프로세서들이 메모리들을 제어하는데 필요한 표준 프로토콜을 제공하면, 프로세서 메이커의 메모리 제어 알고리즘이 규격화되어 시스템 개발이 용이해진다.
도 5는 도 3에 따라 데이터 전송에 관련된 동작 타이밍도이다. 도면에서, CLK는 시스템 클럭을, CMD1은 제1 프로세서(100)로부터 인가되는 코멘드를 나타낸다. DO1은 제1 프로세서(100)의 코멘드에 응답하여 상기 프로토콜 저장영역(110)에 라이트되는 데이터를 나타낸다. /INTb는 인터럽트 신호를 나타내는 것으로, 원디램에서 상기 제2 프로세서(200)로 전송되는 신호이다. CMD2는 제2 프로세서(200)로부터 인가되는 코멘드를 나타내고, DO2는 제2 프로세서(200)의 코멘드에 응답하여 상기 프로토콜 저장영역(110)에서 리드된 데이터 및 도 4의 데이터 저장영역(116)에서 리드된 데이터를 보여준다. 참조 부호 P1은 편의상 제1 프로세서(100)의 동작 타이밍을, P2는 제2 프로세서(200)의 동작 타이밍을 가리킨다.
도 5에 대한 구체적인 타이밍의 설명은 후술될 것이다.
도 6은 도 3에 따른 멀티 포트 반도체 메모리 장치의 동작적 특징을 설명하기 위한 회로 블록도이다.
도 6에서, 전용 메모리 영역 A(10)은 제1 포트(60)를 통하여 도 3의 제1 프로세서(100)에 의해 억세스 되고, 전용 메모리 영역들 B(12,13)는 제2 포트(61)를 통하여 도 3의 제2 프로세서(200)에 의해 억세스 되며, 공유 메모리 영역(11)은 서로 다른 포트인 제1,2 포트(60,61)를 통하여 제1,2프로세서들(100,200) 모두에 의해 억세스 된다.
도 6에서 프로세스들 간의 인터페이스를 제공하기 위해 인터페이스 부로서 기능하는 내부 레지스터(50)는 상기 제1 및 제2 프로세서(100,200) 모두에 의해 억세스 되며, 플립플롭, 데이터 래치, 또는 SRAM 셀로 구성된다. 상기 내부 레지스 터(50)는 세맵퍼(semaphore)영역(51), 제1 메일 박스 영역(mail box A to B :52), 제2 메일 박스 영역(mail box B to A:53), 체크 비트 영역(54), 및 예비 영역(55)으로 구별될 수 있다. 상기 영역들(51-55)은 상기 특정 로우 어드레스에 의해 공통적으로 인에이블 될 수 있으며, 인가되는 컬럼 어드레스에 따라 각기 개별적으로 억세스된다. 예를 들어, 상기 공유 메모리 영역(11)의 특정한 로우 영역(121)를 가리키는 로우 어드레스(0x7FFFFFFFh ~ 0x8FFFFFFFh)가 인가될 때, 공유 메모리 영역 내의 일부 영역(121)은 디세이블되며, 대신에 상기 내부 레지스터(50)가 인에이블된다.
프로세싱 시스템 개발자에게 익숙한 개념의 상기 세맵퍼 영역(51)에는 공유 메모리 영역(11)에 대한 제어 권한이 라이트되고, 상기 제1,2 메일박스 영역들(52,53)에는 미리 설정된 전송방향에 따라 상대 프로세서에게 주는 메시지(권한 요청, 드레스나 데이터 사이즈 또는 데이터가 저장될 공유 메모리의 어드레스를 나타내는 전송 데이터, 및 명령어 등)가 쓰여질 수 있다. 상기 제1,2 메일박스 영역들(52,53)은 도 3의 메일박스들과 동일하므로 동일 참조부호로서 라벨링되어 있다.
상기 공유 메모리 영역(11)에는 디세이블 영역(121)과, 본 발명의 목적들을 달성하기 위하여 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역(110)이 할당된다.
콘트롤 유닛(30)은, 상기 공유 메모리 영역(11)을 상기 제1 및 제2 프로세서(100,200) 중의 하나에 동작적으로 연결하는 패쓰를 제어한다. 상기 제1 포 트(60)에서 콘트롤 유닛(30)으로 연결된 신호라인(R1)은 상기 제1 프로세서(100)에서 버스(B1)를 통해 인가되는 제1 외부신호를 전달하고, 상기 제2 포트(61)에서 콘트롤 유닛(30)으로 연결된 신호라인(R2)은 상기 제2 프로세서(200)에서 버스(B2)를 통해 인가되는 제2 외부신호를 전달한다. 여기서, 제1,2 외부신호들은 상기 제1,2 포트(60,61)를 통해 각기 인가되는 로우 어드레스 스트로브 신호(RASB)와 라이트 인에이블 신호(WEB)및 뱅크 선택 어드레스(BA)를 포함할 수 있다. 상기 콘트롤 유닛(30)에서 상기 멀티플렉서들(40,41)로 연결된 신호라인들(C1,C2)은 공유 메모리 영역(11)을 제1 포트(60) 또는 제2 포트(61)에 동작적으로 연결되도록 하기 위한 패쓰 결정신호(MA,MB)를 각기 전달하는 라인들이다.
도 7은 도 6중 콘트롤 유닛의 세부 회로 구성도 및 동작 타이밍도이다.
도 7을 참조하면, 게이팅부(30a)를 포함하는 회로구성이 보여진다. 상기 게이팅부(30a)는 복수의 논리 게이트들로 구성되어 있고 상기 제1,2 포트(60,61)를 통해 각기 인가되는 로우 어드레스 스트로브 신호(RASB_A, RASB_B)와 라이트 인에이블 신호(WEB_A,WEB_B)및 뱅크 선택 어드레스(BA_A,BA_B)를 수신하여 도면의 하부에 보여지는 타이밍을 갖는 게이팅 신호들(PA,PB)을 생성한다. 예를 들어, 상기 게이팅 신호(PA)가 논리 로우레벨로 출력되는 경우에 상기 패쓰 결정신호(MA)는 논리 로우레벨로서 출력된다. 한편, 상기 게이팅 신호(PA)가 논리 로우레벨로 출력되는 경우에 상기 게이팅 신호(PB)는 논리 하이레벨로 유지되며, 상기 패쓰 결정신호(MB)는 논리 하이레벨로서 출력된다. 상기 게이팅부(30a)는 포트들 중 하나의 포트에서 로우 어드레스 스트로브 신호(RASB)가 먼저 들어오게 되면, 그 들어온 포트 에 상기 공유 메모리 영역(11)이 할당되도록 한다. 만약, 동시에 로우 어드레스 스트로브 신호(RASB)가 인가될 경우는 시스템의 스펙시피케이션으로써 차단하여 우선권을 부여받은 프로세서가 상기 공유 메모리 영역(11)을 억세스할 수 있도록 하는 것이 바람직하다.
상기 콘트롤 유닛(30)은 또한, 인버터들(30b,30c,3j, 및 30k), 낸드 게이트들(30d,30e)로 구성된 래치(LA), 딜레이 소자들(30f,30g), 및 낸드 게이트들(30h,30i)을 포함하며, 도 5에서 보여지는 바와 같은 와이어링 구조를 갖는다. 상기 구성에 의해, 상기 패쓰 결정신호(MA)는 상기 게이팅 신호(PA)가 일정시간 지연 및 래치된 신호로서 나타나고, 상기 패쓰 결정신호(MB)는 상기 게이팅 신호(PB)가 일정시간 지연 및 래치된 신호로서 나타난다.
도 8은 도 6의 메모리 뱅크 들과 내부 레지스터의 구성 및 억세스 관계를 보여주는 도면이다.
도 8에서, 각 뱅크들(10-13)이 16메가 비트의 용량으로 되어 있다고 가정하면, 공유 메모리 영역인 B 뱅크(11)내의 일정 영역은 디세이블 영역(121)과 프로토콜 정의영역(110)으로 설정된다. 즉, DRAM 내의 공유 메모리 영역(11)의 임의의 1행을 인에이블 시키는 특정 로우 어드레스(0x7FFFFFFFh ~ 0x8FFFFFFFh, 2KB 사이즈 = 1 로우 사이즈)가 상기 인터페이스 부로서의 내부 레지스터(50)에 변경적으로 할당된다. 이에 따라, 상기 특정 로우 어드레스(0x7FFFFFFFh ~ 0x8FFFFFFFh)가 인가될 때, 공유 메모리 영역(11)의 대응되는 특정 워드라인 영역(121)은 디세이블되며, 대신에 상기 내부 레지스터(50)가 인에이블된다. 결국, 시스템적으로는 다이렉 트 어드레스 매핑 방법을 사용하여 상기 세맵퍼 영역(51)과 메일박스 영역들(52,53)이 억세스되도록 하는 것이고, 디램 내부적으로는 디세이블된 해당 어드레스로 접근하는 명령어를 해석하여 디램 내부의 레지스터로 매핑을 시키는 것이다. 따라서, 칩셋의 메모리 콘트롤러는 이 영역에 대하여 다른 메모리의 셀과 동일한 방법으로 코멘드를 발생한다. 도 6에서, 상기 세맵퍼 영역(51), 제1 메일 박스 영역(52), 및 제2 메일 박스 영역(53)은 각기 16비트로 할당될 수 있으며, 체크 비트 영역(54)은 4비트로 할당될 수 있다.
또한, 프로토콜 정의영역(110)은 도 4를 통해 설명한 바와 같은 규정 영역들이 설정되는 영역으로서, 디램의 메모리 셀들에 데이터가 저장되므로 리프레쉬 동작이 필요하다.
도 9는 도 6중 공유 메모리 영역에 대한 멀티패쓰 억세싱을 보여주는 도면이다. 도 9를 설명하기 전에 도 10을 먼저 설명한다.
도 10은 도 9중 어드레스 멀티플렉서의 구현 예를 보여주는 세부 회로도이다. 도 10은 도 9에서 보여지는 로우 어드레스 멀티플렉서(71) 또는 컬럼 어드레스 멀티 플렉서(70) 중의 하나를 예로써 보여준다. 결국, 동일한 회로소자들을 이용하여 하나의 어드레스 멀티플렉서가 구현되고, 이는 입력되는 신호의 종류에 따라 로우 어드레스 멀티플렉서 또는 컬럼 어드레스 멀티플렉서로서 기능하게 된다.
도 10을 참조하면, 컬럼 어드레스 멀티플렉서(70)는 두 포트들을 통해 두 개의 컬럼 어드레스 (A_CADD,B_CADD)를 두 입력단으로 각기 수신하고 상기 패쓰 결정신호(MA,MB)의 논리 상태에 따라 두 입력 중 하나를 선택하여 선택 컬럼 어드레 스(SCADD)로서 출력하기 위해, 피형 및 엔형 모오스 트랜지스터들(P1-P4,N1-N4)로 이루어진 클럭드 씨모오스 인버터들과, 인버터들(INV1,INV2)로 구성된 인버터 래치(LA1)를 포함한다. 엔형 모오스 트랜지스터(N5)와 노아 게이트(NOR1)는 상기 인버터 래치(LA1)의 입력단과 접지 간에 방전경로를 형성하기 위해 마련된다. 또한, 인버터들(IN1,IN2)은 상기 패쓰 결정신호(MA,MB)의 논리 상태를 각기 반전하는 역할을 하기 위해 채용된다.
도 10에서, 예를 들어, 상기 패쓰 결정신호(MA)가 논리 로우레벨로 인가되면, 제1 포트(60)를 통해 인가되는 컬럼 어드레스(A_CADD)가 피형 및 엔형 모오스 트랜지스터(P2,N1)로 구성된 인버터를 통해 반전되고 이는 인버터(INV1)에 의해 다시 인버팅되어 선택 컬럼 어드레스(SCADD)로서 출력된다. 한편, 이 경우에 상기 패쓰 결정신호(MB)는 논리 하이레벨로 인가되기 때문에, 제2 포트(61)를 통해 인가될 수 있는 컬럼 어드레스(B_CADD)는 피형 및 엔형 모오스 트랜지스터(P4,N3)로 구성된 인버터가 비활성화 상태이므로 상기 래치(LA1)의 입력단에 제공되지 못한다. 결국, 제2 포트(61)를 통해 인가될 수 있는 컬럼 어드레스(B_CADD)는 선택 컬럼 어드레스(SCADD)로서 출력되지 못한다. 한편, 도 8에서, 상기 노아 게이트(NOR1)의 출력이 하이 레벨로 되면 상기 엔형 모오스 트랜지스터(N5)가 턴온되고 상기 래치(LA1)에 래치된 논리 레벨은 로우 레벨로 초기화된다.
이제 도 9를 참조하여, 상기 제1 프로세서(100)의 노말 동작 시 멀티패쓰 데이터 억세스 동작이 설명될 것이다.
도 9에서 메모리 셀(4)은 도 6의 공유 메모리 영역(11)에 소속된 메모리 셀 이다. 도면을 참조하면, 상기 공유 메모리 영역(11)을 중심으로 A포트용 제2 멀티플렉서(40)와 B포트용 제2 멀티플렉서(41)가 서로 대칭적으로 배치되고, A 포트용 입출력 센스앰프 및 드라이버(22)와 B 포트용 입출력 센스앰프 및 드라이버(23)가 서로 대칭적으로 배치된 것이 보여진다. 상기 공유 메모리 영역(11)내에서, 하나의 억세스 트랜지스터(AT)와 스토리지 커패시터(C)로 구성된 상기 디램 셀(4)은 단위 메모리 소자를 형성한다. 상기 디램 셀(4)은 복수의 워드라인과 복수의 비트라인의 교차점에 연결되어 매트릭스 형태의 뱅크 어레이가 형성되도록 한다. 도 9에서 보여지는 워드라인(WL)은 상기 디램 셀(4)의 억세스 트랜지스터(AT)의 게이트와 로우 디코더(75)간에 배치된다. 상기 로우 디코더(75)는 로우 어드레스 멀티 플렉서(71)의 선택 로우 어드레스(SADD)에 응답하여 로우 디코딩 신호를 상기 워드라인 및 상기 레지스터(50)로 인가한다. 비트라인 페어를 구성하는 비트라인(BLi)은 상기 억세스 트랜지스터(AT)의 드레인과 컬럼 선택 트랜지스터(T1)에 연결된다. 상보(컴플리멘터리)비트라인(BLBi)은 컬럼 선택 트랜지스터(T2)에 연결된다. 상기 비트라인 페어(BLi,BLBi)에 연결된 피형 모오스 트랜지스터들(P1,P2)과 엔형 모오스 트랜지스터들(N1,N2)은 비트라인 센스앰프(5)를 구성한다. 센스앰프 구동용 트랜지스터들(PM1,NM1)은 구동 신호(LAPG,LANG)를 각기 수신하여 상기 비트라인 센스앰프(5)를 구동한다. 상기 컬럼 선택 트랜지스터들(T1,T2)로 구성된 컬럼 선택 게이트(6)는 컬럼 디코더(74)의 컬럼 디코딩 신호를 전달하는 컬럼 선택 라인(CSL)에 연결된다. 상기 컬럼 디코더(74)는 컬럼 어드레스 멀티 플렉서(70)의 선택 컬럼 어드레스(SCADD)에 응답하여 컬럼 디코딩 신호를 상기 컬럼 선택라인 및 상기 레지스 터(50)로 인가한다.
도 9에서 로컬 입출력 라인 페어(LIO,LIOB)는 제1 멀티 플렉서(7)와 연결된다. 상기 제1 멀티플렉서(7:F-MUX))를 구성하는 트랜지스터들(T10,T11)이 로컬 입출력 라인 제어신호(LIOC)에 의해 턴온될 때, 로컬 입출력 라인 페어(LIO,LIOB)는 글로벌 입출력 라인 페어(GIO,GIOB)와 연결된다. 이에 따라 데이터의 리드 동작 모드에서는 로컬 입출력 라인 페어(LIO,LIOB)에 나타나는 데이터가 상기 글로벌 입출력 라인 페어(GIO,GIOB)로 전달된다. 한편, 반대로 데이터의 라이트 동작 모드에서는 상기 글로벌 입출력 라인 페어(GIO,GIOB)에 인가된 라이트 데이터가 상기 로컬 입출력 라인 페어(LIO,LIOB)로 전달된다. 여기서, 상기 로컬 입출력 라인 제어신호(LIOC)는 상기 로우 디코더(75)에서 출력되는 디코딩 신호에 응답하여 생성되는 신호일 수 있다.
콘트롤 유닛(30)으로부터 출력되는 패쓰 결정신호(MA)가 활성화 상태인 경우에, 상기 글로벌 입출력 라인 페어(GIO,GIOB)으로 전달된 리드 데이터는 상기 제2 멀티플렉서(40)를 통해 입출력 센스앰프 및 드라이버(22)로 전달된다. 입출력 센스앰프(22)는, 지금까지의 데이터 경로를 통해 전달됨에 따라 레벨이 미약해진 데이터를 재차로 증폭하는 역할을 담당한다. 상기 입출력 센스앰프(22)로부터 출력된 리드 데이터는 멀티플렉서 및 드라이버(26)를 통해 제1 포트(60)로 전달된다. 한편, 이 경우에 패쓰 결정신호(MB)는 비활성화 상태이므로 상기 제2 멀티플렉서(41)는 디세이블된다. 따라서, 상기 공유 메모리 영역(11)에 대한 제2 프로세서(200)의 억세스 동작은 차단된다. 그렇지만, 이 경우에 제2 프로세서(200)는 제2포트(61)를 통해 상기 공유 메모리 영역(11)이외의 전용 메모리 영역들(12,13)을 억세스 할 수 있다.
상기 콘트롤 유닛(30)으로부터 출력되는 패쓰 결정신호(MA)가 활성화 상태인 경우에, 제1 포트(60)를 통해 인가되는 라이트 데이터는 멀티플렉서 및 드라이버(26), 입출력 센스앰프 및 드라이버(22), 및 상기 제2 멀티플렉서(40)를 차례로 거쳐서 상기 글로벌 입출력 라인 페어(GIO,GIOB)로 전달된다. 상기 제1 멀티플렉서(7:F-MUX))가 활성화되면 상기 라이트 데이터는 로컬 입출력 라인 페어(LIO,LIOB)로 전달되어, 선택된 메모리 셀(4)에 저장된다.
도 9에서 보여지는 출력 버퍼 및 드라이버(60-1)와 입력 버퍼(60-2)는 도 6의 제1 포트(60)에 대응되거나 포함될 수 있다. 또한, 입출력 센스앰프 및 드라이버가 2개(22,23)로 배치되며, 상기 제2 멀티 플렉서(40,41)는, 2개의 프로세서가 동시에 공유 메모리 영역(11)의 데이터를 억세스하는 경우를 방지하기 위해, 서로 상보적 동작을 가짐을 알 수 있다.
제1,2 프로세서들(100,200)은, 억세스 동작시에 글로벌 입출력 라인 페어(GIO,GIOB)와 메모리 셀(4)간에 존재하는 회로 소자들 및 라인들을 공통으로 사용하고, 각 포트에서 상기 제2 멀티플렉서(40,41)까지의 입출력 관련 회로 소자들 및 라인들을 독립적으로 사용한다.
보다 구체적으로, 상기 공유 메모리 영역(11)의 글로벌 입출력 라인 페어(GIO,GIOB)와, 상기 글로벌 입출력 라인 페어와 동작적으로 연결되는 로컬 입출력 라인 페어(LIO,LIOB)와, 상기 로컬 입출력 라인 페어와는 컬럼 선택신호(CSL)에 의해 동작적으로 연결되는 비트라인 페어(BL,BLB)와, 상기 비트라인 페어(BL,BLB)에 설치되어 비트라인의 데이터를 감지 증폭하는 비트라인 센스앰프(5)와, 상기 비트라인(BL)에 억세스 트랜지스터(AT)가 연결된 메모리 셀(4)은, 상기 제1,2 포트(60,61)를 통하여, 각기 상기 제1,2 프로세서들(100,200)에 의해 공유됨을 주목하여야 한다.
상기한 바와 같이, 도 9에서 보여진 바와 같은 세부 구성을 갖는 본 발명의 반도체 메모리 장치에 의해, 공유 메모리 영역을 프로세서들이 공통으로 억세스할 수 있으므로 프로세서들(100,200)간의 디램 인터페이싱 기능이 달성된다. 또한, 인터페이스 부로서 기능하는 내부 레지스터(50)를 활용함에 의해 상기 프로세서들(100,200)은 공통으로 억세스 가능한 공유 메모리 영역을 통해 데이터 통신을 수행하며, 억세스 권한 이양시 프리차아지 스킵 문제도 해결할 수 있게 된다.
이제부터는, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 구비한 멀티포트 반도체 메모리 장치의 동작이 관련된 도면을 참조하여 도 5를 위주로 설명될 것이다.
도 5로 돌아가서, 제1 프로세서(100)가 시점 t1에서 라이트 코멘드(S1)를 도 6의 제1 포트(60)에 인가하고 프로토콜 정의영역(110)에 라이트될 라이트 데이터(도 4의 규정에 따른 데이터 포맷)를 인가하였다고 하면, 상기 라이트 데이터는 도 9를 통해 설명한 바와 같은 라이트 경로를 따라 프로토콜 정의영역(110)내의 메모리 셀들에 라이트된다. 상기 라이트 된 데이터는 도 5의 데이터(S2)에 대응된다. 이후 액티브 명령(S3)이 있고 나서 세맵퍼/메일박스에 데이터를 라이트하기 위한 라이트 코멘드(S4)가 상기 도 6의 제1 포트(60)에 인가되면, 도 8에서 보여지는 제1 메일박스(52)에 라이트 하였다는 사실을 알리는 데이터(S5)가 저장된다. 이 경우에 지금부터는 제어권한을 이양한다는 의미를 제2 프로세서(200)로 전달하기 위해 세맵퍼(51)의 플래그 데이터를 변경한다. 따라서, 타임 포인트 t2에서 메일박스(52)와 세맵퍼(51)가 동시에 체크되고, 상기 원디램은 상기 메일박스(52)의 라이트에 응답하여 인터럽트 신호(/INTb)를 상기 제2 프로세서(200)로 전달한다.
이에 따라 제2 프로세서는 메일박스(52)에 라이트된 데이터를 리드하기 위한 리드 코멘드(S7)를 도 6의 제2 포트(61)로 인가한다. 상기 리드 코멘드(S7)에 응답하여 상기 메일 박스(52)에 저장된 데이터가 리드 데이터(S8)로서 리드되어 도 6의 버스(B2)를 통해 상기 제2 프로세서(200)로 출력된다. 결국, 상기 제2 프로세서(200)는 상기 리드 데이터(S8)를 리드한 결과 상기 프로토콜 정의영역(110)을 리드하라는 제1 프로세서(100)의 메시지를 수신하는 셈이다.
이에 따라, 상기 제2 프로세서(200)의 액티브 명령(S9)후에 리드 코멘드(S10)가 주어지면, 프로토콜 정의영역(110)내의 메모리 셀들에 라이트되어 있던 데이터(S2)가 상기 타임 포인트 t3 이후에 리드 데이터(S11)로서 리드된다. 따라서, 상기 제2 프로세서(200)는 상기 리드 데이터(S11)를 분석함에 의해 상기 제1 프로세서(100)가 공유영역의 몇 번지부터 몇 번지 까지에 얼마나 많은 데이터를 라이트 하여 놓았는 지를 인식하고서, 그에 근거하여 리드 코멘드(S12)를 도 6의 제2 포트에 인가한다.
이에 따라, 도 9를 통해 설명된 바와 같은 데이터 리드 경로를 통해, 상기 도 4의 데이터 저장영역(116)에 라이트된 제1 프로세서(100)의 전달 데이터는 제2 프로세서(200)에 의해 리드 데이터(S13)로서 리드된다.
한편, 상기한 도 5의 동작과 유사하게, 상기 제1 프로세서(100)는 상기 디램 인터페이스를 통하여 상기 플래시 메모리에 저장된 데이터를 상기 제2 프로세서(200)의 도움을 받아 간접적으로 억세스할 수 있게 된다.
이와 같이, 공유 메모리 영역 내에 메일박스처럼 사용할 수 있는 프로토콜 정의영역을 할당하고 프로세서들이 메모리들을 제어하는데 필요한 표준 프로토콜을 제공함에 의해, 프로세서 메이커의 메모리 제어 알고리즘이 규격화되어 시스템 개발이 용이해진다.
본 발명이 적용되는 멀티 프로세서 시스템에서 프로세서들의 개수는 3개 이상으로 확장될 수 있다. 상기 멀티 프로세서 시스템의 프로세서는 마이크로프로세서, CPU, 디지털 신호 프로세서, 마이크로 콘트롤러, 리듀스드 명령 세트 컴퓨터, 콤플렉스 명령 세트 컴퓨터, 또는 그와 유사한 것이 될 수 있다. 그러나 시스템 내의 프로세서들의 개수에 의해 본 발명의 범위가 제한되지 않음은 이해되어져야 한다. 부가하면, 본 발명의 범위는 프로세서들이 동일 또는 다르게 되는 경우에 프로세서들의 어느 특별한 조합에 한정되지 않는다.
상기한 설명에서는 본 발명의 실시예들을 위주로 도면을 따라 예를 들어 설명하였지만, 본 발명의 기술적 사상의 범위 내에서 본 발명을 다양하게 변형 또는 변경할 수 있음은 본 발명이 속하는 분야의 당업자에게는 명백한 것이다. 예를 들어, 사안이 다른 경우에 본 발명의 기술적 사상을 벗어남이 없이 멀티포트 반도체 메모리의 공유 메모리 뱅크 구성, 또는 회로 구성 및 억세스 방법을 다양하게 변형 또는 변경할 수 있음은 물론이다.
또한, 프로토콜 정의영역의 내부 설정 포맷을 바꾸거나 설정 포맷 영역의 개수를 가감할 수 있을 것이다. 그리고, 불휘발성 메모리로서 플래시 메모리의 경우와, 휘발성 메모리로서 멀티포트 디램의 경우를 예를 들었으나 여기에 한정됨이 없이 스태이틱 랜덤 억세스 메모리나 PRAM 등과 같은 타의 불휘발성 메모리 등에서도 본 발명의 기술적 사상이 확장가능 할 수 있을 것이다.
도 1은 본 발명이 적용되어진 휴대 전화기의 외관도
도 2는 컨벤셔날 기술에 따른 멀티 프로세서 시스템의 개략적 블록도
도 3은 본 발명에 따라 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치를 채용한 멀티 프로세서 시스템의 블록도
도 4는 도 3중 공유 메모리 영역에 설정되는 프로토콜 정의영역의 구성 예를 보여주는 도면
도 5는 도 3에 따른 데이터 전송에 관련된 동작타이밍도
도 6은 도 3에 따른 멀티 포트 반도체 메모리 장치의 동작적 특징을 설명하기 위한 회로 블록도
도 7은 도 6중 콘트롤 유닛의 세부 회로 구성도 및 동작 타이밍도
도 8은 도 6의 메모리 뱅크 들과 내부 레지스터의 구성 및 억세스 관계를 보여주는 도면
도 9는 도 6중 공유 메모리 영역에 대한 멀티패쓰 억세싱을 보여주는 도면
도 10은 도 9중 어드레스 멀티플렉서의 구현 예를 보여주는 세부 회로도

Claims (20)

  1. 제1 타스크를 수행하는 제1 프로세서;
    제2 타스크를 수행하는 제2 프로세서; 및
    상기 제1,2 프로세서들에 의해 각기 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역 내에서, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 구비한 멀티포트 반도체 메모리 장치를 구비함을 특징으로 하는 멀티 프로세서 시스템.
  2. 제1항에 있어서, 상기 프로세서들 간의 데이터 인터페이스 기능을 제공하기 위해 상기 공유 메모리 영역의 특정 어드레스에 대응하여 대치적으로 억세스 되며, 상기 메모리 셀 어레이의 외부에 위치된 내부 레지스터를 더 구비함을 특징으로 하는 멀티 프로세서 시스템.
  3. 제2항에 있어서, 상기 내부 레지스터는 상기 공유 메모리 영역에 대한 제어 권한을 저장하는 세맵퍼 영역과, 데이터 전송 방향에 대응되는 프로세서로 각기 인가되어질 메시지를 저장하는 메일박스 영역들을 포함함을 특징으로 하는 멀티 프로 세서 시스템.
  4. 제3항에 있어서, 상기 프로토콜 정의영역은 상기 메일박스 영역들에 저장되어질 메시지의 일부를 디램 메모리 셀에 대치적으로 저장하는 기능을 수행함을 특징으로 하는 멀티 프로세서 시스템.
  5. 제3항에 있어서, 상기 프로토콜 정의영역에는 코맨드 셋이 저장됨을 특징으로 하는 멀티 프로세서 시스템.
  6. 제3항에 있어서, 상기 프로토콜 정의영역에는 코맨드, 어드레스, 또는 프로세서들 간 데이터 통신 프로토콜을 위한 플래그 데이터가 저장됨을 특징으로 하는 멀티 프로세서 시스템.
  7. 제2항에 있어서, 상기 제2 프로세서에 의해 억세스되며, 낸드 타입의 메모리 셀 구조를 갖는 낸드 타입 플래시 메모리가 더 구비됨을 특징으로 하는 멀티 프로세서 시스템.
  8. 제2항에 있어서, 상기 메모리 셀 어레이 내에는 상기 제1,2 프로세서들 각각에 의해 전용으로 억세스 되는 전용 메모리 영역들이 더 구비됨을 특징으로 하는 멀티 프로세서 시스템.
  9. 제1항에 있어서, 상기 제1 타스크는 통신 변복조 기능을 수행하는 작업을 포함함을 특징으로 하는 멀티 프로세서 시스템.
  10. 제1항에 있어서, 상기 제2 타스크는 멀티미디어 정보를 처리하는 기능을 수행하는 작업을 포함함을 특징으로 하는 멀티 프로세서 시스템.
  11. 제2항에 있어서, 상기 멀티 프로세서 시스템은 차량 모바일 폰, PMP, PSP, PDA, 또는 휴대용 전화기 중의 하나임을 특징으로 하는 멀티 프로세서 시스템.
  12. 제1항에 있어서, 상기 설정된 메모리 용량단위는 메모리 뱅크 단위임을 특징으로 하는 멀티 프로세서 시스템.
  13. 제1 타스크를 수행하는 제1 프로세서와 제2 타스크를 수행하는 제2 프로세서의 사이에 동작적으로 연결되는 멀티포트 반도체 메모리 장치에 있어서:
    상기 제1,2 프로세서들에 의해 각기 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역과; 상기 공유 메모리 영역은 특정 어드레스에 대응하여 디세이블 되는 디세이블 영역과, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 가지며,
    상기 제1,2 프로세서들 간의 데이터 인터페이스 기능을 제공하기 위해 상기 공유 메모리 영역의 특정 어드레스에 대응하여 대치적으로 억세스 되며, 상기 메모리 셀 어레이의 외부에 위치된 내부 레지스터를 구비함을 특징으로 하는 멀티포트 반도체 메모리 장치.
  14. 제13항에 있어서, 상기 제1 프로세서는 통신 프로세서이고, 상기 제2 프로세서는 어플리케이션 프로세서임을 특징으로 하는 멀티포트 반도체 메모리 장치.
  15. 제13항에 있어서, 상기 내부 레지스터는 상기 공유 메모리 영역에 대한 제어 권한을 저장하는 세맵퍼 영역과, 데이터 전송 방향에 대응되는 프로세서로 각기 인 가되어질 메시지를 저장하는 메일박스 영역들을 포함함을 특징으로 하는 멀티포트 반도체 메모리 장치.
  16. 제14항에 있어서, 상기 프로토콜 정의영역은 상기 메일박스 영역들에 저장되어질 메시지의 일부를 디램 메모리 셀에 대치적으로 저장하는 기능을 수행함을 특징으로 하는 멀티포트 반도체 메모리 장치.
  17. 제14항에 있어서, 상기 프로토콜 정의영역에는 코맨드, 어드레스, 또는 프로세서들 간 데이터 통신 프로토콜을 위한 플래그 데이터가 저장됨을 특징으로 하는 멀티포트 반도체 메모리 장치.
  18. 제13항에 있어서, 상기 메모리 셀 어레이 내에는 상기 제1,2 프로세서들 각각에 의해 전용으로 억세스 되는 전용 메모리 영역들이 더 구비됨을 특징으로 하는 멀티포트 반도체 메모리 장치.
  19. 제1 타스크를 수행하는 제1 프로세서와 제2 타스크를 수행하는 제2 프로세서 의 사이에 동작적으로 연결되는 멀티포트 반도체 메모리 장치와 상기 제2 프로세서에 동작적으로 연결된 불휘발성 반도체 메모리 장치를 가지는 멀티 프로세서 시스템에서의, 상기 멀티포트 반도체 메모리 장치를 구동하는 방법에 있어서:
    상기 멀티포트 반도체 메모리 장치 내에 서로 다른 포트를 통해 공유적으로 억세스 되는 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역과, 특정 어드레스에 대응하여 디세이블되는 디세이블 영역을 메모리 셀 어레이 내에 마련하고,
    상기 특정 어드레스에 대응하여 대치적으로 억세스 되도록 하기 위해 상기 메모리 셀 어레이의 외부에 내부 레지스터를 준비하고,
    상기 프로토콜 정의영역을 점유한 프로세서가 미리 정의된 영역에 메시지를 규정대로 라이트 한 다음에 데이터 통신을 수행하는 것을 특징으로 하는 방법.
  20. 제1 타스크를 수행하는 제1 프로세서와 제2 타스크를 수행하는 제2 프로세서의 사이에 동작적으로 연결되는 멀티포트 반도체 메모리 장치와 상기 제2 프로세서에 동작적으로 연결된 불휘발성 반도체 메모리 장치를 가지는 멀티 프로세서 시스템에서의, 상기 멀티포트 반도체 메모리 장치를 억세스하는 방법에 있어서:
    상기 멀티포트 반도체 메모리 장치 내에 서로 다른 포트를 통해 공유적으로 억세스 되며 메모리 셀 어레이의 일부에 설정된 메모리 용량단위로 할당된 적어도 하나의 공유 메모리 영역을 준비하되, 상기 공유 메모리 영역에는 특정 어드레스에 대응하여 디세이블되는 디세이블 영역과, 프로세서들 간의 데이터 통신에 관련된 사양을 정의하는 프로토콜 정의영역을 준비하는 단계와;
    상기 공유 메모리 영역의 특정 어드레스에 대응하여 대치적으로 억세스 되도록 하기 위해 상기 메모리 셀 어레이의 외부에 내부 레지스터를 준비하는 단계와;
    상기 프로토콜 정의영역을 점유한 프로세서가 정의된 영역에 메시지를 규정대로 라이트 하고 상기 공유 메모리 영역의 데이터 저장영역에 데이터를 라이트한 다음, 상기 내부 레지스터의 상대 프로세서를 향한 메일 박스에 라이트 이벤트의 발생을 라이트 하는 단계와;
    상기 상대 프로세서가 상기 메일 박스를 리드하고 상기 프로토콜 정의영역에 라이트된 메시지를 리드한 후, 상기 공유 메모리 영역의 데이터 저장영역에 라이트된 데이터를 리드하는 단계를 구비함을 특징으로 하는 방법.
KR1020070098588A 2007-10-01 2007-10-01 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법 KR20090033539A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070098588A KR20090033539A (ko) 2007-10-01 2007-10-01 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법
US12/197,472 US20090089487A1 (en) 2007-10-01 2008-08-25 Multiport semiconductor memory device having protocol-defined area and method of accessing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070098588A KR20090033539A (ko) 2007-10-01 2007-10-01 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법

Publications (1)

Publication Number Publication Date
KR20090033539A true KR20090033539A (ko) 2009-04-06

Family

ID=40509672

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070098588A KR20090033539A (ko) 2007-10-01 2007-10-01 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법

Country Status (2)

Country Link
US (1) US20090089487A1 (ko)
KR (1) KR20090033539A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101103619B1 (ko) * 2009-10-07 2012-01-09 엠텍비젼 주식회사 멀티 포트 메모리 및 그 억세스 제어 방법

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110013868A (ko) * 2009-08-04 2011-02-10 삼성전자주식회사 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템
KR20110019491A (ko) * 2009-08-20 2011-02-28 삼성전자주식회사 데이터 처리 방법 및 데이터 처리 시스템
US20110167210A1 (en) * 2009-10-16 2011-07-07 Samsung Electronics Co., Ltd. Semiconductor device and system comprising memories accessible through dram interface and shared memory region
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US8254199B1 (en) * 2009-12-29 2012-08-28 Micron Technology, Inc. Multi-channel memory and power supply-driven channel selection
CN102859514B (zh) * 2010-04-30 2016-04-06 惠普发展公司,有限责任合伙企业 处理器之间的管理数据传输
US9503375B1 (en) 2010-06-30 2016-11-22 F5 Networks, Inc. Methods for managing traffic in a multi-service environment and devices thereof
US9420049B1 (en) 2010-06-30 2016-08-16 F5 Networks, Inc. Client side human user indicator
WO2012158854A1 (en) 2011-05-16 2012-11-22 F5 Networks, Inc. A method for load balancing of requests' processing of diameter servers
US9760526B1 (en) * 2011-09-30 2017-09-12 EMC IP Holdings Company LLC Multiprocessor messaging system
US8954492B1 (en) 2011-11-30 2015-02-10 F5 Networks, Inc. Methods for inlining content externally referenced in a web page prior to providing the web page to a requestor and devices thereof
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
US9020912B1 (en) 2012-02-20 2015-04-28 F5 Networks, Inc. Methods for accessing data in a compressed file system and devices thereof
WO2013163648A2 (en) 2012-04-27 2013-10-31 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof
US10033837B1 (en) 2012-09-29 2018-07-24 F5 Networks, Inc. System and method for utilizing a data reducing module for dictionary compression of encoded data
US9578090B1 (en) 2012-11-07 2017-02-21 F5 Networks, Inc. Methods for provisioning application delivery service and devices thereof
US9497614B1 (en) 2013-02-28 2016-11-15 F5 Networks, Inc. National traffic steering device for a better control of a specific wireless/LTE network
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US11350254B1 (en) 2015-05-05 2022-05-31 F5, Inc. Methods for enforcing compliance policies and devices thereof
US10505818B1 (en) 2015-05-05 2019-12-10 F5 Networks. Inc. Methods for analyzing and load balancing based on server health and devices thereof
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US11178150B1 (en) 2016-01-20 2021-11-16 F5 Networks, Inc. Methods for enforcing access control list based on managed application and devices thereof
US11063758B1 (en) 2016-11-01 2021-07-13 F5 Networks, Inc. Methods for facilitating cipher selection and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof
US10812266B1 (en) 2017-03-17 2020-10-20 F5 Networks, Inc. Methods for managing security tokens based on security violations and devices thereof
US11343237B1 (en) 2017-05-12 2022-05-24 F5, Inc. Methods for managing a federated identity environment using security and access control data and devices thereof
US11122042B1 (en) 2017-05-12 2021-09-14 F5 Networks, Inc. Methods for dynamically managing user access control and devices thereof
US10572405B1 (en) 2018-12-28 2020-02-25 Didi Research America, Llc Writing messages in a shared memory architecture for a vehicle
US10785170B2 (en) 2018-12-28 2020-09-22 Beijing Voyager Technology Co., Ltd. Reading messages in a shared memory architecture for a vehicle
US10747597B2 (en) 2018-12-28 2020-08-18 Beijing Voyager Technology Co., Ltd. Message buffer for communicating information between vehicle components
US11327489B2 (en) 2018-12-28 2022-05-10 Beijing Voyager Technology Co., Ltd. Shared memory architecture for a vehicle

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11120156A (ja) * 1997-10-17 1999-04-30 Nec Corp マルチプロセッサシステムにおけるデータ通信方式
US6785892B1 (en) * 2000-06-23 2004-08-31 Unisys Communications between partitioned host processors and management processor
US7539825B2 (en) * 2001-10-25 2009-05-26 Samsung Electronics Co., Ltd. Multi-port memory device providing protection signal
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
KR100725100B1 (ko) * 2005-12-22 2007-06-04 삼성전자주식회사 포트간 데이터 전송기능을 갖는 멀티패쓰 억세스블 반도체메모리 장치
KR20070112950A (ko) * 2006-05-24 2007-11-28 삼성전자주식회사 멀티-포트 메모리 장치, 멀티-포트 메모리 장치를 포함하는멀티-프로세서 시스템, 및 멀티-프로세서 시스템의 데이터전달 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101103619B1 (ko) * 2009-10-07 2012-01-09 엠텍비젼 주식회사 멀티 포트 메모리 및 그 억세스 제어 방법

Also Published As

Publication number Publication date
US20090089487A1 (en) 2009-04-02

Similar Documents

Publication Publication Date Title
KR20090033539A (ko) 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법
KR100887417B1 (ko) 멀티 프로세서 시스템에서 불휘발성 메모리의 공유적사용을 제공하기 위한 멀티패쓰 억세스블 반도체 메모리장치
KR100735612B1 (ko) 멀티패쓰 억세스블 반도체 메모리 장치
KR100725100B1 (ko) 포트간 데이터 전송기능을 갖는 멀티패쓰 억세스블 반도체메모리 장치
US7596666B2 (en) Multi-path accessible semiconductor memory device having port state signaling function
US20100318725A1 (en) Multi-Processor System Having Function of Preventing Data Loss During Power-Off in Memory Link Architecture
KR100772841B1 (ko) 프로세서들간 호스트 인터페이싱 기능을 갖는 멀티패쓰억세스블 반도체 메모리 장치
KR20090008519A (ko) 공유 레지스터를 갖는 멀티패쓰 억세스블 반도체 메모리장치 및 그에 따른 공유 레지스터 운영방법
KR20100041309A (ko) 각 프로세서들의 어플리케이션 기능을 모두 활용 가능한 멀티 프로세서 시스템
US8171233B2 (en) Multi port semiconductor memory device with direct access function in shared structure of nonvolatile memory and multi processor system thereof
KR20090013342A (ko) 멀티 포트 반도체 메모리 장치 및 그에 따른 리프레쉬 방법
KR20090092371A (ko) 래치타입 메모리 셀들로 이루어진 공유 메모리 영역을 갖는멀티포트 반도체 메모리 장치 및 그를 채용한 멀티프로세서 시스템과 멀티포트 반도체 메모리 장치의구동방법
KR101430687B1 (ko) 다이렉트 억세스 부팅동작을 갖는 멀티 프로세서 시스템 및그에 따른 다이렉트 억세스 부팅방법
US20100077130A1 (en) Multiprocessor system with booting function using memory link architecture
US20100070691A1 (en) Multiprocessor system having multiport semiconductor memory device and nonvolatile memory with shared bus
US8078838B2 (en) Multiprocessor system having multiport semiconductor memory with processor wake-up function responsive to stored messages in an internal register
KR20110013868A (ko) 멀티 코멘드 셋 동작 및 우선처리 동작 기능을 갖는 멀티 프로세서 시스템
US8886915B2 (en) Multiprocessor system having direct transfer function for program status information in multilink architecture
KR100855580B1 (ko) 프로세서 리셋 기능을 갖는 반도체 메모리 장치 및 그를 채용한 멀티 프로세서 시스템과 그에 따른 프로세서 리셋 제어방법
KR100879463B1 (ko) 억세스 권한 이양 시 프리차아지 스킵을 방지하는 동작을갖는 멀티패쓰 억세스블 반도체 메모리 장치
KR20090022007A (ko) 멀티포트 반도체 메모리 장치
US20090216961A1 (en) Multi-port semiconductor memory device for reducing data transfer event and access method therefor
US20090019237A1 (en) Multipath accessible semiconductor memory device having continuous address map and method of providing the same
KR20080103183A (ko) 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법
KR20080113896A (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