해결된 질문
작성
·
97
1
현재 HDL 16강을 공부 중인데 Timing diagram을 보면 reset의 하강 이후 왜 c_state값이 바로 반영이 되지 않고 한 주기 이후에 값이 반영이 되나요?
답변 2
1
한 주기마다 c_state <= n_state를 통해서 업데이트 되는 건 알고 있지만
처음 reset_n이 하강을 하면 if(!reset_n)을 통해서 c_state가 S_IDLE로 반영되어야 하는거 아닌가 해서요
0
안녕하세요 🙂
좋은 포인트입니다. async negative reset 이라서, negative edge 가 되면 reset 이 걸립니다.
Timing diagram 의 오류네요. 실제 파형은 다음과 같습니다.
reset 을 빨리 먹게 하려고 (aync reset 이라서 clock edge 무관하죠?)
다음과같이 clock 은 #5 로 반전중이라서, reset 을 #1 로 띄우도록 수정했습니다.
simulation 에서 reset 이 걸리는 시점을 참고해주세요. (하강 edge 에서 걸림)
그리고 c_state 가 0 으로 되는 순간도 같이 봐주시면 좋을 것 같아요.
이 질문은 강의영상 하단에 수업노트로 추가해 두겠습니다.
즐공하세요 🙂