KR100382939B1 - Communication control method and apparatus for slave cpu - Google Patents

Communication control method and apparatus for slave cpu Download PDF

Info

Publication number
KR100382939B1
KR100382939B1 KR10-2001-0043433A KR20010043433A KR100382939B1 KR 100382939 B1 KR100382939 B1 KR 100382939B1 KR 20010043433 A KR20010043433 A KR 20010043433A KR 100382939 B1 KR100382939 B1 KR 100382939B1
Authority
KR
South Korea
Prior art keywords
cpi
slave
dual port
port memory
host
Prior art date
Application number
KR10-2001-0043433A
Other languages
Korean (ko)
Other versions
KR20030008608A (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 KR10-2001-0043433A priority Critical patent/KR100382939B1/en
Publication of KR20030008608A publication Critical patent/KR20030008608A/en
Application granted granted Critical
Publication of KR100382939B1 publication Critical patent/KR100382939B1/en

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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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
    • G06F15/163Interprocessor communication

Abstract

본 발명은 호스트 씨피유와 슬레이브 씨피유가 함께 동작하는 시스템에서 슬레이브 씨피유가 듀얼포트 메모리를 이용하여 부팅 및 원하는 작업을 수행할 수 있도록 하는 기술에 관한 것이다. 이러한 본 발명은 슬레이브 씨피유가 듀얼포트 메모리를 이용하여 부팅할 수 있도록, 호스트 씨피유가 그 슬레이브 씨피유를 리세트시킨 후 듀얼포트 메모리를 통해 그 슬레이브 씨피유의 부팅모드를 설정함과 아울러 부팅에 필요한 코드를 저장하는 제1과정과; 상기 호스트 씨피유가 상기 슬레이브 씨피유의 리세트 상태를 해제시키고, 그 슬레이브 씨피유가 상기 듀얼포트 메모리의 소정 영역을 부팅 시작 주소로 설정하여 부팅작업을 시작한 후 애플리케이션을 기동시켜 요구된 작업을 수행하는 제2과정과; 상기 요구된 작업을 계속 수행하기 위해 호스트 씨피유로부터 추가로 전송받을 프로그램 코드나 데이터가 있는 경우 상기 듀얼포트 메모리를 통해 그 프로그램 코드나 데이터를 전달받아 작업을 수행하는 제3과정에 의해 달성된다.The present invention relates to a technique for enabling a slave CPI to boot and perform a desired operation using a dual port memory in a system in which the host CPI and the slave CPI operate together. In the present invention, the host CPI resets the slave CPI and sets the boot mode of the slave CPI through the dual port memory so that the slave CPI can boot using the dual port memory. A first process of storing; A second step in which the host CPI releases the reset state of the slave CPI, the slave CUI sets a predetermined region of the dual port memory as a boot start address, starts a booting operation, and then starts an application to perform a requested operation; Process; If there is a program code or data to be additionally transmitted from the host CPI in order to continue to perform the required task is achieved by a third process of receiving the program code or data through the dual port memory to perform the task.

Description

슬레이브 씨피유의 통신 제어 방법 및 장치{COMMUNICATION CONTROL METHOD AND APPARATUS FOR SLAVE CPU}COMMUNICATION CONTROL METHOD AND APPARATUS FOR SLAVE CPU}

본 발명은 호스트 씨피유(Host CPU)와 슬레이브 씨피유(Slave CPU)가 함께 동작하는 시스템에서 슬레이브 씨피유가 듀얼포트 메모리를 이용하여 부팅 및 원하는 작업을 수행할 수 있도록 하는 기술에 관한 것으로, 특히 최소 용량의 메모리 사용이 권장되는 환경에서 슬레이브 씨피유가 별도의 메모리를 이용하지 않고 듀얼포트 메모리만을 이용하여 부팅은 물론 원하는 작업을 수행할 수 있도록 한 슬레이브 씨피유의 통신 제어 방법 및 장치에 관한 것이다.The present invention relates to a technique for enabling a slave CPI to boot and perform a desired operation using a dual port memory in a system in which a host CPU and a slave CPU operate together. The present invention relates to a slave CPI communication control method and device which enables a slave CPI to perform a desired operation as well as booting using only a dual port memory without using a separate memory.

호스트 씨피유와 슬레이브 씨피유를 이용한 병렬처리 시스템은 여러 분야에서 널리 사용되고 있는 구조이다. 이와 같은 구조에서 두 씨피유가 데이터를 주고 받는 종래의 방법에는 여러 가지가 있는데, 대표적인 예로써 시리얼 통신을 이용하는 방법, 공유 메모리(Shared Memory)를 이용하는 방법, 듀얼포트 메모리(예: 듀얼포트 램)를 이용하는 방법이 있다.Parallel processing system using host CPI and Slave CPI is widely used in many fields. In this structure, there are a number of conventional methods in which two CPIs exchange data. Examples include serial communication, shared memory, and dual port memory (e.g., dual port RAM). There is a way to use it.

