728x90
반응형

branch 3

Exception & Interrupt, 예외 처리 [컴퓨터구조]

우리는 우리가 설계한 대로 굴러가길 바라지만 항상 세상은 뭔가 예외를 만든다. 여기에도 예외를 만든다. 알아보자 차에 기름이 부족하면 주유소에 멈추어서 기름을 넣고 간다. 그렇다면 우리 파이프라인에 문제가 생기면 그냥 무시하고 가나?? 멈춰서 문제 해결을 하고 가야한다. 도대체 실행중인 프로세서를 어떻게 멈추게 하고 문제를 해결할 것인가? 설계 다음으로 중요해졌다. 바로 예상치 못한 event 라는 것이 발생한다. 다시 말해서 Exception, Interrupt를 발생시킨다. Exception은 CPU 내부에서 발생하고 undefined 된 코드나 overflow 등등이 원인이다. Interrupt는 외부 I/O에 의해서 발생한다. (외부 장치에 의함, Hardware) **Software에서도 Int..

Control Hazard [컴퓨터구조]

이번에는 Control Hazard이다. Branch할 때 많이 일어난다고 했다. 즉, Branch가 된다면 실제로 우리가 IF했던 것들이 쓸모가 없어질 수 있다. 또한 해당 결과는 MEM stage 에서 나오는데 MEM stage 동안 실행된 instruction을 다 Flush 시켜야 한다는 말이다. **Flush란 우리가 물내리는 거랑 같다. 그렇게 세 개의 싸이클이 날라가면 또한 그것도 엄청난 성능 손해다. 그래서 우리는 Load and Use에서도 봤다시피 Mem stage가 끝난 뒤 포워딩하는 것을 미리 ID에서 미리 detect 한 것과 같이 ID 단계에 장치를 추가한다. Target address adder Register comparator를 추가시킨다. ?? 어떻게 그렇게 하느냐? ID..

깃헙(github) 사용법 알아보자-저장소(repository),브랜치(branch) 만들기

우선 이 내용은 분명 깃헙 홈페이지에 나와있지만 영문으로 되어있어 영어가 모국어가 아닌 나는 맨날 볼 때마다 해석하기 귀찮아서 한 번 정리하려는 것 뿐이다. https://guides.github.com/activities/hello-world/ Hello World · GitHub Guides The Hello World project is a time-honored tradition in computer programming. It is a simple exercise that gets you started when learning something new. Let’s get started with GitHub! You’ll learn how to: Create and use a repository ..

728x90
반응형