728x90

공부 정리 83

ARM 프로세서 동작모드

프로세서가 프로그램 실행할 때 권한을 설정하며 6개의 특권 모드(Privileged Mode)와 1개의 사용자 모드(User Mode)로 총 7개의 동작모드가 존재함. Privileged Mode예외 처리, 시스템 자원에 접근하며, 아래 모드로 구성됨. - SystemOS를 위한 동작모드로 OS 커널 작업을 실행하며, 시스템 자원에 접근이 가능함. 예외 발생 없이 진입하며, User Mode와 동일한 레지스터 셋을 사용함. - Abort명령어, 데이터 메모리 접근에 오류가 발생하면 나오는 Abort 예외 발생 시 진입. 명령어 접근 오류(Pre-fetch abort)는 명령어 Pre-fetch 과정에서 발생하는 오류이며 데이터 접근 오류(Data abort)는 데이터 alignment, 가상 어드레스 변..

임베디드 OS - 실시간 OS

임베디드 OS 특성 범용 OS에 비해서 작은 크기로, 빠른 부팅, 저전력, 비 디스크 방식의 운용. 다양한 프로세서를 지원하고 빠른 응답 속도가 존재함. 메모리 기반의 파일/DB 시스템을 운영함. 목표 시스템에 따라서 구성이 변경 가능한 컴포넌트 기반 OS가 많이 사용됨. 실시간 OS의 특성 제한 시간 내 출력하고, 정시에 작업 수행이 가능한 환경. 예측 가능, 일정한 응답 시간 요구하는 응용 프로그램을 지원함. HW 자원 사용으로 시간 제한 극복. 우선 순위를 설정해 실행 시간 할당. - Hard real-time; 경성 실시간일정 시간 안에 작업을 처리해야 하며, 제한 시간을 넘길 경우 시스템 실행을 실패로 간주. 군사무기, 항공기 등에 적용. - Soft real-time; 연성 실시간제한 시간 초..

ARM에 대한 기초적인 지식

ARM;Advanced RISC Machine여러 회사의 투자를 통해 설립한 회사로 ARM 프로세서 코어를 IP(Intellectual Property;지적 재산권) 형태로 무수히 많은 반도체 제조 회사에 라이센싱함. 32 bit 임베디드 프로세서 시장의 70% 이상 차지하며, 저전력 고성능 퍼포먼스로 휴대용 장치에 많이 사용됨. 16 bit 명령어, Java 코드 가속, DSP 기능, 보안 기능을 제공함. - ARM CoreARM 프로세서의 명령어 셋을 실행가능한 HW로 이를 ARM 코어의 HW 구조를 ARM 구조라고도 함. ARM 시스템 코어가 구조와 성능 결정함. 하드 매크로 셀과 합성 가능한 코어로 제공. 하드 매크로 셀;Hard Macrocell(레이아웃 수준 설계, 설계 변경 불능, 코어 크기..

C++] 명품 C++ 프로그래밍 5장 실습문제

개인적으로 C++을 공부할 때 작성해놓았던 코드들을 찾았다.혼자 책을 사서 독학하던 시절에, 그리고 학부생 시절에 복습하면서 했던 문제들이라서어떤 문제들은 깔끔히 잘 정리되어 있고, 어떤 문제들은 허접한 버그가 있을 수도 있다.확인은 해뒀지만, 확인하지 못하거나 고려해야 할 버그, 오탈자 등은 댓글을 남겨주시라. 그간 공부한 것들을 정리하는 블로그이기 때문에 올려놓는다. 실습문제 1. 두 개의 Circle 객체를 교환하는 swap() 함수를 '참조에 의한 호출'이 되도록 작성하고 호출하는 프로그램을 작성하라. #include using namespace std; void swap(int& a, int& b) { int tmp; tmp = a; a = b; b = tmp; } int main() { int..

C++] 명품 C++ 프로그래밍 4장 실습문제

개인적으로 C++을 공부할 때 작성해놓았던 코드들을 찾았다.혼자 책을 사서 독학하던 시절에, 그리고 학부생 시절에 복습하면서 했던 문제들이라서어떤 문제들은 깔끔히 잘 정리되어 있고, 어떤 문제들은 허접한 버그가 있을 수도 있다.확인은 해뒀지만, 확인하지 못하거나 고려해야 할 버그, 오탈자 등은 댓글을 남겨주시라. 그간 공부한 것들을 정리하는 블로그이기 때문에 올려놓는다. 실습문제 1. 다음은 색의 3요소인 red, green, blue로 색을 추상화한 Color 클래스를 선언하고 활용하는 코드이다. 빈칸을 채워라. red, green, blue는 0~255의 값만 가진다. #include using namespace std; class Color { int red, green, blue; public: ..