도 1은 종래 기술에 의한 시리얼 통신 시스템을 나타낸 것으로, 호스트 씨피유(11)와 슬레이브 씨피유(12)가 각기 플래시 메모리 및 에스램(11A,11B), (12A,12B)을 구비하고 각각의 시리얼 라인을 통해 데이터와 콘트롤신호를 통신하도록 되어 있다.1 shows a serial communication system according to the prior art, in which a host CPI 11 and a slave CPI 12 each have a flash memory and SRAMs 11A, 11B, and 12A, 12B, and each serial line. It communicates data and control signals through

이와 같은 통신방법의 경우, 호스트 씨피유(11)와 슬레이브 씨피유(12)간에 시리얼 라인을 통해 데이터가 전송되기 때문에 패러렐(Parallel) 전송방법에 비하여 전송라인 수를 월등히 줄일 수 있는 장점이 있지만, 단위 시간당 전송할 수 있는 정보의 양이 적다는 단점이 있다. 또한, 시리얼 통신은 통신 규약을 바탕으로 전송이 이루어지므로 전송속도에 대해 양측간의 정확한 합의가 이루어져야 한다.In the case of such a communication method, since the data is transmitted between the host CPI 11 and the slave CPI 12 through a serial line, the number of transmission lines is significantly reduced compared to the parallel transmission method, but per unit time. The disadvantage is that the amount of information that can be transmitted is small. In addition, since serial communication is performed based on the communication protocol, accurate agreement between the two parties must be made about the transmission speed.

도 2는 공유 메모리를 이용한 종래의 통신 시스템을 나타낸 것으로, 호스트 씨피유(21)와 슬레이브 씨피유(22)가 공유 메모리인 플래시 메모리 및 에스램(23A,23B)을 이용하여 데이터 통신을 수행하도록 되어 있다.2 illustrates a conventional communication system using a shared memory, in which the host CPI 21 and the slave CPI 22 perform data communication using the flash memory and the SRAMs 23A and 23B which are shared memories. .

이와 같은 통신방법의 경우, 데이터 전송속도는 시리얼 통신방법에 비하여 훨씬 우수하지만, 많은 데이터전송 라인을 필요로 하는 단점이 있다. 또한, 플래시 메모리 및 에스램 (23A,23B)을 어느 한 씨피유가 독점적으로 사용할 수 없으므로 두 씨피유(21),(22)간의 하드웨어적인 확실한 규약이 필요하다. 즉, 호스트 씨피유(21)가 플래시 메모리 및 에스램(23A,23B)을 대상으로 리드(read)/ 라이트(write)하는 동안 슬레이브 씨피유(22)는 접근이 허용되지 않고, 반대로 슬레이브 씨피유(22)가 플래시 메모리 및 에스램(23A,23B)을 대상으로 리드/라이트하는 동안 호스트 씨피유(21)는 접근이 허용되지 않는다.In the case of such a communication method, the data transmission rate is much better than that of the serial communication method, but it requires a lot of data transmission lines. In addition, since the flash memory and the SRAMs 23A and 23B cannot be used exclusively by any one of CIF, a certain hardware agreement between the two CFUs 21 and 22 is required. That is, while the host CPI 21 reads / writes the flash memory and the SRAMs 23A and 23B, the slave CPI 22 is not allowed to access, and conversely, the slave CPI 22 The host CPI 21 is not allowed access while the device reads / writes the flash memory and the SRAMs 23A and 23B.

도 3은 듀얼포트 메모리를 이용한 종래의 통신 시스템을 나타낸 것으로, 호스트 씨피유(31)와 슬레이브 씨피유(32)가 각기 플래시 메모리 및 에스램(31A,31B) ,(32A,32B)을 구비하고, 듀얼포트 메모리(33)를 통해 데이터를 통신하도록 되어 있다.3 shows a conventional communication system using a dual port memory, in which the host CPI 31 and the slave CPI 32 each have a flash memory and SRAMs 31A, 31B and 32A and 32B. The data is communicated via the port memory 33.

도 4는 상기 두 씨피유(31),(32)가 듀얼포트 메모리(33)를 통해 통신하는 예를 보인 것이다. 상기 슬레이브 씨피유(32)는 플래시메모리(32A)에서 부팅코드를읽어내어 부팅을 시작하고 애플리케이션을 기동시켜 원하는 작업을 수행하게 되는데, 이때, 호스트 씨피유(31)로부터 추가로 데이터를 전송받을 필요가 없는 경우에는 단독으로 작업을 진행한다.4 shows an example in which the two CPIs 31 and 32 communicate through the dual port memory 33. The slave CPU 32 reads the boot code from the flash memory 32A to start booting and starts an application to perform a desired task. In this case, the slave CPU may not need to receive additional data from the host CPU 31. In this case, work alone.

