목차 일부
1. VHDL이란 무엇인가? ... 15
1.1. VHDL의 역사 ... 15
2. VHDL을 이용한 설계 과정 ... 17
3. VHDL 코드의 구성 ... 19
3.1. 엔티티 설계 ... 19
3.2. VHDL 설계의 엔티티 ... 19
4. VHDL의 설계 구조 ... 27
4.1. 설명문(Comments) ... 27
4...
더보기
목차 전체
1. VHDL이란 무엇인가? ... 15
1.1. VHDL의 역사 ... 15
2. VHDL을 이용한 설계 과정 ... 17
3. VHDL 코드의 구성 ... 19
3.1. 엔티티 설계 ... 19
3.2. VHDL 설계의 엔티티 ... 19
4. VHDL의 설계 구조 ... 27
4.1. 설명문(Comments) ... 27
4.2. 엔티티(Entity) ... 28
4 3. 아키텍처(Architecture) ... 31
4.4. 엔티티-아키텍처 조합구성(Configuration) ... 35
4.5. 패키지(Packages) 및 패키지 바디(Package body) ... 37
4.5.1. 함수(Function) 및 프로시저(Procedure) ... 40
5. VHDL을 사용하기 위한 기본 ... 47
5.1. VHDL의 기본 표현 요소 ... 47
5.1.1. 표현(Expression) ... 47
5.1.2. 피연산자(Operand) ... 48
5.2. 문(Statement) ... 49
5.2.1. 선언문(declaration statement) ... 49
5.2.2. 병행처리문(concurrent statement) ... 50
5.2.3. 순차처리문(sequential statement) ... 50
5.3. 데이터 객체(Data object) ... 50
5.3.1. 변수(variable)와 신호(signal) ... 51
5.3.2. 루프에서의 변수(variable)와 신호(signal)의 할당문 ... 61
6. VHDL의 언어문법 ... 71
6.1. 데이터형(Data type) ... 71
6.1.1. 열거형 데이터형(Enumeration data type) ... 71
6.1.2. 정수 데이터형(Integer data type) ... 72
6.1.3. 복합 데이터형(Composite data type) ... 73
6.1.4. 실수형(Floating point type) ... 84
6.1.5. 부울대수형(Boolean type) ... 85
6.1.6. bit 및 bit_vector 형 ... 86
6.1.7. std_ulogic 및 std_ulogic_vector 형 ... 86
6.1.8. std_logic 및 std_logic_vector 형 ... 86
6.1.9. IEEE 1076.3 unsigned와 signed 형 ... 87
6.2. 연산자(Operators) ... 88
6.2.1. 기타 연산자 ... 89
6.2.2. 산술 곱셈 연산자 ... 90
6.2.3. 산술 부호 연산자 ... 90
6.2.4. 가산 연산자 ... 90
6.2.5. 쉬프트 연산자 ... 91
6.2.6. 관계 연산자 ... 93
6.2.7. 논리 연산자 ... 93
6.3. 속성(Attributes) ... 95
7. 조합회로의 설계 ... 99
7.1. 논리/산술연산 모델링 ... 99
7.2. 논리 구조 제어 ... 102
7.3. 다중화기(Multiplexers) ... 105
7.4. 엔코더 ... 113
7.5. 인에이블 신호가 있는 3-6 2진 디코더 ... 117
7.6. 4비트 어드레스 디코더 ... 120
7.7. ALU(Arithmetic Logic Unit) ... 126
8. 동기 및 비동기 회로의 설계 ... 131
8.1. 래치회로의 모델링 ... 131
8.2. D형 플립플롭의 모델링 ... 137
8.3. 플립플롭과 플립플롭사이의 조합회로 ... 143
8.4. 카운터 ... 144
8.4.1. 동기 5비트 up/down 카운터와 동기 리셋 ... 145
8.4.2. 1/16 클럭 분배기와 비동기 리셋 ... 147
9. (제한 상태 머신) Finite State Machine ... 153
9.1. FSM 모델링(밀리머신) ... 155
9.2. FSM 모델링(무어머신) ... 164
10. Quartus 사용법 ... 171
10.1. QurtusⅡ 에서 VHDL로 설계하기 ... 171
10.1.1. 프로젝트 생성 과정 ... 171
10.1.2. 하드웨어 설계 및 시뮬레이션 과정 ... 177
10.1.3. 핀 할당 및 FPGA로의 이식 ... 186
11. 패리티 생성기 ... 189
11.1. 실험목적 ... 189
11.2. 설계를 위한 동작 및 포트구상 ... 189
11.3. VHDL 코드 ... 191
11.4. PIN 할당 ... 192
11.5. 시뮬레이션 파형 ... 193
11.6. 결과 보고서 ... 194
12. 7-세그먼트 디코더 ... 197
12.1. 실험목적 ... 197
12.2. 설계를 위한 동작 및 포트구상 ... 197
12.3. VHDL 코드 ... 200
12.4. PIN 할당 ... 203
12.5. 시뮬레이션 파형 ... 204
12.6. 결과 보고서 ... 205
13. 4bit 가산기 ... 207
13.1. 실험목적 ... 207
13.2. 설계를 위한 동작 및 포트구상 ... 207
13.3. VHDL 코드 ... 208
13.4. PIN 할당 ... 210
13.5. 시뮬레이션 파형 ... 211
13.6. 결과 보고서 ... 212
14. 4X1 다중화기 ... 215
14.1. 실험목적 ... 215
14.2. 설계를 위한 동작 및 포트구상 ... 215
14.3. VHDL 코드 ... 216
14.4. PIN 할당 ... 218
14.5. 시뮬레이션 파형 ... 218
14.6. 결과 보고서 ... 219
15. 1 X 4역다중화기 ... 221
15.1. 실험목적 ... 221
15.2. 설계를 위한 동작 및 포트구상 ... 221
15.3. VHDL 코드 ... 222
15.4. PIN 할당 ... 224
15.5. 시뮬레이션 파형 ... 225
15.6. 결과 보고서 ... 226
16. 12진 카운터 ... 229
16.1. 실험목적 ... 229
16.2. 설계를 위한 동작 및 포트구상 ... 229
16.3. VHDL 코드 ... 231
16.4. 시뮬레이션 파형 ... 233
16.5. 결과 보고서 ... 234
17. 1초 카운터 ... 237
17.1. 실험목적 ... 237
17.2. 설계를 위한 동작 및 포트구상 ... 237
17.3. VHDL 코드 ... 240
17.4. PIN 할당 ... 243
17.5. 시뮬레이션 파형 ... 244
17.6. 결과 보고서 ... 245
18. LED 순차 점멸기 ... 247
18.1. 실험목적 ... 247
18.2. 설계를 위한 동작 및 포트구상 ... 247
18.3. VHDL 코드 ... 248
18.4. PIN 할당 ... 251
18.5. 시뮬레이션 파형 ... 252
18.6. 결과 보고서 ... 253
19. 교통신호 제어기 ... 255
19.1. 실험목적 ... 255
19.2. 설계를 위한 동작 및 포트구상 ... 255
19.3. VHDL 코드 ... 256
19.4. PIN 할당 ... 260
19.5. 시뮬레이션 파형 ... 261
19.6. 결과 보고서 ... 262
부록(IDS-3100 Training Kit) ... 265
찾아보기 ... 277
1. VHDL이란 무엇인가? ... 15
1.1. VHDL의 역사 ... 15
2. VHDL을 이용한 설계 과정 ... 17
3. VHDL 코드의 구성 ... 19
3.1. 엔티티 설계 ... 19
3.2. VHDL 설계의 엔티티 ... 19
4. VHDL의 설계 구조 ... 27
4.1. 설명문(Comments) ... 27
4.2. 엔티티(Entity) ... 28
4 3. 아키텍처(Architecture) ... 31
4.4. 엔티티-아키텍처 조합구성(Configuration) ... 35
4.5. 패키지(Packages) 및 패키지 바디(Package body) ... 37
4.5.1. 함수(Function) 및 프로시저(Procedure) ... 40
5. VHDL을 사용하기 위한 기본 ... 47
5.1. VHDL의 기본 표현 요소 ... 47
5.1.1. 표현(Expression) ... 47
5.1.2. 피연산자(Operand) ... 48
5.2. 문(Statement) ... 49
5.2.1. 선언문(declaration statement) ... 49
5.2.2. 병행처리문(concurrent statement) ... 50
5.2.3. 순차처리문(sequential statement) ... 50
5.3. 데이터 객체(Data object) ... 50
5.3.1. 변수(variable)와 신호(signal) ... 51
5.3.2. 루프에서의 변수(variable)와 신호(signal)의 할당문 ... 61
6. VHDL의 언어문법 ... 71
6.1. 데이터형(Data type) ... 71
6.1.1. 열거형 데이터형(Enumeration data type) ... 71
6.1.2. 정수 데이터형(Integer data type) ... 72
6.1.3. 복합 데이터형(Composite data type) ... 73
6.1.4. 실수형(Floating point type) ... 84
6.1.5. 부울대수형(Boolean type) ... 85
6.1.6. bit 및 bit_vector 형 ... 86
6.1.7. std_ulogic 및 std_ulogic_vector 형 ... 86
6.1.8. std_logic 및 std_logic_vector 형 ... 86
6.1.9. IEEE 1076.3 unsigned와 signed 형 ... 87
6.2. 연산자(Operators) ... 88
6.2.1. 기타 연산자 ... 89
6.2.2. 산술 곱셈 연산자 ... 90
6.2.3. 산술 부호 연산자 ... 90
6.2.4. 가산 연산자 ... 90
6.2.5. 쉬프트 연산자 ... 91
6.2.6. 관계 연산자 ... 93
6.2.7. 논리 연산자 ... 93
6.3. 속성(Attributes) ... 95
7. 조합회로의 설계 ... 99
7.1. 논리/산술연산 모델링 ... 99
7.2. 논리 구조 제어 ... 102
7.3. 다중화기(Multiplexers) ... 105
7.4. 엔코더 ... 113
7.5. 인에이블 신호가 있는 3-6 2진 디코더 ... 117
7.6. 4비트 어드레스 디코더 ... 120
7.7. ALU(Arithmetic Logic Unit) ... 126
8. 동기 및 비동기 회로의 설계 ... 131
8.1. 래치회로의 모델링 ... 131
8.2. D형 플립플롭의 모델링 ... 137
8.3. 플립플롭과 플립플롭사이의 조합회로 ... 143
8.4. 카운터 ... 144
8.4.1. 동기 5비트 up/down 카운터와 동기 리셋 ... 145
8.4.2. 1/16 클럭 분배기와 비동기 리셋 ... 147
9. (제한 상태 머신) Finite State Machine ... 153
9.1. FSM 모델링(밀리머신) ... 155
9.2. FSM 모델링(무어머신) ... 164
10. Quartus 사용법 ... 171
10.1. QurtusⅡ 에서 VHDL로 설계하기 ... 171
10.1.1. 프로젝트 생성 과정 ... 171
10.1.2. 하드웨어 설계 및 시뮬레이션 과정 ... 177
10.1.3. 핀 할당 및 FPGA로의 이식 ... 186
11. 패리티 생성기 ... 189
11.1. 실험목적 ... 189
11.2. 설계를 위한 동작 및 포트구상 ... 189
11.3. VHDL 코드 ... 191
11.4. PIN 할당 ... 192
11.5. 시뮬레이션 파형 ... 193
11.6. 결과 보고서 ... 194
12. 7-세그먼트 디코더 ... 197
12.1. 실험목적 ... 197
12.2. 설계를 위한 동작 및 포트구상 ... 197
12.3. VHDL 코드 ... 200
12.4. PIN 할당 ... 203
12.5. 시뮬레이션 파형 ... 204
12.6. 결과 보고서 ... 205
13. 4bit 가산기 ... 207
13.1. 실험목적 ... 207
13.2. 설계를 위한 동작 및 포트구상 ... 207
13.3. VHDL 코드 ... 208
13.4. PIN 할당 ... 210
13.5. 시뮬레이션 파형 ... 211
13.6. 결과 보고서 ... 212
14. 4X1 다중화기 ... 215
14.1. 실험목적 ... 215
14.2. 설계를 위한 동작 및 포트구상 ... 215
14.3. VHDL 코드 ... 216
14.4. PIN 할당 ... 218
14.5. 시뮬레이션 파형 ... 218
14.6. 결과 보고서 ... 219
15. 1 X 4역다중화기 ... 221
15.1. 실험목적 ... 221
15.2. 설계를 위한 동작 및 포트구상 ... 221
15.3. VHDL 코드 ... 222
15.4. PIN 할당 ... 224
15.5. 시뮬레이션 파형 ... 225
15.6. 결과 보고서 ... 226
16. 12진 카운터 ... 229
16.1. 실험목적 ... 229
16.2. 설계를 위한 동작 및 포트구상 ... 229
16.3. VHDL 코드 ... 231
16.4. 시뮬레이션 파형 ... 233
16.5. 결과 보고서 ... 234
17. 1초 카운터 ... 237
17.1. 실험목적 ... 237
17.2. 설계를 위한 동작 및 포트구상 ... 237
17.3. VHDL 코드 ... 240
17.4. PIN 할당 ... 243
17.5. 시뮬레이션 파형 ... 244
17.6. 결과 보고서 ... 245
18. LED 순차 점멸기 ... 247
18.1. 실험목적 ... 247
18.2. 설계를 위한 동작 및 포트구상 ... 247
18.3. VHDL 코드 ... 248
18.4. PIN 할당 ... 251
18.5. 시뮬레이션 파형 ... 252
18.6. 결과 보고서 ... 253
19. 교통신호 제어기 ... 255
19.1. 실험목적 ... 255
19.2. 설계를 위한 동작 및 포트구상 ... 255
19.3. VHDL 코드 ... 256
19.4. PIN 할당 ... 260
19.5. 시뮬레이션 파형 ... 261
19.6. 결과 보고서 ... 262
부록(IDS-3100 Training Kit) ... 265
찾아보기 ... 277
더보기 닫기