330 likes | 1.08k Views
디지털시스템실험 2 주차. 고려대학교 전기전자전파공학부. 개요. FPGA 및 Verilog 사용법 이해 Verilog 로 설계한 회로의 동작을 FPGA 를 통해 검증. FPGA. FPGA? 1985 년 미국 Xilinx 사에서 최초로 개발 PLD( Programmabe Logic Device ) I/O 블록 내부에 소형 Logic Cell 배열되고 Logic Cell 간에 배선 구조적으로 Gate Array
E N D
디지털시스템실험2주차 고려대학교 전기전자전파공학부
개요 • FPGA 및 Verilog 사용법 이해 • Verilog로 설계한 회로의 동작을 FPGA를 통해 검증
FPGA • FPGA? • 1985년 미국 Xilinx사에서 최초로 개발 • PLD(ProgrammabeLogic Device) • I/O블록 • 내부에 소형 Logic Cell배열되고 Logic Cell간에 배선 • 구조적으로 Gate Array • 이용자가 직접 프로그램 가능 Field Programmable Gate Array
Verilog • Verilog • HDL(Hardware Description Languages)중 하나 • 다른 하나는 VHDL(VHSIC Hardware Description Language • VHDL은 1987년에, Verilog는 1995년에 각각 IEEE 표준이 됨 • 목적 • 저수준(게이트. 스위치)뿐만 아니라 고수준(설계, 동작)까지 설계 VLSI(Very Large Scale Integration)설계 및 칩 제작 가능 • HDL의 주요기능 - 설계회로를 제작하기 전에 회로의 동작여부를 시뮬레이션
문법 • Module • 설계의 기본 단위 • 키워드 • 동작 정의 (프로그래밍 언어의 기본 함수와 비슷한 역할) • Assign/ if/ else/ and/ begin/ for/ …. • Wire • 회로를 연결하는 연결선
문법 • 연산자 • 산술 연산자 사용가능 • +, -, *, / • 관계 연산자 사용 가능 • >, < … • 논리 연산자 사용가능 • 하위 모듈 호출 가능 (function call)
PIN MAP • 실험을 위한 FPGA의 입출력 단자 • Clock • LED • Reset
PIN MAP • 실험을 위한 FPGA의 입출력 단자(cont.) • DIP Switch • 7-segment
설치 • QuartusSetupWeb-13.0.1.232.exe 파일을 통해 Quartus-13.0 sp1 버전을 설치 ModelSimAltera Starter Edition만 설치
다운로드 주소 http://wine.korea.ac.kr/~khtinsoft/DSLab/Quartus13.zip
Verilog 프로그래밍 • 프로젝트 생성 • File -> New Project 메뉴를 선택
Verilog 프로그래밍 • 작업 폴더 및 프로젝트 이름 선언 • Working Directory : C:\DS_2013\LAB01_INTRODUCTION\QUARTUS • Project Name : LAB01_INTRODUCTION • Top-Level Entity Name : LAB01_INTRODUCTION
Verilog 프로그래밍 • Family & Device setting • Device Family : Cyclone ⅣE • Device : EP4CE30F23C8
Verilog 프로그래밍 • 모듈 설계 및 컴파일 • File > New 메뉴를 선택 • 나타나는 창에서 Verilog HDL File 을 선택
Verilog 프로그래밍 • 모듈 설계 예시 • C:\DS_2013\LAB01_INTRODUCTION\RTL 폴더에 LAB01_INTRODUCTION.v 라는 이름으로 저장(RTL 폴더를 생성)
Verilog 프로그래밍 • 프로젝트 내 파일 포함 확인 • Project > Add/Remove Files in Project 메뉴를 선택하여 프로젝트에 LAB01_INTRODUCTION.v 파일이 추가되어 있는지를 확인
Verilog 프로그래밍 • 오류 체크 • Processing > Start > Start Analysis & Elaboration 메뉴를 선택하여, 설계된 로직의 문법 오류 검사를 수행
Verilog 프로그래밍 • 컴파일 • Processing > Start Compilation 메뉴를 선택하여 컴파일을 진행
ModelSim시뮬레이션 • ModelSim을 통해 시뮬레이션 • 시뮬레이션 환경 셋팅 • C:\DS_2013\LAB01_INTRODUCTION\RTL 폴더에 • LAB01_INTRODUCTION_TB.v 파일로 저장
ModelSim시뮬레이션 • 프로젝트 생성 • File > New > Project 메뉴를 선택하여 프로젝트를 생성
ModelSim시뮬레이션 • 작업 폴더 지정 • Project Name : LAB01_INTRODUCTION_TESTBENCH • Project Location : C:\DS_2013\LAB01_INTRODUCTION\TESTBENCH
ModelSim시뮬레이션 • 파일 추가 • Add items to the Project 창에서 Add Existing File 선택 후 로직파일 (LAB01_INTRODUCTION.v)과 테스트 벤치 파일(LAB01_INTRODUCTION_TB.v) 파일을 추가
ModelSim시뮬레이션 • 컴파일 수행 • Compile > Compile All 메뉴를 선택하여 추가한 파일에 대한 컴파일을 실행
ModelSim시뮬레이션 • 시뮬레이션 • Simulate > Start Simulation 메뉴를 선택 • Design 탭의 Work > LAB01_INTRODUCTION_TB를 선택하고 OK 버튼
ModelSim시뮬레이션 • 신호 입력 • Instance 창에서 LAB01_INTRODUCTION_TB를 선택하고 마우스 오른쪽 버튼을 눌러 Add Wave 항목을 선택하여 Wave 창에 TestBench입, 출력 신호를 추가
ModelSim시뮬레이션 • 시간 할당 • Transcript 탭에서 선택하여 직접 run 1us를 입력 (소문자)
FPGA 실험 • PIN 설정 • Assignment > Pin Planner 메뉴를 선택한 후 Pin Planner 창의 아래 부분 창에서 Location을 다음 표와 같이 핀 설정
FPGA 실험 • 사용하지 않는 PIN ground로 설정 • Assignment > Device 에서 Device and Pin Options • Asoutput driving ground
FPGA 실험 • 컴파일 수행 • Processing > Start Compilation 메뉴를 통해 다시 컴파일을 수행 • Tool > Programmer를 실행시킨다. Hardware Setup을 클릭하여 USB-Blaster를 선택
FPGA 실험 • USB blaster/ JTAG/ Program등의 설정 확인
FPGA 실험 • 확인 후 start하여 실험 결과 검증
FPGA 실험 • 실험 결과 확인 및 보고서 작성 • 결과 보고서 : FPGA 동작 확인 및 시뮬레이션 동작 확인 위주로 작성 (사진 첨부) • 예비 보고서 : 다음 실험에 대한 보고서 작성 (목표, 배경, 설계방법, 실험 계획 등)