목록컴퓨터구조 및 설계/4장. The Processor (8)
leehyeon-dv 님의 블로그

🔑Table of ContentsExceptions and interrunpts ( 예외와 인터럽트)Handing Exception (MIPS에서의 예외처리)Exceptions in a Pipeline (파이프라인에서 예외처리)Pipeline with ExceptionsException Properties(예외의 특성)Exception 예제Exception ExampleMultiple ExceptionsImprecise Exceptions (부정확한 예외처리)📌 Exceptions and interrunpts ( 예외와 인터럽트)제어의 흐름 중에 예상치 못한 상황 발생했을때 이를 처리하기 위한 메커니즘, ISA에 따라 처리 방식다름Exception(예외 ) = CPU내부에서 발생하는 비정상적인 상황0..

🔑Table of ContentsBranch HazardsReducing Branch DelayData Hazards for BranchesDynamic Branch Prediction(동적 분기 예측)1-Bit Predictor : Shortcoming (결점, 단점) 2 -bit PredictorCalculation the Branch Target(address)📌 Branch Hazards브랜치 결과가 MEM단계에서 결정난다면?Control hazard에서 브랜치 결과를 알기 위해 기다리는 것이 아닌 아닌것으로 가정아니면 그대로, 맞으면 제대로 명령어를 가져와 수행하기로 함결과 맞으면 그동안 미리 예측해 수행한 명령어는 버려야함제어신호를 0으로 해 비워야📌 Reducing Branch Dela..

🔑Table of ContentsMIPS Pipelined DatapathPipeline registersPipeline OperationIF for Load, Store ...ID for Load, Store ...EX for Load, Store ...MEM for Load, StoreWB for Load,StoreCorected Datapath for LoadMulti-Cycle Pipeline DiagramMulti-Cycle Pipleline DiagramSingle-Cycle Pipeline DiagramPipelined Control (Simplified)Pipelined ControlPipelined Control 📌 MIPS Pipelined DatapathIF(명령어 인출)제어 해저..

🔑Table of ContentsPipeling AnalogyMIPS PipelinePipeline 성능Pipeline SpeedupPipelining and ISA Design HazardsStructure Hazards (구조적 해저드)Data Hazards(데이터 해저드)Data Hazards -- Forwarding (aka Bypassing(전방전달))Data Hazards -- Fowarding --- Load-Usw Data Hazard Code Scheduling to Avoid Stalls Control HazardsControl Hazards -- Stall on Branch control Hazards --- Branch Predictioncontrol Hazards --- MIPS..

간단한 구현 개요🔑Table of ContentsALU ControlThe Main Control UnitDatapath with ControlR-type InstructionR-Type instuction의 Data 및 Control 흐름Load Instruction Load Instruction 의 Data 및 Control 흐름 Branch-on-Equal Instruction Branch Instruction의 data 및 control흐름Implementing Jumps Datapath with jumps added Adding the Jump Operation Performance Issues 📌ALU ControlALU는 다음에 쓰임Load/Store : F = add (레지스터에저장된..

🔑Table of ContentsBuilding a DatapathInstruction Fetch📌Building a DatapathDatapath데이터가 흐르는 경로 연산을 위한 데이터든, 그 결과든 어디론가 전달되거나 저장되거나 해야함CPU에서 프로세스 데이터와 주소들의 요소가 전달되는 길레지스터, ALU, MUX, 메모리,...등의 모듈등이 연결되는 통로우리는 MIPS datapath를 순차적으로 만들어볼것임개략도의 디자인을 좀 더 정제할 것📌 Instruction Fetch프로그램 명령어를 저장하고있다가 주소를 주어지면 명령어를 읽어서 보내주는 메모리유닛pc = 현재 명령어 주소를 가지고있는 레지스터덧셈기 (ALU로 쉽게 만들수있음)명령어를 실행하기위해서는 명령어를 가져와야함명령어 실행을 준..

🔑Table of ContentsLogic Design BasicsCombinatioanl Elements - 조합요소Sequential Elements -순차적요소Clocking Methodology -클러킹 방법론궁금한점📌Logic Design Basics정보는 binary(0,1)로 인코딩됨저전력 = 0, 고전력 = 1하나의 비트표현마다 한개의 선 필요멀티비트 데이터는 muti-wire bus로 인코딩됨조합요소데이터에 동작함output은 input의 조합state element (상태요소)정보를 저장🔦MIPS를 구현하는 데이터패스 요소조합소자상태소자📌 Combinational Elements(조합소자)데이터 값에 대해 연산을 수행하는 소자, 출력이 현재 입력에 의해서만..

🔑Table of ContentsIntroductionIntroduction ExecutionCPU Overview📌 IntroductionCPU 성능의 요소명령어 개수 → ISA와 컴파일러에 의해 결정CPI(명령어당 사이클 수) 와 CT(클럭사이클 시간) → 프로세서 구현방법에 따 결정MIPS 구현방식을 두가지 형태로 배워볼것간소화 버전그보다는 좀 더 현실적인 pipeline화된 버전구현에 실제 MIPS의 모든 명령어를 사용하진 않고 일부분을 사용할것임메모리참조 : lw, sw산술/논리 : add, sub,and, or, slt제어이동 : beg , j📌 Introduction Execution프로그램에 메모리에 로드되면 명령어들은 명령어 메모리에 순서대로 주소를 가지며 위치함PC를 프로그램이 저..