'마이크로프로세서-기초/| BUS'에 해당되는 글 14건

14.비 동기 버스 동작(Asynchronous Bus operation) :: 버스의이해 - 2009/02/25 19:41

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 비 동기 버스 동작(Asynchronous Bus operation)의 원리를 알아 봅니다.

이와 같은 비동기 버스 방식은 현대의 마이크로 프로세서에서의 여러 분야에서 보이고 있는데요. Figure 1 3은 AMBA AHB 버스의 기본 타이밍도입니다. 여기서 HREADY 가 위에서 설명한 /DSACK(응답) 신호와 동일한 기능으로서 사용 되고 있습니다. 다른 그림을 하나 더 보시겠습니다. Figure 1 4은 S3C2440A 메모리 컨트롤러에 의한 버스의 기본 타이밍도입니다. 여기서 nWAIT 가 위에서 설명한 /DSACK(응답) 신호와 동일한 기능으로서 사용 되고 있습니다.

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/131 관련글 쓰기
Name
Password
Homepage
Secret

13.I/O 장치(Peripheral) :: 버스의이해 - 2009/02/18 20:52

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 I/O 장치(Peripheral)의 버스 인터페이스 사례를 알아 봅니다.

임베디드 시스템의 네트웍 연결을 가능하게 하는 이더넷컨트롤러 장치, LCD 액정을 구동해 주는 LCD드라이버 장치, UART컨트롤러 장치, 타이머 장치, ATA 인터페이스 장치, USB컨트롤러 장치 이외에도 많은 장치들이 현재 임베디드 시스템에서 사용되고 있습니다.

Figure 1‑1은 마이크로프로세서와 인터페이스 되어 있는 이더넷컨트롤러 장치를 보이고 있습니다. 그림에서도 알 수 있듯이 이더넷컨트롤러는 마이크로프로세서가 직접 제어하는 장치 중의 하나입니다. 해당 장치는 어드레스버스, 데이터버스, 칩셀렉트, 읽고 쓰기 신호를 모두 갖추고 있음으로써 외관상 메모리 장치와 하나도 다를게 없어 보입니다

posted by 가일(guile)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/125 관련글 쓰기
Name
Password
Homepage
Secret

12.버스 쓰기 동작(Bus Write transaction) :: 버스의이해 - 2009/02/14 17:32

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 메모리 버스 쓰기 동작(Bus write transaction)의 원리를 알아 봅니다.

대부분의 경우 위의 절에서 모두 설명을 했기 때문에 이번 절은 설명이 한결 수월 할 것 같네요. Figure 1 1 와 Figure 1 4 은 어떤 차이가 있나요? 그렇습니다. 전자의 경우 /WE 의 상승엣지가 메모리에 기록 되는 시기인 반면 후자인 Figure 1 4의 경우는 /CE의 상승엣지가 그 기록의 시기를 결정 하고 있습니다. /WE 의 상승엣지가 메모리의 기록을 결정 지었다고 해서 Figure 1 1 방식을 /WE CONTROLLED 쓰기라고 부르고 있으며 이에 반해 /CE 의 상승엣지가 메모리의 기록을 결정 지었다고 해서 Figure 1 4방식을 /CE CONTROLLED 쓰기라고 부릅니다. /CE CONTROLLED 쓰기 방식에서의 중요 타이밍 정보는 'tEHDX' 로서 이는 이전의 tWHDX 에 대응되고 있습니다. 

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/118 관련글 쓰기
Name
Password
Homepage
Secret

11.버스 읽기 동작(Bus Read transaction) 하편 :: 버스의이해 - 2009/02/14 17:29

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 메모리 버스 읽기 동작(Bus read transaction)의 원리를 알아 봅니다.

지금까지 버스 읽기 타이밍 분석을 해 보았습니다. 그러면 타이밍 분석 이후 소프트웨어를 이용하여 진행하는 다음 단계에 대하여 알아 보도록 합니다. 설명의 예로서 삼성 S3C2440의 메모리 컨트롤러를 이용 하겠습니다. Figure 1 3은 메모리 컨트롤러의 타이밍 제어기를 프로그램 할 때 참조 해야 하는 그림으로서 주요 신호 부터 알아 보도록 하겠습니다. HCLK는 버스클럭, A[24:0] 어드레스, nGCS 칩셀렉트, nOE 읽기제어, D[31:0](R) 데이터 버스 이외 언급 하지 않은 신호들은 본 예를 위하여는 필요 없으므로 과감히 설명을 생략 합니다

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/117 관련글 쓰기
  • BlogIcon 가일[guile] | 2009/09/29 13:20 | PERMALINK | EDIT/DEL | REPLY

    다음과 같이 본문 글 하단의 오류 정정합니다.
    +++++
    Tacs = 0 cycle, Tcos = 0 cycle, Tacc = 4 cycles, Tacp = 0 cycles, Tcoh = 0 cycle, Tcah = 0 cycles
    +++++

