ALTERA DE2 보드를 이용한 CPLD의 설계

Slides:



Advertisements
Similar presentations
I. 프로젝트 동기 II. 프로젝트 목표 III. 파일시스템 IV. 암호화 및 복호화 V. 인터페이스 VI. FBR READ/WRITE VII. 프로그램 흐름도 VIII. 미 구현 사항 IX. 프로젝트 기대효과 X. 프로그램 요구사항 및 팀원 역할분담 XI. 시연 XII.
Advertisements

컴퓨터와 인터넷.
예비보고서1 : 8개의 푸시버튼 스위치가 있다. 이 스위치에 각각 0~7개까지의 번호를 부여하였다고 하자
디지털시스템실험 2주차 고려대학교 전기전자전파공학부.
CH2 OrCAD Capture CIS.
Dept. of Electronics & Info. Eng. Prof. Jongbok Lee
7 – 세그먼트 동작 시키기 (0~9, A, B, C, D, E, F 표시하기)
ASIC의 개요 ASIC(Application Specific Integrated Circuit) 특정 용도 주문형 집적회로
임베디드 시스템 개론 8. 임베디드 시스템 개발 환경 8주차 강의 자료 Embedded System Lab.
제4장 조합논리회로 내용 4.1 조합논리회로 설계 과정 4.2 산술회로 : 가산기(adder)/ 감산기(subtractor)
Multiplexer 설계.
PXA255-FPGA 장비 개요 및 실습 Lecture #9.
7-Segment FND Controller 구현
Quartus II 사용법 VHDL을 이용한 디지털 시스템 설계.
19장. 원격 조정 로봇 설계 김용애 1조 김정은 이동한 이재흔.
PXA255-FPGA 장비 계요 및 실습 Lecture #9.
MAX+PLUS II 설치 및 디지털 시스템의 설계 방법
어셈블리 문법 보강 4월 10일.
VHDL Design : Barrel Shifter
ATMEG2561 & TFT-LCD를 이용한 MOBILE DEVICE 구현
오브젝트 조합 회로 IT CookBook, VHDL을 이용한 디지털 회로 입문.
Quartus 를 이용한 ROM 설계 ROM table 의 작성
디지털시스템설계 과목 담당교수 : 원 충 상 한국교통대학교 컴퓨터공학과
4.1 함수(신호)발생기로 클럭펄스 만들기 ② ① - 신호발생기의 출력을 오실로스코프로 보면서 1 Hz 클럭펄스를 만든다.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
IT CookBook, VHDL을 이용한 FPGA 디지털 설계
디지털회로설계_강의안7 10. 인코더와 디코더.
DK-128 ADC 실습 아이티즌 기술연구소
부트로더와 Self Programming
임베디드 실습 # LED, 7’Segment 제어
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
DK-128 실습 EEPROM 제어 아이티즌 기술연구소
타이머카운터 사용법 휴먼네트웍스 기술연구소
Ch2-1. VHDL Introduction VHDL 정의 VHDL의 역사 VHDL의 장점 HDL의 종류 VHDL 모델링
디지털 시스템 설계(3).
ATmega128 FND 실습 휴먼네트웍스 기술연구소
DK-128 개발환경 설정 아이티즌 기술연구소 김태성 연구원
DK-128 FND 실습 아이티즌 기술연구소 김태성 연구원
Microprocessor I/O Port & CLCD Noh Jin-Seok.
Programmable Logic Device
VHDL Mealy and Moore model
Introduction to OrCAD Capture
Quartus II의 개요 다양한 플랫폼의 설계 환경을 제공 SOPC 설계를 위한 환경이며, 모든 FPGA와 CPLD를 지원
5. 아두이노로 LED와 스위치 제어하기 - 스마트 폰으로 제어하는 아두이노 -.
제품명 제품설명 제품규격 CPU: STM32F103VCT6-LQFP 100 Pin 256KB FLASH 48KB RAM
DK-128 FND 실습 아이티즌 기술연구소
논리회로 설계 및 실험 5주차.
DK-128 실습 내부 EEPROM 제어 아이티즌 기술연구소 김태성 연구원
DK-128 실습 타이머카운터 사용법 아이티즌 기술연구소
2015년 2학기 PULSE 4 전자물리실험 13-카운터, 디코더, FND 회로 - DSU 메카트로닉스 융합공학부 -
7주차 FPGA 보드 사용법.
-여러나라의 숫자와 수에 대해- 제주북초등학교 영재반 5학년 안희주
GM7 PLC 모니터링 프로그램 한국 폴리텍 항공대학 항공정보통신과 송 승 일.
7주차 실습 FPGA 보드 사용법.
컴퓨터 계측 및 실습 디지털 출력 영남대학교 기계공학부.
7세그먼트 표시기.
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
DK-128 개발환경 설정 아이티즌 기술연구소 김태성 연구원
DK-128 개발환경 설정 아이티즌 기술연구소
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
논리회로 설계 및 실험 4주차.
디지털논리 회로 1차설계 예비보고서 2006 송만성 2007이상진 2007배정준 2007김효진.
제품명 제품설명 제품규격 CPU: STM32F103VCT6-LQFP 100 Pin 256KB FLASH 48KB RAM
Platform Builder 사용법.
7주차 실습 FPGA 보드 사용법.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
                                  6장 엔코드 디코드 회로 10진수와 2진수의 변환 및 표시 4 7 A B C D BCD 변환.
