본문 바로가기

분류 전체보기43

[컴퓨터 구조] 5-3. ISA, CISC와 RISC 명령어 파이프라이닝과 슈퍼스칼라 기법을 CPU에 적용하기 위해서는 명령어가 파이프라이닝에 최적화 되어있어야 한다.그렇다면 파이프라이닝 하기 쉬운 명령어란? ISA와 CISC, RISC에 대해 알아보자 ISA (명령어 집합 / 명령어 집합구조)CPU가 이해할 수 있는 명령어들의 모음 인텔의 노트북 속 CPU는 x86 ISA를 이해하고, 애플의 아이폰 속 CPU는 ARM ISA를 이해한다. 소스코드가 같을지라도 두 CPU의 ISA는 다르기 때문에 서로 이해할 수 있는 명령어도 다르고, 어셈블리어도 달라진다.그에 따라 CPU 하드웨어 설계에도 영향을 미친다 ∴ ISA는 CPU의 언어이자, 하드웨어가 소프트웨어를 어떻게 이해할지에 대한 약속이다. 명령어 병렬 처리 기법을 도입하기 유리한 ISA란 무엇일까?1. .. 2024. 5. 3.
[컴퓨터 구조] 5-2. 효율적인 CPU를 위한 설계 기법 - 명령어 병렬 처리 기법 CPU가 놀지 않고 시간을 알뜰하게 쓰며 작동하는 것이 중요하다. = "명령어 병렬 처리 기법"을 사용해야한다 명령어 처리기법에는 명령어 파이프라이닝, 슈퍼스칼라, 비순차적 명령어 처리가 있다. 각 방법들에 대해 알아보자 1. 명령어 파이프라인* 명령어 파이프라이닝명령어들을 명령어 파이프라인에 넣고 동시에 처리하는 기법 명령어 처리 과정을 클럭 단위로 나누어 보면명령어 인출명령어 해석명령어 실행결과 저장같은 단계가 겹치지만 않는다면 CPU는 각 단계를 동시에 실행할 수 있다. if) 명령어 파이프라인을 사용하지 않는 경우 * 파이프라인 위험성능향상에 실패하는경우1) 데이터 위험명령어간 데이터 의존성에 의해 발생이전 명령어를 끝까지 실행해야만 실행할 수 있는 경우에 발생한다ex) 명령어 1: r1 = r2.. 2024. 5. 2.
[컴퓨터 구조] 5-1. 빠른 CPU를 위한 설계 기법 - 클럭&멀티 코어&멀티 스레드 CPU 속도를 빠르게 하기 위해서는 어떤 방법들이 있을까?오늘은 클럭, 멀티코어, 멀티스레드에 대해 알아보고 내 컴퓨터 사양도 뜯어보겠다.1. 클럭클럭 속도 ↑ → 성능 ↑[컴퓨터 구조] 4-1&2. CPU의 구성요소 - https://haeyoon12.tistory.com/m/23클럭 신호가 빠르게 반복되면- 컴퓨터 부품이 더 빠른 박자에 맞춰 움직이고, CPU는 명령어 사이클을 더 빠르게 반복할것이고, 다른 부품들도 더 빠르게 작동한다.- 클럭속도 너무 높이면 발열문제 발생클럭 속도 단위 헤르츠(HZ)1초에 클럭이 몇번 반복되는지예시) Base: 2.5GHz / Max: 4.9GHz→ 1초에 클럭이 기본적으로 2.5*10^9 = 25억번, 순간적으로 최대 4.9*10^9 = 49억번 반복된다 2. 코.. 2024. 5. 1.
[김영한의 실전 자바 (기본편)] 섹션5 - 패키지 [코드] package pack;public class Data { public Data(){ System.out.println("패키지 pack data 생성"); }}pack 패키지에 포함package pack.a;public class User { public User(){ System.out.println("패키지 pack.a 회원 생성"); }}pack > a 패키지에 포함 [방법1] pack 패키지 안 PackageMain1클래스에서 각각 다른 두 클래스 호출하는 법 package pack;public class PackageMain1 { public static void main(String[] args) { Data data .. 2024. 4. 30.