VHDL을 배우는 프로젝트


16

저는 EE 학생이며 손가락보다 더 많은 언어로 [적어도 간단한] 프로그램을 작성할 수 있습니다. 방금 VHDL을 배우기 시작했고 언어와 관련 도구를 실제로 배우는 좋은 프로젝트가 무엇인지 궁금했습니다. 나에게 정말 다른 스타일의 프로그래밍이기 때문에 하나를 생각해내는 데 어려움이 있습니다.

나는 가산기와 같은 간단한 것들을 만들었지 만 더 장기적인 (즉 한 달 정도) 프로젝트를 찾고 있습니다.

관련이있는 경우 Xilinx Webpack과 Digilent Spartan3 보드가 있습니다.

답변:


7

나의 "hello world"FPGA 프로젝트는 PWM 및 직렬 스트림 입력을 갖춘 LED 어레이 컨트롤러였습니다. 최종 결과는 좋았지 만 ( http://lbw.axe-man.org/led1.wmv ) Altera Quartus Schematic Editor로 VHDL 부분이 어떻게 묘사되었는지 확인했습니다.


이것은 좋은 생각입니다. 방금 16x16 컨트롤러리스 매트릭스를 선택했는데 컨트롤러가 좋을 것입니다. 깔끔한 비디오!
penjuin 2009

예쁜 비디오! 그리고 그 회로도 편집기가 사용됩니다.
Monica

10

프로그래밍에 관심이있는 것 같아 간단한 마이크로 프로세서를 만들 수 있습니다.


높게 추천했다. 결국 FPGA 및 VHDL 측면뿐만 아니라 프로세서 작동 방식, 프로세서를 지원하기위한 개발 도구 방식에 필요한 사항 등을 배우게됩니다.
Chris Stratton


4

나는에서 한스 작업 즐길 hardhack 온 올해 Rekonstrukt의 FPGA를의 기본 synthisizer를 구축하는 프로젝트. LED 프로젝트도 훌륭하지만 FPGA를 스테레오에 연결하는 것과 같은 것은 없다. 이 프로젝트는 지원하는 오픈 코어 프로세서를 기반으로하기 때문에 LED 프로젝트와 같이 처음부터 구축하지 않습니다. 처음에는 프로젝트에 기본적으로 FPGA를로드하는 방법을 배우고 FORTH의 엔벨로프를 사용할 수 있습니다. 그러나 FPGA 내부에 대해 더 배우기 시작하는 곳은 기능을 추가하고 싶을 때입니다. 그런 다음 VHDL을 파야합니다.


2

내가 즐기는 프로젝트는 FPGA에서 Milton Bradley Simon Game을 구현하는 것이 었습니다.

우리 대학의 EDA 수업은 여러분이 언급 한 것과 같은 게시판을 사용합니다. 구현 된 프로젝트 중 일부는 다음과 같습니다.

  • 이미지 처리 : 중앙값 필터, 히스토그램 스트레칭, 에지 감지
  • 암호화 : AES, 다양한 해싱 알고리즘 등
  • 통신 : 이더넷, USB, I2C 등
  • 게임 : 탁구, 우주 침략자 등

그것은 당신에게 몇 가지 아이디어를 줄 수 있습니다.

두 번째로 opencores.org 아이디어와 마이크로 프로세서를 구현하겠습니다. Xilinx FPGA가 있으므로 microblaze 또는 picoblaze로 무언가를 할 수도 있습니다.

편집 : 서식.


1

나는 얼마 전 xilinx virtex core를위한 vhdl 코드를 작성했다. 알람 시계 구현이었습니다. 이것이 내가 한 일입니다.

  • vhdl 매뉴얼을 통해 많은 것을 읽으십시오-지금 수정해야하지만 hdl을 사용하는 것이 간단하고 쉽다는 것을 알았습니다 :-)
  • 비트 스트림을 얻기 위해 xilinx suite (컴파일러, 신시사이저) 사용
  • jtag를 사용하여 비트 스트림 업로드

헹굼, 반복 1-3. 비트 스트림 생성은 자일링스의 IDE에 모두 통합되어 있다고 지적했다. HDL로 구현하려면 명확한 로직 세트 만 있으면됩니다. 나머지는 IDE에서 수행합니다.


1

수치 제어 발진기는 재미있을 것입니다. 방금 Arduino 호환 보드 ( http://tinyurl.com/ydmz2su 참조 ) 로 디자인을 했지만 FPGA에 적합합니다.

다음은 몇 가지 디자인 참조입니다.

Snell, John 1988 "실시간으로 최대 256 개의 저 왜곡 사인파를 생성하는 디지털 발진기의 설계"컴퓨터 음악의 기초. 매사추세츠 케임브리지 : MIT Press

Moore, F. Richard 1988 "정현파 디지털 발진기에 대한 테이블 조회 잡음"컴퓨터 음악의 기초. 매사추세츠 케임브리지 : MIT Press


0

내가하고있는 일은 약간의 CPU를 만드는 것입니다. 모든 기본 사항을 다루는 반올림 방법입니다.

VHDL에서 대규모 프로젝트의 모든 기본 사항을 다루고 VHDL 디자인 (클럭, 입력, 출력, 로직, 버스 및 순차적 디자인)의 모든 핵심 주제뿐만 아니라 많은 핵심 전자 및 컴퓨터에 노출됩니다. 레지스터, 데이터 연산, 메모리 및 컴퓨터 산술과 같은 설계 및 아키텍처 개념.

덧셈과 뺄셈만으로 시작한 다음 학습하면서 더 많은 기능을 추가하여 완전한 기능 (단순하지만 ... 또는 "레트로"라고 부르는) 컴퓨터까지 작동합니다. 적어도 저의 계획입니다.

또한, 칩에 자신 만의 맞춤형 컴퓨터를 설치하는 것은 매우 멋지다 :) 16 비트 라즈베리 파이처럼 : P

다른 일반적인 FPGA 프로젝트 :

음악 신디사이저

-DSP 효과 생성기

-MIDI 컨트롤러 / 인터럽터

비트 코인 광부

비디오 게임 콘솔 에뮬레이터

커스텀 아두 이노 쉴드

-병렬 프로세서 (기존 컴퓨터로는 크지 않은 특정 수학 문제에 매우 유용)

로봇 / 제어 시스템

-데이터 수집 (Op 앰프로 작업하는 방법을 알고 있다면 FPGA를위한 오실로스코프 설계가 거의 없음)

VHDL 자체는 끔찍하게 복잡하지 않습니다. 기억해야 할 가장 중요한 점은 마이크로 컨트롤러 용 프로그램을 작성하지 않고 실제 전자 디지털 회로를 설계하고 있다는 것입니다. 시뮬레이션은 기본적으로 한 줄씩 실행되는 프로그램이 아니므로 C와 피상적 인 유사성을 보지 마십시오. VHDL은 매우 다른 패러다임입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.