KR100513738B1 - 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법 - Google Patents

비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법 Download PDF

Info

Publication number
KR100513738B1
KR100513738B1 KR10-2003-0041529A KR20030041529A KR100513738B1 KR 100513738 B1 KR100513738 B1 KR 100513738B1 KR 20030041529 A KR20030041529 A KR 20030041529A KR 100513738 B1 KR100513738 B1 KR 100513738B1
Authority
KR
South Korea
Prior art keywords
video data
transmission amount
amount
block
start address
Prior art date
Application number
KR10-2003-0041529A
Other languages
English (en)
Other versions
KR20050000927A (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-0041529A priority Critical patent/KR100513738B1/ko
Publication of KR20050000927A publication Critical patent/KR20050000927A/ko
Application granted granted Critical
Publication of KR100513738B1 publication Critical patent/KR100513738B1/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/1075Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data
    • G11B2020/10759Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Record Information Processing For Printing (AREA)
  • Bus Control (AREA)
  • Storing Facsimile Image Data (AREA)

Abstract

비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법이 개시된다. 본 발명에 따른 비디오데이터 제어부는, 프레임버퍼의 소정 제1시작번지로부터 독출단위인 블록전송량만큼 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하는 제1DMA엔진 및, 제1시작번지에 블록전송량만큼 증가한 번지인 제2시작번지로부터 블록전송량만큼 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하는 제2DMA엔진을 포함하고, 제1 및 제2시작번지는, 비디오데이터의 독출/저장 후 제1 및 제2DMA엔진에 의해 블록전송량의 이배수만큼 각각 증가하여 업데이트된다. 본 발명에 의하면 2개의 DMA엔진을 구비하더라도 별도로 성능이 향상된 중앙처리장치를 설치하거나 성능 좋은 중앙처리장치로 교체할 필요가 없다.

Description

비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법{a video data control unit and a loading/storing method of video data thereof}
본 발명은 프레임버퍼의 시작번지에 저장된 비디오데이터를 독출하여 DMA엔진 내 내부버퍼의 도착번지에 저장하고, 총전송량만큼 저장이 완료된 경우 저장된 상기 비디오데이터를 상기 DMA엔진의 비디오데이터 전송부를 통해 레이저 스캐닝부로 전송하는 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법에 관한 것이다.
도 1은 종래의 비디오데이터 제어부(10)의 내부구조를 도시한 블록도이다.
종래의 비디오데이터 제어부(10)는 중앙처리장치(11), 프레임버퍼(12), 및 비디오데이터 제어로직부(13)를 포함한다. 비디오데이터 제어부(10)는 사용자컴퓨터(미도시)로부터의 인쇄데이터를 입력받고, 이에 기초하여 레이저 스캐닝부(20)의 레이저 다이오드(미도시)에 적용가능한 비디오데이터를 생성한다.
중앙처리장치(11)는 비디오데이터 제어부(10)의 모든 로직을 제어하고, 비디오데이터를 생성하는 역할을 수행한다. 그리고 비디오데이터가 생성되면 DMA엔진(13-1) 내의 제어용 레지스터들을 초기화하는 DMA초기화 과정을 통해 각각 저장될 값을 설정한다. 프레임버퍼(12)는 비디오데이터 제어부(10)의 시스템 메모리로서, 프린터 내 외부메모리(미도시)로부터의 인쇄데이터를 일시저장하여 중앙처리장치(11)에서 비디오데이터가 생성되면 이를 다시 재저장한다. 비디오데이터 제어로직부(13)는 비디오데이터 제어부(10) 및 레이저 스캐닝부(20) 사이를 인터페이싱한다. 비디오데이터 제어로직부(13)에는 DMA엔진(13-1)이 구비된다.
DMA엔진(13-1)은 레이저 스캐닝부(20)를 통해 동기신호를 입력받는다. 그리고 프레임버퍼(12)에 일시저장된 비디오데이터를 독출하여 입력된 동기신호에 동기시킨다. DMA엔진(13-1)은 동기된 비디오데이터를 레이저 스캐닝부(20)로 출력한다. 레이저 스캐닝부(20)에는 레이저 다이오드(미도시)가 구비된다. 레이저 다이오드(미도시)는 동기된 비디오데이터에 기초하여 비디오광을 조사한다. 그러면 조사된 비디오광은 소정의 과정을 통해 인쇄용지(미도시)에 소정 화상으로 형성된다.
상기와 같은 비디오데이터 제어부를 채용한 레이저프린터가 널리 보급되고 있으며 그에 따라 레이저프린터의 처리속도 및 인쇄속도의 향상을 위해 많은 연구가 진행되고 있다. 일반적으로 레이저프린터가 고속화되기 위해서는 이에 사용되는 내부 구성요소가 고속화되어야 한다. 그러나 레이저프린터에서 사용되는 레이저 스캐닝부의 처리속도는 현재까지 일정범위 이상의 속도를 넘지 못하는 한계를 갖고 있다. 이에 대한 주요원인은 레이저 스캐닝부 내 미러(mirror)를 구동시키기 위한 모터의 속도에 한계가 있기 때문이다.
이에 따라, 최근에는 레이저 스캐닝부의 모터속도는 변화시키지 않는 대신에 입력되는 비디오데이터의 처리량을 증폭시켜 모터속도의 약점을 보완하고자 하는 연구가 진행되고 있다. 그에 대한 일 방법으로는, 기존에는 한 개의 비디오데이터 입력라인을 통해 비디오데이터를 입력받아서 한 개의 레이저 다이오드에서 비디오 광을 조사하였던 것을, 개선된 레이저 스캐닝부에서는 두 개의 비디오데이터 입력라인을 통해 비디오데이터를 입력받아서 두 개의 레이저 다이오드에서 비디오 광을 조사하여 인쇄하는 것을 도입하는 것이다. 이를 통해 기존에 비해 비디오데이터가 2 배로 처리되어 미러 모터의 속도가 기존과 대비하여 동일하더라도 레이저프린터의 인쇄속도를 2 배만큼 빠르게 할 수 있다.
그러나 기존의 레이저프린터에서는 2개의 레이저 다이오드를 채용하면서 DMA엔진을 도 1과 같이 1개만 구비하고 있었다. 이와 같이 1개의 DMA엔진을 구비할 경우 1 페이지를 인쇄하면서 DMA초기화 동작 및 DMA종료 동작(중앙처리장치에 인터럽트 발생)이 복수 번 발생되게 된다. 이에 따라 중앙처리장치에서 복수 번의 제어가 요구되며, 그로 인해 중앙처리장치의 성능이 저하된다는 문제점이 있었다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 듀얼 빔 레이저프린터에서 2개의 DMA엔진이 구비되어 인쇄물 1 페이지를 인쇄할 때 DMA종료 동작를 한 번만 발생되도록 할 수 있는 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법을 제공하는 데 있다.
본 발명의 또 다른 목적은, 가상전송량 개념을 도입하여 2개의 DMA엔진 내의 내부버퍼에 저장된 비디오데이터가 상호 동일하지 않지만 각 내부버퍼에 저장된 비디오데이터를 합하면 사용자 인쇄요구 비디오데이터가 되는 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법을 제공하는 데 있다.
상기 목적을 달성하기 위해서는, 본 발명에 따른 비디오데이터 제어부는 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하고, 소정량만큼 상기 비디오데이터의 저장이 완료된 경우 저장된 상기 비디오데이터를 외부 레이저 스캐닝부로 전송하는 비디오데이터 제어부에 있어서, 상기 프레임버퍼의 소정 제1시작번지로부터 독출단위인 블록전송량만큼 상기 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하는 제1DMA엔진 및, 상기 제1시작번지에 상기 블록전송량만큼 증가한 번지인 제2시작번지로부터 상기 블록전송량만큼 상기 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하는 제2DMA엔진을 포함하고, 상기 제1 및 제2시작번지는, 상기 비디오데이터의 독출/저장 후 상기 제1 및 제2DMA엔진에 의해 상기 블록전송량의 이배수만큼 각각 증가하여 업데이트된다.
상기 제1 및 제2DMA엔진은, 상기 블록전송량과 동일비트로서 비디오데이터의 전송없이 상기 시작번지의 증가를 위한 가상전송량을 저장한 가상전송량레지스터 및 상기 시작번지로부터 시작하여 상기 블록전송량 단위로 비디오데이터가 독출/저장되도록 제어하고, 상기 블록전송량만큼 상기 비디오데이터가 저장된 경우, 상기 시작번지를 상기 블록전송량 및 상기 가상전송량의 합만큼 증가시키도록 제어하는 DMA제어부를 포함한다.
또한 상기 목적을 달성하기 위한 본 발명에 따른 비디오데이터 독출/저장방법은, 프레임버퍼의 소정 시작번지에 저장된 비디오데이터를 상기 프레임버퍼로부터 독출단위인 블록전송량만큼 독출하여 DMA엔진에 저장하고, 상기 비디오데이터의 소정 총전송량만큼 상기 비디오데이터의 저장이 완료된 경우 저장된 상기 비디오데이터를 상기 DMA엔진를 통해 외부 레이저 스캐닝부로 전송하는 비디오데이터 제어부의 독출/저장방법에 있어서, (a) 상기 시작번지에 저장된 비디오데이터를 독출하여 상기 DMA엔진에 저장하는 단계, (b) 저장된 상기 비디오데이터의 비트수 만큼 상기 블록전송량 및 상기 총전송량을 감산하는 단계, (c) 상기 블록전송량이 0인지여부를 판단하는 단계, (d) 상기 (c)단계의 판단 결과, 상기 블록전송량이 0인 경우, 상기 총전송량이 0인지여부를 판단하는 단계 및, (e) 상기 (d)단계의 판단 결과, 상기 총전송량이 0인 경우, 상기 내부버퍼에 저장된 비디오데이터를 상기 레이저 스캐닝부로 전송하는 단계를 포함한다.
상기 비디오데이터 제어부는, 상기 블록전송량과 동일비트로서 비디오데이터의 전송없이 상기 시작번지의 증가를 위한 가상전송량을 저장한 가상전송량레지스터를 더 포함하고, 상기 (d)단계의 판단 결과, 상기 총전송량이 0이 아닌 경우, 상기 블록전송량을 소정 초기값으로 재설정하고, 상기 시작번지를 상기 블록전송량 및 상기 가상전송량의 합만큼 증가시키고, 상기 (a)단계 내지 상기 (d)단계를 상기 총전송량이 0이 될 때까지 반복하는 단계를 더 포함한다.
이하에서는 도면을 참조하여 본 발명의 일실시예를 보다 상세하게 설명한다.
도 2은 본 발명에 따른 비디오데이터 제어부의 내부구조를 도시한 블록도이다.
본 발명에 따른 비디오데이터 제어부(100)는 중앙처리장치(110), 프레임버퍼(120), 및 비디오데이터 제어로직부(130)를 구비한다. 그리고 비디오데이터 제어로직부(130)는 2개의 DMA엔진(131,132)을 구비하고, 이를 각각 제1DMA엔진(131), 및 제2DMA엔진(132)로 구분한다. 중앙처리장치(110), 프레임버퍼(120), 및 비디오데이터 제어로직부(130)의 설명은 도 1에서와 동일하므로 생략한다. 제1DMA엔진(131), 및 제2DMA엔진(132)는 프레임버퍼(120)로부터 상호 상이한 비디오데이터를 각각 독출하여 각 내부버퍼에 저장시키고, 각 비디오데이터 전송부를 통해 레이저 스캐닝부(200)에 전송시킨다. 이때 레이저 스캐닝부(200)에는 2개의 레이저 다이오드가 구비되므로 각 비디오데이터 전송부로부터 전송된 각 비디오데이터는 2개의 레이저 다이오드에 대응되게 적용된다.
도 3은 도 2의 제1DMA엔진의 내부구성을 도시한 블록도이다.
제1DMA엔진(131)은 제1DMA제어부(131-1), 제1내부버퍼(131-7), 제1비디오데이터 전송부(131-8), 제1시작번지레지스터(131-2), 제1도착번지레지스터(131-3), 제1총전송량레지스터(131-4), 제1블록전송량레지스터(131-5), 및 제1가상전송량레지스터(131-6)를 구비한다.
제1DMA제어부(131-1)는 제1DMA엔진(131)에 구성되어 있는 모든 로직들을 제어한다. 그리고 제1DMA제어부(131-1)는 프레임버퍼(120) 내의 비디오데이터를 독출하여 제1내부버퍼(131-7)에 저장한다. 제1내부버퍼(131-7)는 제1DMA제어부(131-1)에 의해 독출되는 비디오데이터를 일시저장하는 메모리이다. 제1비디오데이터 전송부(131-8)는 레이저 스캐닝부(200)로부터 동기신호를 입력받는다. 그리고 제1비디오데이터 전송부(131-8)는 제1내부버퍼(131-7)에 저장된 비디오데이터를 독출하여 입력된 동기신호에 동기시킨다. 그리고 동기된 비디오데이터를 레이저 스캐닝부(200)로 전송한다.
그리고 제1DMA제어부(131-1)는 DMA동작이 수행됨에 따라 제어용 레지스터들에 저장된 값들을 소정만큼 증가시키거나 소정만큼 감소시킨다. 이에 대한 설명은 하기에 상세히 언급될 것이다.
제1시작번지레지스터(131-2)는 중앙처리장치(110)의 DMA초기화에 의해 설정되고, DMA동작의 제1시작번지를 저장하는 레지스터이다. 여기서 제1시작번지는 프레임버퍼(120)에서 비디오데이터를 독출할 번지를 의미한다. 제1시작번지는 DMA동작의 개시부터 DMA동작의 종료까지 비디오데이터가 1 비트씩 비디오데이터가 독출됨에 따라 1비트씩 증가된다. 그리고 DMA동작 중 제1블록전송량이 '0'이 되고, 제1총전송량이 '0'가 아닌 경우, 제1DMA제어부(131-1)에 의해 제1블록전송량 및 제1가상전송량의 합만큼 증가한 값으로 재설정된다.
제1도착번지레지스터(131-3)는 중앙처리장치(110)의 DMA초기화에 의해 설정되고, DMA동작에 의해 독출된 비디오데이터가 저장될 제1내부버퍼(131-7)의 저장위치를 지시하는 제1도착번지를 저장한다. 상기와 마찬가지로 비디오데이터가 1 비트씩 비디오데이터가 독출됨에 따라 1비트씩 증가된다. 그리고 DMA동작 중 제1블록전송량이 '0'이 되고, 제1총전송량이 '0'가 아닌 경우, 제1DMA제어부(131-1)에 의해 제1블록전송량 및 제1가상전송량의 합만큼 증가한 값으로 재설정된다.
제1총전송량레지스터(131-4)는 중앙처리장치(110)의 DMA초기화에 의해 설정되고, 제1총전송량에 대한 데이터가 저장된다. 여기서 제1총전송량은 DMA동작에 의해 프레임버퍼(120)로부터 제1내부버퍼(131-7)로 독출되어 저장될 비디오데이터의 양을 의미한다. 프레임버퍼(120)로부터 제1내부버퍼(131-7)로 1 비트씩 비디오데이터가 저장됨에 따라 제1총전송량은 1비트씩 감소한다. 그리고 제1총전송량이 '0'이 된 경우, 제1DMA제어부(131-1)는 인터럽트(interrupt)를 발생시켜 중앙처리장치(110)에게 DMA동작이 종료됨을 알린다.
제1블록전송량레지스터(131-5)는 중앙처리장치(110)의 DMA초기화에 의해 설정된 제1블록전송량에 대한 데이터를 저장한다. 여기서 제1블록전송량은 DMA동작으로 프레임버퍼(120)로부터 독출되어 제1내부버퍼(131-7)에 저장될 독출단위를 의미한다. 이는 또한 레이저 스캐닝부(200)의 레이저 다이오드(미도시)에서 적용될 단위가 될 수 있다. 마찬가지로 프레임버퍼(120)로부터 제1내부버퍼(131-7)로 1 비트씩 비디오데이터가 저장됨에 따라 제1블록전송량은 1비트씩 감소한다. 그리고 DMA동작 중 제1블록전송량이 '0'이 되고, 제1총전송량이 '0'가 아닌 경우, 제1DMA제어부(131-1)에 의해 초기설정된 소정 값으로 재설정된다.
제1가상전송량레지스터(131-6)는 중앙처리장치(110)에 의해 설정된 제1가상전송량에 대한 데이터를 저장한다. 여기서 제1가상전송량에 의해서는 비디오데이터의 독출/저장은 수행되지 않으며, 이를 통해 제1시작번지 및 제1도착번지를 증가시켜 제1DMA엔진에 의해 독출되는 비디오데이터가 가상전송량에 해당되는 비디오데이터는 독출하지 않고 그 다음 비디오데이터를 독출하도록 하기 위한 것이다. 따라서 제1DMA엔진(131) 및 제2DMA엔진(132)은 각각 상이한 비디오데이터를 저장하게 된다. 제1가상전송량은 제1블록전송량과 동일하게 설정되는 것이 바람직하다.
제1DMA엔진(131)과 대응되는 제2DMA엔진(132)는 하기에서 설명한 것을 제외하고 제1DMA엔진(131)과 동일한 구성으로 동일하게 동작하므로 이하 차이점만 설명한다.
제2DMA엔진(132) 내부에는 제2시작번지를 저장한 제2시작번지레지스터, 제2도착번지를 저장한 제2도착번지레지스터, 제2총전송량을 저장한 제2총전송량레지스터, 제2블록전송량을 저장한 제2블록전송량레지스터, 제2가상전송량을 저장한 제2가상전송량레지스터가 구비된다. 제2시작번지는 제1시작번지와 비교하여 제1블록전송량만큼 증가된 번지이다. 그외에 제2도착번지, 제2총전송량, 제2블록전송량, 제2가상전송량은 각 제1도착번지, 제1총전송량, 제1블록전송량, 제1가상전송량과 동일하도록 설정된다. 그에 따라 상기에서 설명된 바와 같이 제1DMA엔진(131) 및 제2DMA엔진(132)은 각각 상이한 비디오데이터를 저장하게 된다.
도 4a는 본 발명의 일실시예에 따라 프레임버퍼에 저장된 비디오데이터를 독출하는 순서를 도시한 도면이다.
설명의 편의를 위해 프레임버퍼(120)에는 M 비트 비디오데이터가 N 개 구비되고, N 개의 M 비트의 비디오데이터가 인쇄용지 1 페이지에 해당되는 분량이라고 상정한다. 그리고 본 실시예에서는 블록전송량을 4개의 M 비트 비디오데이터로 상정한다. 따라서 블록전송량 및 가상전송량은 M*4 비트이고, 총전송량은 M*N/2가 된다.
각 중앙처리장치(110)에 의해 각 DMA엔진(131,132) 내에 구비된 제어용 레지스터들(131-2,131-3,131-4,131-5,131-6)이 설정되는 DMA초기화 과정이 수행되면, 각 DMA엔진(131,132)이 기동된다.
각 DMA엔진(131,132)이 기동되면, 각 DMA엔진(131,132)은 각 시작번지레지스터에 저장된 시작번지, 즉 프레임버퍼(120)의 각 시작번지로부터 비디오데이터를 독출하고, 각 도착번지레지스터에 저장된 도착번지, 즉 각 내부버퍼의 각 도착번지로 독출된 비디오데이터를 각각 저장한다.
먼저 제1DMA엔진(131)에 대해 설명한다. 제1DMA제어부(131-1)는 제1시작번지레지스터(131-2) 내의 제1시작번지에 의해 프레임버퍼(120)에서 1 비트씩 비디오데이터를 독출한다. 이때 (A)에서 시작되어 4개의 M비트 비디오데이터(제1-1블록전송량:제1 내지 제4비디오데이터)를 독출한다. 독출된 비디오데이터는 제1도착번지레지스터(131-3)내의 제1도착번지에 의해 제1내부버퍼(131-7)로 저장된다. 그러면 제1시작번지 및 제1도착번지는 각각 1비트 만큼 증가한다. 그러면 제1블록전송량레지스터(131-5) 내의 제1블록전송량, 및 제1총전송량레지스터(131-4) 내의 제1총전송량은 각각 1 비트 만큼 감소한다. 그리고 상기와 같은 독출/저장과정이 반복된다. 제1DMA제어부(131-1)는 1 비트씩 비디오데이터가 독출/저장될 때마다 제1블록전송량이 '0'가 되는지 여부를 판단한다.
제1블록전송량이 '0'이 된 경우, 제1DMA제어부(131-1)는 제1블록전송량을 재설정한다. 즉 제1블록전송량을 '0'에서 'M*4'값으로 재설정한다. 그리고 제1가상전송량레지스터(131-6)내의 제1가상전송량에 의해 제1시작번지 및 제1도착번지를 M*4 비트(제1-1가상전송량:제5 내지 제8비디오데이터)만큼 증가시킨다. 그러면 제1시작번지 및 제1도착번지는 제1블록전송량 및 제1가상전송량의 합(M*4 + M*4)만큼 증가된다. 제1DMA제어부(131-1)는 증가된 제1시작번지 및 제1도착번지에 따라 프레임버퍼(120)에서 비디오데이터를 독출하고 이를 제1내부버퍼(131-7)에 저장한다. 그리고 제1총전송량이 '0'이 된 된 경우, 제1DMA제어부(131-1)은 인터럽트를 발생하여 DMA동작이 종료되었음을 알린다.
그리고 제2DMA엔진(132)에 대해 설명을 개시하면, 제2DMA제어부는 제2시작번지레지스터 내의 제2시작번지에 의해 프레임버퍼(120)에서 1비트씩 비디오데이터를 독출한다. 이때 (B)에서 시작되어 4개의 M비트 비디오데이터(제2-1블록전송량:제5 내지 제8비디오데이터)를 독출한다. 즉 제2시작번지는 제1시작번지에 블록전송량을 합산한 결과에 기초하여 설정된다. 여기서 제2-1블록전송량은 제1-1가상전송량과 동일하다. 독출된 비디오데이터는 제2도착번지레지스터 내 제2도착번지에 의해 제2내부버퍼에 저장된다. 그리고 이하의 동작은 제1DMA엔진에서의 동작과 동일하므로 이에 대한 설명은 생략한다.
따라서 제1내부버퍼 및 제2내부버퍼에 저장된 비디오데이터는 각각 상이하고, 그에 따라 레이저 스캐닝부(200)의 2개의 레이저 다이오드에 적용되는 비디오데이터도 각각 상이하다. 따라서 프레임버퍼(120)에 저장된 1 페이지에 대한 비디오데이터를 독출/저장하여 레이저 스캐닝부(200)에 전송하는데 있어서 제1DMA제어부 및 제2DMA제어부는 각각 DMA동작의 종료를 1번씩만 발생한다.
도 4b는 본 발명의 또 다른 실시예에 따라 프레임버퍼에 저장된 비디오데이터를 독출하는 순서를 도시한 도면이다. 그리고 도 4A의 실시예와 상이한 점은 블록전송량을 1개의 M 비트 비디오데이터로 설정하였다는 점이다. 그외에는 동일하므로 상세 설명은 생략한다.
제1DMA엔진 내 제1내부버퍼(131-7)에는 제1,제3,제5,제7...비디오데이터가 저장된다. 그리고 제2DMA엔진 내 제2내부버퍼에는 제2,제4,제6,제8...비디오데이터가 저장된다. 저장된 비디오데이터는 레이저 스캐닝부(200)의 2개의 레이저 다이오드에 각각 적용된다.
도 5는 본 발명에 따른 비디오데이터 제어방법에 대한 플로우차트를 도시한 것이다.
설명의 편의를 위해 제1DMA엔진(131)에 대해서만 설명을 개시하고, 제2DMA엔진에 대해서는 동일한 동작을 수행하므로 설명을 생략한다.
먼저 중앙처리장치(110)에 의해 제어용 레지스터들(131-2,131-3,131-4,131-5,131-6)이 초기화된다(S300). 그러면 제1DMA엔진(131)이 기동된다(S310). 제1DMA엔진(131)내의 제1DMA제어부(131-7)는 프레임버퍼(120) 내의 비디오데이터를 시작번지, 블록전송량, 총전송량에 기초하여 독출하고, 도착번지에 기초하여 제1내부버퍼(131-7)에 저장한다(S320,S330). 상기 독출/저장과정을 수행할 때마다 제1DMA제어부(131-7)는 블록전송량이 '0'인지 여부를 판단한다(S340). 판단한 결과, 제1블록전송량이 '0'이 아닌 경우, 제1DMA제어부(131-7)는 상기와 같이 프레임버퍼(120)로부터 제1내부버퍼(131-7)로 1 비트씩 비디오데이터의 독출 및 저장과정을 수행한다(S320,S330).
판단한 결과, 제1블록전송량이 '0'인 경우, 제1DMA제어부(131-1)는 제1총전송량이 '0'인지여부를 판단한다(S350). 판단한 결과, 제1총전송량이 '0'인 경우, 제1DMA제어부(131-1)는 인터럽트를 발생시켜 중앙처리장치(110)에게 DMA동작이 종료되었음을 알린다.
제1내부버퍼(131-7)에 저장된 비디오데이터는 제1비디오데이터 전송부(131-8)에 의해 레이저 스캐닝부(200)로 전송되고, 전송된 비디오데이터는 레이저 스캐닝부(200) 내의 2개의 레이저 다이오드 중 하나에 적용되어 화상을 형성시킨다(S360).
그러나 판단한 결과, 제1블록전송량이 '0'이 아닌 경우, 제1DMA제어부(131-1)는 제1블록전송량레지스터(131-5) 내의 제1블록전송량을 초기화시키다(S370). 이때 제1DMA제어부(131-1)에 의해 제1시작번지 및 제1도착번지는 제1블록전송량 및 제1가상전송량을 합산한 값만큼 증가된다(S380). 그리고 320단계부터 다시 진행된다.
또한, 상기에서 본 발명의 바람직한 실시 예를 설명하고 도시하였지만, 본 발명은 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양하게 변형되어 실시되는 것이 가능하다.
이와 같은 변형된 실시 예들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안되며, 이와 같은 변형된 실시 예들은 본 발명의 첨부된 특허청구범위 안에 속한다 해야 할 것이다.
이상 설명한 바와 같이, 종래에는 2개의 DMA엔진이 구비될 경우 1 페이지에 대한 DMA동작 수행시에 여러번의 DMA동작 종료가 있으므로 여러번의 인터럽트가 발생하였으나 본 발명에 따른 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법에 의하면, 2개의 DMA엔진이 구비되어 DMA동작을 각각 수행할 경우, 1 페이지에 대한 DMA동작 수행시에 1번의 DMA동작의 종료가 있고 그에 따라 1번의 인터럽트가 발생되므로 중앙처리장치의 처리량이 감소된다. 따라서 2개의 DMA엔진을 구비하더라도 별도로 성능이 향상된 중앙처리장치를 설치하거나 성능 좋은 중앙처리장치로 교체할 필요가 없다.
도 1은 종래의 비디오데이터 제어부의 내부구조를 도시한 블록도,
도 2는 본 발명에 따른 비디오데이터 제어부의 내부구조를 도시한 블록도,
도 3은 도 2의 제1DMA엔진의 내부구성을 도시한 블록도,
도 4a는 본 발명의 일실시예에 따라 프레임버퍼에 저장된 비디오데이터를 독출하는 순서를 도시한 도면,
도 4b는 본 발명의 또 다른 실시예에 따라 프레임버퍼에 저장된 비디오데이터를 독출하는 순서를 도시한 도면, 그리고
도 5는 본 발명에 따른 비디오데이터 독출/저장방법에 대한 플로우차트를 도시한 것이다.
* 도면의 주요 부분에 대한 부호의 설명 *
131-1:제1DMA제어부 131-2:제1시작번지레지스터
131-3:제1도착번지레지스터 131-4:제1총전송량레지스터
131-5:제1블록전송량레지스터 131-6:제1가상전송량레지스터
131-7:제1내부버퍼 131-8:제1비디오데이터 전송부

Claims (4)

  1. 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하고, 소정량만큼 상기 비디오데이터의 저장이 완료된 경우 저장된 상기 비디오데이터를 외부 레이저 스캐닝부로 전송하는 비디오데이터 제어부에 있어서,
    상기 프레임버퍼의 소정 제1시작번지로부터 독출단위인 블록전송량만큼 상기 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하는 제1DMA엔진; 및,
    상기 제1시작번지에 상기 블록전송량만큼 증가한 번지인 제2시작번지로부터 상기 블록전송량만큼 상기 프레임버퍼에 저장된 비디오데이터를 독출하여 저장하는 제2DMA엔진;을 포함하고,
    상기 제1 및 제2시작번지는, 상기 비디오데이터의 독출 및 저장 후 상기 제1 및 제2DMA엔진에 의해 상기 블록전송량의 이배수만큼 각각 증가하여 업데이트되는 것을 특징으로 하는 비디오데이터 제어부.
  2. 제 1항에 있어서,
    상기 제1 및 제2DMA엔진 각각은,
    상기 블록전송량과 동일비트로서 비디오데이터의 전송없이 시작번지의 증가를 위한 가상전송량을 저장한 가상전송량레지스터; 및
    상기 시작번지로부터 시작하여 상기 블록전송량 단위로 비디오데이터가 독출 및 저장되도록 제어하고, 상기 블록전송량만큼 상기 비디오데이터가 저장된 경우, 상기 시작번지를 상기 블록전송량 및 상기 가상전송량의 합만큼 증가시키도록 제어하는 DMA제어부;를 포함하는 것을 특징으로 하는 비디오데이터 제어부.
  3. 프레임버퍼의 소정 시작번지에 저장된 비디오데이터를 상기 프레임버퍼로부터 독출단위인 블록전송량만큼 독출하여 DMA엔진에 저장하고, 상기 비디오데이터의 소정 총전송량만큼 상기 비디오데이터의 저장이 완료된 경우 저장된 상기 비디오데이터를 상기 DMA엔진를 통해 외부 레이저 스캐닝부로 전송하는 비디오데이터 제어부의 독출/저장방법에 있어서,
    (a) 상기 시작번지에 저장된 비디오데이터를 독출하여 상기 DMA엔진에 저장하는 단계;
    (b) 저장된 상기 비디오데이터의 비트수 만큼 상기 블록전송량 및 상기 총전송량을 감산하는 단계;
    (c) 상기 블록전송량이 0인지여부를 판단하는 단계;
    (d) 상기 (c)단계의 판단 결과, 상기 블록전송량이 0인 경우, 상기 총전송량이 0인지여부를 판단하는 단계; 및,
    (e) 상기 (d)단계의 판단 결과, 상기 총전송량이 0인 경우, 상기 내부버퍼에 저장된 비디오데이터를 상기 레이저 스캐닝부로 전송하는 단계;를 포함하는 것을 특징으로 하는 독출/저장방법.
  4. 제 3항에 있어서,
    상기 비디오데이터 제어부는, 상기 블록전송량과 동일비트로서 비디오데이터의 전송없이 상기 시작번지의 증가를 위한 가상전송량을 저장한 가상전송량레지스터;를 더 포함하고,
    상기 (d)단계의 판단 결과, 상기 총전송량이 0이 아닌 경우, 상기 블록전송량을 소정 초기값으로 재설정하고, 상기 시작번지를 상기 블록전송량 및 상기 가상전송량의 합만큼 증가시키고, 상기 (a)단계 내지 상기 (d)단계를 상기 총전송량이 0이 될 때까지 반복하는 단계;를 더 포함하는 것을 특징으로 하는 독출/저장방법.
KR10-2003-0041529A 2003-06-25 2003-06-25 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법 KR100513738B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0041529A KR100513738B1 (ko) 2003-06-25 2003-06-25 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0041529A KR100513738B1 (ko) 2003-06-25 2003-06-25 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법

Publications (2)

Publication Number Publication Date
KR20050000927A KR20050000927A (ko) 2005-01-06
KR100513738B1 true KR100513738B1 (ko) 2005-09-09

Family

ID=37216796

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0041529A KR100513738B1 (ko) 2003-06-25 2003-06-25 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법

Country Status (1)

Country Link
KR (1) KR100513738B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645052B (zh) * 2008-08-06 2011-10-26 中兴通讯股份有限公司 一种快速dma乒乓缓存方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970071294A (ko) * 1996-04-18 1997-11-07 김광호 직렬통신제어기(scc)를 이용한 직접메모리접근(dma) 장치
US5748223A (en) * 1995-04-20 1998-05-05 Fuji Xerox Co., Ltd. Image writing apparatus having a multi-beam scanning optical system for improving the quality of reproduced images
KR20010002850A (ko) * 1999-06-18 2001-01-15 윤종용 레이저 프린터의 직접 메모리 접근 다중 버퍼링 장치
KR20010054299A (ko) * 1999-12-06 2001-07-02 윤종용 레이저 빔 프린터의 레이저 스캐닝 유니트 컨트롤러
JP2001328298A (ja) * 2000-05-19 2001-11-27 Hitachi Koki Co Ltd ページプリンタ制御装置の制御方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748223A (en) * 1995-04-20 1998-05-05 Fuji Xerox Co., Ltd. Image writing apparatus having a multi-beam scanning optical system for improving the quality of reproduced images
KR970071294A (ko) * 1996-04-18 1997-11-07 김광호 직렬통신제어기(scc)를 이용한 직접메모리접근(dma) 장치
KR20010002850A (ko) * 1999-06-18 2001-01-15 윤종용 레이저 프린터의 직접 메모리 접근 다중 버퍼링 장치
KR20010054299A (ko) * 1999-12-06 2001-07-02 윤종용 레이저 빔 프린터의 레이저 스캐닝 유니트 컨트롤러
JP2001328298A (ja) * 2000-05-19 2001-11-27 Hitachi Koki Co Ltd ページプリンタ制御装置の制御方法

Also Published As

Publication number Publication date
KR20050000927A (ko) 2005-01-06

Similar Documents

Publication Publication Date Title
EP0649100A2 (en) Data processing system and image processing system
US7007115B2 (en) Removing lane-to-lane skew
JPH06282411A (ja) データ伸長回路及び方法
KR100513738B1 (ko) 비디오데이터 제어부 및 그의 비디오데이터 독출/저장방법
US5930464A (en) Apparatus for controlling a direct memory access operation in an image processing apparatus
US20020018238A1 (en) Printer, print control apparatus and method
US20070208886A1 (en) Data processing apparatus
JP3641922B2 (ja) Asic制御装置及び方法
US6628289B1 (en) Rendering apparatus and method, and storage medium
JPH10329369A (ja) プリンタ装置
JP2005044202A (ja) 画像データ転送制御装置
US11080574B2 (en) Image processing apparatus
KR100524013B1 (ko) 인쇄데이터 포맷팅장치 및 그의 포맷팅방법
JP4228028B2 (ja) 画像入出力装置
US6870635B1 (en) System and method for managing print objects using stacked objects queue
KR100334096B1 (ko) 레이저 프린터의 직접 메모리 접근 다중 버퍼링 장치
US20210086506A1 (en) Printer head control device
JP4595578B2 (ja) 印刷装置及び印刷方法
JP2007306445A (ja) 画像データ変換装置
JPH0361570A (ja) プリンタ制御装置
JP2006168198A (ja) 記録装置及び記録装置の制御方法
CN118810249A (zh) 热敏打印机
JP2006256105A (ja) 印刷装置及びデータ処理方法
JP2001239707A (ja) プリンタ制御装置及びそのデータ転送方法
US20050237332A1 (en) Information processor

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee