Introducing
Your new presentation assistant.
Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.
Trending searches
2) 뺄셈
3) 곱셈
4) 나눗셈
2) BCD
3)7-segment
<설계일정>
<추진단계>
-S0, S1에 따라 연산 결정
-CALCULATOR을 통해 연산 수행
-12개의 7-segment
4bit 곱셈 회로도를 이용하여 일의 자리 수와 십의 자리 수를 입력받은 후, 입력한 수를 더하기 연산을 이용하여 십의 자리까지 계산을 하고 그 값을 8비트 곱셈 회로도로 100에 자리를 출력하여 최종적으로 백의자리수와 십의 자리 수 계산 값을 더하기 연산으로 하여 출력한다.
1)converter
1) selector
-s0과 s1조합을 이용하여 Selector에 입력받은 더하기, 빼기, 나누기, 곱하기의 값 들을 조건에 따라 출력해준다.
-나누기에 연결된 D0~D7만 8비트인 것은 나누기나 빼기는 8비트인데 이 연산으로는 0~255값 이외의 값이 절대 나올 수 없기 때문
-나머지 8비트 값들은 0을 넣어준다. 대신 곱하기는 2^8 x 2^8 = 2^16까지의 값이 다 나와야 하므로 16비트로 출력이된다.
-원리
- 4bit-BCD회로도는 최종적으로 입력한수에 값을 7-Segment로 출력하기위해 구현하였다.
-BCD 코드는 오른쪽의 그림 에 나타낸 것과 같이 10진수의 각 숫자를 대응되는 2진수로 표현하는 코드이다.
- 2진수 4비트의 입력을 받는데 7segment는 0~9까지 숫자만 표현해주지 못하지만 4비트의 신호는 0~15까지의 값을 보내준다.
따라서 9이후에 오는 값은 자리 수 변환을 해주어야하기 때문에 7-Segment 회로를 이용하여 최종적으로 디지털 신호로 나타내는 7개의 출력으로 변환시켜준다.
1) 덧셈
-더하기는 ALU의 기본적인 기능으로서 논리게이트를 조합하여 만들어진다.
-더하기의 S0, S1, Cin 0,0,0을 입력받아서 나오도록 회로도를 그리면 된다.
-A, B의 입력 값들이 FA에서 XOR 연산되어 값이 출력된다.
*Feedback*
더하기연산은 2^8+2^8 연산을 받아서 2^8으로 출력을 하게 되니 값이 2^8넘어가는 숫자는 나오지가 않았는데 Cout 부분이 2^9값을 가지고 있어서 2^9 숫자가 나오게 되었다. 그러므로 더하기에 출력부분은 9비트이다.
-빼기는 ALU의 기본적인 기능으로서 논리게이트 조합하여 더하기의 S0, S1, Cin 1,0,1을 입력받아서 나오도록 회로도를 그리면 된다.
-뺄셈의 경우 양수 값이 출력되거나 음수 값이 출력되는 두 가지로 나뉜다. 이 때문에 2’s cp 8bit를 만들게 되었다.
-A, B의 입력 값들이 FA에서 XOR 연산되어 출력되게 된다.
-곱셈의 원리
-그림 과 같은 형식으로 십진수 곱셈과 동일하게 이진수 곱셈도 각 자리수의 값을 곱셈 수에 한 자리씩 밀면서 곱하면 된다.
-회로도
-처음 b0과 a0을 곱한 값은 가장 낮은 자리수이기 때문에 다른 값과 더해줄 필요가 없으므로 그대로 AND게이트를 이용하여 곱한 값을 c0으로 내려주면 된다. 그 위의 자리 숫자부터는 ALU mul을 통과하여 더해준 값이 출력되도록 한다.
-ALU의 뺄셈을 이용하여 몫을 구하기 위해 나누어 주는 값을 계속해서 빼주는 방식으로 구현하였다. 이 방식에서 나누어지는 수를 나누는 수로 계속해서 빼주고 빼기 연산 과정의 횟수를 카운트하여 몫으로 출력하는 것으로 구현하였다.
*나머지 구현 오류