KR840000386B1 - Addressing system for and methods of addressing memories in computer systems - Google Patents

Addressing system for and methods of addressing memories in computer systems Download PDF

Info

Publication number
KR840000386B1
KR840000386B1 KR1019800000458A KR800000458A KR840000386B1 KR 840000386 B1 KR840000386 B1 KR 840000386B1 KR 1019800000458 A KR1019800000458 A KR 1019800000458A KR 800000458 A KR800000458 A KR 800000458A KR 840000386 B1 KR840000386 B1 KR 840000386B1
Authority
KR
South Korea
Prior art keywords
address
addressing
memories
memory
microprocessors
Prior art date
Application number
KR1019800000458A
Other languages
Korean (ko)
Other versions
KR830002284A (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 KR1019800000458A priority Critical patent/KR840000386B1/en
Publication of KR830002284A publication Critical patent/KR830002284A/en
Application granted granted Critical
Publication of KR840000386B1 publication Critical patent/KR840000386B1/en

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

This addressing system for a computer system has a plurality of processing units operatively connected to corresponding address buses, and a plurality of memories that are connectable to any of the address buses, and can receive a series of addresses. These memories have a plurality of address modification registers, one for each of the plurality of processing units.

Description

어드레스 지정시스템Addressing system

제1도는 종래 기술의 컴퓨터 시스템을 예시한 블록 다이어그램.1 is a block diagram illustrating a computer system of the prior art.

제2도는 메모리 어드레스 공간을 예시한 블록 다이어그램.2 is a block diagram illustrating a memory address space.

제3도는 본 발명의 시스템을 실시하는 컴퓨터 시스템의 일예의 주요부를 예시한 블록 다이어그램.3 is a block diagram illustrating the principal parts of an example of a computer system implementing the system of the present invention.

본 발명은 복수개의 프로세서가 독립적인 어드레스 버스를 거쳐서 복수개의 메모리를 공용(共用)할 수 있는 컴퓨터 시스템에 사용하기 적합한 어드레스 지정시스템에 관한 것이다.The present invention relates to an addressing system suitable for use in a computer system in which a plurality of processors can share a plurality of memories via independent address buses.

최근 대규모 직접회로의 현저한 진보에 따라 고성능 프로세서를 비교적 값싸게 입수할 수 있게 되어 하나의 장치에 복수개의 프로세서를 사용하여 장치의 성능을 전체적으로 향상 시킬 수 있는 시스템이 실용화 되고 있다. 이와같은 시스템에 있어서는 메모리의 유효한 이용과 시스템의 범용성(汎用性)이 요망되기 때문에 예를들면 제1도에 예시한 바와같은 구성을 갖는 컴퓨터 시스템이 종래에 제안되었었다.Recently, with the significant advances in large-scale integrated circuits, high-performance processors can be obtained relatively inexpensively, and a system that can improve the overall performance of a device by using a plurality of processors in one device has been put into practical use. In such a system, the effective use of the memory and the versatility of the system are desired. For example, a computer system having a configuration as illustrated in FIG. 1 has been proposed in the past.

이는 복수개의 마이크로 프로세서 (CPUI~CPU3)를 갖춘 컴퓨터시스템에있어서, 메모리(MEM1~MEM4)를 각각 멀티프렉서(MUX1~MUX4)를 거쳐서 상기 마이크로 프로세서(CPU1~CPU3)의 어드레스 버스(BUS1~BUS)의 임의의 버스와 접속 가능하도록 구성한 것으로, 멀티프렉서(MUX1~MUX4)의 설정에 따라 각 마이크로 프로세서는 상기 메모리(MEM1~MEM4)들 중 임의의 메모리를 사용할 수가 있도록 한 것이다.예를들면 상기 메모리(MEM1~MEM4)들이 각각16K워어드의 용량을 가지고 있다고 할때 메모리 어드레스의 전체 공간은 제2도에 예시한 바와같이 전체로서 16K워어드의 메모리 용량을 값지만, 예를들면 멀티 프렉서(MUX1)(MUX2)를 마이크로 프로세서(CPU1)쪽에 설정하고, 멀티프렉서(MUX3) 및 멀티프렉서(MUX4)를 각각 마이크로 프로세서(CPU2) 및 마이크로 프로세서(CPU3)쪽에 설정하면 마이크로 프로세서(CPU1)는 메모리((MEM1~MEM4)에 일련으로 할당된 어드레스

Figure kpo00001
0000~
Figure kpo00002
7FFF의 어드레스 영역을 사용할 수가 있으며, 또 마이크로 프로세서(CPU2)(CPU3)는 각각 어드레스
Figure kpo00003
8000~
Figure kpo00004
CFFF, 어드레스
Figure kpo00005
COOO~FFFF의 어드레스 영역을 사용할 수 있다. 상기 멀티 프렉서(MEM1~MEM4)의 설정은 마이크로 프로세서(CPU1~CPU3)가 필요로 하는 메모리 용량에 응하여 자유로이 변경할 수 있으므로 시스템의 범용성을 높일 수 있다.In a computer system having a plurality of microprocessors CPUI to CPU3, the memory buses MEM1 to MEM4 pass through the multiplexers MUX1 to MUX4, respectively, and the address buses BUS1 to BUS of the microprocessors CPU1 to CPU3. It is configured to be able to connect to an arbitrary bus, and according to the settings of the multiplexers (MUX1 to MUX4), each microprocessor can use any of the memories (MEM1 to MEM4). Assuming that the memories MEM1 to MEM4 each have a capacity of 16K word, the total space of the memory address is the total memory capacity of the 16K word as shown in FIG. 2, but for example, If you set the lexers (MUX1) (MUX2) to the microprocessor (CPU1) side and the multiplexer (MUX3) and the multiplexer (MUX4) to the microprocessor (CPU2) and microprocessor (CPU3) side, respectively, Standing (CPU1) is an address assigned to the set of memory ((MEM1 ~ MEM4)
Figure kpo00001
0000 ~
Figure kpo00002
The address area of 7FFF can be used, and the microprocessors CPU2 and CPU3 each address.
Figure kpo00003
8000 ~
Figure kpo00004
CFFF, address
Figure kpo00005
COOO ~ The address area of FFFF can be used. Since the settings of the multiplexers MEM1 to MEM4 can be freely changed according to the memory capacity required by the microprocessors CPU1 to CPU3, the versatility of the system can be improved.

그런데, 제2도의 메모리 맵(memory map)에서도 명백한 바와같이 메로리(MEM1~MEM4)를 마이크로 프로세서(CPUI~CPU3)로 분할 사용할 경우 하나의 마이크로 프로세서(도시한 예에서는 마이크로 프로세서 CPU1)를 제외한 다른 마이크로 프로세서는 그 접근하는 메모리의 선두 어드레스가

Figure kpo00007
0000에서 당연히 시작하지 않고, 또 그 선두 어드레스도 일정해 지지 않는다. 이로 인하여, 마이크로 프로세서에 있어서 고정시켜 두고 싶은 어드레스, 예를들면 전원투입 직후의 스타트 어드레스 혹은 서브루우틴용 스택(stack)의 선두 어드레스 등의 어드레스가 일정치 않고, 또
Figure kpo00008
0000 어드레스에서
Figure kpo00009
OOFF 어드레스까지의 어드레스 영역에 있는 데이터에 대하여 유효해지는 어드레스 지정방법, 예를들면 직접 어드레스 지정을 체용할 수 없다 따라서, 마이크로 프로세서(CPUI~CPU3)에의 메모리 배당분을 변경할 때마다 하드웨어의 수정이 필요한데 실질적으로 그 변경이 곤란할 뿐만 아니라 상기 어드레스 지정방법을 채용할 수 없으므로 프로그램의 스텝수가 증가하는 결점이 있었다.However, as apparent in the memory map of FIG. 2, when the memory MEM1 to MEM4 is divided into microprocessors CPUI to CPU3, other microprocessors except one microprocessor (microprocessor CPU1 in the illustrated example) are used. The processor has the first address of the memory
Figure kpo00007
Of course, it does not start at 0000, and its head address is not fixed. For this reason, the address to be fixed in the microprocessor, for example, the start address immediately after power-on or the head address of the subroutine stack is not fixed.
Figure kpo00008
At address 0000
Figure kpo00009
Addressing methods valid for data in the address area up to the OOFF address, for example, direct addressing cannot be used. Therefore, whenever the memory allocation to the microprocessors (CPUI to CPU3) is changed, a hardware modification is necessary. Substantially, the change is difficult, and the above addressing method cannot be employed, which causes a drawback in that the number of steps in the program increases.

본 발명은 이와같은 종래의 결점을 개선한 것으로, 본 발명의 목적은 후술하는 간단한 구성에 간단한 구성에 의해 모든 마이크로 프로세서에서 보아 그 접근하는 메모리의 선두 어드레스가 항상

Figure kpo00010
0000 어드레스가 되도록 하며, 시스템의 변경을 용이하게 하고 또한 프로그램의 스텝수를 감소시키는데 있다.The present invention improves such a conventional drawback, and the object of the present invention is to see a simple configuration which will be described later, and a simple configuration, so that the head address of the accessed memory is always seen by all microprocessors.
Figure kpo00010
The 0000 address is used to facilitate the system change and to reduce the number of steps in the program.

이하 첨부 도면에 의거 본 발명을 상세히 설명한다.BEST MODE Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제3도는 본 발명을 실시하는 컴퓨터 시스템의 한 예를 예시한 요부의 블록 다이어그램으로, 제1도와 동일부분에는 동일한 예시부호를 병기하였다. 상기 제3도에서 REG1~RDG3은 어드레스 수식 레지스터, AD1~AD3은 가산기이다. 본 실시예는 도면에 예시한 바와같이, 마이크로 프로세서(CPU1~CPU3)의 각각에 어드레스 수식 레지스터(REG1~REG3)와 가산기(AD1~AD3)를 설치하고, 이 가산기(AD1~AD3)에서 마이크로 프로세서(CPU1~CPU3)의 어드레스 출력과 어드레스 수식 레지스터(REG1~REG3)의 내용과를 가산하고, 이 가산결과를 어드레스 버스(BUS1~BUS3)에 출력하도록 한 것이다.3 is a block diagram of main parts illustrating an example of a computer system for implementing the present invention, in which like reference numerals are used for like parts of FIG. In FIG. 3, REG1 to RDG3 are address formula registers, and AD1 to AD3 are adders. In this embodiment, as shown in the figure, the address formula registers REG1 to REG3 and adders AD1 to AD3 are provided in each of the microprocessors CPU1 to CPU3, and the adders AD1 to AD3 are used for the microprocessor. The address outputs of the CPU1 to CPU3 and the contents of the address formula registers REG1 to REG3 are added, and the addition result is output to the address buses BUS1 to BUS3.

예를 들면 마이크로 프로세서에의 메모리 배당분을 제2도에 있어 설명한 종래예와 같이 크로프로 세서에(CPU1) 대해서는

Figure kpo00011
0000 어드레스에서
Figure kpo00012
7FFF 어드레스까지의 어드레스 영역을 할당하고, 마이트로 프로세서(CPU2, CPU3)에 대해서는
Figure kpo00013
8000~BFFF,
Figure kpo00014
COOO~
Figure kpo00015
FFF, 어드레스의 각 어드레스 영역을 할당하는 경우에는 어드레스 수식 레지스터(REG1~REG3)의 내용을 각각
Figure kpo00016
0000,
Figure kpo00017
8000,
Figure kpo00018
COOO으로 설정하므로서, 각 마이크로 프로세서에 있어서 그 접근하는 메모리의 선두 어드레스가 항상
Figure kpo00019
0000로 보이게 한것이다. 멀티플렉서(MEX1~MEX4)의 변경에 의하여 상기 메모리 배당분이 변경된 경우에 있어서도 그 변경에 대응하는 어드레스 수식 레지스터(REG1~REG3)의 내용을 적당히 변경하므로 어떠한 경우에 있어서도 항상 각 마이크로 프로세서에 있어서 선두 어드레스를 $0000로 보이게 하는 것이다. 따라서, 예를들면 전원 투입 직후 스타트 어드레스나 또는 서부루우틴용 스택의 선두 어드레스 등의 어드레스가 고정화되며, 하드웨어 및 소프트웨어를 변경함이 없이 용이하게 메로리 배당분의 변경, 즉 시스템의 변경을 행할 수 있다. 또 각 마이크로 프로세서에 있어서 메모리의 선두 어드레스 항상 $ 0000 어드레스에서 시작되므로, 예를들면 직접 어드레스 지정을 채용하는 것이 가능해지며, 프로그램의 스텝수가 감소되어 처리동작의 고속화가 가능해 진다.For example, a memory processor (CPU1) can be allocated to the memory allocation to the microprocessor as in the conventional example described in FIG.
Figure kpo00011
At address 0000
Figure kpo00012
Allocate an address area up to the 7FFF address, and for the microprocessors (CPU2, CPU3)
Figure kpo00013
8000-BFFF,
Figure kpo00014
COOO ~
Figure kpo00015
When assigning each address area of FFF and address, the contents of the address formula registers REG1 to REG3 are respectively set.
Figure kpo00016
0000,
Figure kpo00017
8000,
Figure kpo00018
By setting to COOO, the head address of the memory that is accessed in each microprocessor is always
Figure kpo00019
To make it look like 0000 Even when the memory allocation is changed due to the change of the multiplexers MEX1 to MEX4, the contents of the address formula registers REG1 to REG3 corresponding to the change are appropriately changed. To look like $ 0000. Thus, for example, a start address or an address such as the start address of the western routine stack is fixed immediately after the power is turned on, and the memory allocation can be easily changed, that is, the system can be changed easily without changing hardware and software. . In addition, in each microprocessor, since the head address of the memory always starts at an address of $ 0000, direct addressing can be adopted, for example, and the number of steps in the program can be reduced, thereby speeding up the processing operation.

상술한 바와같이 상기 실시예에서는 마이크로 프로세서를 3개 사용하는 것으로 했으나 이는 설명의 편의상 3개로 한것으로, 2개 이상의 임의의 수로 하는 것도 가능하며, 또 메모리의 갯수도 4개로 한정한 것은 아니다.As described above, in the above embodiment, three microprocessors are used. However, three microprocessors are used for convenience of description, and two or more arbitrary numbers are possible, and the number of memories is not limited to four.

상술한 바와같이 본 발명은 어드레스 버스가 각각 독립된 복수개의 프로세서와, 상기 어드레스 버스의 어느것과도 접속 가능하며 또한 일련의 어드레스가 있는 복수개의 메모리를 값춘 컴퓨터 시스템에 있어서, 상기한 복수개의 프로세서의 제각기에 어드레스 수식 레지스터와 가산기를 설치하고, 그 가산기에서 상기 프로 세서의 어드레스 출력과 상기 어드레스 수식 레지스터의 내용을 가산하고, 그 가산한 결과를 상기 어드레스 버스에 출력하도록 한 것으로, 상기 어드레스 수식 레지스터의 내용을 적당히 설정해 둠으로서 각 프로세서의 접근한 메모리의 선두 어드레스가 항상

Figure kpo00020
0000으로 되므로 메모리 배당분의 변경을 하드웨어 및 소프트 웨어의 변경 없이 행하는 것이 가능할 뿐만 아니라 시스템의 변경이 용이해진다. 또한 직접 어드레스 지정을 채용할 수 있으므로 프로그램의 스텝수를 감소시켜 치리속도를 향상시키는 효과를 기대할 수 있다.As described above, the present invention provides a computer system in which a plurality of processors each having an independent address bus and a plurality of memories having a series of addresses and which can be connected to any of the address buses are provided. An address modification register and an adder are provided in the adder, and the adder adds the address output of the processor and the contents of the address modification register, and outputs the result of the addition to the address bus. Is set appropriately so that the first address of each processor accessed memory is always
Figure kpo00020
Since it is 0000, the memory allocation can be changed without changing hardware and software, and the system can be easily changed. In addition, since direct addressing can be adopted, the effect of reducing the number of steps in the program and improving the speed of processing can be expected.

Claims (1)

어드레스 버스가 각각 독립한 복수개의 프로세서와 상기 어드레스 버스의 어느것과도 접속 가능하며 또한 일련의 어드레스가 있는 복수개의 메모리를 갖는 컴퓨터 시스템에 있어서, 상기 복수개의 프로세서 제각기에 설치된 어드레스 수식 레지스터와, 대응 로프세서의 어드레스 출력과 대응 어드레스 수식 레지스터의 내용을 가산하여 이 가산한 결과를 상기 어드레스에 출력하는 상기 복수개의 프로세서 제각기에 설치된 가산기로 구성됨을 특징으로 하는 어드레스 지령시스템.A computer system having a plurality of processors each having an independent address bus and a plurality of memories each having a series of addresses, the address modification registers provided in each of the plurality of processors, and a corresponding rope. And an adder installed in each of said plurality of processors which adds the address output of the parser and the contents of the corresponding address formula register and outputs the result of the addition to the address.
KR1019800000458A 1980-02-05 1980-02-05 Addressing system for and methods of addressing memories in computer systems KR840000386B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019800000458A KR840000386B1 (en) 1980-02-05 1980-02-05 Addressing system for and methods of addressing memories in computer systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019800000458A KR840000386B1 (en) 1980-02-05 1980-02-05 Addressing system for and methods of addressing memories in computer systems

Publications (2)

Publication Number Publication Date
KR830002284A KR830002284A (en) 1983-05-23
KR840000386B1 true KR840000386B1 (en) 1984-03-27

Family

ID=19215445

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019800000458A KR840000386B1 (en) 1980-02-05 1980-02-05 Addressing system for and methods of addressing memories in computer systems

Country Status (1)

Country Link
KR (1) KR840000386B1 (en)

Also Published As

Publication number Publication date
KR830002284A (en) 1983-05-23

Similar Documents

Publication Publication Date Title
CA2009550A1 (en) Data processing system with total system resource management for itself and for an associated alien processor
SE8405456L (en) VERY FAST MEMORY AND MEMORY MANAGEMENT SYSTEM
CA2009529A1 (en) Servicing interrupt requests in a data processing system without using the services of an operating system
CA2009765A1 (en) Fault tolerant data processing system
CA2009549A1 (en) Providing additional system characteristics to a data processing system
BR9002304A (en) UNIQUE PHYSICAL MAIN STORAGE SHARED BY TWO OR MORE PROCESSORS THAT OPERATE IN THEIR OPERATIONAL SYSTEMS AND THE ACCESS METHOD
US4413315A (en) Addressing system
DE69032608T2 (en) Transfer between processors
JPS61211758A (en) Multiprocessor system
KR840000386B1 (en) Addressing system for and methods of addressing memories in computer systems
US20030229721A1 (en) Address virtualization of a multi-partitionable machine
US7093257B2 (en) Allocation of potentially needed resources prior to complete transaction receipt
CA2081913A1 (en) Method and apparatus for managing page zero memory accesses in a multi-processor system
US5247631A (en) Programmable control of EMS page register addresses
JPH04288643A (en) Memory mapping system for multi-processor system
KR100211954B1 (en) A dynamic management method of kernel virtual address of misix
JPH0528038A (en) Cache memory control system
EP0334624A3 (en) Microcoded computer system
JPH03164962A (en) Memory control system
JPS57166657A (en) Memory circuit