KR100353814B1 - 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨램 억세스 장치 - Google Patents

확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨램 억세스 장치 Download PDF

Info

Publication number
KR100353814B1
KR100353814B1 KR1020000047843A KR20000047843A KR100353814B1 KR 100353814 B1 KR100353814 B1 KR 100353814B1 KR 1020000047843 A KR1020000047843 A KR 1020000047843A KR 20000047843 A KR20000047843 A KR 20000047843A KR 100353814 B1 KR100353814 B1 KR 100353814B1
Authority
KR
South Korea
Prior art keywords
instruction
ram
extended
access
fetched
Prior art date
Application number
KR1020000047843A
Other languages
English (en)
Other versions
KR20020014511A (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 KR1020000047843A priority Critical patent/KR100353814B1/ko
Publication of KR20020014511A publication Critical patent/KR20020014511A/ko
Application granted granted Critical
Publication of KR100353814B1 publication Critical patent/KR100353814B1/ko

Links

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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

본 발명은 간단한 하드웨어로 원래 내부에 존재하는 램을 억세스할 때와 동일하게 확장된 램을 1머신 사이클에 억세스할 수 있는, 램 억세스 장치를 제공하기 위한 것으로, 이를 위해 본 발명은 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨 램 억세스 장치에 있어서, 코드 매핑 룰에 따라 확장된 램을 억세스하는 명령어를 내부 램을 억세스하는 명령어로 매핑하여 저장하고 있으며, 롬으로부터의 명령어 페치 시 페치된 명령어가 확장된 램을 억세스하는 확장 램 억세스 명령어인지를 체크하는 확장 램 억세스 명령어 변환 테이블; 상기 확장 램 억세스 명령어 변환 테이블의 체크 결과, 페치된 명령어가 상기 확장 램 억세스 명령어일 경우 상기 확장 램 억세스 명령어 변환 테이블로부터 인에이블되어 출력되는 제어 신호에 응답하여 상기 롬으로부터 페치된 노말 명령어 또는 상기 확장 램 억세스 명령어 변환 테이블로부터 출력되는 변환된 명령어를 선택하여 명령어 레지스터로 출력하는 제1 선택 수단; 및 램을 억세스하기 위하여 상기 제어 신호에 응답하여 내부 램 어드레스 또는 확장 램 어드레스 생성부로부터 출력되는 확장 램 어드레스를 선택적으로 상기 램으로 출력하는 제2 선택 수단을 포함한다.

Description

확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨 램 억세스 장치{RAM ACCESS DEVICE FOR IMPROVING ACCESS TIME OF EXTENDED RAM ACCESS CODE}
본 발명은 마이크로컨트롤러에 관한 것으로, 특히 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨 램 억세스 장치에 관한 것이다.
최근 세계적으로 홈 네트워킹 시스템의 개발이 한창 진행되고 있는 데, 이러한 시스템의 구현에 있어 꼭 필요한 것이 마이크로컨트롤러이며, 마이크로컨트롤러 중 가격이 싼 8비트 마이크로컨트롤러가 많이 사용되고 있다.
홈 네트워킹 시스템은 대부분의 가전기기나 사무기기를 인터넷에 연결하여 인터넷을 통해 제어하게 되는 데, 이를 위해서는 마이크로컨트롤러에서 인터넷 프로토콜을 수행할 수 있는 응용 프로그램을 수행하여야 한다. 여기서, 응용 프로그램의 수행 속도가 홈 네트워킹 시스템의 성능을 결정하게 되는 데, 이는 결국 응용 프로그램을 수행하는 마이크로컨트롤러의 명령어 수행 속도 시간이 홈 네트워킹 시스템의 성능을 결정하게 되는 것이다. 따라서, 마이크로컨트롤러가 이러한 응용 프로그램을 수행하기 위해서는 매우 큰 램(RAM)을 필요로 하고, 램 억세스 속도가 빨라야 한다. 그러나, 종래의 8비트 마이크로컨트롤러의 경우 내장된 램 크기가 대부분 256바이트 이하로서, 그 크기가 응용 프로그램을 수행하기에는 절대적으로 부족하다. 이에 따라, 내부 램 용량을 확장하게 되며, 이 확장된 내부 램을 억세스하는 속도가 개선되어야 한다.
일반적으로, 램 확장을 위해 종래의 외부 램 억세스 명령어를 그대로 사용하고 있는 데, 이는 내부 램 확장을 가능하게는 하지만 확장된 내부 램의 억세스 속도를 향상시키지 못한다.
일례로, 8비트 마이크로컨트롤러인 인텔 8051의 경우를 살펴보면 인텔 8051에서는 확장된 내부 램을 억세스하기 위해 MOVX 명령어를 사용하는 데, 이 MOVX 명령어는 원래 있던 내부 램을 억세스하기 위해 사용되는 MOV 명령어보다 1 머신 사이클(machine cycle) 더 많은 2 머신 사이클이 소요된다. 이해를 돕기 위해, 도 1에 인텔 8051의 MOVX 명령어와 MOV 명령어의 실행 사이클을 도시하였다.
이러한 문제를 해결하기 위해 확장된 램을 원래 있던 내부 램과 동일하게 1 머신 사이클에 억세스하도록 만들기 위해서는 명령어 코드를 새로 할당하여 내부 제어 로직을 수정해야 하는 데, 이는 매우 비효율적이며 구현 자체가 쉽지 않다.
본 발명은 상기 문제점을 해결하기 위하여 안출된 것으로써, 간단한 하드웨어로 원래 내부에 존재하는 램을 억세스할 때와 동일하게 확장된 램을 1머신 사이클에 억세스할 수 있는, 램 억세스 장치를 제공하는데 그 목적이 있다.
도 1은 인텔 8051의 MOVX 명령어 및 MOV 명령어에 대한 실행 사이클을 도시한 도면.
도 2는 본 발명의 일실시예에 따른 램 억세스 장치의 블록도.
* 도면의 주요 부분에 대한 설명
100 : 롬 110 : 확장 램 억세스 명령어 변환 테이블
120, 150 : 멀티플렉서 130 : 명령어 레지스터
140 : 확장 램 어드레스 생성부
160 : 확장 램
170 : 내부 램
상기 목적을 달성하기 위한 본 발명은 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨 램 억세스 장치에 있어서, 코드 매핑 룰에 따라 확장된 램을 억세스하는 명령어를 내부 램을 억세스하는 명령어로 매핑하여 저장하고 있으며, 롬으로부터의 명령어 페치 시 페치된 명령어가 확장된 램을 억세스하는 확장 램 억세스 명령어인지를 체크하는 확장 램 억세스 명령어 변환 테이블; 상기 확장 램 억세스 명령어 변환 테이블의 체크 결과, 페치된 명령어가 상기 확장 램 억세스 명령어일 경우 상기 확장 램 억세스 명령어 변환 테이블로부터 인에이블되어 출력되는 제어 신호에 응답하여 상기 롬으로부터 페치된 노말 명령어 또는 상기 확장 램 억세스 명령어 변환 테이블로부터 출력되는 변환된 명령어를 선택하여 명령어 레지스터로 출력하는 제1 선택 수단; 및 램을 억세스하기 위하여 상기 제어 신호에 응답하여 내부 램 어드레스 또는 확장 램 어드레스 생성부로부터 출력되는 확장 램 어드레스를 선택적으로 상기 램으로 출력하는 제2 선택 수단을 포함하여 이루어진다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부된 도면을 참조하여 설명하기로 한다.
도 2는 본 발명의 일실시예에 따른 램 억세스 장치의 블록도이다.
도 2에 도시된 바와 같이, 본 발명의 램 억세스 장치는 코드 매핑 룰(rule)에 따라 확장된 램을 억세스하는 명령어를 일반 램을 억세스하는 명령어로 매핑하여 저장하고 있으며, 매 사이클마다 명령어를 롬(100)으로부터 페치할 때 페치된 명령어가 확장된 램을 억세스하는 명령어인지를 체크하는 확장 램 억세스 명령어 변환 테이블(110), 확장 램 억세스 명령어 변환 테이블(110)의 체크 결과, 페치된 명령어가 확장된 램을 억세스하는 명령어일 경우 인에이블되는 제어 신호(Ext_RAM_access)에 응답하여 롬(100)으로부터 페치된 노말 명령어 또는 확장 램 억세스 명령어 변환 테이블(110)로부터 출력되는 변환된 명령어를 선택하여 명령어 레지스터(130)로 출력하는 멀티플렉서(IR_MUX)(120) 및 제어 신호(Ext_RAM_access)에 응답하여 내부 램 어드레스 또는 확장 램 어드레스생성부(140)로부터 출력되는 확장 램 어드레스를 선택하여 램(확장 램(160) 및 내부 램(170) 포함)으로 출력하는 멀티플렉서(150)로 이루어지며, 멀티플렉서(150)로부터 출력되는 어드레스에 응답하여 확장 램(160) 및 내부 램(170)을 동일하게 억세스한다.
도 2를 참조하여, 본 발명에서 이루어지는 확장된 램을 억세스하는 동작에 대해 상세히 설명한다.
먼저, 매 사이클마다 명령어를 롬(100)으로부터 페치할 때 확장 램 억세스 명령어 변환 테이블(110)에서 페치된 명령어가 확장된 램을 억세스하는 확장 램 억세스 명령어인지를 체크하여, 만약, 확장 램 억세스 명령어인 경우 제어 신호(Ext_RAM_access)를 '1'로 인에이블시켜 멀티플렉서(120, 150)로 출력한다. 멀티플렉서(120)는 '1'로 인에이블된 제어 신호(Ext_RAM_access)에 따라 확장 램 억세스 명령어 변환 테이블(110)로부터 출력되는 변환된 명령어를 선택하여 명령어 레지스터(130)로 보낸다.
확장 램 억세스 명령어 변환 테이블(110)의 코드 매핑 룰은 하드웨어가 가지고 있는 명령어 세트에 따라 달라진다. 코드 매핑 룰은 명령어가 램 읽기 또는 램 쓰기 명령인지를 판단하고, 판단 결과에 따라 명령어 사이클이 가장 짧은 명령어를 찾아 읽기와 쓰기로 분류하고, 구현 로직을 최소화하기 위해 최적화된 명령어를 일대일 매핑시킨다. 예를 들어, MOVX @DPTR, A 명령어가 실행되어야 한다면 확장 램 억세스 명령어 변환 테이블(110)에서는 상기 명령어가 확장된 램을 억세스하는 확장 램 억세스 명령어이므로 제어신호(Ext_RAM_access) 신호를 '1'로 인에이블시켜출력하고, MOV R0, A 명령어를 변환된 명령어로 출력한다. 이때, 원래의 명령어(MOVX @DPTR, A)와 변환된 명령어(MOV R0, A)의 차이는 연산의 마지막 결과가 저장되는 누적기(Accumulator)의 값을 어디에 저장할 것인 가이다. 따라서, 멀티플렉서(150)에서 인에이블된 제어신호(Ext_RAM_access)에 응답하여 확장 램 어드레스 생성부(140)로부터 출력되는 확장 램 어드레스를 램으로 출력함으로써 저장할 곳의 램 어드레스를 선택하도록 한다.
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.
상기와 같이 이루어지는 본 발명은, 간단한 하드웨어 구성으로 확장 램 억세스 명령어를 일반 내부 램 명령어로 변환시킴으로써 확장 램을 억세스하는 속도를 2배 이상 향상시킬 수 있으며, 이로부터 전체 프로그램 수행 속도의 향상과 전력 소모를 줄일 수 있는 추가의 효과를 얻을 수 있다.

Claims (3)

  1. 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨 램 억세스 장치에 있어서,
    코드 매핑 룰에 따라 확장된 램을 억세스하는 명령어를 내부 램을 억세스하는 명령어로 매핑하여 저장하고 있으며, 롬으로부터의 명령어 페치 시 페치된 명령어가 확장된 램을 억세스하는 확장 램 억세스 명령어인지를 체크하는 확장 램 억세스 명령어 변환 테이블;
    상기 확장 램 억세스 명령어 변환 테이블의 체크 결과, 페치된 명령어가 상기 확장 램 억세스 명령어일 경우 상기 확장 램 억세스 명령어 변환 테이블로부터 인에이블되어 출력되는 제어 신호에 응답하여 상기 롬으로부터 페치된 노말 명령어 또는 상기 확장 램 억세스 명령어 변환 테이블로부터 출력되는 변환된 명령어를 선택하여 명령어 레지스터로 출력하는 제1 선택 수단; 및
    램을 억세스하기 위하여 상기 제어 신호에 응답하여 내부 램 어드레스 또는 확장 램 어드레스 생성부로부터 출력되는 확장 램 어드레스를 선택적으로 상기 램으로 출력하는 제2 선택 수단
    을 포함하여 이루어지는 램 억세스 장치.
  2. 제 1 항에 있어서, 상기 코드 매핑 룰은,
    명령어 세트에 따라 달라지는 것을 특징으로 하는 램 억세스 장치.
  3. 제 2 항에 있어서, 상기 코드 매핑 룰은,
    상기 페치된 명령어가 램 읽기 또는 램 쓰기 명령인지를 판단하고, 그 판단 결과에 따라 명령어 사이클이 가장 짧은 명령어를 찾아 읽기와 쓰기로 분류한 후 상기 페치된 명령어를 최적화된 명령어를 일대일 매핑하는 것을 특징으로 하는 램 억세스 장치.
KR1020000047843A 2000-08-18 2000-08-18 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨램 억세스 장치 KR100353814B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000047843A KR100353814B1 (ko) 2000-08-18 2000-08-18 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨램 억세스 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000047843A KR100353814B1 (ko) 2000-08-18 2000-08-18 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨램 억세스 장치

Publications (2)

Publication Number Publication Date
KR20020014511A KR20020014511A (ko) 2002-02-25
KR100353814B1 true KR100353814B1 (ko) 2002-09-27

Family

ID=19683800

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000047843A KR100353814B1 (ko) 2000-08-18 2000-08-18 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨램 억세스 장치

Country Status (1)

Country Link
KR (1) KR100353814B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5426769A (en) * 1993-08-26 1995-06-20 Metalink Corp. System and method for producing input/output expansion for single chip microcomputers
US5481682A (en) * 1991-04-08 1996-01-02 Mitsubishi Denki Kabushiki Kaisha Microcommand function switching circuit
KR19980086928A (ko) * 1997-05-12 1998-12-05 맥아들 존제이 내부 및 외부 메모리 사용
KR19990022430A (ko) * 1995-06-07 1999-03-25 어드밴스드 마이크로 디바이시즈, 아이엔씨. 확장기능을 지정하기 위한 명령어 필드를 사용하는 마이크로프로세서
US5966514A (en) * 1995-05-31 1999-10-12 Matsushita Electric Industrial Co., Ltd. Microprocessor for supporting reduction of program codes in size
KR20000074425A (ko) * 1999-05-20 2000-12-15 윤종용 어드레스 확장이 가능한 데이터 처리 시스템

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5481682A (en) * 1991-04-08 1996-01-02 Mitsubishi Denki Kabushiki Kaisha Microcommand function switching circuit
US5426769A (en) * 1993-08-26 1995-06-20 Metalink Corp. System and method for producing input/output expansion for single chip microcomputers
US5966514A (en) * 1995-05-31 1999-10-12 Matsushita Electric Industrial Co., Ltd. Microprocessor for supporting reduction of program codes in size
KR19990022430A (ko) * 1995-06-07 1999-03-25 어드밴스드 마이크로 디바이시즈, 아이엔씨. 확장기능을 지정하기 위한 명령어 필드를 사용하는 마이크로프로세서
KR19980086928A (ko) * 1997-05-12 1998-12-05 맥아들 존제이 내부 및 외부 메모리 사용
KR20000074425A (ko) * 1999-05-20 2000-12-15 윤종용 어드레스 확장이 가능한 데이터 처리 시스템

Also Published As

Publication number Publication date
KR20020014511A (ko) 2002-02-25

Similar Documents

Publication Publication Date Title
KR101729503B1 (ko) 계층 변환 테이블 제어
JPH11161547A (ja) データ処理装置用記憶装置、および記憶場所にアクセスする方法
EP4066095A1 (en) Reduction of page migration between different types of memory
KR980004059A (ko) 데이타 처리장치 및 그 레지스터 어드레스 변환방법
KR100353814B1 (ko) 확장된 램 억세스 명령어를 억세스하는 시간을 향상시킨램 억세스 장치
KR100377165B1 (ko) 억세스 시간의 선택적 조정 기능을 갖는 램 억세스 장치
US20050021929A1 (en) Micro controller for processing compressed codes
JPH01233537A (ja) キャッシュメモリを備えた情報処理装置
JPH0844560A (ja) メモリ制御回路とその回路を内蔵した集積回路素子
JP4015867B2 (ja) アドレス信号出力装置
KR100546298B1 (ko) Arm7t 프로세서를 이용한 마이크로 프로세서에서 명령어 모드에 따른 캐쉬 메모리의 라인 사이즈 제어 방법 및 그 장치
CN114297131B (zh) 传感器控制系统、片上系统和计算装置
JP3644614B2 (ja) 動的中間コード処理装置
KR200204909Y1 (ko) 분할된 내부 코드 메모리를 갖는 마이크로컨트롤러
JPH01263750A (ja) シングルチップマイクロコンピュータ
JP2008003867A (ja) マイクロコンピュータ
JPH03211641A (ja) メモリ装置のアドレス指定方法
CN114721464A (zh) 片上系统和计算装置
JP2985201B2 (ja) マイクロコンピュータ
KR100640820B1 (ko) 버퍼 제어 장치
US9274794B2 (en) Processor and instruction processing method in processor
CN115658559A (zh) 内存地址映射方法及装置、芯片
JPH02257233A (ja) 拡張メモリのアクセス方法および拡張メモリのアクセス制御装置
JPH05143445A (ja) 仮想記憶コンピユータのメモリ高速化機構
JPH02116939A (ja) アドレス選択方式

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050824

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee