Download presentation
Presentation is loading. Please wait.
1
임베디드 시스템
2
Chapter 2 임베디드 시스템의 하드웨어 구조
3
임베디드 시스템의 구조 임베디드 시스템은 크게 하드웨어와 소프트웨어로 구성된다. 하드웨어는
프로그래머가 작성한 프로그램을 읽어서 해석하며 각종 연산 및 제어를 수행하는 프로세서 명령이나 데이터를 저장하는 메모리제어기 입출력 동작을 담당하는 입출력 장치로 구성 소프트웨어는 운영체제와 실제 하드웨어를 제어하는 디바이스 제어 프로그램 그리고 응용 프로그램으로 구성 그림은 임베디드 시스템의 구성을 보여준다. 응용 소프트웨어는 계산기 게임 프로그램을 예로 들수 있고, 시스템 소프트웨어는 디바이스를 제어하는 프로그램을 포함하여 통신 프로토콜이나 그래픽 API 등을 말한다.
4
하드웨어 구조 ROM, Flash, DRAM, SRAM 키보드, 마우스, 터치스크린 LCD, 모니터
ARM, PowerPC, MIPS, … ROM, Flash, DRAM, SRAM 키보드, 마우스, 터치스크린 LCD, 모니터 하드에어 구조를 좀더 살펴보면 프로세서는 ARM이나 개인용 PC의 펜티엄 프로세서와 같이 데이터를 처리하고 각종 장치들을 구동하는 역할을 담당한다. 메모리 장치는 크게 휘발성 메모리와 비휘발성 메모리로 나누어진다. 입출력 장치는 휴대폰의 키패드와 같은 입력장치와 LCD와 같은 출력장치를 말하는것으로 외부와 프로세서 사이의 정보를 교환한다
5
하드웨어 구조의 프로세서 프로세서 디지털 시스템의 핵심 부분
CPU(Central Processor Unit)라고도 함 프로그램을 메모리 장치에서 읽어 연산처리, 비교처리, 데이터 전송, 편집, 변환, 테스트와 분기 등의 데이터 처리와 각종 입출력 장치를 구동 제어장치, 연산장치, 레지스터와 데이터 버스로 구성 프로세서의 정의 프로세서의 구조 레지스터는 프로세서 내부에 있는 데이터를 일시적으로 보관하는 임시 기억장치로, 프로그램의 실행 중에 사용되며 고속으로 액세스 할수 있다. 범용 레지스터 : 사용자가 프로그램 내에서 또는 데이터 처리에 필요한 작업을 수행하기 위해 사용 제어 레지스터 : 프로그램 카운터(PC) 와 같은 프로그램이나 프로세서를 제어할 때 사용 상태 레지스터 : 프로세서의 상태를 나타낸다 연산장치는 산술연산, 논리연산, 보수연산, 쉬프트와 같은 연산을 수행한다. 제어장치는 명령을 해석하고 실행하며, 명령을 읽고 실해하는데 필요한 프로세서 내외부의 각 장치 사이의 데이터 흐름을 제어한다. 내부버스
6
프로세서의 종류 i386 ARM PowerPC M68K MIPS 오랜 기간의 사용으로 안정성 확보
간단한 명령어 사용 전력 소모가 적어 휴대폰이나 PDA같은 휴대 단말기에 많이 사용 PowerPC 강력한 네트워크 기능을 포함한 SoC로 널리 알려짐 M68K 네트워크 장비 및 휴대 단말기에서 많이 사용 MIPS 고속의 처리 능력 고속 네트워크 장비 등에 많이 사용
7
하드웨어 구조의 비교 폰 노이만 아키텍쳐 v.s. 하버드 아키텍쳐 (1)
폰 노이만(Von-Neumann) 아키텍쳐 명령어와 데이터를 위한 메모리 인터페이스가 하나임 명령어를 읽을 때 데이터를 읽거나 쓸 수 없음 IBM 계열 PC(개인용 PC), ARM7 등
8
하드웨어 구조의 비교 폰 노이만 아키텍쳐 v.s. 하버드 아키텍쳐 (2)
하버드(Havard) 아키텍쳐 명령어를 위한 메모리 인터페이스와 데이터를 위한 메모리 인터페이스가 분리되어 있음 명령어를 읽을 때 데이터를 읽거나 쓸 수 있어 성능이 우수함 버스 시스템이 복잡하여 설계가 복잡함 ARM9, ARM10 등
9
하드웨어 구조의 메모리 메모리 장치의 용도 메모리 장치의 종류 프로그램과 데이터를 저장하기 위한 공간
주 기억 장치 (main memory) 프로그램이 실행되는 동안 프로그램과 데이터 저장 / DRAM이 많이 사용 보조 기억 장치(secondary memory) 주기억장치보다 빈번히 사용되지 않는 프로그램과 데이터 저장 HDD, SD, MMC 등이 사용 캐시 (cache) 주 기억장치의 접근 속도를 빠르게 하기 위해서 프로세서 주변에 배치된 소 용량의 메모리 / SRAM이 사용
10
하드웨어 구조의 입출력 장치 프로세서와 정보를 교환하는 장치 디지털 신호 또는 아날로그 신호를 포함
프로세서와는 메모리 장치와 같이 디지털 신호인 어드레스, 데이터 및 제어 신호를 통해서 연결됨
11
입출력 장치 제어 입출력 장치를 제어하기 위해서는 어드레스 할당이 필요하고 데이터를 교환 하기 위한 데이터 버스와 제어 신호 사용 표준 I/O 맵 방식(I/O-mapped peripheral) 전용의 입출력 장치 주소 공간을 할당하여 사용 인텔의 x86 CPU 계열이 대표적 메모리 맵 방식(Memory mapped peripheral) 메모리 주소 공간의 일부를 활용하여 사용 대부분의 임베디드 프로세서에서 사용 됨
12
하드웨어 구조의 버스 버스(BUS)란 ? 컴퓨팅 시스템의 각 모듈에서 발생한 신호를 공유해서 사용할 수 있도록 만든 신호의 집합 구동 주체(CPU 등)에 의해서 해당 소자에 데이터를 읽거나 쓸 수 있도록 구성됨 어드레스 버스(address bus), 제어버스(control bus), 그리고 데이터 버스(data bus)로 구성됨 명령 또는 데이터 주소 제어신호
Similar presentations