그러나, 상기 슬레이브 씨피유(32)가 호스트 씨피유(31)로부터 추가 데이터를 전송받을 필요가 있는 경우에는 그 사실을 호스트 씨피유(31)에게 알린다. 이에 따라, 상기 호스트 씨피유(31)는 요구된 데이터를 상기 듀얼포트 메모리(33)에 저장하고 저장 동작이 완료되는 순간 그 사실을 슬레이브 씨피유(32)에게 통보한다. 따라서, 상기 슬레이브 씨피유(32)는 상기 듀얼포트 메모리(33)에서 데이터를 읽어오게 된다.However, if the slave CPI 32 needs to receive additional data from the host CPI 31, it informs the host CPI 31 of the fact. Accordingly, the host CPI 31 stores the requested data in the dual port memory 33 and notifies the slave CPI 32 of the moment when the storage operation is completed. Accordingly, the slave CPI 32 reads data from the dual port memory 33.

이와 같은 통신방법의 경우, 두 씨피유(31),(32)가 듀얼포트 메모리(33)를 통해 병렬로 데이터를 통신할 수 있을 뿐만 아니라 완전히 독립적으로 동작할 수 있다는 장점이 있다. 즉, 공유 메모리를 갖는 규약상의 문제점이 심각하게 발생하지 않는다.In the case of such a communication method, the two CPIs 31 and 32 can communicate data in parallel through the dual port memory 33 as well as operate completely independently. In other words, protocol problems with shared memory do not occur seriously.

다시 말해서, 듀얼포트 메모리(33)는 두 개의 포트를 통해 임의로 데이터를 리드/라이트할 수 있으므로 두 씨피유(31),(32)가 서로간에 소프트웨어적인 합의만 이루어지면 손쉽게 필요한 자료를 주고 받을 수 있게 된다. 예를 들어, 상기 듀얼포트 메모리(33)의 메모리 영역 중 절반은 호스트 씨피유(31)가 슬레이브 씨피유(32)측으로 자료를 넘겨줄 때 사용하고, 나머지 절반은 슬레이브 씨피유(32)가 호스트 씨피유(31)측으로 자료를 넘겨줄 때 사용하기로 합의만 하면 아무런 충돌문제 없이 데이터를 주고 받을 수 있게 된다.In other words, the dual port memory 33 can read / write data arbitrarily through the two ports, so that the two CPIs 31 and 32 can easily exchange data if they have a software agreement with each other. do. For example, half of the memory areas of the dual port memory 33 are used when the host CPI 31 passes data to the slave CPI 32, and the other half of the dual port memory 33 is slave CUI 32 by the host CPI 31. If you agree to use it when handing over data, you can send and receive data without any conflict.

하지만, 이와 같은 통신방법에 있어서는 듀얼포트 메모리(RAM)가 추가적으로 사용되는 것이므로 그에 따른 비용이 추가된다는 단점이 있었다.However, in this communication method, since dual port memory (RAM) is additionally used, there is a disadvantage in that a corresponding cost is added.

따라서, 본 발명의 목적은 듀얼포트 램을 단순히 데이터 통신용으로만 사용하는 것이 아니라, 부팅을 수행하거나 프로그램 코드를 교환하거나 기타 원하는 작업을 수행하는데 이용할 수 있도록한 슬레이브 씨피유의 통신 제어 방법 및 장치를 제공함에 있다.Accordingly, it is an object of the present invention to provide a method and apparatus for controlling communication of a slave CPI that enables the dual port RAM to be used not only for data communication but also for booting, exchanging program codes, or performing other desired tasks. Is in.

도 1은 종래 기술에 의한 시리얼 통신 블록도.1 is a serial communication block diagram according to the prior art.

도 2는 공유 메모리를 이용한 종래의 통신 블록도.2 is a conventional communication block diagram using a shared memory;

도 3은 듀얼포트 메모리를 이용한 종래의 통신 블록도.3 is a conventional communication block diagram using a dual port memory;

도 4는 종래 기술에서 듀얼포트 메모리를 이용한 통신 방법의 신호 흐름도.4 is a signal flow diagram of a communication method using a dual port memory in the prior art.

도 5는 본 발명의 듀얼포트 메모리를 이용한 슬레이브 씨피유의 통신 제어 블록도.5 is a communication control block diagram of a slave CPU using the dual port memory of the present invention.

도 6은 본 발명에서 부팅 및 프로그램 코드와 자료 교환을 위한 제어신호 설명도.6 is a diagram illustrating control signals for booting and exchanging program codes and data in the present invention;

도 7은 본 발명에서 부팅 및 프로그램 코드와 자료 교환을 위한 제어신호 통신 설명도.7 is an explanatory diagram of control signal communication for booting and exchanging program code and data in the present invention;

