BCD Adder
0~9까지의 수를 더해 결과는 0~9로 표시된다
4bit binary Adder
0~15까지의 수를 덧셈 결과는 0~15
10넘을시 0110 더해주는 거 참고
binary multiplier
and gate를 이용해 4-bit adder 사용해서 만듬
Magnitude comparator
두 수의 크기를 비교하는 회로 각 자리 수 비교를 통해 확인 가능.
Decoders
개의 minterms 출력 생성 n개의 입력
2 to 4 line decoder with Enable input(nand gate)
E에 의해 통제 E 가 0 일 때, 출력 Decoders에 보수
4x16 decoder를 3x8 decoder 두 개로 enable inputs을 통해 만들 수 있음.
decoder or gates를 통해 설계 할 줄 알아야함. table -> 회로
Encoders
2^n개의 입력값으로 n개의 출력값을 발생. 디코더에 반대
Mux(Multiplexers)
1. 두 개씩 자름, 설계할 줄 알아야함
Three-state gates 가 무엇인가?
두 상태는 보통의 게이트에서 사용하는 논리 1과 0 신호이고, 세 번째 상태는 high impedance 상태이다.
high impedance 상태는 출력이 끊어진 것처럼 보이고, 논리적으로 의미가 없고, 출력에 연결된 회로는 게이트의 입
력에 의한 영향을 받지 않음.
HDL의 3가지 모델명과 특징
Gate level modeling기본논리회로들을 인스턴스화하고 게이트들의 연결을 명시하여 목표 기능을 수행하는 회로 구성.
Dataflow modeling 부울 함수로 표현되는 연산을 HDL 연산자와 assignment 문을 이용하여 설계
Behavioral modeling HDL언어의 고유한 문법을 이용하여 높은 수준으로 회로를 추상화하여 설계.(always)
가장 간단한 4bit adder 설계 HDL
Dataflow modeling
{}concatenation(접합) J = 01, K = 10 {J,K} = 0110
? : conditional ex) out = x ? A : B 는 x가 진실이면 out은 A 아니면 B
Synchronous sequential logic 동기식 순차 논리
Synchronous Asynchronous차이
Synchronous은 이산 시점에서 회로의 입력 신호에 따라 동작을 정의하는 시스템.
Asynchronous은 입력신호와 그들이 변하는 시간, 순서에 따라 달라진다.
clock 주파수가 높다 clock 주기가 짧다 > 간격이 좁다.
SR latches NOR값과 NAND값은 입력값들의 보수
D latch D=1 Q=1 (set) D=0 Q=0 (reset)
Flip-flops 1개가 1bit 저장
Latch와의 차이
Latch : 클럭 펄스가 논리 1레벨에 머물러 있는 동안 입력이 변함에 따라 출력이 변함
ff : 클럭 천이가 발생할 때만 출력이 변함(상향 에지, 하향 에지)
Master-slave D ff, (하향 에지 일 때 출력변화)
상향 에지 D ff
Setup time : 클럭 천이가 발생하기전에 입력 D가 일정한 값으로 유지되어야 하는 최소 시간
Hold time : 클럭 천이 이후에 D입력이 변하지 않아야 하는 최소 시간
Jk ff, T ff
비동기 리셋을 가진 D ff : reset = 0 일 때, 출력을 0으로 만듬.
순차회로 예시 몇가지 회로도 > 방정식 > 상태표(state table) > 상태도(state diagram)
mealt models : 출력이 입력과 현재 상태 모두에 의존하는 함수.
moore models : 출력이 현재 상태에만 의존하는 함수.
HDL for sequential circuits
두 종류의 동작
Initial : 단일 구문으로 한번만 실행됌.
always : 시뮬레이션이 끝날때까지 반복해서 실행한다.
clock 주파수 구하고 몇주기인지 구하는 문제 HDL 설계도 할줄 알아야함. 보통 주기는 ns
Dff, Tff, JKff HDL 설계
상태 축소 State reduction
m ff > 2^m개의 state를 나타낼 수 있음 state 축소를 통해 ff 개수를 줄일 수 있다.
input과 output을 통해 동치인 값을 찾아 바꾸어 주면 축소됌 다만 2^n개로 줄여야 의미가 있음
그래야 ff 수를 줄일 수 있다.
design procedure 설계하는 법
1. 상태도 2. 상태의 개수 최소 3. 2진 값 할당 4. 2진 코드 tabel 작성 5. ff 종류 선택
6. ff 입력식 출력식 유도 7. 논리도 그림
00, 01, 10, 11 detector 그릴줄 알아야 한다.
6.
Registers : 플립플롭당 한 비트의 정보를 저장할 수 있음
Counters : 여러 개의 2진 상태들이 미리 정해진 순서대로 진행되는 레지스터. 플립플롭으로 정보를 저장하되 카운팅
회로가 추가됌.
4bit register. clear = 0이다. reset 발동 > 값이 초기화됌
Register with Paralled Load
Load = 1 이면 입력값이 전송, 0이면 플립플롭의 출력이 다시 입력으로 들어감.
Shift registers
Serial Transfer
저장된 정보의 손실을 막기 위해, 레지스터 A의 직렬 출력은 다시 자신의
직렬 입력에 연결하여 정보가 순환되도록 한다.
Serial Addition :
여러 클럭 사이클을 소모하기 때문에 더 느리지만, 하드웨어 부품을 더 적게 필요로 한다.(ff수가 적다)
parrlled adder :
더 빠른 동작을 수행하지만
더 많은 ff 필요로 함
serial adder JK ff, T ff 설계 가능해야함. 두 번 째 형태로도
Universal shift Register 외우자그냥 00 이면 변화없은 01 이면 오른쪽으로 쉬프트 10이면 왼쪽으로
쉬프트 11이면 입력신호가 paralled load(병렬로드)로 레지스터가 동작함.
Ripple counters 하향 에지일 때 다음 상위 비트로 영향을 줌 그리고 설명.
카운트 펄스 입력마다 1씩 증가. 하위 비트가 0에서 1로바뀔때마다 바로 상위 비트를 보수화 시킨다.
synchronous counters 하위의 모든비트가 1이면 다음 비트 보수화진행, 최하위 비트는 매펄스 보수화
Binary counter with Parallel Load로 BCD Couter 그릴줄 알아야함.
using the load input
using the clear input
1001이 되면 Load를 1로 만들어
NAND 게이트가 카운트 1010을 검출하는 순간에
활성화 시킴으로써 카운트가 중지
비동기적으로 clear된다. 레지스터가 즉시 0이된다.
되고 내 개의 입력 0이 로드된다.
스파이크가 발생한다.
Ring counter
디코더를 통한 ring counter 설계
Johnson Counter
k-bit 링 카운터, 2k개의 타이밍 신호 출력을 만듬.
7. Memory and Programmable Logic
RAM(random access memory) : read(메모리 읽기) and write(메모리 저장) operation
ROM(read only memory) : only read operation
RAM 블록다이어그램 그릴줄 알아야함.
2^k word 와 n의 word size로 이루어져있음
Random access Memory : 읽고 쓰는 시간이 word 별로 동일하다.
Sequential access Memory : 읽고 쓰는 시간이 다양하다.
Volatile : 전원이 공급되지 않으면 저장된 정보를 읽게됌
Nonvolatile : 전원이 없어도 정보가 저장된다.
Static RAM : 전기가 공급되는 동안에 저장된 정보가 유지. 읽고 쓰기 빠름 하지만 비싸다
Dynamic RAM : 전력소모가 적지만 주기적으로 충전을 해줘야한다.
2^k X n Ram 그릴줄 알아야함. 읽기/쓰기 0이면 쓰기 1이면 읽기
Coincident Decoding(동시 디코딩)
장점 : and 게이트 수가 훨씬 적어짐, 단점 :
Address Multiplexing
장점 : pin 개수를 줄일 수 있음
단점 : 레지스터 2개를 필요로 하며 2번 넣어서 속도가 느려진다.
haming code 패리티와의 차이
패리티 검출 결과는 에러가 발생한 것만 알 수 있지만 해밍코드는 변경된 비트가 하나라면 에러가 어디 비트에서 발생
했는지 알 수 있고 보수를 취함으로써 수정가능.
하는법 P1, P2, P3, P4 table 이용해서 함 C는 P값을 포함 xor해서 C의 값이 오류난 비트자리
ROM
k 입력 2^k X n ROM n개의 출력 2^k개의 and gate와 n개의 or gate
ROM : 맞춤형 마스크를 만들기 위해 비쌈
PROM(programmable) : 공장에서 만들 때 전부 1로 연결되어있음, 경제적임. 한번만 프로그래밍됌
EPROM(Erasable) : UV 빛을 통해 방전시킴. 삭제 후 초기상태가 되어 다시 프로그래밍 가능
EEPROM(Electrically) : 전기적인 신호를 통해 삭제한다. 다시 프로그래밍
PLD(logic device)
PLOM : 읽기 전용 메모리로 or array 만 프로그램 가능(decoder and array)
PAL(array logic) : and array만 프로그램 가능
PLA(logic array) : and array or array 양쪽 다 프로그램 가능
SPLD(sequential) : 그림 그릴줄 알아야함 and or array를 추가한 플립플랍을 포함한다.
CPLD(Complex) : 단일 집적회로에 있는 개개의 PLD들의 집합
FPGA(Field P Gate Array) : 사용자가 프로그래밍 가능한 VLSI회로, 룩업표, 멀티플렉서, 게이트, 플립플랍으로 구성
8. RTL(register transfer level)
Blocking 문과 nonblocking문의 차이
블락킹은 차례대로 실행되는 것, 논블락킹은 순차 없이 실행됌
forever 문 repeat 문 해석 가능 HDL
clock
RTL in HDL 그릴줄 알고 설명
moore machine
mealy machine
ASM(Algorithmic state Machine) 설계 할줄 알아야함.
Searial adder ASM으로 설계 할줄 알아야 함. 설명
비트 단위 E(엑사) P(페타) T G M k b m μ n p f(펨토) a(아토)
1. 3나노공정은 트랜지스터 크기를 3nm로 극소화해 더 높은 성능과 낮은 전력을 구현하는 최첨단 반도체 제조 기술
2. HDL(Hardware Description Language) 회로를 기술하는데 사용하는 컴퓨터 언어. 회로의 동작을 기술, 시뮬레이
3. HBM(High Bandwidth Memory)은 3D 스택킹 기술을 적용하여 여러 개의 DRAM 칩을 수직으로 적층하고, 이를
통해 전기 신호의 경로를 짧게 하여 고속 데이터 전송이 가능한 차세대 메모리 기술
4, SOC 원어 개념 System on a Chip 완전 구동이 가능한 제품과 시스템이 한 개의 칩에 들어있음
5. FPGA 원어 개념 유저가 프로그래밍 가능한 회로가 포함된 반도체 소자
6. Exynos 모바일 AP 설명. 모바일 기기에 최적화된 프로세서 스마트폰의 두뇌 역할
7. NPU 인간의 뇌 신경세포와 유사한 작업을 진행하는 신경망 처리장치. AI칩이라고도 불림
8. 파운드리, 펩리스 (설계도를 넘겨받아 반도체 위탁 생산), (직접 생산하지않고 반도체 설계를 전문적)
9. 1,2,3차 4차 산업혁명 간단히 1차 영국 중심 증기 기관 2차 전기와 대량생산 3차 컴퓨터와 it 자동화
4차 인공지능과 같은 지능형 기술
10. 치킨게임 유래, 예시
가상적인 사고 게임, 자동차를 타고 핸들을 피하면 겁쟁이가 되어 게임에서 짐. 안 피하면 둘다 죽음
반도체 시장 점유율을 위해 가격 인하 경쟁. 안하면 도태되어 지고 하면 둘다 손해봄