KR100496652B1 - 고성능 병렬신호처리 시스템을 위한 hpi-emif 브릿지 - Google Patents

고성능 병렬신호처리 시스템을 위한 hpi-emif 브릿지 Download PDF

Info

Publication number
KR100496652B1
KR100496652B1 KR10-2003-0031266A KR20030031266A KR100496652B1 KR 100496652 B1 KR100496652 B1 KR 100496652B1 KR 20030031266 A KR20030031266 A KR 20030031266A KR 100496652 B1 KR100496652 B1 KR 100496652B1
Authority
KR
South Korea
Prior art keywords
hpi
pci
controller
emif
dsp
Prior art date
Application number
KR10-2003-0031266A
Other languages
English (en)
Other versions
KR20040098935A (ko
Inventor
이동호
정수운
이태호
한기택
Original Assignee
국방과학연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국방과학연구소 filed Critical 국방과학연구소
Priority to KR10-2003-0031266A priority Critical patent/KR100496652B1/ko
Publication of KR20040098935A publication Critical patent/KR20040098935A/ko
Application granted granted Critical
Publication of KR100496652B1 publication Critical patent/KR100496652B1/ko

Links

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
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • 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
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)

Abstract

본 발명은 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지에 관한 것으로서, 외부 시스템에서 실행에 필요한 프로그램 및 데이터를 DSP(Digital Signal Processor)에 다운로드하고, 로컬 메모리를 액세스하고, 병렬적으로 연결된 DSP의 로컬 메모리간의 DMA(Direct Memory Access) 전송을 수행할 수 있도록 한 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지에 관한 것이다. 이를 위해, 본 발명에 의한 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지는 이 HPI-EMIF 브릿지가 마스터로 동작할 때 PCI 버스를 초기화하고 PCI 버스에 주소 및 데이터를 보내는 PCI 마스터 제어기와, 이 HPI-EMIF 브릿지가 타겟으로 동작할 때 PCI 버스로부터 수신한 PCI 신호를 후술하는 SDRAM 제어기 및 HPI 제어기에 보내는 PCI 타겟 제어기와, 로컬 메모리간 DMA 전송에 관련된 데이터를 저장하는 PCI 구성 레지스터를 포함하는 PCI 제어기와; 로컬 메모리간 DMA 전송을 제어하는 DMA 제어기와, 로컬 메모리의 액세스를 제어하는 SDRAM 제어기와, 외부 프로세서에서 DSP로 프로그램 및 데이터를 다운로드하기 위해 DSP의 HPI를 제어하는 HPI 제어기를 포함하는 내부 제어기를 포함한다.

Description

고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지{A HPI-EMIF BRIDGE FOR HIGH-SPEED PARALLEL DSP SYSTEM}
본 발명은 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지에 관한 것으로서, 외부 시스템에서 실행에 필요한 프로그램 및 데이터를 DSP(Digital Signal Processor)에 다운로드하고, 로컬 메모리를 액세스하고, 병렬적으로 연결된 DSP의 로컬 메모리간의 DMA(Direct Memory Access) 전송을 수행할 수 있도록 한 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지에 관한 것이다.
최근 고속의 신호처리시스템을 구현하는데 DSP 칩을 다중으로 연결하는 병렬신호처리 시스템구조가 많이 채택되고 있는데, 그 이유는 DSP 칩의 개별적인 연산능력이 우수하긴 해도 단일 프로세서 구조로는 높은 성능 요구조건을 충족시키기 어렵기 때문이다. 특히, 영상처리시스템이나 소나, 레이더 등의 통신시스템 분야에서 GFLOPS(Giga Floating Point Operation Per Second)의 신호처리 성능을 요구하기 때문에 필연적으로 DSP의 병렬신호처리가 필수적이며 이에 관하여 현재까지 많은 병렬신호처리 시스템이 개발되어 왔다.
이러한 병렬신호처리 시스템을 일반 PC에서 사용하기 위해 PC와 인터페이스가 가능한 버스를 사용하여야 한다. IBM 규격의 개인용 컴퓨터에는 크게 두 가지의 버스가 있는데 하나는 중앙처리장치(CPU)가 연결되는 호스트 버스이고 다른 하나는 주변장치가 연결되는 주변 버스이다.
특히, 주변 버스에는 여러 입출력(I/O) 장치들이 연결되는데 입출력 장치가 CPU와 연결되어 동작하기 위해 별도의 보드가 커넥터에 삽입되어야 한다. 이러한 입출력 장치를 위해 제공된 커넥터를 입출력 슬롯(I/O slot)이라고 한다.
초기의 IBM 규격의 PC에서는 입출력 슬롯으로 ISA(Industrial Standard Architecture) 버스를 사용하였다. 그러나, 버스클럭 8MHz, 버스폭 8/16 비트, 전송속도 5Mbps을 지원하는 ISA 버스는 전송 데이터 폭이 좁고 느려서 동시에 충분한 양의 데이터를 전송할 수 없다. 또한, ISA 버스는 지능적이지 못해서 CPU가 ISA 버스를 통한 데이터의 이동을 직접 제어해야 하기 때문에 데이터 전송이 완료되기 전까지 CPU에 새로운 작업을 할당할 수 없다.
예를 들어, 플로피 디스크에서 데이터를 쓰거나 읽는 동안 PC의 나머지 장치들은 대기해야 한다. 종종 PC가 정지된 것처럼 보일 때가 있는데 그것은 바로 ISA 버스의 느린 속도와 지능성의 결여 때문이다.
다른 입출력 슬롯으로는 PCI(Peripheral Component Interconnect) 버스가 있다. 버스클럭 33MHz, 버스폭 32비트, 최대 전송속도 132Mbps를 갖는 PCI 버스는 현재 거의 모든 개인용 컴퓨터의 입출력 버스로서 사용되고 있으며 계속해서 빠른 전송속도를 지원할 수 있도록 연구가 진행되고 있다.
PCI 버스는 IBM 규격의 PC에서 사용되는 CPU만을 위한 버스구조는 아니기 때문에, 다른 CPU를 채택하고 있는 컴퓨터에서도 PCI 버스구조를 지원할 수 있도록 설계된다면 IBM 규격의 PC에서 사용되던 입출력 장치가 다른 컴퓨터에서도 사용될 수 있다. 이것은 IBM 규격의 PC에서 사용되는 CPU를 위주로 하여 입출력 장치의 하드웨어를 설계하는 방식에서 벗어나 소프트웨어를 통해 입출력 장치의 하드웨어의 동작상태를 변경시킬 수 있도록 하였기 때문이다.
또한, PCI 버스는 기존의 버스에 비하여 넓은 버스폭을 제공하여 적은 수의 핀으로 마스터 또는 타겟의 구현이 가능하므로 보드에서 차지하는 공간도 그 만큼 작아지게 되었다. 현재 PCI 버스는 80586 이상의 컴퓨터에서 많이 사용되고 있는데, 최근에는 PC에만 적용되는 것이 아니라 방대한 연산량이 요구되는 병렬신호처리 시스템에도 적용되고 있다.
이러한 PCI 버스를 기반으로 2개 이상의 DSP 칩을 사용하여 병렬신호처리 보드를 구현하는데 있어서 DSP 칩과 PCI 버스를 연결하는 브릿지 회로가 필요하게 되는데 현재 AMCC, PLX 등의 회사에서 단순 연결만을 위한 PCI 버스 브릿지를 개발하여 판매하고 있다.
그러나, 현재의 단순 연결만을 위한 PCI 버스 브릿지는 보다 효과적이고 빠른 신호처리를 할 수 없는 문제점이 있는 바, 이를 위해 메모리 제어가 가능한 PCI 버스 브릿지가 요구되고 있다.
본 발명은 상기의 문제점을 감안하여 창안한 것으로서, 외부 시스템에서 실행에 필요한 프로그램 및 데이터를 DSP에 다운로드하고, 로컬 메모리를 액세스하고, 병렬적으로 연결된 DSP의 로컬 메모리간의 DMA 전송을 수행할 수 있도록 하여 효과적이며 고속으로 신호를 처리할 수 있는 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지를 제공하는 것을 목적으로 한다.
이를 위해, 본 발명에 의한 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지는 이 HPI-EMIF 브릿지가 마스터로 동작할 때 PCI 버스를 초기화하고 PCI 버스에 주소 및 데이터를 보내는 PCI 마스터 제어기와, 이 HPI-EMIF 브릿지가 타겟으로 동작할 때 PCI 버스로부터 수신한 PCI 신호를 후술하는 SDRAM 제어기 및 HPI 제어기에 보내는 PCI 타겟 제어기와, 로컬 메모리간 DMA 전송에 관련된 데이터를 저장하는 PCI 구성 레지스터를 포함하는 PCI 제어기와; 로컬 메모리간 DMA 전송을 제어하는 DMA 제어기와, 로컬 메모리의 액세스를 제어하는 SDRAM 제어기와, 외부 프로세서에서 DSP로 프로그램 및 데이터를 다운로드하기 위해 DSP의 HPI를 제어하는 HPI 제어기를 포함하는 내부 제어기를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명하면 다음과 같다.
도 1은 본 발명이 적용되는, 2개의 DSP 칩을 사용한 병렬신호처리 보드의 구성도이다. 상기 병렬신호처리 보드는 2개의 DSP(11-1, 11-2), 2개의 로컬 메모리(SDRAM)(12-1, 12-2), 2개의 HPI-EMIF 브릿지(13-1, 13-2), PCI-PCI 브릿지(14) 및 2개의 내부 PCI 버스(15-1, 15-2)를 포함한다.
여기서, 2개의 DSP(11-1, 11-2)를 각각 DSP-A(11-1) 및 DSP-B(11-2)로 표시하고, 2개의 로컬메모리(12-1, 12-2)를 각각 SDRAM-A(12-1) 및 SDRAM-B(12-2)로 표시한다. 한편, 기능이 동일한 2개의 DSP(11-1, 11-2), 2개의 로컬 메모리(12-1, 12-2), 2개의 HPI-EMIF 브릿지(13-1, 13-2) 및 2개의 내부 PCI 버스(15-1, 15-2)를 명세서 및 도면에서 설명의 편의를 위해 각각 DSP(11), 로컬 메모리(12), HPI-EMIF 브릿지(13) 및 내부 PCI 버스(15)로 통칭하여 표시하기도 함에 유의한다.
DSP(11-1, 11-2)는 입력되는 아날로그신호를 디지털 처리하여 원하는 결과를 얻기 위한 연산부로서, 외부 호스트와 연결하기 위한 HPI(Host Port Interface), 로컬 메모리(12-1, 12-2)와 연결하기 위한 EMIF(External Memory Interface), DSP 연산을 위한 DSP 코어를 포함한다.
본 발명의 바람직한 실시예에 있어서, DSP 칩으로서 TI(Texas Instrument)의 TMS320C6701 칩을 사용한다. 이 칩은 167MHz의 클럭속도, 1GFLOPS의 연산능력, 400Mbps의 전송속도를 갖고 있으며, 1Mbit의 내부 메모리와 32비트의 외부 메모리 인터페이스를 지원한다.
DSP(11-1, 11-2)는 EMIF를 통해 직접 자신의 로컬 메모리(12-1, 12-2)를 액세스할 수 있으며, HPI를 통해 외부 호스트로부터 프로그램 및 데이터를 다운로드 받을 수 있다.
로컬 메모리(12-1, 12-2)는 DSP(11-1, 11-2)에 의해 액세스되지만 외부 호스트에 의해 액세스될 수 있고, DSP의 간섭 없이 SDRAM-A(12-1)와 SDRAM-B(12-2) 사이에서 데이터의 송수신, 즉 DMA 전송이 이루어질 수 있다.
평상시에는 DSP(11-1, 11-2)가 로컬 메모리(12-1, 12-2)를 직접 제어하지만, 외부에서 로컬 메모리(12-1, 12-2)를 사용하겠다는 홀드요구신호가 들어오면 DSP(11-1, 11-2)와 로컬 메모리(12-1, 12-2)와의 연결이 끊어지고, 이 때부터 HPI-EMIF 브릿지(13-1, 13-2)가 로컬 메모리(12-1, 12-2)를 제어하게 된다.
도 2는 본 발명에 의한 HPI-EMIF 브릿지(13) 내의 PCI 제어기(100) 내부에 포함된 DMA 관련 레지스터(130)의 구조를 나타낸다.
목적주소 레지스터(131)는 DSP가 액세스하려는 로컬 메모리의 주소를 저장하고, 소스주소 레지스터(132)는 현재 액세스 대상의 로컬 메모리의 액세스 시작주소를 저장하고, 전송길이 레지스터(133)는 전송하려는 데이터의 총길이를 저장한다. DMA 제어 레지스터(134)는 일반적인 DMA 제어를 위한 레지스터로서 인터럽트 또는 시스템에 의한 DMA 개시와 같은 기능을 포함한다.
DMA 전송을 위해 로컬 호스트인 DSP가 상기 레지스터들을 설정하지만, 외부의 시스템 호스트에 의해서도 설정될 수 있다.
레지스터의 설정이 완료되면 DMA 전송이 개시되는데, 이러한 DMA 전송 개시동작 역시 DSP에 의해 직접 이루어지거나, 외부의 시스템 호스트에 의해 소프트웨어적으로 DMA 제어 레지스터(134)의 DMA 시작제어비트를 설정함으로써 이루어질 수 있다. 또한, 하드웨어적으로는 직접 PCI 제어기(100)의 외부 핀으로 나와 있는 DMA 요구핀을 이용하여 직접 DMA 전송을 개시할 수 있다.
DSP에 의한 PCI 제어기(100)의 레지스터 액세스는 간단히 수행될 수 있다. 우선, PCI 제어기(100)는 "CCS#"라는 외부 핀을 이용하여 외부 호스트가 PCI 제어기(100)의 레지스터를 액세스한다는 것을 감지한다. DSP가 DMA 관련 레지스터를 액세스하기 위해서는 이 레지스터를 자신의 메모리 맵에 할당하여야 하는데, 일반적으로 DSP의 메모리 맵은 그 용도가 미리 정해져 있다. 본 발명에서 사용하는 TMS320C6701의 경우 칩 인에이블(Chip Enable) 신호 CE0∼CE3을 이용하여 로컬 메모리 또는 PCI 제어기의 레지스터를 액세스한다. 즉, 로컬 메모리는 CE0을 통해 액세스되고, DMA 관련 레지스터는 CE1을 통해 액세스된다.
도 3a 내지 도 3e는 DSP의 간섭없이 PCI 제어기(100)를 통한 로컬 메모리간 DMA 전송과정을 나타낸다.
로컬 메모리간 DMA 전송을 위해서 2개의 HPI-EMIF 브릿지(13-1, 13-2) 중 하나는 마스터가 되어 버스동작(전송)을 초기화하고 주소 및 데이터 전송과 기타 제어신호들을 조정하며, 다른 하나는 타겟이 되어 마스터의 제어에 따라 수동적으로 로컬 메모리를 액세스한다. 여기서, HPI-EMIF 브릿지(13-1)가 마스터가 되고, HPI-EMIF 브릿지(13-2)가 타겟이 된다.
도 3a는 HPI-EMIF 브릿지(13-1) 내부의 PCI 제어기(100)의 DMA 관련 레지스터(130)를 DSP가 설정하는 과정을 나타낸다. DSP-A(11-1)는 DMA 관련 레지스터(130)를 액세스하기 위해서 인에이블 신호 CE1과 함께 레지스터 주소를 설정한다. DSP-A(11-1)에 의한 레지스터 설정이 끝나면, 이후의 모든 데이터 전송과정은 PCI 제어기(100)에 의해 관리된다. 이를 위해서 먼저 PCI 제어기(100)가 DSP-A(11-1)로부터 로컬 버스를 사용하기 위한 권리를 획득하여야 한다.
도 3b는 PCI 제어기(100)가 SDRAM-A(12-1)를 액세스하기 위한 DSP-A(11-1)와의 통신을 나타낸다.
PCI 제어기(100)가 DSP-A(11-1)의 SDRAM-A(12-1)를 액세스하기 위해서는 우선 홀드(HOLD) 신호를 이용하여 로컬 버스의 사용권을 DSP-A(11)의 EMIF에 요청하여야 한다. 홀드 신호를 수신한 DSP-A(11-1)는 내부에 정해져 있는 메모리 요구의 우선순위에 따라 로컬 버스의 사용권을 우선순위가 가장 높은 PCI 제어기(100)에 준다. 이 때, EMIF 포트의 신호는 Hi-Z 상태로 되고(클럭은 제외), 로컬 버스 사용을 허가하는 홀드응답신호를 받으면 비로소 PCI 제어기(100)는 로컬 버스를 사용할 수 있게 된다.
도 3c는 PCI 제어기(100)가 SDRAM-A(12-1)로부터 직접 데이터를 읽는 과정을 나타낸다. 도 3b에서와 같이 PCI 제어기(100)가 로컬 버스 사용권을 획득하면 CS0를 인에이블 하여 SDRAM-A(12-1)를 액세스할 수 있게 된다. PCI 제어기(100)는 SDRAM-A(12-1)로부터 데이터를 읽어 내고 동시에 PCI 버스 사용권을 중앙 아비터로부터 할당받아 PCI 버스를 초기화하고 이것을 타겟이 되는 HPI-EMIF 브릿지(13-2)에 전송한다.
도 3d는 HPI-EMIF 브릿지(13-2) 내부의 PCI 제어기(100)가 SDRAM-B(12-2)를 액세스하기 위한 DSP-B(11-2)와의 통신을 나타낸 것으로서, 도 3b에서의 동작과정과 동일하다.
도 3e는 PCI 제어기(100)가 SDRAM-B(12-2)에 직접 데이터를 쓰는 과정을 나타낸다. PCI 제어기(100)는 마스터가 되는 HPI-EMIF 브릿지(13-1)로부터 데이터를 수신하여 이것을 SDRAM-B(12-2)에 기록한다.
도 4는 본 발명에 의한 HPI-EMIF 브릿지(13)의 내부 구성도이다.
도 4에서 도시된 바와 같이, 상기 HPI-EMIF 브릿지(13)는 크게 PCI 제어기(100) 및 내부 제어기(200)로 구성되어 있다.
PCI 제어기(100)는 HPI-EMIF 브릿지가 마스터로 동작할 때 PCI 버스를 초기화하고 PCI 버스에 주소 및 데이터를 보내는 PCI 마스터 제어기(110)와, HPI-EMIF 브릿지가 타겟으로 동작할 때 PCI 버스로부터 수신한 PCI 신호를 후술하는 SDRAM 제어기(220) 및 HPI 제어기(230)에 보내는 PCI 타겟 제어기(120)와, 로컬 메모리간 DMA 전송에 관련된 데이터를 저장하는 PCI 구성 레지스터(130)를 포함한다.
내부 제어기(200)는 상기 로컬 메모리간 DMA 전송을 제어하는 DMA 제어기(210)와, 상기 로컬 메모리의 액세스를 제어하는 SDRAM 제어기(220)와, 외부 프로세서에서 DSP로 프로그램 및 데이터를 다운로드하기 위해 DSP의 HPI를 제어하는 HPI 제어기(230)를 포함한다.
본 발명의 HPI-EMIF 브릿지에 의해 외부 시스템에서 실행에 필요한 프로그램 및 데이터를 DSP에 다운로드할 수 있고, 로컬 메모리를 액세스할 수 있으며, 병렬적으로 연결된 DSP의 로컬 메모리간의 DMA 전송을 수행할 수 있다.
즉, 로컬 메모리간의 DMA 전송은 도 2 및 도 3에서 설명한 바와 같이, DSP에 의해 PCI 구성 레지스터(130)(도 3에서는 DMA 관련 레지스터라고 표시함)가 설정된 후 PCI 제어기가 상기 DSP로부터 로컬 버스의 사용권을 획득하면 로컬 메모리간 DMA 전송이 수행된다.
이 때, 하나의 HPI-EMIF 브릿지는 마스터로 동작하고 다른 하나의 HPI-EMIF 브릿지는 타겟으로 동작하여 상기 PCI 제어기를 통해 DMA 전송이 수행되는데, 마스터로 동작하는 HPI-EMIF 브릿지에서는 PCI 제어기(100) 내의 PCI 마스터 제어기(110)가 PCI 버스를 초기화하여 주소 및 데이터를 보내고, 타겟으로 동작하는 HPI-EMIF 브릿지에서는 PCI 제어기(100) 내의 PCI 타겟 제어기(120)가 PCI 버스를 통해 주소 및 데이터를 받아 이것을 SDRAM 제어기(220)에 보낸다.
도 5는 PCI 제어기(100)와 SDRAM 제어기(220)간의 통신을 나타낸다.
PCI 제어기(100)와 SDRAM 제어기(220)간의 통신은 HPI-EMIF 브릿지가 로컬 메모리(12)를 액세스하기 위한 것으로, DMA 전송에서의 로컬 메모리 액세스 및 외부 프로세서에 의한 로컬 메모리 액세스에 동일하게 적용될 수 있다. 또한, 외부 프로세서에서 프로그램 및 데이터를 DSP에 다운로드하는 경우, 프로그램 및 데이터가 DSP의 내부 메모리에 저장되는 것이므로, SDRAM 제어기(220) 대신에 HPI 제어기(230)가 적용되는 것 외에는 PCI 제어기(100)와 SDRAM 제어기(220)간의 통신과정과 동일하다.
SDRAM(12)을 액세스하기 위해 PCI 제어기(100)의 타겟 제어기(120)가 로컬 메모리에 할당된 주소를 SDRAM 제어기(220)에 보내면, SDRAM 제어기(220)가 이 주소를 해독하여 SDRAM(12)의 CS(Chip Select) 신호를 Low로 인가하여 SDRAM(12)를 액세스할 수 있도록 한다.
다시 말해서, 외부프로세서나 마스터에서 PCI 버스를 통해 PCI 신호가 전송되면 PCI 제어기(100)에서는 홀드신호(HOLD)를 SDRAM 제어기(220)에 보내어 DSP(11)로부터 로컬 버스를 사용하겠다는 요청을 하고, DSP(11)로부터 SDRAM 제어기(220)를 통해 로컬 버스를 사용해도 좋다는 홀드응답신호(HOLDA)를 받는다.
홀드응답신호(HOLDA)를 받으면 "ADS" 및 "W_R" 신호를 통해 데이터 액세스를 위한 명령을 보낸 다음, 주소신호 "AD" 및 데이터 "DATA"를 보낸다. 주소 및 데이터를 수신한 SDRAM 제어기(220)는 이에 따라 외부 프로세서나 마스터가 로컬 메모리를 액세스할 수 있도록 제어하게 된다.
상기 신호의 흐름은 HPI 제어기(230)에도 동일하게 적용되는 바, 주소 및 데이터(프로그램)를 수신한 HPI 제어기(220)는 이에 따라 외부 프로세서가 DSP를 액세스하여 다운로드할 수 있도록 제어한다.
즉, 외부 프로세서가 로컬 메모리(12)를 액세스하는 경우 상기 PCI 타겟 제어기(120)가 PCI 버스를 통해 외부 프로세서로부터 데이터 및 주소를 수신하고, SDRAM 제어기(220)는 그 데이터 및 주소에 따라 상기 로컬 메모리의 액세스를 제어한다.
또한, 외부 프로세서에서 DSP(11)로 프로그램 및 데이터를 다운로드 하는 경우 상기 PCI 타겟 제어기(120)가 PCI 버스를 통해 외부 프로세서로부터 프로그램 및 데이터를 수신하고, HPI 제어기(230)는 상기 DSP의 HPI를 제어하여 수신한 프로그램 및 데이터를 DSP(11)에 다운로드한다.
상기와 같이 본 발명은 외부 시스템에서 실행에 필요한 프로그램 및 데이터를 DSP에 다운로드하고, 로컬 메모리를 액세스하고, 병렬적으로 연결된 DSP의 로컬 메모리간의 DMA 전송을 수행할 수 있도록 하여 효과적이며 고속으로 신호를 처리할 수 효과가 있다.
도 1은 본 발명이 적용되는 병렬신호처리 보드의 구성도.
도 2는 본 발명에 의한 HPI-EMIF 브릿지 내의 PCI 제어기에 포함된 DMA 관련 레지스터의 구조도.
도 3a 내지 도 3e는 PCI 제어기를 통한 로컬 메모리간 DMA 전송과정을 설명하기 위한 설명도.
도 4는 본 발명에 의한 HPI-EMIF 브릿지의 내부 구성도.
도 5는 PCI 제어기와 SDRAM 제어기간의 통신을 설명하기 위한 설명도.
** 도면의 주요부분에 대한 부호설명 **
11 : DSP 12 : 로컬 메모리
13 : HPI-EMIF 브릿지 14 : PCI-to-PCI 브릿지
100 : PCI 제어기 200 : 내부 제어기
110 : PCI 마스터 제어기 120 : PCI 타겟 제어기
130 : PCI 구성 레지스터 210 : DMA 제어기
220 : SDRAM 제어기 230 : HPI 제어기

Claims (6)

  1. 고성능 병렬신호처리 시스템을 위한 HPI-EMIF 브릿지로서,
    상기 HPI-EMIF 브릿지가 마스터로 동작할 때 PCI 버스를 초기화하고 PCI 버스에 주소 및 데이터를 보내는 PCI 마스터 제어기와, 상기 HPI-EMIF 브릿지가 타겟으로 동작할 때 PCI 버스로부터 수신한 PCI 신호를 후술하는 SDRAM 제어기 및 HPI 제어기에 보내는 PCI 타겟 제어기와, 로컬 메모리간 DMA 전송에 관련된 데이터를 저장하는 PCI 구성 레지스터를 포함하는 PCI 제어기와;
    상기 로컬 메모리간 DMA 전송을 제어하는 DMA 제어기와, 상기 로컬 메모리의 액세스를 제어하는 SDRAM 제어기와, 외부 프로세서에서 DSP로 프로그램 및 데이터를 다운로드하기 위해 DSP의 HPI를 제어하는 HPI 제어기를 포함하는 내부 제어기를 포함하며;
    상기 DSP에 의해 상기 PCI 구성 레지스터가 설정되면, 상기 PCI 제어기가 상기 DSP에 로컬 버스 사용권을 요청하는 홀드요구신호를 전송하여 상기 홀드요구신호에 대한 응답을 수신하면 상기 로컬 메모리간 DMA 전송을 수행하는 것을 특징으로 하는 HPI-EMIF 브릿지.
  2. 삭제
  3. 제 1항에 있어서,
    상기 HPI-EMIF 브릿지 두 개가 병렬로 연결된 경우, 하나의 HPI-EMIF 브릿지는 마스터로 동작하고 다른 하나의 HPI-EMIF 브릿지는 타겟으로 동작하여 상기 PCI 제어기를 통해 상기 로컬 메모리간 DMA 전송이 수행되는 것을 특징으로 하는 HPI-EMIF 브릿지.
  4. 제 1항에 있어서,
    외부 프로세서가 상기 로컬 메모리를 액세스하는 경우 상기 PCI 타겟 제어기가 PCI 버스를 통해 외부 프로세서로부터 데이터 및 주소를 수신하고, 상기 SDRAM 제어기는 상기 데이터 및 주소에 따라 상기 로컬 메모리의 액세스를 제어하는 것을 특징으로 HPI-EMIF 브릿지.
  5. 제 1항에 있어서,
    외부 프로세서에서 상기 DSP로 프로그램 및 데이터를 다운로드 하는 경우 상기 PCI 타겟 제어기가 PCI 버스를 통해 외부 프로세서로부터 프로그램 및 데이터를 수신하고, 상기 HPI 제어기는 상기 DSP의 HPI를 제어하여 수신한 프로그램 및 데이터를 상기 DSP에 다운로드 하는 것을 특징으로 하는 HPI-EMIF 브릿지.
  6. 제 1항에 있어서,
    상기 PCI 구성 레지스터는 DSP가 액세스하려는 로컬 메모리의 주소를 저장하목적주소 레지스터와, 현재 액세스 대상의 로컬 메모리의 액세스 시작주소를 저장하는 소스주소 레지스터와, 전송하려는 데이터의 총길이를 저장하는 전송길이 레지스터와, 인터럽트 또는 시스템에 의한 DMA 개시를 저장하는 DMA 제어 레지스터를 포함하는 것을 특징으로 하는 HPI-EMIF 브릿지.
KR10-2003-0031266A 2003-05-16 2003-05-16 고성능 병렬신호처리 시스템을 위한 hpi-emif 브릿지 KR100496652B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0031266A KR100496652B1 (ko) 2003-05-16 2003-05-16 고성능 병렬신호처리 시스템을 위한 hpi-emif 브릿지

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0031266A KR100496652B1 (ko) 2003-05-16 2003-05-16 고성능 병렬신호처리 시스템을 위한 hpi-emif 브릿지

Publications (2)

Publication Number Publication Date
KR20040098935A KR20040098935A (ko) 2004-11-26
KR100496652B1 true KR100496652B1 (ko) 2005-06-22

Family

ID=37376626

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0031266A KR100496652B1 (ko) 2003-05-16 2003-05-16 고성능 병렬신호처리 시스템을 위한 hpi-emif 브릿지

Country Status (1)

Country Link
KR (1) KR100496652B1 (ko)

Also Published As

Publication number Publication date
KR20040098935A (ko) 2004-11-26

Similar Documents

Publication Publication Date Title
KR100245818B1 (ko) 트랜잭션 및 수신지 id를 가진 공유 버스 시스템
US5819096A (en) PCI to ISA interrupt protocol converter and selection mechanism
US7062587B2 (en) Unidirectional bus architecture for SoC applications
US5978866A (en) Distributed pre-fetch buffer for multiple DMA channel device
US6167476A (en) Apparatus, method and system for accelerated graphics port bus bridges
US6094700A (en) Serial bus system for sending multiple frames of unique data
JP3403284B2 (ja) 情報処理システム及びその制御方法
EP1546898B1 (en) Interface integrated circuit device for a usb connection
US6272582B1 (en) PCI-PCI bridge allowing controlling of a plurality of PCI agents including a VGA device
US5678064A (en) Local bus-ISA bridge for supporting PIO and third party DMA data transfers to IDE drives
EP1131732B1 (en) A direct memory access engine for supporting multiple virtual direct memory access channels
US5748945A (en) Method for slave DMA emulation on a computer system bus
CN108304334B (zh) 应用处理器和包括中断控制器的集成电路
US5838995A (en) System and method for high frequency operation of I/O bus
CN112783818A (zh) 一种多核嵌入式系统的在线升级方法及系统
US6567881B1 (en) Method and apparatus for bridging a digital signal processor to a PCI bus
US7096290B2 (en) On-chip high speed data interface
CN110716756B (zh) 多晶粒的多核计算机平台及其开机方法
US6052754A (en) Centrally controlled interface scheme for promoting design reusable circuit blocks
US6990550B2 (en) Transaction duration management in a USB host controller
US7409486B2 (en) Storage system, and storage control method
US6425071B1 (en) Subsystem bridge of AMBA's ASB bus to peripheral component interconnect (PCI) bus
US20030217218A1 (en) Interface for devices having different data bus widths and data transfer method using the interface
KR100496652B1 (ko) 고성능 병렬신호처리 시스템을 위한 hpi-emif 브릿지
US5748944A (en) Apparatus for slave DMA emulation on a computer system bus

Legal Events

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

Payment date: 20130531

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140602

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150601

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee