과목명 | 과목설명 |
---|---|
디지털논리회로1 Digital Logic Circuits1 |
레지스터나 메모리, 카운터, 제어논리 등에서 사용되는 플립플롭에 대해 설명하고, 카운트를 가능하도록 하는 각종의 카운터를 플립플롭을 이용하여 구성하는 방법과 데이터 전송과 저장에서 사용되는 시프트 레지스터, 많은 데이터를 저장할 수 있는 메모리, 두 개의 디지털 시스템 사이에 데이터를 저장하기 위한 인터페이스, 각종의 2진 산술연산과 마이크로 프로세서, 컴퓨터의 기본구성 회로에 대한 이해를 통해 컴퓨터 동작의 기본을 이해하며 이를 응용하여 각종 디지털 회로를 구현할 수 있는 기초지식을 쌓는 것을 그 목적으로 한다. |
회로이론 Electric Circuit Theory |
대부분의 공학 시스템은 하나의 구성요소로서 전기회로를 사용한다. 이들 회로들은 그 시스템의 동작과 사람 또는 시스템과의 상호작용에 있어서 필수적이다. 필터, 전력, 전동기, 전자공학 또는 제어 이론에 대하여 배우기 위해서는 먼저 회로이론에 관한 것을 알고 있어야 한다. 회로의 기초개념, 파형, 회로방정식, 회로의 응답 및 정리, 가변회로 및 공진회로의 해석, 결합회로, 비정현파와 푸리에 급수 및 라플라스 변환, 다상회로에 관한 내용을 다룬다. |
객체지향프로그래밍설계 Object Oriented Programming |
C++와 JAVA 등의 객체 지향 언어를 배우고 이를 통하여 객체 지향 개념(클래스, 인스턴스, 객체, 상속, 다형성, Encapsulation 등)을 익힌다. 고급프로그래밍 실습과목에서 작성하는 프로그램을 완성하기 위해 필수적인 이론을 배운다. |
컴퓨터공학기초실험2 Basic Computer Engineering Lab2 |
반도체 소자인 다이오드의 특성을 확인하고 트랜지스터, 증폭기 OP-AMP의 회로동작과 특성을 이해하고 그에 대한 실험을 계획 수립할 수있는 능력을 배양한다. 또 주어진 자료를 바탕으로 회로를 설계하여 max + plus라는 시뮬레이션 툴을 이용하여 시뮬레이션하고 FPGA KIT에 다운로드하여 설계한 회로가 실제 반도체 칩 상에서 어떻게 동작되는지 이해하고 분석할 수 있는 능력을 배양한다. 본 교과목을 이수함으로써 하드웨어적인 동작을 이해하고 직접 설계한 회로를 시뮬레이션 할 수 있는 능력을 갖추게 되어 대학원 및 산업 현장에서 발생하는 문제들을 보다 적극적으로 해결할 수 있는 능력을 키워주는 과목이다. |
디지털논리회로2 Digital Logic Circuits2 |
디지털 논리소자에 대한 지식과 조합회로설계능력을 바탕으로 플리플롭과 계수기 등의 순차논리회로를 소개한다. 또한 동기식과 비동기식 순차회로의 해석과 설계방법을 다루며, 조합논리회로 및 순차논리회로의 해석과 회로의 간소화에 의한 최적설계에 관하여 강의한다. 종합적인 논리회로에 대한 이해를 통해 다양한 응용의 디지털 시스템에 대한 설계능력을 배양한다. |
어셈블리프로그램설계및실습 Assembly Language Programming |
본 과목은 High Level 프로그래밍으로 다루기 힘든 기계 종속적인 제어를 통해 PC를 보다 폭넓게 이해하고 활용하기 위한 과목이다. 현재 대부분의 PC의 CPU로 이용되고 있는 Intel 계열 마이크로프로세서의 구조와 어셈블리 언어를 이용한 프로그래밍을 학습하면서, 컴퓨터의 내부 구조와 동작원리, 데이터의 표현방법 및 처리방법 등을 학습하고, 하드웨어와 소프트웨어의 영역을 공유하는 관련 분야로의 응용력을 향상시킨다. |
전자회로 Electronic Circuit |
우선 반도체 물질의 특성에 대해서 소개하고 반도체 소자(다이오드, 트랜지스터)의 구조 및 동작에 관하여 설명한다. 또한, 비선형 반도체 소자와 선형 RLC 소자들이 결합된 아날로그/디지털 전자회로의 분석 및 설계 방법에 대해서 강의한다. 비선형 소자를 포함한 아날로그 전자회로의 선형 동작 조건을 설계하는 방법과 설정된 동작조건에서 각종 선형 증폭기를 설계하는 내용을 다루며, 디지털 논리 회로의 설계방법과 동작 특성에 대해서 알아본다. |
데이터구조설계 Data Structures Design |
본 과목은 고급 프로그래밍의 기본이 되는 데이터 구조의 정의 및 개념을 숙지하고 다양한 데이터 구조의 종류를 공부함으로써 실제적인 프로그래밍 기법들을 익힌다. 익힌 여러 데이터 구조들을 실제적으로 설계 및 구현함으로써 응용 및 설계 능력을 배양하며 설계한 데이터 구조를 복잡도 분석 기술을 이용하여 분석함으로써 그 성능을 측정하고 비교한다. |
컴퓨터구조실험 Computer Architecture Lab |
컴퓨터 구조과목과 연계하여 컴퓨터에서의 data의 이동 방식 및 기억 형태, instruction Set Architecture의 구성, 정수 연산, 논리적 연산 처리, 분기 등을 강의하고 이를 하드웨어 설계언어인 verilog를 이용하여 실험함으로써 구체적인 컴퓨터 데이터 패스와 컨트롤 로직을 설계할 수 있는 능력을 배양한다. |
시스템프로그래밍실습 System Programming Lab |
유닉스/리눅스 기반의 API를 이용한 고급 프로그래밍 기법을 습득한다. 파일과 디렉토리, 파일 입출력, 표준 입출력 라이브러리, 소켓 프로그래밍, 쓰레드 등의 사용을 통해 유닉스/리눅스의 내부 구조 및 POSIX 기반의 프로그래밍 기법을 배운다. |