도 8은 본 발명에서 부팅모드에 따른 부팅 방법 예시 표.8 is a table showing a boot method according to the boot mode in the present invention.

도 9는 본 발명에 의한 슬레이브 씨피유의 통신 제어 방법의 신호 흐름도.9 is a signal flowchart of a communication method of a slave CPI in accordance with the present invention;

***도면의 주요 부분에 대한 부호의 설명****** Description of the symbols for the main parts of the drawings ***

51 : 호스트 씨피유 51A : 플래시 메모리51: host CPI 51A: flash memory

51B : 에스램 52 : 슬레이브 씨피유51B: SRAM 52: Slave CPI

53 : 듀얼포트 메모리53: dual port memory

본 발명에 의한 슬레이브 씨피유의 통신 제어 방법은, 슬레이브 씨피유가 듀얼포트 메모리를 이용하여 부팅할 수 있도록, 호스트 씨피유가 그 슬레이브 씨피유를 리세트시킨 후 듀얼포트 메모리를 통해 그 슬레이브 씨피유의 부팅모드를 설정함과 아울러 부팅에 필요한 코드를 저장하는 제1과정과; 상기 호스트 씨피유가 상기 슬레이브 씨피유의 리세트 상태를 해제시키고, 그 슬레이브 씨피유가 상기 듀얼포트 메모리의 소정 영역을 부팅 시작 주소로 설정하여 부팅작업을 시작한 후 애플리케이션을 기동시켜 요구된 작업을 수행하는 제2과정과; 상기 요구된 작업을 계속 수행하기 위해 호스트 씨피유로부터 추가로 전송받을 프로그램 코드나 데이터가 있는 확인하여 조건이 성립하면 상기 듀얼포트 메모리를 통해 그 프로그램 코드나 데이터를 전달받아 작업을 수행하는 제3과정으로 이루어진다.In the communication control method of the slave CPI according to the present invention, the host CPI resets the slave CPI and sets the boot mode of the slave CPI through the dual port memory so that the slave CPI can boot using the dual port memory. And a first step of storing code required for booting; A second step in which the host CPI releases the reset state of the slave CPI, the slave CUI sets a predetermined region of the dual port memory as a boot start address, starts a booting operation, and then starts an application to perform a requested operation; Process; In order to continue to perform the requested work, a third process of checking whether there is a program code or data to be additionally transmitted from the host CPI is performed and receiving the program code or data through the dual port memory to perform a task. Is done.

도 5는 본 발명에 의한 슬레이브 씨피유의 통신 제어 장치의 일실시 구현예를 보인 블록도로서 이에 도시한 바와 같이, 슬레이브 씨피유(52)를 리세트시킨 후듀얼포트 메모리(53)를 통해 그의 부팅모드를 설정함과 아울러 부팅에 필요한 코드를 저장하고, 작업 수행 도중에 요구하는 프로그램 코드나 데이터를 그 듀얼포트 메모리(53)를 통해 전달하는 호스트 씨피유(51)와; 상기 호스트 씨피유(51)의 부팅 및 작업 수행을 위한 플래시 메모리(51A) 및 에스램(51B)과; 상기 듀얼포트 메모리(53)로부터 부팅 코드를 읽어와 부팅을 시작하고, 애플리케이션을 기동시켜 요구된 작업을 수행하다가 필요한 프로그램 코드나 데이터를 그 듀얼포트 메모리(53)를 통해 상기 호스트 씨피유(51)로부터 전달받는 슬레이브 씨피유(52)와; 상기 호스트 씨피유(51)에서 전송되는 각종 코드나 데이터를 상기 슬레이브 씨피유(52)측으로 전송하거나, 그 슬레이브 씨피유(52)의 작업을 수행하기 프로그램 코드의 저장공간으로 사용되는 듀얼포트 메모리(53)로 구성한 것으로, 이와 같은 본 발명의 작용을 첨부한 도 5 내지 도 9를 참조하여 상세히 설명하면 다음과 같다.FIG. 5 is a block diagram showing an embodiment of a slave CPI communication control apparatus according to the present invention. As shown therein, the boot mode is changed through the dual port memory 53 after the slave CPI 52 is reset. A host CPU (51) for storing the code required for booting and transferring the program code or data required during the operation through the dual port memory (53); A flash memory 51A and an SRAM 51B for booting and performing a task of the host CPI 51; The boot code is read from the dual port memory 53 to start booting, the application is started by performing an operation by executing an application, and the necessary program code or data is transferred from the host CPI 51 through the dual port memory 53. A slave CPI 52 received; Transfers various codes or data transmitted from the host CPI 51 to the slave CPI 52, or performs a task of the slave CPI 52 to a dual port memory 53 used as a storage space of a program code. With reference to Figures 5 to 9 attached to the operation of the present invention as described above in detail as follows.

