PLD 소스 보고서

2018130037 정재호

PLD1 ALUMUX

입력핀

Pin 2-6 : X4-1 첫번째 A비트 입력

Pin 6-9 : Y4-1 두번째 B 비트 입력

Pin 10-11 : Q0..Q1 카운터 입력 이걸로 A 표시,B 표시,가산,감산 동작

Pin13 : ADDSUB 0 일 때 가산 1 일 때 감산

출력핀

Pin 17-20 : Z1-4 가산, 감산 결과 출력

Pin 14-16 : 각비트 carry 출력

Pin 21 : carry or borrow 출력

Pin 22 : 각비트 borrow 출력

Pin 23 : 각비트 carry 출력

함수

가산 감산 함수 addslice : X, Y, Cin, Cout, ADDSUB 할당하여 동작 X, Y 는 각 입력들 Cin 각비트 carry or borrow 입력 Cout 각비트 carry borrow 입출력

Cout 식 : ADDSUB 로 가산 감산 결정, Borrow 와 Carry 를 각각 ADDSUB 와 and 해놓고 그 뒤 그 둘을 or 하였다. 출력 ADDSUB=1 이면 Borrow 논리식 부분이 동작 되게 하였고 ADDSUB=0 이면 Carry 부분이 동작하도록 하였다.

Addslice : 작동 위처럼 ADDSUB=0 일 때 감산 논리식만 출력 ADDSUB=0 일 때 가산 논리식만 출력

MUX 설정

FIELD CLK [Q0..Q1] : CLK0-3 일 때 00-11 로 설정하여 CLK 한번당 Q0Q1 에 입력되는 값을 통해 MUX 가 동작하도록 하였다. 즉 CLK0 : 00 초기상태 CLK : 01 클락한번 CLK1 : 클락두번 CLK3 : 11 클락 3 번이라 설정하여 각 클락수에 맞는 동작을 하도록 하였다.