90
29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1 CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata Contacto: [email protected]

CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1

CeTAD (Centro de Técnicas Analógico Digitales)

Facultad de Ingeniería

Universidad Nacional de La Plata

Contacto: [email protected]

Page 2: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2

Temario

Prestaciones.

Principales características.

Elementos de una transferencia.

Enumeración de dispositivos

Page 3: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3

Prestaciones

Una sola interfaz para varios dispositivos.

Configuración automática.

No requiere alimentación externa.

Conexión y desconexión con alimentación.

Buena velocidad de transferencia.

Cables y conectores estándar.

Page 4: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 4

Principales Características

Componentes del Bus

Dispositivos USB.

Host USB.

Hub USB.

Host

Root Hub DispositivoDispositivo

Hub

Dispositivo

DispositivoDispositivo

Hub

Dispositivo

Dispositivo

Dispositivo compuesto

Page 5: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 5

Principales Características

Componentes del Bus

Host USB: Responsabilidades.

Detección de dispositivos.

Proveer alimentación.

Administrar el tráfico del bus.

Chequeo de errores.

Page 6: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6

Principales Características

Componentes del Bus

Dispositivos USB: Responsabilidades.

Administración de la alimentación.

Responder a solicitudes estándar.

Chequeo de errores.

Page 7: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 7

Principales Características

USB On-The-Go (OTG)

Permite conectar dispositivos

directamente entre sí y con

otros periféricos USB.

On-The-Go es un suplemento para la

especificación USB 2.0

Limitada capacidad de función de host.

Page 8: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 8

Principales Características

Velocidad de Transferencia

Especificación USB 1.0 define:

“Low Speed” a 1,5 Mbits/s.

“Full Speed” a 12 Mbits/s.

Especificación USB 2.0 incorpora:

“High Speed” a 480 Mbits/s.

Page 9: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9

Principales Características

Eléctricas y Mecánicas

A nivel de señal.

Transferencias de datos utilizando líneas de

datos diferenciales.

Para “full speed” y “high speed”: impedancia

diferencial de 90 ohm.

Page 10: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10

A nivel eléctrico.

Bus USB integrado por cuatro conductores:

“Vbus”: línea de alimentación, 5V nominal.

“GND”: tensión de referencia.

“D+” y “D-”: integran el par de señales

diferenciales de datos.

Principales Características

Eléctricas y Mecánicas

Page 11: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11

Elementos de una

Transferencia Endpoints.

Pipes.

Tipos de Transferencias.

Transferencias y transacciones.

Fases de una transacción.

Chequeo de error.

Page 12: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12

Elementos de una Transferencia

EndpointsBuffer que almacena datos.

El tráfico viaja desde o hacia los endpoints de cada

dispositivo.

Contiene datos recibidos o datos a ser transmitidos.

La dirección de un endpoint está compuesta por el número de

endpoint y su sentido:

Número de 1 a 15.

Sentido: “in” para transmisión, “out” para recepción.

Page 13: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13

Elementos de una Transferencia

Pipes (tuberías)

Asociación entre el endpoint de un dispositivo

y el software del host.

Son establecidas durante el proceso de

enumeración.

El host las remueve al retirar el dispositivo.

Page 14: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 14

Elementos de una Transferencia

Tipos de transferencias

De control.

“Bulk”.

“Interrupt”.

“Isochronous”.

Page 15: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 15

Elementos de una Transferencia

Tipos de transferencias

Transferencia de control:

Utilizadas por el host durante el proceso de

enumeración.

Es el único tipo definido en la especificación

USB.

Page 16: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 16

Elementos de una Transferencia

Tipos de transferencias

Transferencia “Bulk”:

Se usa para transferencia masiva de

datos en casos que la velocidad de

transferencia no sea crítica.

Utilizada por dispositivos “full speed” y

“high speed”.

Page 17: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 17

Elementos de una Transferencia

Tipos de transferencias

Transferencia “Interrupt”:

Utilizada por dispositivos que requieren

la atención del host periódicamente.

Única forma de transferencia en

dispositivos “low speed”.

