KR20080103183A - 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법 - Google Patents

부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법 Download PDF

Info

Publication number
KR20080103183A
KR20080103183A KR1020070050164A KR20070050164A KR20080103183A KR 20080103183 A KR20080103183 A KR 20080103183A KR 1020070050164 A KR1020070050164 A KR 1020070050164A KR 20070050164 A KR20070050164 A KR 20070050164A KR 20080103183 A KR20080103183 A KR 20080103183A
Authority
KR
South Korea
Prior art keywords
processor
interface
boot code
flash memory
memory
Prior art date
Application number
KR1020070050164A
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 KR1020070050164A priority Critical patent/KR20080103183A/ko
Publication of KR20080103183A publication Critical patent/KR20080103183A/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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems

Abstract

부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서 시스템 및 그를 이용한 프로세서 부팅 방법이 개시된다. 그러한 멀티 프로세서 시스템은, 제1 및 제2 프로세서와; 상기 제2 프로세서에 직접적으로 연결된 플래시 메모리와; 휘발성 메모리 셀 어레이 내에 전용 및 공유 메모리 영역을 가지며 상기 제1 및 제2 프로세서 간의 데이터 통신이 디램 인터페이스를 통해 제공되도록 하고, 시스템 부팅 시 상기 제1 프로세서의 부트 코드가 상기 제1 프로세서로 제공되도록 하기 위해 상기 플래시 메모리로부터 리드된 상기 제1 프로세서의 부트 코드를 미리 설정된 인터페이스 방식으로 저장하는 부트 코드 저장영역을 가지는 반도체 메모리 장치를 구비함을 특징으로 한다. 본 발명의 멀티 프로세서 시스템에 따르면, 프로세서들이 반도체 메모리 장치 및 플래시 메모리를 공유적으로 사용할 수 있어 멀티 프로세서 시스템의 사이즈가 콤팩트하게 됨은 물론, 공유적 반도체 메모리 장치를 통하여 시스템 부팅을 수행할 수 있는 효과가 있다.
Figure P1020070050164
멀티 프로세서, 공유 메모리 영역, 부트 램, 디램 인터페이스, 에스램 인터페이스

Description

부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서 시스템 및 그를 이용한 프로세서 부팅 방법{Multi processor system having multi-path accessible semiconductor memory device with boot RAM and therefore method}
도 1은 모바일 통신 디바이스에 채용될 수 있는 일반적인 멀티 프로세서 시스템의 블록도
도 2는 도 1보다 개량된 구성을 갖는 통상적 멀티 프로세서 시스템의 블록도
도 3은 도 2보다 개량된 컨벤셔날 기술의 시스템 블록도
도 4는 본 발명의 실시예에 따른 멀티 프로세서 시스템의 블록도
도 5는 도 4의 반도체 메모리 장치의 세부적 블록도
도 6은 도 4의 플래시 메모리의 코드 저장영역을 보인 어드레스 맵 테이블
도 7은 도 4의 멀티 프로세서 시스템에서의 프로세서 부팅의 동작 제어흐름도
도 8은 도 5에 보여지는 반도체 메모리 장치의 공유 메모리 영역에 대한 데이터 억세스를 설명하기 위해 제시된 도면
본 발명은 복수의 프로세서들과 복수의 프로세서들에 의해 공통으로 억세스될 수 있는 반도체 메모리 장치를 포함하는 멀티 프로세서 시스템에 관한 것이다.
일반적으로, 복수의 억세스 포트를 가지는 반도체 메모리 소자는 멀티포트 메모리로 불려지고 특히 2개의 억세스 포트를 갖는 메모리 소자는 듀얼포트 메모리로 칭해지고 있다. 전형적인 듀얼포트 메모리는 본 분야에 널리 공지된 것으로서, 랜덤 시퀀스로 억세스 가능한 RAM포트와 시리얼 시퀀스만으로 억세스 가능한 SAM 포트를 가지는 이미지 프로세싱용 비디오 메모리이다.
한편, 후술될 본 발명의 설명에서 보다 명확하게 구별될 것이지만, 그러한 비디오 메모리의 구성과는 달리, SAM 포트를 가지지 않으며 DRAM 셀로 구성된 메모리 셀 어레이 중 공유 메모리 영역을 복수의 억세스 포트를 통하여 리드 또는 라이트 하기 위한 다이나믹 랜덤 억세스 메모리를 우리는 상기 멀티포트 메모리와 철저히 구별하기 위하여 본 발명에서 멀티패쓰 억세스블 반도체 메모리 장치라고 칭하기로 한다.
오늘날 인간생활의 유비쿼터스 지향추세에 따라, 인간이 취급하게 되는 전자 시스템도 그에 부응하여 눈부시게 발전되어 지고 있다. 최근에 모바일 통신 시스템예를 들어 휴대용 멀티미디어 플레이어나 핸드 헬드 폰, 또는 PDA 등의 전자기기에서는 통신 및 각종 사용자 편의 기능이나 동작 수행의 고속화 및 원활화를 도모하기 위하여 제조 메이커는 도 1에서 보여지는 바와 같이 복수의 프로세서를 채용한 멀티 프로세서 시스템을 구현해왔다.
모바일 통신 디바이스에 채용될 수 있는 일반적인 멀티 프로세서 시스템의 블록을 보여주는 도 1을 참조하면, 제1 프로세서(101)와 제2 프로세서(201)는 접속라인(B3)을 통해 서로 연결되어 있고, 플래시 메모리(301)와 DRAM(401)은 설정된 시스템 버스(B1)을 통해 상기 제1 프로세서(101)에 버싱되고, DRAM(402)과 플래시 메모리(302)는 설정된 버스(B2)를 통해 상기 제2 프로세서(201)에 버싱되어 있는 것이 나타나 있다. 여기서, 상기 제1 프로세서(101)는 통신 데이터의 처리나 게임, 오락 등의 사용자 편의 기능을 수행하기 위한 어플리케이션 기능을 담당할 수 있고, 상기 제2 프로세서(201)는 통신신호의 변조 및 복조를 수행하는 모뎀기능을 담당할 수 있다. 혹은 상기한 경우와 반대로 담당할 수 있다. 상기 플래시 메모리들(301,302)은, 각기, 셀 어레이의 구성이 NOR 구조를 갖게 되는 NOR 플래시 메모리나 셀 어레이의 구성이 NAND 구성을 갖게 되는 NAND 플래시 메모리일 수 있다. NOR 플래시 메모리나 NAND 플래시 메모리 모두는 플로팅 게이트를 갖는 트랜지스터 메모리 셀을 갖는 불휘발성 메모리로서, 전원이 오프되더라도 지워져서는 아니되는 데이터 예컨대 휴대용 기기의 고유 코드 및 보존용 데이터의 저장을 위해 탑재되며, DRAM들(401、402)은 각기 대응되는 프로세서들(101,201)의 데이터 처리를 위한 메인 메모리로서 기능한다.
그러나, 도 1과 같은 멀티 프로세서 시스템에서는 각 프로세서마다 DRAM이 각기 대응적으로 할당되어야 하고 상대적으로 저속의 UART,SPI,SRAM 인터페이스가 사용되기 때문에, 데이터 전송속도가 충분히 확보되기 어렵고 사이즈의 복잡성이 초래되며 메모리 구성 비용도 부담스럽다. 따라서, 점유 사이즈를 줄임은 물론 데이터 전송속도를 높이고 DRAM 메모리의 채용 개수를 줄이기 위한 스킴이 도 2에 도시되어 있다.
도 1보다 개량된 구성을 갖는 도 2를 참조하면, 도 1의 시스템에 비해 하나의 DRAM(403)이 제1 및 제2 프로세서(101,201)에 버스들(B1,B2)을 통해 연결되어 있는 것이 특이하게 보여진다. 도 1과 유사하게 상기 제1 프로세서(101)는 어플리케이션 기능을 담당하기 위해 버스(B4)를 통해 플래시 메모리(303)와 연결되어 있고, 상기 제2 프로세서(201)와는 라인(B3)을 통해 연결되어 있다. 상기 제2 프로세서(201)는 모뎀기능을 담당하기 위해 버스(B5)를 통해 플래시 메모리(304)와 연결되어 있고, 상기 제1 프로세서(101)와는 라인(B3)을 통해 연결되어 있다.
도 2의 멀티 프로세서 시스템의 구조와 같이, 하나의 DRAM(403)이 2개의 패쓰를 통하여 제1,2 프로세서들(101,201)에 의해 억세스 될 수 있도록 하기 위해, DRAM(403)의 내부에는 상기 버스들(B1,B2)에 각기 대응적으로 연결되는 2개의 포트 가 마련된다. 그러한 복수의 포트 구성은 단일 포트를 갖는 통상의 DRAM과는 상이하다.
멀티 프로세서 시스템에 적합한 메모리를 기본적으로 구현하려는 본 발명자들의 의도와 유사하게, 공유 메모리 영역이 복수의 프로세서에 의해 억세스될 수 있는 선행기술이 에우지니 피.매터(Matter)외 다수에 의해 발명되어 2003년 5월 15일자로 미합중국에서 특허공개된 공개번호 US2003/0093628호에 개시되어 있다. 상기 선행기술에서, 메모리 어레이는 제1,2,3 포션으로 이루어져 있고, 상기 메모리 어레이의 제1 포션은 제1 프로세서에 의해서만 억세스되고 상기 제2 포션은 제2 프로세서에 의해서만 억세스되며, 제3 포션은 공유 메모리 영역으로서 상기 제1,2 프로세서들 모두에 의해 억세스 된다. 상기 선행기술을 DRAM 구조에서 구현하기 위해서는 몇 가지의 과제들이 해결되어져야 한다. 그러한 해결 과제들 중의 하나로서, 제1,2,3 포션들에 대한 적절한 리드/라이트 패쓰(경로)의 제어 테크닉이 포함된다.
또한, 종래의 프로세서들 예를 들어 모뎀과 애플리케이션 프로세서(혹은 멀티미디어 코프로세서)간의 통신을 위해서는 UART,SPI,혹은 SRAM 인터페이스가 사용되어 왔는데, 그러한 인터페이스는 속도의 제한, 핀 개수의 증가 등의 문제점이 수반된다. 특히, 3차원 게임이나 화상통신, HDPDA, 와이브로(wibro)등의 원활한 구현을 제공하기 위해서는 모뎀과 프로세서 간의 데이터 트래픽이 크게 늘어나야 하기 때문에, 프로세서들 간의 고속의 인터페이스의 필요성이 증가되는 실정이다.
그러나, 도 2와 같은 멀티 프로세서 시스템에서는 프로세서들이 DRAM 메모리 셀 어레이 내에 할당된 공유 메모리 영역을 공유하지만, DRAM 외부에서 라인(B3)을 통해 프로세서들 간의 인터페이싱을 수행하기 때문에 상기한 바와 같은 속도의 제한이나 핀 개수가 증가된다. 또한, 각각의 프로세서 마다 플래시 메모리가 각기 채용되어 있으므로, 시스템 구성의 복잡성이나 시스템 구현의 가격상승이 부담으로 된다.
따라서, 도 3에서 보여지는 바와 같이, 둘 이상의 프로세서들(100,200)을 가지는 멀티 프로세서 시스템에서, 하나의 DRAM(400)과 하나의 플래시 메모리(300)가 공유적으로 사용되는 구조가 컨벤셔날 기술로서 제안될 수 있다. 그러나, 도 3과 같은 멀티 프로세서 시스템 구조에서 시스템의 초기 부팅 시, 제1 프로세서(100)는 부팅 동작에 관련된 부트 코드를 불휘발성 반도체 메모리 예컨대 플래시 메모리로부터 리드하여야만 한다. 그렇지만, 직접적으로 연결된 플래시 메모리는 도 3에서는 존재하지 않기 때문에 부팅 동작이 곤란한 문제점이 있다.
따라서, 도 3과 같은 시스템 구조에서도 초기 부팅 시 부트 코드를 바람직하게 읽어올 수 있는 대책이 요구된다.
따라서, 본 발명의 목적은 하나의 반도체 메모리와 하나의 플래시 메모리 장치를 갖는 멀티 프로세서 시스템의 경우에 초기 부팅 시 플래시 메모리와 직접적으로 연결되지 아니한 프로세서의 부팅을 원활히 할 수 있게 하는 멀티 프로세서 시스템 및 그를 이용한 프로세서 부팅 방법을 제공함에 있다.
본 발명의 다른 목적은 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서 시스템 및 그를 이용한 프로세서 부팅 방법을 제공함에 있다.
본 발명의 또 다른 목적은 멀티 프로세서 시스템에서 프로세서들의 부팅을 원활히 행할 수 있게 하는 반도체 메모리 장치를 제공함에 있다.
상기한 본 발명의 목적들의 일부를 달성하기 위하여 본 발명의 일 양상에 따른 멀티 프로세서 시스템은, 제1 및 제2 프로세서와; 상기 제2 프로세서에 직접적으로 연결된 플래시 메모리와; 휘발성 메모리 셀 어레이 내에 전용 및 공유 메모리 영역을 가지며 상기 제1 및 제2 프로세서 간의 데이터 통신이 디램 인터페이스를 통해 제공되도록 하고, 시스템 부팅 시 상기 제1 프로세서의 부트 코드가 상기 제1 프로세서로 제공되도록 하기 위해 상기 플래시 메모리로부터 리드된 상기 제1 프로세서의 부트 코드를 미리 설정된 인터페이스 방식으로 저장하는 부트 코드 저장영역을 가지는 반도체 메모리 장치를 구비함을 특징으로 한다.
본 발명의 다른 양상에 따라,
제1 및 제2 프로세서와;
상기 제2 프로세서에 직접적으로 연결된 플래시 메모리와;
휘발성 메모리 셀 어레이 내에 전용 및 공유 메모리 영역을 가지며 상기 제1 및 제2 프로세서 간의 데이터 통신이 디램 인터페이스를 통해 제공되도록 하는 반도체 메모리 장치를 구비함 멀티 프로세서 시스템에서의 프로세서 부팅 방법은:
시스템 부팅 시 상기 플래시 메모리를 억세스 하여 상기 제1 프로세서의 부트 코드를 리드하고 이를 상기 반도체 메모리 장치 내의 부트 코드 저장영역 내에 미리 설정된 인터페이스 방식으로 저장하는 단계와;
상기 부트 코드 저장영역 내에 저장된 상기 제1 프로세서의 부트 코드를 리드하여 제1 프로세서의 부팅을 수행하는 단계를 구비한다.
상기한 본 발명의 장치적 방법적 구성들에 따르면, 프로세서들이 반도체 메모리 장치 및 플래시 메모리를 공유적으로 사용할 수 있어 멀티 프로세서 시스템의 사이즈가 콤팩트하게 됨은 물론, 공유적인 반도체 메모리 장치를 통하여 멀티 프로세서 시스템의 부팅을 원활히 수행할 수 있는 효과가 있다. 따라서, 멀티 프로세서 시스템 내에서 차지하는 메모리들의 코스트가 대폭적으로 줄어들 수 있다.
이하에서는 본 발명에 따라, 부트 램을 갖는 반도체 메모리 장치 내에 구비한 멀티 프로세서 시스템 및 그를 이용한 프로세서 부팅 방법에 관한 바람직한 실시예가 첨부된 도면들을 참조로 설명될 것이다.
이하의 실시예에서 많은 특정 상세들이 도면을 따라 예를 들어 설명되고 있지만, 이는 본 분야의 통상의 지식을 가진 자에게 본 발명의 보다 철저한 이해를 돕기 위한 의도 이외에는 다른 의도 없이 설명되었음을 주목(note)하여야 한다. 그렇지만, 본 발명이 이들 특정한 상세들 없이도 실시될 수 있을 것임은 본 분야의 숙련된 자들에 의해 이해될 수 있을 것이다. 다른 예증, 공지 방법들, 프로시져들, 및 통상적인 다이나믹 랜덤 억세스 메모리 및 내부적 회로들은 본 발명의 요지를 모호하지 않도록 하기 위해 상세히 설명되지 않는다.
도 4는 본 발명의 실시예에 따른 멀티 프로세서 시스템의 블록도이다. 도면을 참조하면, 부트 램(450)이 구비된 멀티패쓰 억세스블 DRAM(410)의 구성이 도 3과는 다르게 되어 있는 것이 보여진다. 즉, 도 4의 구성은 부트 램(450)을 제외하면 도 3과 실질적으로 동일하다.
상기 도 4의 멀티 프로세서 시스템은 이동통신 디바이스(예 셀룰러 폰), 양방향 라디오 통신 시스템, 단방향 페이저, 양방향 페이저, 개인용 통신 시스템, 또는 휴대용 컴퓨터, 등과 같은 휴대용 컴퓨팅 디바이스 또는 모바일 통신 디바이스가 될 수 있다. 본 발명의 스코프와 응용이 이들에 한정되는 것이 아님은 이해되어 야 한다.
상기 도 4의 시스템에서 프로세서들의 개수는 3개 이상으로 확장될 수 있다. 상기 시스템의 프로세서는 마이크로프로세서, CPU, ASIC, 디지털 신호 프로세서, 마이크로 콘트롤러, 리듀스드 명령 세트 컴퓨터, 콤플렉스 명령 세트 컴퓨터, 또는 그와 유사한 것이 될 수 있다. 그러나 시스템 내의 프로세서들의 개수에 의해 본 발명의 범위가 제한되지 않음은 이해되어져야 한다. 부가하면, 본 발명의 범위는 프로세서들이 동일 또는 다르게 되는 경우에 프로세서들의 어느 특별한 조합에 한정되지 않는다.
도 5는 도 4의 반도체 메모리 장치의 세부적 블록도이다. 도 5를 참조하면 도 4의 부트 램(450)이 데이터 라인들(DA1,DA2)사이에 연결된 것이 보여진다. 상기 부트 램(450)은 인터페이스부(430)에 의해 제어된다. 상기 인터페이스부(430)는 SRAM 인터페이스 혹은 플래시 인터페이스를 수행하도록 구현될 수 있다. 즉, 디램 인터페이스와는 달리 라이트 인에이블(/WE) 또는 아웃 인에이블(OE) 코멘드에 응답하여 부트 램(450)내의 설정된 저장영역에 데이터가 라이트 되거나 설정된 저장영역에 라이트된 데이터가 부트 램(450)의 외부로 리드된다. 여기서, 상기 부트 램(450)은 플립플롭 타입으로 구성되는 에스램 셀 혹은 레지스터로 구성될 수 있다.
도 5에서, 4개의 메모리 영역들(10,11,12,13)은 디램 메모리 셀 어레이를 구성하며, 메모리 셀 어레이의 외부에는 내부 레지스터(50)가 배치될 수 있다. 상기 내부 레지스터(50)는 도 4에서 보여지는 프로세서들(100,200)간의 통신 시 디램 인 터페이스를 제공하는 역할을 한다. 상기 내부 레지스터(50)는 세맵퍼 영역(51)과 메일박스 영역들(52,53)을 포함하는 것에 의해, 상기 프로세서들(100,200)이 공통으로 억세스 가능한 공유 메모리 영역(11)을 통해 데이터 통신이 수행되도록 한다.
또한, 제1,2 패쓰부들(20,21), 멀티플렉서들(40,41), 및 콘트롤 유닛(30)도 상기 메모리 셀 어레이의 외부에 배치된다. 한정되는 것은 아니지만, 도 5에서 보여지는 상기 DRAM(400)은 서로 독립적인 2개의 포트를 갖는다. 설명의 편의상 버스(B1)와 연결되는 포트를 제1 포트(60)라고 하면 버스(B2)와 연결되는 포트는 제2 포트(61)가 된다. 여기서, 상기 버스들(B1,B2)은 범용 입출력(GPIO)라인으로 구현 가능하다.
도 5에서, 전용 메모리 영역 A(10)은 제1 포트(60)를 통하여 도 4의 제1 프로세서(100)에 의해 억세스 되고, 전용 메모리 영역들 B(12,13)는 제2 포트(61)를 통하여 도 4의 제2 프로세서(200)에 의해 억세스 되며, 공유 메모리 영역(11)은 서로 다른 포트인 제1,2 포트(60,61)를 통하여 제1,2프로세서들(100,200) 모두에 의해 억세스 된다. 결국, 메모리 셀 어레이 내에서 B 뱅크(11)은 공유 메모리 영역으로서 할당되고, A,C, 및 D 뱅크들(10,12,13)은 각기 대응되는 프로세서에 의해서만 억세스되는 전용 메모리 영역으로서 할당된다. 상기 4개의 메모리 영역들(10-13)은 각기 DRAM의 뱅크 단위로 구성될 수 있으며, 하나의 뱅크는 예컨대 64Mb, 128Mb, 256Mb, 512Mb, 또는 1024Mb 의 메모리 스토리지를 가질 수 있다.
도 6은 도 4의 플래시 메모리의 코드 저장영역을 보인 어드레스 맵 테이블이 보여진다. 예컨대 낸드 플래시 메모리의 저장 영역들(LA1,LA2)에는 상기 제1 프로 세서(100)의 부트 코드들이 저장되어 있고, 저장 영역들(LA4,LA5)에는 상기 제2 프로세서(200)의 부트 코드들이 저장되어 있다. 따라서, 상기 제2 프로세서(200)는 초기 부팅 시 상기 저장 영역들(LA4,LA5)을 억세스 하여 부트 코드를 리드한다. 한편, 상기 제1 프로세서(200)는 초기 부팅 시 상기 저장 영역들(LA1,LA2)을 억세스 하여 부트 코드를 리드하여야 하나, 도 4의 시스템 구조 상 직접적으로 억세스하기가 어렵게 된다. 따라서, 본 실시예의 경우에 상기 저장 영역들(LA1,LA2)의 부트 코드들도 상기 제2 프로세서(200)에 의해 리드된다. 그리고, 리드된 부트 코드들은 에스램 인터페이스 혹은 플래시 인터페이스를 통하여 부트 램(450)에 저장된다. 이에 따라 상기 제1 프로세서(100)는 비로소 상기 부트 램(450)에 저장된 부트 코드들을 리드함에 의해 부팅 동작을 수행할 수 있게 된다.
도 7은 도 4의 멀티 프로세서 시스템에서의 프로세서 부팅의 동작 제어흐름도이다. 멀티 프로세서 시스템에서 파워 온 상태가 되면(단계 S71) 제2 프로세서(200)의 부팅 동작이 일단 먼저 수행된다(단계 S72). 이 때 제1 프로세서(100)는 타임의 설정이나 기타 지연동작의 세팅을 통해 부팅 대기 또는 리셋 인에이블 상태로 된다(단계 S73). 그리고 나서, 단계 S74의 체크를 통해 제2 프로세서(200)의 부팅이 완료되면, 제2 프로세서(200)가 에스램 인터페이스를 통하여 제1 프로세서(100)의 부트 코드들을 플래시 메모리(300)의 저장영역들(LA1,LA2)로부터 리드한 후(단계 S75), 디램(410)내의 부트 램(450)에 라이트한다(단계 S76). 이 경우에 도 5내의 인터페이스부(430)는 제2 포트(61)의 설정핀(SP2)을 통해 라이트 인에이블 신호를 받는다. 따라서, 라인(L13)으로 제공되는 인터페이스부(430)의 출력에 의해 부트 램(450)의 지정된 번지에 데이터 라인(DA1)을 따라 제공되는 부트 코드 데이터가 저장된다. 그런 다음에 상기 제1 프로세서(100)는 부팅 시작 또는 리셋 디세이블 상태로 되고 부팅을 시작하게 된다(단계S77). 이 경우에 상기 제1 프로세서는 부트 램에 저장된 자신의 부트 코드를 리드하게 된다(단계S78). 여기서, 도 5내의 인터페이스부(430)는 제1 포트(60)의 설정핀(SP1)을 통해 아웃 인에이블 신호를 받는다. 따라서, 라인(L13)으로 제공되는 인터페이스부(430)의 출력에 의해 부트 램(450)의 지정된 번지에 저장된 부트 코드 데이터는 데이터 라인(DA2)을 따라 리드된다. 단계S79에서 제1 프로세서의 부팅 완료가 체크되면 전체 프로세서들의 부팅 동작이 완료된다.
도 8은 도 5에 보여지는 반도체 메모리 장치의 공유 메모리 영역에 대한 데이터 억세스를 설명하기 위해 제시된 도면이다. 도 8의 도면은 디램 인터페이스를 통한 동작이며, 에스램 인터페이스를 행하는 부트 램에서의 억세스 동작과는 구별된다.
도 8에서 보여지는 내부 레지스터(50)는 도 4에서와 같이 세맵퍼(semaphore)영역(51), 제1 메일 박스 영역(mail box A to B :52), 제2 메일 박스 영역(mail box B to A:53), 체크 비트 영역(54), 및 예비 영역(55)으로 구별될 수 있다. 상기 영역들(51-55)은 상기 특정 로우 어드레스에 의해 공통적으로 인에이블 될 수 있으며, 인가되는 컬럼 어드레스에 따라 각기 개별적으로 억세스된다. 예를 들어, 상기 공유 메모리 영역(11)의 특정한 로우 영역(121)를 가리키는 로우 어드레스(1FFF800h ~ 1FFFFFFh)가 인가될 때, 공유 메모리 영역 내의 일부 영역(121)은 디세이블되며, 대신에 상기 내부 레지스터(50)가 인에이블된다. 프로세싱 시스템 개발자에게 익숙한 개념의 상기 세맵퍼 영역(51)에는 공유 메모리 영역(11)에 대한 제어 권한이 라이트되고, 상기 제1,2 메일박스 영역들(52,53)에는 미리 설정된 전송방향에 따라 상대 프로세서에게 주는 메시지(권한 요청, 플래시 메모리의 논리/물리 어드레스나 데이터 사이즈 또는 데이터가 저장될 공유 메모리의 어드레스를 나타내는 전송 데이터, 및 명령어 등)가 쓰여진다.
도 8에서 콘트롤 유닛(30)은, 상기 제2 프로세서(200)만이 플래시 메모리(300)와 연결되어 있는 경우에도, 상기 제1 프로세서(100)가 상기 공유 메모리 영역(11)과 상기 내부 레지스터(50)를 이용하여 상기 플래시 메모리(300)를 간접적으로 억세스할 수 있도록 하며, 상기 공유 메모리 영역(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 포트 또는 제2 포트에 동작적으로 연결되도록 하기 위한 패쓰 결정신호(MA,MB)를 각기 전달한다.
도면에서, 제2 멀티플렉서(40)와 제2 멀티플렉서(41)가 서로 마주 보며 배치되고, 입출력 센스앰프 및 드라이버(22)와 입출력 센스앰프 및 드라이버(23)가 서로 대칭적으로 배치된다. 상기 공유 메모리 영역(11)내에서, 하나의 억세스 트랜지스터(AT)와 스토리지 커패시터(C)로 구성된 디램 셀(4)은 단위 메모리 소자를 형성한다. 상기 디램 셀(4)은 복수의 워드라인과 복수의 비트라인의 교차점에 연결되어 매트릭스 형태의 뱅크 어레이가 형성되도록 한다. 도 8에서 보여지는 워드라인(WL)은 상기 디램 셀(4)의 억세스 트랜지스터(AT)의 게이트와 로우 디코더(75)간에 배치된다. 상기 로우 디코더(75)는 로우 어드레스 멀티 플렉서(71)의 선택 로우 어드레스(SADD)에 응답하여 로우 디코딩 신호를 상기 워드라인 및 상기 레지스터(50)로 인가한다. 비트라인 페어를 구성하는 비트라인(BLi)은 상기 억세스 트랜지스터(AT)의 드레인과 컬럼 선택 트랜지스터(T1)에 연결된다. 상보(컴플리멘터리)비트라인(BLBi)은 컬럼 선택 트랜지스터(T2)에 연결된다. 상기 비트라인 페어(BLi,BLBi)에 연결된 피형 모오스 트랜지스터들(P1,P2)과 엔형 모오스 트랜지스터들(N1,N2)은 비트라인 센스앰프를 구성한다. 센스앰프 구동용 트랜지스터들(PM1,NM1)은 구동 신호(LAPG,LANG)를 각기 수신하여 상기 비트라인 센스앰프를 구동한다. 상기 컬럼 선택 트랜지스터들(T1,T2)로 구성된 컬럼 선택 게이트(6)는 컬럼 디코더(74)의 컬럼 디코딩 신호를 전달하는 컬럼 선택 라인(CSL)에 연결된다. 상기 컬럼 디코더(74)는 컬럼 어드레스 멀티 플렉서(70)의 선택 컬럼 어드레스(SCADD)에 응답하여 컬럼 디코딩 신호를 상기 컬럼 선택라인 및 상기 레지스터(50)로 인가한다.
제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)에 저장된다.
상기 제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)에 의해 공유됨을 주목하여야 한다.
상기한 바와 같이, 도 5의 DRAM(400)에 의해, 프로세서들(100,200)간의 인터 페이싱 기능이 달성된다. 인터페이스 부로서 기능하는 내부 레지스터(50)를 활용함에 의해 상기 프로세서들(100,200)은 공통으로 억세스 가능한 공유 메모리 영역(11)을 통해 데이터 통신을 수행하며, 플래시 메모리(300)와 직접적으로 연결되어 있지 아니한 프로세서(100)가 타의 프로세서(200)에 연결된 플래시 메모리(300)를 간접적으로 억세스 할 수 있게 된다. 이에 따라, 외부 인터페이스 없이도 공유 메모리 영역을 통해 프로세서들 간에 데이터 통신을 할 수 있게 됨은 물론, 하나의 플래시 메모리를 공유적으로 사용할 수 있게 된다.
상기한 설명에서는 본 발명의 실시예를 위주로 도면을 따라 예를 들어 설명하였지만, 본 발명의 기술적 사상의 범위 내에서 본 발명을 다양하게 변형 또는 변경할 수 있음은 본 발명이 속하는 분야의 당업자에게는 명백한 것이다. 예를 들어, 사안이 다른 경우에 본 발명의 기술적 사상을 벗어남이 없이 메모리 내부의 레지스터 구성이나 뱅크 구성, 또는 회로 구성 및 억세스 방법을 다양하게 변형 또는 변경할 수 있음은 물론이다.
예를 들어, 부트 램을 디램의 내부에 두어 플래시 메모리와 직접적으로 연결되어 있지 아니한 프로세서가 초기 부팅을 원활히 수행할 수 있도록 하였지만, 불휘발성 부트 램을 구현할 수도 있을 것이다. 또한, 플래시 메모리 대신에 PRAM이나 RRAM, MRAM 등과 같은 불휘발성 반도체 메모리가 적용될 수 있으며, 디램 내의 4개의 메모리 영역중 2개를 공유 메모리 영역으로 나머지 2개를 전용 메모리 영역으로 지정하거나, 4개의 메모리 영역 모두를 공유 메모리 영역으로 설정할 수 있을 것이다. 또한, 2개의 프로세서를 사용하는 시스템의 경우를 위주로 예를 들었으나, 3개 이상의 프로세서가 시스템에 채용되는 경우에 하나의 디램에 3개 이상의 포트를 설치하고 특정한 타임에 3개 중의 하나의 프로세서가 설정된 공유 메모리를 억세스하도록 할 수 있을 것이다. 그리고, 디램의 경우를 예를 들었으나 여기에 한정됨이 없이 스태이틱 랜덤 억세스 메모리나 불휘발성 메모리 등에서도 본 발명의 기술적 사상이 확장가능 할 수 있을 것이다.
상술한 바와 같은 본 발명에 따르면, 프로세서들이 반도체 메모리 장치 및 플래시 메모리를 공유적으로 사용할 수 있어 멀티 프로세서 시스템의 사이즈가 콤팩트하게 됨은 물론, 공유적인 반도체 메모리 장치를 통하여 멀티 프로세서 시스템의 부팅을 원활히 수행할 수 있는 효과가 있다. 따라서, 멀티 프로세서 시스템 내에서 차지하는 메모리들의 코스트가 대폭적으로 줄어들 수 있는 이점이 있다.

