논리회로 설계 및 실험 2주차.

Slides:



Advertisements
Similar presentations
개인의견 차가있을수있음 훈훈한남자 배우 TOP 5. 5 위는 박보검 웃을때보이는 치명적인 미소 꺄 ~~~ 5위5위.
Advertisements

YES C 제 1 장 C 언어의 개요 1/34 제 1 장 C 언어의 개요 문봉근. YES C 제 1 장 C 언어의 개요 2/34 제 1 장 C 언어의 개요 1.1 프로그램과 C 언어의 특징 1.2 C 언어의 프로그램 구성 1.3 비주얼 C++ 통합 환경 들어가기.
IspLEVER 6.1 을 이용한 회로 설계 (Schematic). Table of Contents ispLEVER ispLEVER 6.1 tool 의 시작프로그램 2.Lattice Device 의 Design 1) 프로그램시작 2) 새로운 Project 만들기.
연천 새둥지마을 체재형 주말농장 준공식 초청장 오시는 길 주제 일시 장소 21C 경기농촌희망심기 2005년 제1기 교육수료마을
10월 충북노회 남선교회 순회 헌신예배 묵 도 기 도 성 경 봉 독 특 송 찬 양 설 교 찬양 / 봉헌 봉 헌 기 도
글에 나타난 시대적 사회적 배경을 파악할 수 있다. 배경 지식과 의미 해석의 관련성을 이해할 수 있다.
한알Ⅱ「더불어 살기」전국대회 일정표 날짜 시간 7월 26일(목) 7월 27일(금) 7월 28일(토) 7월 29일(일)
선거관리위원회 위원 공개모집 4차 공고 제4기 선거관리위원회를 구성하는 위원 모집의
오늘의 학습 주제 Ⅱ. 근대 사회의 전개 4. 개항 이후의 경제와 사회 4-1. 열강의 경제 침탈 4-2. 경제적 구국 운동의 전개 4-3. 사회 구조와 의식의 변화 4-4. 생활 모습의 변화.
한국 상속세 및 증여세 과세제도 한국 국세공무원교육원 교 수 최 성 일.
신앙의 기초를 세우는 중고등부 1부 대 예 배 : 11 : 00 ~ 12 : 층 본당
신앙의 기초를 세우는 중고등부 1부 대 예 배 : 11 : 00 ~ 12 : 층 본당
◆ 지난주 반별 출석 보기 ◆ 제 56 권 26호 년 6월 26일 반 선생님 친구들 재적 출석 5세 화평 김성희 선생님
학습센터란? 기도에 관해 배울 수 있는 다양한 학습 코너를 통하여 어린이들이 보다 더 쉽게 기도를 알게 하고, 기도할 수 있게 하며, 기도의 사람으로 변화될 수 있도록 하는 체험학습 프로그램이다. 따라서 주입식이지 않으며 어린이들이 참여할 수 있는 역동적인 프로그램으로.
Digital BibleⅢ 폰속의 성경 디지털 바이블 2008년 12월 ㈜씨엔커뮤니케이션 ㈜씨엔엠브이엔오.
성 김대건 피츠버그 한인 성당 그리스도왕 대축일 공지사항
KAINOS 날마다 더하여지는 Kainos News 이번 주 찬양 20 / 300 – 20개의 셀, 300명의 영혼
1. 단위사업 관리, 예산관리 사업설정 (교직원협의/의견수렴) 정책 사업 학교 정책 사업 등록 사업 기본정보 목표 설정
XML 개요 ㅎㅎ 기존 마크업 언어와 XML XML 필요성과 적용 분야 XML 관련 표준 XML 사용 환경 XML 개발 환경
제 1장. 멀티미디어 개론 1.1 멀티미디어란 무엇인가? 1.2 멀티미디어와 하이퍼미디어 1.3 월드 와이드 웹
10 카운터 (Counter) IT CookBook, 디지털 논리회로.
2015 가을학기 철근콘크리트 구조설계 김진근 교수 건설 및 환경공학과 KAIST.
베이비 붐 세대란 ?.
컴퓨터 보안 메커니즘에 기반한 자기 가치감의 셀프힐링
의료광고 실태 조사 조윤미(녹색소비자연대 상임위원).
5차시: 비례식을 이용하여 생활 속 문제를 해결해 보자.
우리의 미래… 마을과 에너지 에너지자립마을을 중심으로
고등학교 한국사 일제의 강점과 민족 운동의 전개 Ⅴ 1 일제의 식민 통치와 경제 수탈.
알기쉬운 Proposal 작성법 순천청암대학 이재호.
광주경영자총협회 위기극복을 위한 변화창조 리더십 광진구청080911/건국대행정대학원 정 용 진 교수.
Ⅰ.서론 첫 번째, 인터넷신문 속 표기 오류 정보화 사회로 급격하게 변화하고 있는 가운데, 우리의 실생활 속에서 인터넷이란
2004년 인천시 2차 동시분양 일정표 Monday Tuesday Wednesday Thursday Friday
사례발표 및 나눔 원주문화재단 실무자 역량강화 아카데미 6.26 / 2012.
갑을빌딩 Leasing Information
(화) 미디어법과 빅브라더 경영 송송이.
병원 감염 Nosocomial Infection
~~ 학부모님들의 많은 참여 부탁 드립니다 ~~
디지털시스템실험 2주차 고려대학교 전기전자전파공학부.
ASIC의 개요 ASIC(Application Specific Integrated Circuit) 특정 용도 주문형 집적회로
3장. 디지털 회로 Lecture #3.
노인장기요양보험 ■제도의 의의와 발전과정 1. 고령이나 질병으로 거동이 불편하거나 혼자 생활하기 어려운 노인에게 신체활동 또
Chapter 02 JAVA 프로그래밍 시작하기 01 실무에서 사용하는 JAVA 개발 환경 02 JAVA 프로그램 작성
Install & Simulation VLSI 시스템 설계
PXA255-FPGA 장비 개요 및 실습 Lecture #9.
7-Segment FND Controller 구현
PXA255-FPGA 장비 계요 및 실습 Lecture #9.
MAX+PLUS II 설치 및 디지털 시스템의 설계 방법
원격탐사 Group Project 강원랜드가 강원도 정선군 자연환경에 미친 영향 비교 (2000년, 2004년 2010년)
Ch2-2. VHDL Basic VHDL lexical element VHDL description
3. 게이트레벨 최소화.
논리회로 및 실험 4변수 Karnaugh map
Quartus 를 이용한 ROM 설계 ROM table 의 작성
C++ 프로그래밍 년 2학기 전자정보공학대학 컴퓨터공학부.
OrCad Capture 정원근.
IT CookBook, VHDL을 이용한 FPGA 디지털 설계
디지털 시스템 설계(3).
오브젝트 하드웨어 기술 언어 IT CookBook, VHDL을 이용한 디지털 회로 입문.
Programmable Logic Device
3. 게이트레벨 최소화.
Sequence Logic.
논리회로 설계 및 실험 3주차.
WinCE Device Driver 실습 #2
기초C언어 제4주 실습 프로젝트 아카이브로 저장하기/가져오 기 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
7주차 FPGA 보드 사용법.
논리회로 설계 및 실험 2주차.
검색모델의 종류 불리안 모델 벡터 공간 모델 퍼지 집합 모델 확률 모델.
C언어 개론.
WinCE Device Driver 실습 #2
유예 X-FILE *조사자* 1301권희원 1315이예지 1317장아정 1322홍자현.
7주차 실습 FPGA 보드 사용법.
Presentation transcript:

