총 27개
-
컴퓨터구조 CPU설계_Quartus 설계_20242025.01.161. 컴퓨터 명령어 컴퓨터 명령어는 각각 16진수 코드로 되어있는 마이크로 연산이다. 명령어를 Instruction Register (IR)에 넣어 해석을 진행해 필요한 장치에서 명령어를 실행한다. 메모리 참조 명령어는 주소가 필요하다. 첫째 자리의 0~E까지를 보고 메모리 참조 명령어임을 확인하고 뒤의 XXX에 주소를 넣는다. 레지스터를 건드리는 명령어는 정해져 있는 레지스터 명령어 16진수 값을 가져와서 처리한다. 2. 기본적인 제어장치의 구성 명령어가 IR에 들어가면 하위 12 bit( IR 0~11 )는 주소 bit로 할당된...2025.01.16
-
마이크로프로세서응용 ATmega128 USART 보고서2025.01.241. USART(Universal Synchronous and Asynchronous Receiver and Transmitter) USART는 동기 및 비동기 전송 모드에서 전이중 통신이 가능하고, 멀티 프로세서 통신 모드로 동작할 수 있으며, 높은 저밀도의 브레이트 발생기(Baud Rate Generator)을 내장하고 있습니다. USART는 전 이중 동작, 비동기 방식과 동기 방식 통신모드 지원, 마스터와 슬레이브 클럭 동기 동작, 고해상도 Baud Rate 발생기 내장, 다양한 데이터 비트와 스톱 비트 제공, 패리티 발생과 ...2025.01.24
-
컴퓨터구조_컴퓨터 내부에서 사용하는 명령어 사이클의 4가지 단계에 대해서 비교 설명하시오.2025.01.291. 명령어 인출 단계 (Fetch) 명령어 사이클의 첫 번째 단계는 명령어 인출(fetch) 단계이다. 이 단계는 CPU가 메모리에서 실행할 명령어를 불러오는 과정이다. 현대 컴퓨터에서 CPU는 프로그램 카운터(PC)를 통해 다음에 실행할 명령어의 위치를 추적한다. 프로그램 카운터는 메모리 주소를 가리키며, 이를 바탕으로 명령어를 메모리에서 인출하여 명령어 레지스터(IR)에 저장한다. 이때 CPU는 주소 버스를 통해 명령어가 저장된 메모리 주소를 지정하고, 데이터 버스를 통해 해당 명령어를 인출하여 명령어 레지스터로 전달한다. 2...2025.01.29
-
CPU의 논리회로 구성에서 연산장치와 제어장치에 대해 설명하세요2025.05.141. 연산장치 ALU CPU(Central Processing Unit)는 명령어를 실행하고 계산을 수행하는 컴퓨터 시스템의 핵심 구성 요소이다. CPU 내에서 산술 논리 장치(ALU)는 산술 및 논리 연산을 수행하는 데 중요한 역할을 한다. ALU는 이진 데이터에 대한 수학적 계산과 논리적 비교를 수행하는 디지털 회로이다. 주요 기능은 산술 연산, 논리 연산, 데이터 비교를 포함한다. ALU는 가산기, 멀티플렉서, 논리 게이트 및 레지스터와 같은 다양한 구성 요소로 구성되며, CU와 밀접하게 상호 작용한다. 2. 제어 장치(CU)...2025.05.14
-
컴퓨터 구조 계산기_quartus 설계_20242025.01.161. 컴퓨터 구조 이 과제에서는 간단한 구조의 계산기를 설계하는 것을 목표로 합니다. 기존에는 Schematic editor 설계 기법을 사용했지만, 이번에는 HDL(hardware description language) 기법을 이용하여 알고리즘이나 기능 레벨에서의 설계를 진행하고 gate 레벨의 로직 설계를 수행합니다. ROM이나 Hard-Wired Logic과 같은 개념을 이해하며 설계를 진행합니다. 2. 계산기 설계 계산기를 구현하기 위해 필요한 내부 레지스터(A, B, IR, C)와 외부 입력(SA, SB, SIR, STAR...2025.01.16
-
프로그래밍 언어론: 기계어 명령어 수행 과정 및 고급 언어 구현 방법2025.01.021. 기계어 명령어 수행 과정 컴퓨터의 CPU가 메모리에 적재된 프로그램의 기계어 명령어를 수행하는 과정은 다음과 같습니다. ① 명령어 인출: CPU는 Program Counter(PC) 레지스터에 저장된 주소를 참조하여 메모리에서 해당 기계어 명령어를 가져옵니다. ② 명령어 해독: CPU의 명령어 디코더가 인출된 기계어 명령어를 해석하여 어떤 연산을 해야 하는지, 어떤 데이터나 레지스터가 필요한지 파악합니다. ③ 데이터 인출: 명령어 실행에 필요한 데이터를 메모리나 CPU 내부 레지스터에서 가져옵니다. ④ 명령어 실행: CPU는 ...2025.01.02
-
디지털시스템설계실습_HW_WEEK82025.05.091. 16x8bit Register file 이번 과제에서는 16x8bit Register file을 구현했습니다. 이 구조는 4bit의 address, 8bit의 data 크기, 16개의 저장공간을 가지고 있습니다. wr_enable이 활성화되면 clk 신호에 맞춰 din 값이 wr_addr에 입력되어 저장됩니다. 이를 통해 데이터가 저장되는 과정을 이해할 수 있었습니다. 2. Shift Register Shift Register 모듈을 구현하면서 clk이 positive edge일 때 qout이 shift되는 과정을 통해 동작 ...2025.05.09
-
컴퓨터 내부에서 사용하는 명령어 사이클의 4가지 단계에 대해서 비교 설명하시오2025.01.251. 명령어 인출 (Fetch) 명령어 인출 단계는 프로그램 카운터(PC)에 저장된 주소를 사용하여 메모리에서 명령어를 가져오는 단계이다. 이 단계에서는 CPU가 명령어를 실행하기 위해 필요한 첫 번째 단계를 수행한다. 메모리에서 명령어를 가져와 CPU의 명령어 레지스터에 저장한다. 통계적으로, 현대 CPU는 매초 수십억 개의 명령어를 인출할 수 있다. 프로그램 카운터와 메모리 계층 구조가 명령어 인출 속도에 중요한 역할을 한다. 2. 명령어 해독 (Decode) 명령어 해독 단계는 인출된 명령어를 해석하여 어떤 작업을 수행해야 하...2025.01.25
-
시스템 프로그램 어택랩(attack lab) 과제 보고서2025.05.081. Phase_1 Phase_1에서는 getbuf 함수에 오버플로우가 일어날 값을 입력하고 touch1의 주소값을 입력하여 touch1이 실행되게 한다. asm.txt 파일을 확인하여 getbuf와 touch1의 어셈블리 코드를 찾아 필요한 값을 입력한다. 2. Phase_2 Phase_2에서는 touch2 함수를 실행하기 위해 rdi 레지스터에 cookie 값을 넣어주고 touch2 함수로 이동하는 코드를 삽입한다. 이를 위해 gdb를 실행하여 getbuf 직전의 rdi 값을 확인하고, buffer.s 파일을 작성하여 필요한 값...2025.05.08
-
인하대 VLSI 설계 6주차 Flip-Flop2025.05.031. Latch Latch는 하나 이상의 비트들을 저장하기 위한 디지털 논리회로로, 데이터 입력 In, 클럭 입력 CLK, 출력 Q로 이루어진다. Latch의 종류에는 Negative Latch와 Positive Latch가 있으며, Negative Edge에서는 clk = 1일 때 Q가 기존의 값을 유지하고 clk = 0일 때 In의 값이 출력 Q로 나오며, Positive Edge에서는 clk = 1일 때 In의 값이 출력 Q로 나오고 clk = 0일 때 Q가 기존의 값을 유지한다. 2. Flip-Flop Flip-Flop은 2...2025.05.03
