묻고 답해요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
Skid buffer에서 Valid side, Data side에 F/F이 존재하는 이유
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 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 처리하면 되지 않나요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
m_valid와 m_ready가 OR 처리되어있는 이유가 궁금합니다.
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 맛비님. 안녕하세요. 강의 잘 보고 있습니다. 하나 궁금한 점이 있어서 질문 드립니다. Valid / Ready I/F는 마스터와 슬레이브 간 데이터 전송에 있어 문제가 없는지 서로 검사하고 데이터를 전송하는 것으로 이해하고 있습니다.Q. 약 6분 48초에 나오는 3 stage Handshake 모듈 m_ready와 ~m_valid가 왜 OR로 묶여있는지 이해가 되지 않습니다.m_ready가 만약 0이라면 마스터가 데이터 받을 준비가 되어있지 않다는 것으로 이해가 되는데, 이 때 m_valid가 만약 0이라면 마스터가 데이터 받을 준비가 되어있지 않아도 데이터 전송이 될 것이라고 생각이 들어서요. 왜 OR 처리가 되어있나요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
24장 12:34초 부분 시뮬레이션 핸드쉐이크 발생 타이밍 질문입니다!
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 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가 변화하지 않았다는 것입니다.이상의 근거들에서 잘못된 부분이 있으면 피드백 부탁드리며 현업중이신데도 답변을 매번 빨리 해주시는거 같아 진심으로 감사드립니다 이상입니다!
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
skid buffer 안의 m_ready 신호와 ready 신호의 차이
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 안녕하세요, 좋은 강의 감사합니다. skid buffer 안의 ready 신호에 대해 헷갈리는 부분이 있어 질문을 올립니다. ready 신호는 master side의 모듈이 data를 받을 준비가 되었음을 의미한다고 이해가 되며, 이는 m_ready 신호와 유사한 의미를 가진다고 생각이 됩니다. 하지만, 구현된 코드에서는 m_ready 신호와 동일한 신호로 사용하지 않는데, 두 신호의 차이를 확인할 수 있는 case가 있는지 궁금합니다.감사합니다!
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
23장 valid/ready basic module의 timing 관련해 질문드립니다!
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================안녕하십니까 인터페이스 ip 설계자가 꿈인 만큼 완벽히 이해하고싶어 질문드립니다. 읽어주신 것에 대해 매우 감사드립니다.강의에서 언급하신 미지의 슬레이브 모듈에서 베이직 모듈을 거쳐 미지의 마스터 모듈로 전해지는 ready 신호는 아무리 늦게 도착한다 해도 timing violation 이 일어났을 때 동작 속도는 느려지더라도 데이터 손실은 일어나지 않는다고 생각하는데 저의 개념이 맞을까요?이렇게 생각하는 이유는 미지의 마스터 모듈에서 베이직 모듈로 전해지는 s_valid,s_data는 미지의 슬레이브에서 출발한 ready신호가 도착하기 이전에는 CE핀(미지의 마스터 모듈 안의 CE핀)이 활성화 되지않아 이전 상태를 계속 유지할 수 있기에 아무리 ready신호가 미지의 마스터 모듈로 늦게 도착한다고 해도 즉, 늦은 만큼 클럭 주기를 넘어가더라도 s_valid,s_data를 유지해주어 결국 클럭 주기를 넘어가 timing violation이 일어나도 속도만 느려질 뿐 데이터는 무손실로 전송된다는 것입니다. 강의 내용에 대해 더욱 더 나아간 질문을 드리는 거 같아 죄송하지만 저는 인터페이스 ip 설계 전문가가 되기 위해 스스로 궁금증을 던지는 것이 중요하다고 생각해 이런 질문을 드립니다. 감사합니다!+ 질문드리다가 데이터의 손실이 일어날 수 있는 경우를 생각해보았는데 맞는지 확인해주시면 감사하겠습니다!: ready 신호가 미지의 마스터 모듈로 도착되는 시간이 만약 클럭의 setup과 hold time 사이가 된다면 metastable 상태가 되어 0,1 중 예상할 수 없는 값이 될수도 있기에 동작속도가 느려지는 것 뿐만 아니라 회로의 오동작을 일으킬 수 있을것이다.이것이 제가 추측하는 이유입니다. 글이 길어서 죄송하지만 피드백 부탁드리겠습니다.. 감사합니다!
-
해결됨설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
dma의 read/write data width
안녕하세요 제공해 주신 코드를 수정해서 rdma와 wdma의 data width를 서로 다르게 설계해보았는데요.AWSIZE와 ARSIZE을 다르게 설정해도 큰 값으로 통일되어 error가 발생하더라구요. data width를 서로 다르게 설계하면 axi spec에 위배되는 것인가요? 잠깐 알아본 바로는 위와 같이 read/write의 width가 다른 data를 전송하고 싶은 경우 경우 큰 쪽의 data width에 맞춘뒤 narrow burst라는 것을 활용해서 data width보다 작은 데이터를 전송할 수 있는 방법이 있던데 이것을 사용해야 하는 것인가요?
-
해결됨설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
F/F BRAM delay 질문
안녕하세요 HDL 32 장 1부 4분 30초쯤에 설명에 대한 표현이 헷갈리는 부분이 있어 질문을 올립니다.이전 시즌 1의 20장에서 BRAM 을 설명하실때 BRAM 을 설계할때 F/F 을 사용하므로 1cycle delay 가 있다고 하셨습니다.그렇다면 마찬가로 우리가 axi4-lite 의 register 는 flip flop 으로 구성되어있으므로 바로 준비가 되는것이 아닌 1cycle delay 가 있어야 하는 것 아닌가요? 다시 말해BRAM 의 write, BRAM 의 read 그리고 AXI4-lite read 모두 flip flop 으로 구성 되어있으므로 address 가 들어오면 다음 posedge clk (1cycle delay) 에서 data 를 보내는것 (세가지 각각 we == 1, we ==0, AR HS == 1 인경우) 아닌가요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
코드 작성 방식에 따른 합성 결과
.
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
맛비님의 AI HW강의 관련 질문 드립니다.
맛비님 안녕하세요! 열심히 verilog s1, fpga s1 수강하고 verilog s2까지 수강중인 학부생입니다.본 강의 관련 내용은 아니지만, 맛비님의 또다른 강의인 AI HW 강의에 대해 궁금한 점이 있어 질문드립니다. 저는 현재 전자공 학부 4학년으로 졸업작품으로 [Ai를 활용한 안전 운전 장치(졸음, 음주 감지)]를 준비중에 있는데요. 제가 구현하고자 하는 것은 간략하게 AI를 활용해서 운전자의 졸음을 감지하는 것입니다.이를 제가 가지고 있는 Zybo z7-10으로 구현해보고자 조사 중인데 이 동작을 FPGA에서 전부 구현할 수 있는지, FPGA로 HW가속기를 구현하여 AI 연산만을 수행하게 할 수 있는지 등 저 스스로 접근하는데에 어려움을 느껴 맛비님의 AI HW 강의가 이에 도움이 될 지 궁금하여 질문드립니다. 당연하게도 강의를 듣고 그 내용을 내 것으로 만들어서 저의 실력으로 활용하는 것은 제 몫이지만 아무래도 이 분야의 초급자인 제가 커리큘럼만을 보고 판단하는 것 이상으로 맛비님의 시선에서 봤을 때 적절할지가 더 의미있는 판단이 될 것 같기도 합니다. AI HW가 뜨거운 주제이고 관심이 있는 만큼 이 강의를 여유가 있을 때 들을 생각이였지만 이번에 맡은 프로젝트를 위해 큰 도움이 되는 강의라면 이번 학기에 AI HW 강의까지 병행하여 열심히 공부해봐야겠네요. 항상 너무 질 좋은 강의 감사드리고 이 분야를 진로로 삼으려는 학생들에게 정말 좋은 기회가 되는 강의 만들어주셔서 감사드린다는 말 드리고 싶습니다!
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
[24장] power_of_8_hs.v 코드 관련 질문
안녕하십니까 맛비님. 코드를 분석하다가 궁금한 점이 생겨서 질문드립니다.power_of_8_hs.v 코드를 분석해보았는데,8승 모듈의 출력 단자인 m_power_of_8과 m_valid에 어떠한 계산 결과를 할당한 할당문이 없는 것으로 분석하였습니다.그러나 시뮬레이션 파형을 돌려보면 파형이 정상적으로 생성되었는데, 할당문이 없었음에도 불구하고 값이 정상적으로 출력이 된 이유가 궁금합니다.답변해주시면 감사하겠습니다. =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
slave side master side 질문
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 안녕하세요. 강의를 듣다가 skid buffer 관련되어서 질문이 생겼습니다.hdl 24장 2분 40초 쯤에 m_valid_temp 와 m_data_temp 존재 이유를 설명하실때 master side , slave side 가 각각 skid buffer 의 오른쪽 그리고 왼쪽 으로 말씀하셨는데 보통 모듈에서 valid , data 를 보내고 ready 를 받는 쪽(s_valid, s_ready, s_data)이 상대적인 master module 이고 그 반대가 slave module 아닌가요? 아니면 그렇게 설명하신 이유가 온전히 skid buffer 관점에서 s_valid, s_ready, s_data (왼쪽) 부분이 앞선 모듈의 slave 이고 m_valid. m_ready, m_data(오른쪽) 이 이후 붙을 모듈의 상대적인 master 이기 때문인것인가요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
gimp 설치관련
안녕하세요. 영상을 보면서 gimp를 설치하려고 하는데 오류가 발생해 설치를 실패했습니다. 분석해주시면 감사하겠습니다.설치 중간에 이러한 오류가 발생하였고이러한 문구가 뜨면서 종료되었습니다.remove 하려고 해도 remove 할게 없다는 내용이 뜨고재설치해도 계속 오류가 발생합니다.=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
수강기간 관련
안녕하세요, 맛비님!제가 위의 두가지 강의를 수강하고 있는데요!Verilog HDL Season2는 기한이 정해져 있어서,,, 혹시 강의마다 수강기한이 다른건지, 할인쿠폰을 사용하면 수강기한이 다른건지 궁금해서 문의글 올리게 되었습니다!항상 좋은 강의, 친절한 답변 너무 감사합니다외쳐 갓맛비~
-
해결됨설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
WDMA의 WVALID signal 설정에 대한 질문
안녕하세요 맛비님,좋은 강의 항상 잘 보고 있습니다:) 큰 도움이 되고 있어요. 39장의 WDMA 설계에서 WVALID signal을 보면, slave의 valid signal을 그대로 연결해 주고 있는 것으로 이해했는데요, 후반부의 검증 환경을 보면(그리고 제가 실제 AXI interconnect를 이용해 FPGA상에 구현 후 ILA를 통해 볼때도 그렇고) wready는 항상 1이 되어있는 경우가 많은 것 같습니다.이렇게 되면 AW channel을 통해 address를 전달해 주기 전에, write handshake가 먼저 발생할 수 있을 것 같습니다.(slave의 동작에 따라서요. 영상의 검증 환경에서는 address가 전달된 이후에 data가 들어오지만, 연결된 slave에서 valid signal이 on 되는 상황이면 WDMA의 state에 관계없이 write handshake가 발생할 수 있는 설계로 보입니다.) 여기서 궁금한 점은, awchannel을 통해 write address가 결정되지 않은 상황에서, wready는 왜 항상 1인 것일까요? 이번 강의에서 다루지는 않고 있지만, AXI4 (full) slave 를 설계할 때 data를 먼저 받고 address를 나중에 받을 수 있도록 data만 fifo에 저장한다거나 하는 설계가 일반적인가요?AXI4 slave를 설계할 때 프로토콜상 그런 제약이 있다면 위와 같이(wvalid와 s_valid를 직접 연결) 설계해도 문제가 없을 것 같고, 그렇진 않고 implementation에 따라 달라질 수 있는 부분이라면 master를 설계하는 입장에서는 더 robust하게? 설계하는게 맞을 것 같아 wvalid = s_valid & w_s_run_w 와 같이 설계해야 할 것 같다는 생각이 들었습니다. 바쁘신 와중에 읽어주셔서 감사합니다:) =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
해결됨설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
rdma 설계시 FIFO payload에 대한 의문 +@
안녕하세요 맛비님!좋은 강의 항상 잘 듣고 있습니다.오늘은 RDMA 설계 강의를 보고 직접 RDMA를 구현해 보던 중 의문점?이 생겨 질문드리게 되었습니다. RDMA 설계시, MOR을 위해 AR과 R controller 사이에 FIFO를 사용하였습니다. 이 때 FIFO의 Depth를 통해 하나의 master에서 너무 많은 address request를 날려 bus를 과도하게 점유하는 일을 방지하는 것으로 이해했습니다. 이 때,1) Read channel에서 각 transaction의 종료여부는 burst length를 count하지 않고 RLAST signal을 이용하여 detect하는데, 이 경우 FIFO의 Payload로 burst length를 전달해 줄 필요가 있을까요? FIFO의 Payload width를 줄이면 그만큼 FF를 덜 써 설계상에서 area가 줄어들게 될 테고, 실제로 코드상에서도 ARLEN_r을 Read channel쪽에서 사용하지 않고 있는 것으로 보여 FIFO data width를 0(?!)으로 하여도 되지 않을까 하는 생각이 들게 되었습니다. 혹시 제가 빠트린 부분이 있을까요?2) 위 질문과는 관련이 없습니다만, 보통 AXI 인터페이스를 가지는 IP를 연결할 때는 Interconnect를 이용해서 연결하게 될 테고, 이 때 interconnect의 어느 port에 연결하냐에 따라 ID가 달라지게 될 것 같은데, 왜 xID 포트가 bus 내부가 아닌 consumer쪽에 존재하고, 또 특히 AxID 포트는 output port인지 궁금합니다. 또한 MxN 연결에서 transaction이 어떤 module간에 일어날지는 address에 의해 결정되는 것으로 이해하고 있는데, ID가 어떻게 쓰이는 것인지 잘 이해가 가지 않습니다. 감사합니다. 즐거운 명절 보내시고 새해 복 많이 받으세요:) =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
해결됨설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
AXI에서 aresetn의 사용에 대한 질문
안녕하세요 맛비님.항상 좋은 강의 잘 듣고 있습니다. 지난 강의에서 주로 ASIC에서 asresetn을, FPGA에서 (synchronous) reset을 사용한다고 말씀하셨던 것 같은데요.AXI 버스에서는 aresetn을 사용하는 특별한 이유가 있을까요?ASIC에서도 사용하는 프로토콜 이기 때문일까요?주로 ASIC에서는 APB를, FPGA에서는 AXI-Lite를 사용한다고 하셔서 더욱 왜인지 궁금증이 드네요:)FPGA에서 APB를 잘 사용하지 않는 이유도 궁금합니다! AXI interconnect와 같은 IP가 잘 되어 있어서 그럴까요? 답변 미리 감사합니다! =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
RDMA 설계 질문
맛비님 안녕하세요, 항상 바쁘신데 감사드립니다 !! 오늘 질문은 RDMA 관련 코드입니다.RDMA 설계시 맛비님께서는 Byte 단위 처리가 아닌 한 사이클(8Byte)당 처리 방식으로 설계 하셨습니다. 그 예시로r_num_total_stream_hs <= r_transfer_byte >> AXI_DATA_SHIFT; 아래 코드와 같이 3bit 비트 이동 연산은 곧 2^3=8 만큼 나눈것이기 때문에 이해가 어렵지 않았습니다. 하지만 이해가 가지 않는 부분은 아래 코드 입니다.wire [12-AXI_DATA_SHIFT:0] last_addr_in_burst = (w_m_axi_gmem_ARADDR[11:AXI_DATA_SHIFT] + init_burst_len); 위의 hs의 수를 구하는 것은 말 그대로 크기에 대한 나누기 이기 때문에 적용이 문제가 없을 것이라고 생각합니다. 하지만 w_m_axi_gmem_ARADDR은 우리가 실제 AR Channel을 통해 보내줄 Physical address이므로 이것을 임의로 하위 3bit을 자르는 것이 가능한지 이해가 가질 않습니다.ex ) 13'b1111_1111_1111_0000 13'b1111_1111_1111_0011위의 두 개는 다른 값이지만 , 하위 3bit을 자르면 같은 값이 되기 때문입니다. 코드를 다시 들여봐도 이해가 가지 않아 죄송합니다...오늘도 좋은 하루 되세요.=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
for문 사용에 대한 질문이 있습니다!
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 안녕하세요 맛비님!대학교의 verilog 수업 중 모듈을 설계할 때는for문을 사용하지 말라고 배우고연구실 선배들도 테스트벤치가 아닌 모듈을 설계할 때는for문을 사용하지 말라고하셔서항상 안써왔는데맛비님의 FIFO 코드를 공부하다 register 초기화할 때for문을 이용하여 초기화하는 것을 보고어떤 상황에서는 사용해도되고,어떤 상황에 사용하면 안되는지 자세하게 알고 싶습니다!
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
Exclusive access
맛비님 안녕하세요 !Atomic access에서 exclusive access 관련 질문을 드리고 싶습니다. exclusive access를 설명해주실 때 2개의 Master가 같은 Address에 접근하는 예시로 주셨습니다. 3번째 transaction에서 M0, M1 Master 중 M0가 Write를 같은 address에 동작한다고 할때 Monitoring Hardware안에 내용들이 다 지워져서 4번째 transaction에서 failure 일어난다고 말씀해주셨습니다.Monitoring Hardware안에 내용들이 지워진다 라는 부분이 이해가 가지 않습니다.좋 =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
AXI4-Lite ARREDY, RVALID 신호에 대하여
맛비님 안녕하세요 ! 복습 중 궁금한 사항이 생겨 글 남기게 되었습니다. AXI4-Lite Read Transaction 설계를 위해서 assign ARREADY = (rstate == RDIDLE);신호를 배웠습니다.이렇게 신호를 할당한 이유는 Channel의 종속성 피하기를 이유로 설명해주셨습니다. 하지만 이렇게 된다면 RDIDLE 상태 일때, 항상 ARREADY가 '1'로 Set 되어버립니다. 이러면 실제로 slave 쪽이 ready가 되지 않은 상태에서도 ARREADY == 1이 된다고 생각했습니다. 정리하자면 AXI라는 문서를 보고 저희가 설계하는 것이기 때문에, 혹시나 모를 SLAVE가 READY가 되지 않을 상황 같은 것을 고려하지 않아도 되는지 궁금합니다. =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================