듀얼포트 메모리(예: 듀얼포트 램)(53)는 호스트 씨피유(51)와 슬레이브 씨피유(52)간의 데이터 교환 뿐만 아니라, 그 슬레이브 씨피유(52)를 위한 부팅코드 및 프로그램 코드를 저장하는 공간으로 사용된다. 따라서, 상기 슬레이브 씨피유(52)는 상기 호스트 씨피유(51)에 의해 듀얼포트 메모리(53)에 저장된 부팅코드를 이용하여 부팅을 수행할 수 있게 되며, 이때 부팅 시점을 호스트 씨피유(51)가 제어할 수 있다. 상기 슬레이브 씨피유(52)는 부팅 후 목적한 작업을 수행하는 동안 필요한 프로그램 코드를 상기 듀얼포트 메모리(53)를 통해 호스트 씨피유(51)에 요청할 수 있다.The dual port memory (eg, dual port RAM) 53 is used as a space for storing the boot code and program code for the slave CPI 52 as well as exchanging data between the host CUI 51 and the slave CPI 52. do. Accordingly, the slave CPI 52 may boot using the boot code stored in the dual port memory 53 by the host CPI 51, and the host CFI 51 may control the boot time at this time. Can be. The slave CPI 52 may request a host CFI 51 through the dual port memory 53 for necessary program codes while performing a desired operation after booting.

도 6은 상기 호스트 씨피유(51)와 슬레이브 씨피유(52)간의 데이터 교환, 슬레이브 씨피유(52)를 위한 부팅코드 및 프로그램 코드의 전송을 위해 사용되는 각종 제어신호를 나타낸 것으로, 이들은 일반적인 에스램(SRAM)의 제어신호와 동일하고 통상의 씨피유들도 이 제어신호들을 사용하고 있다.FIG. 6 shows various control signals used for data exchange between the host CPI 51 and the slave CPI 52, and transmission of boot codes and program codes for the Slave CPI 52. These are general SRAMs. Is the same as the control signal, and common CFI oils use these control signals.

즉, 상기 호스트 씨피유(51)가 듀얼포트 메모리(53)측으로 출력하는 제어신호에는 칩선택신호(CS_N), 라이트 스트로브신호(WR_N),아웃인에이블신호(OE_N), 어드레스신호(ADDR) 및 데이터(DATA)가 있고, 슬레이브 씨피유(52)측으로 출력하는 제어신호에는 그 슬레이브 씨피유(52)의 부팅을 유발시키기 위한 리세트신호 (RESET)를 비롯하여 부팅모드 선택신호(BOOT_MODE), 인터럽트신호(INTR_TO_SLAVE)가 있으며, 슬레이브 씨피유(52)가 호스트 씨피유(51)측으로 출력하는 인터럽트신호(INTR_TO_HOST)가 있다.That is, the control signal output from the host CPI 51 to the dual port memory 53 includes a chip select signal CS_N, a write strobe signal WR_N, an out enable signal OE_N, an address signal ADDR, and data. (DATA), and the control signal outputted to the slave CPI 52 side includes a reset signal RESET for inducing booting of the slave CPI 52, a boot mode selection signal (BOOT_MODE), and an interrupt signal (INTR_TO_SLAVE). There is an interrupt signal (INTR_TO_HOST) that the slave CPU 52 outputs to the host CPU 51 side.

한편, 상기 듀얼포트 메모리(53)를 이용한 부팅과정과, 두 씨피유(51),(52)간의 프로그램 코드 및 자료 교환과정을 도 7 및 도 9를 참조하여 설명하면 다음과 같다.Meanwhile, a booting process using the dual port memory 53 and a program code and data exchange process between the two CPIs 51 and 52 will be described with reference to FIGS. 7 and 9 as follows.

호스트 씨피유(51)가 슬레이브 씨피유(52)측으로 리세트신호(RESET)를 출력하여 그 슬레이브 씨피유(52)가 리세트 상태에 있도록 한다.(S1)The host CPI 51 outputs the reset signal RESET to the slave CPI 52 so that the slave CPI 52 is in the reset state (S1).

이후, 상기 호스트 씨피유(51)는 슬레이브 씨피유(52)가 듀얼포트 메모리(53)를 이용하여 부팅할 수 있도록 그 듀얼포트 메모리(53)에 부팅모드 선택신호(BOOT_MODE)를 출력하여 부팅모드를 설정한 다음 부팅에 필요한 코드를 그 듀얼포트 메모리(53)에 저장한다.(S2,S3)Thereafter, the host CPI 51 sets a boot mode by outputting a boot mode selection signal BOOT_MODE to the dual port memory 53 so that the slave CPI 52 can boot using the dual port memory 53. The code required for booting is then stored in the dual port memory 53 (S2, S3).

