• Computer Architecture,  Study

    [Computer Arch.] Floating Point Representation

    Computer system에선 대부분 정수가 아닌 수를 표기할 때는 IEEE Standard 754 형식의 floating point 표기 방식으로 표현한다. 이는 1) 기존 binary representation으로 표현할 경우 2의 지수승에 대해서만 정확한 소수가 표현 가능하며, 2) 너무나…

  • Computer Architecture,  Study

    [Computer Arch.] Carry and Overflow 차이

    Computer system에서 arithmetic operation을 하면 연산에 대한 결과를 flag로 나타내는데 그 중에는 zero, negative, carry, overflow 등이 존재한다. 그 중에 carry와 overflow는 혼동하기 쉽다. 8-bit을 기준으로 덧셈 또는 뺄셈을 수행하게 되면 carry 또는…

  • Computer Architecture,  Study

    [Computer Arch.] TLB / Page Table

    기본적으로 우리가 프로그램에서 사용하는 address는 모두 virtual address를 사용한다. 이러한 virtual address를 통해 physical address memory에 접근하는 기술을 virtual memory라 부른다. Virtual address의 장점은 다음과 같다. Multi process를 동시에 수행 할 때, address…

  • Computer Architecture,  Study

    [Computer Arch.] Cache Miss 원인

    Processing unit과 memory 사이에 존재하는 cache에서 유효한 address의 data를 포함할 경우 hit, 그렇지 못할 경우 miss라고 부른다. 이 때 miss의 종류는 대표적으로 다음과 같다. Cold (compulsory) miss Capacity miss Conflict miss 1. Cold…

  • Computer Architecture,  Study

    [Computer Arch.] Cache 종류

    Cache란 processing unit과 memory 사이에 존재하는 data를 저장하는 logic으로 memory access의 긴 latency로 인한 performance overhead를 줄여줄 수 있는 logic이다.Cache Wikipedia 여기엔 다양한 configuration으로 cache를 구성할 수 있는데 대표적으로 크게 3 가지가 존재한다.…

  • Computer Architecture,  Study

    [Computer Arch.] Endian

    Memory에 data를 저장하는 방식은 크게 두 종류 1) Big endian 2) little endian으로 나뉜다. 기본적으로 register에 저장될 때는 모르지만 memory로 옮겨서 저장할 때는 endian 방식에 따라서 다르게 저장된다. Big Endian 사람이 이해하는 숫자를…

  • Computer Architecture,  Study

    [Computer Arch.] False Sharing

    멀티 코어 CPU에서 발생할 수 있는 문제다. 멀티 코어 CPU에서는 데이터를 word 단위로 읽어오는 대신 메모리 I/O 효율성을 위해서 cache line로 읽어오는데, 이때 문제가 생길 수 있다. 두개의 메모리 연산이 동일한 cache line에서…