작성
·
241
·
수정됨
1
=================
현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)
강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)
이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)
개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..
글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)
서로 예의를 지키며 존중하는 문화를 만들어가요.
질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )
먼저 유사한 질문이 있었는지 검색해보세요.
잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
==================
안녕하세요 맛비님 24장 12:34초 부분에서 SKID상태로 바뀌기 위해 필요한 2번의 핸드쉐이크 중 첫번째 핸드쉐이크가 발생하는 부분이 185ns가 아닌 195ns가 되어야 하지 않나싶은데 제가 잘못 알고 있는 것인지 여쭤봅니다.
근거는
1) 핸드쉐이크가 이루어지면 skid 모듈의 valid reg에 1이 저장되어야하는데 그 시점이 185ns가 아닌 195ns이기 때문이고
2) 185ns에서 FF에 입력되는 s_valid는 클럭의 엣지와 동시에 들어오게 되는데 이 때는 파형에서의 s_valid 의 value값은 1로 뜨지만 실제로 계산 될 때 쓰이는 값은 이전 상태인 0으로 계산되기에 아직 핸드쉐이크가 일어나지 않아 1번 근거 대로
valid reg가 변화하지 않았다는 것입니다.
이상의 근거들에서 잘못된 부분이 있으면 피드백 부탁드리며 현업중이신데도 답변을 매번 빨리 해주시는거 같아 진심으로 감사드립니다 이상입니다!
답변 2
0
맛비님 말씀으로 제가 새로 이해해본 것은 핸드쉐이크의 발생시점은 클럭의 엣지와 관련없이 valid와 ready가 동시에 1일때 바로 시작되고 이 핸드쉐이크로 인한 출력은 FF의 출력이기때문에 다음 클럭의 상승엣지에서 출력이 된다 그래서 195ns에서 m_valid_reg 가 업데이트 된것이다
이렇게 이해하면 될까요??
추가적으로 클럭의 상승엣지 일때 동시에 입력값도 엣지가 일어나면 이 시점의 클럭의 엣지 때는 입력의 변화가 출력에 영향을 주지 못하는게 맞고 엣지 이전의 입력상태가 그대로 출력에 영향을 미치는 거라고 이해하고 있는데 맞나요??
제가 글을 쓰는 능력이 부족한거 같아 죄송합니다! 답변 감사합니다!
0
안녕하세요 🙂
파형을 보시면, 첫번째 handshake 의 시작 posedge 는 185ns 로 보여지는데요. (명확한데..)
적어주신 근거? 를 제가 부족해서 이해를 못하고 있는 것 같아요. (저도 휴먼인지라 완벽하지 않습니다 ㅎ)
그림도 같이 적어주시면 좋을 것 같아요. 적어주신 내용을 이해하기 어렵네요 ㅠ
참고로..
m_valid_reg 는 F/F 으로 사용되어서, 1 cycle 뒤에 waveform 에 반영되서 눈에 보입니다.
"디지털 회로의 기본 개념은 Clock edge 동기화 입니다."
우리는 Clock edge 에 동기화 되어서 설계하였고
따라서 Clock edge handshake 가 발생합니다.