Menu
Coddy logo textTech

활성화된 샘플 수락하기

Coddy Verilog 여정의 RTL 설계 및 검증 섹션에 포함된 레슨. 38개 중 32번째.

challenge icon

챌린지

어려움

5단계에 걸쳐 하나의 Sample Monitor를 구축하세요. enable 제어를 추가하세요. 리셋 우선 처리 후 en=1이면 데이터를 받아 total에 더하고, en=0이면 total을 유지합니다. 이전의 모든 동작을 유지하세요. 테스트벤치와 이전 출력 동작을 포함하여 이전 단계의 모든 내용을 유지하세요. 모든 입력값은 알려져 있습니다. 각 시나리오는 최대 40개의 에지를 포함하므로 total은 16비트에 저장할 수 있습니다. 고정된 테스트벤치는 시나리오 1~9에서는 total을 출력하고, 시나리오 10~12에서는 total과 count를 출력하며, 시나리오 13~15에서는 total, count 및 alarm을 출력합니다. 이 단계에서 활성화된 시나리오만 채점됩니다.

design.v를 완성하고 모듈 이름과 포트를 그대로 유지하세요. 잠긴 testbench.v는 입력 변경을 제공하고 안정화된 후 출력을 출력합니다. +CASE=1과 같은 시뮬레이터 인수를 사용하여 시나리오를 선택하며, 표준 입력은 필요하지 않습니다. 설계에 출력, 지연 또는 시뮬레이션 종료를 추가하지 마세요. 예상 출력은 관측값마다 10진수 값이 한 행에 하나씩 표시되며, 값은 공백 하나로 구분되고 개행 문자로 끝납니다.

직접 해보기

module dut(input clk,rst,en,clear, input [7:0] data, input [15:0] limit, output reg [15:0] total, output reg [3:0] count, output alarm);
    always @(posedge clk)begin
        if(rst)total<=0;else total<=total+data;
        count<=0;
    end
    assign alarm=0;
endmodule

RTL 설계 및 검증의 모든 레슨

직접 연습해 보세요: 온라인 Verilog 컴파일러