논리회로 설계 및 실험 2주차

2주차 목표 목표 1. 문제에서 논리식을 유도해내고 논리회로로 구현 2. 논리회로 설계를 위한 Flowrian 사용법 학습

디지털 논리 회로 설계 논리회로 논리회로 설계 1. 주어진 입력에 대해 논리 연산을 수행하여 원하는 결과를 출력하는 회로 2. Boolean 식을 논리 게이트를 사용하여 물리적으로 구현한 전자회로 논리회로 설계 - 설계 방법 및 설계 툴이 다양함 - 논리회로 설계 및 실험 과목에서는 Flowrian이라는 툴을 사용하여 회로를 설계함

Flowrian Flowrian 소개 Flowrian 구성 Flowrian Schmian Stadian Symbolian - 인터넷 기반의 하드웨어 설계 툴 - HDL 텍스트 에디터 뿐만 아니라 그래피컬한 환경의 설계 툴을 지원 Flowrian 구성 Flowrian Schmian : 논리회로도 편집기, 심벌들을 사용해 회로를 작성 : 전체 설계 프로젝트 관리 Stadian : 상태도 편집기, 컨트롤 유닛을 작성 Symbolian : 심벌 편집기, 작성한 모듈을 심벌로 만들어 재사용 Stimulian : 테스트벤치 입력파형 편집기 Wavian : 테스트벤치 파형 분석기 4

논리회로 및 설계(2-1) 리뷰 “ 합항은 OR 게이트 “ 논리식과 논리회로 𝐹 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 X Y Z F 곱항은 AND 게이트 보수는 NOT 게이트 𝐹 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 X Y Z F 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 Flowrian 툴로 설계한 𝐹 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 의 회로도 𝐹 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 의 진리표 Flowrian 툴로 시뮬레이션한 𝐹 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 의 파형

논리회로 및 설계(2-1) 리뷰 “ 두 개 이상의 논리식도 “ 논리식과 논리회로 𝐹 1 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 “ 두 개 이상의 논리식도 “ 동시에 표현 𝐹 1 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 𝐹 2 𝑋, 𝑌 =𝑋𝑌 X Y Z F1 F2 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 1 1 1 1 Flowrian 툴로 설계한 𝐹 1 , 𝐹 2 두 논리식의회로도 𝐹 1 , 𝐹 2 두 논리식의 진리표 Flowrian 툴로 시뮬레이션한 𝐹 1 , 𝐹 2 두 논리식의파형

논리회로 및 설계(2-1) 리뷰 카르노맵(Karnaugh map, K-map) 카르노맵 응용 적은 개수의 변수에 한해 논리식의 함수를 유도해내는 방법 중 하나 YZ 00 01 11 10 Y 0 1 YZ 00 01 11 10 WX 00 01 11 10 X 1 X 1 2변수 카르노맵 3변수 카르노맵 4변수 카르노맵 카르노맵 응용 예시 문제 1bit 입력 A와 B를 비교하여, A>B이면 LED1, A=B이면 LED2, A<B이면 LED3이 켜지는 1bit 비교기 설계

논리회로 및 설계(2-1) 리뷰 예시 문제 접근 입력 : A, B 출력 : LED1, LED2, LED3 ① A>B 인 경우는 A가 1이고 B는 0 ② A=B 인 경우는 A, B가 0 또는 1 ③ A<B 인 경우는 A가 0이고 B는 1 ① ② ③ B 0 1 B 0 1 B 0 1 A 1 A 1 A 1 1 1 1 1 ① 𝐿𝐸𝐷1=𝐴 𝐵 ② 𝐿𝐸𝐷2=𝐴𝐵+ 𝐴 𝐵 ③ 𝐿𝐸𝐷3= 𝐴 𝐵

