인프런 커뮤니티 질문&답변
SRAM 강의 modelsim 시뮬레이션에서 inner 메모리를 Objects 리스트에서 찾으려고 하는데 안보입니다.
해결된 질문
작성
·
38
0

삼코치님 sram강의에서 waveform에서 inner 메모리를 보기위해서 modelsim에서 Memory List 부분에서 sram인스턴스 네임을 클릭하면 Objects 리스트에서 mem 시그널이 표시된다고 하셨는데 Memory List에서 클릭을 했는데 Objects 목록에서 mem 시그널이 안 뜨는데 어떻게 해야 하나요? 일단 저는 최신 quartus프로그램과 questa를 깔긴했는데 강의에서 처럼 quartus 20.1버전과 modelsim을 깔아서 다시 시뮬레이션을 돌려봐도 mem 시그널이 안보입니다.
답변 2
0
안녕하세요, 답변 남겨드립니다.
버전마다 원인이 다를수있어서 아래 방법들 한번 시도해보시겠어요?
1. 시뮬레이션 시작 전 설정
상단 메뉴에서 Simulate → Start Simulation... 선택
창이 열리면 상단 탭 중 Optimization 탭으로 이동
다음 항목을 설정
Enable optimization은 그대로 둠
Debug / Access 항목을 All 또는 Full Visibility 로 변경
(버전에 따라 “Debug: All”, “Signal Visibility: Full” 등으로 표시됨)
설정을 마친 후 OK → Run 클릭
이렇게 하면 내부 메모리(mem)가 최적화로 숨겨지지 않고 표시됩니다.
2. Memory List에서 인스턴스 선택
시뮬레이션이 실행된 상태에서 상단 메뉴 View → Memory 선택
→ “Memory List” 창이 나타납니다.“Memory List” 창에서
/tb_sram/u_sram_8인스턴스를 클릭
3. Objects 창 확인
Objects 창의 상단 Scope 드롭다운이
/tb_sram/u_sram_8로 되어 있는지 확인
(다른 스코프로 되어 있으면 mem이 보이지 않음)이제 Objects 창에서
mem신호가 표시되어야 합니다.
4. 웨이브폼에 추가
mem 신호가 보이면
Objects 창에서
mem항목을 마우스로 드래그해서 Wave 창에 놓습니다.이후 시뮬레이션을 실행하면 강의처럼 내부 메모리 내용이 웨이브폼에 표시됩니다.
5. 그래도 안 보일 때
다시 Simulate → Start Simulation... 열고
Optimization → Access: All 로 되어 있는지 재확인설정 후 Restart 또는 시뮬레이션 재실행
0
안녕하세요, 인프런 AI 인턴입니다. 전자취준맨님.
SRAM 시뮬레이션에서 inner 메모리를 Models 이나 퀘스타에 표시하려고 할 때 발생하는 이런 이슈는 다양한 이유로 나타날 수 있습니다. 이를 해결하기 위해 몇 가지 일반적인 점검 및 해결 방법을 안내해드리겠습니다.
설계 파일 확인:
- HDL 설계 코드에서
mem신호가 올바르게 정의되고 있는지 확인하세요. 만약 해당 신호가 내부적으로 선언되어 있고 하위 모듈로 전달되지 않으면 시뮬레이터에서 탐색하지 못할 수 있습니다.
- HDL 설계 코드에서
위치 설정 확인:
- Models 이나 퀘스타 환경 설정에서 신호의 가시성을 컨트롤하는 옵션이 고급 설정에 있으므로, 이러한 설정이 시뮬레이션에 영향을 주지 않는지 확인해야 합니다.
- Models 이나 퀘스타 환경 설정에서 신호의 가시성을 컨트롤하는 옵션이 고급 설정에 있으므로, 이러한 설정이 시뮬레이션에 영향을 주지 않는지 확인해야 합니다.
컴파일 및 시뮬레이션 과정 점검:
- HDL 파일 및 관련 라이브러리가 정상적으로 컴파일되었는지 확인하고, 시뮬레이션이 중단되지 않고 끝까지 완료되는지 점검합니다.
- HDL 파일 및 관련 라이브러리가 정상적으로 컴파일되었는지 확인하고, 시뮬레이션이 중단되지 않고 끝까지 완료되는지 점검합니다.
탑 레벨 모듈 체크:
- 최상위 모듈 내에서
mem신호가 공개적으로 선언되었는지 확인하세요. 경우에 따라 외부 참조를 허용하지 않는 구조일 수도 있습니다.
- 최상위 모듈 내에서
디버그 신호 추가:
- 추가적인 디버깅이 필요하다면, 특정 위치에
$display또는$monitor와 같은 Verilog 문법을 추가하여mem신호의 값을 출력하도록 설정할 수 있습니다.
- 추가적인 디버깅이 필요하다면, 특정 위치에
아래는 관련된 개념에 대한 추가 정보를 제공할 수 있는 기존 질문입니다:
- SRAM 시뮬레이션 결과가 이상해서 질문드립니다.
위의 해결책을 통해 문제가 해결되지 않으면, 프로젝트의 특정 구성이나 오류 메시지를 더욱 자세히 살펴볼 필요가 있습니다. 컴파일 및 에러 로그를 살펴보거나 강의 자료의 예제 및 설정과 어떤 차이가 있는지 비교 검토하는 것도 도움이 될 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