임베디드 시스템(Embedded System) 구조

임베디드 시스템 vs 범용 컴퓨터 프로세서 내장(프로세서, 메모리, 입출력 장치)로 구성되는 구조를 갖고, 하드웨어 성능 향상과 소프트웨어의 유연성 측면에서 두 가지 모두 고려하는 공조설계가 가능함. 또한, 소프트웨어 사용을 통해서 시스템 설계, 구현 시간 단축, 기능 확장성 등에서 용이함. 범용 컴퓨터의 범용성과 시스템 유연성이 떨어지는 것은 임베디드 시스템에서 특정 응용 분야에 최적화하는 과정, 그 과정에서의 성능 향상 추구로 인해 발생하는 부분. 주요 레지스터 PC;Program Counter다음 실행할 명령어가 저장된 프로그램 메모리의 주소값을 저장(프로그램 실행위치 저장)하며, PC 값을 변경해 프로그램의 실행 흐름 제어 IR;Instruction Register프로그램 메모리에서 읽어온 명령어..

임베디드 시스템(Embedded System) 기본적인 구현

기본적으로 공조 설계 # HW제품 크기, 가격, 요구 조건이 계획된 수준에 적합하다면 M/B, 주변 장치를 사용하는 범용 컴퓨터 사용도 고려할 수 있어 OS를 사용하지 않거나 혹은 운영체제 없이 펌웨어로도 충분히 구현 가능하기 때문에 개발시간 절약 가능. - 전용 보드 설계 + ASSP(Application Specific Standard Product;표준화된 전용 디바이스) + 전용 IC(Integrated Circuit;집적 회로) 개발조건에 충족하는 제품들이 없는 경우에 사용하며, 특정 기능을 전용 IC(ASIC, Application Specific Integrated Circuit;필요한 부분에 맞춰 제조사에 직접 의뢰해 제작한 IC)으로 구현해 추가해 설계에 있어 많은 투자가 필요하지만 최고..

임베디드 시스템(Embedded System)의 구조 및 설계, 고려요소

시스템 기본 구조 HW(CPU, Memory, I/O Device) + SW(Applicaiton Software, Library, Operating System) 임베디드 HW는 범용 컴퓨터와 유사한 구성이나, 사용환경 목적에 따른 최적화가 다르며 대부분의 범용 CPU를 사용하지만 목적에 따른 메모리와 I/O 장치 유형 변경. 시스템이 간단한 경우 SW는 Application(응용 SW)로 구동 가능하며, OS와 라이브러리는 생략하는 경우도 있음. 기본인 경우 HW와 SW의 공조 설계(Co-Design)이 필요하기 때문에 범용 컴퓨터와는 다른 방식으로 접근해야 함. 설계목표 1. 고성능 시스템복잡한 기능, 다양한 UI, 멀티미디어 처리, 유무선 네트워크 기능 등을 처리해내는 시스템 2. 실시간 처리능력..

IoT(Internet of Things)란?

IoT(Internet of Things;사물인터넷) 케빈 애쉬톤이 2009년 RFID(Radio-Frequency Identification)을 활용한 공급망 관리 업무 담당 시 첫 언급 M2M(Manchine to Machine;사물지능통신) 인간, 사물, 환경 등의 모든 사물이 네트워크로 연결되어 다양한 디바이스로 이를 통한 정보를 쉽게 이용가능한 사물지능통신망 서비스로, 인간 중심의 정보수집 방법. 인간 대 사물, 사물 대 사물로의 정보 수집 방법으로 발전. 인간은 개입하지 않음. IoE(Internet of Everything;만물인터넷) 마케팅 용어에 가까움.개념이나 적용 범위 등에 차이 없다는 정부 부처 의견이며, 사물인터넷에서 언급되지 않은 서비스와 응용 측면을 강조하여 마케팅적 성격을 강..

임베디드 시스템(Embedded System) 하드웨어 플랫폼

HW 플랫폼의 구성 CPU BoardCPU 실장한 보드, Main board, Processor board, Mohter board라고 함. I/O Board특정 기능 수행하는 I/O 장치 실장한 보드, Sub-board, Option board, Daughter board 교육/개발용 오픈 아키텍쳐 보드, 자체제작하거나 상용보드 구매해 사용. 짧은 시간 내 구현이 용이해서 구현 가능성 검증용으로 적합. - 8bit(Arduino) ATmel의 AVR 코어 기반.국내에서도 손쉽게 저가로 구매 가능하고, 대학 실습에서도 사용됨.소규모 임베디드 시스템 구현에도 유용하고, 다양한 I/O 보드가 있어 상용 시스템도 구현이 가능. 다양한 형태의 메인보드가 존재해 폭 넓게 이용 가능. - 32bit(Raspberr..

728x90