BoardGame 보드게임 따라가기.
Presentation transcript:

ALTERA DE2 보드를 이용한 CPLD의 설계 신재생 에너지 변환 연구실 박 용 진

Contents I 구성물품 Quartus II 프로그램 (ver. 11.1) DE2 보드 보드 구성 사용법 (PC와 연결) 설치과정 Quartus II를 이용한 설계 절차 2017-03-01 DE2보드 사용법

Contents II VHDL을 이용한 7-Segment 전체 실행과정 용어정리 참고문헌 VHDL이란? Quartus II 프로그램 VHDL 예제 코드 이용 전체 실행과정 실행과정 (1. Quartus II 프로그램 설정방법) 실행과정 (2. VHDL 코드 작성 및 해석) 실행과정 (3. Compilation) 실행과정 (4. Pin planner) 실행과정 (5. Programmer) 실행과정 (6. DE2보드로 결과 실행) 용어정리 참고문헌 2017-03-01 DE2보드 사용법

DE2 보드 I DE2 보드 구성물품 DE2 BOARD USB CABLE CD (DE2 Supporting) 9V DC power supply 2017-03-01 DE2보드 사용법 4

DE2 보드 II DE2 보드 구성 2017-03-01 DE2보드 사용법

DE2 보드 III DE2 보드 구성 FPGA I/O Devices Cyclone2 EP2C35F672C6 Built-in USB Blaster for FPGA configuration 10/100 Ethernet, RS-232, Infrared port Video Out (VGA 10-bit DAC) Video In (NTSC/PAL/Multi-format) USB 2.0(type A and type B) PS/2 mouse or keyboard port Line-in, Line-out, microphone-in (24-bit audio CODEC) Expansion headers(76 signal pins) 2017-03-01 DE2보드 사용법

DE2 보드 IV Memory DE2 보드 구성 Switches, LEDs, Displays, and Clocks 8MB SDRAM, 512KB SRAM, 4MB Flash SD memory card slot Switches, LEDs, Displays, and Clocks 18 toggle switches 4 debounced pushbutton swiches 18 red LEDs, 9 green LEDs Eight 7-segment displays 16 x 2 LCD display 27MHz and 50MHz oscillators 2017-03-01 DE2보드 사용법

DE2 보드 V DE2 보드 구성 Cyclone II 2C35 FPGA 483,840 total RAM bits 475 user I/O pins USB Blaster 회로 Altera’s EPCS16 IC칩 이용 SRAM 512-Kbyte RAM 메모리 칩 256K x 16bits 로 구성 DE2 보드 구성 DE2보드 연결도 2017-03-01 DE2보드 사용법

