-
장치 기본지식 공부
차동증폭(Differential Amplification) 개념 및 특성
1. 동작 개념차동증폭은 두 입력 신호(Vp, Vn)의 차이를 증폭하는 기술로, 다음과 같은 기본 원리로 동작합니다:● 기본 수식: Vdiff = Vp - Vn ● 입력 신호 변환: 단일 신호(Single-ended) 입력 시: Vp = VCM + Vs, Vn = VCM - Vs (VCM: 공통 모드 전압) 결과적으로: Vdiff = (VCM + Vs) - (VCM - Vs) = 2Vs ● 신호 처리 경로: 단일 신호 → 차동증폭기(VCM 추가하여 차동 신호 생성) → RF 트랜스포머(ADT1-1WT) → ADC 칩 공통 모드 전압(VCM): 0.4~0.6V 범위를 유지해야 정상적인 차동 신호 처리가 가능합니다. 2. 특징● 신호 증폭 2배 증폭: 입력 신호(Vs)는 차동 처리 과정에서 2배로 증폭됩니..
-
OS 개발 프로젝트
[나빌로스] RTOS 컨텍스트 스위칭 정리 (Round Robin + 선점형 기반)
최근에 RTOS 기반의 태스크 스케줄링을 공부하면서, Round Robin 방식으로 동작하는 선점형 RTOS의 컨텍스트 스위칭 구조를 정리해봤다. 실제로 구현한 코드를 바탕으로 전체 흐름과 필요한 함수, 구조 등을 아래와 같이 요약함.● 기본 구조1. 모든 태스크는 TCB(Task Control Block)로 관리각 태스크는 독립적인 스택 영역과 레지스터 정보를 갖고 있어야 한다. 이를 위해 TCB 구조체에는 보통 다음과 같은 정보가 들어간다: typedef struct { uint32_t sp; uint8_t* stack_base; } KernelTcb_t; sp는 현재 태스크의 스택 포인터, stack_base는 할당된 스택의 시작 주소2. TCB 리스트 선언여러 개의 태스크를 관리하기 위해, TCB..
-
카테고리 없음
[ASM] {} , [] 사용법
✅ 1. {}의 의미: 문맥에 따라 다름 ✔️ A. PUSH/POP {r0, r1, ...}에서의 {}이건 레지스터 묶음을 나타내는 문법적 표현이야.즉, POP {r0, r1, r2} → SP가 가리키는 메모리 주소에서 값을 꺼내서 해당 레지스터에 저장한다는 뜻이야. 예:POP {r0} → 현재 스택에 가장 위에 있는 값을 r0에 저장하고,→ SP를 4만큼 증가시킴. ✔️ B. MRS r0, cpsr처럼 시스템 레지스터 접근 시여기서 {}는 사용하지 않아. 시스템 레지스터 이름 자체를 명시해.asm MRS r0, cpsr ; 시스템 레지스터 'cpsr' 값을 r0로 MSR cpsr, r0 ; r0에 있는 값을 시스템 레지스터 'cpsr'로 복사 즉, 시스템 레지스터를 읽고 쓸 땐 MRS, MSR 명령어를..
-
OS 개발 프로젝트
[나빌로스] 10.컨텍스트 스위칭
컨텍스트 스위칭(Context Switching) 과정 정리컨텍스트 스위칭은 현재 실행 중인 태스크(Task)의 실행 상태(레지스터 값, 스택 포인터 등)를 저장하고, 다음 실행할 태스크의 상태를 복구하여 실행을 이어가는 과정이다.아래는 Task1 → Task2로 전환되는 과정을 상세히 설명한 것이다.1. Task1이 실행 중Task1이 실행 중이며, Task1의 스택에는 현재 실행 중이던 함수 호출 정보, 지역 변수 등이 저장되어 있다.Task1의 레지스터(r0~r12, lr, cpsr)는 현재 Task1의 연산 상태를 유지하고 있다.2. 컨텍스트 저장 (Save_context)라운드 로빈 스케줄러가 Task1의 실행을 중단하고 Task2로 전환하려고 할 때,현재 Task1의 컨텍스트를 저장하는 과정이..
-
OS 개발 프로젝트
[나빌로스] 8.태스크
RealViewPB에서 Task Control Block (TCB) 설계 및 제어 개념RealViewPB에서 태스크를 관리하기 위해 **Task Control Block (TCB)**를 사용하며, 이를 기반으로 태스크의 상태, 레지스터 컨텍스트, 스택 정보 등을 관리해야 한다. 1. Task Control Block (TCB)란?TCB는 각 태스크를 관리하는 자료구조이다.운영체제가 여러 개의 태스크를 관리하고, **태스크 간 전환(Context Switch)**이 가능하도록 하기 위해 사용된다..🔹 TCB의 주요 구성 요소:컨텍스트(Context)실행 중인 태스크의 현재 상태를 저장 (CPU 레지스터 값)spsr, r0-r12, pc, sp 등이 포함됨태스크 정보태스크 ID, 태스크 이름, 우선순위 정..