1 8 장 대형 순차회로 문제의 해법 1) 시프트 레지스터 2) 카운터 3)ASM 도를 이용한 설계 4)One Hot encoding 5) 복잡한 예제.

Slides:



Advertisements
Similar presentations
신선초등학교 2 학년 4 반 김 우혁. 을왕리해수욕장은 인천광역시 중구 을왕동에 위치하였고, 늘 목 또는 얼항으로도 불리며 1986 년 국민 관광지로 지정되 었다. 백사장 길이는 약 700m, 평균 수심은 1.5m 로 비교적 규 모가 큰 편이다. 울창한 송림과 해수욕장.
Advertisements

KB 스타 경제 · 금융교실 나는 용돈관리왕. KB 스타 경제 · 금융교실 나는 용돈관리왕 선생님은 ? KB 2  이름 : 김국민  별명 : 스타 왕자  소속 : KB 국민은행 소비자 보호담 당 ( 간단한 자기 소개 : 교육 대상이 흥미 를 가질 수 있는 이미지와.
교수님 영상 제 2 장 관세법 일반 제 1 절 통칙 제 2 절 법 해석의 원칙 등 제 3 절 기한과 기간 제 4 절 서류의 송달 등 제 5 절 관세의 부과 및 징수 제 6 절 납세의무의 소멸 등.
Family 의 개요 의 외부 Pin 기능과 내부 기능 Memory 구조 Timing 2 장 8051 의 구조.
지금 우리 지구는 HOT, HOT 에너지자원. 아이스에이지 2 시청 초 1-11 기후변화의 주된 원인인 지구 온난화 현상을 알고 온실가스의 영향을 실험을 통해 확인할 수 있다. 학습목표 초 1-11.
컴퓨터의 구조 2006년 2학기 컴퓨터의 개념 및 실습.
11 레지스터 (Register) IT CookBook, 디지털 논리회로.
Chapter 9. 컴퓨터설계기초 9-1 머리말 9-2 데이터 처리장치 (Datapath)
AMBA BUS Protocol의 이해 (AMBA 2.0 Specification)
임베디드 프로그래밍 Lecture #
마이크로프로세서 메모리 및 입출력장치 인터페이스
기본 컴퓨터의 구조와 설계 Lecture #5.
Digital Logic Structures
기본 컴퓨터 프로그래밍 Lecture #6.
Computer System Architecture
7 조합논리회로 IT CookBook, 디지털 논리회로.
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
2 Part 전자계산기 구조 1. 논리 회로 2. 자료 표현 및 연산 3. 명령어 및 프로세서 4. 명령 수행 및 제어 5.
4 컴퓨터에서 활용되는 디지털 논리회로 IT CookBook, 컴퓨터 구조와 원리 2.0.
Sequential logic circuit
10장 주변장치 (PIO) Slide 1 (of 28).
Chapter 11. 레지스터.
컴퓨터구조 – 중간시험 (답안지) 부분점수 (사소한 실수면 -1)
임베디드 하드웨어 Lecture #6.
Verilog HDL 이론.
컴퓨터 구조론 2001년 10월 22일 발표자 황영선.
공학실험.
Computer System Architecture
제4장 제어 유니트 4.1 제어 유니트의 기능 4.2 제어 유니트의 구조 4.3 마이크로 명령어의 형식
7장 마이크로프로세서의 명령어수행과 주소지정 방식 Slide 1 (of 29).
출처: IT CookBook, 컴퓨터 구조와 원리 2.0 제 12장
순차회로 모델링 Sun, Hye-Seung.
컴퓨터 구조.
1 컴퓨터 시스템 소개.
4장. 컴퓨터 시스템의 구성과 기능 다루는 내용 컴퓨터 분해를 통한 본체 살펴보기 컴퓨터 구성요소 컴퓨터의 기능
9장. 중앙처리 장치의 조직과 기능 다루는 내용 컴퓨터 본체에서 CPU의 위치 살펴보기 CPU의 성능, 기능, 조직
1 마이크로프로세서의 원리 마이크로컨트롤러 AVR ATmega128.
Chapter 7. Pentium Processor
4장 컴퓨터의 중앙 처리 장치 하 효 순.
6 중앙처리장치의 조직과 기능 IT CookBook, 컴퓨터 구조와 원리 2.0.
Chapter 06 명령어와 번지지정 방식.
디지털회로설계 16. 동기식 카운터.
FSM 설계.
3주 컴퓨터구조.
8086 프로세서의 구조 및 동작 방식 시스템 프로그래밍 - Lecture #2 신라대학교 컴퓨터공학과 시스템 프로그래밍.
Flip-Flop 설계.
제 2장 컴퓨터동작의 기본 개념.
Stop Watch 예비제안서 10조 이인희 김민석 박재원
10장. 중앙처리 장치의 명령어 다루는 내용 어셈블리 프로그램의 이해 인터럽트(interrupt) 명령어 세트 주소 지정 방식.
Fault Diagnosis for Embedded Read-Only Memories
Computer System Architecture
HW (5월 11일 제출) P405 문제 7 a), d) 주어지 회로에 대한 상태표를 완성하고 주어진 입력에 대한
Chapter 4 The Von Neumann Model.
8장 대형 순차회로 문제의 해법 시프트 레지스터 카운터 ASM 도를 이용한 설계 One Hot encoding 복잡한 예제.
평행사변형의 성질 사각형 ABCD 사각형 ABCD → 기호: □ABCD 대변: 마주 보는 변 대각: 마주 보는 각
Computer System Architecture
6-1 중앙 처리 장치의 내부 구조 6-2 명령(instruction) 6-3 주소 지정 방식
Windows 10 업그레이드 방지 관련 메뉴얼 목차 [1] Windows 10 업그레이드 예약 확인 / 취소
논리회로 설계 및 실험 3주차.
동기식 카운터 설계.
■ 화성공장 산학인턴 버스 노선 확인 안내 문의 전화 : 안내페이지 접속 1
KB스타 경제·금융교실 은행에 가요.
9장. 중앙처리 장치의 조직과 기능 다루는 내용 컴퓨터 본체에서 CPU의 위치 살펴보기 CPU의 성능, 기능, 조직
9장 동기 순서 논리회로 경남정보대_논리회로_김 미 진.
Chapter 09. 동기 순서논리회로.
논리회로 설계실험 ICE ICE 담당교수 : 김 인 수.
임베디드 하드웨어 Lecture #6.
Lecture 7 7-Segment LED controller using u-controller
EISC Gang Writer 상품설명 제품 구성 제품 기능 평생 무상 Update
DK-128 실습 내부 EEPROM 제어 아이티즌 기술연구소 김태성 연구원
Presentation transcript:

1 8 장 대형 순차회로 문제의 해법 1) 시프트 레지스터 2) 카운터 3)ASM 도를 이용한 설계 4)One Hot encoding 5) 복잡한 예제

2 시프트 레지스터 그림 8.1 간단한 시프트 레지스터 추적 8.1 시프트 레지스터 타이밍

3 부하 (load) 를 줄이는 NOT 게이트가 있는 시프트 레지스터 – 클럭 부하 : 1 ( 앞에서는 4) – 입력 x 부하 : 1 ( 앞에서는 2)

4 시프트 레지스터 저장장치 –LOAD = 0 → 데이터는 n 개의 플립 플롭 순회 (circular shift) –LOAD = 1 → 새로운 x 값이 저장

직렬입력 병렬출력 시프트 레지스터 –Active low 정적 클리어 입력 – 병렬 (parallel) 출력 – 모뎀 입력 포트에 사용

6 병렬입력 (parallel-in) 시프트 레지스터 – 정적인 적재 (74165) Load ’ = 1, CLR ’ 와 PRE ’ 가 모두 1 → 시프트 Load ’ = 0 → 클럭 비활성화, PRE ’ = IN2 ’, CLR ’ = IN2, 플립플롭 출력 = IN2 – 동기적인 적재 (74166) Enable ’ = 0 → 클럭 전달, 아니면 클럭이 인가되지 않음 Enable ’ = 0, Load ’ = 0 → IN2 가 q2 에 저장, Load ’ 가 1 → 시프트 – 직렬출력

7 오른쪽 / 왼쪽 시프트 레지스터 (74194)

8 예제 8.1 입력 x 가 7 클럭 동안 계속 변경되면 출력 z 가 1 인 시스템 – 플립 플롭 - 최근 8 클럭 동안 x 값 저장 – 가장 최근 것 A, 가장 오래된 것 H –6 개만 필요

9 카운터 카운터 – 동기식 카운트, 동기식 적재 (active low), 비동기식 (active low) 클리어 – 적재 (Load = 0) :D = IN D C = IN C B = IN B A = IN A –Count (ENP=1, ENT=1) –OV: 오버플로우 출력

10 8- 비트 카운터 (74161 두개를 사용 ) – 처음 15 클럭 동안 : 우측 카운터 ( 낮은 자리 ) 만 활성화 – 카운터 =15( ) → 오버플로우 출력 (OV)=1. 좌측 카운터 활성화 – 다음 클럭 → 우측 카운터 = 0 (OV 도 0), 좌측 카운터는 1 증가 ( 카운터 =16) – 다음 15 클럭 동안 → 우측 카운터만 증가 – 카운터 =31( ), → 좌측 카운터 다시 활성화 – 다음 클럭 → 우측 카운터 = 0 (OV 도 0), 좌측 카운터는 1 증가 ( 카운터 =32)

11 예제 8.2 : MOD-120 카운터 (74161: 비동기 클리어 ) –74161 카운터 사용, 정적 클리어 – 최대값보다 하나 더 카운트하고 클리어 시킨다 –120 ( ) 에서 NAND 게이트가 클리어 신호 생성 – 정적 클리어 때문에 짧은 시간 동안 120 이 나타난다

12 예제 8.3: MOD-120 카운터 (74163: 동기식 클리어 ) –74163 카운터, 동기화된 클리어 – 클리어 입력 활성화, 클럭에 맞추어 모든 플립 플롭이 0 –119 ( ) 감지, 다음 클럭 펄스에서 클리어 – 카운터의 120 인 상태가 나타나지 않음

Down/Up´ 카운터

비동기 이진 카운터 – 진 (2 x 8) 클럭 X 점 연결 → 8 진 counter, 출력 D, C, B 클럭 Y 점 연결, A 점 X 점 연결 → 16 진 counter – 진 (2 x 5) – 진 (2 x 6)

15 예제 8.4 : 9 번째 클럭마다 한 개의 클럭펄스를 출력하는시스템 방법 1: ( 동기식 클리어 ) 사용 – … – 상태 8 인 동안만 D=1 → 카운터 리세트

까지 카운트하고 클리어 - 출력을 D 와 clock 을 AND 하여 발생 ( 방법 1 과 같이 ) – 상태 9 의 시작 부분에 glitch 발생 예제 8.4 방법 2: 74161( 비동기식 클리어 ) 사용 –Glitch 없애기 위해 7 이 될 때 출력을 발생

17 – 동기식 적재 –8, 9, 10, 11, 12, 13, 14, 15, 0, 8 … – 카운터 = 0 일 때  출력 1, 카운터에 8 적재 예제 8.4 방법 3: 을 이용한 다른 방법

18 예제 8.4 방법 4: 이용 –OV 출력 이용 –7, 8, 9, 10, 11, 12, 13, 14, 15, 7, … – 카운터 =15 → OV 출력 active low 적재 신호, 카운터에 7 적재 ( 출력 1)

ASM 도를 이용한 설계 19 ASM (Algorithmic State Machine) 방법 –Finite machine 을 설계할 때 사용되는 방법으로, 상태도와 유사하고 이해하기가 쉽다. 3 가지 기본요소 – 상태 (state), 판단 (condition check), 조건부 출력 (conditional output)

Moore 상태도와 ASM 도 20

Mealy 상태도와 ASM 도 21

Serial Adder A, B : 8bit 시프트 레지스터 결과 : B 레지스터 22

직렬 덧셈기에 대한 ASM 도 신호 s : 덧셈과정 시작 신호 d : 계산완료 N: 3 bit counter 23

One Hot Encoding One Hot: 한 bit 만 1 이 되는 경우 ( 반대는 One Cold) –Ex) decoder output 한 bit 만 1 이 되도록 encoding 하게 되면 플립플롭 수가 많아지지 만 설계가 쉬워진다. 아래 상태도에서 각 상태에 대하여 A, B, C, D 4 개의 플립플롭을 할당하면 –A * = x (A+B+C+D) –B * = x A –C * = x B –D * = x (C+D) –z = D 24

간단한 컴퓨터 설계 메모리 : 명령어와 데이터를 저장 –256(2 8 ) words (1 word = 12 bits) –Address lines: A 0, … A 7 –r’/w : read/write 제어선 레지스터 – 사용자 주소지정 가능한 레지스터 : B, C – 내부 레지스터 R : 12bit 명령어 레지스터 ( 교재의 I 와 R 은 동일한 것 ) P : Program Counter T : 12 bit temporary register 25

간단한 컴퓨터 설계 명령어 형식 –OP: 명령어 코드 00 : 메모리에서 레지스터로 로드 01 : 레지스터에서 메모리로 저장 10 : 메모리 내용과 레지스터 내용을 더함 11 : 점프 –N : 레지스터 선택 비트 0 : B 레지스터 1 : C 레지스터 –M : 주소지정방식 0 : 직접 주소지정 1 : 간접 주소지정 26

명령어 실행 단계 명령어 fetch –PC 내용을 주소 선으로 보냄 –Read 신호 – 명령어 레지스터 ( R register ) 에 저장 PC update 명령어 decode, operand 결정 Operand 준비 실행 27

28

One Hot Encoding 방식의 제어기 29

30 복잡한 예제 입력으로 들어온 연속적인 1 을 추적하여, 같은 수만큼 1 을 출력 –AND, OR, NOT 게이트, JK 플립 플롭, 상향 / 하향 카운터 이용 – 카운터로 연속적인 1 의 갯 수를 카운트하고 ( 카운터 증가 ), –1 이 출력되면서 카운터를 감소

31 방법 1 –x=1 → D/U=0, 카운터 증가 –X=0 → D/U =1, 카운터가 0 이 아닌 동안 감소, 출력 =1 – 카운터가 15 를 넘지 않을 때만 동작

32 방법 2 –15 개 이상의 입력에도, 최대 15 개의 1 이 나오도록 출력 제한 – 값 =15(1111) → x=1 이라도 카운터 비활성화

33 방법 3: 1 의 출력 완료까지 입력 무시 플립 플롭 Q, 카운터가 감소 중이고 x 가 무시 x = 0Q = 0count = 0EN = 0z = 0D/U = X x = 0Q = 0count = 1EN = 1z = 1D/U = 1 x = 0Q = 0count > 1EN = 1z = 1D/U = 1Q <- 1 x = 1Q = 0count ≠ 15 EN = 1z = 0D/U = 0 x = 1Q = 0count = 15 EN = 0z = 0D/U = X x = XQ = 1count > 1EN = 1z = 1D/U = 1 x = XQ = 1count = 1EN = 1z = 1D/U = 1Q <- 0 J = x (D + C + B)K = D C B A z = Q + x Q (D + C + B + A) = Q + x (D + C + B + A) EN = x (A B C D) + z D/U = Q + x (D + C + B + A)

34 방법 4: 세 개의 오른쪽 / 왼쪽 시프트 레지스터 이용 –12- 비트 시프트 레지스터 –x = 1 → S0 =1, S1 = 0, 오른쪽 시프트, 가장 왼쪽 비트에는 1 이 들어간다 –x = 0 → 왼쪽 시프트, 오른쪽에 0 을 적재 – 레지스터 수보다 많은 1 입력도 처리

35 예제 8.7: 16 상태 ( ) 를 순회하는 카운터 카운터 상태표

36 방법 1: JK 플립 플롭 4 개 사용 –JD = C A + C B + B AKD = C B + C A + B A –JC = D A + D B KC = D A + D B A –JB = D + A KB = D + A –JA = D C + D C KA = D B + C B + D C B –2- 입력 게이트 18 개, 3- 입력 게이트 5 개 → 50 센트 IC 7 개, 총 비용 =$5.50

37 방법 2: 4- 비트 동기식 카운터 (74161 과 같은 ) 와 디코더 블럭 사용 디코더 블럭 진리표

38 방법 2 계속 –W = C B A + D B A + C B A + D B A –X = D B + D B –Y = C A + C A –Z = B A + B A –2- 입력 게이트 9 개, 3- 입력 게이트 4 개, 4- 입력 게이트 1 개 – 카운터 출력 (D, C, B, A) NOT 게이트 4 개 – 총 패키지 수 =6, 비용 = $ 카운터 비용 – 카운터 비용 < $2.50 → 이 방법이 더 저렴