이어서, 상기 호스트 씨피유(51)가 슬레이브 씨피유(52)측으로 출력하던 리세트신호(RESET)를 차단하면 그 슬레이브 씨피유(52)의 리세트 상태가 해제되고, 이때, 그 슬레이브 씨피유(52)는 상기 듀얼포트 메모리(53)의 영역을 부팅 시작 주소로 설정하여 부팅작업을 시작한다.(S4)Subsequently, when the host CPI 51 blocks the reset signal RESET outputted to the slave CPI 52, the reset state of the slave CPI 52 is canceled. The booting operation is started by setting the area of the dual port memory 53 as the boot start address.

참고로, 상기 슬레이브 씨피유(52)가 부팅 모드에 따라 부팅 어드레스를 상기 듀얼포트 메모리(53)의 저장영역으로 설정하는 방법은 여러가지가 있을 수 있으나, 대표적인 예로써, 부팅시 메모리 주소를 조작하는 방법을 들 수 있다.For reference, there may be various methods for setting the boot address as the storage area of the dual port memory 53 according to the boot mode of the slave CPU 52. As a representative example, a method of manipulating a memory address during booting may be used. Can be mentioned.

상기 슬레이브 씨피유(52)는 상기 듀얼포트 메모리(53)의 영역을 프로그램 코드 영역과 데이터 영역으로 적절히 할당하여 부팅작업을 수행하고 애플리케이션을 기동시키게 되는데, 슬레이브 씨피유(52)에 내부 메모리가 있는 경우 이를 사용할 수도 있다.(S5)The slave CPI 52 appropriately allocates an area of the dual port memory 53 to a program code area and a data area to perform a booting operation and to start an application. (S5)

상기 슬레이브 씨피유(52)가 부팅작업을 완료한 후 원하는 작업을 계속 수행하는데 있어서, 상기 호스트 씨피유(51)로부터 추가로 프로그램 코드나 데이터를 전송받을 필요가 없는 경우에는 단독으로 작업을 진행한다.(S6,S7)When the slave CPI 52 continues to perform a desired task after completing a booting operation, when there is no need to receive additional program code or data from the host CPI 51, the operation is performed by itself. S6, S7)

그러나, 상기 슬레이브 씨피유(52)가 원하는 작업을 계속 수행하는데 있어서, 상기 호스트 씨피유(51)로부터 추가로 전송받을 프로그램 코드나 데이터가 있는 경우에는 그 호스트 씨피유(31)에게 필요한 데이터를 요청한다.(S8)However, when the slave CPU 52 continues to perform a desired task, if there is a program code or data to be additionally transmitted from the host CPU 51, the host CPU 51 requests the required data. S8)

이에 따라, 상기 호스트 씨피유(51)는 상기 요청된 코드 및 데이터(DATA)를 상기 듀얼포트 메모리(53)에 저장하고 저장 동작이 완료되는 순간 그 사실을 슬레이브 씨피유(32)에게 통보한다.(S9,S10)Accordingly, the host CPI 51 stores the requested code and data DATA in the dual port memory 53 and notifies the slave CPI 32 of the moment the storage operation is completed. S10)

따라서, 상기 슬레이브 씨피유(52)는 상기 듀얼포트 메모리(53)에서 자신이 요구하였던 프로그램 코드나 데이터를 읽어와 원하는 작업을 계속 수행할 수 있게 된다.Accordingly, the slave CPI 52 may continue to perform a desired operation by reading a program code or data requested by the slave CPU 52 from the dual port memory 53.

만약, 상기 슬레이브 씨피유(52)가 앞으로 필요한 코드나 데이터를 미리 예측할 수 있는 경우에는 그 코드나 데이터를 미리 상기 호스트 씨피유(51)에 요구함으로써, 작업 수행시 지연시간을 최소화할 수 있다.If the slave CPI 52 can predict the necessary code or data in advance, the host CUI may be requested in advance, thereby minimizing a delay time.

한편, 도 8은 상기 슬레이브 씨피유(52)의 부팅모드 입력에 따른 부팅 메모리의 설정예를 나타낸 것이다. 즉, 부팅모드 "00","01","10"에 따라 8bit, 16bit,32bit의 외부 플래시 메모리를 사용한다. 또한, 슬레이브 씨피유(52)가 듀얼포트 메모리(53)를 이용하여 부팅할 수 있게 되는데, 이와 같은 경우 부팅모드가 "11"로 설정된다. 이때, 그 슬레이브 씨피유(52)에 할당된 외부 플래시 메모리의 버스 사이즈를 설정해 주거나, 듀얼포트 메모리(53)가 현재 부팅모드라는 사실을 "BOOT-MODE"라는 두 개의 입력핀을 통해 슬레이브 씨피유(52)에게 통보해 준다.8 shows an example of setting a boot memory according to the boot mode input of the slave CPU (52). In other words, 8-bit, 16-bit, and 32-bit external flash memories are used according to the boot modes "00", "01", and "10". In addition, the slave CPU 52 can boot using the dual port memory 53, in which case the boot mode is set to " 11 ". At this time, the bus size of the external flash memory allocated to the slave CPU 52 may be set, or the slave CPU 5 may be inputted through two input pins called “BOOT-MODE” to indicate that the dual port memory 53 is currently in the boot mode. ).

