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

김상현님의 프로필 이미지
김상현

작성한 질문수

설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)

[HDL 24장] Handshake I/F 의 timing closure 를 위한 skid buffer - 실습편

Skid buffer에서 Valid side, Data side에 F/F이 존재하는 이유

작성

·

254

1

=================

현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)

  1. 강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)

  2. 이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)

    1. 개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..

  3. 글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)

    1. 서로 예의를 지키며 존중하는 문화를 만들어가요.

    2. 질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )

  4. 먼저 유사한 질문이 있었는지 검색해보세요.

  5. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

==================

 

안녕하세요. 맛비님. 강의 잘 보고 있습니다. 궁금한 것이 있는데요.

전 강의에서 다룬 Valid / Ready I/F에서 Ready signal이 Combinational logic이어서 여러 개를 cascade하였을 때 클럭 타이밍을 맞추기 어려울 수 있어 이를 방지하기 위해 Skid buffer를 사용한다...로 이해하고 있습니다.

 

Q. 이번 강의에서 왜 5개의 F/F을 사용했는지 이해가 잘 되지 않습니다. Valid side와 Data side F/F없이 Ready side에서만 F/F을 사용하여 Ready 신호를 PIPE/SKID 처리하면 되지 않나요?

답변 2

1

김상현님의 프로필 이미지
김상현
질문자

잘못 이해하고 있던 것 같습니다.

저는 combinational logic인 ready 신호에만 F/F을 연결하면 안되나 싶었습니다.

그런데 이러면 ready 신호는 F/F 때문에 1 cycle 딜레이가 될거고 결과적으로 이러면 m_ready가 되지 않았는데 딜레이된 ready 신호 때문에 데이터가 전송되는 불상사가 발생할 것 같네요.

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

확인 감사합니다, 즐공하세요 🙂

0

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

안녕하세요 🙂

적어주신 Skid 버퍼의 사용 이유는 정확하게 이해하고 계세요.

 

제가 드린 실습코드는 실습코드 입니다. 항상 정답은 없다고 생각하고 있어요.

저는 5개를 써서 skid 버퍼를 작성했는데, 혹시 상현님께서 생각하시는 5개의 F/F 을 사용하지 않고 skid 버퍼를 설계해보실 수 있을까요? 저도 모르는 방법이 있을 수 있으니까요.

아마, 자문 자답이 되실꺼에요.

즐공하세요 🙂

김상현님의 프로필 이미지
김상현

작성한 질문수

질문하기