인프런 커뮤니티 질문&답변

wldlf2819님의 프로필 이미지

작성한 질문수

설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)

timing diagram에서 변한 값의 반영

해결된 질문

24.08.06 20:16 작성

·

84

1

현재 HDL 16강을 공부 중인데 Timing diagram을 보면 reset의 하강 이후 왜 c_state값이 바로 반영이 되지 않고 한 주기 이후에 값이 반영이 되나요?

답변 2

1

wldlf2819님의 프로필 이미지
wldlf2819
질문자

2024. 08. 06. 20:59

한 주기마다 c_state <= n_state를 통해서 업데이트 되는 건 알고 있지만
처음 reset_n이 하강을 하면 if(!reset_n)을 통해서 c_state가 S_IDLE로 반영되어야 하는거 아닌가 해서요

0

설계독학맛비님의 프로필 이미지
설계독학맛비
지식공유자

2024. 08. 07. 23:55

안녕하세요 🙂

좋은 포인트입니다. async negative reset 이라서, negative edge 가 되면 reset 이 걸립니다.

Timing diagram 의 오류네요. 실제 파형은 다음과 같습니다.

reset 을 빨리 먹게 하려고 (aync reset 이라서 clock edge 무관하죠?)

다음과같이 clock 은 #5 로 반전중이라서, reset 을 #1 로 띄우도록 수정했습니다.

image.png

simulation 에서 reset 이 걸리는 시점을 참고해주세요. (하강 edge 에서 걸림)

그리고 c_state 가 0 으로 되는 순간도 같이 봐주시면 좋을 것 같아요.

image.png

이 질문은 강의영상 하단에 수업노트로 추가해 두겠습니다.

즐공하세요 🙂