2 기능 모듈 설계 < P > 그림 1 에서 FPGA 설계를 기반으로 한 제어단은 전체 시스템의 핵심이며, 내부는 주로 간단한 난수 생성기, 서브권 컨트롤러, 탁구 위치 컨트롤러, 갑을측 점수 컨트롤러, 반칙 오디오 컨트롤러 등의 모듈로 구성됩니다. 전체 컨트롤은 모듈식으로 설계되었으며, 먼저 VHDL 언어로 기능 모듈을 작성한 다음 최상위 구조도를 사용하여 각 기능 모듈을 연결합니다. 설계의 어려움은 각 모듈의 작업을 조정하고 각 신호 간의 타이밍 관계를 엄격히 준수하는 것이다. 이 시스템은 1 kHz 시스템 시계를 사용합니다. < P > 2.1 단순 난수 생성기 < P > 경기의 첫 서브권은 난수 생성기에서 생성된 데이터에 의해 결정되며 무작위성 요구 사항이 엄격하지 않기 때문에 매우 간단한 패턴으로 생성됩니다. 즉, FPGA 가 켜지면 시스템 클럭이 분파되어 일측파 신호 square 를 생성하고 심판이 경기 시작 스위치를 폐쇄하면 start 신호가 상승합니다. 모듈 시뮬레이션은 그림 2 와 같이 결과가 설계 요구 사항을 충족합니다. 이 모듈은 square 신호 주기가 start 신호 상승이 설정된 시간보다 훨씬 커야 무작위 데이터의 올바른 읽기를 보장할 수 있도록 설계되었습니다. < P > 2.2 서브권 컨트롤러 < P > 서브권 컨트롤러의 제어 프로세스는 리셋 버튼을 누르면 서브권 디지털 튜브가 8 을 표시하고, 그렇지 않으면 경기 시작 스위치가 닫힐 때 난수 생성기의 값을 표시합니다 ( 또는 1, 은 갑을, 1 은 을을 나타냄). 경기에서 서브권 교환 규칙을 준수하기 위해 갑을 쌍방의 스코어 합계 신호 sum_sc 를 설계하는 것은 이 아닌 짝수 (즉, 점수 합계가 가장 낮은 sum_sc 이 내려갈 때), 서브권 디지털 튜브는 에서 1 로 또는 1 에서 으로 표시됩니다. < P > 이 모듈 설계에서 서브권 디지털 튜브의 신호 제어는 여러 클럭에 의해 제어됩니다. 즉, 시작 경기 스위치 start 및 점수 sum_sc 신호는 VHDL 프로그래밍 언어에서 하나의 프로세스로 구현할 수 없습니다. 두 개의 신호를 하나의 클럭 신호로 결합하고 두 클럭의 트리거 가장자리를 통합해야 합니다. 따라서 최적의 클럭 트리거 방법은 그림 3 에 표시된 fqq_en 신호입니다. 이러한 타이밍 요구 사항을 충족하기 위해 점수 합계 하위 sum_sc1 신호로 entity sum_sc_mod2 를 설계합니다. start 및 sum_sc1 의 주파수가 시스템 클럭 신호 clk 주파수보다 훨씬 낮기 때문에 clk 고주파 신호를 사용하여 해당 가장자리를 캡처하여 새 클럭 신호 fqq_en 을 생성할 수 있습니다. 서브권 디지털 튜브가 올바르게 표시되도록 하기 위해 entitv led_fqq_ctl 이 fqq_en 하강 시 해당 디지털 튜브 출력 신호 led_fqq 를 생성합니다. 시뮬레이션 파형은 그림 4(b) 에 나와 있습니다. < P > 서브권 컨트롤러의 VHDL 핵심 절차는 다음과 같습니다. < P > 2.3 탁구 위치 제어, 갑을 점수, 반칙 오디오 제어 < P > 탁구 위치 제어 회로는 FPGA 제어단의 핵심이며 경기 규칙에 따라 Mealy 형 상태 기계를 채택하여 설계 난이도를 크게 줄였습니다. 상태 기계 * * * 는 표 1 과 같이 각각 7 개의 상태를 정의하고, 상태 전환은 그림 5 와 같이 표 2 와 같이 전환 조건을 정의합니다.
3 최상위 모듈 시뮬레이션 테스트 < P > 는 편폭 제한으로 인해 이 시스템의 분배기, 디코더 등 일반적으로 사용되는 모듈의 설계는 더 이상 군더더기가 아니며, 최종 최상위 구조도 설계는 그림 6 과 같이 그림 7 과 같이 아날로그 파형을 분석하여 볼 수 있습니다. 그림에서 경기 신호가 시작된 후 첫 번째 서브권은 을측, 갑측 서브는 반칙 오디오 회로 울림을 일으킵니다. 탁구공이 차례로 옮겨지고, 갑이 공을 잡은 후 을측이 공을 잡지 못하고, 갑이 득점하고, cnta 신호는' 11' 입니다. 여기서 출력은 디지털관 출력 신호로 숫자' 1' 을 나타냅니다. 시뮬레이션을 통해 이 시스템 설계는 게임기 경기 규칙 요구 사항을 충족한다는 것을 알 수 있다.
4 결론 < P > VHDL 언어 프로그래밍을 사용하여 FPGA 를 기반으로 탁구 게임 콘솔을 성공적으로 설계했습니다. 시뮬레이션 검증을 통해 결과가 설계 요구 사항을 충족한다는 것을 알 수 있습니다. 시스템에는 서브권 제어, 자동 점수, 반칙 힌트 등 다양한 기능이 있어 실제 탁구 경기를 효과적으로 시뮬레이션할 수 있습니다. 이 시스템은 인체 감지 센서를 사용하여 타격 신호를 수집하고, FPGA 를 사용하여 TV 나 모니터로 비디오 신호를 생성하고, 탁구의 궤적을 보다 직관적으로 표시하여 실제 인간-컴퓨터 상호 작용을 실현하고, 가상 효과를 최적화하는 아이디어를 더욱 개선했습니다. (윌리엄 셰익스피어, Northern Exposure (미국 TV 드라마), 스포츠명언)