DE2 보드 VI DE2 보드 구성 4개의 pushbutton 스위치 (KEY0~KEY3) 스위치와 LED 구성 18개의 toggle 스위치 (SW0~SW17) 18개의 빨강색 LED (LEDR0~LEDR17) 8개의 녹색 LED (LEDG0~LEDG7) 스위치 on일 때 High 값을 off일 때 Low 값을 발생 LED는 입력이 0일 때 on, 1일 때 off DE2 보드 구성 2017-03-01 DE2보드 사용법

DE2 보드 VII PC와 연결 전원 케이블과 USB 케이블을 PC와 연결. USB케이블은 ‘USB Blast port’에 연결 ‘RUN/PROG Switch for JTAG/AS Modes’는 RUN으로 설정 ‘Power ON/OFF Switch’를 켠다. 2017-03-01 DE2보드 사용법

Quartus II 프로그램(ver.11.1) I Download - WWW.ALTERA.COM 2017-03-01 DE2보드 사용법

Quartus II 프로그램(ver.11.1) II Download and install Create Account 2017-03-01 DE2보드 사용법

Quartus II 프로그램(ver.11.1) III 설계절차 Design Entry (Block Editor or Text Editor) Create project and assign target device (New Project Wizard) Compilation and Fitting Corrections Simulation (Vector Waveform File) Pin Assignments Compilation and Fitting Download the .sof file to the CPLD (Programming) 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 I VHDL이란? VHSIC Hardware Description Language VHSIC : 매우빠른 직접회로 (Very High Speed Integrated Circuit) 디지털 하드웨어의 모델링과 합성을 위해 사용되는 컴퓨터 언어 하드웨어 구조와 동작을 기술하기 위해 사용 즉, 하드웨어가 어떻게 동작하여야 하는지(모델링) 또 어떻게 만들어져야 하는지(합성)를 결정. 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 II Entity 선언, Architecture 본체 Entity 선언 : 설계의 입력과 출력을 정의 Architecture 본체 : 입력과 출력의 관계 기술 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 III Entity name = VHDL File name Entity 선언 : 입력과 출력을 정의하는 VHDL 설계의 부분 Entity 선언 내부에는 Port문이 있고 포트 이름을 나열하고 각가에 대하여 모드(mode)와 자료형(type)을 지정. 모드는 포트를 통하여 이동하는 데이터 방향, 자료형은 포트가 가질수 있는 값의 범위를 지정. ‘y : OUT BIT’는 포트 y의 모드는 OUT, 자료형은 BIT로 지정한 것을 의미함. Y=AB+BC+AC ENTITY majority_vote IS PORT( a, b, c : IN BIT; y : OUT BIT); END majority_vote; ARCHITECTURE maj_vote OF majority_vote IS BEGIN y <= (a and b) or (b and c) or (a and c); END maj_vote; : Entity name Port definitions Entity declaration Architecture body : Architecture name 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 IV Architecture 본체 : 입력과 출력의 관계를 기술하는 VHDL 설계의 부분 ‘ARCHITECTURE architecture_이름 of entity_이름 IS’ 형식. 앞에서 정의한 entity의 architecture라는 의미 ‘BEGIN’과‘END architecture_이름’ 사이에 위치함. ‘<’=‘get’ : 오른쪽의 신호를 왼쪽의 신호에 연결하라는 의미. Y=AB+BC+AC ENTITY majority_vote IS PORT( a, b, c : IN BIT; y : OUT BIT); END majority_vote; ARCHITECTURE maj_vote OF majority_vote IS BEGIN y <= (a and b) or (b and c) or (a and c); END maj_vote; : Entity name Port definitions Entity declaration Architecture body : Architecture name 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 V 7-Segment 개별적으로 제어되는 7개의 LED 어레이나 LCD element로 8자 형태의 모양을 갖고 10진수나 element들을 제어함으로 숫자 및 문자를 표시하는데 사용. 이진회로 출력을 십진수로 나타내기 위해 사용되는 표시소자. 7개의 발광 세그먼트가 8자형태로 구성. 0~6까지 표시된 element를 턴온 시킴으로써 십진수를 표시. 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 VI 7-Segment Display LED는 다이오드 이기 때문에 음극에 대해서 양극이 양전압이면 켜짐. 공통 양극(Common anode), 공통 음극(Common cathode)으로 배열 공통 음극 : 모든 LED의 음극은 함께 회로의 접지에 연결되어 양극에 논리High를 인가함으로써 점등시킬 수 있음. 공통 양극 : 모든 LED의 양극이 함께 회로의 전원부에 연결되어 각각의 음극들을 Low로 가져갈 때 점등됨. DE2 보드는 공통양극 연결 형태임. 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 VII BCD 이진 코드화 십진수 (Binary Coded Decimal) : 십진수의 각 숫자를 4비트 이진수로 표현하는 코드 ( ex. 905(십진수) = 1001 0000 0101(BCD)) BCD-to-7 세그먼트 디코더 : 4비트 크기의 BCD 숫자 입력과 세그먼트 선택을 위한 7개의 출력을 갖는 회로 공통양극 BCD-to 7 세그먼트 디코더에 대한 진리표를 통해 모든 숫자를 활성화 할 수 있음. 각 세그먼트의 점등은 입력변수 D3D2D1D0에 의해 결정 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 VIII 공통양극 BCD-to-7 세그먼트 디코더에 대한 진리표 Digit D3 D2 D1 D0 0 1 2 3 4 5 6 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 1 1 1 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 IX Quartus II 프로그램 VHDL 예제 코드 이용 전체 실행과정 Quartus II 프로그램 설정 (Cyclone II, EP2C35F672C6) VHDL 코드 작성 Compilation (‘Start Compilation’ 실행) Pin Assignment (‘Pin planner’ 실행) DE2보드 연결 (‘USB Blaster’) ‘Programmer’ 실행, ‘Start’ 클릭 DE2보드 실행 스위치 실행에 따른 LED변화 확인 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 X 1. Quartus II 프로그램 설정 ( New Project 파일 만들기 ) Project 저장 위치는 ‘C:/altera/11.1/’에 새폴더 생성 후 저장 Project 이름과 ‘top-level Module’이름은 동일하게 설정. (실습에서는 ‘ex1’으로 이름 설정) ‘Create a New Project’ 클릭 ‘Introduction’ 창이 나오면 ‘Next>’ 클릭 ‘Next>’ 클릭 ‘Add File’ 창이 나오면 ‘Next>’ 클릭 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XI 1. Quartus II 프로그램 설정 ( New Project 파일 만들기 ) ① ② ③ Family 항목에 ‘Cyclone II’ 설정 Available device에 사용할 EP2C35F672C6’ 클릭 ‘Next>’ 클릭 후 ‘EDA Tool Setting’ 창이 나오면 ‘Next>’ 클릭 ‘Project directory’와 ‘Device assignments’ 정보 확인 ‘Project name’과 ‘Top level design entity’가 동일한지 확인 ‘Finish’클릭 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XIII 1. Quartus II 프로그램 설정 ( New Project 파일 만들기 ) ① ② ③ 도구모움에서 ‘New’ 클릭 ‘New’ 창에서 ‘Design Fille’의 ‘VHDL File’ 클릭 후 ‘OK’ 클릭 VHDL 코드 작성을 위한 New Project File 완성 좌측 ‘Entity’ 항목의 Device 이름과 Project name 확인 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XIV 1 : ‘library’와 ‘std_logic_1164’ 정의 2 : ‘entity’ 구문, 이름을 ‘ex1’으로 설정 * VHDL 파일이름과 동일하게 entity 이름 설정 SW0~SW3까지 입력을 ‘X’로 지정 7세그먼트 (LED0~6) 출력을 ‘segs’로 지정 3 : ‘architecture’구문, 이름을 ‘behavioral’로 설정 입력 ‘X’의 변화에 따라 출력값이 달라지도록 ‘process’, ‘begin’, ‘case’구문 설정 3.1 : 입력 ‘X’의 변화에 따른 출력 LED 변화 설정 * when “0001” => segs <= “1111001” → SW0을 ON 했을 때 LED1, LED2은 ON, 나머지는 OFF 1 2 3 3.1 7 세그먼트 실행을 위한 VHDL 코드 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XV 3. Compilation 클릭 클릭 Compilation 과정 완료 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XVI 4. Pin Assignment 클릭 Node name에 해당하는 핀 위치 설정 스위치, LED 에 해당하는 PIN 위치 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XVII 4. Pin Assignment Pin Assignment 설정 후 compilation을 다시 실행. 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XVIII 5. DE2보드 연결 ‘RUN’ 설정 ‘Altara-USB-Blaster’확인 DE2보드 연결 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XIX 6. Programmer ‘USB-Blaster [USB-0]확인이 안될 경우. 클릭 클릭 ‘USB-Blaster [USB-0]확인 클릭 선택 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XX 6. Programmer Progress 100%확인 Programmer 실행 후 DE2보드 2017-03-01 DE2보드 사용법