Claims (10)

  1. 멀티 프로세서 시스템에 있어서:
    제1 및 제2 프로세서와;
    상기 제2 프로세서에 직접적으로 연결된 플래시 메모리와;
    휘발성 메모리 셀 어레이 내에 전용 및 공유 메모리 영역을 가지며 상기 제1 및 제2 프로세서 간의 데이터 통신이 디램 인터페이스를 통해 제공되도록 하고, 시스템 부팅 시 상기 제1 프로세서의 부트 코드가 상기 제1 프로세서로 제공되도록 하기 위해 상기 플래시 메모리로부터 리드된 상기 제1 프로세서의 부트 코드를 미리 설정된 인터페이스 방식으로 저장하는 부트 코드 저장영역을 가지는 반도체 메모리 장치를 구비함을 특징으로 하는 멀티 프로세서 시스템.
  2. 제1항에 있어서,
    상기 미리 설정된 인터페이스 방식은 에스램 인터페이스 또는 플래시 메모리 인터페이스임을 특징으로 하는 멀티 프로세서 시스템.
  3. 제2항에 있어서,
    상기 부트 코드 저장영역은 에스램 셀로 구성됨을 특징으로 하는 멀티 프로 세서 시스템.
  4. 제2항에 있어서,
    상기 미리 설정된 인터페이스 방식이 에스램 인터페이스인 경우에 상기 반도체 메모리 장치에는 라이트 인에이블 및 아웃 인에이블 코멘드를 수신하여 상기 부트 코드 저장영역에 대한 억세스를 제어하는 인터페이스 부가 구비됨을 특징으로 하는 멀티 프로세서 시스템.
  5. 모바일 통신 시스템에 있어서:
    제1 설정 타스크를 수행하는 제1 프로세서;
    제2 설정 타스크를 수행하는 제2 프로세서;
    상기 제2 프로세서에 연결되어 있는 플래시 메모리; 및
    상기 제1 및 제2 프로세서에 의해 서로 다른 포트를 통해 억세스 되며 메모리 셀 어레이의 일부에 할당된 공유 메모리 영역과, 상기 메모리 셀 어레이의 외부에 위치되며 상기 제1 및 제2 프로세서에 의해 억세스 되는 내부 레지스터와, 상기 제1 프로세서가 상기 공유 메모리 영역과 상기 내부 레지스터를 이용하여 상기 플래시 메모리를 간접적으로 억세스할 수 있도록 하며, 시스템 부팅 시 상기 제1 프로세서의 부트 코드가 상기 제1 프로세서로 제공되도록 하기 위해 상기 플래시 메 모리로부터 리드된 상기 제1 프로세서의 부트 코드를 미리 설정된 인터페이스 방식으로 저장하는 부트 코드 저장영역을 가지는 반도체 메모리 장치를 구비함을 특징으로 하는 모바일 통신 시스템.
  6. 제5항에 있어서,
    상기 미리 설정된 인터페이스 방식은 에스램 인터페이스 또는 플래시 메모리 인터페이스임을 특징으로 하는 모바일 통신 시스템.
  7. 제5항에 있어서,
    상기 부트 코드 저장영역은 에스램 셀로 구성됨을 특징으로 하는 모바일 통신 시스템.
  8. 제1 및 제2 프로세서와;
    상기 제2 프로세서에 직접적으로 연결된 플래시 메모리와;
    휘발성 메모리 셀 어레이 내에 전용 및 공유 메모리 영역을 가지며 상기 제1 및 제2 프로세서 간의 데이터 통신이 디램 인터페이스를 통해 제공되도록 하는 반도체 메모리 장치를 구비함 멀티 프로세서 시스템에서의 프로세서 부팅 방법에 있 어서:
    시스템 부팅 시 상기 플래시 메모리를 억세스 하여 상기 제1 프로세서의 부트 코드를 리드하고 이를 상기 반도체 메모리 장치 내의 부트 코드 저장영역 내에 미리 설정된 인터페이스 방식으로 저장하는 단계와;
    상기 부트 코드 저장영역 내에 저장된 상기 제1 프로세서의 부트 코드를 리드하여 제1 프로세서의 부팅을 수행하는 단계를 구비함을 특징으로 하는 프로세서 부팅 방법.
  9. 제8항에 있어서,
    상기 미리 설정된 인터페이스 방식은 에스램 인터페이스 또는 플래시 메모리 인터페이스임을 특징으로 하는 프로세서 부팅 방법.
  10. 제8항에 있어서,
    상기 부트 코드 저장영역은 에스램 셀 또는 레지스터로 구성됨을 특징으로 하는 프로세서 부팅 방법.
