본문 바로가기

Study_Embedded

임베디드 시스템이란?

728x90

- Embedded System : 컴퓨터의 Hardware와 Software가 결합되어 특정한 목적을 수행하는 System

  • Ex) 버스, 지하철 출입시 교통카드를 찍는 단말기 안에 임베디드 시스템이 내장되어있음

- Embedded System의 특징

  • CPU, Memory등의 Resource들이 매우 제한적이므로 전력 최소화와 메모리 최적화 필요
  • 제한된 동작을 제한된 시간 안에 수행해야 함
  • 크기가 작고 저렴함
  • 단순한 동작을 하고 실행중 Reset이 불가능하므로 신뢰성이 높아야 함

- Embedded Hardware

  • CPU or MPU : 중앙처리장치
  • Memory(RAM + ROM)
  • Input / Output Devices
  • Communication Interfaces : 다른 Embedded 장치와 통신
  • Application Specific Circuitry : 특정 동작 회로
  • MCU(Micro Controller) : CPU + Memory + I/O 장치가 모두 포함. 주변 장치와의 연결이 주 목적
  • MPU(Micro Processor) : 계산이 주 목적. MCU보다 용량이 크고 속도도 빠름

- Embedded Software

  • OS(특수목적 OS)-Kernel, Device Driver(주변장치 사용 목적), Application(장치 활용 Software. Ex) Firmware)
    • Firmware : Hardware를 제어하는, 즉 System 자체를 동작시키는 Software. 특정 기능만을 수행

-  Processor

  • CISC(Complex Instruction Set Computer) : 명령어가 복잡하고 다양함. 이러한 명령어들을 이해해야 하므로 Processor의 Hardware가 복잡함. 저장공간이 RISC에 비해 상대적으로 작음. Ex) x86 series
  • RISC(Reduced Instruction Set Computer) : 단순하고 적은 갯수의 명령어를 가짐. 기능을 일일히 명령하며 알려줘야 하므로 Compiler(Software)가 복잡함. Ex) ARM : 임베디드 시스템에서 많이 사용

- Memory 

1) 주 기억장치(휘발성. 전원이 꺼지면 데이터 소실 : 이 방식이 속도가 빨라 사용)

  • RAM(Random Access Memory) : 임의의 주소에 접근하여 읽고 쓰기가 가능. 휘발성
    • SRAM(Static RAM) : Filp-Flop을 통해 데이터 저장. DRAM과 달리 전원이 공급되는 한 데이터가 변하지 않음. DRAM에 비해 속도가 빠름
    • DRAM(Dynamic RAM) : Capacitor를 통해 데이터 저장. Capacitor는 시간이 지나면 방전되어 데이터가 손상되므로 Refresh 회로를 통해 데이터를 유지시켜야 함. SRAM에 비해 용량이 크고 저렴함. 대부분의 PC가 사용

2) 보조기억장치(비휘발성. 전원이 꺼져도 데이터가 유지됨. 주 기억장치에 비해 훨씬 느림)

  • ROM(Read Only Memory) : 저장된 데이터를 읽을 수만 있고 쓰기(수정)은 불가. BIOS는 내용이 변하면 안되므로 ROM에 저장
    • BIOS(Basic Input Output System) : System의 입출력을 관리하는 Firmware로, 컴퓨터가 켜질 때 가장 먼저 시작되는 프로그램. Hardware와 Software간의 데이터 흐름을 관리
  • PROM(Programmable Read Only Memory) : 필요에 따라 프로그래밍 가능
  • EPROM(Erasable Programmable Read Only Memory) : PROM의 기능에서 지우는 것까지 가능
  • EEPROM(Electically Erasable Programmable Read-Only Memory) : 전기적으로 데이터를 지울 수 있음. 데이터를 1byte씩 다뤄 속도가 느림. 전원이 없어도 저장해야 하는 데이터를 저장함
  • Flash Memory : EEPROM의 일종으로 프로그램 코드를 저장 / 실행하는 부분. 전기적으로 데이터를 저장 / 지울 수 있는 비휘발성 메모리 칩. 데이터를 하나씩 처리하는 기존의 EEPROM과 달리 데이터를 블록 단위로 처리할 수 있다

- 프로그램은 RAM에서 동작하다 저장 버튼이 눌리면 ROM / Flash Memory등의 보조 기억장치에 저장됨

- OS(운영체제)는 보조기억장치에 저장

- CPU는 RAM과만 일을 하고, 보조기억장치에는 직접 접근 불가 : RAM에 OS를 복사한 후 CPU가 실행시킴

 

- OS(Operating System) : 컴퓨터를 킨 후의 모든 일은 OS를 통해서 진행. 여러 프로그램 실행시 어떤 프로그램이 Hardware의 Resuorces(CPU, Memory등)을 사용할지 제어함

- Kernel : OS에서 Hardware를 담당하거나 응용프로그램과 Hardware를 중계하는 역할을 함