KR100382939B1 - Communication control method and apparatus for slave cpu - Google Patents
Communication control method and apparatus for slave cpu Download PDFInfo
- 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
Links
Classifications
-
- 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, look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline, look ahead using a slave processor, e.g. coprocessor
-
- 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
- G06F15/163—Interprocessor 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
본 발명은 호스트 씨피유(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)
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)
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)
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)
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 |
-
2001
- 2001-07-19 KR KR10-2001-0043433A patent/KR100382939B1/en not_active IP Right Cessation
Patent Citations (3)
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)
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 |