VHDL을 이용한 7-Segment 구동 XXI 7. DE2보드 실행 ‘HEX0’에 ‘5’ 표현 ‘HEX0’에 ‘7’ 표현 ‘HEX0’에 ‘5’ 확인 ‘HEX0’에 ‘7’ 확인 ‘SW0’, ‘SW2’ ON 확인 ‘SW0’, ‘SW1’, ‘SW2’ ON 확인 2017-03-01 DE2보드 사용법

용어설명 I PLD(Programmable Logic Device) : 프로그램 가능한 논리 소자로 디지털 논리 함수를구현하기 위하여 사용자가 프로그램 할 수 있는 디지털 직접회로를 의미 CPLD : Complex PLD, 상호연결된 여러 개의 프로그램 가능한 섹션으로 구성된 PLD Design Entry : 소프트웨어를 사용하여 PLD의 설계 요구사항을 입력하는 과정. 설계 입력은 요구되는 디지털 함수를 서술하는 그림 또는 텍스트 파일을 입력함으로써 수행된다. Compile : CPLD 설계 소프트 웨어를 사용하여 설계정보(회로도, 텍스트)를 해석하여 CPLD프로그래밍 정보를 만드는 과정 2017-03-01 DE2보드 사용법

용어설명 II 피팅(Fitting) : 설계에 대하여 PLD 내부 회로를 할당하고 입력과 출력 핀을 할당 하드웨어 기술언어(Hardware Description Language, HDL) : 디지털 하드웨어를 설계하는데 사용되는 컴퓨터 언어 VHDL(VHSIC Hardware Description Language) : 디지털 하드웨의 모델링과 합성을 위해 사용되는 컴퓨터 언어 VHSIC(Very High Speed Integrated Circuit) : 매우빠른 직접회로 Entity선언 : 입력과 출력을 정의하는 VHD 설계의 부분 Architecture 본체 : 입력과 출력의 관계를 기술하는 VHDL 설계의 부분 Vector Waveform File : 그래픽 파형으로 표시된 입력과 출력을 포함하는 Quartus II simulator에 대한 입력파일 2017-03-01 DE2보드 사용법

