Universitas Padjadjaran

verilog testbench 예제

Oleh: admin kesos
August 2, 2019

이전 예제는 테스트 벤치로 발을 젖게하는 좋은 방법이지만 테스트 한 회로에는 순차적 논리가 없었습니다. 시계 신호가 필요한 회로를 테스트하려면 어떻게 해야 합니까? 이 것을 테스트하려면 다시 테스트 벤치를 작성해야합니다. 테스트 벤치의 모양에 대한 예는 다음과 같습니다. 이 장에서는 조합 회로 및 순차 회로에 대해 서로 다른 스타일로 테스트 벤치를 작성하는 방법을 배웁니다. 파일에서 입력을 읽을 수 있고 출력을 파일에 기록할 수 있는 메서드를 보았습니다. 시뮬레이션 결과와 예상 결과를 csv 파일에 비교및 저장하고 시뮬레이션 파형으로 표시합니다. 이는 csv 파일에서 오류를 찾는 것이 시뮬레이션 파형보다 쉽다는 것을 보여 주었으며, 이는 시뮬레이션 파형보다 쉽다는 것을 보여 주었던 것입니다. 이 시점에서 테스트 벤치가 시계를 올바르게 생성하는지 테스트하고 싶습니다. 아래와 같이 명령줄 옵션을 제공해야 합니다. Testbenchs는 설계가 올바른지 확인하는 데 도움이 됩니다. Verilog에서 간단한 테스트 벤치를 만들려면 어떻게 해야 합니까? 이전 섹션에서는 한 파일의 줄을 읽은 다음 `for 루프`를 사용하여 해당 줄을 다른 파일에 저장했습니다. 또한,이초기`와 `항상`블록의 사용을 보았다.

이 섹션에서는 모든 기술을 결합하여 `순차적 디자인`의 예인 Mod-M 카운터의 결과를 저장합니다. Mod-m 카운터는 리스팅 6.4에서 논의됩니다. 이 리스팅에 대한 테스트벤치는 리스팅 9.6에 도시되어 있으며 파형은 도 9.7에 도시되어 있다. Exisiting MUX_2 예제 모듈을 사용하여 테스트 벤치를 만들어 보겠습니다. 위의 다이어그램을 참조하여 테스트 벤치 코드에 대한 템플릿을 만들 수 있습니다. 이 코드 조각에서 자극 및 응답 캡처는 한 쌍의 초기 블록을 사용하여 코딩됩니다. 초기 블록에는 테스트벤치에서 신호의 동작을 설명하는 데 사용할 수 있는 순차적 문이 포함될 수 있습니다. 목록은 이전 목록 9.2와 동일하지만 `항상 차단`은 `초기 블록`대신 사용되므로 디자인에 민감한 목록을 제공하고 테스트를 더 많이 제어 할 수 있습니다.

연속 클럭은 중요한 목록을 항상 블록(줄 19)으로 정의하지 않음으로써 19-26호선에서 생성됩니다. 이 시계는 28호선에서 사용됩니다. 또한 디자인의 결과가 원하는 결과(줄 35-36)와 일치하지 않는 경우에도 일부 메시지가 표시됩니다. 이러한 방식으로, 우리는 단지 단말 (그림 9.2 참조)을 읽는 것만으로 오류를 찾을 수 있습니다, 대신 결과가 너무 긴 경우 매우 어려울 수있는 전체 파형을 시각화 (도 9.3 참조). 또한 줄 35-36은 `초기 블록`의 `numref:`verilog_half_adder_tb_v`에도 추가할 수 있습니다. 이 목록에서 `half_adder_tb`라는 이름이 있는 테스트벤치는 5호선에 정의되어 있습니다. 테스트벤치의 포트는 항상 비어 있습니다(즉, 정의에 입력이나 출력이 정의되지 않음). 그런 다음 4 개의 신호가 정의되어 있습니다. 그런 다음 이러한 신호는 구조 모델링을 사용하여 실제 하프 가산기 설계에 연결됩니다(선 13 참조).

마지막으로, 서로 다른 값은 입력 신호(예: 18및 19줄의 `a`와 `b`)에 각각 할당됩니다. 테스트벤치는 시뮬레이션 용도로만 사용되기 때문에(합성용이 아님) Verilog 구문 전체 범위를 사용할 수 있습니다.

Category: Uncategorized | RSS 2.0 Responses are currently closed, but you can trackback from your own site.

Tidak ada Komentar

Comments are closed.

  • DEPT. ILMU KESEJAHTERAAN SOSIAL

    ===============================

    Keberadaan departemen ditujukan untuk:

    1). Menjamin kompetensi dan profesionalisme Dosen dalam melaksanakan tugas sesuai jabatan akademiknya;

    2). Mengembangkan, mengevaluasi dan monitoring kemajuan karier akademik Dosen untuk mendukung pengembangan pendidikan;

    3).Mengoordinasikan kegiatan riset dan pengabdian pada masyarakat yang dilakukan dosen sesuai bidang kompetensinya dalam rangka merealisasikan target kinerja lembaga;

    4). Mengoordinasikan pelaksanaan kerja sama pemanfaatan kepakaran Dosen oleh pihak lain seperti Pemerintah, pemerintahan daerah, swasta atau masyarakat;

    5). Merintis dan mengembangkan kerja sama di bidang pendidikan, riset, dan pengabdian pada masyarakat di tingkat nasional maupun internasional;

    6). Memfasilitasi publikasi karya-karya ilmiah Dosen;

    7). Menyelenggarakan diseminasi hasil riset, pengabdian pada masyarakat, dan inovasi melalui kegiatan ilmiah di tingkat nasional dan internasional;

    Pemimpin Departemen:

    Ketua : Dr. dra. R. Nunung Nurwati, M.Si

    Sekretaris : Dr. Nurliana C. Apsari, S.Sos., MSW