회원가입 ID/PW 찾기

1) 지식 창고는 본인이 작성한 콘텐츠(팁/노하우/리소스/강좌 등)을 무료 혹은 가상화폐인 납포인트를 통해 공유하는 공간입니다.
2) 본인이 작성한 콘텐츠에 대해서만 지식 창고에 등록할 수 있으며, 저작권에 위배되는 콘텐츠는 사전경고 없이 삭제될 수 있습니다.
3) 콘텐츠 구매 및 첨부파일 다운로드는 회원그룹 '연구원' 이상 가능하오니, 경험치를 쌓아 진급한 후에 이용 부탁드립니다.
4) 무료 콘텐츠의 본문은 구매절차 없이 즉시 이용할 수 있으며, 판매 납포인트가 있는 콘텐츠는 구매 후 이용할 수 있습니다.
5) 콘텐츠 판매에 따른 납포인트 수익은 지정한 비율(50%)에 따라 판매자에게 지급하며, 납포인트 수익을 통해 진급을 빨리할 수 있습니다.
6) 구매 후 평가를 하면 구매 납포인트의 20%를 돌려 드립니다.

콘텐츠 수 33
판매자 양치기광녀 판매 납포인트 무료 평점 0점 / 총 0명 참여

2. 8051의 핀구조 및 타이밍도

칩 내에 ROM을 내장한 것(8051,8751)과 외부에 있는 ROM(8031)으로 동작시키는 것이 있다.

8051의 중요한 특징은 다음과 같다.

(1) 8비트 원 칩 마이크로 컴퓨터

(2) 발진회로 내장

(3) 32비트의 I/O 라인

(4) 64K 바이트의 프로그램 영역

(5) 64K 바이트의 데이터 메모리 영역

(6) 2개의 16비트 타이머/카운터

(7) 5개의 인터럽트 중 2개의 인터럽트 우선 순위 레벨 제어

(8) 전이중(full duplex) 시리얼 포트

(9) 강력한 비트 제어

1. 8051의 핀 기능

(1) 포트 0(P0.0 - P0.7) : 8비트 오픈 드레인 양방향 입출력 단자이다.

포트 0에 "1"을 쓰면, 그 상태에서 하이 임피던스 입력으로 사용 될 수 있다.

외부에 프로그램 메모리와 데이터 메모리를 인터페이스 하였을 때, 하위 어드레스 A0 - A7과 데이터 버스로 사용

된다.

EP-ROM 라이트할 때는 데이터 버스로 사용된다. 이때는 외부 풀업(pull up)저항을 연결하여야 한다.

외부에 메모리를 인터페이스하자 않았을 때는 범용 I/O 포트로 사용할 수 있다. 이때는 외부에 풀업

저항을 연결하여야 한다.

(2) 포트 1(P1.0 - P1.7) : 내부 풀업이 되어 있는 8비트 양방향 입출력 단자이다.

EP-ROM 라이트 할 때는 어드레스 버스 A0 - A7으로 사용한다.

범용 I/O 포트로 사용된다.

(3) 포트 2(P2.0 - P2.7) : 내부 풀업을 갖는 8비트 양방향 입출력 단자이다.

외부 프로그램 메모리 혹은 데이터 메모리와 데이터 전송시, 상위 어드레스 A8 - A15로 사용된다.

EP-ROM 라이트 동안에는 상위 어드레스 버스로 사용된다.

외부에 8비트 어드레스만을 사용하는 기억소자를 인터페이스 하였을 경우에는 원래의 목적대로 포트

2로 사용할 수 있다. 이때 사용하는 명령이 MOVX A, @R0 혹은 MOVX A, @R1 또는 MOVX @R1, A

MOVX A, @R1 이다.

(4) 포트 3(P3.0 - 3.7) : 내부 풀업을 갖는 8비트 양방향 입출력 단자이다. 이 포트는 2개의 기능을 갖고 있다.

(1) RESET : 입력 액티브 하이 (high)

2개의 머신 사이클 동안 'H'가 되어 있어야 유효하다.

