KR100488103B1 - 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑회로 - Google Patents

중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑회로 Download PDF

Info

Publication number
KR100488103B1
KR100488103B1 KR10-2000-0074716A KR20000074716A KR100488103B1 KR 100488103 B1 KR100488103 B1 KR 100488103B1 KR 20000074716 A KR20000074716 A KR 20000074716A KR 100488103 B1 KR100488103 B1 KR 100488103B1
Authority
KR
South Korea
Prior art keywords
memory
processing unit
central processing
sram
control signal
Prior art date
Application number
KR10-2000-0074716A
Other languages
English (en)
Other versions
KR20020045305A (ko
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 KR10-2000-0074716A priority Critical patent/KR100488103B1/ko
Publication of KR20020045305A publication Critical patent/KR20020045305A/ko
Application granted granted Critical
Publication of KR100488103B1 publication Critical patent/KR100488103B1/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/06Address interface arrangements, e.g. address buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 메인 메모리의 구성을 DRAM(SDRAM)+SRAM으로 구성하고, 이러한 구성을 이용하여 중앙 처리 장치의 고성능 처리를 할 수 있는 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로에 관한 것이다. 이와 같은 본 발명에 따른 중앙처리장치의 고성능 처리를 위한 메모리 주소 맵핑 회로는 디코딩을 위한 어드레스 신호 및 제어신호를 출력하는 중앙 처리 장치(CPU)와; 상기 중앙 처리 장치(CPU)에서 출력된 어드레스 신호 및 제어신호를 디코딩 및 제어 신호로 변환하는 주소 디코더와, 제1 메모리의 위치를 변화시켜주는 모듈로 구성된 프로그래머블 로직 장치와; 유동적으로 위치를 바꿀 수 있는 상기 제1 메모리 및 하나 이상의 다른 메모리를 구비하며, 상기 프로그래머블 로직 장치에서 출력되는 메모리 제어 신호를 수신하는 메모리부로 구성된다.

Description

중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로{Flexible Memory Address Mapping Circuit for CPU Max Processing}
본 발명은 메모리 주소 맵핑 회로에 관한 것으로서, 특히 중앙 처리 장치를 구비하여 사용하는 모든 제품에서 사용하기에 적당하도록 한 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로에 관한 것이다.
도 1은 종래의 메모리 주소 맵핑 회로의 블록 구성도 이다. 도 1에서, 도면 부호 1은 중앙 처리 장치(CPU)이고, 2는 디코딩을 위한 어드레스 시그널 및 제어신호를 나타내며, 3은 디코딩 및 제어 신호를 만드는 프로그래머블 로직 장치(Programmable Logic Device: PLD)이며, 4는 메모리 제어 신호를 나타내며, 5는 어드레스 및 데이터를 전송하는 버퍼이며, 6은 DRAM, SDRAM이며, 100은 캐쉬 제어기(Cache Controller)이며, 101은 SRAM이고, 200은 캐쉬 블록을 각각 나타낸다.
이와 같은 구성을 갖는 종래의 메모리 주소 맵핑 회로에서는 캐쉬 블록(200)을 사용하지 않는 경우와 사용하는 경우로 나누어서 동작을 설명한다.
먼저, 캐쉬 블록(200)을 사용하지 않는 경우에는 중앙 처리 장치(CPU)(1)가 어드레스와 제어 신호(2)를 출력하면, 프로그래머블 로직 장치(3)가 출력신호를 수신하여 디코딩한 후, 제어신호(4)를 통하여 DRAM/SDRAM(6)으로 전달한다. 이때, 사용되는 제어신호(4)는 RAS, CAS, CS 등과 같은 신호가 사용된다.
이때, 보통 SDRAM이 사용되는 경우, 기입(Write)사이클은 RAS(Row Address Strobe)를 내어 주고 중앙 처리 장치(1)의 클럭으로 2 클럭을 쉬고 CAS(Column Address Strobe)를 내어 주면서 버퍼(5)를 통해 전달되는 데이터를 DRAM/SDRAM(6) 또는 SRAM(101)과 같은 메모리에 쓰고 난 후, 다시 1 클럭을 쉬고 나서 모든 기입 동작 사이클을 끝낸다.
반면, 독출(Read)사이클일 때는 RAS 사이클과 CAS 사이클 뒤에 2 클럭을 쉬고 다시 CAS가 나온 후 3(또는 2) 클럭을 쉬고, 그 다음 데이터가 전송된다. 이어, 다시 1 클럭을 쉬고 난 후 모든 독출 사이클이 끝난다.
도 1에 도시된 종래의 메모리 주소 맵핑 회로에서는 1개의 정상 사이클로 볼 때 기입 사이클은 6 클럭이 걸리고, 독출 사이클은 9 (또는 8) 클럭이 걸린다.
그러나, 이와 같은 회로에서는 캐쉬 제어기와 같은 부가 로직이 많이 들고, SRAM(101)을 메모리 영역으로 사용할 수 없는 문제점이 있었다.
따라서, 캐쉬 블록(200)을 사용하는 회로를 구성할 수 있는데, 이와 같은 경우는 앞의 설명과 동일한 동작을 하지만, 캐쉬 제어기(100)가 현재의 메모리 사이클이 SRAM(101)에 저장되어 있다고 판단하는 경우, DRAM/SDRAM(6)을 억세스 하지 않고, 바로 SRAM(101)을 엑세스한다. SRAM(101)은 통상적으로 2 클럭이면 독출 또는 기입 사이클을 수행함으로써 모든 싸이클을 마칠 수 있다.
그러나, 이러한 회로에서는 캐쉬 메모리로 쓰이는 SRAM(101)을 DRAM/SDRAM(6)과 중복하여 사용하는 단점과, 응용프로그램의 사이즈를 SRAM(101)에 적합하도록 설계해야만 하는 문제점을 지니고 있었다. 따라서, 중앙 처리 장치(CPU)(1)의 성능이 최대로 발휘될 수 없으며, 회로에서 필요한 중앙 처리 장치의 성능보다 더 빠른 중앙 처리 장치를 사용함으로써 상대적으로 제품의 가격이 올라간다.
도 2는 종래의 다른 실시 예의 메모리 주소 맵핑 회로의 블록 구성도이다. 도 2에서 부호 7은 중앙 처리 장치(CPU)이며, 8은 디코딩을 위한 어드레스 시그널 및 제어 신호를 나타내며, 9는 디코딩 및 제어 시그널을 만드는 프로그래머블 로직 장치(Programmable Logic Device: PLD)(9)이며, 10은 메모리 제어 신호를 나타내며, 11은 어드레스 및 데이터를 전송하는 버퍼이며, 12는 SRAM이다.
이와 같은 회로에서는 SRAM(12)를 사용함으로써 도 1에서 설명한 바와 같이, 독출 및 기입 엑세스가 2 클럭이면 사이클을 종료하지만, 통상 SRAM(12)의 가격이 DRAM 또는 SDRAM의 가격보다 월등히 비싸기 때문에 전체 시스템의 구축비용이 크게 올라간다. 따라서, 전체 제품의 단가가 크게 높아지는 단점이 있다. 실 예로, 메모리 부분의 단가가 약 10배 가량 높아질 수 있다.
본 발명의 목적은 이상에서 언급한 종래 기술의 문제점을 해결하기 위하여 제안한 것으로서, 메인 메모리의 구성을 DRAM(SDRAM)+SRAM으로 구성하고, 이러한 구성을 이용하여 중앙 처리 장치의 고성능 처리를 할 수 있는 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로를 제공하기 위한 것이다.
본 발명의 다른 목적은 구비된 SRAM의 소프트웨어의 요구에 따라 위치를 유동적으로 변화시킴으로써 중앙 처리 장치의 전체 프로세싱 이득을 향상시킬 수 있는 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로를 제공하기 위한 것이다.
이상과 같은 목적을 달성하기 위하여, 본 발명에 따른 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로는 디코딩을 위한 어드레스 신호 및 제어신호를 출력하는 중앙 처리 장치(CPU)와; 상기 중앙 처리 장치(CPU)에서 출력된 어드레스 신호 및 제어신호를 디코딩 및 제어 신호로 변환하는 주소 디코더와, 제1 메모리의 위치를 변화시켜주는 모듈로 구성된 프로그래머블 로직 장치와; 유동적으로 위치를 바꿀 수 있는 상기 제1 메모리 및 하나 이상의 다른 메모리를 구비하며, 상기 프로그래머블 로직 장치에서 출력되는 메모리 제어 신호를 수신하는 메모리부로 구성된다.
이하에서, 첨부된 도면을 참조하여 본 발명에 따른 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로의 구성 및 동작을 설명한다.
도 3은 본 발명에 따른 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로의 블록 구성도이다.
도 3을 참조하면, 본 발명의 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로는 전체 시스템을 제어하며, 디코딩을 위한 어드레스 신호 및 제어신호를 출력하는 중앙 처리 장치(CPU)(13)와; 중앙 처리 장치(CPU)(13)에서 출력된 어드레스 신호 및 제어신호를 디코딩 및 제어 신호로 변환하는 주소 디코더(40)와, SRAM(19)의 메모리 위치를 변화시켜주는 모듈(20)로 구성된 프로그래머블 로직 장치(Programmable Logic Device : PLD)(15)와; 프로그래머블 로직 장치(15)에서 출력되는 메모리 제어 신호를 수신하는 메모리부(18a,18b,19)와, 중앙 처리 장치(13)와 메모리부(18a,18b,19) 사이에 위치하며, 어드레스 및 데이터를 전송하는 버퍼(17)로 구성된다.
여기서, 메모리부에 사용되는 DRAM/SDRAM(18a,18b)는 중앙 처리 장치의 액세스 시간이 느린 저가의 메모리가 사용되며, 반면, SRAM(19)는 유동적으로 그 위치를 바꿀 수 있는 메모리이며, 고가이지만 중앙 처리 장치의 액세스 시간이 빠른 장치이다.
이와 같은 구성을 갖는 본 발명의 바람직한 실시 예에 따른 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로의 동작을 첨부된 도면을 참조하여 설명한다.
중앙 처리 장치(13)가 DRAM/SDRAM(18a,18b)을 통해 부팅을 한 후, 가장 많은 프로그램이 동작하는 메모리 영역의 값을 프로그래머블 로직 장치(Programmable Logic Device : PLD)(15)에 기입한다.
이어, 프로그래머블 로직 장치(15)의 주소 포인터(20)에 쓰여진 값을 프로그래머블 로직 장치(15)의 주소 디코더(40)에 전달한다.
이하에서 이상에서 설명한 동작에 대한 코딩을 공개하면 다음과 같다. 이 코드는 본 발명의 모든 제어 신호를 표현하지 않고 메모리의 구분을 어떻게 하느냐를 중점적으로 나타낸 것이다.
module decoder(cpu_clk,
cpu_rst_,
cpu_wr,
cpu_data,
cpu_addr,
dram_sel_,
sram_sel_)
//input signals
input cpu_clk;
input cpu_rst_;
input cpu_wr;
input [31:0]cpu_addr;
//output signals
output dram_sel_;
output sram_sel_;
//inout signals
inout [31:0]cpu_data;
//internal signals
reg [31:0]sram_addr_pointer
//parameter
parameter DRAM_SIZE=32'h0700_0000;
parameter SRAM_SIZE=32'h0100_0000;
parameter MEM =4'h0;
always @ (negedge cpu_rst_or posedge cpu_clk)begin
if(!cpu_rst)
sram_addr_pointer<=DRAM_SIZE;
else if (sram_addr_pointer_sel && cpu_wr)
sram_addr_pointer<=cpu_data[7:0]
end
assign dram_sel_=((a[31:28]==MEM)&&
((DRAM_SIZE-sram_addr_pointer-1)
∥(SRAM_SIZE+sram_addr_pointer)))?1;b0:1'b1;
assign sram_sel_=((a[31:28]==MEM)&&sram_addr_pointer)?1'b0:1'b1;
endmodule
주소 포인터(20)에서 전달된 어드레스를 주소 디코더(40)에서 디코딩 한 후, 프로그래머블 로직 장치(15)는 디코딩된 칩 선택 신호와 그 외의 다른 제어신호(RAS, CAS, R/W, CS)등을 만들어 제어신호(16)를 통해 메모리부의 각 메모리(18a,18b,19)를 제어한다.
위에서 공개한 코딩에서 보듯이 소프트웨어가 기입한 어드레스 위치를 하드웨어는 SRAM(19)의 시작점으로 판단하고, 소프트웨어의 관여 없이 SRAM을 억세스 할 수 있기 때문에 전체 중앙 처리 장치의 프로세싱 이득을 얻을 수 있다.
위에서 공개한 코드와 도 3을 동시에 보면서 설명하면, 다음과 같다. 가령 DRAM의 메모리 사이즈가 Ox0700_0000이고, SRAM의 메모리사이즈가 0x0100_000 라하고, S/W에서 sram_addr_pointer의 값을 0x0300_0000으로 기입했다면, DRAM/SDRAM(18a,18b)의 어드레스는 0x0000_0000~0x02FF_FFFF와 0x0400_0000~0x7FF_FFFF이고, SRAM(19)의 어드레스는 0x0300_0000~0x03FF_FFFF까지가 되면서, 중앙 처리 장치(13)에서 해당된 어드레스 신호를 출력하면, 각각의 메모리 제어 신호를 발생함으로써 해당 메모리를 제어할 수 있는 것이다.
이상에서 설명한 본 발명에 따른 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로에 따르면, 다음과 같은 효과를 제공한다.
먼저, 시스템에 구비되는 메모리의 비용을 최소로 줄이면서도 중앙 처리 장치의 효율성을 극대화시킬 수 있다.
또한, 빠른 메모리(SRAM)의 위치를 자유자재로 바꾸면서 소프트웨어가 회로 구조의 변동에 무관하게 유동성 있게 사용할 수 있다.
또한, 종래의 기술에서와 같이, SRAM을 캐시 블록으로 사용할 경우, 부가 로직이 많이 사용되고 또한 SRAM의 영역을 사용 못하는 단점이 개선되어서 보다 메모리 효율을 최대로 이용할 수 있다.
도 1 및 도 2는 종래의 메모리 주소 맵핑 회로의 블록 구성도.
도 3은 본 발명에 따른 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑 회로의 블록 구성도.
*도면의 주요부분에 대한 부호의 설명*
13 : 중앙 처리 장치
15 : 프로그래머블 로직 장치
17 : 버퍼
18a,8b : DRAM, SDRAM
19 : SRAM
20 : 모듈

Claims (1)

  1. 디코딩을 위한 어드레스 신호 및 제어신호를 출력하는 중앙 처리 장치(CPU)와;
    상기 중앙 처리 장치(CPU)에서 출력된 어드레스 신호 및 제어신호를 디코딩 및 제어 신호로 변환하는 주소 디코더와, 제1 메모리(SRAM)의 위치를 변화시켜주는 모듈로 구성된 프로그래머블 로직 장치와;
    유동적으로 위치를 바꿀 수 있는 상기 제1 메모리(SRAM) 및 하나 이상의 다른 메모리(DRAM/SRAM)를 구비하며, 상기 프로그래머블 로직 장치에서 출력되는 메모리 제어 신호를 수신하는 메모리부 및
    상기 중앙 처리 장치와 메모리부 사이에 위치하며, 어드레스 및 데이터를 전송하는 버퍼로 구성된 것을 특징으로 하는 중앙처리장치의 고성능 처리를 위한 메모리 주소 맵핑 회로.
KR10-2000-0074716A 2000-12-08 2000-12-08 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑회로 KR100488103B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2000-0074716A KR100488103B1 (ko) 2000-12-08 2000-12-08 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2000-0074716A KR100488103B1 (ko) 2000-12-08 2000-12-08 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑회로

Publications (2)

Publication Number Publication Date
KR20020045305A KR20020045305A (ko) 2002-06-19
KR100488103B1 true KR100488103B1 (ko) 2005-05-09

Family

ID=27680592

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0074716A KR100488103B1 (ko) 2000-12-08 2000-12-08 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑회로

Country Status (1)

Country Link
KR (1) KR100488103B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100442426B1 (ko) * 2000-12-27 2004-07-30 엘지전자 주식회사 메모리 제어 장치
KR100440976B1 (ko) * 2002-08-29 2004-07-21 삼성전자주식회사 확장 데이터 출력 디램의 제어신호를 이용한 동기화 디램제어방법 및 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09101917A (ja) * 1995-10-09 1997-04-15 Hitachi Ltd キャッシュメモリ制御方法
KR970016968A (ko) * 1995-09-25 1997-04-28 김주용 개선된 마이크로 프로세서용 캐쉬 메모리 장치
US5875451A (en) * 1996-03-14 1999-02-23 Enhanced Memory Systems, Inc. Computer hybrid memory including DRAM and EDRAM memory components, with secondary cache in EDRAM for DRAM
KR19990032586A (ko) * 1997-10-20 1999-05-15 류정열 크랙 방지용 보강판을 가지는 자동차 본네트의 스트라이커 보강판
KR19990085186A (ko) * 1998-05-14 1999-12-06 서평원 데이터 처리를 위한 메모리 제어 장치
KR20000018680A (ko) * 1998-09-03 2000-04-06 윤종용 캐시 메모리를 구비한 전자 장치

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970016968A (ko) * 1995-09-25 1997-04-28 김주용 개선된 마이크로 프로세서용 캐쉬 메모리 장치
JPH09101917A (ja) * 1995-10-09 1997-04-15 Hitachi Ltd キャッシュメモリ制御方法
US5875451A (en) * 1996-03-14 1999-02-23 Enhanced Memory Systems, Inc. Computer hybrid memory including DRAM and EDRAM memory components, with secondary cache in EDRAM for DRAM
KR19990032586A (ko) * 1997-10-20 1999-05-15 류정열 크랙 방지용 보강판을 가지는 자동차 본네트의 스트라이커 보강판
KR19990085186A (ko) * 1998-05-14 1999-12-06 서평원 데이터 처리를 위한 메모리 제어 장치
KR20000018680A (ko) * 1998-09-03 2000-04-06 윤종용 캐시 메모리를 구비한 전자 장치

Also Published As

Publication number Publication date
KR20020045305A (ko) 2002-06-19

Similar Documents

Publication Publication Date Title
US7120754B2 (en) Synchronous DRAM with selectable internal prefetch size
US6327175B1 (en) Method and apparatus for controlling a memory array with a programmable register
US7299323B2 (en) Memory controller having a read-modify-write function
US20090276548A1 (en) Dynamically setting burst type of a double data rate memory device
KR940012146A (ko) Cpu와 승산기를 갖는 반도체집적회로
JP4199658B2 (ja) 読出及び書込動作でバースト順序が異なるアドレッシングを行うメモリデバイス
JP2005501300A (ja) 仮想メモリ配列内のデータにアクセスするための配列および方法
EP1248267A2 (en) Semiconductor memory device and information processing system
KR20020068454A (ko) 반도체 기억 장치 및 정보 처리 장치
KR100488103B1 (ko) 중앙 처리 장치의 고성능 처리를 위한 메모리 주소 맵핑회로
JP3725270B2 (ja) 半導体装置
JPH08328949A (ja) 記憶装置
US6862242B2 (en) SRAM control circuit with a power saving function
US6766403B2 (en) CPU system with high-speed peripheral LSI circuit
JP2010033533A (ja) メモリモジュール、および、メモリ用補助モジュール
KR100338957B1 (ko) 논-버스트 모드 지원장치
JP3343556B2 (ja) 記憶システム
JP2919357B2 (ja) Cpuインタフェース回路
KR100773065B1 (ko) 듀얼 포트 메모리 장치, 메모리 장치 및 듀얼 포트 메모리장치 동작 방법
KR100346268B1 (ko) 데이터 버스 제어 시스템
JP3563340B2 (ja) メモリコントローラ
JPS61220042A (ja) メモリアクセス制御方式
JPH0334190A (ja) 半導体記憶装置
KR19990005361A (ko) 억세스 타임이 서로 다른 중앙 처리 장치와 주변 입출력 장치와의 정합 장치
KR19990033447A (ko) 디램의 억세스 타이밍 제어장치

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130326

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140414

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee