티스토리 뷰
1. Functional Specification - 기본적으로 달성해야할 기능들의 목표
2. Microcontrollers - CPU + Bus Controller + Memory (RAM, Flash) + Peripherals + Ports
2-1 Common Peripherals - Communication, Analogy signal processing, Input/Output, Timing, Processor support
3. Microprocessors(CPU) - Registers, AL, Interrupt Controller, On-Bard Debugger/Programmer
4. Layers - Device Drivers, Code Booting, Operating System, Libraries for shared code
5. Bare-metal firmware - 하드웨어를 직접적으로 제어하는 소프트웨어
6. HAL - Hardware Abstraction Layer - 하드웨어를 다루기 편하게 구분하여 작성한 코드
6-1 기능을 Module 단위로 나누어 잘 정의된 인터페이스를 제공하는 레이어
6-2 HAL위에서 작성된 코드는 하드웨어와 독립적인 다른 시스템으로 이전 가능한 코드이다.
7. 개발도구들 - Simulators, Emulators, Compilers, Installers, Debuggers
8. Maintainable, Testable, Portable, Robust, Efficient, Consistent -> Goal of software engineering
9. Embedded C - focuses on
9-1 Efficient Memory Management, Timing Centric Operations,
9-2 Direction Hardware/IO Control, Code Size Contraints, Optimized Execution
9-3 Data Types : Integer, Floating Point, Derived, Enumerated, Void
9-4 Type Modifier : Short, Long, Unsigned, Signed
9-5 Type Qualifier : Const, Volatile, Restrict
9-6 C Standard - C11, C99, C89, C90
10. Flow Diagram, Software Block Diagram, Abstraction and layer Diagrams
11. Software Configuration Management(SCM)
12. IC선택에 중요한 점들
12-1 얼마나 많은 메모리가 필요한지, 얼마나 빠른 속도를 원하는지, 수학적 계산지원이 필요한지
12-2 Word Size, Number of registers, Flash/RAM sizes, Branch Predition Support, Instruction/Data Cache Support,
12-3 Floating Point arithmetic Support, DMA Support
12-4 Selector Guide - 어떤 제품을 선택하는 게 가장 용도에 맞는지 도움을 준다.
12-5 Product Brief - 제품에 대한 개괄적인 설명 및 용도에 대한 설명
12-6 Datasheet - 많은 정보가 압축된 페이퍼, 기술적인 상세명세를 제공한다.
12-6-1 전기적 특성(동작 voltage, current) , 타이밍 정보(microcontroller 동작펄스정보)
12-6-2 환경정보(온도 등), 물리적 패키징 정보(다리의 용도 등)
12-7 Family Technical Reference Manuals - 패밀리로 구분된 제품들의 상세명세제공, Bare-Metal Firmware작성정보
12-8 Chip Errata - Family Reference Manuals에서 빠진 에러 정보나 칩의 특성에 다른 동작과 우회 방법 등 정보제공
12-8-1 예상한대로 동작하지 않을 경우 참고한다.
'Embedded Systems' 카테고리의 다른 글
Embedded Systems : C 언어 기억할 것들 (0) | 2020.09.06 |
---|
- Total
- Today
- Yesterday
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib
- Spring Security
- jsp
- 상속
- 하이버네이트
- MYSQL
- RestTemplate
- crud
- 스프링부트
- Validation
- Angular
- Rest
- one-to-many
- 자바
- hibernate
- mapping
- Many-To-Many
- XML
- 스프링
- form
- 외부파일
- 매핑
- login
- WebMvc
- 로그인
- 설정
- one-to-one
- 설정하기
- spring boot
- Spring
- Security