본문 바로가기

Verilog/HDLbits

[HDLBits] Exams/2012 q2b

1.    문제 및 설명

     A.   아래 주어진 상태 머신은 하나의 입력 w와 하나의 출력 z를 가진다.

     B.   상태 플립플롭 y[1], y[3]의 입력 신호인 Y1, Y3에 대한 논리식을 작성하시오.

2.    요구사항

     A.   순차회로와 조합회로를 분리하여 구현하시오

  • A: 000001
  • B: 000010
  • C: 000100
  • D: 001000
  • E: 010000
  • F: 100000

 

 

3.    문제 풀이

     A.     State 

  • A: 000001
  • B: 000010
  • C: 000100
  • D: 001000
  • E: 010000
  • F: 100000

 

4. 모듈 정의

module top_module (
    input [5:0] y,
    input w,
    output Y1,
    output Y3
);

 

 

5. 답

module top_module (
    input [5:0] y,
    input w,
    output Y1,
    output Y3
);
    
    parameter A = 6'b000001, B = 6'b000010, C = 6'b000100, D = 6'b001000, E = 6'b010000, F = 6'b100000;
    reg [5:0] next_state;
    
    assign Y1 = next_state[1];
    assign Y3 = next_state[3];
    

	always@(*)
        begin
            next_state[0] = (y[0]|y[3])&(!w);
            next_state[1] = y[0]&(w);
            next_state[2] = (y[1]|y[5])&(w);
            next_state[3] = (y[1]|y[2]|y[4]|y[5])&(!w);
            next_state[4] = (y[2]|y[4])&(w);
            next_state[5] = y[3]&(w);            
        end

endmodule

'Verilog > HDLbits' 카테고리의 다른 글

[HDLBits] Exams/2013 q2bfsm  (0) 2026.05.17
[HDLBits] Exams/2013 q2afsm  (0) 2026.05.17
[HDLBits] Exams/2012 q2fsm  (0) 2026.05.17
[HDLBits] Exams/m2014 q6  (0) 2026.05.17
[HDLBits] Exams/m2014 q6c  (0) 2026.05.17