You are on page 1of 2

1.

실험 내용
이번 주차 skeleton code를 보면, delayed gate modules (gate unit delay가 반영된 gate
module)와 hazard mux modules가 존재한다. 이번 주 과제에 있어 사용할 gate는 primitive가
아닌 주어진 delayed gate module들만 사용한다. 실험은 다음 순서로 진행한다. 본실험에서는
아래 그림과 동일한 회로를 활용할 것이다 (multi-input gate 일부 포함)

그림 - 실험에 사용할 3가지 4to1 MUX

실습은 다음과 같이 진행한다.

① Default 4to1 MUX를 베릴로그로 구현한다.

② testbench는 여러 input 변화에 대한 4to1 MUX의 behavior를 체크하도록 구현되어있다.


시뮬레이션을 동작시켜 Default 4to1 MUX에서 발생하는 hazard들을 확인한다 (총 2개 발생함)

③ Default 4to1 MUX에 대한 hazard 2개를 없앨 수 있도록, 새로운 term 들을 추가하여 모듈


HAZARD_MUX_FIXED를 구현하고, 이를 testbench simulation으로 확인한다.

④Fig A와 Fig B는 SoP 의 Sum에 해당하는 OR gate를 2-input Gate 3개로 구현하는 서로 다른
2가지 방법이다. 각각의 4to1 MUX회로를 있는 그대로 HAZARD_MUX_FIXED_WITH_OR_FIG_A와
HAZARD_MUX_FIXED_WITH_OR_FIG_B에 구현하고, testbench simulation을 통해 hazard를
확인한다. (③을 구현하며 추가한 term들은 넣지 마시오)
2. 토론 및 고찰사항 (결과레포트)
(1) Default 4to1MUX를 구현하여 testbench를 동작시킬 경우, 2가지 해저드가 발생한다. 이를 보이고,
이 두 해저드가 어떤 상황에서 왜 발생하는지 각각에 대해 서술하시오.

->코드 및 waveform 첨부 필수

(2) 위 두 해저드를 제거하기 위해 우리는 SoP formula에 새로운 term들을 추가하는 실험을
수행하였다. 이 때 추가한 term들을 선정하는 과정을 K-map을 활용하여 설명하고, 왜 해당 term들을
골랐는지 그 이유를 서술하시오

->코드 및 waveform 첨부 필수, (1)의 코드/waveform과 분석하여 해당 term들을 넣었을 시 왜


사라지고 실제로 사라졌음을 논리적으로 보여야함

(3) Fig A와 Fig B의 회로는 Default와 같은 4to1 MUX지만 뒤의 OR gate가 2-input gate들로 구현된
회로이다. Testbench를 동작시킬 경우, Default에서 발생했던 2가지 hazard에 어떤 변화가 생기는지
서술하고, 그 이유에 대해 서술하시오.

-> 코드 및 waveform 첨부 필수, 앞선 Default 4to1 MUX의 waveform과 비교하고, 이런 결과가


나온 이유를 구체적으로 그리고 논리적으로 서술해야함

Tip : vivado의 simulation waveform에 보이는 신호들은 testbench module의 i/o만 나오는데, 우리가 구현에 사용한 요소
모듈들의 신호도 추가할 수 있다. (1) scope에서 원하는 모듈 우클릭 (2) add to wave window (3) re-launch simulation (그냥
run simulation 누르면 신호도 초기화될 수 있음)

Tip : 모두 작성하지 않아도, 즉 모두 동작되지 않아도 (모듈을 빈칸으로 두어도) wire와 reg 연결만 되어 있다면 simulation은 동작은 한다.
즉 모듈 4개 중 1개만 다 구현하고 나머지는 연결만 시켜놓아도 1개에 대한 simulation waveform은 확인할 수 있다.

답안 작성 Tip: 각 input이 xx이다가 xx로 변할 때 생기는 해저드인데 원래는 바로 xx해야하지만 xx때문에 xx하게 되어 xx가
발생하여 xx라는 결과가 나온다 식의 논리적인 답안을 작성해야 점수 나옴. 특히, K-map을 활용해서 해저드가 발생하는 변화를
같이 첨부하는 것이 좋으며, 해저드가 등장하는 시간, 위치, 그리고 단순 최종 결과의 해저드가 아닌 중간 글리치 등을 모두
고려하여 작성하는 것을 권장. 논리적으로 flaw가 없는 (설명없이 비약이 없는) 풀이인지가 채점기준임.

You might also like