SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Downloaden Sie, um offline zu lesen
Funcionamiento de la tarjeta SD.                               Versión 0.0.1
GEDA 2005                                                              2005



Funcionamiento de la tarjeta SD.

Introducción.

Las tarjetas SD (SecureDigital) son tarjetas de memoria Flash
(NAND) con controlador inteligente incorporado. Derivan de las
tarjetas MMC (MultiMediaCard). Son las tarjetas de memoria más
utilizadas en el mercado. Las tarjetas SD, mini-SD y micro-SD son
eléctricamente compatibles entre sí, pero de distintos tamaños.

Hay dos tipos de tarjetas: la SD (original) y SDHC (SD High
Capacity). La SD original puede almacenar hasta 4GB de memoria; la
SDHC, hasta 32GB.

ESTE DOCUMENTO NO REEMPLAZA LA LECTURA DE LOS
MANUALES Y ESPECIFICACIONES PROVISTAS. SOLAMENTE ES
UNA GUÍA INTRODUCTORIA PARA SIMPLIFICAR EL PRIMER
“APPROACH” AL USO DE LAS TARJETAS SD.


Comunicación con el Host.

El Host (microprocesador) se comunica con la tarjeta mediante una
interfaz eléctrica de 9 pines:




Las tarjetas soportan 2 modos de comunicación: Modo SD y Modo
SPI. El Modo SD es el modo nativo, y permite mayor velocidad de
transferencia que el modo SPI. Las ventajas de este último modo son
la simplicidad y la disponibilidad del periférico de comunicaciones SPI
en la mayoría de los microcontroladores. Vamos a ver sólo el modo
SPI.




                                                                          1
Funcionamiento de la tarjeta SD.                                     Versión 0.0.1
GEDA 2005                                                                    2005



Modo SPI.

Pines.

La interfaz consta de 4 pines:

               Pin           Nombre   Funcionalidad
               1             nCS      Chip Select (activo bajo)
               2             MOSI     Entrada de datos
               3             GND      Power
               4             VCC      Power
               5             SCK      Clock
               6             GND      Power
               7             MISO     Salida de datos
               8y9           RSV      Reservados, conectar pullups

Las tarjetas se alimentan en genera con una tensión entre 2.7V y
3.6V. Las entradas y salidas son LVCMOS.

Comunicación.

La transferencia (full duplex) se realiza de a bytes, alineados con la
señal de reloj, MSb primero. La figura muestra el diagrama de
tiempos, visto desde el host (microcontrolador).




Según esta figura, la tarjeta y el host muestrearán las líneas de datos
en el flanco ascendente del clock.




                                                                                2
Funcionamiento de la tarjeta SD.                                       Versión 0.0.1
GEDA 2005                                                                      2005


Velocidad.

En general, la tarjeta SD acepta velocidades de reloj desde 0Hz hasta
25MHz. Sin embargo, durante la inicialización, la línea CLK debe
estar detenida o entre 100KHz y 400KHz.



Protocolo.

Como ya se ha dicho, la transferencia de datos se hace de a bytes. La
comunicación con la tarjeta se basa en comandos de 6 bytes, y
respuestas asociadas.

La estructura de un comando se muestra en la figura.




                •    BYTE 1 (MSB)

                             o Bit 7 (MSb). Siempre 0.
                             o Bit 6. Siempre 1.
                             o Bit 5 a bit 0 (LSb). Comando.

                •    BYTE 2 a 5

                             o Bit 31 (MSb) a bit 0 (LSb). Argumento, big
                               endian.

                •    BYTE 6 (LSB)

                             o Bit 7 (MSb) a bit 1. CRC del comando.
                             o Bit 0 (LSb). Siempre 1.

Luego de la recepción de un comando, la tarjeta debe responder.
Hay varios tipos de respuesta:

          R1 (respuesta a la mayoría de los comandos).
          R1b (respuesta idéntica a R1 + algunos bytes de “busy”).
          R2 (respuesta al comando SEND_STATUS).
          R3 (respuesta a la lectura del registro OCR – se verá más
          adelante).
          Data response (respuesta a la lectura de un sector).
          Write response (respuesta a la escritura de un sector).



                                                                                  3
Funcionamiento de la tarjeta SD.                                      Versión 0.0.1
GEDA 2005                                                                     2005


Respuesta R1.

Respuesta a la mayoría de los comandos. Consta de 1 byte:




Un ‘1’ indica que ha habido un error.


Respuesta de lectura de datos.

Dependiendo del éxito de la operación de lectura, la tarjeta
responderá de dos formas diferentes:

     1. Lectura exitosa.

                     Bloque de n=4 a n=515 bytes de longitud:

                               •   BYTE 1 (MSB). Siempre 0xFE.




                               •   BYTES 2 a n-2. Datos.

                               •   BYTE n-1 y n. CRC de los datos.

     2. Error en el proceso.

                     Un solo byte, con valor dependiente del error:




                                                                                 4
Funcionamiento de la tarjeta SD.                                                   Versión 0.0.1
GEDA 2005                                                                                  2005


Respuesta de escritura de datos.

Luego de enviar un bloque para ser escrito en la tarjeta, ésta
devuelve una respuesta, indicando el estado de la operación de
escritura:




                               •   Status = ‘010’    Data accepted
                               •   Status = ‘101’    Data rejected due to CRC error
                               •   Status = ‘110’     Data rejected due to a write
                                      error


Comandos importantes.

El controlador de la tarjeta acepta varios comandos. Debajo se
exponen     algunos    importantes. Se   obvian  comandos   de
lectura/escritura multibloque, etc.

Command
                           Argument     Response     Abbreviation       Description
Index
CMD0                       None         R1           GO_IDLE_STATE      Software reset.
CMD1                       None         R1           SEND_OP_COND       Initiate initialization process.
                                                                        For       only     SDC.      Initiate
ACMD41                     None         R1           APP_SEND_OP_COND
                                                                        initialization process.
CMD9                       None         R1           SEND_CSD           Read CSD register.
CMD17                      Address[31:0] R1 + DATA   READ_SINGLE_BLOCK Read a block.
CMD24                      Address[31:0] R1          WRITE_BLOCK        Write a block.
                                                                        Leading command of ACMD<n>
CMD55                      None         R1           APP_CMD
                                                                        command.
CMD58                      None         R3           READ_OCR           Read OCR.




Registros.

Para que el Host pueda obtener información sobre la tarjeta (tensión
de funcionamiento, capacidad de almacenamiento, velocidad máxima
de transferencia, etc.), existen dos registros principales que se
pueden leer:




                                                                                              5
Funcionamiento de la tarjeta SD.                     Versión 0.0.1
GEDA 2005                                                    2005


               OCR: Operating Conditions Register.




                     Ejemplo:




                                                                6
Funcionamiento de la tarjeta SD.                                                            Versión 0.0.1
GEDA 2005                                                                                           2005


               CSD: Card Specific Data.

               Proporciona información sobre la tarjeta, como:

                     o    Tamaño del bloque de escritura/lectura
                     o    Capacidad de la tarjeta
                     o    Velocidades de lectura/escritura
                     o    Consumo de corriente
                     o    etc.


Inicialización.

Luego de aplicar tensión a la tarjeta, el controlador interno entra en
modo SD (no modo SPI). Para pasar a modo SPI, hay que seguir los
siguientes pasos para inicializarla1:


               Power Up: Luego de que la alimentación llegue a 2V, esperar 1ms y
               aplicar (como mínimo) 74 pulsos de SCK, con MOSI=nCS=1. Luego de
               esto, la tarjeta responderá a un set reducido de comandos (CMD0,
               ACMD41, etc).
               Soft reset: Enviar CMD0 con nCS=0. La tarjeta detecta que nCS=0
               mientras se recibe CMD0, y entra en modo SPI. Como la tarjeta tiene el
               chequeo de CRC (byte6) activado por default, hay que enviar CMD0 con
               el CRC apropiado. Cuando se pasa al modo SPI, se desactiva
               automáticamente el chequeo de CRC. Si la tarjeta recibe correctamente
               el CMD0, responderá R1 con el bit Idle en 1 (R1 = “Idle” = 0x01). En
               estado Idle, la tarjeta acepta CMD0, CMD1, ACMD41 y CMD58.
               Inicialización: Si se desea saber el rango válido de alimentación de la
               tarjeta, enviar CMD58, y leer R3. Todas las tarjetas deben aceptar VDD
               entre 2.7V y 3.6V, así que muchas veces no es necesario este chequeo.
               Enviar ahora ACMD41 (CMD55+CMD1). Como las MMC no aceptan
               CMD55 (devolverá R1 = “Illegal Command” = 0x04), se podrá detectar
               el tipo de tarjeta conectada (MMC/SD). Para ver las diferencias MMC/SD,
               consultar la documentación provista. Como respuesta a ACMD41, la SD
               devuelve R1=“Idle” hasta que termine la inicialización (R1 = 0x00). El
               host deberá pollear a la tarjeta con ACMD41 hasta que R1 = 0x00.
               Cuando finalice la inicialización, la velocidad de clock de la interfaz podrá
               ser aumentada al máximo (frecuentemente 25MHz; consultar los bits
               apropiados de CSD para más detalles).

               Si la tarjeta es MMC, no reconocerá el comando CMD55. La inicialización
               deberá continuar con CMD1 en lugar de ACMD41. Todo lo demás es
               (casi) idéntico. La velocidad de transferencia máxima es, en gral. 20MHz.

               Si la tarjeta es SDHC, hay que continuar con la secuencia de
               inicialización. No vamos a ver este caso.




1
  Se presupone que el host está configurado con la polaridad, fase y velocidad correcta de CLK (100KHz
a 400KHz para la inicialización). En HC12, CPHA=CPOL=0.


                                                                                                       7
Funcionamiento de la tarjeta SD.                                     Versión 0.0.1
GEDA 2005                                                                    2005


               Ya está!. El host debería enviar CMD9 para obtener información
               específica de la tarjeta, leyendo CSD: velocidad máxima de
               transferencia, capacidad, etc.




                                                                                8
Funcionamiento de la tarjeta SD.   Versión 0.0.1
GEDA 2005                                  2005



Lectura/escritura de 1 bloque:


Lectura




Escritura




                                              9

Weitere ähnliche Inhalte

Andere mochten auch

Unwind segue by benoit capallere
Unwind segue by benoit capallereUnwind segue by benoit capallere
Unwind segue by benoit capallereCocoaHeads France
 
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...Universidad Autónoma de Barcelona
 
#PrestaShopDay - Atelier - Conseils & astuces développement de modules
#PrestaShopDay - Atelier - Conseils & astuces développement de modules#PrestaShopDay - Atelier - Conseils & astuces développement de modules
#PrestaShopDay - Atelier - Conseils & astuces développement de modulesPrestaShop
 
Location auvergne ski & nature
Location auvergne    ski & natureLocation auvergne    ski & nature
Location auvergne ski & natureKarine Le Bris
 
Medias sociaux et éducation
Medias sociaux et éducationMedias sociaux et éducation
Medias sociaux et éducationBenoit Petit
 
Recursos compartidos foro de primer grado
Recursos compartidos foro de primer gradoRecursos compartidos foro de primer grado
Recursos compartidos foro de primer gradoIsis
 
Logement Populaire
Logement PopulaireLogement Populaire
Logement Populairemoubamba
 
Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...
Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...
Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...Universidad Autónoma de Barcelona
 
Présentation 13 sept 2011 ff association france
Présentation 13 sept 2011 ff association francePrésentation 13 sept 2011 ff association france
Présentation 13 sept 2011 ff association franceFieldbus France
 
Maurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva Jersey
Maurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva JerseyMaurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva Jersey
Maurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva JerseyEmbajada de EE.UU. en el Perú
 

Andere mochten auch (19)

Trauma abdominal
Trauma abdominalTrauma abdominal
Trauma abdominal
 
Unwind segue by benoit capallere
Unwind segue by benoit capallereUnwind segue by benoit capallere
Unwind segue by benoit capallere
 
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
Análisis de los contenidos más destacados del nuevo Reglamento de Expedientes...
 
#PrestaShopDay - Atelier - Conseils & astuces développement de modules
#PrestaShopDay - Atelier - Conseils & astuces développement de modules#PrestaShopDay - Atelier - Conseils & astuces développement de modules
#PrestaShopDay - Atelier - Conseils & astuces développement de modules
 
Mb vu par_konk_mariel
Mb vu par_konk_marielMb vu par_konk_mariel
Mb vu par_konk_mariel
 
Presentación Conferencia Terrassa. 20.5.2015.
Presentación Conferencia Terrassa. 20.5.2015.Presentación Conferencia Terrassa. 20.5.2015.
Presentación Conferencia Terrassa. 20.5.2015.
 
Famille Gonzague Melissa Kehr
Famille Gonzague Melissa KehrFamille Gonzague Melissa Kehr
Famille Gonzague Melissa Kehr
 
Location auvergne ski & nature
Location auvergne    ski & natureLocation auvergne    ski & nature
Location auvergne ski & nature
 
Medias sociaux et éducation
Medias sociaux et éducationMedias sociaux et éducation
Medias sociaux et éducation
 
Wikicité - Louise Guay
Wikicité - Louise GuayWikicité - Louise Guay
Wikicité - Louise Guay
 
Recursos compartidos foro de primer grado
Recursos compartidos foro de primer gradoRecursos compartidos foro de primer grado
Recursos compartidos foro de primer grado
 
Actividad 8.0
Actividad 8.0Actividad 8.0
Actividad 8.0
 
Logement Populaire
Logement PopulaireLogement Populaire
Logement Populaire
 
Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...
Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...
Reflexiones de un bloguero laboralista sobre el empleo y la formación. Recopi...
 
Présentation 13 sept 2011 ff association france
Présentation 13 sept 2011 ff association francePrésentation 13 sept 2011 ff association france
Présentation 13 sept 2011 ff association france
 
Maurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva Jersey
Maurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva JerseyMaurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva Jersey
Maurice Auerbach: Distribución de Frutas y Verduras frescas en Nueva Jersey
 
Le Jeu du 21e Siecle
Le Jeu du 21e SiecleLe Jeu du 21e Siecle
Le Jeu du 21e Siecle
 
Me 2
Me 2Me 2
Me 2
 
Mejor framework-pythonoo-solid
Mejor framework-pythonoo-solidMejor framework-pythonoo-solid
Mejor framework-pythonoo-solid
 

Ähnlich wie Documentacion sd

Ähnlich wie Documentacion sd (20)

Mm card 7
Mm card 7Mm card 7
Mm card 7
 
Control hd conmicrocontrolador
Control hd conmicrocontroladorControl hd conmicrocontrolador
Control hd conmicrocontrolador
 
Microcontroladores: Fundamentos de microprocesadores y microcontroladores
Microcontroladores: Fundamentos de microprocesadores y microcontroladoresMicrocontroladores: Fundamentos de microprocesadores y microcontroladores
Microcontroladores: Fundamentos de microprocesadores y microcontroladores
 
Teoria lcd
Teoria lcd Teoria lcd
Teoria lcd
 
Modo protegido
Modo protegidoModo protegido
Modo protegido
 
Display de cristal líquido grágico GLCD
Display de cristal líquido grágico GLCDDisplay de cristal líquido grágico GLCD
Display de cristal líquido grágico GLCD
 
Informe grupo cronos
Informe grupo cronosInforme grupo cronos
Informe grupo cronos
 
Protoolo I2C microcontroladores programacion
Protoolo  I2C microcontroladores programacionProtoolo  I2C microcontroladores programacion
Protoolo I2C microcontroladores programacion
 
Un breve viaje al baremetal hardware hacking
Un breve viaje al baremetal hardware hackingUn breve viaje al baremetal hardware hacking
Un breve viaje al baremetal hardware hacking
 
Procesadores
ProcesadoresProcesadores
Procesadores
 
Adc fpga
Adc fpgaAdc fpga
Adc fpga
 
pic16f877-con-mikroc.pdf
pic16f877-con-mikroc.pdfpic16f877-con-mikroc.pdf
pic16f877-con-mikroc.pdf
 
Micro
MicroMicro
Micro
 
Puerto paralelo
Puerto paraleloPuerto paralelo
Puerto paralelo
 
Puerto paralelo
Puerto paraleloPuerto paralelo
Puerto paralelo
 
Circuitos combinacionales
Circuitos combinacionalesCircuitos combinacionales
Circuitos combinacionales
 
Fundamento de computadores- Motorola 68000
Fundamento de computadores- Motorola 68000Fundamento de computadores- Motorola 68000
Fundamento de computadores- Motorola 68000
 
Intel
IntelIntel
Intel
 
Adaptador de video y red
Adaptador de video y redAdaptador de video y red
Adaptador de video y red
 
Nivelación tecnología 1
Nivelación  tecnología 1Nivelación  tecnología 1
Nivelación tecnología 1
 

Mehr von Arquitecto bogota

Mercadoavanzado.blogspot.com 2010 06-01_archive.html
Mercadoavanzado.blogspot.com 2010 06-01_archive.htmlMercadoavanzado.blogspot.com 2010 06-01_archive.html
Mercadoavanzado.blogspot.com 2010 06-01_archive.htmlArquitecto bogota
 
Gestion de proyectos sesion 2
Gestion de proyectos sesion  2Gestion de proyectos sesion  2
Gestion de proyectos sesion 2Arquitecto bogota
 
Gestion de proyectos sesion 3
Gestion de proyectos sesion 3Gestion de proyectos sesion 3
Gestion de proyectos sesion 3Arquitecto bogota
 
Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...
Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...
Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...Arquitecto bogota
 
Www.hiren.info pages-bootcd-on-usb-disk
Www.hiren.info pages-bootcd-on-usb-diskWww.hiren.info pages-bootcd-on-usb-disk
Www.hiren.info pages-bootcd-on-usb-diskArquitecto bogota
 
Abc del pot(finalísimo-feb-23-09)erg
Abc del pot(finalísimo-feb-23-09)ergAbc del pot(finalísimo-feb-23-09)erg
Abc del pot(finalísimo-feb-23-09)ergArquitecto bogota
 
Proyectos culturales marco_logico
Proyectos culturales marco_logicoProyectos culturales marco_logico
Proyectos culturales marco_logicoArquitecto bogota
 
Recuperación del patrimonio cultural y urbano como recurso turistico
Recuperación del patrimonio cultural y urbano como recurso turisticoRecuperación del patrimonio cultural y urbano como recurso turistico
Recuperación del patrimonio cultural y urbano como recurso turisticoArquitecto bogota
 
Patrimonialización, construcción de identidades puerto santander y meta
Patrimonialización, construcción de identidades puerto santander y metaPatrimonialización, construcción de identidades puerto santander y meta
Patrimonialización, construcción de identidades puerto santander y metaArquitecto bogota
 
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581Arquitecto bogota
 
Turismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombianoTurismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombianoArquitecto bogota
 
Turismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombianoTurismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombianoArquitecto bogota
 
Min comercio politicaturismoyartesanias2009
Min comercio politicaturismoyartesanias2009Min comercio politicaturismoyartesanias2009
Min comercio politicaturismoyartesanias2009Arquitecto bogota
 

Mehr von Arquitecto bogota (20)

civil primer semestre.pptx
civil primer semestre.pptxcivil primer semestre.pptx
civil primer semestre.pptx
 
Lamparas
LamparasLamparas
Lamparas
 
Pdf slide show
Pdf slide showPdf slide show
Pdf slide show
 
Mercadoavanzado.blogspot.com 2010 06-01_archive.html
Mercadoavanzado.blogspot.com 2010 06-01_archive.htmlMercadoavanzado.blogspot.com 2010 06-01_archive.html
Mercadoavanzado.blogspot.com 2010 06-01_archive.html
 
Gestion de proyectos sesion 2
Gestion de proyectos sesion  2Gestion de proyectos sesion  2
Gestion de proyectos sesion 2
 
Gestion de proyectos sesion 3
Gestion de proyectos sesion 3Gestion de proyectos sesion 3
Gestion de proyectos sesion 3
 
Gestion de proyectos
Gestion de proyectosGestion de proyectos
Gestion de proyectos
 
In terrupciones pic
In terrupciones picIn terrupciones pic
In terrupciones pic
 
Test disk paso_a_paso
Test disk paso_a_pasoTest disk paso_a_paso
Test disk paso_a_paso
 
Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...
Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...
Keencode.blogspot.com 2012-04-how-boot-mhdd-from-usb-device.html enter-url-lo...
 
Www.hiren.info pages-bootcd-on-usb-disk
Www.hiren.info pages-bootcd-on-usb-diskWww.hiren.info pages-bootcd-on-usb-disk
Www.hiren.info pages-bootcd-on-usb-disk
 
Abc del pot(finalísimo-feb-23-09)erg
Abc del pot(finalísimo-feb-23-09)ergAbc del pot(finalísimo-feb-23-09)erg
Abc del pot(finalísimo-feb-23-09)erg
 
Sprites en snes
Sprites en snesSprites en snes
Sprites en snes
 
Proyectos culturales marco_logico
Proyectos culturales marco_logicoProyectos culturales marco_logico
Proyectos culturales marco_logico
 
Recuperación del patrimonio cultural y urbano como recurso turistico
Recuperación del patrimonio cultural y urbano como recurso turisticoRecuperación del patrimonio cultural y urbano como recurso turistico
Recuperación del patrimonio cultural y urbano como recurso turistico
 
Patrimonialización, construcción de identidades puerto santander y meta
Patrimonialización, construcción de identidades puerto santander y metaPatrimonialización, construcción de identidades puerto santander y meta
Patrimonialización, construcción de identidades puerto santander y meta
 
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
Dialnet el origendelpatrimoniocomopoliticapublicaencolombia-4019581
 
Turismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombianoTurismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombiano
 
Turismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombianoTurismo y desarrollo en el caribe colombiano
Turismo y desarrollo en el caribe colombiano
 
Min comercio politicaturismoyartesanias2009
Min comercio politicaturismoyartesanias2009Min comercio politicaturismoyartesanias2009
Min comercio politicaturismoyartesanias2009
 

Documentacion sd

  • 1. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 Funcionamiento de la tarjeta SD. Introducción. Las tarjetas SD (SecureDigital) son tarjetas de memoria Flash (NAND) con controlador inteligente incorporado. Derivan de las tarjetas MMC (MultiMediaCard). Son las tarjetas de memoria más utilizadas en el mercado. Las tarjetas SD, mini-SD y micro-SD son eléctricamente compatibles entre sí, pero de distintos tamaños. Hay dos tipos de tarjetas: la SD (original) y SDHC (SD High Capacity). La SD original puede almacenar hasta 4GB de memoria; la SDHC, hasta 32GB. ESTE DOCUMENTO NO REEMPLAZA LA LECTURA DE LOS MANUALES Y ESPECIFICACIONES PROVISTAS. SOLAMENTE ES UNA GUÍA INTRODUCTORIA PARA SIMPLIFICAR EL PRIMER “APPROACH” AL USO DE LAS TARJETAS SD. Comunicación con el Host. El Host (microprocesador) se comunica con la tarjeta mediante una interfaz eléctrica de 9 pines: Las tarjetas soportan 2 modos de comunicación: Modo SD y Modo SPI. El Modo SD es el modo nativo, y permite mayor velocidad de transferencia que el modo SPI. Las ventajas de este último modo son la simplicidad y la disponibilidad del periférico de comunicaciones SPI en la mayoría de los microcontroladores. Vamos a ver sólo el modo SPI. 1
  • 2. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 Modo SPI. Pines. La interfaz consta de 4 pines: Pin Nombre Funcionalidad 1 nCS Chip Select (activo bajo) 2 MOSI Entrada de datos 3 GND Power 4 VCC Power 5 SCK Clock 6 GND Power 7 MISO Salida de datos 8y9 RSV Reservados, conectar pullups Las tarjetas se alimentan en genera con una tensión entre 2.7V y 3.6V. Las entradas y salidas son LVCMOS. Comunicación. La transferencia (full duplex) se realiza de a bytes, alineados con la señal de reloj, MSb primero. La figura muestra el diagrama de tiempos, visto desde el host (microcontrolador). Según esta figura, la tarjeta y el host muestrearán las líneas de datos en el flanco ascendente del clock. 2
  • 3. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 Velocidad. En general, la tarjeta SD acepta velocidades de reloj desde 0Hz hasta 25MHz. Sin embargo, durante la inicialización, la línea CLK debe estar detenida o entre 100KHz y 400KHz. Protocolo. Como ya se ha dicho, la transferencia de datos se hace de a bytes. La comunicación con la tarjeta se basa en comandos de 6 bytes, y respuestas asociadas. La estructura de un comando se muestra en la figura. • BYTE 1 (MSB) o Bit 7 (MSb). Siempre 0. o Bit 6. Siempre 1. o Bit 5 a bit 0 (LSb). Comando. • BYTE 2 a 5 o Bit 31 (MSb) a bit 0 (LSb). Argumento, big endian. • BYTE 6 (LSB) o Bit 7 (MSb) a bit 1. CRC del comando. o Bit 0 (LSb). Siempre 1. Luego de la recepción de un comando, la tarjeta debe responder. Hay varios tipos de respuesta: R1 (respuesta a la mayoría de los comandos). R1b (respuesta idéntica a R1 + algunos bytes de “busy”). R2 (respuesta al comando SEND_STATUS). R3 (respuesta a la lectura del registro OCR – se verá más adelante). Data response (respuesta a la lectura de un sector). Write response (respuesta a la escritura de un sector). 3
  • 4. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 Respuesta R1. Respuesta a la mayoría de los comandos. Consta de 1 byte: Un ‘1’ indica que ha habido un error. Respuesta de lectura de datos. Dependiendo del éxito de la operación de lectura, la tarjeta responderá de dos formas diferentes: 1. Lectura exitosa. Bloque de n=4 a n=515 bytes de longitud: • BYTE 1 (MSB). Siempre 0xFE. • BYTES 2 a n-2. Datos. • BYTE n-1 y n. CRC de los datos. 2. Error en el proceso. Un solo byte, con valor dependiente del error: 4
  • 5. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 Respuesta de escritura de datos. Luego de enviar un bloque para ser escrito en la tarjeta, ésta devuelve una respuesta, indicando el estado de la operación de escritura: • Status = ‘010’ Data accepted • Status = ‘101’ Data rejected due to CRC error • Status = ‘110’ Data rejected due to a write error Comandos importantes. El controlador de la tarjeta acepta varios comandos. Debajo se exponen algunos importantes. Se obvian comandos de lectura/escritura multibloque, etc. Command Argument Response Abbreviation Description Index CMD0 None R1 GO_IDLE_STATE Software reset. CMD1 None R1 SEND_OP_COND Initiate initialization process. For only SDC. Initiate ACMD41 None R1 APP_SEND_OP_COND initialization process. CMD9 None R1 SEND_CSD Read CSD register. CMD17 Address[31:0] R1 + DATA READ_SINGLE_BLOCK Read a block. CMD24 Address[31:0] R1 WRITE_BLOCK Write a block. Leading command of ACMD<n> CMD55 None R1 APP_CMD command. CMD58 None R3 READ_OCR Read OCR. Registros. Para que el Host pueda obtener información sobre la tarjeta (tensión de funcionamiento, capacidad de almacenamiento, velocidad máxima de transferencia, etc.), existen dos registros principales que se pueden leer: 5
  • 6. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 OCR: Operating Conditions Register. Ejemplo: 6
  • 7. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 CSD: Card Specific Data. Proporciona información sobre la tarjeta, como: o Tamaño del bloque de escritura/lectura o Capacidad de la tarjeta o Velocidades de lectura/escritura o Consumo de corriente o etc. Inicialización. Luego de aplicar tensión a la tarjeta, el controlador interno entra en modo SD (no modo SPI). Para pasar a modo SPI, hay que seguir los siguientes pasos para inicializarla1: Power Up: Luego de que la alimentación llegue a 2V, esperar 1ms y aplicar (como mínimo) 74 pulsos de SCK, con MOSI=nCS=1. Luego de esto, la tarjeta responderá a un set reducido de comandos (CMD0, ACMD41, etc). Soft reset: Enviar CMD0 con nCS=0. La tarjeta detecta que nCS=0 mientras se recibe CMD0, y entra en modo SPI. Como la tarjeta tiene el chequeo de CRC (byte6) activado por default, hay que enviar CMD0 con el CRC apropiado. Cuando se pasa al modo SPI, se desactiva automáticamente el chequeo de CRC. Si la tarjeta recibe correctamente el CMD0, responderá R1 con el bit Idle en 1 (R1 = “Idle” = 0x01). En estado Idle, la tarjeta acepta CMD0, CMD1, ACMD41 y CMD58. Inicialización: Si se desea saber el rango válido de alimentación de la tarjeta, enviar CMD58, y leer R3. Todas las tarjetas deben aceptar VDD entre 2.7V y 3.6V, así que muchas veces no es necesario este chequeo. Enviar ahora ACMD41 (CMD55+CMD1). Como las MMC no aceptan CMD55 (devolverá R1 = “Illegal Command” = 0x04), se podrá detectar el tipo de tarjeta conectada (MMC/SD). Para ver las diferencias MMC/SD, consultar la documentación provista. Como respuesta a ACMD41, la SD devuelve R1=“Idle” hasta que termine la inicialización (R1 = 0x00). El host deberá pollear a la tarjeta con ACMD41 hasta que R1 = 0x00. Cuando finalice la inicialización, la velocidad de clock de la interfaz podrá ser aumentada al máximo (frecuentemente 25MHz; consultar los bits apropiados de CSD para más detalles). Si la tarjeta es MMC, no reconocerá el comando CMD55. La inicialización deberá continuar con CMD1 en lugar de ACMD41. Todo lo demás es (casi) idéntico. La velocidad de transferencia máxima es, en gral. 20MHz. Si la tarjeta es SDHC, hay que continuar con la secuencia de inicialización. No vamos a ver este caso. 1 Se presupone que el host está configurado con la polaridad, fase y velocidad correcta de CLK (100KHz a 400KHz para la inicialización). En HC12, CPHA=CPOL=0. 7
  • 8. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 Ya está!. El host debería enviar CMD9 para obtener información específica de la tarjeta, leyendo CSD: velocidad máxima de transferencia, capacidad, etc. 8
  • 9. Funcionamiento de la tarjeta SD. Versión 0.0.1 GEDA 2005 2005 Lectura/escritura de 1 bloque: Lectura Escritura 9