용어설명 III 7-세그먼트 디스플레이 : 개별적으로 제어되는 7개의 LED 어레이나 LCD element로 8자 형태의 모양을 갖고 10진수나 element들을 적절히 제어함으로 몇 몇 문자를 표시하는데 사용. Common anode display (공통 양극 디스플레이) : LED의 모든 양극이 회로의 전원부에 연결되는 7-세그먼트 LED 표시소자. 각 세그먼트는 그것의 음극에 논리 Low를 인가함으로써 발광한다. Common cathode display (공통 음극 디스플레이) : LED의 모든 음극이 공통으로 접지에 연결되는 7-세그먼트 LED 표시소자. 각 세그먼트는 그것의 양극에 논리 High를 인가함으로써 발광한다. BCD 이진 코드화 십진수(Binary Coded Decimal) : 십진수의 각 숫자를 4비트 이진수로 표현하는 코드 ( ex) 905(십진수) = 1001 0000 0101 (BCD)) 2017-03-01 DE2보드 사용법

참고문헌 ‘DE2 보드를 이용한 하드웨어 설계’ 이현수 저, 도서출판 홍릉과학출판사 ‘VHDL과 CPLD를 응용한 디지털 디자인’ 김인동, 이상훈, 최우진 공역, 도처출판 인터비젼 DE2 보드 User manual 2017-03-01 DE2보드 사용법