묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
22강 HW가속 질문
안녕하세요 강의 잘보고 있습니다강의 내용 중 IF bottleneck관련 설명에서 1번의 계산에서는 SW가 HW보다 빠른데, input node는 그대로 있고 weight를 계속 업데이트해서 반복을 여러번 하면 HW가 SW보다 빠르다고 설명해주셨는데요 HW가속기는 이미 학습된 모델(weight)를 활용해서 새로운 입력 데이터(input node)에 대해 inference를 빠르게 하는게 목적이라고 알고있어서 weight는 그대로 있고 input node를 계속 업데이트해서 반복을 여러번 해야할걸로 생각했는데, 강의 내용은 그 반대여서 질문드립니다. =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
watch의 critical path
우선 vivado tool에 대한 이해도가 상당히 낮습니다 ㅜㅠ 그래도 혼자 최대한 해보자는 마음으로 이것저것 만져보고 있는데 이해가 안되는 점이 있어서 질문드립니다! 강의에서 말씀하시길 wire [5-1:0] hour_val = (r_sec_cnt/(60*60)) % 24;부분이 critical path라고 말씀하셨는데 vivado에서 bitstream을 생성하던 중에 오류를 보니까 뭔가 느낌상 source, destination 부분을 보면 될 거 같더군요근데 destination이 o_hour가 아닌 o_min으로 돼있더라구요혹시나해서 o_hour로 가는 path를 열어보니 거기선 positive slack이었습니다. 그래서 이걸 보고 위 코드가 아닌 wire [6-1:0] min_val = (r_sec_cnt/60) % 60;해당 코드에서 neg slack이 발생한 거 같은데 맞을까요?? 그리고 해결책으론 re-timing을 사용하셨는데 제가 1차원적으로 생각하기엔 clock period를 두배하면, 즉 100MHz가 아닌 50MHz로 바꾸면 뭔가 굳이 코드를 수정하지 않아도 될 거 같은데 맞는 논리일까요..?
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
AXI4-Lite 질문
안녕하세요 ! 수강 중에 질문이 있어 글 남깁니다! AXi4-Lite를 처음 접하게 되어서 너무 어렵긴한데..궁금한 점이 코드리뷰 편에서 AXi4-Lite 모듈을 만들 때 register의 개수를 정하잖아요?근데 그 register가 왜 있어야 하는건가요?단순히 write와 read를 handshake에 의해 하는지 보기 위해 넣어둔 것인가요?-> 혹시 이 register가 HW를 제어할 때 쓰는 Register space인가요? 7장의 코드 리뷰 편에서 생성된 템플릿 코드가레지스터 4개를 core로 하고 그걸 slave AXI4-Lite I/F 역할을 하는 모듈로 감싼다.그리고 PS IP에는 master로서 AXI4-Lite I/F역할을 수행하는 부분이 있고 이걸 slave 쪽에 연결한다.합성 후 PS에 4번의 write, read를 하도록 coding한다.그리고 결과를 확인한다. 이렇게 이해하는게 맞나요?? 제일 궁금한 건 저 register가 왜 만들어졌는지 이고 그걸 AXi4-Lite I/F 로 write, read가 되는지 확인하기 위한 core로 사용된 것이 맞는지 입니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
설치 끝난 후 실행오류
안녕하세요 ! 설치를 며칠째 하고있는데 결국 설치까지는 완료가 됐습니다. 그러나 오류로 vivado실행이 안되고 있는 상태입니다.맛비님과 같은 명령어를 사용했으나 출력문이 다르기도 합니다which vivado 명령어를 쓰면 아무것도 안 뜨는데 그렇다고 설치가 안 된 것은 아닙니다..근데 ./xvlog실행은 안 됩니다....~/.bashrc파일에 source 추가도 해주었습니다.xvlog실행이 안되어서 vi ~/.bashrc에export PATH="/mnt/d/yubeen/tools/Vivado/2022.2/bin/:$PATH" 추가는 못했습니다만 만약 하게 된다면 여기서 /mnt/d/ 이 부분은 어떻게 처리를 해야할까요? 이 문제에 앞서 어떻게 하면 실행이 될까요? ㅜㅜ 지우고 재설치해야할까요..
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
Master와 slave / AXI4와 AXI4-lite
안녕하십니까강의 잘 듣고 있습니다.스펙 문서와 이것저것 찾아보면서 든 생각에 의견을 여쭙기 위해 문의드립니다.AXI4/AXI4-Lite와 Master/Slave 관계를 계속 보던 중 Master는 AXI4를 사용하며 Slave는 AXI4-Lite를 사용하는 느낌을 많이 받았습니다. AXI4를 사용할때는 burst 기능을 사용하기 위해 사용된다 할지언정, 정작 Slave는 AXI4-Lite로 구현되어 사용되는 것을 느꼈습니다. 설명이 잘 되었는지 모르겠으나, 요약하면 Master=AXI4, Slave=AXI4-Lite로 이해를 하였습니다. 무조건적이라고 생각하진 않지만 추가적 이해를 도움 받기 위해 연락드립니다. 감사합니다.
-
미해결ARM Cortex-M 프로세서 프로그래밍
s702에 원자적 Access 를 위한 BSRR 코드작성 부분에 대해서
LED 점등을 위해 if 문 작성을 한 부분에 문의사항이 있습니다. if 문 조건을 보면 ODR 레지스터의 값을 조회하고서 BSRR 레지스터에 값을 입력하는 것으로 LED 점등을 하는데요 (GPIOG_13번) BSRR 레지스터에 값을 기록하면 ODR 레지스터에 값을 기록할 때와 다르게 바로 값만 입력하게 되어서 코드 블럭이 생기지 않는다고 하였는데 작성한 코드 전체에서 BSRR 에 값을 Write 하도록 작성되어있지만 if문 조건에서는 ODR 레지스터의 값을 Read 하는 동작이 섞여있어서 여전히 ODR 레지스터를 Read 하는 과정이 도중 중지되지 않을까 합니다?? 그런일이 안발생되는 BSRR 레지스터 Write 동작이 독립적/개별적으로 이루어진다고 말씀하신다면 확신할 수 있게 Disassembly를 통해 직접 확인하는 것을 영상추가해주실 순 없나요? 관련내용 사진 첨부드립니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
chapter 3. fpga에 올리기 관련한 질문입니다.
안녕하세요. IP를 만든 후 새로운 프로잭트에서위와 같이 ZYNQ를 불러오는 단계에서 vivado가 아래와 같은 메세지와 함께 먹통이됩니다.Prism-ES2 Error : GL_VERSION (major.minor) = 1.4구글에도 관련하여 해결법이 잘 안보여서 혹시 해결법을 아시나해서 질문드립니다!
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
zybo z7-20 정상작동 확인 관련 질문입니다.
안녕하세요.이번에 zybo z7-20을 사게되어 선생님께서 블로그에 올리신 글을 보고 보드를 점검해보려하는데,(https://aifpga.tistory.com/entry/Zybo-Z7-20-%EA%B0%9C%EB%B4%89) 여기에 올려주신 동영상과 같이 led가 들어오지 않으며 hdmi로도 아무것도 출력이 되지 않아 혹시 어떤게 문제일까 싶어서 문의드립니다.위와 같이 저 빨간불만 깜빡거립니다.
-
해결됨설계독학맛비'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 문의하기를 이용해주세요.==================
-
해결됨시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
CMP 명령어 예제 중
CMP 명령어의 예제 설명 부분에서CMP R2, 0x13 일때 R2가 0x14인 경우 결과에 CPSR.{N,Z,C,V} 라고 해주셨는데 0x14 - 0x13의 경우 연산의 결과가 0이 아닌데 어째서 Z flag가 업데이트 된다는 것인가요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
VIVADO Linux 프로젝트 생성 질문
안녕하세요.FPGA에 관심이 가지게 되어서 VIVADO 강의가 있어서 공부 욕심이 생겨서 수강을 하였습니다.현재 강의 중에서는 Linux에서 Project 를 생성 하는 방법이 따로 언급이 없으며 Vivado를 설치하여 chapter를 열 수 있지만, 개인적으로 폴더를 생성 후 프로젝트를 따라가면서 배워보고 싶은데 방법을 알 수 있을까 하여 문의 드립니다.참고할 사이트 있으면 기재해주시면 감사합니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
17장 num_cnt 적용 이유
강의 8:30초 부분reg [6:0] num_cnt; 변수를 사용하는이유가사용자가 i_num_cnt 를 쭉 100으로 유지하지 못하는 경우가 있으니 i_run 신호에 맞춰 i_num_cnt를 캡쳐해서 사용하는 경우가 있다. 여기서 쭉 100으로 유지 못하는 경우라는게i_num_cnt 값을 cnt value 만큼의 클럭 사이클을 유지하지 못하는 경우를 말씀하시는건가요?예를 들면 i_num_cnt 가 100이면 100사이클만큼 유지가 되어야 하는데 이를 유지 하지 않더라도 100 사이클동안 카운트 증가가 되도록 하려고요.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
[14장] Question. Latency
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 안녕하세요. 좋은 강의 제공해주셔서 감사합니다.질문이 있습니다. 14장에서 설계한 모듈의 testbench 모듈을 확인해보면, DUT에 인가하는 입력 신호가 Clock의 Falling edge일 때 인가되는 것으로 해석을 했는데요. 그렇다면, 해당 모듈의 Latency는 2 Cycle + 0.5 Cycle (Falling edge) 해서 2.5 Cycle로 보아야 하나요? 만일 그렇다면, 저희가 설계한 모듈이 testbench에 따라서, Latency가 달라지는건가요? (이렇게 생각하면, 아닌 것 같아서, 여쭈어 봅니다.) 감사합니다.
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
FPGA 회로검증 질문
안녕하세요 맛비님 강의 잘보고있습니다.강의 내용중에 ASIC 회사에서 FPGA를 검증용으로 사용한다고 하셨는데 임베디드 FPGA가 아니라 검증용으로 FPGA를 사용한다?? 는게 어떤느낌인지 잘 모르겠습니다.말로 들었을땐 그럴수도 있겠구나 싶은데 현업에서 어떤식으로 쓰이는지 상상이 안되는것같아요 FPGA에서 합성 및 PnR되는 회로와 디자인컴파일러 등 EDA툴에서 과정을 거친 ASIC회로는 구조나 성능이 다를것같고 툴에서도 slack이나 power등 성능지표를 얻을 수 있는데, FPGA에서 어떤 식으로 검증이 이뤄지는지 궁금합니다. (검증 분야에서 EDA툴에 비교했을때 FPGA만의 장점??)제가 학부생이어서 전체 프로세스에 대해서는 잘 모르고, 각 단계에서 다음 과정을 위해 목표 스펙보다 어느정도의 마진을 확보하고 설계해야한다... 정도만 알고있습니다=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
해결됨[임베디드 입문용] 임베디드 개발은 실제로 이렇게 해요.
STM32cubeIDE 에디터 분할 방법
강의보면서 잘 배우고 있습니다. ^^강의하실때 에디터 분할창으로 소스코드 2개 보시면서 코딩하시는 방법이 궁금합니다.Window/ Editor/ Toggle Split Editor(Vertical)이 메뉴는 같은소스를 분할 합니다.분할창에 다른소스를 열고 싶은데요....
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
메모리 반도체에서 Verilog 활용 방안에 대해서 궁금합니다.
안녕하세요 맛비님. 강의가 재밌어서 열심히 듣다보니 구매한지 3일만에 season 1 강좌 수강을 80% 마무리했습니다. 감사합니다. 이제 곧 FPGA 설계 강좌를 수강할 예정인데 메모리 반도체 분야에서도 이렇게 HW 가속기 설계 실습을 해본 것이 + 요인이 될지가 궁금합니다. (결국 메모리 반도체 설계에서는Verilog 코딩 경험이 검증에서만 쓰이는 것이 아닌지...?) 삼성전자는 S.LSI 사업부가 있기 때문에 이쪽으로 지원을 할 예정이지만 SK 하이닉스의 경우 메모리 반도체만 진행하고 있기 때문에 나중에 지원할 때 HW 가속기 설계 경험을 어필해도 괜찮은건지, 괜찮다면 어떻게 어필하는 것이 좋을지 조언해주시면 감사드리겠습니다..! 또한, 차량용 반도체 SOC 설계 분야에서도 이러한 HW 가속기 설계 경험을 어필해도 괜찮은 것일까요? 아직 초반이라 감이 잘 안잡혀서 이렇게 질문드립니다. 감사합니다!!
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
MVN 명령어 사용이유 질문
MVN R0, #7 명령어를 통해 MVN을 공부하다 생긴 궁금증입니다MOV R0, 0xFFFFFF8 과 같은 의미가 아닐까 하고 생각해보았는데 Armv7기준 32bit 단위로 명령어를 가져오는데 이 경우 상수로 전달되는 값이 32bit이기 때문에 명령어를 올바르게 해석하지 못하지 않을까 라는 결론을 가졌습니다. 제가 올바르게 생각한게 맞나요? 만약 맞다면 SUB 명령어를 통해 음수값을 만드는 것과 차이점이 있나요?또한 상수값이 아닌 Operand Register값이 들어갈 수도 있나요? 좋은 강의 감사합니다
-
해결됨설계독학맛비'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 1 (Clock부터 Internal Memory까지)
보드 세팅 관련 문의드립니다.
안녕하세요. 원래는 FPGA 보드를 구매하려고 했다가 금전적으로 부담이 되어 학교에 문의를 넣었더니 대여를 해준다고 하여 그 보드를 사용할 계획입니다. 제가 사용할 보드는 PYNQ-Z2 Board입니다. 혹시 이 보드를 사용해서 그대로 FPGA 강의를 따라가면 될까요? 다른 추가적인 설정을 해야한다면 어떤 설정을 해야할까요? 감사합니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
verilog 기본 문법 질문드립니다.
모듈을 작성할 때 첫번째와 같이 module~ ; 하고 뒤에 변수 선언들을 ;로 구분하는 경우와두번째와 같이 module~( 하고 변수 선언들을 , 로 구분한 뒤에 );로 닫아주고 이 후 동작을 정의하는 경우가 무슨 차이가 있는지 모르겠습니다. 첫번째 코드를 module tb_clock_generator( reg clk, reg clk_en, wire o_clk); 로 수정을 하면 코드 에러가 뜨는데 무슨 차이인지 설명해주시면 감사하겠습니다ㅜㅜ