Page 18: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 18

Elementos de una Transferencia

Tipos de transferencias

Transferencia “Isochronous”:

Tienen garantizado el tiempo de envió.

Sin corrección de errores.

Utilizada por dispositivos “full speed” y

“high speed”.

Page 19: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 19

Elementos de una Transferencia

Transferencias y transacciones

Transferencia: proceso de establecer y

transportar las solicitudes de comunicación.

Cada transferencia se forma por una o varias

transacciones.

Transacción: prestación de un servicio a un

endpoint.

Page 20: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 20

Elementos de una Transferencia

Transferencias y transacciones

Cada Transacción está formada por 1, 2 o 3

paquetes.

Cada transacción incluye:

Identificación.

Chequeo de errores.

Información de control.

Todos los datos a enviar.

Una transacción no puede ser interrumpida.

Page 21: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 21

Elementos de una Transferencia

Transferencias y transacciones

Fases de una transferencia:

Paquete de “Token”.

Paquete de datos.

Paquetes de “Handshake”

Page 22: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 22

Elementos de una Transferencia

Transferencia

Transacción Transacción Transacción

Token Datos Handshake

PID Dirección Endpoint CRC PID Datos CRC PID

Page 23: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 23

Elementos de una Transferencia

Chequeo de errores

Se incorpora en cada paquete bits para el

chequeo de errores.

Se utiliza el algoritmo llamado

“Comprobación de redundancia cíclica”

(CRC).

Page 24: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 24

Enumeración de dispositivos

Descripción.

Proceso de enumeración.

Descriptores.

Jerarquía de descriptores.

Page 25: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 25

Enumeración de dispositivos

Descripción

Utiliza transferencias de control.

Asigna una dirección física al dispositivo.

Carga el controlador del dispositivo.

Selecciona características de operación del

dispositivo.

Selecciona endpoints a utilizar.

Page 26: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 26

Enumeración de dispositivos

Proceso

1. El “root hub” informa al host la conexión del

nuevo dispositivo.

2. Se aplica un reset al dispositivo y luego se le

asigna una dirección física.

3. El host obtiene información del dispositivo.

Page 27: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 27

Enumeración de dispositivos

Proceso

4. Selecciona una característica de operación

del dispositivo.

5. Selecciona y configura endpoints a utilizar.

6. Carga el controlador especifico del dispositivo.

Page 28: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 28

Enumeración de dispositivos

Descriptores

Bloques de información.

Describen alguna característica del

dispositivo.

Son utilizados durante el proceso de

enumeración.

Page 29: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 29

Enumeración de dispositivos

DescriptoresTipos principales:

De dispositivo.

De configuración.

De interfaz.

De endpoint.

“String”.

Page 30: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 30

Enumeración de dispositivos

Jerarquía de descriptores

Descriptor de dispositivo

Descriptor de

Configuración

Descriptor de

Configuración

Descriptor

de Interfaz

Descriptor

de Interfaz

Descriptor

de endpoit

Descriptor

de endpoit

Descriptor

de endpoit

Descriptor

de endpoit

Page 31: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1

CeTAD (Centro de Técnicas Analógico Digitales)

Facultad de Ingeniería

Universidad Nacional de La Plata

Page 32: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2

Temario

Descripción.

Controlador.

Funciones del controlador.

Estándares.

Controlador OHCI.

Page 33: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3

Procesa y gestiona los cambios de configuración que

ocurren en el bus.

Administra el sistema y los recursos del bus

(memoria del sistema, ancho de banda y la

alimentación).

Realiza la configuración automática de los

dispositivos y la detección de su desconexión.

Un host puede soportar uno o más buses USB.

Descripción

Page 34: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 4

Descripción Administra cada bus independientemente de los

demás.

Cada bus está conectado al host a través de un

controlador del host.

Sólo hay un host en cada sistema USB.

El sistema host abarca:

1. interfaz USB

2. controlador de host (puede estar implementado como

combinación de hardware, y software).

Posee un hub raíz que provee puntos de interconexión

al bus.

Page 35: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 5

ControladorIntegrado por el hardware y el software que permite la

conexión de dispositivos al host.

Es el agente iniciador del bus, es decir, que comienza

las transferencias en el bus.

Es el master en un bus USB.

En la arquitectura USB sólo hay un controlador host por

cada bus USB (no se requiere arbitraje).

Page 36: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6

Funciones del ControladorA nivel hardware

El host USB interactúa con los dispositivos USB a travésdel controlador, cuyas funciones básicas son:

Detectar la inserción o desconexión de dispositivosUSB

Reconocer los dispositivos conectados y realizar laconfiguración.

Administrar el flujo de control entre el host y losdispositivos, es decir, la información que se muevecon el objeto de mantener el orden dentro de loselementos del sistema.

Page 37: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 7

Funciones del ControladorA nivel hardware

Gestionar el flujo de datos entre el host y los

dispositivos.

Determinar estadísticas de actividad y estado de los

elementos del sistema.

Proveer una cantidad limitada de energía a los

dispositivos conectados.

Page 38: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 8

Funciones del ControladorA nivel software

Enumeración y configuración de los dispositivos

conectados al sistema.

Administración y control de transferencias síncronas

de información.

Administración y control de transferencias

asíncronas.

Page 39: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9

Estándares Universal Host Controller Interface (UHCI).

Definido por Intel, requiere licencia.

El software tiene mayor responsabilidad.

Open Host Controller Interface (OHCI).

Licencia libre.

El hardware tiene mayor responsabilidad.

Mayor dificultad de implementación.

Enhanced Host Controller Interface (EHCI).

Describe la interfaz para el host a nivel de registros

Licenciada por intel

Page 40: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10

Controlador OHCI

Descripción a nivel de registros para la

implementación de un controlador Host USB.

Permite diseñar una interfaz de software común

para diferentes fabricantes de controladores

Host USB.

Facilita la tarea de escritura del código de

aplicación.

Page 41: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11

Controlador OHCI

Software

Hardware

Dispositivo USB

Controlador host

Driver del controlador

Software de Aplicación

Ámbito de la

especificación

OHCI

Page 42: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12

ImplementaciónDiseño del PCB

Consideraciones para “full speed”:

Impedancia diferencial de 90 ohm entre las líneas D+

y D-.

Plano de tierra continuo.

Líneas paralelas.

Evitar utilizar vias.

Page 43: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13

W S W

T

HPlano de

tierra

Se calcula considerando la formula de la impedancia

diferencial de dos líneas de microtira sobre un plano

de tierra.

Ejemplo: Para T=0,65 mils (1/2 OZ cobre) y H=62 mils seobtiene que W=16 mils y S=7 mils.

Calculo de la impedancia

diferencial

Page 44: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1

CeTAD (Centro de Técnicas Analógico Digitales)

Facultad de Ingeniería

Universidad Nacional de La Plata

Page 45: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2

Temario

Características principales.

Descripción de la interfaz.

Protocolo de bus SPI.

Protocolo de bus SD.

Page 46: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3

Las tarjetas “Secure Digital”, SD, son tarjetas

de memoria basadas en la tecnología flash.

Diseñadas específicamente para satisfacer

necesidades de seguridad, capacidad y

performance.

Actualmente se utilizan en aplicaciones de

almacenamiento masivo.

Características Principales

Page 47: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 4

Características Principales Tensión de alimentación: 2.7 a 3.6 V.

Funcionamiento: sólo lectura o lectura y escritura.

Velocidad del bus (utilizando 4 líneas de datos

paralelas).

Por defecto: con señales de 3.3V, frecuencia

hasta 25 MHz, hasta 12.5 Mb/s.

Modo de alta velocidad: con señales de 3.3 V,

frecuencia hasta 50 MHz, hasta 25 Mb/s.

Page 48: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 5

Características Principales Corrección de errores: en cada transferencia de

datos o comandos.

Protección contra escritura: utilizando switch

mecánico o configuración interna.

Detección de tarjetas: cuando se insertan o retiran,

el host detecta esta acción.

Comando específicos para la aplicación.

