EzDoum

찾기
처음으로 | 찾기 | 아카이브 | 글 올리기 | 링크 | 자료실 | 통계 | 연락처 | 자유게시판
이지도움 특집
전체보기
네트워크
TI OMAP35x
TI DaVinci
Analog Blackfin
RobotWar2005
임베디드!
캐쉬의 모든것
메모리 할당 알고리즘
CPU 파이프라이닝
자료구조(Tree)
금융

Login
이름

암호

기억하기


사용자 등록

현재 접속중인 등록 사용자는 0명, 익명 사용자는 3명 입니다.
전체 등록 사용자: 751명

마지막 답장
·libcurl + fuse 조합으로 되는게 많네. (1)
·Linux Ftrace에 관해 (3)
·Android MTP ( Media Transfer Protocol ) (1)
·Lighttpd에 인증을 digest 사용시 IE 오동작 문제? (1)
·Dtrace에 관해 (1)

최근글
·OpenSSL and multi-threads (0)
·ARM 환경에서 OpenCL 사용 (0)
·IoT용 WIFI 모듈 비교 ( MCU ) 클래스 (0)
·Glances - 리눅스 여러 가지 항목을 한 화면에서 모니터링 (0)
·plugin 방식의 로그 분석기 (0)

뜨거운 감자
·나는 인터렉티브한 환경에서 역어셈블 한다. (12)
·GNU REGEX (정규표현식) 프로그래밍 강좌 (7)
·SoCRobotWar 2005 - 신입생 기초 교육자료 (7)
·ASP.NET의 데이터 그리드와 사용자 컨트롤 (7)
·DHTML Editing Control (7)

가장 많이 읽은 글
·[Cache] 2-way Set-Associative 방식이란 무엇일까? (2)
·멀티쓰레드(Pthread) 프로그래밍
·GNU REGEX (정규표현식) 프로그래밍 강좌 (7)
·Sorting Algorithm Animation (2)
·SoCRobotWar 2005 - 신입생 기초 교육자료 (7)

임베디드! - PPI에 연결된 인코더로부터 DMA로 영상받기
글쓴이: EzDoum 글쓴날: 2004년 08월 11일 오전 12:28
하드웨어



시리얼 포트관련된 내용을 적을라 했는데, 최근 3일 동안 ppi로 dma 영상전송 때문에 머리속이 너무 복잡한지라 관련 내용은

http://www.ezdoum.com/comments.php?rid=04/08/06/5258042&story=04/08/06/5258042#04/08/10/6224330

요넘으로 대신하고 싶다.


이번 주말까지 된것이 Programmable Flags, Interrupt, UART(Rs-232) 요넘들이다. 이제 해야 할것이 영상을 인코딩 하는 칩을 활성화 시켜서 영상 스트림을 sdram에 전송하는 것을 해야 한다.

비디오신호(NTSC)를 인코딩해주는 칩은 saa7113이란 칩으로 필립스에서 만든 칩이다. 이 칩은 보드가 부팅이 될 때 dsp에서 제어신호를 전송해주면 그 때 부터 8개의 data pin에서 인코딩된 영상 신호들이 쏱아져 나온다. 이때 초기화 명령을 주는 것은 필립스에서 만든 i2c라는 2가닥을 사용해 전송하는 프로토콜이고 데이터는 ITU-R BT.656 형태로 나온다.

//--------------------
Interfaces for digital component video signals in 525-line and 625-line television systems operating at the 4:2:2 level of Recommendation ITU-R BT.601
http://www-inst.eecs.berkeley.edu/~cs150/Documents/ITU656.PDF

"CS150 Board Digital Video in a Nutshell" by Tom Oberheim VideoNutshell.pdf
http://www-inst.eecs.berkeley.edu/~cs150/Documents/VideoNutshell.pdf

여기 가면 다른 참고할 만한 좋은 자료가 많다.
http://www-inst.eecs.berkeley.edu/~cs150/fa04/Documents.htm

EE-203: Interfacing the ADSP-BF535/ADSP-BF533 Blackfin Processor to NTSC/PAL video decoder over the asynchronous port.
http://www.analog.com/UploadedFiles/Application_Notes/322530541EE203.pdf
//--------------------

i2c에 관한 자료는

http://nohbg.hihome.com/i2c_bus/i2c_bus.htm

여기에 가면 요약 정리가 잘 되어 있다. 또 블랙핀에서 i2c를 구현한 사람이 있는데,

http://blackfin.subnet.dk/home.html

i2c구현과 블랙핀 개발보드의 영상칩을 i2c로 제어하는 예제를 작성해 놓았다. 그런데 내가 사용하는 blackfin은 개발보드와 구성이 달라서(영상 인코더 칩) 그런지 그 소스는 제대로 동작하지 않았다.