이상에서 상세히 설명한 바와 같이 본 발명은 듀얼포트 램을 단순히 데이터 통신용으로만 사용하는 것이 아니라, 부팅을 수행하거나 프로그램 코드를 교환하거나 목적한 원하는 작업을 수행하는데 이용할 수 있도록 함으로써, 휴대폰 등의 단말기의 원가를 줄일 수 있고, 설계면적을 최적화 할 수 있는 효과가 있다.As described in detail above, the present invention does not simply use the dual port RAM for data communication, but may be used to perform booting, exchanging program codes, or performing a desired task. It is possible to reduce the size and to optimize the design area.

Claims (8)

호스트 씨피유가 듀얼포트 듀얼포트 메모리를 이용하여 슬레이브 씨피유의 부팅모드를 설정하는 제1과정과; 상기 호스트 씨피유가 상기 슬레이브 씨피유를 부팅시켜 애플리케이션 작업을 수행하는 제2과정과; 상기 작업을 수행하기 위해 호스트 씨피유로부터 추가로 전송받을 프로그램 코드나 데이터가 있는 경우 상기 듀얼포트 메모리를 통해 프로그램 코드나 데이터를 전송받아 작업을 수행하는 제3과정으로 이루어지는 것을 특징으로 하는 슬레이브 씨피유의 통신 제어 방법.A first step of the host CPI setting the boot mode of the slave CPI using the dual port dual port memory; A second step of the host CPI booting the slave CPI to perform an application task; If there is a program code or data to be additionally transmitted from the host CPI in order to perform the operation communication of the slave CPI, characterized in that the third step of receiving a program code or data through the dual port memory to perform a task Control method. 제1항에 있어서, 제1과정은 호스트 씨피유가 슬레이브 씨피유를 리세트시키는 단계와; 듀얼포트 메모리를 통해 상기 슬레이브 씨피유의 부팅모드를 설정하는 단계와; 부팅에 필요한 코드를 상기 듀얼포트 메모리에 저장하는 단계로 이루어지는 것을 특징으로 하는 슬레이브 씨피유의 통신 제어 방법.The method of claim 1, wherein the first step comprises the steps of: the host CPI resets the slave CPI; Setting a boot mode of the slave CPI via a dual port memory; And storing the code necessary for booting in the dual port memory. 제1항에 있어서, 제2과정은 호스트 씨피유가 상기 슬레이브 씨피유의 리세트 상태를 해제시키는 것에 의하여 시작되는 것임을 특징으로 하는 슬레이브 씨피유의 통신 제어 방법.The method of claim 1, wherein the second process is initiated by the host CPI being released from the reset state of the slave CPI. 제1항에 있어서, 제2과정은 상기 슬레이브 씨피유는 부팅모드에 따라 부팅 어드레스를 상기 듀얼포트 메모리의 저장영역으로 설정할 수 있도록 부팅시 메모리주소를 조작하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 슬레이브 씨피유의 통신 제어 방법.2. The slave of claim 1, wherein the slave CPI further comprises a step of manipulating a memory address at boot time to set a boot address as a storage area of the dual port memory according to a boot mode. CFIU's communication control method. 제1항에 있어서, 제2과정은 상기 듀얼포트 메모리의 영역을 프로그램 코드 영역과 데이터 영역으로 할당하여 부팅작업을 수행하는 것을 특징으로 하는 슬레이브 씨피유의 통신 제어 방법.The method of claim 1, wherein the second process allocates an area of the dual port memory to a program code area and a data area to perform a booting operation. 슬레이브 씨피유(52)를 리세트시킨 후 듀얼포트 메모리(53)를 통해 그 슬레이브 씨피유(52)의 부팅모드를 설정함과 아울러 부팅에 필요한 코드를 저장하는 호스트 씨피유(51)와; 상기 듀얼포트 메모리(53)로부터 부팅 코드를 읽어와 부팅을 시작하고, 애플리케이션을 기동시켜 요구된 작업을 수행하다가 필요한 프로그램 코드나 데이터를 그 듀얼포트 메모리(53)를 통해 상기 호스트 씨피유(51)로부터 전달받는 슬레이브 씨피유(52)와; 상기 호스트 씨피유(51)에서 전송되는 부팅 코드나 데이터를 상기 슬레이브 씨피유(52)측으로 전송하거나, 그 슬레이브 씨피유(52)의 작업을 위한 프로그램 코드 저장공간으로 사용되는 듀얼포트 메모리(53)로 구성한 것을 특징으로 하는 슬레이브 씨피유의 통신 제어 장치.A host CPI 51 which resets the Slave CPI 52 and sets a boot mode of the Slave CAPI 52 through the dual port memory 53 and stores a code necessary for booting; The boot code is read from the dual port memory 53 to start booting, the application is started by performing an operation by executing an application, and the necessary program code or data is transferred from the host CPI 51 through the dual port memory 53. A slave CPI 52 received; Configured as a dual port memory 53 which transmits the boot code or data transmitted from the host CPI 51 to the slave CPI 52 or is used as a program code storage space for the operation of the slave CPI 52. A communication control device of a slave CPI. 제6항에 있어서, 듀얼포트 메모리(53)는 듀얼포트 램으로 구성된 것을 특징으로 하는 슬레이브 씨피유의 통신 제어 장치.7. The slave control device of claim 6, wherein the dual port memory (53) is configured as a dual port RAM. 제6항에 있어서, 듀얼포트 메모리(53)는 프로그램 코드영역과 데이터영역으로 분할하여 운용하도록 구성된 것을 특징으로 하는 슬레이브 씨피유의 통신 제어 장치.7. The slave control system of claim 6, wherein the dual port memory (53) is configured to operate by dividing the program code area and the data area.
KR10-2001-0043433A 2001-07-19 2001-07-19 Communication control method and apparatus for slave cpu KR100382939B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0043433A KR100382939B1 (en) 2001-07-19 2001-07-19 Communication control method and apparatus for slave cpu

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0043433A KR100382939B1 (en) 2001-07-19 2001-07-19 Communication control method and apparatus for slave cpu

