본문 바로가기

Semiconductor/ETC

(5)
Linux 명령어 명령어 shutdown : 시스템 종료 halt : 시스템 종료 init 0 : 시스템 종료 poweroff : 시스템 종료 reboot : 시스템 재부팅 init 6 : 시스템 재부팅 shutdown -r now : 시스템 재부팅 pwd : 현재 자신이 위치하는 디렉토리 cd : 디렉토리 이동 ls : 자신이 속해있는 폴더 내에서의 파일 및 폴더들을 표시 mkdir : 디렉토리 생성 ( 폴더 생성 ) == 앞으로 폴더를 디렉토리로 쓰겠습니다. rmdir : 디렉토리 삭제 touch : 파일크기가 0인 파일 생성 ( 잘 쓰진 않지만, 파일 시간 정보를 변경하는 용도로 쓰이거나, 하드디스크의 오류를 판단할 때 쓰입니다) cp : 파일 복사 ( 디렉토리 내부까지 복사하기 위해서는 cp -R 이라는 옵션을 붙..
Decimal to Binary conversion( Decimal point) 십진수의 소수점은 2를 곱하고 그 계산된 수의 정수 부분을 취하면 이진수의 소수점이 됩니다. 0.625 * 2 = 1.25 여기서 정수 부분 1이 이진수의 소수점 첫 째 자리가 됩니다. 그 이후로 1을 버리면 0.25가 되고 다시 2를 곱하고 같은 방식으로 계산을 진행하면 됩니다. 0.25 * 2 = 0.5 정수부분 0이 이진수의 소수점 둘 째 자리 정수부분이 0이므로 그대로 2를 또 곱합니다. 0.5 * 2 = 1.0 정수부분 1이 이진수의 소수점 셋 째 자리가 되고 이제 계산은 마무리 됩니다. 소수부분이 0이므로 2를 곱해도 0이 되며 즉, 2를 계속 곱하면서 1.0이 나오면 계산이 종료됩니다. 따라서 구하려는 답은 0.625( 10) = 0.101 0.05에 2를 곱해봅시다. Carry가 발생하면 ..
LFSR( Linear Feedback Shift Register) 디지털 회로에서 현재 상태에 대한 선형 연산( linear function)으로 다음 상태를 만드는 레지스터다. 해당 연산에는 다양한 종류들이 있겠지만 일반적으로 쓰이는건 XOR이라고 한다. LFSR의 초기값은 Seed라고 부르며 다음 상태를 생성하는 연산에 관여하는 bit는 tap이라고 하며 또한 가장 오른쪽에 있는 bit를 output bit라고 한다. 기본적인 내용은 다음과 같다. LFSR의 초기값을 다음과 같은 8bits로 설정한다. 현재의 상태는 0x59이다. LFSR의 tap이 5, 6, 8번째 bits라고 가정하자. 현재 상태의 output bit과 tap들을 XOR 연산시킨 값을 MSB로 보낸다. 다음 상태는 0x2C가 되었다. 같은 방법으로 다음 상태를 계속하여 생성할 수 있다. 8bit..
Double Dabble BCD( Binary Coded Decimal) 2진수 4비트를 묶어서 10진수 한 자리를 나타내는 코드. 따라서 BCD는 10진수로 표현하기 용이하다. 하지만, 일반적인 2진수로 10진수를 나타내기는 쉽지 않다. 그래서 사용하는 알고리즘이 shift 더하기 3 알고리즘, Double Dabble 알고리즘이다. 이 알고리즘을 간단하게 설명하면 다음과 같다. 일반 2진수 코드를 왼쪽으로 1bit씩 shift한다. 4bits씩 묶어서 5 이상인 자리에는 3을 더해준다. 모든 bits가 왼쪽으로 shift 될 때까지 위 과정을 반복한다. $log2=0.3010..$이므로 10진수 한 자리를 표현하려면 약 3.33bits가 필요하다. 예를 들어, 2진수 11001100( =204)을 BCD코드로 변환하면 약 3..
Carry lookahead Full Adder CPU의 연산처리과정 중 그 흔한 덧셈을 어떻게 최적화 시켰을까 궁금하여 찾아보게 된 자료이다. 가산기는 간단히 두 수의 덧셈을 연산하는 논리회로이다. 반가산기, 전가산기 그리고 RCA는 익숙하지 않은 사람이 회로만 확인하여도 이해가 가능할 정도로 간결한 회로이다. 정리하면 반가산기는 입력으로 두 개의 bits가 주어졌을 경우 sum과 carry bit을 구한다. 전가산기는 반가산기에 carry bit 입력까지 더하였고, RCA는 이러한 전가산기를 여러 bits에서 연산 가능하도록 조합한 형태이다. RCA로 가산기를 만들었다 생각하고 32bits 덧셈을 하는데 몇 개의 논리게이트를 통과하는지 생각해보자. 1bit의 전가산기를 연산하는데 2단의 논리게이트를 통과하고 자리올림을 확인하기 위해 첫번째 자리부터..