KR1020070050164A 2007-05-23 2007-05-23 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법 KR20080103183A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070050164A KR20080103183A (ko) 2007-05-23 2007-05-23 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070050164A KR20080103183A (ko) 2007-05-23 2007-05-23 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법

Publications (1)

Publication Number Publication Date
KR20080103183A true KR20080103183A (ko) 2008-11-27

Family

ID=40288626

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070050164A KR20080103183A (ko) 2007-05-23 2007-05-23 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법

Country Status (1)

Country Link
KR (1) KR20080103183A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745363B2 (en) 2009-12-30 2014-06-03 Samsung Electronics Co., Ltd. Bootable volatile memory device, memory module and processing system comprising bootable volatile memory device, and method of booting processing system using bootable volatile memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745363B2 (en) 2009-12-30 2014-06-03 Samsung Electronics Co., Ltd. Bootable volatile memory device, memory module and processing system comprising bootable volatile memory device, and method of booting processing system using bootable volatile memory device

Similar Documents

Publication Publication Date Title
KR100887417B1 (ko) 멀티 프로세서 시스템에서 불휘발성 메모리의 공유적사용을 제공하기 위한 멀티패쓰 억세스블 반도체 메모리장치
KR100725100B1 (ko) 포트간 데이터 전송기능을 갖는 멀티패쓰 억세스블 반도체메모리 장치
KR100735612B1 (ko) 멀티패쓰 억세스블 반도체 메모리 장치
US7596666B2 (en) Multi-path accessible semiconductor memory device having port state signaling function
US7870326B2 (en) Multiprocessor system and method thereof
US7941612B2 (en) Multipath accessible semiconductor memory device with host interface between processors
KR100772841B1 (ko) 프로세서들간 호스트 인터페이싱 기능을 갖는 멀티패쓰억세스블 반도체 메모리 장치
KR100725099B1 (ko) 멀티패쓰 억세스블 반도체 메모리 장치에서의 메모리확장구조
US20090089487A1 (en) Multiport semiconductor memory device having protocol-defined area and method of accessing the same
KR20100041309A (ko) 각 프로세서들의 어플리케이션 기능을 모두 활용 가능한 멀티 프로세서 시스템
KR20090008519A (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) 멀티 포트 반도체 메모리 장치 및 그에 따른 리프레쉬 방법
US20100070691A1 (en) Multiprocessor system having multiport semiconductor memory device and nonvolatile memory with shared bus
KR101430687B1 (ko) 다이렉트 억세스 부팅동작을 갖는 멀티 프로세서 시스템 및그에 따른 다이렉트 억세스 부팅방법
KR20100034415A (ko) 메모리 링크 아키텍쳐를 활용한 부팅기능을 갖는 멀티 프로세서 시스템
KR100855580B1 (ko) 프로세서 리셋 기능을 갖는 반도체 메모리 장치 및 그를 채용한 멀티 프로세서 시스템과 그에 따른 프로세서 리셋 제어방법
KR100879463B1 (ko) 억세스 권한 이양 시 프리차아지 스킵을 방지하는 동작을갖는 멀티패쓰 억세스블 반도체 메모리 장치
KR20090103070A (ko) 멀티 링크 아키텍쳐에서 저장 상태정보의 다이렉트전송기능을 갖는 멀티 프로세서 시스템
US20090216961A1 (en) Multi-port semiconductor memory device for reducing data transfer event and access method therefor
KR20090005786A (ko) 메모리 사용확장 기능을 갖는 멀티패쓰 억세스블 반도체메모리 장치 및 그에 따른 메모리 사용확장 방법
KR100781974B1 (ko) 레지스터 억세스회로를 가지는 멀티패스 억세스블 반도체메모리 장치
KR20080103183A (ko) 부트 램을 반도체 메모리 장치 내에 구비한 멀티 프로세서시스템 및 그를 이용한 프로세서 부팅 방법
KR100850277B1 (ko) 멀티패쓰 억세스블 반도체 메모리 장치에서의 뱅크어드레스 할당방법
KR20080063902A (ko) 멀티 포트 반도체 메모리 장치의 부팅방법

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination