묻고 답해요
137만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Hdl 17장 FSM 실습,o_done을 reg type으로 선언하신 이유가 궁금합니다
🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.Hdl17장[2. 질문 내용] : o_done을 reg type으로 선언하신 이유가 궁금합니다[3. 시도했던 내용, 그렇게 생각하는 이유] :다른 신호들 처럼 wire type으로 선언하고 assign으로 상태 변화를 감지해도 되지않을까요?다음 always문장을 날려버리고// Step 3. always block to compute output // always @(c_state) always @(*) begin o_done = 0; // To prevent Latch case(c_state) S_DONE: o_done = 1; endcase endassign o_done = (c_state==S_DONE)?1:0 이렇게 코드를 정의해도 될것같아서 질문드립니다.o_done을 reg type으로 선언하신 이유를 잘 모르겠습니다.장점이 있어서 그렇게 하신걸까요?
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
8강 AXI4-Lite 수강 중 입니다. Launch Hardware 진행시 작동이 안됩니다 ㅠ
안녕하세요 맛비님.FPGA 8장 실습을 진행하고 있습니다.환경은 아래와 같습니다.보드: ZYBO Z7-20VIVADO: 2024.01VITIS: Classic 2024.01 2022.01 이후 버젼 main.c 코드를 적용하여 사용했습니다.Makefile에 Code 붙여넣기도 해서 Build 진행시 이상없구요.Terminal 연결해서 UART 붙는 것 까지는 됐습니다만.. Launch Hardware 진행 후 UART창에서 아무 커맨드가 나오지 않는 현상이 지속됩니다..프로젝트, 파일 명도 맛비님 강의랑 동일하게 진행했는데 이유가 뭔지 모르겠네요..관련 증상에 대해 아시는 부분 있으면 답변 부탁드립니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
설치 환경 설정 시 다음과 같은 에러 메시지 발생
안녕하세요 . 동영상 첫번째 그대로 설치 방법을 따라하는데 설치 과정에서 다음과 같은 에러가 발생합니다.오류 원인 및 해결 방안이 궁금합니다.감사합니다.(설치 버전은 영상과 동일한 버전을 설치하였습니다. ) This is a fresh install.Running in batch mode...Copyright (c) 1986-2024 Xilinx, Inc. All rights reserved.INFO - User has accepted the EULAs.ERROR - The value specified for Edition (null) is invalid. Valid edition names are "Vi vado ML Standard","Vivado ML Enterprise". Please specify a valid edition name using -e <edition name> or point to an install configuration file using -c <filename>.
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
WDATA latch / RESET state에 대한 질문 드립니다.
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================안녕하세요. 맛비님.좋은 강의 감사합니다.궁금한게 있습니다.AWADDR의 경우 핸드쉐이크가 발생될 때 변경될 가능성이 있어서 래치를 한다라고 강의에서 들은 것 같은데요.WDATA도 같은 이유로 변경이 될 수 있을 것이라 보는데 왜 AWADDR만 래치를 하는 건가요?wstate와 rstate가 가지는 RESET 상태는 있으나 없으나 동작은 같을 것 같은데 왜 존재하는 것인가요?감사합니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
D F/F Reset 실습영상
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================안녕하세요 궁금한 점이 있어서 문의드렸습니다.// D_FF (Case 1. sync reset) always @ (posedge clk) begin if(sync_reset) begin r_ff_sync_reset <= 1'b0; end else begin r_ff_sync_reset <= i_value; end end// D_FF (Case 2. async reset) always @ (posedge clk or posedge async_reset) begin if(async_reset) begin r_ff_async_reset <= 1'b0; end else begin r_ff_async_reset <= i_value; end endwaveform을 보면서 async는 초기화가 되어 신호가 '0'이 됩니다. 그런데 sync는 clock이 활성화 되면서 0이 아닌 바로 1로 시작하는 이유가 궁금합니다!(다시말하면, DUT에서 sync와 async의 clock 신호가 활성화 될 때의 차이만 있는데 활성화 될 때는 async와 sync의 활성화 value가 다른지 궁금합니다!)(영상에 waveform 영상은 10:57 쯤부터 재생이 됩니다.)
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
CNN가속기 질문
안녕하세요 맛비님강의 수강중 궁금한점이 생겨 질문드립니다 CNN의 구조에서 이미지의 특징을 추출하는 부분이 있고, 추출한 feature map->fully connected layer를 통해 분류하는 부분이 있고, ..이런 과정으로 이해했는데요 하나의 NPU안에 fully connected layer, ReLU 등 모든 CNN의 모든 layer가 포함되어 있는건지, 아니면 NPU는 output feature map만 연산하고 그것에 대한 분류는 소프트웨어를 사용하는지 잘 모르겠습니다 =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결Verilog FPGA Program 5 (LVDS/Serdes, HIL-A35T)
selectIO Interface wizard(oserdes 7:1) 관련 문의 입니다.
안녕하세요RGB 각 8bit 및 Vsync, Hsync, DE data 28bit를 OSERDES를 이용해서 LVDS 출력으로 보내려고 합니다.그러려면 어떻게 접근 해야 하나요?clk_in : 525Mhzclk_div_in : 75Mhzdata_in : 28bit 입니다.조언 부탁드립니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
g++ 설치 문제
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================vivado는 잘 열리고요 ./build 명령어 입력 시, #include <string.h>에서 문제가 발생하는 것으로 보고 g랑 g++ 툴체인이 잘 깔려있나 확인했나 봤더니 g++ 버젼확인이 안되더군요 그래서 g++ 설치가 안되어있구나 구글링해보고 별 짓을 다 해보았는데 잘 안되네요혹시 도움 주실 수 있을까요?제 OS는 다음과 같습니다 당연히 apt-get update, upgrade 해보아도 별 소용이 없더군요 버젼을 높여야하는 wsl 우분투의 버젼을 높여야하는 걸까요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
38장2부 4k boundary
안녕하세요 다름이 아니라 이런식으로 4096이 넘어갈때만 4kboundary규칙을 적용하게 코드를 작성했는데 왜 강의에서 case5에서 transfer byte가 10240일때를 보면 4k바운더리 규칙이 적용되는 구간이 여러번 등장하게 되는데 그러면 8192인 값에서도 4k boundary 규칙이 적용된다는 것인데 왜 적용되는 지 모르겠습니다..!wire [12:0] addr_4k = 13'h1000; assign is_4k_boundary_burst = (last_addr_in_burst > addr_4k[12:AXI_DATA_SHIFT]);
-
해결됨설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
37장 data bit width 질문
안녕하세요.37장 data bit width 부분에서 DDR memory 와 DMA 의 전송 속도 차이를 설명하실때 DDR3 가 8533Mb/s (bitpersec) 의 전송 속도 즉 1066MB/s (bytepersec) 가지므로 1cycle 당 1byte 의 전송속도 를 가지며 결과적으로 1GB/s 로 DMA 의 전송속도인 800 MB/s 가 이에 살짝 못미친다고 하셨습니다. 물론 표에서는 8533Mb/s 라고 나와있지만 Mb/s(bitpersec) 가 아닌 MB/s(bytepersec) 여야하는것 아닌가요?데이터 속도도 1066MT/s 이므로 먄약 Mb/s 이면 transfer 한번당 8bit 라는 소리인데... 아무래도 일반적인 data width 인 64bit(8byte) 가 맞는것 같습니다.결과적으로 DDR의 전송속도도 DMA 의 800 MB/s 보다 훨씬 빠른 8GB/s 고요.
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
rdma.v 코드 수정 필요성 제기 후 수정본 검토 요청입니다!
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================안녕하세요 맛비님 Matbi_rdma.v 모듈의 R FSM 코드 부분을 수정할 필요가 있는 것 같은데 혹시 제가 잘못 알고 있는 것이라면 알려주실 수 있는지 여쭤보기 위해 질문드립니다.제가 지금 파악한 문제는 c_state_r이 어떠한 경우에도 다시 S_IDLE 상태로 갈 수 없다는 것입니다.always @(*) begin n_state_r = c_state_r; case(c_state_r) S_IDLE : if(ar_fifo_empty_n) n_state_r = S_RUN; S_RUN : if(is_burst_done_r) begin if(ar_fifo_empty_n) begin n_state_r = S_RUN; end else begin n_state_r = S_IDLE; end end endcase이 부분에서 is_burst_done_r이 1이라면 마지막 Rdata가 들어오고 있는 중이고(아직 capture 전) 이 상황에서 FIFO안의 해당되는 ARLEN이 아직 빠져나가지않아 비어있지 않으므로ar_fifo_empty_n이 무조건 1입니다.그래서 n_state_r = S_IDLE; 이 구문이 절대 실행되지 않는다는 것입니다. 파형에서도 모든 데이터를 다 받고나서도 여전히 S_RUN 상태에 머물러있는 것을 확인하였습니다.물론 무손실 데이터 전송에는 영향이 없겠지만 만약 현업에서 이 정도는 수정해야 필요성이 있다고 보시는지 의견 부탁 드립니다!+ 이에 제가 생각한 방식대로 코드를 수정해보았는데 옳은 결과인지 확인부탁드립니다!코드 수정 전에는 r_hs의 falling edge에서 여전히 state_r이 1이었으나 사진을 보시다시피 수정 후 0으로 제대로 떨어지는 것을 확인하였습니다. 혹시 제가 잘못생각하는 부분이 있다면 지적 부탁드립니다. 긴 글 읽어주셔서 정말 감사드리고 정말 맛비님 덕분에 설계실력이 늘어가는게 체감이 되어 너무 행복합니다. 항상 감사드리며 양질의 강의 앞으로도 부탁드리겠습니다!코드 수정내용은 이러합니다!if(is_burst_done_r) 조건 부분 제거
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
비바도 zoom in/ 바닥 눈금 설정 질문 건
비바도에서 o_sec 도 볼수 있도록 zoom 하는 방법은 없을까요?그리고 아랫쪽의 노란색 눈금 나오게 할려면 어떻게 해야 할까요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
실습자료 불일치 건
커리큘럼에 있는 실습 자료를 다운받아서 목차를 보았더니 실습 자료와 일치를 하지 않습니다. 어떻게 해야 할까요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
실습 프로젝트 기판 질문
실습 프로젝트 영상을 보면 zybo z7-20로 진행한다고 하였습니다. 다른 기판으로도 수업 그대로 따라가는거 가능할지요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
AXI4-Stream 에서의 Burst mode
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 안녕하세요, 맛비님. 강의 잘 듣고 있습니다. AXI4-Stream 관련 질문이 있습니다. READY 신호가 optinal 이라고 하셨는데, 그렇다면 valid 신호만 1 로 두면, burst mode 로도 동작 가능한 것인지 궁금합니다. 만약 가능하더라도, 이러한 사용이 문서 상 권장되는 것인지도 궁금합니다! 감사합니다~!
-
해결됨설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
안녕하세요 맛비님, 19~20장 BRAM의 사이즈에 관한 질문드립니다.
복습하던 도중에 BRAM의 size에 관하여 의문점이 생겨서 질문드립니다.우선 BRAM을 위와 같은 그림으로 이해하였으며 HDL 19장 4분 13초에서 Memory size = Width * Depth로 결정된다고 하셨습니다. 하지만 HDL 20장의 true_dpbram.v에서parameter DWIDTH = 16; parameter AWIDTH = 12; parameter MEM_SIZE = 3840; (* ram_style = "block" *)reg [DWIDTH-1:0] ram[0:MEM_SIZE-1];으로 선언하셨는데 ,BRAM의 size결정 방법에 따라 MEM_SIZE는 Depth로 이해하였습니다.따라서 MEM_SIZE가 3840이 아닌 2^12가 돼야 할것 같은데 3840으로 선언된 이유를 알 수 있을까요 ??
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
matbi_axis_adder.v에서 axi4 stream채널handshake
맛비님 우선 저의 설계실력이 매우 많이 상승한 것같아서 감사드립니다. 다름이 아니라 40장 질문이 있어서 글을 쓰게 되었습니다. 40장에서 matbi_axis_adder.v에서 axi4 stream채널을 사용하였다고 하였는데 stream채널을 사용할때 ready valid handshake를 사용해야하는 것이 아닌가요? 왜 코드에 handshake를 사용하는 코드는 작성되지 않았는지 궁금합니다!! 그 이유가 혹시 dma에서 hand shake를 사용하기 때문에 굳이 필요없어서 그런건가?
-
해결됨Verilog FPGA Program 1 (HIL-A35T)
SPI MASTER 모듈에 관한 질문입니다.
현재 SPI MASTER 부분을 공부하고 있습니다. 제가 인터넷에 찾아보며 공부한 바로는 SPI 통신은 동기적 통신을 사용한다고 하는데, 해당 코드 전체적으로 always @(posedge clock or negedge reset)을 사용하는 것을 보면 이는 비동기 방식을 사용하여서 이에 대해 궁금해서 여쭤보고 싶습니다!
-
미해결Verilog를 이용한 FPGA 활용 기초
10 bits * 10bits 연산 구현 질문
안녕하세요. 강사님 강의를 보던 중 10 bits * 10bits 연산 구현에서 bit position을 주석으로 두셔서 살펴 보던 중 곱셈에서 어떻게 bit position을 잡을 수 있는지 질문 드립니다. 어떻게 bit position 잡는지 공부 후 16bits * 16bits, 32bits * 32bits 두 곱셈도 스스로 학습해 보려 합니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
explorer.exe 파일 미존재
해결했습니다. 해결 과정 아래 썼습니다. 감사합니다. 안녕하세요.강의명: 필수과정! Xilinx Vivado 2022.2 설치 (Windows 11 의 WSL 기반. 설계엔지니어라면 리눅스환경과 친해져야해요!) 질문: 강의내용에서 mobaxterm상 보여주신 explorer.exe가 존재하지 않는데 리눅스설치를 잘못한 것일까요? 강의시간 7:50/23:13=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================