5주차 이론 - K-map
Opened this issue · 4 comments
K-map관련 강의를 듣다 보니 궁금증이 생겼습니다.
AB에서 00 01 10 11순으로 되는 것이 아니라 왜 00 01 11 10순으로 되어야 하는지 궁금합니다!
(그저 영상에서 "순서가 중요하다"만 말씀하셔서 궁금증이 생겼습니다!)
그리고 추가적으로 질문 하나 더 있습니다!
K-maps with Don't Cares 예시를 보는데 왜 X부분까지 크게 묶는지 잘 모르겠습니다...
Don't Cares 묶는 법에서도 "최적화에 크게 묶을 수 있는 것에 도움이 되면 사용하고, 도움이 안되면 사용안해도 된다."라고 하셨는데, K-map 규칙에 의해 "가능한 크게 묶는다!"는 이해하지만, X까지 포함해서 묶는 것이 그 부분이 이해가 안됩니다.
만약 X가 0인 경우 크게 묶을 수 없지 않나 생각이 듭니다.
그저 나머지 입력이 어떻게 되든 출력 값이 1인 것에만 집중하는건지...
K-map과 Don't Cares를 같이 생각하면서 하려고 하니 이해할듯하면서 쉽게 안됩니다😂
https://github.com/jeonggunlee/LogicDesign/issues/25
혹시나 Issues에 저와 같은 궁금증이 있는지 찾아보니 비슷한 질문이 올라온 걸 알게 되었고,
교수님이 간략한 설명을 해준 영상도 확인했습니다.
첫 번째 질문이었던 00 01 11 10의 순서가 중요한 이유에 대한 제 생각에는
1bit씩 차이가 나야 1. 묶을 수 있고(00 01 10 11은 01 이 부분이 2bit여서 어찌 어찌 해서 묶어도 최적화가 안됨!),
그로 인해 "2. 최적화가 될 수 있다"는 것인가요?
24년 4월 1일 실습(오프라인)에서 교수님 답변들었습니다!
1bit씩 차이 (00 01 10 11) : 1.묶을 수 있는가? 2. 최적화가 가능한가? ➡️ 둘 다 가능
2bit씩 차이 (00 01 10 11) : 묶을 수도 없으며, 최적화가 불가능!
Don't Cares 묶는 법
➡️ 최적화에 크게 묶을 수 있는 것에 도움이 되면 사용하고, 도움이 안되면 사용 안해도 된다.
이미 X로 되어있는 부분은 관계없이 출력이 1이다.
혹시라도, 제가 요약한 부분에 이상이 있으면 알려주세요~!
카르노맵 구성과 관련해서는 한비트씩 차이가 날때 묶으면서 변수를 없애 최적화 할수 있게 되구요.
최적화 할때 X를 포함해서 묶는 다면, 그 don't care는 1로 설정하는 것과 같고, 만약 X를 묶는데 포함하지 않는다면, 그 don't care는 0으로 설정한 것과 같다고 볼수 있어요!!!
혹시 답변이 애매하면, 연구실 또는 이메일 또는 다음 수업시간에 물어봐도 좋아요!