Incorporan mecanismos para protección de

contenido.

Page 49: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6

Características Principales

Capacidad de las memorias:

Capacidad estándar (SDSC): hasta 2 GB.

Alta capacidad (SDHC): más de 2 GB hasta los

32 GB.

Capacidad extendida (SDXC): más de 32 GB.

Modo de operación: el bus de datos tiene dos

modos de configuración y operación, el modo SD

y el modo SPI.

Page 50: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 7

Características Principales Clases de tarjetas: de acuerdo a su velocidad, indican

la performance mínima de una tarjeta.

Clase 0: esta clase no especifica performance, se

define para incluir a todas las tarjetas anteriores a

la especificación.

Clase 2: tienen una performance de 2 MB/s o más.

Clase 4: tienen una performance de 4 MB/s o más.

Clase 6: tienen una performance de 6 MB/s o más.

Clase 10: tienen una performance de 10 MB/s o

más.

Page 51: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 8

Características Principales Las tarjetas SD contienen un microprocesador que le

otorga algunas características específicas propias de

esta interfaz:

Independencia del host en relación con los detalles

de la forma de borrado y programación de la

memoria flash.

Sistema de corrección de errores.

Control de la alimentación para reducción del

consumo.

Page 52: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9

Características Principales

Soporte al requerimiento de conexión en caliente, “hot

insertion”, a través del conector.

El bus de las tarjetas SD está integrado por un único

máster (el host) y múltiples esclavos (las tarjetas). Las

líneas de alimentación y reloj son comunes a todas las

tarjetas, la línea de comando y de datos pueden o no

ser común a todas las tarjetas.

Page 53: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10

Descripción de la interfaz

Las tarjetas SD tienen nueve contactos ubicados en

una de sus caras. Una línea de reloj, tres de

alimentación, cuatro de datos y una de comando.

Protocolos de comunicación:

SD de 4 bits.

SD de 1 bit.

SPI.

Page 54: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11

Descripción

de la interfazArquitectura interna de una

tarjeta SD

Page 55: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12

Descripción

de la interfaz

Topología del bus en el modo

SD de 4 bits.

Page 56: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13

Descripción de la interfazTopología del bus en el modo SPI.

HOST

MISO

CLK

MOSICS

9

1

2

3

4

5

6

7

8

VSS

VDD

Page 57: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 14

Protocolo de bus SPI

Basado en un subconjunto del protocolo SD.

El estándar SPI sólo define la topología física.

La ventaja de su utilización es la sencillez de la

interfaz a nivel hardware.

Su mayor desventaja es la perdida de performance.

Page 58: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 15

Protocolo de bus SPI Cada comando o bloque de datos está constituido por

8 bytes en sincronía con la señal de la línea CS.

Los mensajes SPI se integran por comandos,

respuestas y bloques de datos.

Toda comunicación tiene lugar entre una tarjeta y el

host, este último da inicio a la comunicación al

cambiar el estado de la línea CS a bajo.

La tarjeta elegida siempre debe responder al

comando.

Page 59: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 16

Protocolo de bus SD Basada en un protocolo de comando y respuesta.

Los comandos o secuencias de datos inician con un

bit de inicio y terminan con un bit de finalización. Cada

trama contiene bits de detección de errores.

Partes integrantes de una transferencia:

Comando.

Respuesta.

Datos.

Page 60: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 17

Protocolo de bus SD

Comando Comando Respuesta

DAT

Operación (sin respuesta) Operación (sin datos)

CMD

Del host a la

tarjeta(s)

Del host a

una tarjeta

De una tarjeta

al host

DAT

CMD

Del host a

la tarjeta

De la tarjeta

al host

Bloque datos crc

Respuesta

Bloque datos crc

Comando Respuesta

Bloque datos crc

Operación lectura de un bloque

Operación lectura de múltiples bloques

Operación de parada

Comandos de parada

Finalización de la transferenciaDatos de la

tarjeta al host

Comando

Operación sin respuesta y sin datos

Operación de lectura

Page 61: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 18

Protocolo de bus SDDescripción de funcionamiento

Existen dos tipos de comandos:

Comandos de broadcast.

Comandos de direccionamiento.

Existen dos modos de funcionamiento para las

tarjetas SD y para el host:

Modo identificación de tarjeta.

Modo transferencia de datos.

Page 62: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 19

Protocolo de bus SDModos de operación

Modo de operación Estado de la tarjeta

Inactivo Estado inactivo

Modo de identificación

de tarjeta

“Idle State”

“Ready State"

“Identification State”

Modo de transferencia

de datos

“Stand-by State”

“Transfer State”

“Sending-data State”

“Receive-data State”

“Programming State”

“Disconnect State”

Page 63: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 20

Protocolo de bus SDModo identificación de tarjeta

El proceso de identificación se realiza a una

frecuencia de reloj entre 100 y 400 kHz.

Activado el bus, el host solicita las condiciones de

operación de cada tarjeta. Se analiza cada respuesta y

se envía al estado inactivo a las tarjetas incompatibles

y al estado “Ready State” a las compatibles.

Page 64: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 21

Protocolo de bus SDProceso de identificación

Power CMD 0 “Idle State” CMD 8

ACMD 41

Resp.?

SI

Tarjeta SDHC Tarjeta SDSC

NO

Page 65: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 22

Protocolo de bus SDProceso de identificación

CMD 2 CMD 3ACMD 41 Busy?

SI

Modo de

transferencia

NOGET CID

GET

RCA

CMD 9GET

CSD

CMD 7

ACMD 6

4 Bits

CMD 16Tamaño de

bloque

“Stand – by”

Page 66: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 23

Protocolo de bus SDModo transferencia de datos

Sólo una tarjeta pueda estar en el modo de

transferencia al mismo tiempo. Las restantes deben

encontrarse en el estado “Stand - by”.

El ancho del bus durante el proceso de configuración

es de un bits. Finalizado este proceso correctamente,

el host, puede cambiar el ancho del bus a cuatro bits.

Frecuencia de reloj máxima 50 MHz.

Page 67: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 24

Protocolo de bus SDModo transferencia de datos

Poseen dos mecanismos de protección contra

escritura:

Mecánica: por una ranura en el costado de la

tarjeta que, el conector, debe chequear.

Interna: protegida permanentemente por el

fabricante o por password.

Page 68: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 25

Protocolo de bus SDCondiciones de error

Todos los comandos y paquetes de datos son

protegidos utilizando bits de CRC.

Si falla el chequeo de estos bits la tarjeta no

responde, el comando no se ejecuta y, por lo tanto, la

tarjeta nunca cambia de estado.

Cada comando se deberá ejecutar en un tiempo

determinado o, de lo contario, enviar un mensaje de

error.

Page 69: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 26

Protocolo de bus SDComandos y respuestas

Longitud fija de 48 bits, protegido por CRC.

Incluyen un bit que indica la dirección de transmisión,

el sentido hacia el host se indica con “1”.

Formato general de un comando:

Posición de

bits47 46 [45:40] [39:8] [7:1] 0

Ancho

(bits)1 1 6 32 7 1

Valor „1‟ „0‟ x x x „1‟

DescripciónBit de

inicio

Bit de

transmisión

Índice de

comandoArgumento CRC7

Bit de

finalización

Page 70: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 27

Protocolo de bus SDComandos y respuestas

Tipos de respuestas:

Tipo R1: envía el estado de la tarjeta.

Tipo R2: tamaño de 136 bits. Envía el registro CID o

CSD.

Tipo R3: no tiene bits de CRC. Envía el registro OCR.

Tipo R6: respuesta a la solicitud de RCA.

Tipo R7: indica la tensión de alimentación

soportada por la tarjeta.

Page 71: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 28

Protocolo de bus SDRegistros

Se definen seis registros dentro de una tarjeta:

Registro OCR: almacena el perfil de alimentación de

la tarjeta.

Registro CID: contiene información sobre

identificación de la tarjeta.

Registro CSD: define el formato de los datos, tipo de

corrección de errores, tiempo de acceso de los

datos.

Page 72: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 29

