KR19990037395A - 두개의 워드 명령을 단일 주기 동안 실행하는 시스템 및 방법 - Google Patents
두개의 워드 명령을 단일 주기 동안 실행하는 시스템 및 방법 Download PDFInfo
- Publication number
- KR19990037395A KR19990037395A KR1019980044940A KR19980044940A KR19990037395A KR 19990037395 A KR19990037395 A KR 19990037395A KR 1019980044940 A KR1019980044940 A KR 1019980044940A KR 19980044940 A KR19980044940 A KR 19980044940A KR 19990037395 A KR19990037395 A KR 19990037395A
- Authority
- KR
- South Korea
- Prior art keywords
- word
- program memory
- address
- address bus
- instructions
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 9
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3816—Instruction alignment, e.g. cache line crossing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
- Programmable Controllers (AREA)
Abstract
두 개의 워드 명령이 단일 주기 동안 실행될 수 있도록 함으로써, 성능을 감소시키지 않으면서 메모리 공간을 증가시킬 수 있도록 하는 시스템이 개시된다. 제 1 어드레스 버스가 페치될 명령의 어드레스를 선형화된 프로그램 메모리에 보내기 위하여 선형화된 프로그램 메모리에 결합된다. 페치될 선형화된 프로그램 메모리내의 현재 명령의 어드레스 위치를 저장하기 위하여, 그리고 페치될 현재 명령의 어드레스 위치를 제 1 어드레스 버스에 싣기위하여, 포인터가 제 1 어드레스 버스에 결합된다. 제 2 어드레스 버스가 제공되는데, 이의 한쪽 끝은 프로그램 메모리의 출력에 결합되며 다른 쪽 끝은 제 1 어드레스 버스에 결합된다. 제 2 어드레스 버스는, 두 개의 워드 명령 중 첫 번째 워드의 피연산자의 어드레스를 제 1 어드레스 버스 위에 실은 후, 두 개의 워드 명령 중 두 번째 워드 명령의 피연산자의 어드레스를 제 1 어드레스 버스 위에 싣는 데에 사용된다. 이는 첫 번째 워드와 두 번째 워드의 어드레스가 결합되도록 하여 두 개의 워드 명령의 완전한 어드레스 값이 단일 주기 동안 제공될 수 있도록 한다.
Description
본 발명은 일반적으로 프로세서에 관한 것으로서, 특히 두 개의 워드 명령을 단일 주기에 실행가능하게 함으로써, 성능을 감소시키지 않으면서 어드레스 가능한 메모리 공간을 증가시킬 수 있도록 하는 시스템 및 그 실행방법에 관한 것이다.
현재, 몇몇 프로세서 시스템의 모든 명령은 단일 워드 명령이다. 이는 각각의 특정한 동작을 프로세서에 알리는 데에 단일 워드가 사용됨을 의미한다. 단일 워드 명령이 가지고 있는 문제는, 단일 워드 명령은 단지 제한된 수의 어드레스 비트만을 갖기 때문에 어드레스 가능한 메모리 공간의 양이 제한된다는 것이다.
어드레스 가능한 메모리 공간을 증가시키기 위하여, 몇몇 프로세서 시스템은 프로그램 메모리내에 페이징 설계를 한다. 페이징 설계를 하게 되면, 프로그램 메모리는 다수의 페이지로 분할된다. 데이터 파일 위치내의 비트 또는 비트들은 프로그램 메모리 내의 어떤 페이지가 현재 액세스되고 있는 지를 나타낸다. 이러한 페이징 설계가 가지고 있는 문제는, 다른 페이지(즉, 현재 선택된 페이지가 아닌 다른 페이지)에 있는 데이터를 액세스하기 위해서는 데이터 파일 위치 내의 비트 또는 비트들이 바뀔 필요가 있다는 것이다. 이는 특히, 프로그래머가 필요할 때에 데이터 파일 비트(들)를 적절하게 바꾸지 않는 경우에 마지막 사용자에게 많은 문제를 발생시킨다.
따라서, 프로세서에 의해 사용될 어드레스 가능한 메모리 공간을 증가시키는 시스템의 필요성이 대두되었다. 이 시스템은 프로세서 전체의 성능을 감소시키지 않으면서 프로세서에 의해 사용될 어드레스 가능한 메모리 공간을 증가시켜야 한다. 이 시스템은 페이징 설계를 사용하지 않으면서, 그리고 프로세서 전체의 성능을 감소시키지 않으면서 어드레스 가능한 메모리 공간을 증가시켜야 한다. 이 시스템은 다중 워드 명령이 단일 주기 동안에 실행될 수 있도록 함으로써, 프로세서 전체의 성능을 감소시키지 않으면서 어드레스 가능한 메모리 공간을 증가시켜야 한다.
본 발명의 제 1 실시예에 따르면, 본 발명의 목적은 프로세서에 의해 사용될 어드레스 가능한 메모리 공간을 증가시키는 시스템을 제공하는 것이다.
본 발명의 다른 목적은 프로세서의 전체 성능을 감소시키지 않으면서 프로세서에 의해 사용될 어드레스 가능한 공간을 증가시키는 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 페이징 설계를 사용하지 않으면서, 그리고 프로세서의 전체 성능을 감소시키지 않으면서 어드레스 가능한 메모리 공간을 증가시키는 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 다중 워드 명령이 단일 주기 동안 실행될 수 있도록 함으로써 프로세서의 전체 성능을 감소시키지 않으면서 프로세서에 의해 사용될 어드레스 가능한 메모리 공간을 증가시키는 시스템을 제공하는 것이다.
도 1은 단일 주기 동안 두 개의 명령이 실행될 수 있도록 하는 시스템의 단순화된 기능 블록 다이어그램.
<도면의 주요 부분에 대한 부호의 설명>
10 : 프로세서 시스템 12 : 프로그램 메모리
14 : 제 1 어드레스 버스 16 : 포인터
18 : 프로그램 카운터 20 : 제 2 어드레스 버스
22 : 테이블 포인터
본 발명의 제 1 실시예에 따르면, 두 개의 워드 명령이 단일 주기 동안 실행될 수 있도록 함으로써, 성능을 감소시키지 않으면서 메모리 공간을 증가시킬 수 있도록 하는 시스템이 개시된다. 이 시스템은 프로세서 시스템에 의해 실행될 명령을 저장하는 선형화된 프로그램 메모리를 이용한다. 프로세서 시스템에 의해 실행될 명령의 어드레스를 선형화된 프로그램 메모리에 보내기 위하여 제 1 어드레스 버스가 선형화된 프로그램 메모리에 결합된다. 페치될 선형화된 프로그램 메모리내의 현재 명령의 어드레스 위치를 저장하기 위하여, 그리고 페치될 현재 명령의 어드레스 위치를 제 1 어드레스 버스에 싣기위하여, 포인터가 제 1 어드레스 버스에 결합된다. 제 2 어드레스 버스가 제공되는데, 이의 한쪽 끝은 프로그램 메모리의 출력에 결합되며 다른 쪽 끝은 제 1 어드레스 버스에 결합된다. 제 2 어드레스 버스는, 두 개의 워드 명령 중 첫 번째 워드의 피연산자의 어드레스가 제 1 어드레스 버스 위에 실린 후, 두 개의 워드 명령 중 두 번째 워드의 피연산자의 어드레스를 제 1 어드레스 버스 위에 싣는 데에 사용된다. 이는 두 개의 워드 명령의 완전한 어드레스 값이 단일 주기 동안 선형화된 프로그램 메모리로 보내질 수 있도록 한다.
본 발명의 다른 실시예에 따라, 두 개의 명령이 단일 주기 동안 실행될 수 있도록 함으로써, 프로세서 시스템이 그 성능을 감소시키지 않으면서 메모리 공간을 증가시키는 방법을 개시하며, 이 방법은
프로세서 시스템에 의해 실행될 명령을 저장하는 선형화된 프로그램 메모리를 제공하는 단계와;
프로세서 시스템에 의해 실행될 명령의 어드레스를 선형화된 프로그램 메모리에 보내기 위하여 선형화된 프로그램 메모리에 결합되는 제 1 어드레스 버스를 제공하는 단계와;
페치될 선형화된 프로그램 메모리내의 현재 명령의 어드레스 위치를 저장하기 위하여, 그리고 페치될 선형화된 프로그램 메모리내의 현재 명령의 어드레스 위치를 제 1 어드레스 버스에 싣기위하여 제 1 어드레스 버스에 결합되는 포인터를 제공하는 단계와;
두 개의 워드 명령 중 첫 번째 워드의 피연산자의 어드레스를 제 1 어드레스 버스 위에 실은 후, 두 개의 워드 명령 중 두 번째 워드의 피연산자의 어드레스를 제 1 어드레스 버스 위에 실음으로써, 단일 주기 동안 두 개의 워드 명령의 완전한 어드레스 값을 선형화된 프로그램 메모리에 제공하기 위하여, 한 쪽 끝은 프로그램 메모리의 출력에 결합되고 다른 쪽 끝은 제 1 어드레스 버스에 결합되는 제 2 어드레스 버스를 제공하는 단계를 포함한다.
본 발명의 상술한 목적들 및 다른 목적들, 특징들, 및 장점들은 하기로부터, 특히 첨부 도면과 함께 설명되는 본 발명의 바람직한 실시예의 설명으로부터 명확해질 것이다.
도 1을 설명하면, 프로그램 메모리내의 페이징 설계를 없애고, 또한 프로그램 메모리(12) 내의 어드레스 가능한 어드레스 공간을 증가시키기 위하여, 모든 프로그램 점프(점프는 한 위치로부터 다른 위치로 되는 것이기 때문에, 프로그램 점프는 페이징이 중요한 쟁점이 되는 곳에서 이루어진다)는 단일 워드에서 두 개의 워드 명령으로 증가된다. 두 개의 워드 점프 명령을 제공함으로써, 프로그램 메모리(12)의 크기는 증가하게 된다. 이는 두 개의 워드 명령이 명령의 증가된 크기로 인하여 더 큰 어드레스 공간을 액세스할 수 있다는 사실에 기인한 것이다. 따라서, 두 개의 워드 점프 명령은 확장된 프로그램 메모리(12)의 전체 어드레스 기준이 완전하게 정해질 수 있다. 본 발명의 바람직한 실시예에서, 두 개의 워드 점프 명령의 각 워드는 16 비트 길이를 갖는다. 첫 번째 워드의 8비트는 “연산 코드”를 엔코드하는 데에 사용되고 나머지 8비트는 프로그램 메모리(12) 내의 메모리 위치를 어드레스 하는 데에 사용된다. 두 번째 워드 또는 피연산자는 그것을 피연산자로서 구별하는 데에 단지 4비트 만을 필요로 하며 나머지 12 비트는 어드레스로서 사용될 수 있다.
두 개의 워드 명령이 가지고 있는 문제는 단일 워드 만큼 빠르게 실행될 수 없다는 것이다. 하나의 명령은 다른 명령이 실행되고 있는 동안 페치되어 있기 때문에, 단일 워드 “점프” 명령은 일반적으로 파이프라인을 “활성화시키고(flush out)”실행시키는 데에 두 주기를 필요로 한다. 만일 실행되는 명령이 단일 워드 “점프”명령이라면, 페치된 명령은 더 이상 존재하지 않는다(즉, 실행될 다음 명령이 아니다). 무동작 명령(NOP)이 수행될 필요가 있으며 “점프되는”명령은 페치될 필요가 있다. “점프”에 의해 지정된 명령이 곧 실행될 것이다. 두 개의 워드 “점프”명령에 대하여, 두 개의 워드 명령을 로드하고 파이프라인을 활성화시켜 실행시키는 데에는 세 주기가 필요하다. 이는, 하나의 “점프”명령을 수행하는 데에 적어도 하나의 부가적인 주기가 필요하기 때문에, 프로세서 시스템의 전체 성능을 감소시킨다.
시스템(10)은 두 개의 워드 명령을 단일 주기 동안 로드시킴으로써 프로세서 시스템 전체의 성능을 감소시키지 않으면서 메모리 공간을 증가시킬 수 있도록 설계되었다. 시스템(10)은 프로그램 메모리(12)를 이용한다. 프로그램 메모리(12)는 프로세서 시스템에 의해 실행될 명령을 저장하는 데에 사용된다. 프로그램 메모리(12)는 다수의 페이지로 분할되지 않는다. 대신에, 프로그램 메모리(12)의 전체 어드레스 범위는 선형화된다. 본 발명의 바람직한 실시예에서, 프로그램 메모리(12)는 1 메가워드(여기서 1워드는 16비트와 동등하다)의 선형화된 프로그램 메모리(12)이다.
제 1 어드레스 버스(14)는 선형화된 프로그램 메모리(12)에 결합된다. 제 1 어드레스 버스(14)는 페치될 명령의 어드레스를 선형화된 프로그램 메모리912)에 보내는 데에 사용된다. 포인터(16)는 페치될 선형화된 프로그램 메모리(12)내의 현재 명령의 어드레스 위치를 저장하는 데에 사용된다. 포인터(16)는 페치될 선형화된 프로그램 메모리(12)내의 현재 명령의 어드레스 위치를 저장하는 데에 사용된다. 그런 다음, 포인터(16)는, 페치될 선형화된 프로그램 메모리(12) 내의 명령의 어드레스를 나타내기 위하여, 페치될 현재 명령의 어드레스 위치를 제 1 어드레스 버스(14)에 싣는다. 프로그램 카운터(18)는 일반적으로 페치될 선형화된 프로그램 메모리(12) 내의 현재 명령의 어드레스 위치를 저장하고 있는 포인터(16)를 로드하기 위하여 포인터(16)에 결합된다.
제 2 어드레스 버스(20)의 한쪽 끝은 선형화된 프로그램 메모리(12)의 출력에 결합된다. 선형화된 프로그램 메모리(12)의 출력은 페치되는 명령의 값이다. 제 2 어드레스 버스(20)의 다른 쪽 끝은 제 1 어드레스 버스(14)에 결합된다. 재 2 어드레스 버스는, 두 개의 워드 명령 중 첫 번째 워드의 피연산자의 어드레스가 제 1 어드레스 버스(14) 위에 실려진 후, 두 개의 워드 명령 중 두 번째 워드의 피연산자의 어드레스(첫번째 워드가 수행될 때 페치됨)를 제 1 어드레스 버스(14) 위에 싣는 데에 사용된다. 따라서, 두 번째 워드의 어드레스는 프로그램 카운터(18)내로 로드되고 포인터(16)에 보내질 필요가 없다. 상기 설명한 바와 같이, 두 개의 워드 점프 명령을 위한 일반적인 시스템에서는, 세 주기가 필요하다. 그러나, 시스템(10)은 첫 번째 워드 및 두 번째 워드의 어드레스가 결합될 수 있도록 하여 두 개의 워드 명령의 완전한 어드레스 값을 제공한다. 따라서, “점프”명령의 두 번째 주기 동안, 실질적인 “점프”명령이 페치된다. 따라서, 두 주기 동안 두 개의 워드 “점프”명령이 페치되고 수행된다(따라서, 두 개의 워드 “점프”명령이 단일 주기 동안 실행된다). 결과적으로, 시스템(10)은 어떠한 메모리 페이징 설계를 사용하지 않으면서 프로그램 메모리를 확장시킬 수 있게 한다. 프로그램 메모리의 팽창은 또한, 두 개의 워드 “점프”명령이 단일 워드 “점프”명령과 동일한 수의 주기를 필요로 하기 때문에, 시스템의 성능을 감소시키지 않는다.
시스템(10)은 또한 테이블 포인터(22)를 구비한다. 테이블 포인터(22)는 포인터(16)에 결합된다. 테이블 포인터(22)는 선형화된 프로그램 메모리(22)로(부터) 테이블을 판족 및 기록할 수 있도록 하는 데에 사용된다.
본 발명이 특히 바람직한 실시예에 대해 도시되고 설명되기는 하였지만, 이 분야의 당업자에 있어 형태 및 세부사항에 있어서 상술한 그리고 다른 변형이 본 발명의 원리 및 범위를 벗어나지 않으면서 이루어질 수 있음은 자명하다.
Claims (13)
- 두 개의 워드 명령이 단일 주기에 실행될 수 있도록 함으로써, 성능을 감소시키지 않으면서 메모리 공간을 증가시킬 수 있도록 하는 시스템으로서,상기 프로세서 시스템에 의해 실행될 명령을 저장하는 선형화된 프로그램 메모리와;페치될 상기 명령의 상기 어드레스를 상기 선형화된 프로그램 메모리로 보내는 제 1 어드레스 버스와;페치될 상기 선형화된 프로그램 메모리내의 현재 명령의 어드레스 위치를 저장하기 위하여, 그리고 페치될 상기 선형화된 프로그램 메모리 내의 현재 명령의 상기 어드레스 위치를 상기 제 1 어드레스 버스에 싣기위하여 상기 제 1 어드레스 버스에 결합되는 포인터와;두 개의 워드 명령 중 첫 번째 워드의 피연산자의 어드레스를 상기 제 1 어드레스 버스 위에 실은 후, 상기 두 개의 워드 명령 중 두 번째 워드의 피연산자의 어드레스를 상기 제 1 어드레스 버스 위에 실음으로써, 단일 주기 동안 상기 두 개의 워드 명령의 완전한 어드레스 값을 상기 선형화된 프로그램 메모리에 제공하기 위하여, 한 쪽 끝은 상기 프로그램 메모리의 출력에 결합되고 다른 쪽 끝은 상기 제 1 어드레스 버스에 결합되는 제 2 어드레스 버스를 포함하여 구성되는 것을 특징으로 하는 시스템.
- 제 1 항에 있어서, 페치될 상기 선형화된 프로그램 내의 현재 명령의 상기 어드레스 위치를 저장하고 있는 상기 포인터를 로드하기 위하여 상기 포인터에 결합되는 프로그램 카운터를 더 포함하는 것을 특징으로 하는 시스템.
- 제 1 항에 있어서, 상기 프로그램 메모리로부터 테이블을 판독하고 상기 프로그램 메모리에 테이블을 기록할 수 있도록 상기 포인터에 결합되는 테이블 포인터를 더 포함하는 것을 특징으로 하는 시스템.
- 제 1 항에 있어서, 상기 두 개의 워드 명령 중 첫 번째 워드 및 두 번째 워드는 모두 16 비트 명령인 것을 특징으로 하는 시스템.
- 제 1 항에 있어서, 상기 프로그램 메모리는 1 메가워드(여기서 1워드는 16비트와 동등함)의 프로그램 메모리인 것을 특징으로 하는 시스템.
- 두 개의 워드 명령이 단일 주기에 실행될 수 있도록 함으로써, 성능을 감소시키지 않으면서 메모리 공간을 증가시킬 수 있도록 하는 시스템으로서,상기 프로세서 시스템에 의해 실행될 명령을 저장하는 선형화된 프로그램 메모리와;페치될 상기 명령의 상기 어드레스를 상기 선형화된 프로그램 메모리로 보내는 제 1 어드레스 버스와;페치될 상기 선형화된 프로그램 메모리내의 현재 명령의 어드레스 위치를 저장하기 위하여, 그리고 페치될 상기 선형화된 프로그램 메모리 내의 현재 명령의 상기 어드레스 위치를 상기 제 1 어드레스 버스에 싣기위하여 상기 제 1 어드레스 버스에 결합되는 포인터와;페치될 상기 선형화된 프로그램 내의 현재 명령의 상기 어드레스 위치를 저장하고 있는 상기 포인터를 로드하기 위하여 상기 포인터에 결합되는 프로그램 카운터와;두 개의 워드 명령 중 첫 번째 워드의 피연산자의 어드레스를 상기 제 1 어드레스 버스 위에 실은 후, 상기 두 개의 워드 명령 중 두 번째 워드의 피연산자의 어드레스를 상기 제 1 어드레스 버스 위에 실음으로써, 단일 주기 동안 상기 두 개의 워드 명령의 완전한 어드레스 값을 상기 선형화된 프로그램 메모리에 제공하기 위하여, 한 쪽 끝은 상기 프로그램 메모리의 출력에 결합되고 다른 쪽 끝은 상기 제 1 어드레스 버스에 결합되는 제 2 어드레스 버스; 및상기 프로그램 메모리로부터 테이블을 판독하고 상기 프로그램 메모리에 테이블을 기록할 수 있도록 상기 포인터에 결합되는 테이블 포인터를 포함하여 구성되는 것을 특징으로 하는 시스템.
- 제 6 항에 있어서, 상기 두 개의 워드 명령 중 첫 번째 워드 및 두 번째 워드는 모두 16 비트 명령인 것을 특징으로 하는 시스템.
- 제 6 항에 있어서, 상기 프로그램 메모리는 1 메가워드(여기서 1워드는 16비트와 동등함)의 프로그램 메모리인 것을 특징으로 하는 시스템.
- 두 개의 명령이 단일 주기에 실행될 수 있도록 함으로써, 프로세서 시스템이 성능을 감소시키지 않으면서 메모리 공간을 증가시키는 방법으로서,상기 프로세서 시스템에 의해 실행될 명령을 저장하는 선형화된 프로그램 메모리를 제공하는 단계와;페치될 상기 명령의 상기 어드레스를 상기 선형화된 프로그램 메모리에 보내기 위하여 상기 선형화된 프로그램 메모리에 결합되는 제 1 어드레스 버스를 제공하는 단계와;페치될 상기 선형화된 프로그램 메모리내의 현재 명령의 어드레스 위치를 저장하기 위하여, 그리고 페치될 상기 선형화된 프로그램 메모리 내의 현재 명령의 상기 어드레스 위치를 상기 제 1 어드레스 버스 위에 싣기 위하여 상기 제 1 어드레스 버스에 결합되는 포인터를 제공하는 단계와;상기 두 개의 워드 명령 중 첫 번째 워드의 피연산자의 어드레스를 상기 제 1 어드레스 버스 위에 실은 후, 상기 두 개의 워드 명령 중 두 번째 워드의 피연산자의 어드레스를 상기 제 1 어드레스 버스 위에 실음으로써, 단일 주기 동안 상기 두 개의 워드 명령의 완전한 어드레스 값을 상기 선형화된 프로그램 메모리에 제공하기 위하여, 한 쪽 끝은 상기 프로그램 메모리의 출력에 결합되고 다른 쪽 끝은 상기 제 1 어드레스 버스에 결합되는 제 2 어드레스 버스를 제공하는 단계를 포함하여 이루어지는 것을 특징으로 하는 방법.
- 제 9 항에 있어서, 페치될 상기 선형화된 프로그램 메모리내의 현재 명령의 상기 어드레스 위치를 저장하고 있는 상기 포인터를 로드하기 위하여 상기 포인터에 결합되는 프로그램 카운터를 제공하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제 9 항에 있어서, 상기 프로그램 메모리로부터 테이블을 판독하고 상기 프로그램 메모리에 테이블을 기록할 수 있도록 상기 포인터에 결합되는 테이블 포인터를 제공하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제 9 항에 있어서, 상기 두 개의 워드 명령 중 상기 첫 번째 워드 및 상기 두 번째 워드는 모두 16 비트 명령인 것을 특징으로 하는 방법.
- 제 9 항에 있어서, 1 메가워드(여기서 1워드는 16비트와 동등함)의 프로그램 메모리를 제공하는 단계를 더 포함하는 것을 특징으로 하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US8/958,940 | 1997-10-28 | ||
US08/958,940 US6243798B1 (en) | 1997-10-28 | 1997-10-28 | Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction |
Publications (1)
Publication Number | Publication Date |
---|---|
KR19990037395A true KR19990037395A (ko) | 1999-05-25 |
Family
ID=25501471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980044940A KR19990037395A (ko) | 1997-10-28 | 1998-10-23 | 두개의 워드 명령을 단일 주기 동안 실행하는 시스템 및 방법 |
Country Status (8)
Country | Link |
---|---|
US (2) | US6243798B1 (ko) |
EP (2) | EP0915416B1 (ko) |
JP (1) | JPH11224192A (ko) |
KR (1) | KR19990037395A (ko) |
AT (1) | ATE204393T1 (ko) |
DE (1) | DE69801355T2 (ko) |
ES (1) | ES2165651T3 (ko) |
TW (1) | TW390990B (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1706817B1 (en) | 2003-10-23 | 2015-04-15 | Microchip Technology Inc. | Microcontroller with a virtual memory bank |
US9286272B2 (en) * | 2005-12-22 | 2016-03-15 | Xerox Corporation | Method for transformation of an extensible markup language vocabulary to a generic document structure format |
US20070226724A1 (en) * | 2006-03-24 | 2007-09-27 | Mediatek Inc. | Method and apparatus for firmware execution and provision |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3969723A (en) * | 1974-07-03 | 1976-07-13 | General Electric Company | On-line modification of computer programs |
US3976976A (en) | 1975-04-04 | 1976-08-24 | The United States Of America As Represented By The Secretary Of The Navy | Method and means to access and extended memory unit |
US4240139A (en) | 1977-09-22 | 1980-12-16 | Tokyo Shibaura Denki Kabushiki Kaisha | Address generating system |
US4363091A (en) | 1978-01-31 | 1982-12-07 | Intel Corporation | Extended address, single and multiple bit microprocessor |
US4286321A (en) | 1979-06-18 | 1981-08-25 | International Business Machines Corporation | Common bus communication system in which the width of the address field is greater than the number of lines on the bus |
US4479178A (en) | 1981-07-02 | 1984-10-23 | Texas Instruments Incorporated | Quadruply time-multiplex information bus |
JP2685245B2 (ja) | 1988-10-05 | 1997-12-03 | 株式会社東芝 | プログラマブルコントローラ |
US5203002A (en) * | 1989-12-27 | 1993-04-13 | Wetzel Glen F | System with a multiport memory and N processing units for concurrently/individually executing 2N-multi-instruction-words at first/second transitions of a single clock cycle |
DE69111778T2 (de) * | 1990-12-21 | 1996-05-02 | Sun Microsystems Inc | Verfahren und Gerät zur Erweiterung einer Rechnerarchitektur von zweiunddreissig auf vierundsechzig Bits. |
US5717908A (en) * | 1993-02-25 | 1998-02-10 | Intel Corporation | Pattern recognition system using a four address arithmetic logic unit |
JP3345787B2 (ja) | 1993-04-13 | 2002-11-18 | 三菱電機株式会社 | データ処理装置 |
JPH07239780A (ja) * | 1994-01-06 | 1995-09-12 | Motohiro Kurisu | 1クロック可変長命令実行処理型命令読み込み電子計 算機 |
WO1995028677A1 (en) | 1994-04-13 | 1995-10-26 | Ericsson Inc. | Efficient addressing of large memories |
US5566308A (en) | 1994-05-25 | 1996-10-15 | National Semiconductor Corporation | Processor core which provides a linear extension of an addressable memory space |
TW267222B (en) | 1994-10-05 | 1996-01-01 | Ibm | Improved method and system of addressing |
US5787025A (en) | 1996-02-28 | 1998-07-28 | Atmel Corporation | Method and system for performing arithmetic operations with single or double precision |
US5809327A (en) * | 1997-03-27 | 1998-09-15 | Atmel Corporation | Eight-bit microcontroller having a risc architecture |
US5835746A (en) * | 1997-04-21 | 1998-11-10 | Motorola, Inc. | Method and apparatus for fetching and issuing dual-word or multiple instructions in a data processing system |
-
1997
- 1997-10-28 US US08/958,940 patent/US6243798B1/en not_active Expired - Lifetime
-
1998
- 1998-10-14 EP EP98119390A patent/EP0915416B1/en not_active Expired - Lifetime
- 1998-10-14 DE DE69801355T patent/DE69801355T2/de not_active Expired - Lifetime
- 1998-10-14 EP EP01100417A patent/EP1139214A1/en not_active Ceased
- 1998-10-14 AT AT98119390T patent/ATE204393T1/de not_active IP Right Cessation
- 1998-10-14 ES ES98119390T patent/ES2165651T3/es not_active Expired - Lifetime
- 1998-10-23 KR KR1019980044940A patent/KR19990037395A/ko not_active Application Discontinuation
- 1998-10-28 JP JP10307560A patent/JPH11224192A/ja not_active Withdrawn
- 1998-11-27 TW TW087117815A patent/TW390990B/zh not_active IP Right Cessation
-
2001
- 2001-01-08 US US09/756,304 patent/US6321319B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP1139214A1 (en) | 2001-10-04 |
US6243798B1 (en) | 2001-06-05 |
EP0915416A2 (en) | 1999-05-12 |
US6321319B2 (en) | 2001-11-20 |
TW390990B (en) | 2000-05-21 |
US20010001869A1 (en) | 2001-05-24 |
JPH11224192A (ja) | 1999-08-17 |
DE69801355T2 (de) | 2002-06-13 |
EP0915416A3 (en) | 1999-06-09 |
ES2165651T3 (es) | 2002-03-16 |
DE69801355D1 (de) | 2001-09-20 |
EP0915416B1 (en) | 2001-08-16 |
ATE204393T1 (de) | 2001-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6021265A (en) | Interoperability with multiple instruction sets | |
US5870576A (en) | Method and apparatus for storing and expanding variable-length program instructions upon detection of a miss condition within an instruction cache containing pointers to compressed instructions for wide instruction word processor architectures | |
US5860138A (en) | Processor with compiler-allocated, variable length intermediate storage | |
JPH01201729A (ja) | デコード方法 | |
WO2000033184A1 (en) | Shared instruction cache for multiple processors | |
JPH11161547A (ja) | データ処理装置用記憶装置、および記憶場所にアクセスする方法 | |
US7480783B2 (en) | Systems for loading unaligned words and methods of operating the same | |
US6292845B1 (en) | Processing unit having independent execution units for parallel execution of instructions of different category with instructions having specific bits indicating instruction size and category respectively | |
US4739471A (en) | Method and means for moving bytes in a reduced instruction set computer | |
US6029241A (en) | Processor architecture scheme having multiple bank address override sources for supplying address values and method therefor | |
US6260191B1 (en) | User controlled relaxation of optimization constraints related to volatile memory references | |
US20060149940A1 (en) | Implementation to save and restore processor registers on a context switch | |
KR19990036893A (ko) | 다중 어드레싱 모드를 실행하는 프로세서 구조 및 그 설계방법 | |
KR19990037573A (ko) | 사용가능한 연산코드를 최대화하고 다양한 어드레싱 모드를 실행하는 프로세서 구조 및 명령 세트 | |
KR19990037571A (ko) | 단일 주기 내에 간접 어드레싱 모드 어드레스를 출력하는 데이터 포인터 및 그 제공방법 | |
EP0206653A2 (en) | Method and means for loading and storing data in a reduced instruction set computer | |
US5404471A (en) | Method and apparatus for switching address generation modes in CPU having plural address generation modes | |
EP0870237B1 (en) | Processing system and method for reading and restoring information in a ram configuration | |
KR19990037395A (ko) | 두개의 워드 명령을 단일 주기 동안 실행하는 시스템 및 방법 | |
US5450587A (en) | Expanded memory addressing scheme | |
JP2000207203A (ja) | マイクロコントロ―ラ | |
WO1997036234A1 (en) | Cache multi-block touch mechanism for object oriented computer system | |
EP0101718B1 (en) | Computer with automatic mapping of memory contents into machine registers | |
US5649229A (en) | Pipeline data processor with arithmetic/logic unit capable of performing different kinds of calculations in a pipeline stage | |
US5933856A (en) | System and method for processing of memory data and communication system comprising such system |
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 |