KR0155527B1 - 복합 멀티미디어 보드의 pc 정합방법 및 그 장치 - Google Patents

복합 멀티미디어 보드의 pc 정합방법 및 그 장치

Info

Publication number
KR0155527B1
KR0155527B1 KR1019950047851A KR19950047851A KR0155527B1 KR 0155527 B1 KR0155527 B1 KR 0155527B1 KR 1019950047851 A KR1019950047851 A KR 1019950047851A KR 19950047851 A KR19950047851 A KR 19950047851A KR 0155527 B1 KR0155527 B1 KR 0155527B1
Authority
KR
South Korea
Prior art keywords
dma
buffer
data
central processing
processing unit
Prior art date
Application number
KR1019950047851A
Other languages
English (en)
Other versions
KR970049696A (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 KR1019950047851A priority Critical patent/KR0155527B1/ko
Publication of KR970049696A publication Critical patent/KR970049696A/ko
Application granted granted Critical
Publication of KR0155527B1 publication Critical patent/KR0155527B1/ko

Links

Landscapes

  • Bus Control (AREA)

Abstract

본 발명은 복합 멀티미디어 보드 상에 DMA 제어기와 이중포트 메모리를 구현함으로써, 각각의 미디어를 처리하는 장치들에서 입출력되는 미디어 스트림들을 상기 보드상의 DMA 제어기를 통하여 이중포트 메모리에 저장하고, PC의 중앙처리장치는 메모리 영역 접근을 통하여 상기 이중포트 메모리에 저장된 멀티미디어 데이터를 입출력함으로써, 시스템의 DMA 채널을 사용하지 않으면서 다량의 미디어 데이터를 신속히 처리할 수 있는 복합 멀티미디어 보드의 PC 정합방법과 그 장치에 관한 것으로서, 여러개의 복합 DMA 채널을 갖는 복합 멀티미디어 보드의 PC 정합장치에 있어서, 각각의 멀티미디어를 처리하는 장치들로부터 입출력되는 오디오, 비디오 데이터 스트림들을 PC의 중앙처리장치에 입출력하기 위한 DMA 채널을 제공하는 DMA 제어기와; 상기 DMA 제어기로부터 제공되는 DMA 채널을 통하여 상기 멀티미디어 데이터 스트림을 저장하기 위한 이중포트 메모리와; 상기 이중포트 메모리를 분할하여 각각의 DMA 채널에 대하여 소정개수의 버퍼를 할당하고, 상기 버퍼를 절환시키면서 엑세스하기 위한 제어신호를 출력하는 DMA 버퍼관리부를 포함하여 구성된다.

Description

복합 멀티미디어 보드의 PC 정합방법 및 그 장치
제1도는 본 발명에 따른 PC 정합장치의 블록 구성도.
제2도는 (a),(b)는 본 발명에 의한 데이터 입출력시 동작흐름도.
제3도는 (a),(b),(c)는 상기 제1도의 DMA 버퍼관리부 내부로직도.
* 도면의 주요부분에 대한 부호의 설명
10 : PC 신호 정합부 11 : 비디오코덱
12 : 오디오 입출력기 13 : DMA 버퍼 관리부
14 : DMA 제어기
본 발명은 여러개의 DMA 채널을 갖는 복합 멀티미디어 보드의 PC 정합방법과 그 장치에 관한 것으로, 특히 복합 멀티미디어 보드상에 DMA 제어기와 이중포트 메모리를 구현함으로써, 각각의 미디어를 처리하는 장치들에서 입출력되는 미디어 스트림들을 상기 보드상의 DMA 제어기를 통하여 이중포트 메모리에 저장하고, PC의 중앙처리장치는 메모리 영역 접근을 통하여 상기 이중포트 메모리에 저장된 멀티미디어 데이터를 입출력 함으로써, 시스템의 DMA 채널을 사용하지 않으면서 다량의 미디어 데이터를 신속히 처리할 수 있는 복합 멀티미디어 보드의 PC 정합 방법과 그 장치에 관한 것이다.
최근에는 PC에서 음악을 듣는다거나 비디오를 보는 등의 멀티미디어 데이터의 처리가 일반화되고 있으며, 데스크탑 영상회의, 멀티미디어 플리젠테이션 등을 위하여 단일 보드내에서 여러 가지의 서로 다른 오디오 데이터 스트림, 비디오 데이터 스트림 등을 동시에 처리하는 복합 멀티미디어 보드 및 프로그램이 개발되고 있다.
PC에서 멀티미디어 데이터의 입출력을 담당하는 멀티미디어 보드는 멀티미디어의 특성상 많은 양의 데이터를 장시간 지속적으로 입출력하게 되는데, 이때 PC의 중앙처리장치가 미디어 데이터의 입출력을 직접 관장할 경우, 많은 프로세서 시간이 멀티미디어 데이터의 입출력에 소요되므로 상기 중앙처리장치에 의한 데이터 변환이나 연산 등의 실질적인 데이터 처리가 불가능하다.
따라서, 종래에는 시스템상이 DMA 제어기를 사용하여 시스템의 메인 메모리와 멀티미디어 보드 간의 데이터 교환을 수행하고, PC의 중앙처리장치는 메인 메모리상의 데이터를 처리하는 형태로 멀티미디어 보드와의 정합을 이룬다.
이때, 상기 메인 메모리와 멀티미디어 보드 간의 데이터 교환을 위해 오디오나 비디오 데이터를 처리하는 멀티미디어 칩들은 DMA를 위한 로직을 내장하고 있다.
그러나, 복합 멀티미디어 보드는 단일 보드에서 처리하는 미디어수가 여러개이고, 미디어 데이터 스트림의 특성상 처리하는 미디어 데이터 스트림의 수만큼의 DMA 채널수를 필요로 하나, PC에서 제공하는 DMA 채널수가 7개로 한정되어 있고, 플로피디스크 콘트롤러나 SCSI 콘트롤러, 네트워크 인터페이스보드 등에서도 DMA를 사용하고 있어서 실제로 멀티미디어 보드가 사용할 수 있는 DMA 채널의 수는 아주 제한적이다.
또한, 미디어 스트림은 지속적으로 데이터를 입출력하므로 중앙처리장치가 미디어 데이터 스트림의 입출력 프로세싱에 있어서 가능한 한 최소한의 역할만을 수행하도록 해야 중앙처리장치의 부하를 줄일 수 있지만, 시스템의 DMA 채널을 사용할 경우, 최소한 DMA 버퍼할당 및 초기화, DMA 제어기의 초기화를 해주어야만 한다.
상기와 같이 종래의 멀티미디어 보드는 단일 미디어를 처리하는 것이 대부분으로 복합 멀티미디어 보드에서는 같은 DMA 채널이 부족되는 결점이 초래되었고, 복합 멀티미디어 보드라 하더라도 가용한 DMA 채널 범위 내에서 보드의 기능을 축소하여 사용해야 되는 단점이 있었다.
또한, 여러 개의 DMA 채널을 동시에 사용할 경우, DMA 버퍼와 채널의 초기화를 중앙처리장치가 수행해야 되는 등의 오버해드가 많은 문제점이 있었다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 복합 멀티미디어 보드상에 DMA 제어기와 이중포트 메모리를 구현하여 각각의 미디어를 처리하는 장치들에서 입출력되는 미디어 스트림들을 보드상의 DMA 제어기를 통하여 이중포트 메모리에 저장하고, 중앙처리장치는 메모리 영역 접근을 통하여 상기 이중포트 메모리에 저장된 멀티미디어 데이터를 입출력함으로써, 시스템의 DMA 채널을 사용하지 않으면서 다량의 미디어 데이터를 신속하게 처리할 수 있는 복합 멀티미디어 보드의 PC 정합방법 및 그 장치를 제공하는데 있다.
본 발명의 다른 목적은 보드상의 DMA 제어기를 자동초기화 모드로 사용할 수 있으며, 이중포트 메모리 상에 DMA 버퍼를 채널당 두 개씩 이중화하여 할당한 후, 상기 버퍼의 관리를 중앙처리장치의 개입없이 하드웨어에 의해 자동적으로 수행하게 함으로써 상기 중앙처리장치가 처음 데이터 입출력 시작시 한 번만 초기화하면, 이 후 데이터 입출력을 종료할 때까지 중앙처리장치의 부하가 최소화된 상태에서 데이터 입출력이 수행될 수 있도록 하는 복합멀티미디어 보드의 PC 정합방법 및 그 장치를 제공함에 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 특징은, 여러개의 DMA 채널을 갖는 복합 멀티미디어 보드의 PC 정합장치에 있어서, 각각의 멀티미디어를 처리하는 장치들로부터 입출력되는 오디오, 비디오 데이터 스트림들을 PC의 중앙처리장치에 입출력하기 위한 DMA 채널을 제공하는 DMA 제어기와; 상기 DMA 제어기로부터 제공되는 DMA 채널을 통하여 상기 멀티미디어 데이터 스티림을 저장하기 위한 이중포트 메모리와; 상기 이중포트 메모리를 분할하여 각각의 DMA 채널에 대하여 소정개수의 버퍼를 할당하고, 상기 버퍼를 절환시키면서 엑세스하기 위한 제어신호를 출력하는 DMA 버퍼 관리부를 포함하여 구성되는 데에 있다.
본 발명의 부가적인 특징은, 여러 개의 복합 DMA 채널을 갖는 복합 멀티미디어 보드의 PC정합장치에 있어서, DMA 제어기와 멀티미디어 데이터 입력장치를 초기화한 후, 상기 입력장치로부터 생성되는 데이터를 상기 DMA 제어기를 통해 이중포트 메모리의 버퍼에 저장하는 단계와, 상기 데이터가 저장되는 버퍼에 데이터가 다 차는 경우 DMA 버퍼관리부가 중앙처리장치로 인터럽트를 발생시켜 새로운 버퍼로 절환하는 단계와, 상기 절환된 버퍼가 비어있지 않은 경우 중앙처리장치와 DMA 버퍼관리부에 의해 상기 버퍼를 제어하여 데이터의 저장을 계속하게 한 다음, 상기 중앙처리장치가 상기 버퍼내의 데이터를 읽어오는 단계를 포함하여 수행함으로써 데이터의 입력이 이루어지는 제 1 과정과; DMA 제어기와 멀티미디어 데이터 출력장치를 초기화 한 후, 중앙처리장치가 해당 채널의 버퍼에 출력데이터를 다 채우는 경우 DMA 버퍼 관리부에 의해 DMA 동작을 수행하는 단계와, 상기 DMA가 동작되는 동안 상기 DMA 버퍼 관리부가 인터럽트를 발생시켜 중앙처리장치에 의해 다른 버퍼에 데이터가 채워지도록 하는 단계와, 상기 DMA 버퍼 관리부가 상기 데이터가 채워진 새로운 버퍼로 절환하여 DMA 동작이 계속되도록 하고, 상기 버퍼에 데이터가 준비되어 있지 않은 DMA의 동작을 제어하는 단계를 포함하여 수행함으로써 데이터의 출력이 이루어지는 제 2 과정으로 구성되는 데에 있다.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.
제1도는 본 발명에 의한 통신장치의 블록 구성도로서, 복합 멀티미디어 보드는 오디오 데이터 처리를 위한 오디어 포로세서(도시되지 않음)와 비디오 데이터 처리를 위한 비디오 코덱 프로세서(도시되지 않음)를 장착하고 있으며, PC버스(16) 슬롯에 장착되고, 중앙처리장치(도시되지 않음)와 복합 멀티미디어 보드간의 통신은 pc버스(16)로 이루어지며, 상기 오디오 프로세서와 비디오 코덱 프로세서는 각각 2개의 DMA 채널을 사용하여 중앙처리장치와 데이터를 교환한다.
본 발명에 의한 복합 멀티미디어 보드의 PC 정합장치는 PC 신호정합부(10)와, 비디오 코덱(11)과, 오디오 입출력기(12)와, DMA(Direct Memory Access) 버퍼관리(13)와, DMA 제어기(14) 및 이중포트 메모리(15)로 구성된다.
상기 DMA 제어기(14)는 DMA 동작제어에 필요한 내부 레지스터와 로직을 가지고 있으며, 4개의 독립적인 DMA 채널을 제공하고, 필요한 경우 채널확장도 가능하다.
또한, 각각의 채널에 대하여 독립적으로 동작하며 자동 초기화 기능이 있다.
상기 이중포트 메모리(15)는 두 개의 포트를 제공하며, 각각의 포트를 통하여 동일한 메모리 위치를 동시에 독립적으로 접근할 수 있으며, 한 포트 중앙처리장치가 사용하고 다른 한 포트는 DAM 제어기가 사용한다.
데이터 입력체널인 경우 DMA 제어기(14)가 이중포트 메모리(15)에 데이터를 기록하면 중앙처리장치는 입력된 데이터를 읽고, 출력채널인 경우에는 중앙처리장치가 기록하고 DMA 제어기(14)가 읽어간다.
각각의 DMA 채널에 할당된 메모리공간은 다시 두 개로 나뉘어져서 각각이 DMA 버퍼로 사용되며, 한 버퍼가 다 차게 되면 상기 DMA 버퍼관리부(13)의 제어신호에 따라 자동으로 다른 버퍼로 버퍼절환이 일어난다.
상기 비디오 코덱(11)은 카메라로 입력되는 비디오 데이터를 압축하고, 중앙처리장치로부터 입력되는 압축된 비디오 데이터를 복원한다.
이때, 압축된 데이터를 중앙처리장치로 넘겨주기 위하여 입력 DMA 채널을 사용하고, 중앙처리장치로부터 압축된 비디오 데이터를 받기 위하여 출력 DMA 채널을 사용한다.
상기 오디오 입출력기(12)는 마이크로 입력되는 오디오 데이터를 디지탈화하여 중앙처리장치로 입력하고, 중앙처리장치가 출력하는 디지탈 데이터를 받아서 스피커로 출력한다.
이때, 데이터 입력을 위해서는 입력 DMA 채널을 사용하고, 데이터 출력을 위해서는 출력 DMA 채널을 이용한다.
상기 DMA 버퍼관리부(13)는 이중포트 메모리(15)를 분할하여 각각의 DMA 채널에 대하여 두 개의 버퍼를 할당하고, 이 두 개의 버퍼를 절환시키고 엑세스하는데 필요한 신호를 제공한다.
입력채널의 경우에는 먼저 한 개의 버퍼를 할당해주고, 버퍼가 다찼을 때 다른 버퍼로 절환시키면서 중앙처리장치에 버퍼가 다 찼음을 알려준다.
반면에, 출력채널의 경우에는 중앙처리장치가 한 개의 버퍼를 다 채우면 DMA 동작을 시작하고, 버퍼가 다 비게 되면 중앙처리 장치에서 버퍼가 비었음을 알려주어 상기 중앙처리장치가 데이터를 채워놓은 다른 버퍼로 절환시켜 DMA 동작이 계속되도록 한다.
상기 PC신호 정합부(10)는 ISA버스 신호를 디코딩하거나 버퍼링하여 보드상의 각 부와 정합시켜준다.
제2도의 (a)는 본 발명에 의한 데이터 입력을 위한 동작흐름도이고, 제2도의 (b)는 데이터 출력을 위한 동작흐름도이다.
상기 제2도의(a)를 참조하여 데이터 입력을 설명하면 다음과 같다.
먼저, 중앙처리장치가 DMA 제어기의 해당 채널에 DMA처리에 필요한 초기화를 수행함으로써 데이터의 입력이 시작된다(S21).
이때, 상기 DMA 제어기의 해당 채널을 자동초기화모드로 함으로써 이후 중앙처리장치가 데이터 입력이 종료될 때까지 더 이상의 DMA 채널 초기화 관련 부하가 없도록 한다.
이어서, 상기 단계(S21)의 DMA 제어기의 초기화가 끝나면 중앙처리장치는 해당 채널로 입력될 데이터를 생성하는 비디오 코덱이나 오디오 입출력기 등의 데이터 입력장치의 초기화를 수행한다(S22).
상기 초기화 단계(S22)가 끝나면 비디오 코덱이나 오디오 입출력기는 일정한 데이터율로 비디오 데이터나 오디오 데이터를 계속 생성하고, 생성된 데이터는 DMA 과정을 통하여 이중포트 메모리의 지정된 버퍼에 저장된다(S23).
그리고 나서, 상기 비디오 코덱이나 오디오 입출력기로부터 출력되어 상기 이중포트 메모리의 버퍼에 저장되는 데이터의 입력이 종료되었는지를 계속해서 판단하여(S24), 데이터 입력이 종료되었다면 데이터 입력동작의 수행을 종료하고, 상기 단계(S24)에서 데이터 입력이 계속해서 이루어지면 상기 중앙처리장치는 상기 DMA 동작을 계속 수행하면서 이전의 버퍼데이터를 읽는다(S25).
상기 단계(S25) 수행에 이어, 상기 버퍼가 다 찬는지를 확인하여(S26), 상기 버퍼에 데이터가 다 차게 되면 DMA 버퍼관리부는 중앙처리장치로 인터립트를 발생시키면서 새로운 버퍼로 절환시킨다(S27).
상기 단계(S27)에서 절환된 새로운 버퍼가 비어 있게 되는 경우라면 중앙처리장치의 개입없이 DMA 동작이 계속될 수 있도록 한다.(S28).
이때, 버퍼가 절환되어 DMA 동작이 계속되는 동안 중앙처리장치는 인터럽트를 받고 DMA 제어기 내의 레지스터를 확인하여 해당 채널을 확인한 후 메모리 접근으로 입력된 데이터를 처리하여 해당 버퍼가 다시 사용될 수 있도록 비워준다.
만약, 이전에 사용한 버퍼가 비지 않은 상태로 있으면 DMA 버퍼관리부는 이를 확인하여 버퍼가 빌 때까지 DMA 동작을 중지시킨다.
제2도의 (b)를 참고하여 데이터 출력을 설명하면, 데이터 입력의 경우와 마찬가지로 먼저 중앙처리장치가 DMA 제어기의 해당 채널을 자동초기화모드로 초기화를 수행하고(S21'), 비디오 코덱이나 오디오 입출력기를 초기화한다(S22').
이어서, 중앙처리장치가 해당채널의 버퍼에 출력할 데이터를 채우고, 한 개의 버퍼가 다 차면 DMA 버퍼관리부가 이를 감지하여 DMA 동작을 시작한다.(S23')
그리고 나서, 데이터의 출력이 끝난는지를 판단하여(S24') 데이터 출력이 계속되는 경우이면, 중앙처리장치는 다음 버퍼에 데이터를 채워두고, 버퍼의 데이터를 다 출력하고 나면 DMA 버퍼관리부는 중앙처리장치가 데이터를 채워놓은 해당채널의 다음 버퍼로 절환하여 DMA 동작이 계속되도록 중앙처리장치에 인터럽트 발생시킨다(S25').
이어, 상기 단계(S25')의 절환된 버퍼가 비어있는지를 판단하여(S26') 버퍼가 비어 있다면, 중앙처리장치는 인터럽트를 받고 DMA 제어기 내의 레지스터를 확인하여 해당 채널을 확인한 후 상기 비어있는 버퍼에 데이터를 채운다(S27').
마지막으로, 새로운 버퍼가 다 찬는지를 판단하여(S28') 상기 버퍼가 차지 않은 경우, 즉 한 버퍼의 DMA가 끝났으나 다른 버퍼에 데이터가 준비되어 있지 않는 경우에는 DMA 버퍼관리부가 이를 확인하여 상기 버퍼가 찰 때까지 DMA 동작을 중지시킨다.
제3도는 DMA 버퍼관리부의 내부 로직도로서, (a)는 버퍼 엑세스를 위한 주소발생 및 중앙처리장치에 거는 인터럽트신호 발생로직이고, (b)는 입력채널의 버퍼상태에 따른 DRQ(DMA Request) 신호 마스킹로직이며, (c)는 출력채널의 버퍼상태에 따른 DRQ 신호 마킹로직이다.
상기 버퍼 액세스를 위한 주소는 DMA 제어기에서 출력되는 버퍼 어드레스신호와 각 채널의 DACK(DMA Acknowledge) 신호를 이용하여 이중포트 메모리에서 DMA 제어기가 사용하는 포트의 상위 3비트의 어드레스 신호로 만들어진다.
중앙처리장치가 DMA 제어기를 초기화할 때, 해당채널의 레지스터에 초기값을 기록하기 위한 ISA 버스 신호를 이용하여 PC 신호 정합부에서 만들어진 /CLEAR 신호는 F/F의 초기출력을 0으로 만들기 위해 사용한다.
D F/F의 D 입력은 출력 /Q에 연결하여, 클럭이 한 번 발생할 때마다 출력 Q가 토글되도록 한다.
즉, 상기 출력 Q는 채널에 할당된 두 개의 버퍼중에서 한 개를 지정하는 버퍼지정(BFSEL) 신호로 사용되며, 값이 0일 때는 버퍼 0을, 그리고 값이 1일 때에는 버퍼 1을 각각 가리킨다.
클럭신호는 이중포트 메모리에 입력되는 어드레스 신호를 디코딩하여 만들어지며, 각 채널버퍼의 마지막 어드레스가 엑세스되면 한 번씩 발생한다.
이 버퍼지정(BFSEL) 출력은 뒷단의 D F/F에서 1 DMA 사이클(cycle)만큼 지연되었다가 현재 버퍼지정(CBFSEL) 신호로 출력된다.
각각의 DMA 채널에 대한 현재버퍼지정신호들 중에서 현재 DMA를 수행중인 채널의 현재버퍼지정신호는 DACK 신호에 의해 3비트의 상위 어드레스 중 가장 낮은 비트의 어드레스신호(AL)로 선택된다.
다른 2비트는 4개의 DACK 신호를 조합하여 만들어지며, 또한 중앙처리장치에 거는 인터럽트 신호는 각 채널의 DACK 신호를 각각의 DMA 제어기에서 출력되는 /EOP 신호와 AND 한 신호를 전부 OR하여 사용한다.
상기 신호는 DMA 제어기가 한 버퍼를 다 처리하면 발생하고, 중앙처리장치는 이 신호를 받은 후 DMA 제어기의 내부 레지스터를 확인하여 동작이 종료된 채널을 확인한다.
입력채널의 버퍼상태에 따른 DRQ 신호 마스킹로직은 두 개의 입력버퍼를 모두 채웠으나 중앙처리장치에서 버퍼를 읽어가지 않아서 더 이상의 DMA 동작이 일어날 수 없을 때, 데이터 입력장치로부터 요구되는 DRQ 신호를 마스킹한다.
각 채널에 두 개의 D F/F이 있어서 채널에 합당된 두 버퍼의 상태를 래치하여 D F/F의 출력 Q가 클럭입력과 함께 토글되어 출력이 0이면 버퍼가 빈상태이고, 출력이 1이면 버퍼가 차있는 상태를 나타낸다.
먼저 DMA 제어기 초기화시 PC신호 정합부에서 만들어진 /CLEAR 신호에 의해 모든 버퍼는 빈상태로 표시되고, 버퍼 0에 데이터가 차게 되면 /EOP, /DACK# 및 BFSEL를 조합하여 만들어진 /BFOFUL#, /BF1FUL# 신호에 의해 버퍼에 할당된 D F/F의 출력이 1로 바뀌고, 중앙처리장치가 버퍼의 최상위 어드레스의 데이터를 읽어가며 발생되는 /BF0EPTY#, /BF1EPTY# 신호에 의해 D F/F 의 출력은 0으로 된다.
이때, 상기 D F/F의 출력은 데이터입력장치로부터 오는 DRQ(DRQ_DEV) 신호와 AND 되어 버퍼가 차 있을 때에는 DRQ 신호가 DMA 제어기에 입력될 수 없도록 마스킹한다.
출력채널의 버퍼상태에 따른 DRQ 신호 마스킹로직은 입력채널의 경우와 동일한 로직으로 구성되고 동작하나, 단지 D F/F의 클럭입력이 되는 /BF0FUL#, /BF1FUL# 신호는 중앙처리장치가 버퍼의 최상위 어드레스에 데이터를 기록하면 발생되고, 상기 /BF0EPTY#, /BF1FUL# 신호는 /EOP, /DACK#, BFSEL이 조합되어 만들어지는 점이 다르다.
이상과 같이, 본 발명은 보드 상에 DMA 제어기와 이중포트 메모리를 장착하고, 상기 이중포트 메모리를 DMA 버퍼로 미리 할당하여 고정시켜 사용함으로써 시스템 자원인 시스템 DMA 채널을 필요로 하지 않을 뿐만 아니라, 중앙처리장치가 담당하는 DMA 버퍼를 위한 메모리 할당과정이 필요없으며, 각 채널당 두 개씩 할당되어 있는 버퍼의 교체를 하드웨어적으로 수행함으로써 데이터 입출력시 중앙처리장치의 부하가 최소화된 상태에서 지속적으로 데이터 입출력이 가능하고, 중앙처리장치는 이중포트 메모리에 저장된 미디어 데이터를 메모리접근으로 처리할 수 있음에 따라 많은 양의 데이터를 신속하게 처리하는 효과가 있다.

Claims (3)

  1. 여러 개의 복합 DMA 채널을 갖는 복합 멀티미디어 보드의 PC 정합장치에 있어서, 각각의 멀티미디어를 처리하는 장치들로부터 입출력되는 오디오, 비디오 데이터 스트림들을 PC의 중앙처리장치에 입출력 하기 위한 DMA 채널을 제공하는 DMA제어기와; 상기 DMA 제어기로부터 제공되는 DMA 채널을 통하여 상기 멀티미디어 데이터 스트림을 저장하기 위한 이중포트 메모리와; 상기 이중포트 메모리를 분할하여 각각의 DMA 채널에 대하여 소정개수의 버퍼를 할당하고, 상기 버퍼를 절환시키면서 엑세스 하기 위한 제어신호를 출력하는 DMA 버퍼 관리부를 포함하여 구성되어 상기 중앙처리장치가 메모리 영역접근을 통하여 상기 이중포트 메모리에 저장된 멀티미디어 데이터를 입출력할 수 있는 것을 특징으로 하는 복합 멀티미디어 보드의 PC 정합장치.
  2. 제 1 항에 있어서, 상기 DMA 제어기가 자동초기화 모드로 사용되고, 상기 이중포트 메모리상의 DMA 버퍼가 이중화됨에 따라 중앙처리장치가 처음 데이터 입출력 시작시 한 번만 초기화하여 중앙처리장치의 부하를 최소화할 수 있는 것을 특징으로 하는 복합 멀티미디어 보드의 PC 정합장치.
  3. 여러 개의 복합 DMA 채널을 갖는 복합 멀티미디어 보드의 PC 정합장치에 있어서, DMA 제어기와 멀티미디어데이타 입력장치를 초기화한 후, 상기 입력장치로부터 생성되는 데이터를 상기 DMA 제어기를 통해 이중포트 메모리의 버퍼에 저장하는 단계와, 상기 데이터가 저장되는 버퍼에 데이터가 다 차는 경우 DMA 버퍼관리부가 중앙처리장치로 인터럽트를 발생시켜 새로운 버퍼로 절환하는 단계와, 상기 절환된 버퍼가 비이있지 않은 경우 중앙처리장치와 DMA 버퍼관리부에 의해 상기 버퍼를 제어하여 데이터의 저장을 계속하게 한 다음, 상기 중앙처리장치가 상기 버퍼내의 데이터를 읽어오는 단계를 포함하여 수행함으로써 데이터의 입력이 이루어지는 제 1 과정과; DMA 제어기와 멀티미디어데이타 출력장치를 초기화 한 후, 중앙처리장치가 해당 채널의 버퍼에 출력데이터를 다 채우는 경우 DMA 버퍼 관리부에 의해 DMA 동작을 수행하는 단계와, 상기 DMA가 동작되는 동안 상기 DMA 버퍼 관리부가 인터럽트를 발생시켜 중앙처리장치에 의해 다른 버퍼에 데이터가 채워지도록 하는 단계와, 상기 DMA 버퍼관리부가 상기 데이터가 채워진 새로운 버퍼로 절환하여 DMA 동작이 계속되도록 하고, 상기 버퍼에 데이터가 준비되어 있지 않은 DMA의 동작을 제어하는 단계를 포함하여 수행함으로써 데이터의 출력이 이루어지는 제 2 과정으로 구성되는 것을 특징으로 하는 복합 멀티미디어 보드의 PC 정합방법.
KR1019950047851A 1995-12-08 1995-12-08 복합 멀티미디어 보드의 pc 정합방법 및 그 장치 KR0155527B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950047851A KR0155527B1 (ko) 1995-12-08 1995-12-08 복합 멀티미디어 보드의 pc 정합방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950047851A KR0155527B1 (ko) 1995-12-08 1995-12-08 복합 멀티미디어 보드의 pc 정합방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR970049696A KR970049696A (ko) 1997-07-29
KR0155527B1 true KR0155527B1 (ko) 1998-11-16

Family

ID=19438600

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950047851A KR0155527B1 (ko) 1995-12-08 1995-12-08 복합 멀티미디어 보드의 pc 정합방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR0155527B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100375816B1 (ko) * 2000-10-10 2003-03-15 조용범 디지털신호 처리 프로세서의 hpi와 dma인터페이스를 가진 pci 버스 컨트롤러
KR100347329B1 (ko) * 2000-10-13 2002-08-07 주식회사 하이닉스반도체 Pc 및 운용자 정합 프로세서간 데이터 송/수신 장치 및그 방법

Also Published As

Publication number Publication date
KR970049696A (ko) 1997-07-29

Similar Documents

Publication Publication Date Title
US5812789A (en) Video and/or audio decompression and/or compression device that shares a memory interface
US6052744A (en) System and method for transferring concurrent multi-media streams over a loosely coupled I/O bus
US5732224A (en) Computer system having a dedicated multimedia engine including multimedia memory
US5487035A (en) Method of multiplexed data reading/writing suitable for video-on-demand system
US5696940A (en) Apparatus and method for sharing first-in first-out memory space between two streams of data
JPH0827782B2 (ja) マルチメディア・コンピュータ・システム、該システムの動作を制御する方法及びマルチメディア・コンピュータ・サブシステム
JP2002506251A (ja) 共有メモリを有するマルチプロセッサ装置
KR19980063551A (ko) 신호 처리 장치 및 소프트웨어
US5977995A (en) Computer system for displaying video and graphical data
WO1997044742A1 (en) Computer system having a multimedia engine coupled to a real-time data cache
KR20010029924A (ko) 데이터 처리장치
KR0155527B1 (ko) 복합 멀티미디어 보드의 pc 정합방법 및 그 장치
US6072543A (en) Priority order processing circuit and method for an MPEG system
JP4728083B2 (ja) メディア処理装置
KR100685150B1 (ko) 셋톱박스집적회로
JPH04295947A (ja) 動的割振りが可能なバスを備えるコンピュータ
JP3327900B2 (ja) データ処理装置
JP2624817B2 (ja) 通信アダプタ
US7068280B1 (en) Method and apparatus to provide overlay buffering
KR100469284B1 (ko) 디지털 티브이의 버퍼 뱅크 제어 장치
JP2001067306A (ja) バスインターフェース装置およびデータ転送装置
JP2002196975A (ja) データ処理装置
KR0151240B1 (ko) 전전자 교환기 신호장치내 로컬 메모리 억세스 회로
KR100395311B1 (ko) 프로세스 제어 방법
US7093053B2 (en) Console chip and single memory bus system

Legal Events

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

Payment date: 20070702

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee