목차
제1편 VHDL이란?
   제1장 ASIC 설계 기초 ... 2
      1.1 ASIC의 개요 ... 2
      1.2 ASIC 기술의 분류 ... 2
      1.3 PLD ... 5
        1.3.1 CPLD란? ... 5
        1.3.2 FPGA란? ... 6
   제2장 VHDL의 일반사항 ... 8
      2.1 VHDL 설계 ... 9
      2.2 VHDL의 합성과 시뮬레이션 ... 12
      2.3 VHDL의 특징 ... 12
        2.3.1 VHDL의 장점 ... 12
        2.3.2 VHDL의 문제점 ... 15
   제3장 VHDL 기초 ... 16
      3.1 VHDL의 식별어 ... 16
      3.2 VHDL의 예약어 ... 18
      3.3 VHDL에서 사용하는 라이브러리 및 패키지 ... 19
      3.4 VHDL의 자료형 ... 20
      3.5 기본 연산자 ... 26
        3.5.1 신호 대입문 ... 26
        3.5.2 논리 연산자 ... 27
   제4장 VHDL의 문장 구성 ... 29
      4.1 VHDL 설계 구조 ... 29
      4.2 Entity 선언 ... 31
        4.2.1 Generic ... 31
        4.2.2 Port ... 32
      4.3 Archtecture ... 34
   제5장 객체와 연산자 ... 36
      5.1 데이터 객체형 ... 36
        5.1.1 Signal ... 36
        5.1.2 변수와 상수 ... 37
        5.1.3 Signal과 Variable의 비교 ... 38
      5.2 연산자 ... 40
        5.2.1 산술연산자 ... 41
        5.2.2 관계 연산자 ... 44
        5.2.3 시프트 및 로테이트 연산자 ... 45
      5.3 연산자 예 ... 46
   제6장 병행 및 순차 처리문 ... 49
      6.1 병행 처리문 ... 50
        6.1.1 선택적 병행 처리문 ... 50
        6.1.2 조건적 병행 처리문 ... 50
        6.1.3 "with∼select∼when"문과 "when∼else"문의 비교 ... 51
      6.2 순차 처리문 ... 51
        6.2.1 process문 ... 52
        6.2.2 "if∼then∼else"문 ... 56
        6.2.3 "case"문 ... 65
        6.2.4 반복제어문 ... 68
        6.2.5 신호의 대입문 ... 79
        6.2.6 대기문(Wait문) ... 80
        6.2.7 구조적 표현(Structural Description) ... 81
   제7장 Package와 부프로그램 ... 95
      7.1 Library와 Package ... 95
      7.2 Package ... 97
      7.3 부프로그램(Procedure와 Function) ... 98
제2편 VHDL의 활용
   제8장 VHDL을 이용한 디지털논리회로 설계 ... 104
      8.1 실습장치(MDA-ASIC)설명 ... 104
      8.2 Architecture Body의 표현방식 ... 114
      8.3 기본게이트 ... 117
        8.3.1 2-입력 기본게이트 설계 ... 117
        8.3.2 3-입력 기본게이트 설계 ... 124
        8.3.3 3-스테이트 버퍼 설계 Ⅰ ... 131
        8.3.4 3-스테이트 버퍼 설계 Ⅱ("resolved"형 이용) ... 136
      8.4 조합논리회로 ... 140
        8.4.1 반·가산기 설계 ... 140
        8.4.2 전·가산기 설계 ... 144
        8.4.3 BCD-3초과 코드 변환기 설계 ... 153
        8.4.4 4비트 덧셈기 설계 ... 158
        8.4.5 크기 비교기 설계 ... 167
        8.4.6 4비트 비교기 설계 ... 174
        8.4.7 디코더 설계 ... 180
        8.4.8 인코더 설계 ... 189
        8.4.9 데이터 셀렉터 설계 ... 197
        8.4.10 패리티 발생기 및 검사기 설계 ... 203
   제9장 순차 논리회로 ... 212
      9.1 플립플롭의 이론적 배경 ... 212
      9.2 VHDL에서 플립플롭 설계방법 ... 215
      9.3 플립플롭 설계 ... 216
        9.3.1 기본적인 플립플롭 설계 ... 216
        9.3.2 플립플롭 설계 ... 221
        9.3.3 동기/비동기식 리셋 기능 D 플립플롭 설계 ... 227
        9.3.4 레벨에서 동작하는 D 래치 설계 ... 234
      9.4 카운터 ... 239
        9.4.1 리셋 기능이 있는 카운터설계 ... 240
        9.4.2 로드 기능이 있는 카운터 설계 ... 248
        9.4.3 리플 카운터 설계 ... 253
      9.5 레지스터 ... 259
        9.5.1 레지스터 파일 설계 ... 259
        9.5.2 시프트 레지스터 설계 ... 264
        9.5.3 로드 가능한 양방향 시프트 레지스터 ... 272
      9.6 서브프로그램 연습 ... 278
        9.6.1 ALU 설계 ... 278
        9.6.2 2의 보수 함수 설계 ... 283
        9.6.3 그레이·코드 카운터 설계 ... 289
        9.6.4 배럴·시프터 설계 ... 294
   제10장 응용 ... 301
      10.1 스테이트 머신 ... 301
      10.2 상태도, 상태표란? ... 302
      10.3 스테이트 머신 설계 연습 ... 309
        10.3.1 비동기 클리어가 있는 4비트 레지스터 설계 ... 309
        10.3.2 4비트 시프트 레지스터 설계 ... 312
        10.3.3 교통 신호등 설계 ... 316
      10.4 시계 설계 ... 324
      10.5 스텝 모터 제어 ... 331
        10.5.1 스텝 모터 동작 방법 ... 331
        10.5.2 스텝 모터의 사양 ... 333
        10.5.3 스텝 모터 드라이버 ... 333
        10.5.4 1상 여자로 스텝 모터 제어 ... 334
        10.5.5 1상, 1-2상 여자로 스텝 모터 제어 ... 342
      10.6 D/A 컨버터 설계 ... 351
        10.6.1 R-2R 래터의 D/A 컨버터 ... 351
        10.6.2 D/A 컨버터 인터페이스 ... 352
        10.6.3 D/A 컨버터 설계 ... 353
      10.7 A/D 컨버터 설계 ... 358
        10.7.1 축차 비교형 A/D 컨버터 ... 358
        10.7.2 축차 비교형 A/D 컨버터 인터페이스 ... 359
        10.7.3 A/D 컨버터 설계 ... 360
      10.8 UART 설계 ... 364
        10.8.1 UART 기능 ... 364
        10.8.2 UART 인터페이스 ... 367
        10.8.3 데이터 통신용 IC 설계 ... 368
부록 1. WebPACK ISE Project Navigator 사용법 ... 385
부록 2. ALTERA MAX+plus 사용법 ... 408
부록 3. Xilinx Spartan-Ⅱ 2.5V Family ... 428
부록 4. ALTERA 디바이스 ... 474
닫기