스마트메모리카드를 이용한 문자디스플레이 장치의 설계와 구현 ·...

50
工學碩士學位請求論文 스마트메모리카드를 이용한 문자디스플레이 장치의 설계와 구현 Display Panel Design and Implementation Using Smartmedia Card 2005 年 2 月 仁荷大學校 工學大學院 電子工學科

Upload: others

Post on 25-Oct-2019

3 views

Category:

Documents


0 download

TRANSCRIPT

  • 工學碩士學位請求論文

    스마트메모리카드를 이용한 문자디스플레이

    장치의 설계와 구현

    Display Panel Design and Implementation

    Using Smartmedia Card

    2005 年 2 月

    仁荷大學校 工學大學院

    電子工學科

    金 奉 榮

  • 工學碩士學位請求論文

    스마트메모리카드를 이용한 문자디스플레이

    장치의 설계와 구현

    Display Panel Design and Implementation

    Using Smartmedia Card

    2005 年 2 月

    指導敎授 洪 勝 弘

    이 論文을 工學碩士學位 論文으로 提出함

    仁荷大學校 工學大學院

    電子工學科

    金 奉 榮

  • 이 論文을 金奉榮의 工學碩士學位 論文으로 認定함

    2005 年 2 月

    主審 : ㊞

    副審 : ㊞

    委員 : ㊞

  • - i -

    요 약

    본 논문에서는 고성능 마이크로 컨트롤러와 스마트미디어 카드를 이용하

    여 고성능, 대용량 문자전광판의 효율적인 제작방법을 제안하고자 한다.

    기존의 마이크로 컨트롤러는 종래의 인텔사에서 생산된 8bit 전용마이크

    로컨트롤러였으나 새로운 고성능의 마이크로컨트롤러가 생산되어지고 있

    고 사용하기 간편한 대용량의 스마트미디어 카드를 이용하여 업체의 경쟁

    력을 높이고 무수히 쏟아지는 정보 표시의 홍수 속에 저렴한 비용으로 전

    광판을 제작하는 방법과 관련 회로를 나타내는데 주안점을 두었다. 기존

    의 문자전광판는 마이크로 컨트롤러부와 프로그램 코드용 메모리, 데이터

    저장용 메모리, FPGA로 구성되어 있는데, 본 논문에서는 고성능 마이크

    로컨트롤러의 기술적인 부분을 이용하여 프로그램 코드용 메모리와

    FPGA를 제거하였으며 또한, 데이터저장용 메모리를 스마트미디어 카드

    로 대체함에 따라 가격과 데이터 저장면에서 효율성을 높였다.

    본 논문을 통하여 총 비용이 약 40%이상의 비용절감 효과와 함께 약

    100배 정도의 데이터 저장 증가 효과가 있었다. 또한, 기존의 동적인 디스

    플레이의 시간 소요가 16*16도트매트릭스에서 23msec인 반면에 본 연구

    에서는 4msec가 소요되어 속도에서도 5배 정도로 개선되었다.

  • - ii -

    Abstract

    I suggest an efficient way of constructing the high performance

    display panelusing an updated model of micro controller and smart

    media card. The old 8-bitmodel of microcontroller unit is a product of

    Intel, but newer and high performing microcontrollers are producing

    now. I use the newer model of microcontroller and large capacity

    smart card to build the display panel. The whole cost is also

    decreased. The existing display unit is composed of microcontroller,

    program coding memory, data storagememory, and FPGA. Yet, I could

    get rid of the program coding memory and FPGA by using the

    technical part of the high performance microcontroller. In addition, I

    replaced the data storage memory with the smart media card and

    upgraded the efficiency in cost and data storage capacity.The cost is

    decreased by $200. Data storage capacity increases as much as 132

    times. The response time of this display unit is 4 ms, which is one

    fifth of the average 23 ms of the existing one in 1616 dot matrix.

  • - iii -

    목 차

    요 약 ························································································································ i

    Abstract ··················································································································· ii

    제1장. 서론 ·············································································································· 1

    제2장. 전광판에 사용되는 부품의 종류 및 특성 ············································ 5

    2.1 도트매트릭스 모듈 ·················································································· 5

    2.2 마이크로컨트롤러 ···················································································· 7

    2.2.1 intel 8051 계열 ··········································································· 7

    2.2.2 AVR 계열 ······················································································· 8

    2.2.3. 메모리 카드 ················································································ 10

    제3장. 전광판 모듈의 분석 ··············································································· 17

    3.1 전광판 모듈의 기본적 구성과 특징 ·················································· 17

    3.1.1 프로그램 저장용 플래시메모리 ··············································· 17

    3.1.2 데이터 저장용 플래시메모리 ··················································· 18

    3.1.3 컨트롤러 ······················································································· 18

    3.1.4 시프트레지스터 ··········································································· 19

    3.1.5 컴퓨터와의 직렬통신 ································································· 19

    3.2 제안된 전광판의 구성과 특징 ···························································· 19

    3.2.1 UART를 이용한 데이터라이터 모듈 ····································· 19

    3.2.2 전광판 모듈 ················································································· 20

  • - iv -

    3.3 소프트웨어적 기술 ················································································ 21

    3.3.1 패킷 ······························································································· 21

    3.3.2 패킷 전용 프로그램 ··································································· 22

    3.3.3 범용 비동기식 전송 ··································································· 24

    3.3.4 직렬전송인터페이스 ··································································· 24

    3.4 디스플레이 표시장치의 제작 ······························································ 27

    3.4.1 UART 데이터라이팅 모듈 ····················································· 27

    3.4.2 디스플레이 모듈 ······································································· 28

    3.5 비교검토 ·································································································· 30

    3.5.1 일반적인 디스플레이 모듈 ······················································· 30

    3.5.2. 제안된 디스플레이 모듈 ·························································· 32

    3.5.3 비교 ······························································································· 33

    제4장. 결론 ··········································································································· 38

    참고문헌 ················································································································· 39

  • - v -

    표 목차

    표 2-1. 메모리카드의 비교 ·············································································· 10

    표 2-2. 메모리 조직 ·························································································· 12

    표 3-1. 메모리 비교 ·························································································· 34

    표 3-2. 디스플레이 정지시 시간 비교(160도트*16도트) ························· 35

    표 3-3. 왼쪽 시프트 시의 시간 ······································································ 36

  • - vi -

    그림 목차

    그림 2-1. 16×16 도트매트릭스 모듈. ··························································· 5

    그림 2-2. 타이밍도 ····························································································· 6

    그림 2-3 기능별 블록도 ···················································································· 11

    그림 2-4 메모리 조직 ························································································ 13

    그림 2-5. 아이디 읽기 동작 타이밍도 ·························································· 13

    그림 2-6. 이레이져 동작 타이밍도 ································································ 14

    그림 2-7. 프로그램 동작 타이밍도 ································································ 15

    그림 2-8. 읽기1 동작 타이밍도 ······································································ 16

    그림 3-1. 일반적인 디스플레이 모듈 ···························································· 18

    그림 3-2. 패킷 저장용 모듈 ············································································ 20

    그림 3-3. 제안된 전광판 모듈 ········································································ 21

    그림 3-4. 비주얼 베이직을 이용한 패킷 생성 프로그램 ·························· 22

    그림 3-5. 패킷의 완성된 형태 ········································································ 23

    그림 3-6. 범용 비동기식 전송 구조 ······························································ 25

    그림 3-7. SPI 마스터-슬레이브 상호관계 ··················································· 26

    그림 3-8. SPI 블록도 ························································································ 27

    그림 3-9. UART 데이터라이팅 모듈 ····························································· 28

    그림 3-10. 전광판 모듈 ·················································································· 29

    그림 3-11. 완성된 160*16 전광판 ································································ 29

    그림 3-12. 일반적인 디스플레이 모듈 ·························································· 31

    그림 3-13. 1비트 전송 시간(nsec) ································································ 35

    그림 3-14. 160개 도트의 처리 시간(usec) ················································· 35

    그림 3-15. 전체 처리 시간(msec) ································································· 36

  • - vii -

    그림 3-16. 왼쪽시프트 동작시 소요되는 전체시간 ···································· 37

    그림 3-17. 출력된 전광판 ·············································································· 37

  • - 1 -

    제1장. 서론

    전기전자통신 분야에서 디지털화의 진전은 급속히 그리고 전면적으로

    진행되어 디지털 기술은 일반 시스템의 기초기술로 자리 잡게 되었다. 또

    한, 우리 주위에는 많은 정보들도 둘러쌓여 있으며, 정보의 홍수 속에 살

    고 있다. 우리가 지닌 디지털 기술 중에서 정보를 표현하는 것 중에 대표

    적인 것이 전광판일 것이다.

    문자전광판은 다양한 디스플레이로 하여금 간단 명료한 이미지 및 멘트

    로서 다수의 사람들에게 메시지를 전달하고 대중적인 광고매체로서 자리

    매김을 하고 있다.

    전광판도 사용목적에 따라 다양하게 사용되는데, 뉴스나 정보를 실시간

    으로 제공하는 경우에는 바로 컴퓨터에서 데이터가 전송될 수 있도록

    RS-232케이블을 이용하여 시리얼전송방식으로 하드웨어를 제작하며, 지

    속적인 광고멘트 같은 경우에는 굳이 큰 용량이 필요가 없으므로 문자전

    광판 내에 표현할 정도의 메모리 등을 이용하여 제작한다 [1].

    메모리카드는 디지털카메라, MP3와 같은 저장매체를 이용한 가전제품

    혹은 컴퓨터주변기기의 발달과 함께 여러 제조회사에서 각각 용도와 특성

    에 맞는 메모리카드를 선보이고 있으며, 그 종류 또한 크게 4가지로 구분

    하게 된다. 일반적으로 컴팩트플래시메모리라고 불리는 CF, 스마트미디어

    카드(SMC), 메모리 스틱(MS), 멀티미디어 카드(MMC)가 있다.

    컴팩트플래시메모리는 90년대 중반 샌디스크사에서 NEC, 캐논, 엡손

    등 일본업체를 포함한 12개사의 동참을 얻어 표준화를 추진하였다. 컴팩

    트플래시메모리는 코닥 및 카시오 등의 디지털카메라에 잇따라 채택되면

    서 단숨에 메모리 카드 시장을 장악해 나갔으며 컴팩트 플래시의 등장이

  • - 2 -

    디지털카메라의 보급에 불을 붙인 격이 되었다. 컴팩트플래시는 업계의

    표준인터페이스를 채택하고 카드 내부에 기억 데이터를 관리하기 위한 전

    용 마이크로콘트롤러를 탑재하는 등 시스템으로서의 기능을 갖게 한 반면

    종전에 '0'과 '1' 등 2단계였던 신호기록을 4단계로 세분화해 용량을 늘

    려 경쟁력 향상시키고 있다.

    스마트미디어 카드는 도시바사에서 개발, 생산하고 있으며 삼성, 올림푸

    스 등에서도 생산한다. SMC 는 일반 NAND 플래시메모리를 다루는 방

    법과 거의 동일하게 다루므로 멀티미디어 카드를 이용한 회로보다 다소

    복잡하다. 그러나 컨트롤러 없이 직접 병렬로 데이터를 전송하므로 속도

    는 MMC에 비해 훨씬 빠르다. 97년 이후 빠른 속도로 시장을 넓혀 나가

    기 시작하여 일본 후지필름, 올림퍼스광학공업 등이 디지털카메라에 스마

    트미디어를 탑재하였고 최근 MP3 Player에도 탑재되면서 MP3 시장을

    MMC와 양분하고 있는 상태이다

    메모리스틱은 1998년, 소니사가 개발하였고, 1세대 메모리스틱 21.5 *

    50 * 2.8mm 크기의 4MB, 8MB 두 가지 종류가 있으며 2세대 제품은 플

    래쉬메모리 용량을 64MB로 8배 확대하는 한편 미니디스크(MD)에서 사

    용하는 데이터 압축방식을 채용해 압축률을 10분의 1로 줄여 고음질의 디

    지털 녹음이 가능하다. 메모리스틱은 PC 카드의 발전된 형태라기보다는

    가정에서 누구나 사용할 수 있도록 초점을 맞춘 제품이다.

    멀티미디어카드(MMC)는 샌디스크(SanDisk)와 독일 지멘스(Siemens)사

    가 공동 개발, 생산하는 메모리이며 크기가 작아 소형기기를 만드는데 유

    리하고 내부에 콘트롤러가 내장되어 있어서 제어하기가 쉬운 반면 직렬

    데이터 전송방식(SPI)을 사용하므로 속도가 SMC 에 비해 현저하게 느리

    다. 폰티스가 멀티미디어카드를 MP3 Player용 메모리카드로 채택하고 핀

    란드의 노키아도 휴대폰에 MMC카드를 채택하여 소형통신기기에서도 본

    격적으로 사용되기 시작하였다 [2].

  • - 3 -

    이와 더불어 전광판에서 데이터를 분석하고 처리하는 부분이 마이크로

    컨트롤러이며, 현재 전광판에서 흔히 사용하는 컨트롤러는 8051계열이다.

    8051계열의 컨트롤러는 4킬로바이트의 프로그램 ROM과 128바이트의

    내부 RAM이 있으며, 1바이트의 명령어 실행시 소요되는 시간은 1㎲(동

    작주파수 12MHz)이다. 8051계열이 현재까지 주류를 이루는 이유로는 가

    장 안정적인 마이크로컨트롤러로 알려져 있으며, 역사가 가장 깊고, 마이

    크로 컨트롤러 개발자에게 아직까지 많이 사용되어지고 있으며, 초창기

    전광판의 메인컨트롤러가 8051계열이므로 큰 투자비용 없이 주변회로만을

    개선함으로써 소형전광판에서 사용 시에는 큰 지장이 없었다. 그러나 대

    형 전광판에서는 느린 동작속도로 인하여 보다 고성능의 컨트롤러가 필요

    하게 되었으며 내부 메모리의 적은 용량으로 인하여 많은 정보를 표현하

    는데 한계를 느끼게 되었다 [3].

    일반적인 디스플레이 모듈과 본 논문에서 제안된 디스플레이 모듈의 인

    터페이스 측면에서 본다면, UART 통신에 있어서 2배 이상의 비트전송속

    도를 이용하여 연구하였고, 디스플레이 모듈과 도트매트릭스 모듈의 데이

    터 전송 속도는 1/2로 본 연구에서 제안되는 디스플레이 모듈이 다소 뒤

    지지만 구동 시 전혀 손색이 없었다. 아울러 인터페이스 형태는 마이크로

    컨트롤러와 메모리는 병렬전송을 사용하고 마이크로컨트롤러와 컴퓨터,

    도트매트릭스는 직렬전송을 사용하였다. 그러나, 꾸준히 발전되는 기술로

    인해 최근 직렬전송방식은 속도에 있어서 상당히 빠르므로 디스플레이 구

    동에 있어서 일반적인 모듈과의 차이점이 거의 없었다 [4].

    본 연구에서는 마이크로 컨트롤러로서 아트멜사의 ATmega128을 사용

    하게 되었으며 속도와 메모리 용량의 증가를 비교 분석하고 이에 대한 응

    용회로를 개선하고자 하며, 더불어 기존의 플래시메모리 부분을 주위에서

    흔히 접할 수 있는 SMC를 사용하여 데이터 표현의 양을 증대시키고자

    한다. 아울러 전광판 제조업자들의 경쟁과 전광판 소자의 대량생산화 및

  • - 4 -

    기술력의 증진으로 인하여 전광판의 수요가 점점 늘어나는 추세이나 아직

    까지도 비용이 비싼 이유로 많은 영세업자들이 사용하기에는 부담이 큰

    현실이다. 이러한 이유로 본 연구에 대한 필요성이 있다 하겠다 [5], [6].

  • - 5 -

    그림 2-1. 16×16 도트매트릭스 모듈.

    Fig. 2-1. Dotmatrix module.

    제2장. 전광판에 사용되는 부품의 종류 및 특성

    문자전광판은 크게 도트매트릭스, 마이크로컨트롤러가 탑재된 디스플레

    이모듈, 전원의 3부분으로 대별할 수 있으며, 이 장에서는 문자전광판에

    사용되는 부품에 대해 다루고자 한다. 이 장에서 다루고자 하는 부품은

    시리얼 방식으로 데이터를 입력 받는 도트매트릭스 모듈, 8비트 마이크로

    컨트롤러, 스마트미디어 카드이며 부품의 특징과 사용법에 대해 알아본다.

    2.1 도트매트릭스 모듈

    그림 2-1과 같이 16×16의 4가지 컬러를 가지는 도트매트릭스로 검정,

    빨강, 녹색, 주황색을 낼 수 있으며 내부의 시프트레지스터를 이용하여 모

  • - 6 -

    그림 2-2. 타이밍도

    Fig. 2-2. Timing chart.

    든 도트매트릭스 모듈이 직렬로 연결 하게 된다.

    도트매트릭스 모듈의 결선은 어드레스버스와 클럭입력(CLK), 래치

    (LATCH), 인에이블(ENABLE)과 같은 제어신호와 함께 적색(R), 녹색(G)

    데이터 신호도 모두 직렬로 연결시키며 그림 2-2와 같이 CLK의 상승에

    지에서 한 비트씩 시프트된다 [7].

    1개의 도트는 약 20mA의 전류를 소모하며 한줄(160개)를 한가지 색으

    로 전부 점등시킬 경우 20mA×160=3200mA(3.2A)의 전류를 소모하게 된

    다. 또한 주황색을 내기 위해서는 DOT하나 당 2개의 LED를 점등시켜야

    하므로 3.2A×2=6.4A의 전류를 소모한다. 아울러 도트매트릭스 자체 내의

    드라이버에서 소모하는 전류와 컨트롤러에서 소모하는 전류를 고려하면

    10A이상의 전원이 필요하게 된다. 본 연구에서는 문자전광판에서 에니메

    이션 효과를 처리할 때 많은 양의 전류의 변화가 있어도 회로구동에 지장

  • - 7 -

    이 없는 10A의 직류전원장치(SMPS)를 사용하여 메인컨트롤러와 전광판

    을 안정적으로 구동시킨다 [8].

    2.2 마이크로컨트롤러

    본 논문에서 사용되는 마이크로 컨트롤러는 8비트이며, 이 절에서는 현

    재 사용되는 전광판의 컨트롤러와 본 연구에서 사용하고자 하는 컨트롤러

    의 장, 단점과 특징에 대해 기술하고자 한다.

    2.2.1 intel 8051 계열

    현재 가장 많이 사용되어지는 컨트롤러로서 전형적인 마이크로프로세서

    의 형태를 가지고 있으면서 가장 안정적인 동작 특성을 나타낸다. 컨트롤

    러의 고전이라고 불릴만큼 가장 기본적인 구조로 구성되어 있으며 8051의

    패밀리에는 각각의 사용특성에 따라 8051, 8051AH, 89S51 등으로 구분되

    어 진다. 그러나 현재 새로 개발되는 컨트롤러에 비해 속도가 느리며, 개

    발환경을 구축하는데 비용이 들어 점점 그 자리를 내주고 있는 실정이다.

    8051은 다음과 같은 특징을 가지고 있다 [9].

    첫째, 4킬로바이트의 프로그램 롬을 통하여 프로그램을 저장시킬 수

    있으며 최대 64킬로바이트의 외부 롬을 장착시킬 수 있다. 만일 외부에

    데이터 메모리를 장착할 경우 최대 장착 프로그램메모리 어드레스 수에서

    외부 데이터 메모리의 어드레스 수만큼 뺀 나머지의 용량으로 외부 데이

    터 메모리를 장착할 수 있다.

    둘째, 128 바이트의 내부 램이 내장되어 있어 각종 데이터를 저장 시

    킬 수 있다.

  • - 8 -

    셋째, 8비트 단위 포트0-3까지의 4개의 입출력 포트가 있으며, 그 중

    포트 1은20-30㏀으로 풀업되어 있다. 만일 포트1을 뺀 나머지 포트를 입

    력으로 사용할 경우에는 풀업저항을 사용하여 입력장치를 구성해야 컨트

    롤러가 입력 신호를 인식할 수 있다.

    넷째, 입출력 확장 모드와 직렬통신 모드를 선택할 수 있는 시리얼 포

    트가 있으며,

    다섯째, 우선 순위 설정이 가능한 4개의 인터럽트를 지정할 수 있다.

    2.2.2 AVR 계열

    앞으로 사용되는 컨트롤러의 추세는 프로그램의 이식성이 가장 좋고,

    시뮬레이션 및 에뮬레이터를 저렴하게 사용할 수 있으며 속도가 슈퍼컴퓨

    터 성능에 버금가는 아주 빠른 컨트롤러가 사용되어 질 것이다. 현재 판

    매되는 컨트롤러 중에서는 단연 아트멜사의 AVR시리즈가 그 위치를 차

    지하고 있다. 이미 산업체에서도 많이 사용되어지고 있으며, 곧 기존의 마

    이크로콘트롤러 시장의 주류를 이룰 것으로 예상된다. AVR의 가장 큰 장

    점으로는 8비트 리스크(RISC, Reduced Instruction Set Computer) 구조

    로 명령어가 간단하며 파이프라인으로 설계가 되어있으므로 동작 속도가

    빠르다. 1MHz당 약 1MIPS (Million Instrucion Per Second)의 성능을 보

    이며 소비 전력이 적다. 본 연구에서도 AVR을 사용하고 있으며 AVR 중

    에서도 가장 메모리 용량이 크고 안정성도 뛰어난 ATmega128을 사용하

    여 제작하고자 한다. 다음은 ATmega128의 특징이다 [10], [11].

    첫째, 8-비트 RISC(Reduced Instruction Set Computer) 구조로 명령어

    가 간단하며 동작 속도가 빠르며,

  • - 9 -

    둘째, 1MHz당 약 1MIPS(Million Instruction Per Second)의 성능을 가

    지고 있는데, 8051에 비해 약 12배 정도 빠른 속도를 가지고 있다.

    셋째, 소비 전력이 적으며,

    넷째, 일부패밀리에서 10 비트 ADC 내장하고 있다.

    다섯째, 다른 마이크로 컨트롤러에 비해 큰 4킬로바이트의 플래시메모

    리를 가지고 있다.

    여섯째, 프로그램 메모리의 내장으로 프로그래밍이 용이하다.

    일곱째, 4킬로 바이트의 EEPROM을 내장하고 있어서 데이터 백업 및

    중요한 데이터를 저장할 수 있는 용도로 사용 가능하다.

    여덟째, UART,SPI(Serial Pheriperal Interface), PWM(Pulse Width

    Modulation)등을 내장하고 있어 데이터 통신 및 모터제어가 용이하다.

    아홉째, 8비트 및 16비트 타이머를 내장하고 있다.

    AVR시리즈는 3가지로 구분되어지며, 컨트롤러의 사용 환경에 따라 달

    라진다. 예를 들어 비교적 회로가 간단하고 많은 메모리를 사용하지 않으

    며 단순한 반복처리를 사용하는 경우에는 Tiny 시리즈를 사용한다. AVR

    시리즈의 특징에 대해 간단히 기술하면,

    첫째, Tiny 시리즈는 RAM이 없거나 크기가 적은 모델이 대부분이며 핀

    수 또한 적어서 간단한 어플리케이션에 적합하다.

    둘째, AT90S 시리즈는 RAM의 크기는 보통으로 8051과 비슷하며 8051

    대치시 더 나은 성능을 제공하며, 굳이 프로그램 라이팅 장비가 필요 없

    이 SPI통신을 이용하여 쉽게 프로그램을 라이팅할 수 있다.

    셋째, Mega 시리즈 : 플래쉬 메모리와 램의 용량이 크고 핀 수 또한

    많아서 복잡한 어플리케이션에 적합하다.

  • - 10 -

    2.2.3. 메모리 카드

    디지털카메라, MP3, PDP와 같은 소형기기 등의 사용이 급증하면서, 데

    이터를 저장해야할 메모리가 필요하게 되었다. 이러한 소형기기는 이동

    성이 있어야 하고 때에 따라서는 메모리 용량의 증가도 필요하게 되므로

    용량의 종류와 함께 휴대성도 용이해햐 한다. 그러므로 메모리는 각 기기

    의 종류와 특성에 맞게 발전하고 있으며 크게 4가지 종류로 생산되어지고

    있고 각각의 특징은 표 2-1과 같다 [12].

    표 2-1에서 보는 것과 마찬가지로 공급전원과 전류, 리드, 라이팅 속도

    면에서 스마트미디어카드(SMC)가 우수하며 본 연구에서도 SMC를 사용

    하게 되었다.

    표 2-1. 메모리카드의 비교

    Table 2-1. Comparison of memory card

    Smart

    Media CardMMC CF

    Memory

    Stick

    Picture

    Vcc2.7-3.6V

    5V2.7-3.6V 3.3V, 5V 2.7-3.6V

    PowerRead

  • - 11 -

    가. SMC의 특징

    SMC의 크기는 45.0*37.0*0.76mm로 응용 제어품의 소형화에 적절하며

    휴대성이 우수하다. 일반적인 반도체 메모리에 비해 SMC는 NAND형태

    플래시메모리를 사용하므로 매우 간단한 메모리 구조로 되어있다. 이러한

    메모리 구조를 사용하고 있기 때문에, 소용량 단위의 정보를 고속의 기입

    소거가 가능하고, 연속적인 정보를 기록 등 응용 제품의 성능을 향상을

    가져다준다. 다른 어떠한 메모리 카드보다 경제성이 뛰어나며, SMC의 메

    모리의 종류로는 16MB, 32MB, 64MB, 128MB로 NAND형태 플래시메모

    리가 있다 [13].

    SMC의 용도로는 PC에서 사용하는 하드디스크, 플로피 디스크 대신 사

    용할 수 있으며, 또 휴대형 단말기(음성 녹음, 디지털 카메라), Fax/모뎀

    의 데이터 기록용 메모리 등 용도가 다양하다. SMC는 제품의 소형화를

    가져다 줄 수 있으며, 데이터 용량이 크므로 다양한 응용분야에 사용할

    수 있다.

    나. SMC 구조

    SMC의 구조는 그림2-3에서 보는 것처럼 크게 3부분으로 나뉘어 진다.

    각종 제어신호와 명령레지스터가 있는 제어부, 하위 어드레스(A0-A7)를

    저장하는 Y-버퍼와 상위어드레스(A9-A26)를 저장하는 X-버퍼로 구성되

    어진 어드레스 해독부, 메모리 셀의 집합체인 메모리부로 되어 있다.

    SMC는 그림2-4와 같이 간단한 메모리 구조이기 때문에 데이터 저장에

    빠른 속도로 저장하는데 적합하며 그 이유는 자체 컨트롤러가 없고 바로

    디코더를 통해 메모리에 연결이 되기 때문에 카드내에 컨트롤러가 탑재된

    SPI방식, 직렬전송방식 보다 훨씬 빠른 속도로 읽기, 쓰기 동작을 할 수

    있다. 아울러 저전력이므로 소형건전지 제품에 많이 사용된다.

  • - 12 -

    그림 2-3 기능별 블록도

    Fig. 2-3 Functional block diagram.

    SMC는 용량에 따라 규격이 달라진다. 본 연구에서는 주로 기본으로 사

    용이 되는 64M을 기준으로 설명한다. SMC는 그림2-4와 같이 데이터를

    페이지 단위로 저장하는데, 페이지는 두 개의 버퍼로 나뉘게 되며, 각각

    256Bytes로 할당된다. 본 연구에서는 표2-2와 같은 구조를 가지고 있는

    64MB의 SMC를 이용하여 제작하였다. 본 연구에서 사용된 64MB의

    SMC는 4,096블록(Block)을 가지고 있으며 블럭은 한 블럭 당 32페이지를

    가진다.

    표 2-2 메모리 조직

    Table 2-2 Array organization

    1 Page 1 Bock 1 Device

    SMC 64M 528Byte 528 Byte*32Pages 528 Byte*32Pages*4,096Blocks

  • - 13 -

    그림 2-4 메모리 조직

    Fig. 2-4 Array organization.

    다. SMC의 활용

    SMC를 제대로 활용하기위해서는 타이밍도에 맞추어 코딩을 해야한다.

    다음은 본 프로젝트에서 사용하는 필요한 동작을 기술하여 타이밍도와

    함께 제시하였다.

    1) 아이디 읽기

    현재 SMC 카드는 저장용량에 따라 16Mbyte, 32Mbyte, 64Mbyte,

    128Mbyte의 4가지 종류가 있으며, 64Mbyte가 일반적으로 많이 사용된다.

    64Mbyte의 아이디코드를 읽기 하는 방법은 그림 2-5의 타이밍도와 같

    다.

    제작하고자 하는 전광판은 모든 SMC를 사용할 수 있어야 하므로 그림

    2-5의 타이밍대로 컨트롤러에 코딩하여 아이디코드를 읽을 수 있어야 한

    다. 본 연구에서는 64Mbyte의 SMC를 사용하므로 아이디 코드는 76h이

    다.

  • - 14 -

    그림 2-5. 아이디 읽기 동작 타이밍도

    Fig. 2-5. Timing chart of reading id operation.

    2) 이레이져 동작

    앞서 제시한 대로 SMC의 구조 중에서 1블럭은 32페이지로 구성되어

    있으며, 이레이져 동작은 블럭단위로 동작된다. 그림 2-6에 제시한 타이

    밍대로 컨트롤러에 코딩한 뒤 이레이져 동작이 성공적으로 완료되면 C0h,

    실패하면 C1h가 입출력포트를 통해 읽게 되며 이를 통해 완료여부를 판

    별할 수 있다.

    3) 프로그램 동작

    SMC의 저장 단위는 페이지(528Byte)단위로 저장된다. 물론 특정 어드

    레스에 데이터 값을 저장할 수도 있다. SMC가 다른 메모리와 다른 점은

    저장하고자 하는 어드레스만 지정한 후 라이트 신호만 주면 자동적으로

    어드레스의 증가와 함께 데이터 값이 저장된다. 이에 대한 타이밍도는 그

    림 2-7과 같다.

  • - 15 -

    그림 2-6. 이레이져 동작 타이밍도

    Fig. 2-6. Timing chart of erasing operation.

    그림 2-7. 프로그램 동작 타이밍도

    Fig. 2-7. Timing chart of programming operation.

  • - 16 -

    그림 2-8. 읽기1 동작 타이밍도

    Fig. 2-8. Timing chart of reading 1 operation.

    4) 읽기 동작

    읽기 동작에는 3종류의 모드가 있다. 지정된 어드레스로부터 데이터를

    순차적으로 읽으면서 CE의 "H"순간에 데이터의 읽기 동작이 종료되는 일

    기1 동작모드(Intercepted By CE), 메모리의 “C"영역을 순차적으로 읽어

    나가는 읽기2 동작모드(Read One Page), 1개의 블럭 안의 데이터를 순차

    적으로 읽는 순차읽기 동작모드의 3가지 모드가 있는데, 본 프로젝트에서

    는 읽기1 동작모드를 사용하여 데이터를 읽고자 한다. 타이밍도는 그림

    2-8에서 제시하는 것과 같다.

  • - 17 -

    제3장. 전광판 모듈의 분석

    문자전광판을 구동시키는 핵심은 마이크로컨트롤러가 탑재된 디스플레

    이모듈이다. 디스플레이모듈은 4부분으로 나누어지며 명령어의 해독 및

    데이터를 처리하는 마이크로컨트롤러, 명령어가 저장된 프로그램 메모리,

    디스플레이용 데이터가 저장된 데이터메모리, 처리된 데이터를 시리얼로

    전송하기 위해 설계된 FPGA의 4부분으로 구성되어 있다.

    이 장에서는 현재 사용되는 디스플레이 모듈과 본 연구에서 제안하고자

    하는 디스플레이 모듈의 특징에 대해 논하고 두 개의 모듈을 비교 실험함

    으로써 본 연구에서 다루고자 하는 성능개선에 대해 기술하고자 한다.

    3.1 전광판 모듈의 기본적 구성과 특징

    기존의 전광판의 문자 및 정보를 표현하는 디스플레이의 핵심은 컨트롤

    러가 포함된 전광판 모듈이다. 전광판의 모듈의 구성은 그림 3-1과 같다.

    그림 3-1에서 컨트롤러는 프로그램 저장용 플래시메모리에서 명령어 코

    드를 하나씩 수행하며, 수행 중에 필요한 문자 디스플레이의 데이터는 데

    이터 저장용 플래시메모리에서 패치하여 처리한다. 처리된 데이터는

    FPGA로 설계된 시프트레지스터에 병렬로 전송된 후 직렬로 도트매트릭

    스 모듈에 데이터를 전송하여 디스플레이하게 된다.

    3.1.1 프로그램 저장용 플래시메모리

    문자 디스플레이의 프로그램 코드가 저장되는 메모리로서 읽기, 쓰기가

    가능하며 128킬로바이트의 플래시메모리로 되어있다.

  • - 18 -

    그림 3-1. 일반적인 디스플레이 모듈

    Fig. 3-1. General display module.

    컨트롤러

    프로그램 저장용

    플래시메모리

    (128Kbyte)

    패킷저장용

    플래시메모리

    (512Kbyte)

    시프트

    레지스터

    (FPGA)

    160×16

    도트매트릭스

    모듈

    3.1.2 데이터 저장용 플래시메모리

    16*16의 글자 폰트와 디스플레이 순서 및 종류 등이 저장되어 있는 데

    이터메모리이다. 컨트롤러는 프로그램의 순서에 따라 데이터메모리에 저

    장된 폰트데이터와 함께 순서, 종류 등이 코드화 되어있는 패킷을 차례로

    불러와 처리하게 된다. 기존 전광판 모듈에서 사용되는 메모리의 용량은

    512킬로바이트이다.

    3.1.3 컨트롤러

    컨트롤러로써 보통 인텔사의 80계열의 8bit 마이컴을 사용하고 있으며,

    프로그램코드용 플래시메모리로부터 순차적으로 프로그램을 패치시키고

    데이터저장용 플래시메모리에서 데이터를 가져와서 명령에 따라 처리한

    후 이를 시프트레지스터로 보낸다.

  • - 19 -

    3.1.4 시프트레지스터

    컨트롤러로부터 받은 데이터를 전광판 모듈로 보내는 역할을 한다.

    8051은 시리얼로 데이터를 전송하는 기능이 없다. 데이터를 직렬로 전송

    하고자 한다면 데이터를 하나씩 시프트시키면서 입출력포트로 출력시켜야

    하는데 이런 경우 데이터 처리 및 속도가 느리게 된다. 그러므로 이를 극

    복하기 위해서는 전광판 모듈의 동작특성에 맞도록 시프트레지스터를 설

    계하여 ASIC으로 칩을 만들어 컨트롤러 외부에 인터페이스하여야 한다.

    3.1.5 컴퓨터와의 직렬통신

    비동기식직렬 전송(UART)을 이용하여 컴퓨터를 통해 생성된 데이터를

    디스플레이 모듈로 전송하며 이때 사용되는 보레이트는 9600bps를 사용

    한다.

    3.2 제안된 전광판의 구성과 특징

    본 연구에서 제안한 모듈은 기존에 사용되는 모듈의 4부분을 2부분으로

    설계하고자 하며, 512Kbyte의 데이터저장용 메모리 부분을 SMC로 대치

    하여 디스플레이 용량을 증가시키고자 한다.

    이 장에서는 SMC에 패킷을 저장하는 데이터 라이터 모듈과 SMC에 저

    장된 패킷을 순차적으로 패치시켜 처리하는 디스플레이 모듈로 나누어 기

    술하고자 한다.

    3.2.1 UART를 이용한 데이터라이터 모듈

    SMC에 폰트데이터와 함께 순서, 시간, 종류 등을 한꺼번에 코딩한 패

  • - 20 -

    킷을 저장시키고자 제작된 전용모듈이다. SMC의 데이터 저장 방법은 컴

    퓨터에서 작성한 전용프로그램을 통해 제작된 패킷을 SMC의 최하위 번

    지부터 순차적으로 저장시키는 방법인데, 이때 데이터 통신 방법으로

    UART를 사용한다.

    그림 3-2. 패킷 저장용 모듈

    Fig. 3-2. Module for saving packet.

    컨트롤러 SMCData In

    3.2.2 전광판 모듈

    SMC에 저장된 패킷을 순차적으로 읽어 디스플레이시키는 핵심모듈로서

    컨트롤러, SMC의 2부분으로 나누어 설계한다.

    가. 컨트롤러

    ATmega128을 사용하고 있으며, 1밉스(MIPS)의 처리속도를 가지고 있다.

    프로그래밍된 코드가 컨트롤러내의 플래시메모리에 저장되며 SMC로부

    터 패킷을 받아 해독하여 처리한 후 SPI 방식으로 데이터를 전송한다. 이

    때 프로그램 저장용 내부 플래시메모리의 용량은 128킬로바이트이다.

  • - 21 -

    나. SMC

    전용프로그램을 통해 작성된 패킷을 저장시키는 대용량 메모리이다.

    그림 3-3. 제안된 전광판 모듈

    Fig. 3-3. Suggested display panel module.

    ATmega128

    컨트롤러

    SMC

    (64Mbyte)

    160×16

    도트매트릭스

    모듈

    SPI Transmission

    3.3 소프트웨어적 기술

    이제까지는 하드웨어적인 부분에 대해 기술하였지만, 이 장에서는 하드

    웨어를 구동시키는 소프트웨어에 대해 다루고자 한다.

    3.3.1 패킷

    패킷은 다음과 같은 구조로 되어 있으며, 전용프로그램을 이용하여 폰

    트와 디스플레이종류, 시간, 순서를 조합하여 하나의 패킷을 구성한다.

    가) 패킷구성

    1 2 3 4 5 6

    1. 헤더 - 시작헤더로서 헤더값은 0xAA로 코딩됨.(1byte)

    2. 디스플레이 종류 - 디스플레이의 종류를 나타냄(1byte)

  • - 22 -

    3. 지연시간 - 디스플레이 종류에 따른 지연시간 설정(1byte)

    ( 예 : 0.5초, 1초, 3초, 5초 등 )

    4. 크기 - 폰트데이터의 크기를 나타낸다.(2byte)

    5. 폰트데이터

    6. 헤더 - 패킷의 종료를 표현하는 헤더 0x55임.(1byte)

    3.3.2 패킷 전용 프로그램

    그림 3-4는 패키 전용 프로그램으로 비주얼베이직으로 프로그램을 작성

    하였다 [14].

    그림 3-4 비주얼 베이직을 이용한 패킷 생성 프로그램

    Fig. 3-4. Packet producing program using Visual Basic.

  • - 23 -

    그림 3-5. 패킷의 완성된 형태

    Fig. 3-5. Finished feature of packet.

    그림 3-4의 각 부분에 대한 설명은 아래와 같다.

    ◦ Display Type : 디스플레이 종류 선택

    ◦ Delay Time : 지연시간 설정

    ◦ Text Window : 폰트데이터를 복사하는 창임.

    ◦ Output : 패킷으로 변환시키는 버튼

    ◦ Send : 패킷을 UART를 이용하여 마이컴으로 전송하는 버튼

    ◦ Exit : 종료

    그림 3-4를 통하여 생성된 패킷은 그림 3-5와 같은 형태로 저장되어

    지며, 이러한 패킷을 SMC에 저장하게 된다.

  • - 24 -

    3.3.3 범용 비동기식 전송

    비동기식 전송방식(UART)으로 일반적으로 컴퓨터와 주변기기의 통신

    에 많이 사용된다. 통신속도의 종류도 다양하지만 본 프로젝트에서는

    38400bps를 사용하여 패킷을 전송한다. UART를 제어하는 레지스터로는

    UCSRnA, UCSRnB, UDRn 사용되어 진다.

    그림 3-6에서 UCSRnA레지스터는 UART의 상태를 나타내는 레지스터

    로 전송된 패킷이 UDRn에 저장되면 7번째 Bit(RXCn)가 1로 set되고

    UDRn의 데이터가 읽혀지면 0으로 clear된다. 만일, 인터럽트를 사용하고

    자 한다면 UCSRnA 레지스터를 이용하여 인터럽트 루틴을 처리하면 된

    다.

    UCSRnB레지스터는 UART를 제어하는 레지스터로 7번째 Bit(RXCIEn)

    가 1로 set되어있으면 수신관련 RXC의 플래그가 활성화 된다. UART 수

    신 완료 인터럽트는 RXCIE 비트가 1로 설정되고 SREG의 글로벌 인터

    럽트 플래그에 1이 씌여지며, UCSRnA의 RXC 비트가 1로 설정되어있을

    때만 발생한다. 그밖에 수신, 송신데이터 비트 8(RXB8n), 전송 문자의 크

    기(UCSZn2) 등을 표현한다.

    UDRn레지스터는 컴퓨터로부터 전송된 데이터(패킷)이 저장되는 버퍼이

    다. 송신과 수신버퍼가 같은 주소이며 UDRn을 공유한다.[15]

    3.3.4 직렬전송인터페이스

    직렬전송인터페이스(SPI;Serial Peripheral Interface)는 모토롤라사가 제

    안한 시리얼 통신방식이다. 이 기능은 다른 칩들끼리 통신을 할 때 편리

    한 기능이며 이와 비슷한 통신방법으로 IIC 라는 방법이 있고 이 또한

    AVR에서 지원되는 기능이다. 컨트롤러 혹은 기타 SPI가 지원되는 메모

  • - 25 -

    그림 3-6. 범용 비동기식 전송 구조

    Fig. 3-6. Structure of UART.

    리 등으로 통신을 할 때 출력핀(MOSI), 입력핀(MISO), 클럭핀(SCK), 슬

    레이브선택(SS) 핀만 있으면 된다. 보통의 경우는 데이터와 어드레스 신

    호를 연결해야 하므로 회로의 구성이 꽤 복잡해 지는데 이 기능은 인터페

    이스가 많이 간단하다. 시리얼이지만 속도 또한 빠르다. ATmega128의 경

    우는 시스템 클럭/2 bps 까지도 사용할 수 있으므로 7.3728MHz의 클럭을

    사용할 경우 최대 460.8킬로바이트의 전송속도를 가진다. SPI 기능을 사

  • - 26 -

    그림 3-7. SPI 마스터-슬레이브 상호관계

    Fig. 3-7. Master-slave interconnection of SPI.

    용하려면 컨트롤러는 마스터로 다른 컨트롤러(혹은 메모리)는 슬레이브로

    설정해야 하며 이러한 설정은 SPCR 레지스터에서 설정한다. 그림 3-8은

    SPI와 관련된 레지스터들간의 인터페이스이며 각 레지스터의 역할과 기

    능은 다음과 같다.

    SPCR레지스터는 SPI에 대한 인터럽트를 설정하는 레지스터이며, SS핀

    은 마스터인 경우는 Vcc로, 슬레이브인 경우는 GND와 연결하되 입력으

    로 설정해야 한다.

    그림 3-7에서 MOSI핀의 설정은 마스터 컨트롤러 입장에서 볼 때 데이

    터를 출력하는 핀이므로 출력으로 설정되며, 슬레이브에서는 입력으로 설

    정하여 마스터에서 전송한 데이터를 받는다.

    MISO핀은 마스터 컨트롤러가 슬레이브로부터 데이터를 받는 핀이므로

    입력으로 설정해야 하고, 슬레이브 디바이스는 출력으로 설정한다.

    SCK핀은 데이터 전송시 기준 클럭핀으로서 마스터에서는 출력, 슬레이

    브에서는 입력으로 설정한다.

  • - 27 -

    그림 3-8. SPI 블록도

    Fig. 3-8. SPI block diagram..

    3.4 디스플레이 표시장치의 제작

    ATmega128의 타입이 PLL타입이므로 크리스탈발진기와 같이 PCB로 제

    작된 모듈을 구하였으며, SMC를 읽고 쓰기위한 소켓을 구하여 납땜 작

    업을 하였다. 다음은 각 모듈 제작에 관련된 기술을 사진과 함께 정리하

    였다.

    3.4.1 UART 데이터라이팅 모듈

    그림 3-9는 패킷을 SMC에 저장시키는 모듈로서, 프로그램을 통해 제작

  • - 28 -

    된 패킷은 UART기능을 이용하여 SMC에 저장하게 된다. 저장방식은 기

    존 모듈과 동일하게 순서대로 최하위 번지부터 차례대로 저장하게 되며

    컨트롤러의 역할은 컴퓨터와의 통신 및 SMC로 데이터를 저장시키는 일

    을 수행하게 된다. LED는 컴퓨터와의 통신을 통해 입력된 데이터들을 감

    시하는 일종의 디버깅용으로 사용된 것이며, 사용가능한 컨트롤러는

    UART 기능이 있고, SMC를 결선할 만큼 충분한 핀 갯수가 있으면 어느

    컨트롤러를 사용하여도 무방하다.

    그림 3-9 UART 데이터라이팅 모듈

    Fig. 3-9. UART data writing module.

    3.4.2 디스플레이 모듈

    그림 3-10은 완성된 디스플레이 모듈로서 기존 모듈과는 회로가 간단하

    게 되었다.

    컨트롤러는 SMC의 하위 번지부터 저장된 패킷 중 시작명령어를 해독

    하고 디스플레이의 종류를 해독한다. 종류가 판별되면 지연시간을 해독하

    여 임시기억장소에 저장시키며, 크기를 계산하여 만일 시프트 연산이면

  • - 29 -

    그림 3-10. 전광판 모듈

    Fig. 3-10. Display panel module.

    크기에 맞춰 시프트할 수를 계산하게 되고 이를 레지스터에 저장시킨다.

    이후에 컨트롤러로 패치되는 명령어는 실제 전광판에 나타날 데이터이므

    로 패치된 데이터를 SPI 방식으로 도트매트릭스 모듈로 전송시켜 디스플

    레이되도록 한다.

    그림 3-11. 완성된 160*16 전광판

    Fig. 3-11. Completed 160*16 display panel.

  • - 30 -

    3.5 비교검토

    이 장에서는 일반적인 디스플레이 표시장치의 모듈과 제안된 디스플레

    이 모듈의 특징과 장, 단점을 기술하였으며, 제안된 디스플레이 모듈의 정

    지시, 시프트 시 소요되는 시간을 측정, 기술하여 성능에 대해 논하고자

    한다..

    3.5.1 일반적인 디스플레이 모듈

    그림 3-12에서와 같이 기존의 디스플레이 모듈 에서는 컨트롤러, 플래

    시메모리 2종류, FPGA로 구성되며, 장점으로는,

    첫째, 전송속도가 빠르다. 8051은 외부 주변기기와 통신하고자 할때, 시

    리얼 전송방식이 없다. UART 기능은 비동기식 전송방식으로서 컴퓨터와

    통신을 사용할 때 전송 프로토콜을 이용하여 전송하는 방식이며, 또 하나

    는 통신하고자 하는 매체가 컴퓨터가 아니더라도 통신하고자 하는 컨트롤

    러에서도 UART방식을 지원을 해야지만 통신이 가능하다. 8051은 내부레

    지스터에서 시프트 연산이 가능하다. 문제는 레지스터간에는 시프트 기능

    을 활용할 수 있지만, 입출력 포트에서의 외부인터페이스 간의 데이터 전

    송은 모두 병렬전송 방식으로 되어있어 데이터를 시리얼로 전송하는데는

    약간의 어려움이 있다. 그러므로 기존의 모듈은 컨트롤러의 입출력 포트

    로부터 데이터를 출력하여 FPGA로 설계된 시프트 레지스터에 병렬전송

    을 이용하여 저장시킨 후 여기서 도트매트릭스 모듈로 시리얼 방식으로

    전송시킨다. 이때 사용하는 클럭주파수는 22MHz의 높은 주파수 모듈을

    사용하여 전송하는데, 이때 1Bit의 데이터 전송속도는 360nsec 비교적 빠

    른속도로 전송을 한다.

  • - 31 -

    그림 3-12. 일반적인 디스플레이 모듈

    Fig. 3-12. General display module.

    둘째, 안정성이 뛰어나다. 8051은 수십년동안 컨트롤러업계에서 뛰어난

    안정성을 바탕으로 많은 엔지니어들에게 애용되어 왔다. 잡음에도 강하고,

    전류, 전압에도 강하다. 수년간 8051을 이용한 모듈을 사용하여 봤지만,

    주위 환경으로 인하여 데이터가 오류가 난 적은 단 한번도 없었다.

    그러나 단점으로는,

    첫째, 병렬로 데이터 전송이 이루어지는 플래시메모리 2종류를 사용하

    므로 회로가 복잡해지고 회로기판의 크기도 커진다. 또한, 도트매트릭스

    모듈 간의 직렬통신이 안되므로 별도의 시프트 레지스터 회로를 추가하여

    야한다.

    둘째, 8051의 1클럭 시간이 1 μsec(12MHz 클럭 사용시)이므로 연산시간

    이 많이 소요된다. 주로 광고를 목적으로 하는 디스플레이는 움직이 많은

    동적인 요소가 많으므로 연산속도가 느리면 시각적으로 보았을 때 디스플

    레이의 떨림현상이 발생한다.

  • - 32 -

    셋째, 플래시메모리의 제한적인 용량으로 인하여 많은 폰트를 표현하기

    에는 부족하다. 실시간으로 전해지는 뉴스 등에는 많은 폰트데이터들이

    사용되어지고 있다. 물론, 선로를 이용하여 시리얼 통신이 가능하지만 주

    위 여건이 허락지 않을 때는 현재 플래시메모리만으로는 역부족일 것 같

    다. 또한 메모리의 용량이 커질수록 어드레스의 수가 많아지므로 컨트롤

    러의 포트 수가 한정적인 이유로 인해 하드웨어 제작의 어려움이 있다.

    3.5.2. 제안된 디스플레이 모듈

    고안된 디스플레이 모듈의 큰 장점은 회로의 간소화를 통한 비용절감에

    있다. 공학적인 측면으로 보았을 때 물론 성능도 중요하고 여러 가지 요

    소도 중요하겠지만, 같은 효율로 보았을 때 저렴한 비용으로 생산한다면,

    해당 관련 생산업체의 파급효과는 커질 것이다. 요즘같이 다양한 정보가

    쏟아지는 세상에서 전광판의 비중은 커질 것인데, 적은 비용으로 많은 글

    자수와 다양한 움직임을 표현할 수 있다. 장점으로는

    첫째, 회로가 간소화 된다. 프로그램 코드 저장용 플래시메모리가 없어

    지고 ATmega128 내부 플래시메모리(128Kbyte)을 사용하기 때문에 메모

    리가 줄어든다. 128Kbyte의 용량이라면 웬만한 프로그램 코드는 저장시키

    기에 넉넉한 용량이다. 또한, 컨트롤러의 SPI 방식도 데이터 처리속도가

    빠르므로 시리얼 전송을 위한 FPGA를 추가시킬 필요가 없다.

    둘째, 빠른 데이터 처리를 들 수 있다. ATmega128은 하나의 클럭에 한

    명령이 동작한다. 즉, MHz당 1MIPS의 연산속도를 가지므로 12MHz이면

    12MIPS의 처리속도를 가진다. 이는 컨트롤러의 설계 구조가 파이프라인

  • - 33 -

    구조이며, 메모리가 프로그램 전용과 데이터메모리가 별도로 구조화되어

    있는 하버드구조이다. 기존에 사용되어지는 컨트롤러 중에서는 가장 속도

    가 빠르다.

    셋째, 각종 C와 C++에 적합한 풍부한 명령들을 가지고 있으며, 소스와

    코어가 공개되어 있으므로 사용자가 쉽게 프로그램을 코딩할 수 있다. 아

    울러 8051에 없는 많은 기능들을 가지고 있으므로 컨트롤러 한 개 당 가

    격을 비교해 볼 때 단가가 다소 높지만 여러 부품들을 구성한 모듈로 보

    았을때는 비용이 절감이 된다.

    넷째, 스마트미디어카드의 대용량으로 많은 폰트를 저장시킬 수 있다.

    기존의 플래시메모리 보다 132배 더 많은 데이터를 저장시킬 수 있으므로

    가격 대비 성능면에서 월등한 비용절감이 예상된다.

    단점으로는 일반 플래시메모리에 비해 스마트미디어카드의 데이터 읽

    기, 쓰기 동작 시 타이밍 맞추기가 상당히 까다롭다. 또한, 스마트미디어

    카드의 이동성이 편리한 반면에 카드 전면에 핀이 노출되어 있어 손상의

    되기 쉬운 단점이 있다.

    3.5.3 비교

    가. 메모리의 비교

    표 3-1는 SMC와 플래시메모리를 비교한 것으로서 읽기, 쓰기시간이 각

    각 1.2배, 3.5배 이상 빠르며, 소비전류에서도 SMC가 효율이 우수하다.

    저장면에 있어서는 125배 이상 용량이 크다.

  • - 34 -

    표 3-1. 메모리 비교

    Table 3-1. Comparison of memory

    Flash Memory SmartMedia Card 비고

    Storage 512Kbyte 64Mbyte 132배

    Pin count 32Pin 22Pin

    Inside

    Controller× ×

    Read Speed 13Mbps 15Mbps

    Write Time 90nsec 25nsec 1cycle

    Erase Time 10usec 63usec 528byte

    Current 50mA 20mA

    나. 디스플레이 정지시 비교분석(160dot*16dot)

    표 3-2는 문자 디스플레이 정지시 기존모듈과 고안된 모듈간의 시간을

    비교한 표이며, 그림 3-13에서 보는 것처럼 1비트 전송에 소요되는 시간

    은 기존모듈이 2.3배 빠르게 측정되었으며 그림 3-14에서는 1라인 즉 가

    로 160도트의 전송시간은 360nsec*160 이므로 각각 57.6usec, 137.usec 정

    도의 측정결과가 나왔다. 그러므로 총 2560개의 도트 중 첫 번째 도트부

    터 마지막 도트까지 1번 점멸하는데 걸리는 시간은 기존모듈이 1msec,

    고안된 모듈은 2.2msec의 계산결과가 도출되었으며, 1초 동안의 총 스캔

    횟수는 각각 1000회, 455회로 기존 모듈이 스캔횟수가 많았다.

  • - 35 -

    표 3-2. 디스플레이 정지시 시간 비교(160도트*16도트)

    Table 3-2. Comparison of suspension time of display(160dot*16dot)

    1bit

    transmission Time

    160dot

    access timeTotal Time Scam time 비고

    기존모듈 360nsec 57.6usec 1msec 1000

    고안된 모듈 860nsec 137.6usec 2.2msec 455

    그림 3-13. 1비트 전송 시간(nsec)

    Fig. 3-13. 1bit transmission time(nsec)

    0 200 400 600 800 1000

    고안된 모듈

    기존 모듈

    그림 3-14. 160개 도트의 처리 시간(usec)

    Fig. 3-14. 160dot processing Time(usec).

    고안된 모듈

    기존 모듈

  • - 36 -

    그림 3-15. 전체 처리 시간(msec)

    Fig. 3-15. Total processing Time(msec).

    위의 결과표로 보았을 때, 정지 상태에서의 디스플레이는 기존의 모듈

    이 빠른 것으로 나타났다. 총 2560개의 Dot를 표현해야하므로 1초동안에

    기존 모듈은 1000회를, 고안된 모듈은 455회를 스캔한다.

    다. 왼쪽 시프트 디스플레이 비교분석(16dot*16dot)

    표 3-3를 통해서 컨트롤러의 연산이 포함되는 디스플레이에서는 고안된

    모듈이 속도가 빠르다. 8051은 1개의 명령어 수행시간이 1usec인 반면에

    ATmega128은 83nsec 이므로 본 프로젝트 모듈은 연산시 더 뛰어난 효

    과를 볼 수 있다.

    표 3-3. 왼쪽 시프트 동작 시의 시간

    Table 3-3. Time of operating the shift on left side

    Data

    Fetch(A)시프트 Op.(B)

    Serial

    Tran.(C)

    Total Time

    (A+B+C)비고

    기존모듈 32usec 2176usec 92.16usec2.3msec

    (2.85m)()실제시간

    고안된 모듈 2.7usec 180.6usec 220usec403.3usec

    (630usec)()실제시간

    비고2byte*16line

    *fetch cycle

    136(total shift)

    *16line

    *fetch cycle

    serial

    tran.

    *16*16line

  • - 37 -

    그림 3-16. 왼쪽시프트 동작시 전체시간

    Fig. 3-16. Total time of operating the shift on left side.

    0 500 1000 1500 2000 2500

    고안된 모듈

    기존 모듈

    위의 실험은 1개의 도트매트릭스 모듈을 사용하여 측정한 것이므로 실

    제 160*16 전광판에서 왼쪽 시프트 디스플레이 시 기존모듈은 23msec인

    반면에 고안된 모듈은 4msec 정도의 시간이 소요되어 본 연구에서 제작

    된 전광판의 성능이 보다 개선되었다. 러나 컨트롤러의 이론적인 수치로

    계산한 값과 실제 측정한 값과는 차이가 있었다. 이것은 연산시간, 전송시

    간, 오실로스코프 측정에 대한 미소한 오차로 인한 것이다.

    그림 3-17은 완성된 전광판에 문자를 표현한 것으로 대체로 안정적으로

    구동이 되었으며, 정지, 동적인 화면 모두 육안으로는 기존 모듈과의 차이

    점을 느끼지 못하였다 .

    그림 3-17. 출력된 전광판

    Fig. 3-17. Output display panel.

  • - 38 -

    제4장. 결론

    위와 같은 실험을 통하여 몇가지 결론에 도달하게 되었다.

    우선, 가격대비 성능면에서 비용의 절감과 함께 성능을 향상시키게 되

    었는데, 마이크로 컨트롤러의 비용이 기존 모듈의 것보다 3배 이상의 비

    용이 들지만, 모듈 조립 후 기존 모듈과의 비용이 1/3이므로 전체적으로

    40%이상의 비용이 절감이 되었다.

    데이터저장에 있어서는 기존 모듈보다 132배(64Mbyte) 이상이 증가하

    였으므로, 많은 데이터의 표현과 함께 디스플레이 방법도 여러 가지로 표

    현할 수가 있게 되었다.

    고성능 마이크로컨트롤러의 사용으로 불필요한 메모리와 시프트 레지스

    터의 낭비를 줄여 회로를 간소화 시켰으며, 기판의 크기를 줄일 수 있게

    되었다. 또한, 필요한 메모리의 용량이 컨트롤러에서 제공되므로 굳이 플

    래시메모리 사용 없이도 내부 메모리에서 명령어 코드를 직접 억세스하므

    로 속도가 더 향상되었다. 아울러 컨트롤러의 SPI방식을 이용하여 FPGA

    로 설계된 시프트레지스터를 사용할 필요가 없으므로 전력효율의 증가와

    함께 더 향상된 속도로 데이터를 전송할 수 있게 되었다.

    고성능 마이크로컨트롤러의 데이터 처리 속도 향상으로 말미암아 동적

    인 효과가 있는 디스플레이에서는 고안된 모듈의 성능이 향상되었다. 대

    개 대형 전광판에는 16비트 마이크로컨트롤러가 사용되는데 이는 어셈블

    리어로 코딩함에 있어서 메모리 처리, 명령어 수의 증가와 함께 어려움이

    많게 된다. 그러나 현재 생산되는 8비트 마이크로컨트롤러도 속도가 매우

    빠르므로 고가의 컨트롤러에 못지않는 성능을 나타내기 때문에 많은 비용

    없이 제작될 수가 있다.

  • - 39 -

    참고문헌

    [1] 김대용, 미래를 설계하는 반도체, 사이언스북, pp.132-156, 2000.

    [2] 메모리카드의 비교분석

    http://www.memoryda.com/shop/mall/freeboard.asp?code=3

    [3] 신경철, 마이컴제어응용실습, 효성출판사, pp.55-63, 1999

    [4] 임승원, 인터페이스기초, 연학사, pp.212-230, 2000.

    [5] DORF, 최신제어시스템, 피어슨에듀케이션코리아, pp.93-105, 1996.

    [6] 마츠모토쇼이치, 전자디스플레이, 성안당, pp.203-240, 1998.

    [7] 도트매트릭스모듈 데이터시트

    http://www.vissem.co.kr/files/VC096T-16.pdf

    [8] GB기획센터, 광전자, 한진출판사, pp156-172, 1997.

    [9] 차영배, 원칩마이크로컴퓨터 8051, 다다미디어, pp.149-180, 1997.

    [10] 차영배, AVR 마이컴, 다다미디어, pp.381-389,2003.

    [11] 황해권,배성준, I Love ATmega128, 복두출판사, pp.17-25, 2004.

    [12] 메모리카드의 비교

    http://www.samsung.com/Products/Semiconductor/Flash/TechnicalInfo/Applic

    ationNotes.htm

    [13] 스마트미디어 카드 데이터 시트

    [14] Gurewich저 이정길역, VISUAL BASIC4, 정보문화사, pp.153-175,

    1997.

    [15] ATmega128 데이터시트

    http://atmel.com

  • - 40 -

    감사의 글

    먼저 인하대학교 공학대학원에서 공부할 수 있도록 길을 인도해 주시고

    논문까지 쓸 수 있도록 해주신 하나님께 감사를 드립니다.

    2년동안 전공의 세부적인 부분들을 가르쳐주신 김흥수교수님, 박효달교

    수님, 윤광섭교수님, 최상방교수님께 감사드리고 논문이 나오기까지 조언,

    충고로 애써주신 홍승홍교수님께 진심어린 감사의 말씀을 드리고 싶습니

    다. 아울러 제가 2년동안 공부할 수 있도록 많은 배려를 해주신 인천전자

    공업고 정보전자과 부장이신 오현대 부장님과 선생님들께도 감사의 말씀

    을 드리고 싶습니다. 끝으로 이 책이 나오기까지 기도로 뒷받침해 주신

    어머니와 많은 관심과 격려 및 내조를 아끼지 아니한 내 아내 김은희와

    토끼같은 두 아들 강석, 강일이에게 기쁨과 감사의 메시지를 드리고 싶습

    니다.

    목차제1장. 서론제2장. 전광판에 사용되는 부품의 종류 및 특성2.1 도트매트릭스 모듈2.2 마이크로컨트롤러2.2.1 intel 8051 계열2.2.2 AVR 계열2.2.3. 메모리 카드

    제3장. 전광판 모듈의 분석3.1 전광판 모듈의 기본적 구성과 특징3.1.1 프로그램 저장용 플래시메모리3.1.2 데이터 저장용 플래시메모리3.1.3 컨트롤러3.1.4 시프트레지스터3.1.5 컴퓨터와의 직렬통신

    3.2 제안된 전광판의 구성과 특징3.2.1 UART를 이용한 데이터라이터 모듈3.2.2 전광판 모듈

    3.3 소프트웨어적 기술3.3.1 패킷3.3.2 패킷 전용 프로그램3.3.3 범용 비동기식 전송3.3.4 직렬전송인터페이스

    3.4 디스플레이 표시장치의 제작3.4.1 UART 데이터라이팅 모듈3.4.2 디스플레이 모듈

    3.5 비교검토3.5.1 일반적인 디스플레이 모듈3.5.2. 제안된 디스플레이 모듈3.5.3 비교

    제4장. 결론참고문헌

    표목차표 2-1. 메모리카드의 비교표 2-2. 메모리 조직표 3-1. 메모리 비교표 3-2. 디스플레이 정지시 시간 비교(160도트*16도트)표 3-3. 왼쪽 시프트 시의 시간

    그림목차그림 2-1. 16×16 도트매트릭스 모듈그림 2-2. 타이밍도그림 2-3. 기능별 블록도그림 2-4. 메모리 조직그림 2-5. 아이디 읽기 동작 타이밍도그림 2-6. 이레이져 동작 타이밍도그림 2-7. 프로그램 동작 타이밍도그림 2-8. 읽기1 동작 타이밍도그림 3-1. 일반적인 디스플레이 모듈그림 3-2. 패킷 저장용 모듈그림 3-3. 제안된 전광판 모듈그림 3-4. 비주얼 베이직을 이용한 패킷 생성 프로그램그림 3-5. 패킷의 완성된 형태그림 3-6. 범용 비동기식 전송 구조그림 3-7. SPI 마스터-슬레이브 상호관계그림 3-8. SPI 블록도그림 3-9. UART 데이터라이팅 모듈그림 3-10. 전광판 모듈그림 3-11. 완성된 160*16 전광판그림 3-12. 일반적인 디스플레이 모듈그림 3-13. 1비트 전송 시간(nsec)그림 3-14. 160개 도트의 처리 시간(usec)그림 3-15. 전체 처리 시간(msec)그림 3-16. 왼쪽시프트 동작시 소요되는 전체시간그림 3-17. 출력된 전광판

    목차제1장. 서론 1

    제2장. 전광판에 사용되는 부품의 종류 및 특성5 2.1 도트매트릭스 모듈 5 2.2 마이크로컨트롤러 7 2.2.1 intel 8051 계열 7 2.2.2 AVR 계열 8 2.2.3. 메모리 카드 10

    제3장. 전광판 모듈의 분석 17 3.1 전광판 모듈의 기본적 구성과 특징 17 3.1.1 프로그램 저장용 플래시메모리 17 3.1.2 데이터 저장용 플래시메모리 18 3.1.3 컨트롤러 18 3.1.4 시프트레지스터 19 3.1.5 컴퓨터와의 직렬통신 19 3.2 제안된 전광판의 구성과 특징 19 3.2.1 UART를 이용한 데이터라이터 모듈 19 3.2.2 전광판 모듈 20 3.3 소프트웨어적 기술 21 3.3.1 패킷 21 3.3.2 패킷 전용 프로그램 22 3.3.3 범용 비동기식 전송 24 3.3.4 직렬전송인터페이스 24 3.4 디스플레이 표시장치의 제작 27 3.4.1 UART 데이터라이팅 모듈 27 3.4.2 디스플레이 모듈 28 3.5 비교검토 30 3.5.1 일반적인 디스플레이 모듈 30 3.5.2. 제안된 디스플레이 모듈 32 3.5.3 비교 33

    제4장. 결론 38

    참고문헌 39

    표목차표 2-1. 메모리카드의 비교 10표 2-2. 메모리 조직 12표 3-1. 메모리 비교 34표 3-2. 디스플레이 정지시 시간 비교(160도트*16도트) 35표 3-3. 왼쪽 시프트 시의 시간 36

    그림목차그림 2-1. 16×16 도트매트릭스 모듈 5그림 2-2. 타이밍도 6그림 2-3. 기능별 블록도 11그림 2-4. 메모리 조직 13그림 2-5. 아이디 읽기 동작 타이밍도 13그림 2-6. 이레이져 동작 타이밍도 14그림 2-7. 프로그램 동작 타이밍도 15그림 2-8. 읽기1 동작 타이밍도 16그림 3-1. 일반적인 디스플레이 모듈 18그림 3-2. 패킷 저장용 모듈 20그림 3-3. 제안된 전광판 모듈 21그림 3-4. 비주얼 베이직을 이용한 패킷 생성 프로그램 22그림 3-5. 패킷의 완성된 형태 23그림 3-6. 범용 비동기식 전송 구조 25그림 3-7. SPI 마스터-슬레이브 상호관계 26그림 3-8. SPI 블록도 27그림 3-9. UART 데이터라이팅 모듈 28그림 3-10. 전광판 모듈 29그림 3-11. 완성된 160*16 전광판 29그림 3-12. 일반적인 디스플레이 모듈 31그림 3-13. 1비트 전송 시간(nsec) 35그림 3-14. 160개 도트의 처리 시간(usec) 35그림 3-15. 전체 처리 시간(msec) 36그림 3-16. 왼쪽시프트 동작시 소요되는 전체시간 37그림 3-17. 출력된 전광판 37