공부/논리설계2011. 6. 26. 01:28


카르노맵 - Boolean function을 최소화 하기 위해 사용하는 방식
카르노맵 만드는 법
http://blog.naver.com/PostView.nhn?blogId=nsesibong&logNo=60028521258&viewDate=&currentPage=1&listtype=0

카르노맵 특징
2의 지수승으로 묶는다.
묶는 방법에 따라 식이 여러개 나온다.
서로 인접하도록 만든다. ( 00, 01, 10, 11 이런식으로 비트가 하나만 바뀌도록)
항이 4개일때는 칸이 16X16인 맵이 2개 나온다. 두개를 따로 묶는 것으로 끝나지 않고 두 개가 겹쳤을 때 인접한지도 고려한다.

카르노맵을 Sum of product 방식으로 나타내었는데
product of sum의 방식으로 나타내려면 맵에서 0인 것을 묶으면 F'이 구해지고 이것을 complement를 해준다.

Don't care conditions
0이 되던지 1이 되던지 상관없는 minterms. 예를 들면 4bit binary code에서 0에서 9까지 표현하려고 하면 16개 중에서 6개는 필요가 없다. 얘네들을 이용해서 boolean function을 더 최소화할 수 있다. 1이라고 생각해도 되고 0이라고 생각해도 된다. 어차피 얘네들 output은 안쓰이니까 말이다. 최소화할 때 박스 더 크게 만들 수 있도록 도와준다.

AND, OR 회로는 NAND, NOR 회로로 바꿀 수 있다.
실제로 NAND와 NOR로 전기 컴포넌트를 더 만들기 쉽고, IC digital logic families의 basic gate이다.

NAND-AND 회로는 AND-NOR 회로로 서로 바꿀 수 있고
NOR-OR 회로는 OR-NAND 회로로 서로 바꿀 수 있다.

Exclusive-or function
Odd function이다. 즉, 1인 항이 홀수개이면 함수값이 1이다.
카르노맵을 그려보면 1의 갯수가 홀수개인 minterms만 1이 됨을 볼 수 있다.
이런 성질은 에러체크에 쓰인다. 전송중에 데이터가 손상되었다던지 해서 에러가 발생했을 경우 전송 전 패리티비트(1의 갯수가 홀수냐 짝수냐에 따라 값이 달라지는비트, 홀수패리티비트일때는 1의 갯수가 홀수일 때 1이다.)가 전송 후 패리티비트와 같은지 비교를 통해 에러의 발생여부를 알 수 있다. 
 

'공부 > 논리설계' 카테고리의 다른 글

4장 Combinational Logic  (0) 2011.06.28
2장 Boolean Algebra and Logic gate  (0) 2011.06.24
1장 Binary Systems  (0) 2011.06.22


Posted by skyjumps