Name
Password
Homepage
Secret

10.버스 읽기 동작(Bus Read transaction) 상편 :: 버스의이해 - 2009/02/14 17:25

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 메모리 버스 읽기 동작(Bus read transaction)의 원리를 알아 봅니다. 지금까지의 강좌는 그동안 이것을 설명하기 위해서 준비된 것이었다고 해도 과언이 아닙니다.

우리가 위와 같은 방법으로 소위 버스 읽기 타이밍을 분석 해 보았는데, 위와 같은 분석이 가능 했던 이유는 읽기 동작에서의 실제 읽기의 시점(time)은 매 버스 클럭의 S4 시기에 이루어 지며 또한 하강엣지(Falling edge) 시기에 이루어 진다는 것을 이미 사전에 알고 있었기 때문입니다. 다시 말하면 읽기 타이밍의 최적화(분석)은 마이크로프로세서가 읽어 가는 시기와 메모리 장치가 유효한 데이터를 릴리스 하는 시기를 각각 확인하여 이를 매칭시켜 주는 작업이라고 이야기 할 수 있겠습니다. 만약, S4 액세스 시기에 해당 장치의 액세스 타임(Access Time)이 이에 미치지 못 할 경우 적당한 추가 클럭(Sw)을 삽입하면 타이밍의 문제는 곧 해결 될 것입니다. 그 요령은 이미 Figure 1 3 에서 설명 한 바 있습니다.

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/116 관련글 쓰기
Name
Password
Homepage
Secret

9.액세스 타임(ACCESS TIME) :: 버스의이해 - 2009/02/14 17:21

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 메모리 버스 읽기 동작(Bus read transaction)의 원리를 알아 봅니다. 지금까지의 강좌는 그동안 이것을 설명하기 위해서 준비된 것이었다고 해도 과언이 아닙니다.

Figure 1 1은 인텔(intel) 사의 플래시 메모리 중 하나인 A28F200BR 의 스펙을 보이고 있습니다. 대부분의 데이터 북들은 보통 첫 페이지에 해당 칩(CHIP)의 특징을 소개하고 있는데요. 적색선을 보시면 이 메모리의 액세스 타임은 80ns 라고 기록 해 놓고 있습니다. 이번 시간에는 이 액세스 타임(ACCESS TIME)이 가진 의미와 해석을 두고 이야기 해 보도록 합니다. 흔히들 "이 메모리 속도가 얼마야" 하고 이야기 할 때 "아 그거! 80 나노  야". 라고 말하는 것을  독자 분들 중에서는 경험하신 분이 혹 있으실 겁니다. 이 숫자가 높으면 느린 메모리 그리고 낮으면 빠른(좋은) 메모리라고 이야기 하는 바로 그것 말입니다. 그렇다면 이 수치가 왜 작을 수록 좋다고 이야기 하는 것일까요?

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/115 관련글 쓰기
Name
Password
Homepage
Secret

8.메모리 컨트롤러 :: 버스의이해 - 2009/02/14 17:19

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 어드레스 디코더의 기능을 수행하는 임베디드 시스템의 핵심 장치인 메모리 컨트롤러를 소개 합니다.

지난 시간에 메모리맵 그리고 어드레스 디코더의 역할을 수행하는 메모리 컨트롤러를 언급한 바 있습니다. 임베디드 시스템에서 이 메모리 컨트롤러는 핵심적인 기능을 수행 합니다. 마이크로 프로세서와 메모리들을 연결시켜 주는 가교의 역할을 수행하지요. 메모리 컨트롤러는 메모리 읽고 쓰기를 요청하는 프로세서의 지령(?)을 받아 해당 메모리로(부터) 쓰기, 읽기를 대행하여 이를 실현합니다. 자, 이런 것을 한번 생각해 봅니다. 메모리 컨트롤러는 자신이 제어 해야 할 장치 메모리에 대한 아무런 정보도 가지고 있지 않습니다. 정보라는 것은 일종의 메모리의 버스 폭(8/16 혹은 32), 용량(Capacity), 그리고 응답 속도(Timing info.) 같은 것 입니다.

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/114 관련글 쓰기
Name
Password
Homepage
Secret

7.어드레스 디코더와 칩셀렉트(CS) :: 버스의이해 - 2009/02/14 17:16

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 어드레스 디코더와 칩셀렉트(CS)에 대해 다루어 봅니다. 그리고 메모리맵에 대한 것도 살짝 이야기 해 보겠습니다.

현대의 마이크로 프로세서는 흔히 SoC(시스템온칩)의 형태로 많이 사용 되곤 하는데, 이때 대부분의 SoC는 메모리 컨트롤러(Memory Controller) 라고 하는 장치를 내장하고 있습니다. 바로 이 메모리 컨트롤러의 주 기능 중의 하나가 칩셀렉트(CS) 신호들을 만들어 내는 '어드레스 디코더'의 기능 입니다. Figure 1 5 은 ARM920T 코어 내장 삼성의 SoC S3C2440 입니다. 참고하세요. Figure 1 5 삼성 S3C2440 의 내부 블럭도 이 개념을 확장하면 다음과 같은 Figure 1 6 의 그림도 설명이 가능하겠는데요. 곧 메모리 맵(Memory Map) 입니다.

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/113 관련글 쓰기
Name
Password
Homepage
Secret

6.메모리 버스 인터페이스-16비트 :: 버스의이해 - 2009/02/14 17:13

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서의 버스 동작의 원리와 그 의의를 알아보도록 합니다.
이번 시간은 지난 시간에 이어 16비트 버스 인터페이스의 사례를 다루어 봅니다.

회로는 각 8비트 메모리의 어드레스는 공통으로 연결하는데 이때 사용되는 어드레스는 시스템버스의 A1 이상이 사용됩니다. 즉 A0 은 사용되지 않습니다. 그 이유는 이미 32비트 메모리 인터페이스에서 자세히 다룬 바 있습니다. 한편, 데이터 버스는 D[31-24], D[23-16] 각각의 바이트레인(BYTE LANE)을 각 메모리의 DQ0-7 에 인터페이스 시킵니다. 물론 빅엔디언 모드에서 그렇습니다. 칩셀렉트 신호(Figure 1 1에서의 /CS3)는 모든 메모리가 공통으로 사용합니다. 이 때문에 모두 2개의 메모리는 하나의 16비트 메모리처럼 동작 할 수가 있게 됩니다. 읽기 신호(R/W, /OE)는 마찬가지로 모든 메모리에 공통적으로 사용됩니다. 그러나, 쓰기 신호(/WE0, /WE1)의 경우는 각각 상위(D[31:24]) 바이트레인, 하위(D[31:24]) 바이트레인 에 대응되어 사용 됩니다. 이 또한 32비트 메모리 인터페이스에서 자세히 다룬 바 있습니다

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/112 관련글 쓰기
Name
Password
Homepage
Secret

5.어드레스(ADDRESS) :: 버스의이해 - 2009/02/14 17:10

디지털 메모리 버스 인터페이스를 통하여 마이크로프로세서 버스 동작의 원리와 그 의의를 알아보도록 합니다.
버스의 이해라는 주제로 강좌를 시작 한 지 이번 회로써 어느덧 제5편이 됩니다. 이 주제(버스의 이해)는 '임베디드 시스템 개발의 ABC' 와 같은 것으로써 펌웨어는 말할 것도 없고 디바이스드라이버 나 이와 동등한 혹은 이보다 하위 레벨에서 시스템을 취급 해야 하는 자라면 달달 외고 있어야 할 중요한 주제라는 것에 대해서는 이전의 칼럼에서도 이미 한차례 언급한 바 있습니다. http://hongikcom.tistory.com/entry/나의-마이크로-프로세서-이야기

이번 시간은 지난 시간에 이어 어드레스(ADDRESS)의 활용 의미에 대해서 한번 생각해 봅니다.

Figure 1 1 은 32비트 메모리 회로를 구성한 예입니다. 지난 시간에 본 적이 있던 그림이기도 한데요. 앞으로 편의상 시스템 버스의 어드레스(ADDRESS)는 A0, A1, A2, … A31 로 표기 하고 메모리의 어드레스 핀(PIN)은 A0`, A1`, A2`, … A31` 로 표기 하도록 약속 합니다. 그림에서 처럼 시스템 버스와 메모리의 어드레스가 연결된 모양을 자세히 보면 이상한 점을 곧 눈치 챌 수 있는데요. 그것은 A0 와 A0` 그리고 A1 와 A1` 이런식으로 일대일(1:1)로 연결되어 있지 않고 어드레스 라인 2개 만큼씩 밀려서 연결(INTERCONNECT) 되어 있다는 사실입니다.( Figure 1 1 의 적색 화살표를 확인 ) 즉, 시스템 버스 A2가 메모리의 A0`에 연결되어 있고 A3가 메모리의 A1`에 연결되어 있는 식으로 말입니다. Figure 1 1 을 보면 이 사실을 알 수 있습니다 

posted by 가일(GUILE)

♡ 포스팅이 유익 하셨다면 E-mail로 가일의 임베디드 스쿨을 구독하세요->

Trackback Address :: http://www.hongikcom.com/trackback/111 관련글 쓰기
  • 류승훈 | 2010/01/18 12:15 | PERMALINK | EDIT/DEL | REPLY

    안녕하세요~~ 님의 임베디드 스쿨에 대해 정보를 얻고자 합니다. ARM,마이크로 프로세서 쪽 홈체이지에 있는 내용을 인쇄를 할려고 하나 글자가 깨진 부분이 있어서 메일로 받아보고 싶습니다.
    leelix@daum.net으로 보내 주시면 감사하겠습니다.

Name
Password
Homepage
Secret
< PREV |  1  |  2  |  NEXT >