1. 개발환경 소개

1. 내보소 - 내 보드를 소개합니다. (사투리 '내 보소' 가 아니다..)
서울 산업대의 로보큐x의 정보x 실장님이 만드신 보드이다.
3개의 TMS320F2812 가 장착되어 있는 정말 엄한 보드이다...;
보드에는 3개의 JTAG 에뮬레이터 커넥터가 있다.
...한 보드 안에 3개의 DSP 가 꽂혀 있다면 당연히 떠오르는 그것은....바로 동기화!!
....JTAG과 CCS 등을 이용한 패러럴 디버깅과 CPU 동기화!!
그러나 안된다...(먼산)
JTAG 들이 버스로 연결되어 있지 않고 따로 놀고 있다. (헐)

로보큐x의 김영x 교수님은 2406/2407 시절에 시작하신 DSP 개발자 분이시다.
...그래서인지 JTAG 에 대한 ... 특히나 2812 JTAG 회로에 대한 사용도가 낮으신 분이다.
...시리얼 통신을 이용하여 프로그램을 굽고 디버깅을 하는 것이 안되는 것은 아니니 그러시는 것도 이해가 되지만!!!
역으로 말하면 2812 에 대한 정보가 부족하신 것이 아닐까 하고 조심스럽게 추측한다.

2406/7 등의 JTAG 은 2812 의 JTAG 과 비교한다면 정말...하늘과 땅차이다.
더 중요한 것은 시리얼 통신을 이용한 디버깅은 어쨌든 오버헤드가 좀 있다.
그러나 JTAG + Real Time Debug (이 놈 중요한 놈) 을 이용하면 시리얼 통신과 비교할 때 거의 오버헤드가 없다.
실시간 디버깅 JTAG 회로가 칩 안에 내장되어 있기 때문이다.
이 기능을 사용하기 위해서는 JTAG 에뮬레이터와 CCS 를 사용해야한다는 조건이 있다.
비싼만큼 값어치를 한다.
...물론 2406/7을 사용할 때는 있으면 약간 편하지만 없어도 괜찮은...정도?
여튼 덕분에 디버깅이랑 튜닝을 할 때 정말 손이 많이 가는 녀석이다.

혹시 케이블을 연결하면 되지 않을까 해서 종로를 배회하다 커넥터 3개 달린 케이블을 만들었다.
연결하니...역시나...후우
이유는 JTAG 신호가 CMOS 타입이라서 전압은 나오지만 전류는 거의 안나와서 케이블을 통과하면 케이블의 저항 때문에 신호가 약해진다는 것이다.
결국 신호가 제대로 전달이 안된다는 것이다.
PCB 보드 상에서 버스로 연결할 때도 15 cm  이하로 해야하는데 그 보다 짧은 거리에서도 안정성을 위해서 그냥 버퍼를 단다고 한다.

이런 불편한 점 말고 이 보드의 신비로운 점이 하나 있다.
이 보드에 붙어있는 DSP 들의 클럭은....일치하지 않는다....(먼산)
분명 150 MHz 인데....클럭 설정도 동일한데...신비하기 짝이 없다.
CPU 타이머 인터럽트를 사용하든 EV 타이머 인터럽트를 사용하든 LED 토글링을 시키고 오실로 스코프로 찍으면...
처음에는 같은 시점에서 온/오프 되는데 시간이 지나면 조금씩 온/오프 시점이 어긋난다....
이게 무슨 일인지...후우...
의심은 이리저리 엮은 듯한 와이어링이 의심스럽다.
30MHz 클럭 신호와 150MHz 동작클럭이라는 것은 매우 빠른 것이다.
섬세하게 다루어야 할 상황에 이리저러 끈으로 묶듯이 와이이링 하다니...조교하는 것도 아니고...(먼산)

좀 난감한 점도 있다.
이 보드는 Dual Port RAM (DPRAM) 을 3개나 가지고 있다.
그냥 일반 RAM을 안 쓰고 Dual Port RAM 을 사용했다.
DSP 간의 데이터 교환을 위해 사용하고...
.....동기화를 위해 사용한다. (후우...)
그런데 이 DPRAM 은 같은 번지에 대해서 읽기 쓰기가 동시에 들어올 때 제대로 써지지 않거나 읽혀지지 않는 그런 문제가 있는 듯 하다.
보통 하드웨어적인 회로를 통해 이에 대한 처리를 하고 DPRAM 자체에도 이런 처리를 위해서 기능 핀들이 존재한다.
........
....
그런데 그런 처리가 없다. (멍~)
뭐 방법이 없지는 않다. 여러 곳에 여러번 쓰면 되는 것...2 곳에 2번 쓰는 것으로 어찌어찌 해결되는 듯 하다.
,..허나 장담은 못하겠다...아직까지 문제가 없었을 뿐...;

이 외에도 소소한 문제가 몇개 더 있지만 뭐...여기까지...
.
.
.
불평하기에는 우리 회사가 대금을 다 지불하지 않았다는 문제가 있다는 거~~~(더 먼산)

여튼 이 멋진(ㅡㅡ;) 보드는 DAC를 6*2=12 채널이나 가지고 있는 무서운 녀석이다.
(어떤 친구는 이걸 보고 미친 짓이라고 했다.)

처음에는 이 보드의 이런저런 상상도 못했던 특징들 덕에 이래저래 곤란했지만 이제 한 3달 정도 되니 그럭저럭 가지고 놀 수 있게되었다.
물론 늘 쓰던 부분에 대해서만 그렇다는 것이고 아직 건드리지도 않은 부분은 미지의 세계다.
...알고 싶지도 않고 겪고 싶지도 않은 미지의 세계...미지의 세계에 대한 동경보다는 두려움이 앞설뿐... (ㅡㅡ;)
.
.
그나마 좋은 점이라면 이 보드에 익숙해지니 일반적인 다른 보드는 좀 편하다는 것....;;

2. JTAG 에뮬레이터 TDS510USB-C2K
- 단순한 프로그래머 그 이상의 멋지심...비싼만큼 강하다...ㅜ.ㅜ
JTAG 에뮬레이터를 단순히 속도 빠른 프로그래머(프로그램을 굽는 장치)로 생각하시는 분들이 계신다.
그.러.나.
2812의 JTAG 은 정말 강력하다.
...뭐 사용하다보면 짜증나는 부분도 그만큼 강력하다. (ㅡㅡ;)
하지만 정말 이거 익숙해지면 다른 것에 적응하기 힘들다.
너무 좋다...비싼 만큼 벗지심~ ㅜ.ㅜ
TDS510USB-C2K 는 이름에서 느껴지듯이(응?) C2000 시리즈 전용이다.
다른 C5000 시리즈나 C6000 시리즈 등에서는 사용할 수 없다.
허나 뭐...모터 제어하는데 C5000 이나 C6000 을 쓰지는 않으니까 모터를 제어하신다면 가격 저렴하고 좋지 아니한가?
게다가 아직 TMX 버전이지만 28335 라는 강력한 놈이 출시되었으니...

흠...뭐 이쪽 JTAG 에뮬레이터 최상위 제품으로 XDS560 이라는 제품이 있기는 하다.
XDS560 을 사용하면 ADC 결과를 실시간으로 CCS 에서 그래프 기능을 이용하여 볼 수 있다.
정확히 실시간이라기보다는 TMS320F2812의 최고 ADC 속도보다 더 빠르게 데이터를 전달한다는 것이다. ^^;
어쨌든 꼭 오실로 스코프를 사용할 때처럼 신호를 관찰할 수 있다는 것이니 얼마나 대단한가!!!
그러나 오실로 스코프 한대 가격이라는거~ ^^;
그래도 그렇게 비싸지는 않다 뭐...270 만원에서 320 만원 정도 밖에 안 하니까...(먼산)

아! 가격이 저렴한 XDS560-EC 도 있다.
가격이....230 에서 250 만원 정도였나...(더 먼산)
이런 엄한 것에 비하면 좀 느리고 좀 성능 쳐지고 좀 사용할 수 있는 영역이 좁지만 가격대 성능비'만'을 볼 때 이만한 것은 없는 것이빈다!! (뭐냐...;;)

3. 유일무이 오직 하나뿐-TI 칩 전용 통합개발환경...
유료다.
....저런 피토하고 쓰러지시는 분들 걱정말고 Emule 등의 어둠의 경로를 이용해보시기를...검색하면 쏟아져나온다.
뭐...회사라거나 연구소라거나 하면 정품 쓸 수 있다.
...보통은 어둠의 경로를 통해 구한 것으로 연습하다가 정식으로 일하게 되면(프로젝트 시작 또는 정식 과제로 계정 확보) 구입하는 것이 일상다반사...
어떤 분은 지저분해보인다고 하시는 이놈...
...아직 알쏭달쏭하다.
하지만 JTAG 에뮬레이터를 사용하려면 선택의 여지가 없다.
JTAG 에뮬레이터와 연동할 때 사용할 이런저런 다양한 수단들이 있으니 시간 날 때마다 호기심을 가지고 만져야한다.
(쓰고나서 보니 좀....흠...문장이 좀 묘한 분위기를 풍긴다고 느낀 것은 나뿐인가...;)

여기까지가 요새 내가 작업하고 있는 개발환경에 대한 간단한 소개...

다음 이야기는....
개발 환경 설치 정도?
CCS 를 설치하고 JTAG 에뮬레이터 드라이버를 설치하고 그리고 필수적이라고 여겨지고 있는(과연?) sprc097 설치 하는 내용들?
....sprc097 에 대한 것은 기본 프로젝트 생성에 대한 글로 넘겨벼릴지도 모르겠다.

졸리고 피곤하지만 지금 아니면 글 쓸 시간도 없다...ㅜ.ㅜ
...원래 코딩이나 할까 하다가 그래도 블로그인데 글 좀 쓸까 하고 이러고 있다.
월급도 못받고...(5월 월급이 아직 안들어왔다..ㅜ.ㅜ)
시간도 없고...(만성 수면 부족 덕에 내 눈에는 태양신이 들어앉은 듯 하다...ㅜ.ㅜ)
외롭다...(내가 사랑하고 기대고 싶은 부인...그러나 소박 맞지 않으면 다행일 듯 하다...내가...ㅠ.ㅠ)

나는 왜 이러고 사는 것일까
...멋진 엔지니어로 살 수 있을까
...이전에 친구가 말한대로 나는 엔지니어 쪽 사람은 아닌 것인가...

답답해질 때는 별 수 없다.
심호흡을 크게 하고 눈과 머리에 힘을 주고 앞을 똑바로 본다.
...그리고 계속 살아간다.
...미련하지만 계속 살아간다.
사는 이유?
사는 이유는 살다보면 알게 되겠지...

이 글과 관련있는 글을 자동검색한 결과입니다 [?]

by Dark-Ryu | 2008/06/20 00:42 | TMS320F2812 | 트랙백 | 덧글(0)

트랙백 주소 : http://DarkRyu.egloos.com/tb/1800982
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]

:         :

:

비공개 덧글

<< 이전 페이지다음 페이지 >>