목차
1. 예비조사 및 실험 내용의 이해
2. 실험내용 및 결과
2. 실험내용 및 결과
본문내용
wait for 200 ns;
input(2) <= '1';
-- Place stimulus here
END PROCESS;
tb_d : PROCESS
BEGIN
-- Wait 100 ns for global reset to finish
wait for 70 ns;
en <= '0';
wait for 70 ns;
en <= '0';
-- Place stimulus here
END PROCESS;
END;
source 설명
입력값 en과 input (3bit) 과 출력값 output (8bit)를 지정하였다.
en 과 input의 각 비트값을 and하여 output의 각 비트에
대입해주었다. input이 3bit이니 en이 1일때 input 000부터 111
까지의 8가지 경우가 나올것이다. 만약에 input값에 101 값을
대입한다면 and값이 1인 경우- en=1, input(2)=1,not input(1)=1,
input(0)=1 일때이므로 output(5)에 1이 출력될 것이다.
두 번째는 출력파형을 나타내기 위한 source이다.
세 개의 table으로 input의 비트별로 시간차를 두어 값이 입력
되도록 하였다.
출력파형
출력파형 설명
일단 en이 0일때엔 모두 0이 출력되었다. en이 1일때 input의
각 비트끼리의 and가 1이 되는 값이 출력의 각 비트에 들어간다.
여기에 나타난 결과를 진리표로 나타내어보면 다음과 같다.
en
input(2)
input(1)
input(0)
output
0
X=don't care
X
X
0
1
1
0
0
input(4)=1
1
1
1
1
input(7)=1
1
0
1
0
input(2)=1
1
1
1
0
input(6)=1
2.1.2 구조적 모델링
source
source 설명
자료흐름시와 마찬가지로 입력값 en과 input, 출력값 output을
지정하였다. andgate를 여러번 이용할 것이므로 미리 짜두었던
andgate의 source를 불러와 쓸것이다. 그런데 component문에는
not(A)이라는 변수를 쓸 수 없어서인지 자꾸 오류가 났다.
그래서 signal을 이용하여 세 변수를 만들고 각각 입력 input의
비트마다의 not값을 대입해주었다. component를 이용해 en,
input의 각 비트값을 and시켜서 여덟가지 경우의 수를 output에
지정해주었다. 자료흐름시와 마찬가지로 en이 1일 경우에
000부터 111까지의 값이 output에 들어갈 것이다.
출력파형
출력파형 설명
en의 값이 0일때엔 모두 0이 출력되는것을 알수 있다. (0과의
and값은 모두 0이므로.) en가 1일때 input의 세 비트값을 and
해준 값이 output의 각 비트에 대입되었다.
위의 출력을 진리표로 나타내면 다음과 같다.
en
input(2)
input(1)
input(0)
output
0
X=don't care
X
X
0
1
1
1
1
output(7)=1
1
1
0
1
output(5)=1
1
1
1
0
output(3)=1
1
1
0
0
output(1)=1
input(2) <= '1';
-- Place stimulus here
END PROCESS;
tb_d : PROCESS
BEGIN
-- Wait 100 ns for global reset to finish
wait for 70 ns;
en <= '0';
wait for 70 ns;
en <= '0';
-- Place stimulus here
END PROCESS;
END;
source 설명
입력값 en과 input (3bit) 과 출력값 output (8bit)를 지정하였다.
en 과 input의 각 비트값을 and하여 output의 각 비트에
대입해주었다. input이 3bit이니 en이 1일때 input 000부터 111
까지의 8가지 경우가 나올것이다. 만약에 input값에 101 값을
대입한다면 and값이 1인 경우- en=1, input(2)=1,not input(1)=1,
input(0)=1 일때이므로 output(5)에 1이 출력될 것이다.
두 번째는 출력파형을 나타내기 위한 source이다.
세 개의 table으로 input의 비트별로 시간차를 두어 값이 입력
되도록 하였다.
출력파형
출력파형 설명
일단 en이 0일때엔 모두 0이 출력되었다. en이 1일때 input의
각 비트끼리의 and가 1이 되는 값이 출력의 각 비트에 들어간다.
여기에 나타난 결과를 진리표로 나타내어보면 다음과 같다.
en
input(2)
input(1)
input(0)
output
0
X=don't care
X
X
0
1
1
0
0
input(4)=1
1
1
1
1
input(7)=1
1
0
1
0
input(2)=1
1
1
1
0
input(6)=1
2.1.2 구조적 모델링
source
source 설명
자료흐름시와 마찬가지로 입력값 en과 input, 출력값 output을
지정하였다. andgate를 여러번 이용할 것이므로 미리 짜두었던
andgate의 source를 불러와 쓸것이다. 그런데 component문에는
not(A)이라는 변수를 쓸 수 없어서인지 자꾸 오류가 났다.
그래서 signal을 이용하여 세 변수를 만들고 각각 입력 input의
비트마다의 not값을 대입해주었다. component를 이용해 en,
input의 각 비트값을 and시켜서 여덟가지 경우의 수를 output에
지정해주었다. 자료흐름시와 마찬가지로 en이 1일 경우에
000부터 111까지의 값이 output에 들어갈 것이다.
출력파형
출력파형 설명
en의 값이 0일때엔 모두 0이 출력되는것을 알수 있다. (0과의
and값은 모두 0이므로.) en가 1일때 input의 세 비트값을 and
해준 값이 output의 각 비트에 대입되었다.
위의 출력을 진리표로 나타내면 다음과 같다.
en
input(2)
input(1)
input(0)
output
0
X=don't care
X
X
0
1
1
1
1
output(7)=1
1
1
0
1
output(5)=1
1
1
1
0
output(3)=1
1
1
0
0
output(1)=1