Protocolo de bus SDRegistros

Registro RCA: almacena la dirección relativa de la

tarjeta.

Registro DSR: opcional. Especifica características

extendidas del bus.

Registro SCR: opcional. Especifica características

opcionales del fabricante.

Page 73: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1

CeTAD (Centro de Técnicas Analógico Digitales)

Facultad de Ingeniería

Universidad Nacional de La Plata

Page 74: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2

ImplementaciónMicrocontrolador NXP LPC2300/2400

Arquitectura ARM7.

Controlador USB 2.0 “full speed”:

Dos puertos USB.

Operables como dispositivo, host u OTG.

Memoria RAM dedicada de 16 Kbits.

El controlador host USB utiliza el estándar OHCI.

Page 75: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3

ImplementaciónMicrocontrolador NXP LPC2300/2400

Controlador SD y MMC.

Secure Digital Memory Card Physical Specification, v0.96.

Operable como host SD para una única tarjeta.

Control de la alimentación por un pin perteneciente al controlador.

Page 76: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 4

Diagrama en bloques del controlador

Host USB LPC2300/2400.

Page 77: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 5

Circuito esquemático

LPC2300

LPC2400

Page 78: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6

Diagrama en bloques del controlador

SD LPC2300/2400.

Page 79: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 7

Circuito esquemático.

LPC 2300

LPC 2400Conector

SD

Power

Líneas de datos

D[0:3]

Línea de

Comando

WP

CP

EnaOUT

IN

3,3V

Page 80: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 8

Notas de aplicación.

NXP USB Host Lite (AN10703).

Librerias “Description of the LPC23xx/24xx Example

Software Package” NXP.

Librería FAT FS. Aplicación de lector SD y sistema de archivo

FAT 32

Page 81: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9

Ejemplo de Implementación.

Kit de desarrolloDiseño propio utilizando microcontrolador NXP LPC2478.

Incluye:

Implementación de un host USB con dos puertos operable

en “full speed”. Alimentación de cada puerto controlada y

protegida por sobre corriente.

Implementación de host SD con detección de inserción de

tarjeta y protección contra escritura en forma mecánica.

Programación en sistema por puerto serie.

Page 82: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10

Kit de desarrollo

Page 83: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11

Interfaz USB

Page 84: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12

Aplicación Host USB y SD

Frecuencia de reloj del sistema de 66 MHz.

Se configura el controlador Host USB y se da soporte a

dispositivos de la clase de almacenamiento masivo.

Configuración del controlador SD.

Reconoce tarjeta SDSC y SDHC.

Frecuencia de reloj de 16,5 MHZ en modo de transferencia.

Page 85: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13

Aplicación Host USB y SD

Controlado por cuatro pulsadores.

Visualización desde la PC.

Reloj de tiempo real.

Sistema de archivo FAT32.

Accede a la memoria de dispositivos de

almacenamiento masivo y tarjetas SD.

Permite listar, copiar y eliminar archivos y carpetas.

Page 86: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 14

Kit de desarrollo con dispositivos

Page 87: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 15

Se comprueba el funcionamiento del sistema

desarrollado copiando un archivo de 29,360 Mb de un

pen drive a otro o desde la tarjeta hacia un pen drive.

Copia exitosa libre de errores.

Correcto funcionamiento de la interfaz USB.

Excelente desempeño de la interfaz SD.

Resultados Obtenidos.

Page 88: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 16

Resultados Obtenidos.

Tiempo de transferencia

Tiempo

(segundos)

Transferencia

desde hacia

60 USB 1 ó USB 2 SD

58 SD USB 1ó USB 2

50 SD SD

93 USB 1 USB 2

92 USB 2 USB 1

Page 89: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 17

Conclusiones.A nivel hardware:

Sencillez de diseño.

Escasos componentes adicionales.

A nivel software:

Código de programa portable.

Sencilla utilización del microcontrolador.

Buen desempeño.

Numerosos errores en notas de aplicación.

Page 90: CeTAD (Centro de Técnicas Analógico Digitales) Facultad de

29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 18

¿Preguntas?