추천 도서 임베디드레시피 오늘 리뷰할 책은 snowbook 출판사에 나온 임베디드레시피 라는 책입니다. 원래 아래 홈페이지에서 작가님이 연재하시던 글인데, 워낙에 내용이 좋아서 예전에 출판이 되었다고 합니다. (벌써 11쇄가 넘었다고 하네요) http://recipes.egloos.com 임베디드 레시피 친절한 임베디드 개발자되기 강좌 recipes.egloos.com 위 페이지에 안내된 출판사 공식 스토어에서 책 구매도 가능합니다. 해당 책은 제가 학부를 졸업하고 첫 회사에 취업했을때 매니저님이 선물로 읽어보라고 주신 책이었습니다. 당시 업무가 SoC-Top RTL verification 으로 임베디드 시스템 전체적으로 관련이 있는 업무였는데, 빠르게 적응하기 위해서는 깊은 지식 보다는 전체적으로 임베디드 시스템의 큰크림을 바.. 2023.04.22 more 최근 글 MRU LRU, Pseudo-LRU, LFU 작성 예정 2024.12.13 파이프라인 실제 예시 - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 기본적인 ISA 동작 방식을 모르면 이해하기 어렵습니다. 실제 예시를 통한 파이프라인 이해현대 프로세서에서 파이프라인 단계의 수와 성능 사이에는 절충이 필요하다. ARM과 AMD의 파이프라인 설계를 통해 이러한 절충과 차이를 살펴본다.1. ARM의 빅/리틀 파이프라인 설계빅 파이프라인: 24단계로 구성되며, 더 높은 클럭 주파수를 위해 설계되었다. 각 단계가 더 작은 작업 단위로 나뉘어 있어 빠르게 클럭을 돌릴 수 있지만, 많은 파이프라인 레지스터가 필요하고 레지스터 오버헤드(latency)가 높아진다.리틀 파이프라인: 10단계로 구성되며, 주파수는 낮지만 파이프라인 레지스터가 적고 오버헤드가 줄어든.. 2024.12.13 Pipeline - Data Hazard(데이터 해저드) 발생과 해결 - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 데이터 해저드(Data Hazards)파이프라인 설계에서 데이터 해저드는 흔히 발생하는 문제로, 명령어 간 데이터 의존성으로 인해 프로세서의 정상적인 실행 흐름이 방해받을 수 있다. 1. 데이터 해저드란?데이터 해저드(Data Hazards)는 특정 명령어가 이전 명령어의 결과 데이터를 필요로 하지만, 그 데이터가 아직 준비되지 않았을 때 발생한다. 파이프라인 설계의 병렬 실행 방식으로 인해 데이터 준비 타이밍이 어긋나며 이러한 문제가 발생한다. 1.1 데이터 해저드 예시명령어 1(Add R1, R2, R3): R2 + R3 결과를 R1에 저장.명령어 2(Add R4, R1, R5): 명령어 1의 결과.. 2024.11.25 Pipeline - Pipeline Hazard (파이프라인 해저드) 란? - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112파이프라인 해저드(Pipeline Hazards)파이프라인은 컴퓨터 프로세서의 성능을 극대화하는 중요한 기술이다. 여러 명령어를 동시에 실행하여 성능을 향상시키지만, 그 과정에서 여러 문제가 발생할 수 있다. 이번 글에서는 파이프라인 해저드(Pipeline Hazards)의 종류와 이를 해결하기 위한 다양한 방법들을 간략하게 살펴본다.1. 파이프라인에서 발생하는 해저드란?파이프라인은 여러 명령어를 겹쳐 실행하는 구조이다. 하지만 각 명령어가 자원을 공유하거나 서로 간섭할 경우 문제가 발생한다. 이를 해저드(hazards)라고 부른다. 해저드는 크게 세 가지로 나뉜다:구조적 해저드(Structural Ha.. 2024.11.24 Processor의 구조 - 6. Pipeline(파이프라인) 설계 - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 기본적인 ISA 동작 방식을 모르면 이해하기 어렵습니다. 파이프라인 프로세서 구축 과정파이프라인 프로세서는 단일 사이클 설계를 여러 단계로 나누어 각 명령어가 동시에 실행되도록 설계된다. 이 단계는 Instruction Fetch(IF), Instruction Decode(ID), Execute(EX), Memory Access(MEM), Write Back(WB)의 다섯 단계로 나뉜다. 각 단계가 독립적으로 실행되어 한 사이클 동안 여러 명령어가 병렬로 진행될 수 있게 한다.1. 파이프라인의 다섯 단계IF (Instruction Fetch): 메모리에서 명령어를 가져오는 단계이다.ID (Instruc.. 2024.11.13 Processor의 구조 - 5. Pipeline(파이프라인) - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 기본적인 ISA 동작 방식을 모르면 이해하기 어렵습니다.Pipeline1. 프로세서 파이프라이닝의 필요성1.1 단일 사이클 프로세서단일 사이클 프로세서는 모든 명령어를 한 사이클 내에 실행하는 방식으로 설계된다. 이 방식은 간단하지만, 각 명령어의 실행 시간이 다르기 때문에 문제가 발생한다. 가장 시간이 오래 걸리는 경로(critical path) (예: load 명령어)로 인해 전체 사이클 시간이 결정되고, 이는 프로세서 속도를 제한하게 된다. 예를 들어, 프로그램에서 load와 store 명령어가 30%를 차지하고, 이 명령어들의 실행 시간이 두 배로 길다면, 전체 시간의 35%가 낭비되는 셈이다... 2024.11.12 Processor의 구조 - 4. Decoder(디코더) - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 기본적인 ISA 동작 방식을 모르면 이해하기 어렵습니다.Decoder1. 명령어 디코딩프로세서에서 명령어를 디코딩한다는 것은 명령어의 제어 신호를 해석하여 데이터 흐름과 연산을 제어하는 것이다.예시로 add R8, R17, R18과 같은 R 타입 명령어는 OP 코드, 세 개의 레지스터, 시프트 수, 그리고 함수 코드를 포함하며, 이 정보는 제어 논리에 입력되어 각 부품의 제어 신호를 설정한다.2. Control Logiccontrol logic은 명령어의 특정 필드를 통해 제어 신호를 생성하는 combination logic로 구성된다. 여기서 생성되는 주요 제어 신호는 다음과 같다:Register W.. 2024.11.11 라이젠 7 9800X3D 스펙,성능,게임 프레임,가격 총 정리 라이젠 7 9800X3D 라이젠 7 9000 시리즈가 처음 나왔을 때, 게이머들이 기다리던 X3D 프로세서는 빠져 있어서 조금 아쉬웠는데요.드디어 라이젠 7 9800X3D가 출시되면서 AMD가 준비한 최고의 게이밍 CPU를 만나볼 수 있게 되었습니다. X3D 는 AMD 3D V-Cache 라는 기술로 패키징된 제품에 붙는 코드 입니다.기존의 2D 캐시구조를 3차원으로 확장한 것인데, 기존 프로세서 다이 위에 64MB SRAM 다이를 프로세서 다이의 L3 캐시 위에 적층하는 기술입니다. 특히, 게임의 경우 L3 캐시 용량이 게임의 성능에 큰 영향을 미치는데, 이 기술을 통해 L3 캐시 용량이 획기적으로 늘면서 높은 게임성능에 도달할 수 있습니다. 그래서 게이밍용은 X3D 라고 하는 거죠..이제 아키텍처 차.. 2024.11.11 Processor의 구조 - 3. Clock 과 Critical Path(임계경로) - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 기본적인 ISA 동작 방식을 모르면 이해하기 어렵습니다. 1. 프로세서와 클럭클럭 신호는 프로세서의 속도를 결정하는 중요한 요소로, 다양한 상태 요소의 업데이트를 동기화한다.일반적으로 클럭이 빠를수록 프로세서가 더 빠르지만, 설계에서 가장 느린 경로가 전체 속도를 제한한다.2. 프로세서 구성 요소에서의 클럭 연결프로그램 카운터: 클럭 신호가 들어가며, 매 클럭 사이클마다 다음 프로그램 카운터 값으로 업데이트된다.레지스터 파일: 데이터 쓰기 시 레지스터 파일이 클럭 엣지에서 업데이트되므로 클럭 신호가 필요하다.데이터 메모리: 데이터를 쓰기 위해 클럭 신호가 들어가며, 클럭 엣지에서 데이터가 저장된다.in.. 2024.11.10 Processor의 구조 - 2. Control Signal 과 Data path - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 기본적인 ISA 동작 방식을 모르면 이해하기 어렵습니다.Control Signals1. ALU 소스에서의 Control Signals1.1 Immediate 명령어를 위한 ALU 소스명령어 예시: add immediate (addi 즉시 덧셈)작동 방식: 이 명령어는 첫 번째 피연산자를 레지스터 파일에서 가져오고, 두 번째 피연산자를 sign-extended immediate (확장된 즉시 값) 필드에서 가져온다. (즉시값은 상수 값으로, 명령어 자체에 포함된 상수 값을 의미한다)제어 신호: 이 경우, Multiplexer (MUX)가 input 1을 선택하도록 설정된다.설명: add immediate.. 2024.11.09 Processor의 구조 - 1. 프로세서의 세가지 구성 요소 - 프로세서 시리즈 모아보기 -https://microelectronics.tistory.com/112 기본적인 ISA 동작 방식을 모르면 이해하기 어렵습니다. 프로세서의 세가지 구성 요소첫째, 프로세서의 주요 구성 요소는 무엇인가?둘째, 이 구성 요소들을 어떻게 연결하고 제어할 것인가?1. 프로세서의 구성 요소먼저, 프로세서가 어떻게 동작하는지 정말 짧게 정리하면 아래와 같다.1. 명령어를 메모리로 부터 fetch해(불러) 오고2. 이를 decode(해석) 해서3. execution(실행) 한다. 그런데 이때, 명령어를 실행하기 위해 메모리에 접근이 필요할 수 있고, 연산이 필요할 수 있으며, 레지스터에서 값을 읽거나 쓸 수도 있다. 우리는, 위 동작 과정을 수행하기 위한 중요한 구성 요소들을 알아야.. 2024.11.08 more