VHDL

Coffe Vending Machine VHDL (Moore설계)

전자자연인 2021. 6. 9. 21:48
반응형

1.Coffe Vending Machine

 

2. 소스코드 및 설명 (Moore 설계)

 

 





 

14 : state type을 지정(s0,s1,s2로 이루어짐)

15: state type present_state,next_state signal로 선언.

 

19 : clk신호에 관하여 출력지정.

rst=1 1이면 present_state s0을 전달

아닐시

present_state next_state를 전달

30 : present_state coffee_sel,coffee_serve,coin_in의 입력값에 따라 출력이 정해지는 process

 

32: next_state s0으로 시작.

 

34: present_state에 관하여 coin_in의 값에 따라 상태를 기술, 1일시 next_state s1

아니면 s0유지

 

42: coin_in 1의 값으로 s1이 되었을시 coffee_sel의 입력 값에 따라 next_state 기술

48: coffee_sel 1의 입력에 의하여 next_state s2가 되었을 시, coffee_serve의 입력으로 next_state를 정해준다. next_state의 최종 값을 present_state에 전달해준다(p1 process)

 

present_state의 값에 따라 state_out의 출력값을 지정해주는 process문이다.

s0일시 state_out 00값을 전달,

s1일시 state_out 01값을 전달,

s2일시 state_out 10값을 전달,

나머지의 경우엔 초기값 00으로 전달한다.

 

 

3.시뮬레이션 및 결과 설명

 

 

1.rst값에 의해 초기 상태는 s0 00 state_out에 전달되어 출력된다.

 

2.coin_in 1의 값에 의해 next_state s1이 되어 present_state s1 01 state_out에 전달되어 출력되고, coffee_sel에 의하여 S1에서 next_state값이 정해진다. 커피를 선택(coffee_sel)을 하여 1이 입력되었으면 다음 단계인 coffee_serve로 되어 present_state s2가된다.

 

3.coffee_serve에서 커피가나오면서 1이 입력되었으니 다시 초기상태인 s0(,00)으로 되어

초기값으로 돌아가 다시 coffee machine이 작동되게 된다.

 

 

반응형

'VHDL' 카테고리의 다른 글

4-way Traffic controller VHDL  (0) 2021.06.09
Coffe Vending Machine 설계(Meerly)  (0) 2021.06.09
Sequence Detector(순차검출기)  (0) 2021.06.09
램메모리 VHDL RAM(Random Access Memory) VHDL  (0) 2021.06.09
ROM memory (Read Only Memory) VHDL  (0) 2021.06.09