(2) ALE/*PROG (Address Latch Enable output/program pulse input)

(a) ALE : 액티브 H, 출력

외부 프로그램 메모리 혹은 데이터 메모리를 인터페이스한 경우, P0는 어드레스 버스 (A0 - A7)겸,

데이터 버스로 사용한다. 즉, 이 신호는 P0가 어드레스 버스 A0 - A7으로 동작하고 있다는 것을 외부

에 알리는 신호이다. 그래서, 보통 이 신호를 어드레스 래치의 래치 신호로 사용한다.

(b) *PROG: 액티브 L, 입력

EP-ROM 라이트 하는 동안 프로그램 펄스 신호로 사용된다.

(3) *PSEN ( program strobe enable) : 출력, 액티브 'L'

외부 프로그램 메모리에서 데이터를 일을 때 리드 신호가 된다. 각 머신 사이클에서 2번 출력되어지며, ALE의 하강 모서리(↓)에서, 포트 0의 값은 어드레스로 사용된다. 데이터 메모리에서 데이터를 리드할 때에는 동작하지 않는다.

(4) *EA/Vpp (external access enable/ V peak-peak)

(a) *EA : 입력, 외부 프로그램 메모리를 사용할 것인가를 결장한다. 즉,

*EA = 0 : 0000 - 0FFFH 영역을 외부 ROM을 사용한다. 이 경우, 1000H 번지 이상을 액세스하면,

자동으로 외부 ROM이 선택된다.

*EA = 1 : 0000 - 0FFFH 영역을 내부 ROM을 사용한다.

(b) Vpp : EP-ROM 라이트 동안 Vpp전원 입력 단자

(5) XTAL1 : 입력, 발진기 증폭기가 인버팅 되어서 입력된다.

(6) XTAL2 : 출력, 발진기 증폭기가 인버팅 되어서 입력된다.

(7) Vss : 접지

(8) Vcc : +5[V]

3. 8051의 타이밍도

8051의 1머신 사이클(machin cycle)은 6 스테이트(12클럭)로 구성되며, 1 스테이트(state)는 두 개의 클럭으로 구성된다. 또, 1 스테이트는 페이스 1(P1)과 페이스 2(P2)의 두 개의 페이스로 나누어지기도 한다.

(1) 1바이트-1사이클인 경우

기계어가 1바이트인 경우 (1 바이트가 OP 코드가 된다.) 이 명령을 실행하는데는 하나의 머신 사이클만 필요하며, S4에서 다음 명령의 OP코드를 일고 있지만, 다음 사이클의 S1에서 똑같은 OP코드를 읽기 때문에, S4에서 리드 사이클은 더미(dummy) 사이클이 된다.

(2) 2바이트-1사이클인 경우

기계어가 2바이트인 경우(1 바이트가 OP 코드 나머지 1바이트는 오퍼런드)에 , 이 명령을 실행하는데 1머신 사이클을 필요로 하는 경우이며, S4에서 오퍼런드를 읽어서 처리를 하게 된다.

(3) 1바이트 2사이클인 경우 (1)

기계어가 1바이트인 경우, 2개의 머신 사이클이 필요한 경우를 나타내며, 처음 사이클의 S4와 다음 사이클의 S1, S4에서는 더미(dummy) 읽기를 한다.

(4) 1바이트 2사이클인 경우 (2)

단 1바이트-2사이클 명령에서 MOVX 명령만은 예외로, 외부 메모리를 액세스하기 때문에 다음 명령의 읽기를 할 수 있다.

8051에서는 거의 전 명령이 2머신 사이클이내에 완료하지만 MUL 명령과 DIV 명령은 4개의 머신사이클이 필요로 한다.

4. 외부 프로그램 메모리 액세스 타이밍

내부 프로그램 메모리를 읽을 때에는 신호는 외부에 출력되지 않지만, 내부적으로는 똑같이 동작하고 있다. 또, 타이밍에 관해서는 외부 ROM을 인터페이스 하여야 하는 8031는 을 출력하고, 8051(8071)을 외부 ROM을 사용할 경우에는, 8031와 8051(8071)의 타이밍은 똑같게 된다. 은 외부 데이터 메모리를 액세스하는 , 신호가 동작할 때는 출력되지 않는다.

프로그램 메모리의 액세스 사이클은 그림에서와 같이 6개의 클럭 사이클로 구성된다. 그림에서 각각 T1, T2, T3, T4, T5, T6로 표시되고 있다.

어드레스는 T3 스테이트에서 CPU에서 출력되고,

메모리에서 데이터 전송은 T5, T6 그리고 다음 사이클의 T1에서 이루어진다.

외부 프로그램 메모리에서 페치할 경우, 8051은 대개 짝수개의 바이트 수를 페치하게 된다. 더욱 홀 수 바이트가 브랜치 및 외부 데이터 메모리 액세스보다 앞에서 실행되면, 전부 페치되어 있던지, 또 실행되지 않은 1바이트가 무시된다.

읽기 사이클은 T2에서 시작되며, 이때 ALE 신호 이 출력된다. 이 ALE 신호의 하강 모서리 를, 버스상에 있는 어드레스 를 8비트 래치 회로의 래치 신호로 사용한다. T5 스테이트에서 어드레스 정보는, 포트 0 버스상에서 제거되고, 프로세서의 구동회로는 하이 임피던스 상태 다 된다. 프로그램 메모리 리드 제어 신호()도, T5에서 출력된다.

신호는 어드레스 정보에 의해서, 지정된 디바이스에 대해서, 데이터 버스에 데이터를 보내라고 알리는 신호이다. 신호보다 다소 늦게, 유효한 데이터 각 버스상에 나타나게 된다 . 그 후, 8051은 신호 레벨을 "H"로 만들고 , 이 신호로 지정되었던 디바이스는, 자신의 출력을 플로팅 상태로 만들고 버스를 개방한다.

5. 외부 데이터 액세스 타이밍

외부 데이터 메모리의 액세스 사이클은 T1- T12까지 12 클럭으로 이루어진다.

외부 데이터 메모리 액세스 사이클은 프로그램 메모리 액세스에 비해서 늦기 때문에, 액세스 시간이 늦은 메모리 혹은 주변 I/O LSI들을 인터페이스가 쉽도록 되어 있다.

읽기 사이클은 T2에서 ALE 신호를 출력함으로써 시작된다. ALE의 하강 모서리 에서는 버스상에 출력된 어드레스 을 래치 회로로 래치시킨다. 그래서 T5 스테이트에서 어드레스는 포트 0에서 제거되고, 프로세서는 버스를 하이 임피던스 상태로 놓는다.

데이터 메모리 일기 제어 신호 는 T7에서 출력되고, 어드레스 정보에 의해서 선택된 디바이스는 데이터를 데이터 버스로 내보내야 한다. 그래서 일정시간이 지난 후 유효 데이터가 버스상에 나타나게 된다. 신호가 다시 "H" 레벨 로 돌아가게 되면, 선택되었던 디바이스는 출력을 플로팅 상태로 만들어서 버스를 개방한다.

라이트 사이클은 ALE신호를 출력하고 , 어드레스 정보를 출력해서 , 버스 사이클을 시작한다. T6 스테이트에서 CPU는 어드레스 정보로 선택된 디바이스로 써넣을 데이터를 버스로 출력한다. 이 데이터는 다음 버스 사이클 T2 스테이트에서 버스 사이클이 끝날 때까지 유지된다 . 써넣기 제어 신호 은 T6 스테이트에서 "L"레벨이 되고 , 버스 사이클이 끝나는 T12 까지 "L"레벨을 유지하게 된다 .

 

 

자료출처:http://www.jungtaemin.com/study.html?PHPSESSID=5d9ce605a6274b90aee7bcf9346d0ae4


profile
컴쟁이 2012.07.21 00:10
자료 정요리가 잘 되어 있네요...
profile
시나브로69 2016.07.16 16:33

좋은 자료 감사합니다.

search
List of Articles
번호 분류 제목 평점 포인트 판매자 등록일 구매수 조회 수
공지 공공의 목적으로 공유하고자 하는 소프트웨어는 '소프트웨어 자료실'에 업로드를 요청드립니다.
공지 구매후 평점 댓글을 남겨주시면 구매포인트의 20%를 돌려드립니다.
33 Software & IDEs fortran에서 수치해석 라이브러리 IMSL사용하기 [3] 무료 도시인 2014-03-04 0 215
32 Software & IDEs C# - GPS 예제 [4] 무료 달리는거북이 2010-12-03 0 3642
31 Software & IDEs 저는 학원에서 패스했습니다 ㅋ 무료 뒤집기달인y 2010-10-22 0 1993
30 Software & IDEs VS6 MFC기반에서 Rchedit 컨트롤 추가시 에러 무료 아크마 2010-10-04 0 2100
29 Software & IDEs MFC 테트리스프로그램 입니다^^ [8] 무료 초짜초짜초짜 2010-09-27 0 3103
28 Software & IDEs [Win32api/게임 ] 갤러그 [4] 무료 밍구리 2010-07-02 0 3576
27 Software & IDEs VB 에서 VC++ 처럼 메시지 이벤트 사용 [2] 무료 전자과조교 2010-05-04 0 1893
26 Software & IDEs Serial로 데이터 받아 처리하는 신체검사프로그램 [7] 무료 맑은소리 2010-04-26 0 1852
25 Software & IDEs 그리기 예제입니다 ^^ [5] 무료 전설의사나이 2010-04-10 0 1855
24 Software & IDEs MFC를 이용한 타자게임 입니다 ^^ [4] 무료 전설의사나이 2010-04-10 0 3196
23 Software & IDEs Winsock API 한글 도움말 입니다 . [6] 무료 쑤잉아 2010-04-08 0 2032
22 Software & IDEs unix network 프로그래밍 관련 자료 입니다. [2] 무료 블루미르7 2010-01-05 0 1782
21 Software & IDEs 강아지 키트를 이용하여 만들었습니다~~~ [17] 무료 kimd 2009-11-20 0 2118
20 Software & IDEs [MFC] 날짜 계산기입니다 [8] 무료 shindy 2009-10-28 0 3538
19 Software & IDEs 제어용DSP 추천합니다 [1] 무료 날아가는잡쉐 2008-09-25 0 1282
18 Software & IDEs API 시리얼통신 함수 사용방법 입니다. 참고하세요 [10] 무료 뺘쑝 2008-04-30 0 3911
17 Software & IDEs [MFC] 윈도우 크기 고정하기 [6] 무료 아크마 2008-04-28 0 3956
16 Software & IDEs 섭씨 화씨 변환 프로그램 [8] 무료 아크마 2008-04-23 0 2536
15 Software & IDEs 저.. 지금 딱 두번 글을 올려 봤는데.. 움.. 먼가 좀 바꿔야 될듯 해서..;; ㅋㅋ [1] 무료 행복하면 2007-12-03 0 1313
14 Software & IDEs c언어와 c++ 할 줄은 아는데.. 개념이 조금 부족하신분.. [14] 무료 행복하면 2007-11-29 0 1965
  • 의복에만 마음이 쏠리는 것은 마음과 인격이 잠든 탓이다.
    - 에머슨
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.