2007년 04월 28일
Building 32bit ALU by cascading 74181 4bit ALU blocks
예고했던대로 ALU 설계에 대한 고난과 좌절의 시간들을 회고해 보고자 한다.

이게 바로 74181 4bit ALU 이다.
먼저 각 핀에 대한 구조 분석부터.
A[3..0], B[3..0] : 각 4bit 로 입력 라인이다.
F[3..0] : 역시 4bit 로서 S[3..0] 에 의해 지정된 A 와 B 의 연산 결과를 출력으로 가진다.
CN : cascading 을 위해 하위 블럭으로부터 carry 를 받는 입력 노드
CN4 : carry out 노드이다. 물론 CN + A[3..0] + B[3..0] 의 carry.
M : mode bit 이다. 0 일경우 Arithmatic, 1 일 경우 Logic 이다. 그래서 바로 ALU
S[3..0] : 중요하다고 할 수 있겠는데 일종의 함수라고 생각할 수 있겠다. S[3..0] = 1001 일때 F[3..0] <- A[3..0] + B[3..0]
GN : carry generator. 이 블럭(4bit) 에서 캐리를 생성하는지를 파악.
PN : carry propagator. 이 블럭(4bit) 에서 캐리를 전달하는지를 파악.
%% GN, PN 의 값에는 CN 이 영향을 미치지 않는다. 다시 말해서, GN, PN 의 값은 A[3..0], B[3..0] 의 함수이다.
------
가장 간단하게 생각할 수 있는 32bit ALU 를 만드는 방법은, 74181 을 serial 로 8개 연결하는 것이다. 가령 이런 식.

1ns = 1/1000us = 1/1000000ms = 1/1000000000s 이므로 ... 하하하 1GHz 이다.
10ns 일때는 당연히 100MHz. 70ns 라면 ... 계산 할 수 있을거라고 믿는다. -_- 아무튼 느리다.
그래서 필요한게 바로 GN, PN 이게 핵심이다.
첫번째 74181 블럭에서의 입력인 A[3..0], B[3..0] 에서 캐리가 생성될때 GN 이, 캐리가 전달될 수 있을때 PN 이 활성되므로, 첫번째 블럭에서의 CN4 는 이렇게 계산 할 수 있을 것이다.
CN4 = CN * PN + GN (* AND, + OR)
마찬가지로 두번째 블럭에서의 CN4 는 이렇게
CN4 = (CN1 * PN1 + GN1) * PN2 + GN2
= GN2 + GN1 * PN2 + CN1 * PN1 * PN2
이게 중요한 이유는 GN PN 은 A 와 B 만의 함수이기 때문에 각 74181 블럭에서는 일정 시간이 흐른 후 각각 독립적으로 PN GN 의 값의 나오게 되고, 이미 존재하는 입력인 Carry In 과 각 74181 블럭들의 GN PN 값을 계산하면 각 74181 에 공급할 수 있는 CN 값을 생산할 수 있기 때문이다.
74181 에서 GN, PN 을 계산하는 데 필요한 지연이 7ns, GN PN 을 가지고 각각의 CN 을 계산하는데 5ns 가 필요하다고 한다면 12ns 후에는 모든 74181 블럭이 CN 값을 가지게 될 것이다. 그리고 각각 이 값을 가지고 계산을 한다면 최상위 블럭에서의 지연은 12ns + 10ns = 22ns 로서 최초의 아이디어인 70ns 보다 두배 이상 빨라진 것을 볼 수 있다.

-----
이것으로 이번회를 마치고,
다음회에서는 74182 의 역활과 negative logic 임이 연산에 미치는 영향 등을 다루도록 노력해 보겠다.
# by | 2007/04/28 14:59 | 시간과 관련 없는 생각 | 트랙백(4) | 덧글(0)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
제목 : Building 32bit ALU by cascad..
Building 32bit ALU by cascading 74181 4bit ALU blocks저번에 마지막 부분에서 각 74181 블럭의 GN PN 신호를 이용해서 fast carry look ahead 연산을 할 수 있음을 보였는데, 아무래도 4번째 블럭에 가면 and or 게이트 연결의 압박이 느껴질 것이다. 이미 캐리 연산을 하는 블럭은 정의되어 있는데 그게 바로 74182 칩이다.GN[3..0], PN[3..0] 입력라인. 각 블럭에서......more
제목 : Vicodin.
Vicodin with no membership fees....more
제목 : Vicodin back pain.
Vicodin without prescription. How l ong does vicodin stay in your system....more
제목 : Amoxicillin without a prescr..
Amoxicillin 875mg. Amoxicillin. Expiration date for amoxicillin....more