inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)

[FPGA 22장] 프로젝트 Fully Connected Layer 설계 - 실습편

parameter 관련 질문

497

유승재

작성한 질문수 18

1

안녕하세요, 

오늘은 짧은 질문으로 찾아뵙게 되었네요.

 

1. lab22_matbi.v (top module)에 적힌 parameter를 수정하면 그 하위 모듈들(myip, myip_S00,data_mover)에서도 그 값이 변경되는 것이 맞나요? 코드를 읽어보면 override를 해주고 있는 듯 해서요 

(아래 사진은 lab22_matbi.v에서 하위 모듈을 선언할 때 override 하는 코드)

 

2.  lab22_matbi.v 에서는 parameter integer로 선언하고 다른 모듈에서는 그냥 parmeter로 선언이 되어있던데 둘의 차이가 있나요? (override가 연결되어있는데 둘이 선언되는 방식이 다릅니다)

 

 

감사합니다:)

fpga 임베디드

답변 2

1

설계독학맛비

아.. 

Verilog 2001 과 1995 의 괴리감이 또 있네요.

다음 글을 읽으면서 머리가 아팠는데요. (웰케 복잡해!)

https://bradpierce.wordpress.com/2015/01/07/a-verilog-parameter-infers-its-type-from-its-value-the-myth-that-there-is-a-default-signed-integer-parameter-type-in-verilog/

Rule 을 지켜서 이런 상황이 발생안하도록 설계하시면 좋을 것 같습니다.

즉, 혼용해서 사용하지 마시기를 권장드립니다.

parameter integer 가 xilinx 의 axi code 에서 넘어온건데, (복붙하다보니)

parameter 하나로 통일하셔도 지금 코드에서는 문제가 없어보이네요.

 

 

 

0

유승재

이 수업을 바이블 삼아 계속 참고하며 공부하다보니 질문이 계속해서 생기네요ㅠ

매번 감사합니다:)

0

설계독학맛비

즐공하세요 :)

0

설계독학맛비

안녕하세요 :) (의무감으로 안남기셔도 됩니다.  Verilog 퀴즈 푸는 느낌;; )

1. lab22_matbi.v (top module)에 적힌 parameter를 수정하면 그 하위 모듈들(myip, myip_S00,data_mover)에서도 그 값이 변경되는 것이 맞나요? 코드를 읽어보면 override를 해주고 있는 듯 해서요 

(아래 사진은 lab22_matbi.v에서 하위 모듈을 선언할 때 override 하는 코드)

전부 따라가보진 않았지만, override 가 되고 있다면, 변경되는 것이 맞아요. :)

 

2.  lab22_matbi.v 에서는 parameter integer로 선언하고 다른 모듈에서는 그냥 parmeter로 선언이 되어있던데 둘의 차이가 있나요? (override가 연결되어있는데 둘이 선언되는 방식이 다릅니다)

parameter 에 assign 되는 value 에 따라서, type 이 정해집니다.

parameter 정수를 assign 하면 , 32b integer 로 알고있습니다.

parameter abc = 6;   //defines abc as constant value 6
parameter def = 6.3; //defines def as real parameter

즉, 다음 상황에서는 parameter inteager 나, parameter 나 동일하다. 

따지고 보니까, 동일하다 말하기도 애매하네요. 다음 댓글을 참고해보세요.

아니다, 지금상황에서는 동일하다 답변드릴께요. Verilog 니까.

https://link.springer.com/chapter/10.1007%2F978-1-4615-1713-9_28

 

HW가속기 설계에서 더 보완할 수 있는 방법이 있을까요?

1

51

2

UART0, 1 중 선택

1

83

2

datamoverbram모듈질문

1

84

2

vitis 설치엣 alveo kria versal 등 옵션을 끄고 설치를 했습니다.

1

112

2

vitis 설치 관련 질문 있습니다!

1

107

2

FPGA 공식문서 읽는법

1

110

2

보드 추가의 클릭창이 없습니다.

1

79

2

Edit in IP Packager에서 코드 수정 후 IP 수정하면 simulation에서 수정된 코드로 작동이 안됩니다

1

95

2

BRAM의 Read / Write를 다 수행했는지 확인할 때 사용되는 num_cnt / i_num_cnt 관련 질문

1

115

1

Vitis 코드 작성

1

137

2

vivado 및 vitis 리눅스 환경 설치 관련 질문드립니다.

1

312

3

[9장 led 점등 시간 제어 불가]

1

90

2

Platform Invalid 오류

1

161

3

WSL 설치 관련 문의드립니다!!

1

112

2

Vivado 툴, 파일 질문드립니다!

1

175

2

9장 LED 점등 안됨

1

126

3

Edit in IP Packager 이후에

1

98

1

Fpga 로직

1

103

2

pmu-fw is not running

1

142

2

Create Project에 대해서 궁금해요

1

99

2

장치관리자 USB 포트

1

114

2

FPGA 7장 AXI_LITE I/F질문

1

93

1

bram mover에서 합성할때

1

85

2

타이밍 위반 질문

1

85

2