tb 까지는 셋팅을 완료했고
랜덤생성된 숫자로 표출될 수 있도록 gen을 조정해준다.
설계를 조정한다.
sync가 아닌 async로 만들고
delay timing을 고려해준다. 1clk 정도?
안되겠다.
난수 하려면 counter 쓰는게 편할듯해서
async 말고 sync 로 바꿔주기는 해야할듯하다.
1부터 6까지 계속해서 카운터되는 모듈을 만들었고
request를 보낼때 시점에 얻어오는 것으로 하자.
구현하다가 느꼈는데,
request 신호는 필요 없길래
제거했다.
um... tb그냥 바로 돌려봤는데 왜 이렇게 뜨지?
verilog concat 문법확인
신호를 잘 못끌고 오고있다.
wiring 문제인가?
metastability 문제인가?
wiring의 문제인가 싶어서
명확한 명시를 위하여
변수명을 바꾸어주었는데도
안되네
왜 이 신호를 못받아오고있지?
아무리봐도 이 신호를 연결 못할 이유가 없는데?
그러네 지금 뭔가 이상하게 연결되어있네
top module에서 명시적 wiring을 추가로 해주었다.
그래도 안되는데 ground에 연결되어있어버리는게 문제인것 같다
저 그라운드는 왜 생기는거지? 뭔가 코딩을 잘못했나.
아까 그라운드가 생겼었을때 dice_controller 쪽에 생겼었는데
아직 그 코드 내에서 쓴적이 없어서 그런가싶다.
다시한번 잘 생각해보니
ground가 있는것이 문제가 되지는 않을듯하다
ground가 있는게 문제가 아니고 신호가 잘 전달되지 않는것이 문제다.
열어보니깐 ... ㅋ 얘는 또 왜 이러고 있어
아 답답해
혹시 다른 환경설정의 문제인가 싶어
새로운 프로젝트를 다시 하나 만들어서 다시해본다.
그래도 똑같다 ...
아까부터 느낀거지만
그래도 random_num이 num을 추종하는 것 같기는 하다
타이밍은, 변화하는 패턴이 비슷하니깐
연결 ... RTL을 점검하자.
모든게 RTL 문제일 가능성이 크다.
어 ...? 뭐 바꾼게 없는데 변했다.
(아까랑 버퍼는 그대론데)
그래도 z값이 변하지는 않았다 ㅠ
계속 이것저것 시도를 해봐도 안되네 왜이럴까~~
wiring 오류 라는 키워드로 이것저것 검색중
모호한 표현을 사용하지 말고
데이터 오버플로우를 주의해줄것
https://wh00300.tistory.com/208
assign 구문의 순서가 문제인가 싶어서
random_num과 num의 순서를 바꾸어주었는데
https://gall.dcinside.com/board/view/?id=programming&no=124481
이렇게 에러가 난다. 아까랑 달라졌다.
assign을 제거해보자
assign으로 해결할 문제가 아닐수도 있다.
자 다시, assign 구문 없애고 나니깐 연결이 해제되었다.
instantiation과 port connection을 보자.
책을 보다가
'외부 신호에 연결된 포트만이 이름에 의한 포트 연결을 사용할 수 있다.' 라는 문장을 발견했다.
포맷팅을 바꿔보자.
dice_controller
dice_controller_0
(
.clk(clk),
.reset_n(reset_n),
.reset_button(btn[0]),
.shuffle_button(btn[1]),
.random_num(num),
.led(led)
);
gen_random
gen_random_0
(
.clk(clk),
.reset_n(reset_n),
.num(random_num)
);
dice_controller dice_controller_0 (clk, reset_n, btn[0], btn[1], num, led);
gen_random gen_random_0 (clk, reset_n, random_num);
이걸로 되면 억울할 뻔 했는데
슬프게도 여전히 안된다.
'연결변수의 선언' 부분에서 개념이 덜 잡혀있을까 보강해본다.
input output wire reg
https://nate9389.tistory.com/912
모듈과 모듈 연결
https://www.slideshare.net/beedool/import-module
우선 코드를 이렇게 바꿔보았는데 안된다.
다른 플젝 글
https://velog.io/@pikamon/Verilog-13
이렇게하니 또 소폭 미세변화
net포트는 무엇인가
굳이 명시적으로 안써줬는데 내가 잘 했던게 맞나 확인차.
https://twodaddy.tistory.com/46
우선 SOS 치고 잠시 머리좀 식히자.
'적극적 생각 > FPGA' 카테고리의 다른 글
왜 인터커넥트가 필요한가. (0) | 2022.08.23 |
---|---|
dice_new 오류해결완료 (0) | 2022.08.16 |
[프로젝트] 주사위 (작성용2) (0) | 2022.08.12 |
@sensitivity (0) | 2022.08.12 |
대주제 (0) | 2022.08.10 |