i2c 스펙과 saa7113 데이터북, 그리고 이전에 프로젝트에서 사용한 소스를 참고로해서 다시 작성을 했는데. 이 i2c란 것이 대량의 데이터 전송을 목적으로 하는 것이 아니라 제어 신호 정도를 보내는 용으로 사용하는 것이라 주파수도 느리고, 신호선이 클럭으로 사용되는 선과 데이터 선 두개 뿐이라 스코프로 찍어보면 타이밍을 비교적 정확하게 측정이 가능해 구현이 수월한 편이다.
(rs-232 테스트 할때도 \@\를 전송하면 요것이 0x40이라 값이 보인다. 7번째 비트, @¸ 연속적으로 보내고 그 사이에 타이머를 동작시켜 전송 속도를 자동으로 감지하는 것도 가능하다.)

마지막에 동작을 시작할때 브로브 두개로 찍어서 스코프에 나타내 보면 흐믓한 마음이 들었다.


이 인코더 칩에서 나오는 신호는 ITU-R BT.656인데 8비트형과 10비트 확장형이 있는데 자세한 내용은 아까 언급한 표준 문서를 보면 잘 나오고 중요한 것은 스트림안에, 동기를 맞출수 있는 신호들이 있어서 dma에서 x,y블럭크기를 지정해주면 dma 컨트롤러가 차곡히 짤라서 원하는 목적지로 데이터를 보내준다. 말은 두줄이지만 dsp에서 dma를 사용하기 위해서는 좀 해줘야 할것이 많다.

먼저 해야 하는 것은 ppi환경 설정을 해주어야 한다. 어떤 핀을 사용하고 어떤 타입의 영상신호를 받을 것인지, ppi 클럭, 동기는 어떤식으로 하나(내부 트리거, 외부트리거), gp모드... 코딩하다가 말고 다시 스펙 정독모드. 스펙만 봐서는 잘 이해가 안됐고 대략적으로 감만 잡고 실제로 컴파일 해보기로 했다. (ppi관련 설정을 2.0때 사용한 것이 있어서 참고로해서 작업을 했다.)


ppi와 dma 관계는 다음번에 써야겠다.
암튼 3~400번 정도 컴파일 한거 같다. 보드 자체도 버그가 좀 있었고 롬 에뮬레이터도 삽질하고, 스트레스 3만점!! 으하 하지만 이제 영상이 깨끗하게 메모리로 받아졌으니, 알고리즘 개선에 집중해야겠다. blackfin도 이제 캐쉬 설정, page 모드(관리자/사용자)를 설정하는 것만 하면 칩 기능을 다 다루어 보는거 같다. 아.. asm으로 dsp에 최적화 된 루틴을 짜보는게 남았구나..


[분류: 하드웨어 인쇄용 페이지 본문 email로 보내기 ]

<  임베디드! - 보드 하나 더 만들었다. | 임베디드! - Programmable Flags, Interrupt, UART(Rs-232)  >
임베디드! - PPI에 연결된 인코더로부터 DMA로 영상받기 | 답장: 1개 | 본문에 답장
정렬 :  
답장 EzDoum 2004년 08월 24일 오전 08:17 [ 이글에 답장 | 본문에 답장 | 책갈피 ]
요것은 pxa255 메뉴얼인데 chap 9에 i2c에 관한 설명이 나오는데 설명이 좋다.
http://www.intel.com/design/pca/applicationsprocessors/manuals/27869302.pdf


[수정]

임베디드! - PPI에 연결된 인코더로부터 DMA로 영상받기 | 답장: 1개 | 본문에 답장
정렬 :  

답장 쓰기
글을 올리시려면 로그인 (사용자 등록) 하셔야 합니다.

검색
Google

분류
·공지 (6)
·인터넷 (87)
·하드웨어 (260)
·C/C++ (65)
·어셈블리 (7)
·리눅스 (136)
·리눅스 커널 (67)
·윈도우즈 (25)
·데이터베이스 (20)
·보안 (16)
·.NET (25)
·그래픽 (13)
·책소개 (42)
·호기심 천국 (80)
·잡담 (111)
·사랑 (3)

전체 본문수: 963
전체 답장수: 525


분류 : 하드웨어
최근글
최근글
가장 많이 읽은 글
·[Cache] 2-way Set-Associative 방식이란 무엇일까? (2)
뜨거운 감자
·SoCRobotWar 2005 - 신입생 기초 교육자료 (7)

EzDoum투표
이지도움 어때요?
이게 뭐야. 다시 안올란다. --;
아이 좋아라~ +_+;
관심없다.
먼가는 있는거 같은데 뭐하는 곳이지?
기타 (자유게시판에 글로 남겨 주세요)
[ 결과 | 투표 ]

랜덤 링크
http://kldp.net


 Home ^ BACK TO TOP ^ EzDoum - 도움이 필요하세요~??
 Powered by KorWeblog 1.5.8 Copyleft © 2001 EzDoum, 관리자: EzDoum