1 VHDL-개요_ 1
정보통신설계 II
강의교재
“VHDL을 이용한 디지털회로 입문” 출판사 : 한빛미디어 나미키 히데아키, 나가이 다카미치 지음 김은성 이영희 옮김 평가 : 중간시험34% 기말프로젝트 34% 실습보고서 및 실습확인 16% 출석 및 태도 16% 주요 수업 내용 (5장후반,7장 8장,9장,10장) : Flip Flop, 순서회로, 연산회로, 조합 및 순서회로 응용, 프로젝트 설계2
Section 06
7-세그먼트 디코더의 설계(253페이지)
7-세그먼트의 동작 8개의 LED로 구성. 다양한 문자, 숫자 표시기 a b c e f g d dot g 1 2 3 4 5 10 9 8 7 6 f c o m a b e d com c do t3
Section 06
7-세그먼트 디코더의 설계(253페이지)
7-세그먼트의 동작
8개의 LED로 구성. 다양한 문자, 숫자 표시기
Common Cathode와 Common Anode Type이 있다.
실험 장비에는 Common Cathode 방식이 장착되어 있음 High 값을 전달해 주었을 때 LED에 불이 들어오도록 구성함. +5V g 1 2 3 4 5 10 9 8 7 6 f c o m a b e d com c do t
7-Segment 핀 Common Cathode
7-Segment 회로
Common Anode 7-Segment 회로
4
Section 06
7-세그먼트 디코더의 설계
BCD-to-7segment 디코더의 진리표
7-Segment 4 bit BCD 7-Segment Decoder
10진수 D C B A a b c d e f g 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0 1 1 0 0 0 0 2 0 0 1 0 1 1 0 1 1 0 1 3 0 0 1 1 1 1 1 1 0 0 1 4 0 1 0 0 0 1 1 0 0 1 1 5 1 1 0 1 1 0 1 1 0 1 1 6 1 1 1 0 1 0 1 1 1 1 1 7 1 1 1 1 1 1 1 0 0 0 0 8 1 0 0 0 1 1 1 1 1 1 1 9 1 0 0 1 1 1 1 1 0 1 1
5
Section 06
7-세그먼트 디코더의 설계
프로젝트 생성
Project Navigator 실행 File -> New Project
6
Section 06
7-세그먼트 디코더의 설계
프로젝트 생성 프로젝트를 만들고 프로젝트를 실행할 폴더를 생성한다. HB_SEG_DECODER HDL 선택7
Section 06
7-세그먼트 디코더의 설계
프로젝트 생성
FPGA Chip Select
All Select Spartan3 Select XC3S200 Select P208 Select -4 Select Tool Select XST (VHDL/Verilog) Select ISim(VHDL/Veilog) Select VHDL Select
8
Section 06
7-세그먼트 디코더의 설계
프로젝트 생성
9
Section 06
7-세그먼트 디코더의 설계
로직설계
Project -> New Source Click VHDL Module Select
10
Section 06
7-세그먼트 디코더의 설계
로직설계
Input/Output Port입력 후 Next 클릭시 : 다음 화면에 입출력 포트 자동 선언됨
또는 아무것도 입력 않고 Next 클릭시 : 다음화면에서 포트선언 코드 직접 입력해야함
11
Section 06
7-세그먼트 디코더의 설계
로직설계
12
Section 06
7-세그먼트 디코더의 설계
합성(컴파일)
Check Syntax 더블클릭으로 문법오류검사 합성(Synthesize) 더블클릭으로 컴파일
13
Section 06
7-세그먼트 디코더의 설계
시뮬레이션
Project > New Source 선택 Simulation을 선택
14
Section 06
7-세그먼트 디코더의 설계
시뮬레이션
Select Source Type
VHDL Test Bench 선택
File name :
TB_HB_SEG_DECODER
15
Section 06
7-세그먼트 디코더의 설계
16
Section 06
7-세그먼트 디코더의 설계
시뮬레이션 시뮬레이션 조건에 맞도록 파일 수정 후 저장 기본으로 작성된 테스트벤치 파일 생성17
Section 06
7-세그먼트 디코더의 설계
시뮬레이션 ISE 시뮬레이션 프로그램인 Isim을 이용하여 시뮬레이션 진행18
Section 06
7-세그먼트 디코더의 설계
시뮬레이션
시뮬레이션 결과 확인
19
Section 06
7-세그먼트 디코더의 설계
핀 설정(핀 매핑 정보 입력) implementation 선택 User Constraint > Floorplan Area/IO/Logic ( PlanAhead ) ... RUN20
Section 06
7-세그먼트 디코더의 설계
핀 설정(핀 매핑 정보 입력) 포트 이름 핀 번호 하드웨어 설명 포트 이름 핀 번호 하드웨어 설명 BCD[3] 34 BUS_SW1 a 176 SEG_A BCD[2] 35 BUS_SW2 b 178 SEG_B BCD[1] 37 BUS_SW3 c 181 SEG_C BCD[0] 36 BUS_SW4 d 182 SEG_D e 184 SEG_E f 185 SEG_F g 187 SEG_G21
Section 06
7-세그먼트 디코더의 설계
핀 설정(핀 매핑 정보 입력) I/O Port 창의 각 Port에 대한 Site에 핀 설정 “P핀번호” 예) 36번 핀 = P36 저장 후 종료22
Section 06
7-세그먼트 디코더의 설계
Implement Design 핀 설정을 적용하기 위하여 Implement Design을 실행시켜 다시 컴파일 한다. (더블클릭도 동일한 효과)23
Section 06
7-세그먼트 디코더의 설계
*.bit파일 생성 및 장비 다운로드
Manage Configuration Project (iMPACT) 실행
Generate Programming File 을 실행하여 장비에 다운로드 시킬 수 있는 파일 생성.
24
Section 06
7-세그먼트 디코더의 설계
*.bit파일 생성 및 장비 다운로드
File > Initialize Chain 선택
(이때, 장비가 PC와 연결되고 켜져 있어야 함) JTAG 으로 연결된 디바이스 검색
iMPACT화면이 열린 후 Boundary Scan 선택
25
Section 06
7-세그먼트 디코더의 설계
*.bit파일 생성 및 장비 다운로드 FPGA에 프로그래밍할 파일 선택
Hb_seg_decoder.bit 파일을 선택.(진행중인 작업폴더인지 확인) Open button Click
26
Section 06
7-세그먼트 디코더의 설계
*.bit파일 생성 및 장비 다운로드 PROM에 프로그래밍할 파일 선택
PROM File을 생성하지 않았고, FPGA에만 다운로딩 하기 때문에 파일 선택을 하지 않는다.
27
Section 06
7-세그먼트 디코더의 설계
*.bit파일 생성 및 장비 다운로드 Programming 옵션 선택 Default 설정 OK Button Click28
Section 06
7-세그먼트 디코더의 설계
*.bit파일 생성 및 장비 다운로드 좌측의 FPGA 칩 모양에 마우스를 놓고 마우스 오른쪽 버튼을 눌러서 Program을 선택한다.29
Section 06
7-세그먼트 디코더의 설계
*.bit파일 생성 및 장비 다운로드 프로그램이 완료되었고 제대로 동작했다면 Program Succeeded가 나타난다. 장비에서 동작을 확인하라.30
Section 07
패리티 회로
패리티(parity) 데이터 전달시 잡음 등의 영향으로 데이터가 올바르게 전달될 수 없을 경우를 대비하기 위한 것으로, 데이터 오류를 검출하는 방법 4비트 패리티 생성기 짝수 패리티 경우31
Section 07
패리티 회로
5비트 패리티 검사기
32
Section 07
패리티 회로
4비트 짝수 패리티 생성기의 시뮬레이션
33
Section 07
패리티 회로
34