Lec. 7. Microprocessor info

Microprocessor info

Embedded computer

  • IC - integrated circuit
    • 집적 회로는 특정 기능을 수행하는 전기 회로와 반도체 소자(주로 트랜지스터)들을 하나의 칩(Chip)으로 구현한 것이다. - single piece of silicon
    • 극소형화(miniaturization), 대량생산(mass production), 비용 절감(cost reduction)
  • MCU - Microcontroller unit
    • CPU, 각종 주변장치, 메모리 등이 합쳐진 IC 회로 + 메모리 버스 등등
    • 추후에 소프트웨어적으로 개발을 진행할 수 있다.
  • CPU - Cental processing unit
    • Program instruction을 실행하는 하드웨어 회로
    • instruction - 명령어 조합, 하나 또는 다수의 연산자(operand)로 이루어진다.
  • PCB - printed circuit board
    • 전자 소자를 붙잡아주는 판
    • 전선이 보드에 그려져 있어서 소자의 양 전극을 연결 해줌.

Typical embedded system software operations

  • Closed-loop control
    • 계속 센서 체크 피드백 받음 -> 조절
  • Sequencing
    • 처음부터 끝까지 과정(step)이 모두 설계되어 있음.
  • Signal conditioning and processing
    • 다수의 센서를 통해 신호 제대로 가는지 체크 -> 올바른 신호 보내주기 위해 노이즈 걸러냄.
  • Communications and networking
    • 다른 subsystems 또는 other system 이랑 소통함. 패킷 전송, 디코딩 과정 등등 (ex. 드론 무선 조종)

Interfaces of embeded systems

  • Peripheral
    • CPU 외 주변기기 전부
  • analog
    • 무한한 수
  • digital
    • 유한한 수
  • ADC(analog-to-digital converter)
    • 아날로그를 디지털 값으로 변환
  • DAC(digital-to-analog converter)
    • 디지털을 아날로그 값으로 변환

Concurrency - 동시 발생성

  • MCU가 동시에 여러 신호를 처리해 줄 수 있다.
  • 특정 기능이 추가될 수록 복잡성이 증가함
    • 하나가 추가되면 여러개가 추가되기 때문
  • MCU는 concurrency를 제공한다.
    • 한번에 여러 작업 수행 가능
    • interrupt handler - 시스템 작업에 문제가 발생했을 경우 suspend시킴
      • CPU가 어떠한 작업을 실행 중일때, 우선적으로 필요한 작업이 생겨 이를 CPU에게 알리는 행위
    • 하드웨어 Peripherals가 CPU와는 관계 없이 작업을 수행함.

Scheduler

  • 명령 시스템을 이용한 Mandatory Unit
  • 프로세서에서 어떠한 순서로 프로세스를 처리해줄지를 관리해줌
  • 필요에 따라서 실행 context를 전환하여 올바르게 실행한다
  • 동기식과 비동기식으로 나뉨

Responsiveness - 민감성

CPU 리소스를 공유할 때, 충분한 민감도를 제공하는 것이 중요하다

  • Raw processing speed
    • RAW 파일을 가공하는 속도
    • 인코딩 / 디코딩 속도
  • Task scheduling
    • 치명적인 프로세싱에 집중해야 한다
  • Multicore processing
  • Multiple processors

Reliability and fault handling

  • Reliability
    • 사용자가 시스템을 재부팅하도록 하지 않는다
    • 다른 문제로 연결되지 않도록, 현재 failure의 impact를 최소화 해야한다
  • failure를 detect하는 방법
    • 다른 센서의 오류를 검출하기 위해서 더 많은 센서를 utilize 해야한다
    • 소프트웨어는 이러한 센서들을 run time 중에 이용하거나 실행 history(log)를 분석하는 방법으로 사용할 수 있다
    • 예기치 않는 case를 다루는 많은 양의 소프트웨어 루틴이 있다

Diagnotics

진단 시에 기계적인 컴포넌트(단자)의 정보에 대해 쉽게 파악할 수 있도록 하는 것이 중요하다.

Constraints - 강제/제한

chip을 제작하는데 설계자들의 option을 제한하는 요소

  • Costs(비용) / Size(크기) / Weight(무게) / Power(전력) / Working range(작동 범위) / Flexibility(범용성)

Processor(CPU) - Microcontroller - Board

CPU - ARM Cortex-M0+

image

  • instructions/data/code에 대한 정보를 얻기 위해 메모리와 통신함
  • AHB-Lite interface를 통해서 프로세서 외부에 있는 메모리와 통신한다
  • NVIC(Nested Vectored Interrupt Controller)를 사용함

Woojin Oh © 2023. All rights reserved.

Powered by Hydejack v9.2.1