참고 잘못된 회로 설계의 예 예시 입력 : A, B 출력 : LED1 A버튼을 누르거나 B버튼을 누르면 LED1이 켜지는 회로 Fig1. 두 개의 입력이 하나의 출력에 연결 Fig2. 두 개의 입력을 논리 게이트로 연결 Fig1은 LED1에서의 출력이 0인지 1인지 알 수 없으므로 x (don’t care)를 출력하여 설계 의도와 다름 Fig2는 두 개의 입력을 논리 게이트로 연결하여 정상 동작함 참고로 아래 Fig3과 같이 하나의 입력에 둘 이상의 출력은 정상 동작함 Fig3. 하나의 입력에 두 개 이상의 출력

참고 Logic Array 형식의 설계 𝐹 1 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 𝐹 2 𝑋, 𝑌 =𝑋𝑌 𝐹 1 𝑋, 𝑌, 𝑍 =𝑋+ 𝑌 𝑍 𝐹 2 𝑋, 𝑌 =𝑋𝑌 Slide11과 같이 회로도가 복잡해질수록 좌측의 설계 방식은 디버깅이 힘듦 Logic Array와 유사한 우측의 설계 방식을 권함 Fig1. 기본적인 설계 드로잉 Fig2. 입력 포트의 배선을 순서대로 정리한 드로잉

참고 2015년 수업에 사용한 256bit 메모리의 일부

실습 Flowrian을 이용한 회로 설계

Flowrian Flowrian 로그인 ① Setup을 선택 ② Address를 “essas2.Flowrian.net”으로 수정 후 로그인 ③ [Main] 을 선택하여 Flowrian 실행 ② ① ③

Flowrian Flowrian Workspace 생성 (1/2) Workspace는 최상위 작업 공간 ① [File]에서 [New workspace] 선택 ② Workspace의 경로와 이름을 지정 ① ②

Flowrian Flowrian Workspace 생성 (2/2) ① Workspace가 생성됨 ② [File] -> [Save Workspace]를 실행하면 ③ 해당 경로에 .fws 파일이 생성됨 ② ③ ①

Flowrian Flowrian Project 생성 (1/2) 하나의 Workspace가 여러 개의 프로젝트를 가질 수 있음 ① Workspace에서 우클릭 후 [Add new project] 실행 ② 프로젝트 명을 지정 ③ 프로젝트 타입은 Verilog Design ① ② ③

Flowrian Flowrian Project 생성 (2/2) ① 프로젝트를 생성하면 workspace 폴더에 .fprj 파일이 생성됨 ② 하나 이상의 프로젝트가 있을 때, 프로젝트에서 우클릭 후 [Set Project Active]를 통해 해당 프로젝트 활성화 ① ②

Flowrian - Schmian 회로도 생성 (1/2) Flowrian Schmian ① Flowrian에서 [Excute] -> [Schematic Editor] 실행 ② Schmian 툴이 실행 됨 ③ Schmian에서 [File] -> [New] 또는 [New Document] 아이콘 실행 ② ③ ① Flowrian Schmian

Flowrian - Schmian 회로도 생성 (2/2) ① Module Name 지정 - 모듈명은 영어로 시작해야 하며 숫자, 또는 특수기호로 시작할 수 없음 - 올바른 모듈명이 아니면 정상 동작을 하지 않고 Compile error가 발생 ② Signal Type은 Verilog 선택 ③ 신규 회로도 생성 ① ② ③

Flowrian - Schmian 회로도 작성 (1/2) ① [Draw] -> [Port] 또는 Port 아이콘 실행 ② Port Definition - Port Name : 모듈명 작성 규칙과 같음 - Port Type : singlebit 또는 multibit 선택 - Direction : 입력 또는 출력 선택 ① ③ ②

Flowrian - Schmian 회로도 작성 (2/2) ① 논리 게이트는 PNULib에서 선택하여 Drag&Drop ② 입출력 포트와 논리 게이트간에 선을 이어 회로 작성 ③ 정상적인 연결 ④ 연결되지 않음 ③ ① ② ④

Flowrian - Schmian 회로도 저장 및 변환 ① [Export] -> [Verilog] -> [ISim] 실행 - 파일명 지정 후 저장 하면 .v 파일 생성 - 이 때, 파일명은 회로도의 모듈명과 일치시킬 것 ② 연결이 끊어졌거나 포트 등의 문제가 있을 시 ERC 창에서 에러 출력 ※ Save와 Export의 차이 - [Save] 는 회로도(.sch)를 저장 - [Export] 는 회로도를 HDL 파일(.v)로 변환 후 저장 ② ①

Flowrian 프로젝트에 라이브러리 추가 ① 프로젝트의 Include 폴더에서 우클릭 후 [Add Existing File] 실행 ② C:\Program Files\System Centroid\Flowrian R7\Library\PNULib\sources 경로의 모든 .v 파일 선택 ② ①

Flowrian 프로젝트에 작성한 모듈 추가 ① 프로젝트의 Verilog 폴더에서 우클릭 후 [Add Existing File] 실행택 ② Schmian에서 작성 후 HDL(.v)로 변환한 파일을 선택 ③ 프로젝트에서 우클릭 후 [Analyze All] 명령 실행 - Analyze를 하고 나면 Workspace에 _analyze 라는 폴더가 생김 - _analyze 폴더 안에는 프로젝트에 추가한 모듈을 해석한 내용이 .psr 파일로 저장됨 ② ③ ①

Flowrian - Stimulian 모듈 테스트벤치 작성 (1/2) Flowrian Stimulian ① Flowrian에서 [Excute] -> [Stumlus Editor] 실행 ② Stimulian 실행 ③ Stimulian에서 [File] -> [Synchronize] 실행 ④ Flowrian에서 Analyze 후 생성된 .psr 파일을 선택 ② ③ ① Flowrian Stimulian

Flowrian - Stimulian 모듈 테스트벤치 작성 (2/2) ① 파형을 클릭하여 high 또는 low 신호를 지정 ② 우클릭하여 Clock이나 Auto Generate 등의 메뉴에서 반복적인 신호 생성 가능 ③ [File] -> [Export] -> [Verilog] 를 실행하여 HDL(.v) 파일로 변환하여 저장 이때, 파일명은 “모듈명_tb.v” 파일로 정해짐 ③ ① ②

Flowrian 프로젝트에 작성한 테스트벤치 파일 추가 ① 프로젝트의 Verilog 폴더에서 우클릭 후 [Add Existing File] 선택 ② Stimulian에서 작성 후 HDL(.v)로 변환한 파일을 선택 ③ 프로젝트에서 다시 한번 [Analyze All] 실행 ③ ① ②

Flowrian 테스트벤치 컴파일 ① Flowrian에서 [Service] -> [Compile – ISim] 실행 ② Top Module에 컴파일 할 테스트벤치 선택 ③ 라이브러리는 PNULib 선택 ① ② ③

Flowrian 테스트벤치 시뮬레이션 (1/3) ① Flowrian에서 [Service] -> [Simulate – ISim] 실행 ② Top Module에 시뮬레이션을 실행할 테스트벤치 선택 ③ 라이브러리는 PNULib 선택 ④ 파형을 확인할 포트를 더블클릭 ⑤ 포트만 남기고 나머지는 삭제해도 됨 ① ④ ② ⑤ ③

Flowrian 테스트벤치 시뮬레이션 (2/3) ① 시뮬레이션 해석이 성공하면 .vcd 파일을 생성 .vcd 파일을 더블 클릭하면 Wavian이 실행되며 파형을 확인 ② .vcd 파일이 생성 안되면 컴파일과 시뮬레이션 로그를 확인하여 에러를 확인 ② ①

Flowrian - Wavian 테스트벤치 시뮬레이션 (3/3) ① 적당하게 척도를 조절하여 파형을 확인 ② 포트명을 우클릭하여 Radix(16진법, 10진법 등)를 변경하거나 파형의 색을 변경 가능 ① ②