Publications (2)

Publication Number Publication Date
KR20030008608A KR20030008608A (en) 2003-01-29
KR100382939B1 true KR100382939B1 (en) 2003-05-09

Family

ID=27715706

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0043433A KR100382939B1 (en) 2001-07-19 2001-07-19 Communication control method and apparatus for slave cpu

Country Status (1)

Country Link
KR (1) KR100382939B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131985B2 (en) 2007-06-18 2012-03-06 Samsung Electronics Co., Ltd. Semiconductor memory device having processor reset function and reset control method thereof

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8209527B2 (en) 2006-10-26 2012-06-26 Samsung Electronics Co., Ltd. Memory system and memory management method including the same

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189382A (en) * 1992-01-13 1993-07-30 Fujitsu Ltd Communication method between processors
JPH0651812A (en) * 1992-08-04 1994-02-25 Omron Corp Programmable controller
JPH11345221A (en) * 1998-05-29 1999-12-14 Shinko Electric Co Ltd Multiprocessor system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05189382A (en) * 1992-01-13 1993-07-30 Fujitsu Ltd Communication method between processors
JPH0651812A (en) * 1992-08-04 1994-02-25 Omron Corp Programmable controller
JPH11345221A (en) * 1998-05-29 1999-12-14 Shinko Electric Co Ltd Multiprocessor system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131985B2 (en) 2007-06-18 2012-03-06 Samsung Electronics Co., Ltd. Semiconductor memory device having processor reset function and reset control method thereof

Also Published As

Publication number Publication date
KR20030008608A (en) 2003-01-29

Similar Documents

Publication Publication Date Title
US6260081B1 (en) Direct memory access engine for supporting multiple virtual direct memory access channels
KR100847968B1 (en) Dual-port semiconductor memories
JP2003076654A (en) Data transfer system between memories of dsps
CN108304334B (en) Application processor and integrated circuit including interrupt controller
US5416916A (en) Structure for enabling direct memory-to-memory transfer with a fly-by DMA unit
US20040225760A1 (en) Method and apparatus for transferring data at high speed using direct memory access in multi-processor environments
KR20060028705A (en) Readdressable virtual dma control and status registers
JP4560498B2 (en) Arbitration scheme for shared memory devices
JP4642531B2 (en) Arbitration of data requests
JPH0146946B2 (en)
JPH10116187A (en) Microcomputer
JPH02259861A (en) Dma controller
KR100382939B1 (en) Communication control method and apparatus for slave cpu
US20130219095A1 (en) Circuit and method for pipe arbitration using available state information and arbitration
KR100874169B1 (en) Dual port memory for direct transfer of commands between processors and method for performing them
US20030033454A1 (en) Direct memory access controller
JP2005107873A (en) Semiconductor integrated circuit
KR100441996B1 (en) Direct Memory Access(DMA) Controller and control method
JPH07271654A (en) Controller
JP3266610B2 (en) DMA transfer method
JP2008117109A (en) Semiconductor integrated circuit device
JPS6014435B2 (en) Storage device
KR100690597B1 (en) Single mode direct memory access application method using cpu applying dual mode direct memory access
JPH0784963A (en) Semiconductor integrated circuit with cpu
KR19990058930A (en) Deamic controller and method for changing priority of deamplification request signal using same

Legal Events

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

Payment date: 20090331

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee