묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
verilog 문법 관련 질문 드립니다.
wire a_and_b;assign a_and_b = a&b;이런 식으로 wire를 선언하고 assign을 하는 것과wire a_and_b = a & b이런 식으로 wire 선언하면서 값을 할당하는 것이 합성할 때 차이가 없나요? 둘 중에 편한 것을 사용하면 되나요? 두 번째 방식을 사용하면 합성할 때 문제가 생길 수도 있다고 들은 것 같아서 질문드립니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
Design Valid I/F
HDL 22장 8분 쯤에Design Valid I/F를 Season1에서 했다고 했는데어디서 했을까요?
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
SRAM 강의 TB 작성 후 waveform 확인시에 dout이 모두 don't care 처리 관련 질문드립니다.
SRAM 기본 모델링 코드 작성후, RTL view통해서 확인시에 dout 값이 모두 xxxxxx로 처리가 되는데, TB 작성에도 문제가 없어보여 고쳐야할 부분이 있는지 문의드립니다.
-
해결됨FPGA의 기초
vivado 설치 관련하여 질문 합니다.
vivado의 경우 메모리가 부족하여 MobaXterm을 이용하여 설치 했는데 이걸 그냥 사용해도 될까요? 아니면 새로 깔아야 하나요?
-
미해결Verilog FPGA Program 3 (DDR Controller, HIL-A35T)
simulation 질문
init_calib_complete가 high로 액티브 되지 않는데 수정해야 할 부분이 있나요? 또한, ui_clk_sync_rst이 high상태입니다.
-
미해결설계독학's Verilog 마스터 Season 1 (실전 코딩 테스트 문제로 완성하는 디지털 설계 엔지니어의 커리어 도약)
L1-P12 인터럽트 제어 질문
안녕하세요 🙂[1. 질문 챕터] : 29. [L1-P12] Interrupt Controller (인터럽트 제어) 의 제가 설계한 TODO 부분이 의도한 대로 동작하지 않는 것에 대해서[2. 질문 내용] : 제가 작성한 코드 (TODO부분) wire [$clog2(INT_COUNT)-1:0] priority_req; assign priority_req = priority_encoder(interrupt_requests); always@(posedge clk or negedge rst_n) begin if(!rst_n) begin interrupt_service <= {INT_COUNT{1'b0}}; interrupt_active <= 1'b0; end else if(interrupt_ack) begin interrupt_active <= 1'b0; interrupt_service <= 8'b0; end else if(interrupt_requests) begin interrupt_active <= 1'b1; interrupt_service <= (1 << priority_req); // one hot end end [3. 시도했던 내용, 그렇게 생각하는 이유] : 가장 이해가 안되는 부분은 interrupt_ack 가 1이 됐을 때 (시뮬레이션에서 95ns) interrupt_active <= 1'b0; interrupt_service <= 8'b0; 이 부분이 예약되고 105ns에서 각각 0으로 값이 업데이트 될 것으로 예상하였는데 delay 발생하는 부분이 없는 것입니다. 제가 예상했던 파형 (빨간색)
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
vivado와 quartus 프로그램의 systhesis 결과 차이에 대해 궁금한 점 있습니다
quartus를 쓰면 gate level로 합성되게 되는 반면에, vivado를 쓰면 주로 LUT형태로 합성이 되는데 왜 그런지 궁금합니다! 그리고 vivado에서 power, timing 분석하려고 하는데, power는 잘 뜨는데, 각 port마다의 timing이 아무것도 안나옵니다. vivado에서는 어떻게 설정해야하는지 궁금합니다.
-
미해결회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
Active load Diffrential amp 설계와 관련하여 질문이 있습니다.
현재 제가 설계한 Active load Differential amp는 다음과 같습니다. 현재 DC바이어스이 모두 잘 잡혀있다고 생각하여 AC simulation으로 넘어갔는데 simualtion 결과를 보고 DC 바이어스 혹은 입력 신호원에서 문제가 있다고 생각했으나 해결되지 않아 질문드립니다 .
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
valid/ready 스트림 구조 관련 질문이 있습니다!
안녕하세요 맛비님! 개인 실습 중 질문이 있어 질문드리게 된점 양해부탁드립니다. 먼저 현재 실습 중인 내용 말씀드리겠습니다. axi4-lite 를 통해서 텍스트에 입력되어 있는 input data를 인풋bram 에 입력시킵니다.그 후, 개인적으로 만든 연산코어를 통해 연산하고 나서 연산결과를 연산코어 내의 레지스터에 저장합니다.레지스터에 저장된 값을 output bram 에 입력합니다.연산코어가 여러개여서 1-3 과정을 반복했습니다. 정리하면, input txt -> data_mover_bram -> bram0 -> 연산core -> data_mover_bram -> bram1 -> 연산core -> data_mover_bram -> bram2 ...-> 연산 core -> 매 clk 마다 연산결과 출력과 같은 구조를 만들었습니다.testbench simulation 상에서는 원하는 결과를 얻었습니다. 하지만, fpga 에 올리기 위해 generate bitstream 과정을 진행하다가 아래 사진과 같이자원을 고려하지 않고 구현했음을 깨달았습니다. (보드는 zybo z7 10 입니다) 제 추측으로는 연산결과를 각 연산core 에서 레지스터에 저장했다가 bram 에 입력했던 점이 문제라고 생각됩니다. 연산결과가 32bit 가 쌓일 때마다 결과 bram 으로 입력하는 방안을 고민 중인데 그러려면 각 연산 코어에서 bram 에 입력할때 AXI4 stream 을 사용해야 하는게 맞는지, valid/ ready 스트림 구조만 사용하는지 좋을지 알려주시면 감사하겠습니다.강의 외 내용이 많아서 죄송합니다 ㅜㅜ (답변 거부하셔도 괜찮습니다.)
-
미해결회로설계 3일 챌린지 : [내 경험-기업] 매칭 전략 설계하기
라이브 세션 다시보기 어디서 볼수 있나요?
학습 관련 질문을 남겨주세요. 구체적으로 적을수록 좋아요!마크다운과 단축키를 활용하면 글을 더 편하게 작성할 수 있어요.커뮤니티 질문 & 답변에 비슷한 내용이 있었는지 먼저 검색해보세요.서로 예의를 지키며 존중하는 분위기를 함께 만들어가요.잠깐! 인프런 서비스 관련 문의는 1:1 문의하기를 이용해 주세요.
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
tool 질문
현재 pc에 vivado가 깔려 있는 상태인데, vivado로 진행하여도 해당 수업 참여하는데 지장없을까요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
시계만들기 아키텍처-1 의 코딩 방식에 관한 질문
안녕하세요 🙂[1. 질문 챕터] : Verilog HDL/FPGA 외전1 - Chapter2[2. 질문 내용] : 아키텍처-1 의 코딩 방식에 관한 질문[3. 시도했던 내용, 그렇게 생각하는 이유] :module clock_arch1 ( input clk, rst, en, output reg [5:0] sec_cnt, // clog2(60) output reg [5:0] min_cnt, // clog2(60) output reg [4:0] hour_cnt // clog2(24) ); wire w_sec_tick; gen_sec u_gen_sec ( clk, rst, en, w_sec_tick ); wire sec_th = sec_cnt == 60-1; wire min_th = min_cnt == 60-1; wire hour_th = hour_cnt == 24-1; always@(posedge clk) begin if(rst) begin sec_cnt <= 0; min_cnt <= 0; hour_cnt <= 0; end else if (w_sec_tick) begin if(sec_th) begin sec_cnt <= 0; if(min_th) begin min_cnt <= 0; hour_cnt <= hour_th ? 0 : hour_cnt + 1; end else begin min_cnt <= min_cnt + 1; end end else begin sec_cnt <= sec_cnt + 1; end end end endmodule 파형은 문제없이 나온것 같은데, 이런 방식으로 중첩 if 문을 사용하면 기존 Matbi_Watch_1 구조와 다르게 합성되어 타이밍에서 문제가 되는지 궁금합니다. 경계값(th)를 초 단위가 아닌 분/시/일/월 단위로하게되면 if 중첩은 깊어지겠지만 tick_cnt를 60/24/30/12으로 줄 수 있어서 큰 카운터가 필요하지 않을 것 같은데, 이 부분은 어떻게 생각하시는지 궁금합니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
IDLE state의 시점관련
안녕하세요 🙂 안녕하세요, 맛비님 ! 강의 항상 잘 듣고 있습니다!HDL 34장 강의를 들으며 궁금증이 생겨서 질문드립니다. HDL 34장 22분30초 쯤에 read task를 통해 IDLE의 상태를 확인하는 부분입니다.read task를 통해 VIP master에서 ADDR_AP_CTRL, 즉 설정한 pattern generator의 주소의 값을 읽어오고, 이를 lite_rdata로 저장한 후, 이를 CTRL_IDLE_MASK parameter를 통해 IDLE state인지 확인하는 방법을 통해 IDLE 상태를 확인하고 작업을 실행하는 것으로 알고 있습니다.여기서 궁금한 부분이 IDLE 상태, 초기값을 설정하는 부분이 어디에 표시가 되어있는지, 만약 start_vip();를 통한 instantiation에서 초기값이 0x100으로 정해지는 것인지. 혹은 다른 방법을 통해 초기값을 0x100으로 지정할 수 있는지가 궁금합니다.제가 맛비님 강의를 수강하며 SystemVerilog를 함께 배우고 있는 과정이라 코드를 따라가는 부분에서 어려움을 겪어 이렇게 질문 드립니다.==================
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
soft reset관련 질문드립니다!!
안녕하세요 맛비님. 항상 질 좋은 강의 감사드립니다!!!<궁금한 부분>[AI HW Lab2] - 설계환경리뷰편의 7:40~ 쯤부분에 cnn_kernel.v파일의 i_soft_reset에 대해 맛비님께서 "register에 1이 저장이 되어 있을 때, 그걸 이용해서 reset을 걸 수 있다~~"이렇게 설명하셨는데요이거에 대해서 3가지 질문을 드리고 싶습니다.<질문내용>1 (제가 이해한 내용이 맞는지)2 (soft_reset을 쓰는 것의 장점)2-1 (2에서 파생된 궁금증) 원래 reset은 사람이 물리적으로 reset을 걸었다. 하지만, soft_reset은 SW가 register(1이 저장되어 있음)를 이용해서 내부에서 reset을 건다. 즉, 사람이 외부에서 reset을 걸지 않아도 내부적으로 reset이 가능하다 맞을까요?그리고 soft_reset의 장점이 궁금해서 gpt한테 물어보고 제가 정리한 장점은 다음과 같은데하나의 프로그램안에 여러개의 모듈이 있을 수 있다.만약, 어떤 모듈은 reset하고 싶고, 어떤 모듈은 reset하기 싫어이때, 구별해서 reset해주기 위해서 soft_reset을 쓴다.(기존의 reset은 모든 모듈을 한번에 reset하기 위한 것으로 남겨둔다)맞을까요?만약에 2가 맞다면 2-1. 각각의 모듈을 개별적으로 soft_reset 해주기 위해서는 거기에 할당되는 register가 또 개별적으로 사용 될 거라고 생각하는데 이러면 'HW자원을 많이 잡아먹는다'는 단점이 생긴다. 맞을까요?감사합니다!!
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
예제 코드 환경설정
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================예제코드 환경설정에 대한 부분을 따로 공개해둔 영상이 있다고 하셨는데, 그 영상이 어디있는 건지 못찾겠습니다..ㅠㅠ
-
미해결설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)
skid buffer의 handshake 방향이 반대로 되어 있는 이유
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) handshake는 Master가 VALID신호를 보내고SLAVE가 READY신호를 보내면 MASTER가 DATA를 SLAVE에게 보내는 것으로 이해하였습니다. HDL 24장 1분 다이어그램 보면 제가 생각한대로 되어 있는데근데 HDL 24장 1분 24초로 넘어가면 skid buffer 다이어그램이 제가 설명한 것의 정반대로 되어 있습니다.저는 skid buffer를 각 Master와 Slave를 연결 해주는 통로로 생각했었는데skid buffer 자체가 오른쪽 절반은 Master역할을 하고 왼쪽 절반은 Slave역할을 한다고 봐야하나요? 어떻게 이해해야할지 모르겠습니다
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
d ff 코드 작성
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== d flipflop을 본인 힘으로 안보고 코드를 작성 할 수 있어야 하나요?
-
해결됨회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
module FA_CLA_1b assign 구문 질문
module FA_CLA_1b 내 assign 구문 중 P(propagation) node에 대한 질문입니다.P는 Full-Adder 상에서 A와 B의 XOR Gate의 입력으로 들어가는 것을 알 수 있는데,왜 assign P = A | B;로 적혀져 있는지 궁금하여 질문드립니다!
-
해결됨회로설계 입문자를 위한 디지털, 아날로그 설계와 실무 Project
single stage amp 시뮬레이션 질문드립니다
왜 SPICE output log가 안나오는지 잘 모르겠습니다.어느 부분에서 잘못 설정한걸까요?
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
git_progject는 github에서 다운 받는 건가요?
안녕하세요 🙂[1. 질문 챕터] : 1장 Testbench clock 생성의 4분43초 부분에 대한 질문 입니다.[2. 질문 내용] : git_progject는 git.hub에서 다운 받고 실행 하는건가요 아님 그냥 mobaXterm에다가 쓰면 되는 건가요?[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================