vista previa de la programación en

38
Vista previa de la programación En- Sistema (In-System) Basic In-System Programming: El programador ISP Xeltek SuperPro IS01 apoyado por la mayor biblioteca en el mundo de dispositivos ISP que contienen algoritmos de programación en serie para 8.044 circuitos integrados CI’s programables procedentes de 155 fabricantes; todas las interfaces seriales comunes son compatibles: I2C, SPI, UART, BDM, MON, MW, JTAG, CAN, ICC y RS232. La biblioteca básica ISP está disponible para su descarga inmediata a través del Software Xeltek ISP . Todo el desarrollo del algoritmo de ISP en Xeltek es estrictamente compatible con las especificaciones de programación del fabricante del dispositivo IC. Uno de los aspectos más frustrantes de programación ISP es la incertidumbre de éxito debido a diseño al azar, que dependen de variables. Las consideraciones de diseño de circuitos y las disposiciones adecuadas de la interfaz para ISP varían en un amplio intervalo. La librería de dispositivos CI’s en ISP Xeltek online soporta la programación manual con tres velocidades de programación seleccionables por el usuario. A menudo, los diseños más desafiantes con sub-interfaces estándar de ISP pueden ser programados con éxito a través de una de las velocidades más bajas. El SuperPro IS01 es perfecto para aplicaciones de ingeniería, desarrollo y soporte. IS01 establece el estándar para el rendimiento, la versatilidad y la cobertura del dispositivo. El Equipo de Desarrollo de Algoritmo de Xeltek adquiere proactivamente nuevas muestras de dispositivos programables emergentes en serie para la incorporación en la biblioteca de circuitos integrados. Bajo Volumen de producción: Para la producción de bajo volumen de chips, la programación de la producción manual es fácilmente compatible con el modo Autónomo (Stand-Alone Mode ). Una vez que los algoritmos de dispositivo se descargan, se crean los archivos del proyecto y se almacena en la tarjeta SD IS01 – la conexión PC / USB ya no se requiere. En modo autónomo, el SuperPro IS01 puede ser operado a través del teclado y la pantalla LCD incorporada. En muchos casos, la unidad a programar también puede ser alimentada por el programador. Diseñado para el uso industrial, todas las conexiones ISP están en modo seguro durante los ciclos de programación. Sin temor a daños, el cableado ISP se puede mover a la siguiente unidad en la cola de producción. La programación automatizada se puede escalar fácilmente mediante la adición de programadores. Los ingenieros de test de producción desarrollan un cableado personalizado, accesorios de test y plantillas para mejorar aún más la productividad. Los algoritmos descargables puede que sólo usen la velocidad de programación más

Upload: marco-antonio-yujra-gutierrez

Post on 24-Nov-2015

66 views

Category:

Documents


3 download

TRANSCRIPT

Vista previa de la programacin En-Sistema (In-System)Basic In-System Programming:Elprogramador ISP XeltekSuperPro IS01apoyado por la mayorbiblioteca en el mundo de dispositivos ISPque contienen algoritmos de programacin en serie para 8.044 circuitos integrados CIs programables procedentes de 155 fabricantes; todas las interfaces seriales comunes son compatibles:I2C, SPI, UART, BDM, MON, MW, JTAG, CAN, ICC y RS232. La biblioteca bsica ISP est disponible para su descarga inmediata a travs delSoftware Xeltek ISP. Todo el desarrollo del algoritmo de ISP en Xeltek es estrictamente compatible con las especificaciones de programacin del fabricante del dispositivo IC.Uno de los aspectos ms frustrantes de programacin ISP es la incertidumbre de xito debido a diseo al azar, que dependen de variables. Las consideraciones de diseo de circuitos y las disposiciones adecuadas de la interfaz para ISP varan en un amplio intervalo. La librera de dispositivos CIs en ISP Xeltek online soporta la programacin manual con tres velocidades de programacin seleccionables por el usuario. A menudo, los diseos ms desafiantes con sub-interfaces estndar de ISP pueden ser programados con xito a travs de una de las velocidades ms bajas.El SuperPro IS01 es perfecto para aplicaciones de ingeniera, desarrollo y soporte. IS01 establece el estndar para el rendimiento, la versatilidad y la cobertura del dispositivo. El Equipo de Desarrollo de Algoritmo de Xeltek adquiere proactivamente nuevas muestras de dispositivos programables emergentes en serie para la incorporacin en la biblioteca de circuitos integrados.Bajo Volumen de produccin:Para la produccin de bajo volumen de chips, la programacin de la produccin manual es fcilmente compatible con elmodo Autnomo (Stand-Alone Mode).Una vez que los algoritmos de dispositivo se descargan, se crean los archivos del proyecto y se almacena en la tarjeta SD IS01 la conexin PC / USB ya no se requiere. En modo autnomo, el SuperPro IS01 puede ser operado a travs del teclado y la pantalla LCD incorporada. En muchos casos, la unidad a programar tambin puede ser alimentada por el programador.Diseado para el uso industrial, todas las conexiones ISP estn en modo seguro durante los ciclos de programacin. Sin temor a daos, el cableado ISP se puede mover a la siguiente unidad en la cola de produccin. La programacin automatizada se puede escalar fcilmente mediante la adicin de programadores. Los ingenieros de test de produccin desarrollan un cableado personalizado, accesorios de test y plantillas para mejorar an ms la productividad. Los algoritmos descargables puede que slo usen la velocidad de programacin ms rpida posible en los casos en que los puentes de aislamiento fueron especficamente diseados para apoyar ISP y la interfaz serial es de 20 cm o menos. Muchos de nuestros desarrollos de nuevos productos y especialistas de produccin limitada son capaces de utilizar la biblioteca de chips CIs estndar as como con buenos resultados.Produccin de alto volumen:Para alto volumen y / o aplicaciones de produccin continua, el SuperPro IS01 puede ser operado utilizando una interfaz ATE integrada o a travs de un controlador de USB compatible con LabView. Para los sistemas de pruebas personalizadas, tenemosuna DLL y la interfazAPI. La interfaz de ATE puede ser utilizada para operar el IS01 en modo autnomo. Cinco bits en paralelo permiten la seleccin de uno de los 63 archivos de proyecto almacenados. Una vez que el archivo de proyecto es seleccionado, la programacin se inicia a travs de un cambio de estado en la Lnea de salida y se informa del fin de tarea sobre la lnea del Estado.En los sistemas completamente automatizados, se recomiendan dos unidades SuperPro IS01 para poder conseguir una gran ventaja. Un SuperPro IS01 proporciona una capacidad de prueba de ingeniera muy eficiente. El ingeniero de test puede validar la unidad en la programacin de forma manual y guardar un conjunto completo de archivos de proyecto en la tarjeta SD. La tarjeta SD puede ser movido fsicamente a un segundo conjunto de tarjetas SuperPro IS01 que han sido permanentemente integrados en un soporte de accesorios ICT (ICT fixture). Una caracterstica atractiva de IS01 es que automticamente se encender en modo autnomo cuando detecte que la pantalla LCD y el teclado no estn conectados.Las soluciones personalizadas OEM basados en los diseos de referencia de Xeltek ISP estn disponibles para cumplir los requisitos de interfaz de software y hardware especficos del cliente.Programacin In- Circuit (ICP) / Programacin In System / Programacin SerialQue es la programacin ISP?Programacin In-System(ISP), tambin conocida como programacin in-circuit (ICP), programacin serial o programacin in-circuit serial (ICSP) permite una programacin y reprogramacin de microcontrollers, serials EEPROMs y memorias flash soldados en una tarjeta PCB.Como Xeltek puede ayudar con la programacin in-system?Las herramientas in-system de Xeltek proporcionan un conveniente mtodo para la configuracin de microcontroladores y varios dispositivos serial.Los usuarios pueden eliminar la necesidad de extraer fsicamente los chips del sistema y simplemente programar microcontroladores, memorias Flash, PLDs, y FPGAs via cable ISP. Los dispositivos son programados en el sistema o en el hardware, hacindo las aplicaciones de campo ms convenientes.Normalmente, Un cambio o salto de DIP permite la programacin in-system y un conjunto de concetores de programacin serial (tales como conectores IDC) connecta la placa base a un programador ISP.Que opciones de programacin en-circuito hay disponibles?1)Bajo a Medio Volumen de ProduccinProgramador Recomendado :SuperPro IS01SuperPro IS01 es un programador serial multifuncional y profesional, compacto en tamao, alta velocidad de programacin, gran estabilidad y tiene un altorendimiento. Soporta la mayora de dispositivos serial programables y es perfecto para in-system o aplicaciones.Caractersticas: Alta Velocidad de Programacin. Soporte online (USB2.0 high-speed) y offline (modo stand-alone ) simultneamente Soporta varios protocolos ISP tales como I2C, SPI, UART, BDM, MW, JTAG, CAN y RS232. Tiene la interfaz equipos de test automticos estndar (ATE) para facilitar las operaciones y controles de sistemas ATE externos. Tiene proteccin contra sobrecorriente para prolongar y proteger equipos externos Se puede utilizar en muchas aplicaciones, tales como I + D, la produccin en masa y las actualizaciones de campo La integracin de terceros simple utilizando el controlador LabVIEW y DLL.Tiene poteccin de sobrecalentamiento2)Medio y Alto Volumen de Produccin (Programacin Gang In system)Programa Recomendado:SuperPro IS03SuperPro IS03 es un programador Gang avanzado in-system y programa de hasta 16 dispositivos en serie al mismo tiempo. Hasta 4 dispositivos paralelos como eMMC, NAND o NI FLASH pueden ser programados en el circuito al mismo tiempo. Los dispositivos son compatibles a peticin del clienteCaractersticas: Programa de hasta 16 dispositivos en serie al mismo tiempo. Hasta 4 chips ISP paralelos se pueden programar simultneamente (eMMC, NAND y NOR). Se pueden configurar programadores mltiples para la expansin del proyecto. Modos de funcionamiento: USB en lnea, red (mediante el puerto LAN) en lnea y fuera de lnea (a travs del puerto SD) Velocidad de programacin ajustable y fiabilidad de grado industrial Comandos de lnea de comandos DLL / API para integracin con ATE y testeo.3)Programacin de Alto Volumen de Produccin of Paneles PCB (Programa PCBs simultaneamente)Programador recomendado:SuperPro XPS01SuperPro XPS01 es una estacin de trabajo de produccin ISP. Mltiples unidades de SuperPro IS03 (16-CH programadores ISP), accesorio de test, tarjeta personalizada de agujas, tarjeta de soporte y placa de presin estn integrados en un solo sistema. El sistema est controlado por un ordenador a travs de USB o LAN para realizar la programacin de los paneles multi-tarjeta. SuperPro XPS01 es un producto clave y los usuarios pueden iniciar las tareas de produccininmediatamente sin pasar tiempo en la desarrollos futuros.

Caractersticas: Trabajar con hasta diecisis canales de programadores ISP (SuperPro IS03) Soporta hasta 80 PCB programadas simultneamente. Soporta casi todos los chips con protocolo serial: MCU, FLASH y EERROM serial y paralelo eMMC y NAND / NOR FLASH Apoyo de programacin ISP con varios chips en una sola unidad Interfaz incluye USB 2.0 y LAN Asegura mejora de software de programacin y hardware , alta tasa de rendimiento de alta velocidad y fiabilidad de calidad industrial Personalizacin Solucin completa, incluidas las partes mecnicas como accesorios y cama de agujas.Cul es la ventaja de tener una estacin de trabajo de programacin ISP separada sobre fijacin de un programador ISP en un accesorio de TIC?Ms usuarios estn planeando colocar programadores en dispositivos TIC para realizar pruebas funcionales y de programacin IC simultneamente. El tiempo es dinero, as que hay costos involucrados en las operaciones de TIC que estn en espera para realizar la programacin del chip. Por suerte, Xeltek tiene la solucin para mejorar la tasa de rendimiento utilizando SuperPro XPS01. SuperPro XPS01 es un programador panel bed-of-nail y viene con hasta cinco incorporados SuperPro IS03 programadores. Desde SuperPro IS03 se encuentra justo debajo del accesorio bed-of-nail de la ua, la longitud de lnea se reduce al mnimo para un funcionamiento ms fiable al conectar un accesorio de las TIC.Qu dispositivos de serie y las interfaces de serie son compatibles?Programadores Autnomos en circuito, como SuperPro IS01, apoyan actualmente gran variedad de chips de serie (ms de 9.000 dispositivos) incluyendo microcontroladores PIC de Microchip, Atmel AVR (ATtiny, ATmega), ST ARM basado STM8 y STM32 microcontroladores de la serie, TI MSP430 y en serie dispositivos EEPROM / flash de diferentes fabricantes. Para obtener una lista completa de los dispositivos compatibles, consulte nuestralista de dispositivos, por favor.Xeltek trabaja colabora estrechamente con los principales fabricantes de IC serial, como Altera, Atmel, Eon / Cfeon, Maxim, Freescale, Fujitsu, Infineon, Lattice, Renesas, Microchip, NXP, Seiko, ST, Winbond, y Xilinx para trabajar con dispositivos con diferentes protocolos de interfaz tales como I2C, SPI, UART, BDM, MON, MW, JTAG, CAN, ICC y RS232.El usuario puede solicitar una actualizacin del dispositivo si el chip no es compatible. Los algoritmos personalizados para satisfacer el requisito de la tarjeta de destino tambin se pueden desarrollar.http://es.xeltek.com/programacion-in-circuit-icp-programacion-in-system-programacion-serialBeneficios de los programadores En-Sistema (In-System)

Xeltek ofrece soluciones nicas de programacin para la programacin In-Circuit (ISP). ISP es una tcnica en la que se programa un dispositivo programable despus de ser colocado en una placa de circuito. Los chips de memoria externos de hoy en da y los microcontroladores pueden ser reprogramados sin ser retirados del circuito, lo que elimina la etapa de manipulacin adicional que se requiere durante el proceso de fabricacin para la programacin de un dispositivo con un programador externo.La aplicacin ISP puede ser incmoda de soportar debido a las limitaciones de placa PCB. A travs de una amplia experiencia en aplicaciones de ISP, los ingenieros Xeltek analizan y ofrecer soluciones rentables con un tiempo de respuesta muy rpido. La solucin ISP es beneficiosa porque:1. Permite a los chips electrnicos programables ser programados mientras estn instalados en un sistema completo.2. Permite instalaciones de ingeniera y produccin para acortar el ciclo de desarrollo mediante la integracin de la programacin y el testeo en una fase de produccin individual.3. Reduce la posibilidad de daos potenciales de loscircuitos integradosde montaje superficial y dispositivos dainos a travs de las descargas electrostticas (ESD).4. Permite a los fabricantes eliminar los retrasos y no tener que comprar chips preprogramados a un vendedor / distribuidor de chips.5. Aplicar cambios de cdigo o de diseo en medio de la produccin es factible.6. Permite el uso del equipo de prueba automtico (ATE) para realizar operaciones en loscircuitos integradosde ISP e integrar las operaciones con el flujo normal de test de produccin.Definicin de programacin In-System (ISP)

Anuncios

La programacin In-system (abreviado ISP) es la habilidad de ciertosdispositivos lgicos programables, microcontroladores y otros chips electrnicos programables, de ser programados mientras estn instalados en un sistema completo, en lugar de que tengan que ser programados antes de ser instalados en un sistema.

La primera ventaja de esta caracterstica es que les permite a los fabricantes de dispositivos electrnicos integrar la programacin y las pruebas dentro de una nica fase de produccin, en lugar de tener que separar el momento de la programacin del ensamblado del sistema. Permite tambin a los fabricantes programar los chips en su propia lnea de produccin en lugar de tener que comprar chips preprogramados, haciendo posible aplicar cambios de cdigo o diseo en el medio de la produccin.

Generalmente, los chips que soportan ISP, tienen circuitos internos que generan cualquier voltaje de programacin necesario a partir del voltaje normal que suministra el sistema, y se comunica con elprogramadora travs de un protocolo serial.

La mayora de los dispositivos lgicos programables emplean una variante del protocoloJTAGpara ISP, para facilitar la integracin con los procedimientos de pruebas automatizados.

Otros dispositivos emplean protocolos propietarios o definidos por viejos estndares.

Programacin en el sistemaProgramacin en el sistema(In-system programming) o ISP , por sus siglas en ingls, es la habilidad de algunosdispositivos lgicos programables,microcontroladoresy otros circuitos electrnicos de ser programados mientras estn instalados en un sistema completo, en lugar de requerir que el chip sea programado antes de ser instalado dentro del sistema.La principal ventaja de esta caracterstica es de permitir a los fabricantes de dispositivos electrnicos el integrar la programacin y las pruebas en un solo paso, en vez de ser un paso de programacin anterior al ensamble. Tambin permite a los fabricantes el programar los integrados en sus propias lneas de produccin en lugar de adquirir circuitos preprogramados por su fabricante o distribuidor, haciendo posible aplicar cambios de cdigo o de diseo durante una corrida de produccin.Tpicamente, los chips que soportan ISP tienen circuitera interna que les permite generar el voltaje de programacin necesario desde la lnea de alimentacin convencional y comunicarse con el dispositivo programador va protocolo serie. Muchos dispositivos lgicos programables usan una variante del protocoloJTAGpara el ISP, esto es para facilitar la integracin con procedimientos de prueba automatizada. Otros dispositivos usan protocolos propietarios o protocolos definidos por antiguos estndares.PROGRAMADOR In-System SuperPro IS01

Programador ISP autnomoPrecio: 955 + IVA

Soporta ms de8.606 dispositivos y 156 fabricantes Puede funcionar de forma autnoma o conectado a un PC Soporta dispositivos con I2C, SPI, CAN, UART, BDM, MW, JTAG, o cualquier otro puerto serie. Conformidad con CE y RoHSCaractersticas principales Motor hardware basado en CPU ARM9 de alta velocidad de programacin ajustable para entornos de aplicaciones complicados segn la placa de la tarjeta del usuario, la longitud del cable ISP, etc. Soporta dispositivos de programacin ISP con I2C, SPI, CAN, UART, BDM, MW, JTAG, o cualquier otro puerto serie. Incluye interfaz ATE (Automatic Test Equipment) Sistema operatuvo Linux para programacin rpida Dos modos de operacin: Modo Autnomo y conectado al PC Comandos de comunicacin DLL, API, o Virtual Com disponibles para aplicaciones de terceros (Opcional). Interfaz USB 2.0 a PC para comunicacin y control de datos. Proteccin ESD y de sobrecarga para proteger su equipo. El ms ligero: Tamao mecnico: 137mm(Longitud)x87mm(Anchura)x47mm(Altura).Funciones avanzadas del software El IS01 es un programador universal ISP porttil, autnomo, y autoalimentado Est diseado con una memoria Flash interna y una ranura para tarjeta SD. Se pueden almacenar en la tarjeta miles de archivos de datos. Se pueden descargar en la tarjeta SD algoritmos y proyectos y los archivos de datos se pueden pasar a un PC. La Tarjeta SD est organizada con un sistema de datos FAT32, los archivos de datos en la SD se pueden leer y gestionar con un PC utilizando un lector de tarjetas SD de uso general. El nmero mximo de proyectos y archivos de datos que pueden guardarse en la tarjeta SD est limitado solamente por la capacidad de la tarjeta SD. Incluso una tarjeta pequea de 128MB puede almacenar cientos de archivos. IS01 es un programador ISP multifuncin, Industrial y de Ingeniera. Un tamao compacto, velocidad de programacin alta, y flexibilidad son apropiados para todas las posibles aplicaciones. Hay dos modos de operacin disponibles. Compatible con Windows 7, Vista, XP de 32/64 bits En modo husped en PC, el programador se controla con un PC a travs de un puerto USB. En modo autnomo, la operacin se realiza a travs de teclado, LCD y una tarjeta SD opcional sin PC conectado. Los archivos de proyecto deberan descargarse en la tarjeta SD previamente desde PC para operacin Autnoma. El IS01 tiene una pantalla LCD y teclado para operacin autnoma. Se proporcionan una BIOS e interfaz de usuario personalizadas. Ncleo ARM9, SO Linux, y tarjeta SD para almacenamiento del proyecto/datos en un sistema FAT32 estndar compatible con PC. Pantalla LCD de 4 lneas de 20 caracteres, teclado de 6 teclas, interfaz ATE para control, potencia de adaptador 12V CC. Un adaptador externo DC proveer corriente al programador y dispositivo objetivo. No se aplicar corriente desde el equipo objetivo. El circuito de proteccin contra sobrecarga limita la potencia en el dispositivo objetivo. El nmero de serie est escrito dentro de la memoria flash interna, y se mostrar al encenderse. Viene con una solicitud de actualizacin de dispositivo gratuita a menos que no haya testeo PCB (trabajo de ingeniera).Aplicaciones Aplicaciones R&D: tales como testeo en circuito y depuracin. Aplicacin de produccin en volumen: los dispositivos pueden programarse despus de que la placa est completamente ensamblada. Ej. escribir el nmero de serie a un dispositivo en serie en tarjeta. Aplicacin en campo: la unidad viene con portabilidad, modo autnomo y medio de almacenamiento de datos mvil (tarjeta SD), lo cual es apropiado para comprobacin de campo, depuracin y adquisicin de datos. Aplicaciones de terceros. Se suministran interfaces de software sencillas (set de comandos de comunicacin DLL y Virtual Com) e interfaces de hardware (ATE y USB) para facilitar a los usuarios la integracin de SuperPro IS01 como mdulo funcional en sus sistemas. Un ejemplo es el equipamiento ICT; con esta integracin el usuario puede finalizar el testeo y programacin en circuito en un paso.Especificaciones del software Soporta casi todos los dispositivos con interfaz ISP Soporta archivos Jam y Staple de ACTEL y ALTERA; y archivos Direct C de ACTEL. La velocidad de programacin se selecciona (Alta, Normal y Baja) para aplicaciones complicadas tales como diferentes longitudes de cable, diferentes caracteres de carga objetivo. Proporciona funcin de bfer dinmico. Ejemplos de aplicacin incluyen nmero de serie de dispositivo, direcciones MAC, calibracin de frecuencia o transductor, etc. Formato de archivo soportando en Tarjeta SD: FAT16, FAT32. Funciones disponibles para proteccin IP: Seguridad de proyecto, seguridad SD, control en lote, gestin de administracin, etc. Proporciona API y DLL para integracin sencilla con los sistemas de los clientes como ICT y ATE (opcional). Elsoftware de SuperPro IS01 permite que mltiples unidades trabajen de formaconcurrente a travs un HUB USB. Compatible con Windows XP / Vista / 7 / 8 (32 y 64 bits)Especificaciones de Hardware El cable ISP integra interfaces I2C, SPI, UART, BDM, MON, MW, JTAG, CAN, ICC, RS232. Se proporcionan lneas VDD (0-5.5V /0.5A) y Vpp (0-15V / 0.2A) para alimentar la tarjeta y dispositivos. El circuito de cable soporta dispositivos con nivel de voltaje 1.5-5V y est protegido por ESD. Interfaz USB 2.0 (alta velocidad) para conexin al PC y gestin de archivos de proyecto en la tarjeta SD. LCD de 4 lneas de 20 caracteres y un teclado de 6 teclas embebidos para operacin autnoma. En modo autnomo los archivos de proyecto se almacenan en la tarjeta SD (hasta 32 GB). El nmero de archivos de proyecto est limitado solamente por la capacidad de la tarjeta SD. La interfaz ATE permite utilizar y controal al programador mediante seales externas. Las 6 lneas SEL0-SEL5 son para seleccin de proyecto (mximo 64 archivos); 2 lneas de comando START y STOP y 3 lneas de STATUS PASS, FAIL, y BUSY. Todas las seales estn aisladas pticamente. Se incluye un adaptador universal AC de DC12V/2A como fuente de alimentacin.Especificaciones elctricas Interfaz de PC: USB 2.0 Caracterstica Autnoma: Soportada con tarjeta SD. Espec. elctricas del adaptador AC: Entrada AC 90V a 250V, 50/60Hz, Salida DC 12V/2A Parmetros Mecnicos: Unidad Principal: Tamao: 137*87*47 mm Peso: 0,34 Kg Peso de Envo: aprox. 0.9kg

Incluye Programador SuperPro Cable ISP tipo A (soporta interfacex excepto CAN y RS232) Adaptador AC CD de Software Cable USB Garanta de 2 aosOpcional Cable ISP tipo B (soporta CAN y RS232)Ejemplos de tiempo de programacinDispositivoTamaoLectura, verificacinProgramacin

AT28C64B0.8(P)+0.1(V)= 0.9(s)1.2(P)+0.8(V)= 2.0(s)22.1(P)+06.2(V)= 28.3(s)

24AA1282.7(P)+1.8(V)= 4.5(s)5.0(P)+4.0(V)= 9.0(s)128Kb EEPROM

QB25F640S33B6029.0(P)+14.4(V)= 43.4(s)55.2(P)+41.4(V)= 96.6(s)64Mb EEPROM

AT89C55WD2.5(P)+0.4(V)= 2.9(s)3.3(P)+1.0(V)= 4.3(s)20KB FLASH MCU

S25FL064A43.9(P)+14.7(V)= 58.6(s)72.8(P)+41.4(V)= 114.2(s)64Mb SPI EEPROM

PIC16F876A10.1(P)+0.8(V)= 10.9(s)22.1(P)+06.2(V)= 28.3(s)

PIC18F4425.1(P)+1.1(V)= 6.2(s)13.6(P)+06.7(V)=20.3(s)

EspecificacionesPeso0.9kg

Nmero de Dispositivos Soportados>8.693

Nmero de Fabricantes Soportados157

Nmero de Pines DisponiblesMediante ATE, SPI, JTAG,...

AutnomoS

Nmero de zcalos-

Actualizacin de Dispositivo Gratuita Bajo Solicitud del UsuarioOpcional

Sistema operativo compatibleWin XP/Vista/7/8 de 32/64 bits

Conformidad RoHS y CESi

ConexinUSB 2.0

Garanta2 aos

ICSP: Cmo Usar "Programacin Serial En Circuito" con Microcontroladores PICEscrito por Ral Alvarez.Cuando se desarrollan sistemas microcontrolados resulta muy ineficiente tener que sacar el PIC de su circuito para reprogramarlo una y otra, y otra vez... Si el proyecto es relativamente largo, esto no solamente consume un tiempo considerable, sino que tambin puede afectar la vida til del PIC (los pines podran doblarse y romperse) y si se est prototipando en breadboard, tambin se reduce la vida til del breadboard.En este tutorial se muestra un circuito prctico con la conexin de todas las seales ICSP para programar y reprogramar el PIC "en circuito", sin la necesidad de extraerlo de su circuito de aplicacin. Este tutorial sirve a su vez como un desarrollo introductorio de los conceptos bsicos de la Programacin Serial En Circuito (ICSP).Video Demostrativo

Que es ICSP?ICSP es el acrnimo de la frase en ingls: "In Circuit Serial Programming" (Programacin Serial En Circuito); es una tecnologa incluida en todos los microcontroladores PIC de Microchip ms recientes y posibilita la reprogramacin de los mismos sin que sea necesaria la remocin de stos de su circuito de aplicacin. Esta caracterstica es extremadamente til no solamente en la etapa de desarrollo debido a que ahorra tiempo y trabajo, sino que su utilidad se extiende a la etapa de mantenimiento y actualizacin de los sistemas, dando la posibilidad de reprogramar los mismos "en el campo" en sus respectivas placas ya soldadas, ya sea para corregir errores de software o para la mejora del sistema con la implementacin de nuevas funciones.

Este mtodo de programacin (lectura, escritura y verificacin) no es exclusivo de los microcontroladores Microchip, ya que otras marcas como Atmel, Parallax y otros usan tambin mtodos similares conocidos de manera genrica como ISP (In System Programming) y en la arquitectura de Procesadores ARM se utiliza un mtodo similar conocido como JTAG.Programadores ICSPTodos los modelos recientes de microcontroladores PIC se programan usando ICSP con voltaje alto de programacin y una variante con LVP (LVP es "Low Voltage Programming" - ms adelante hablaremos de esto). As mismo, todos los programadores modernos de PIC utilizan este mtodo para programarlos, aunque esto no sea aparente en algunos programadores que cuentan por ejemplo con un socket ZIF, como el mostrado en la figura.

En el caso de los programadores con socket ZIF, El mtodo de programacin sigue siendo ICSP (Programacin En Circuito), slo que en este caso todas las seales ICSP estn cableadas al socket ZIF; sin embargo debido a que el PIC debe ser removido del circuito para ubicarlo en el socket, se contradice el propsito inicial de la idea, la cual es justamente no remover el PIC de su circuito. Para los principiantes el uso del socket ZIF es ms conveniente; sin embargo para quien debe realizar un trabajo de largo aliento, con muchas iteraciones de re-programacin, programar el PIC sin tener que removerlo cada vez de su circuito es mucho ms conveniente.

En la siguiente fotografa vemos un ejemplo de un sistema siendo programado "en circuito":

Seales y Conexiones en el Cabezal ICSPLas seales conectadas entre el PIC y el dispositivo programador para realizar la escritura, lectura y verificacin del programa son las siguientes: VPP (Voltaje de Programacin): Es un voltaje entre 12-14 VDC aplicado al pin MCLR/VPP del PIC, y es usado para poner al PIC en estado de programacin. PGC (Program Clock): Seal de reloj provista al PIC para sincrona. PGD (Program Data):Lnea serial de datos para escritura, lectura y verificacin de la memoria de programa (ROM Flash) del microcontrolador. VDD (Voltaje de Alimentacin 5/3.3 VDC): Voltaje de alimentacin provisto al PIC. En el caso de los programadores Pickit 2 y Pickit 3, estos primeramente consultan este pin para verificar si el PIC ya est siendo alimentado externamente (recomendado) de otro modo, existe la posibilidad de configurar al programador para que ste mande voltaje de alimentacin al PIC a travs de esta lnea. GND (Ground): Conexin a tierra.El siguiente diagrama de circuito muestra un mtodo muy usual para la implementacin de ICSP:

Como se puede observar, el mtodo ICSP utiliza pines en el microcontrolador que tambin pueden cumplir potencialmente otras funciones; en el caso del PIC16F628A tenemos por ejemplo: El pin RA5/MCLR/VPP, adems de ser el pin VPP es el pin RA5 del puerto A y la entrada de reset (MCLR). El pin RB7/T1OSI/PGD, adems de la conexin serial de datos para la programacin (PGD) es tambin el pin RB7 del Puerto B y la entrada de oscilador del Timer1 (T1OSI). El pin RB6/T1OSO/T1CKI/PGC, es la entrada de reloj para ICSP, adems de ser el pin RB6 del Puerto B, la salida de oscilador del Timer1(T1OSO) y la entrada de reloj del Timer 1 (T1CKI).Por tanto, los pines anteriores cumplen bsicamente dos funciones: 1) Funciones relacionadas a la aplicacin principal del circuito, y 2) Funciones para la conexin con el dispositivo programador que posibilite la lectura, escritura y verificacin de la memoria de programa "en circuito".Circuito de AislacinPara que la programacin se lleve a cabo de manera correcta y segura, es necesario aislar el circuito de aplicacin del circuito de programacin. El circuito ejemplo mostrado en la figura anterior nos muestra de qu manera se puede lograr esto: Conectar un diodo de seal(como el 1N4148 u otro similar) entre el pin MCLR/VPP y el circuito de reset (resistencia + capacitor) de la aplicacin. Esto aisla al circuito de reset y la fuente de voltaje del microcontrolador de los 12-13 voltios generados por VPP en el momento de la programacin. Conectar otro diodo de sealentre el pin VDD y la alimentacin de voltaje del circuito de aplicacin. Esto posibilita que en caso de que el VDD del circuito del microcontrolador est encendido, ste sea aislado de la alimentacin de voltaje provista por el programador; en todo caso es ms recomendable y seguro usra la alimentacin propia del circuito de aplicacin para energizar el PIC que usar la alimentacin de voltaje provista por el programador, sobre todo para los principiantes. Conectar resistencias(tpicamente 10K) entre los pines PGD y PGC y el circuito de aplicacin a fin de que la reactancia vista desde estos pines no afecte la integridad de las seales de datos y reloj utilizadas en la escritura, lectura y verificacin del programa. Si la aplicacin lo permite, es recomendable dejar libres estos pines para ser usados exclusivamente para la programacin ICSP.Respecto a la aislacin de los pines PGD y PGC es importante recalcar que si bien este tpico ejemplo de circuito de aislacin funciona para la mayora de los casos, no es una receta segura para todos, y en algunos casos podra requerirse ligeras modificaciones o incluso un planteamiento diferente para lograr dicha aislacin.Depuracin con ICSPCabe notar tambin que ICSP, aparte de proveer el mtodo para la escritura, lectura y verificacin del cdigo de programa en el microcontrolador, provee tambin mtodos para la depuracin y la emulacin "en circuito"; capacidades que vienen adicionalmente implementadas en ciertos dispositivos conocidos en ingls como "programers/debuggers/emulators" (programadores/depuradores/emuladores). Ambas capacidades adicionales complementan grandemente la "caja de herramientas" de todo desarrollador de sistemas microcontrolados.Programacin Con Bajo Voltaje (LVP)La Programacin Con Bajo Voltaje LVP (Low Voltaje Programming) es una opcin adicional de programacin presente en los PICs la cual permite obviar VPP (12-14 VDC) y utilizar bajo voltaje. Para ello los PICs cuentan con otro pin denominado PGM (el pin RB4/PGM en el caso del PIC16F628A) atravs del cual el dispositivo programador toma control del PIC para su programacin. Los detalles de este mtodo salen del alcance de este tutorial, simplemente aadiremos que, si se va a usar ICSP con VPP (12-14 VDC), es recomendable dejar deshabilitada la Programacin Con Bajo Voltaje (LVP) en el microcontrolador (mediante la escritura del bit correspondiente en la palabra de configuracin (registro CONFIG) del microcontrolador, esto para evitar desprogramaciones accidentales del PIC. La desventaja de LVP es que cualquier ruido o pico de voltaje ms o menos fuerte puede desprogramar accidentalmente el PIC, por lo cual, es mejor deshabilitarlo y usar la programacin ICSP con voltaje alto.ConclusinImplementar ICSP se hace imprescindible en un proyecto que requiere muchas iteraciones de re-programacin en la etapa de desarrollo; por otra parte brinda tambin la posibilidad de actualizacin y mejora del programa cuando los componentes ya estn soldados en la placa y el sistema ya est en funcionamiento. Para quienes nunca antes programaron "en circuito", implementarlo puede parecer un poco intimidante al principio, sin embargo es un paso necesario a dar, a fin de mejorar la eficiencia en el desarrollo de sistemas microcontrolados.Nada reemplaza la adecuada investigacin y bsqueda de informacin antes de probar herramientas y tcnicas nuevas para uno, por lo cual es muy recomendable revisar tambin la documentacin oficial de fabricante respecto a la Programacin Serial En Circuito, a fin de contar con la informacin detallada y de primera mano respecto a este tpico.http://tecbolivia.com/index.php/articulos-y-tutoriales-microcontroladores/19-icsp-como-usar-qprogramacion-serial-en-circuitoq-con-microcontroladores-picProgramacin NAND FlashSuperPro 5000Programador Universal Flash Autnomo ultra-rpido de 144 pines con interfaz USBPrecio:$1,995.00SuperPro 5004GPProgramador Gang Flash Universal Inteligente de 144 pines de Velocidad Ultra RpidaPrecio:$6,295.00

Contenidos de la Gua Tcnica1. Una introduccin a Nand flash2. Cmo tratar con los bloques defectuosos2.1. Saltarse Bloque Defectuoso2.2. Bloque Reservado2.3. Sobrescribir Bloque Defectuoso2.4. Particin3. rea de Reserva en NAND FLASH3.1 Seleccionando ECC3.2 Marca de Bloque Defectuoso

4. Comprobacin de Bloques de Carga5. Programacin6. F. A. Q.

Descargar PDFEste artculo describe cmo programar chips NAND flash utilizando un programador XELTEK.Antes de leer este artculo el usuario debera conocer ciertas palabras clave como Bloque, ECC, rea Principal, rea de Reserva, que son trminos utilizados en hojas de datos NAND.1. Una introduccin a Nand flashPara la mayora de chips NAND flash, hay 512*8 (o 256*16) o 2048*8 (o 1024*16) bits en el rea Principal, y 16*8 (o 8*16) o 64*8 (o 32*16) bits en el rea de Reserva para un total de 528*8 (264*16) o 2112*8 (o 1056*16) bits por pgina. Un bloque consiste en muchas pginas, pero debido a que el rea de Reserva est reservada para bloques defectuosos y valores ECC, slo el rea Principal est disponible para el usuario. Un dispositivo NAND de 2-Gbit, est organizado en 2048 bloques, con 64 pginas por bloque (Figura 1). Cada pgina tiene 2112 bytes totales, que consta de un rea de datos de 2048-bytes y un rea de reserva de 64-bytes.

Figura 1Los dispositivos NAND flash tienen la ventaja de gran capacidad con bajo coste comparado con dispositivos NOR FLASH. Adems, las ventajas de NAND son operaciones de escritura (programacin) y borrado rpidas mientras que las ventajas de NOR son acceso aleatorio y capacidad de escribir bytes. La habilidad de acceder aleatoriamente de NOR permite ejecutar en el lugar, lo cual a menudo es necesario en aplicaciones embebidas. Las desventajas de NAND son un lento acceso aleatorio, mientras que NOR est dificultado por su lento rendimiento de lectura y borrado.NAND es ms apropiado para aplicaciones de archivo. Sin embargo, ms procesadores incluyen una interfaz directa NAND y pueden cargar directamente desde NAND (sin NOR).NAND es similar a un disco duro. Est basada en sector o pgina y es apropiada para almacenar datos secuenciales como imgenes, audio, o datos de PC. Aunque el acceso aleatorio puede lograrse a nivel de sistema a coste de los datos a RAM, se requiere almacenamiento RAM adicional. Tambin, como los discos duros, los dispositivos NAND tienen bloques defectuosos, y requieren cdigo de correccin de error (ECC) para mantener la integridad de los datos.Las NAND flash pueden incluir bloques defectuosos cuando se envan por primera vez. Bloques invlidos adicionales pueden desarrollarse mientras se usa. Los bloques invlidos se definen como bloques que contienen uno o ms bits defectuosos. Borrar y programar bloques defectuosos marcados de fbrica est prohibido.Los bloques defectuosos se han inicializado antes del envo y marcado en el rea especfica. Nuevos bloques defectuosos pueden ser generados durante el uso as que el sistema deber identificar estos bloques.Bit inverso es ms fcil de encontrar en NAND flash. Si ocurre el bit inverso en el archivo importante, causar que el sistema se cierre. Por lo tanto, se sugieren algoritmos ECC/EDC para fiabilidad cuando se programa Nand Flash.2. Cmo tratar con los bloques defectuososHay muchos mtodos de tratar con los bloques defectuosos. El cliente puede elegir un mtodo de acuerdo con sus propios requisitos o pedir a Xeltek que personalice los algoritmos para sus propias soluciones.Para tratar con los bloques defectuosos en el sistema embebido, se necesita una capa extra de software. Por lo tanto, para programar chips NAND flash, todo lo que necesitamos hacer para tratar con los bloques defectuosos es tratarlos de la misma forma que son tratados en el sistema del usuario. Aunque puede parecer simple, hay muchas formas de hacerlo y no parece existir ninguna que est universalmente aceptada como mtodo estndar.Por ejemplo, un mtodo comn es saltarse los bloques defectuosos y colocar los datos en los bloques correctos. Lo llamamos el Mtodo Saltarse Bloques Otro mtodo comn (por Samsung) es asignar algunos de los bloques como rea de Reserva de Bloques. Este rea, un bloque se usa como tabla, y hace un seguimiento de los bloques defectuosos y el resto son usados para los datos que se hubieran escrito en los bloques defectuosos. Nuestro algoritmo base para NAND flash contiene ambos mtodos. Actualmente, tenemos de 5 a 6 mtodos para gestionar con los bloques defectuosos. Dos mtodos comunes estn ilustrados aqu.2.1. Saltarse Bloque Defectuoso

Figura 2 UsuarioBloquear rea RBA:rea de Bloques ReservadaEl usuario puede seleccionar el modo de programacin estableciendo ConfigWord.Nota:Si los datos de usuario incluyen el rea de Reserva por favor vea el sector adicional para un nuevo mtodo.El mtodo de saltarse bloques defectuosos es el ms simple y comn. Es muy sencillo. Simplemente se salta los bloques defectuosos y coloca los datos en los bloques correctos. El algoritmo comprueba el bloque al leer la marca de bloque defectuoso. Cuando la direccin objetivo corresponde a una direccin de bloque defectuoso, estas pginas se almacenan en el siguiente bloque correcto, saltndose el bloque defectuoso. Ya que este bloque defectuoso es saltado, los datos programados originalmente de fbrica (non-FFh) en el rea de reserva indicando la presencia del bloque defectuoso aun estn ah. Por lo tanto, el sistema del usuario tambin puede crear una tabla de direcciones de bloques defectuosos al leer el rea de reserva de todos los bloques en el momento de carga.Ya que los bloques defectuosos existen, el tamao de datos del usuario no debera exceder el tamao de bloques correctos. Por favor, Rellene el valor correcto en el Bloque de Inicio UBA y Tamao de Bloques UBA.Algunos dispositivos NAND estn disponibles todos los bloques correctos. El usuario tambin puede usar el dispositivo sin ningn bloque defectuoso al rellenar el mximo valor en Tamao de los Bloques UBA.Figura 3Utilizando este mtodo, el cliente necesita comprobar el bloque de inicio del rea de Bloque de Usuario (UBA). Tamao de bloques UBA en la figura 2. El bloque de inicio del rea de Bloque Reservada (RBA) y el tamao de los bloques RBA se usan para el mtodo de bloque de reserva. Ambos, bloque de inicio de Carga y Tamao de bloques de Carga, se utilizan para comprobar si hay bloques defectuosos utilizado en el rea de carga.El bloque de inicio UBA muestra la direccin fija para programar el chip. La direccin por defecto es 0000. El tamao de los bloques UBA es el nmero de bloques a programar.2.2. Bloque ReservadoEn este mtodo, se generar una tabla de mapeo. Cuando se identifique un bloque defectuoso, el software reservar un bloque correcto para reemplazarlo y crear una tabla de mapeo guardada en el rea de reserva.Cuando se detecte un bloque defectuoso durante la lectura de un chip, el software leer la tabla de mapeo y entonces leer el bloque reemplazado. La ventaja es que el rea de almacenamiento tiene integridad lgica. Cuando un error ocurre en el Bloque A, intenta reprogramar los datos en otro Bloque (Bloque B), al cargarlo desde un bfer externo. Entonces, previene ms accesos del sistema al Bloque A al crear una tabla de bloques defectuosos o al usar otro esquema apropiado. Esto se llama Reemplazo de Bloque.El algoritmo de programacin funciona al determinar primero qu bloques sern usados como rea de Bloques de Usuario (UBA) y qu bloques sern usados como rea de Bloques de Reserva (RBA). La direccin de inicio y tamao de los UBA estn determinados por los parmetros introducidos en Bloque de inicio UBA y Tamao de bloques UBA. Adems, el bloque de inicio y tamao de RBA se definen tambin por el usuario.Entre la direccin de inicio de UBA y RBA, hay algunos bloques reservados para reemplazar los bloques defectuosos.El algoritmo lee el rea de reserva del dispositivo, y construye una tabla de mapeo en el RBA. Slo el primer y segundo bloque vlido en el RBA se usan para esta tabla.La tabla mapa contiene informacin sobre como sustituir bloques defectuosos en el UBA con bloques correctos en el rea reservada para colocacin. Los campos de datos en la tabla de mapa se muestran abajo.

El Campo de Transmisin es siempre FDFEh. El Campo de Recuento se incrementa en uno por cada pgina de la tabla de mapa. Para el algoritmo actual, hay slo dos pginas usadas as que el campo contendr 0001h para la pgina en el primer bloque y 0002h para la pgina en el segundo bloque de la tabla de mapa.El par de datosBloque No Vlido / Bloque Reemplazadomuestra las direcciones de los bloques defectuosos y la direccin del bloque reemplazado respectivamente. El resto de la pgina consiste en estos pares de datos. Ya que hay 512 bytes y el mximo nmero de pares de datos es 127. Normalmente esto ser suficiente ya el nmero de bloques defectuosos es normalmente menor de un 1% del nmero total de bloques para nuevos dispositivos que se estn programando. Por supuesto, bloques defectuosos nuevos pueden generarse durante el uso as que el sistema (utilizando este mtodo) deber identificar estos bloques y actualizar la tabla de mapa.La segunda pgina de la tabla de mapa se usa para duplicar la informacin en la primera pgina en caso de que uno de estas pginas se vuelva corrupta durante el uso. Todos los campos usan un protocolo little endian; el byte pequeo va primero.Figura 4

En la figura 4, UBA es rea de Bloques de Usuario. RBA es rea de Bloques de Reserva.Entre la direccin de inicio de UBA y RBA, hay algunos bloques reservados para reemplazar los bloques defectuosos.2.3. Escribir encima de Bloque DefectuosoEste mtodo se usa para leer todos los datos de un dispositivo NAND al bfer sin considerar esquemas de manejo de bloques defectuosos. Por lo tanto, el bfer tambin contiene la informacin en los bloques defectuosos. El cliente puede usar otro software especfico para analizar los datos tiles al encontrar ubicaciones de bloques defectuosos. Es muy til si el dispositivo NAND se program por un programador de terceros.2.4. ParticinLa particin se usa para programacin Nand basada en una tabla de particin. Una tabla de particin se carga y edita antes de la programacin, se muestra en la Figura 5 y Figura 6.

Figura 5

Figura 6En la tabla de particin, cada 16-bytes representa una particin, en la que los bytes del 1roal 4to representan la direccin de bloque inicial, los bytes del 5toal 8vorepresentan la direccin de bloque final, los bytes del 9noal 12vorepresentan el tamao de bloque usado realmente, los bytes del 13voal 16to son los bytes conservados. La bsqueda de direccin finalizar cuando la direccin de inicio sea FF FF FF FF. El mtodo de saltarse bloques defectuosos se usa durante la programacin. Por ejemplo, tres particiones necesitan ser programadas para este chip. La direccin de inicio y la direccin final para la primera particin son 0000 y 007F. El tamao de bloque real es 0001.3. rea de Reserva en NAND FLASHSi los archivos de usuario incluyen datos de reserva, el mtodo es vlido. El algoritmo comprobar el valor de la marca de bloque defectuoso en la 1ra y 2da pgina y lo cambiar el non-FF a un valor FF.Sobre el uso del rea de Reserva, necesitamos establecer el rea de Reserva (ECC) en la figura 2. Si el archivo para programacin incluye informacin de rea de Reserva, por favor seleccione Usado. Esta configuracin debera usarse cuando el archivo de datos original contiene informacin para el dispositivo completo, incluyendo el rea de Reserva. Si no hay informacin de rea de Reserva en el archivo para programacin, por favor seleccione Reservado, ECC desactivado. Cuando selecciona Reservado, ECC desactivado, el archivo de datos original no contiene datos de rea de Reserva, pero el usuario quiere que el rea de Reserva del dispositivo sea programado con ECC y/o otros datos dinmicos. Usar el algoritmo ECC generado por el software. El algoritmo por defecto utilizado por nuestro programador es el algoritmo 512B ECC. La Tabla 1 muestra el formato.3.1. Seleccionando ECCSi se selecciona ECC, el algoritmo calcular tres bytes de datos ECC correspondientes a 512 bytes de datos en cada pgina. Los bytes ECC se colocan en lo ubicacin de los Bytes 14o, 15o y 16o (con la copia en los Bytes 7o, 8o y 9o) del rea de Reserva (por ejemplo: byte 526, 527 y 528 de cada pgina) tal y como se muestra en la Tabla 1.

Si quiere que un programador XELTEK calcule los datos para guardar en el rea de Reserva , por favor dganos los requisitos en detalle.3.2. Marca de bloque defectuosoEn general, la marca de bloque defectuoso para modo de gran pgina es en el byte 2948 de cada bloque y en el byte 517 de cada bloque. Por lo tanto, el contenido de la marca de bloque defectuoso en el archivo de programacin es FF. Si no utiliza el mtodo de procesado estndar en su archivo, por favor contctenos. Personalizaremos el algoritmo segn sus necesidades.4. Comprobacin de Bloques de CargaEl cdigo de carga debe residir en bloques correctos ya que muchos sistemas no pueden tratar bloques defectuosos en la carga el cdigo no ha sido cargado aun. El usuario puede especificar tanto el bloque de inicio para el rea correcta conocida y el tamao rellenando los parmetros en el Bloque de inicio de carga y Tamao de bloques de carga.Durante la programacin de dispositivo, si un bloque defectuoso se encuentra en este rango de bloques, la programacin informa con un mensaje de error al final. La probabilidad de fallo aumenta cuando un gran nmero de bloques se usan para el rea correcta conocida. Recomendamos que el mnimo nmero de bloques correctos conocidos se ponga de lado para el cdigo de carga.Generalmente, los bloques defectuosos no tienen permitido residir en la carga. Por lo tanto es necesario comprobar si existen bloques defectuosos en la carga. Cuando se programan chips NAND. Si su rea de carga est en el primer bloque, no hay necesidad de comprobar los bloques defectuosos ya que la mayora de fabricantes NAND garantizan que el primer bloque es correcto. Por lo tanto, si su cdigo de carga cabe en un bloque nico (y usted especifica un rango correcto conocido de 1 bloque con una direccin de inicio de 0), no tendr ningn fallo debido a bloques de carga defectuosos durante la programacin.La Figura 2 muestra la configuracin de carga. El bloque de inicio de carga muestra la direccin de inicio del rea de carga. El tamao de bloque de carga es el tamao del rea de carga. El tamao de bloques de carga se establece para ser el tamao de todos los bloques para comprobar todos los bloques defectuosos del chip Nand.5. ProgramacinProgramar el dispositivo siempre escribir los valores ECC en el rea de Reserva. Verificar y Leer el dispositivo depender de la seleccin ECC.El Vaco y la Eliminacin del dispositivo se operar en todos los bloques. Para evitar daar las marcas de bloques defectuosos, siempre se Vaca el bloque (Eliminando cuando es necesario) antes de programarlo.Sugerimos al usuario que compruebe el ID del dispositivo, aadiendo Programar y Verificar en Auto cuando se programa el dispositivo. Debido a que el tamao de la NAND flash es muy grande, llevar tiempo seleccionando el dispositivo, cargando el archivo y ejecutando por primera vez.Sobre soporte para nuevo modo de programacin sistema de archivo e informacin especfica sobre rea de Reserva, por favor proporcione una descripcin detallada de sus requisitos de desarrollo. Intentaremos cumplir sus requisitos. Nuevo mtodo de procesado de bloque defectuoso. Marca de bloque defectuoso no estndar. Utilizando algoritmo ECC excepto ECC512B y ECC256W. Guardando sector, tiempo de uso de bloque, archivo de programacin u otra informacin en el rea de Reserva. Necesidad de soporte FFS.Palabras Clave de Dispositivos Nand:Bloque, ECC, rea Principal, rea de Reserva6. Preguntas Ms FrecuentesP: Error ECC R: Los valores ECC son distintos con los dispositivos. P: Los bloques correctos no son suficientes. R: Los datos de usuario son mayores que el tamao de bloques correctos. P: El RBA falla R: El error de valor RAB no puede leer o verificar. P: La carga falla. R: No hay bloques correctos de carga suficientes. P: ECC_CORRECTABLE_ERRORR:Encuentre el bit ECC_CORRECTABLE_ERROR y corrjalo.P: Las opciones por defecto de la configuracin del dispositivo tenan el tamao de los bloques UBA en 1F00, tambin tenan el tamao de bloque RBA a 0010. Cuando usamos estas opciones no vemos los ltimos 256 bloques. No estamos usando ningn tipo de rea de Bloques de Reserva as que he establecido el tamao de bloque UBA a 0X2000 y todas las otras opciones a 0, y he seleccionado Saltar Bloques Defectuosos. El superpro 3000U me da un error Bloques correctos no suficientes. R: Si quiere leer toda el rea del chip, por favor compruebe primero todos los bloques. Entoncessubstraigalos chips de todos los bloques. Estos son los bloques reales que quiere leer. P: Hay una forma de comprobar el nmero de bloques defectuosos? R: En el campo configword, por favor rellene el Bloque de Inicio de carga con 0000, y el Tamao de Bloques de Carga con 2000. Haga click en Comprobacin de Bloque de Carga en el panel de software, el Nmero de bloques defectuosos aparecer. P: Config Error, no permite la continuacin de la operacin. R: El problema ocurre porque las variables en Dev. Config no estn establecidas correctamente. La configuracin correcta es:Bloque de Inicio UBA < Todos los Bloques, Tamao de bloques UBA (Bloque de inicio UBA + Tamao de bloques UBA),Tamao de Bloques RBA < (Todos los Bloques Bloque de Inicio RBA)P: Mensaje de problema sobre programacin sobre Bloques correctos no suficientes R: Este problema ocurre porque el archivo de programacin es mayor que el tamao de todos los bloques correctos del chip.Por lo tanto, establecer el valor en Dev. Config debera considerar el tamao real del chip.Por ejemplo, usted lee todos los bloques=02000, pero el dispositivo tiene bloques defectuosos. Los bloques correctos son menos que 02000.Tamao MAX de Bloques UBA = Todos los Bloques bloques defectuosos.Si se detectan 16 bloques defectuosos en el chip, el tamao de bloque correcto real debera ser igual a (Todos los Bloques 010). P: Puedo usar un programador Xeltek para leer una NAND flash que ha sido programada con otro Sistema? R: Si la NAND flash ha sido programada por un programador de terceros, podemos leer el chip directamente sin considerar bloques defectuosos o correctos al marcar Sobrescribir bloques defectuosos en la Config de Dispositivo.Este mtodo se usa para leer todos los datos de un dispositivo NAND al bfer sin considerar esquemas de manejo de bloques defectuosos. Por lo tanto, el bfer tambin contiene la informacin en los bloques defectuosos. El cliente puede usar otro software especfico para analizar los datos tiles al encontrar ubicaciones de bloques defectuosos.P: Cual es la funcin del controlador NAND flash?R: El acceso aleatorio de datos en NAND flash no es posible y los datos slo pueden accederse en serie. Si una pgina de memoria en particular se abre, los datos se pueden leer fcil y rpidamente. Los comandos deberan enviarse en serie a la interfaz de la NAND flash (ONFI), haciendo que una interfaz directa con NAND sea difcil. Los Controladores NAND facilitan el acceso a NAND flash y presentan al usuario con una interfaz limpia y utilizable a la memoria. Los controladores tambin soportan cdigo de correccin opcional de soporte (ECC) que realizan correcciones de errores de bit nico.P: Cul es la diferencia entre MLC y SLC NAND?R: NAND flash de celdas multinivel (MLC) almacenan dos o ms bits de informacin por celda de memoria, comparado con un bit por celda para NAND de celda de nivel nico (SLC) MLC NAND tiene ms capacidad, menor coste por bit, es ms lenta y menos robusta. SLC = 100.000 ciclos de borrado/programa MLC = 10.000 ciclos de borrado/programa La MLC necesita 4 bit ECC mientas que SLC necesita 1 bit ECC.P: Cul es la diferencia entre NAND de bloque grande y de bloque pequeo?R:Bloque grande=> (2048 bytes de datos + 64 bytes de datos de reserva) por pginaBloque pequeo=> (612 bytes de datos + 16 bytes de datos de reserva) por pginaLas secuencias de comando son diferentes para NANDs de bloque grande y bloque pequeo.P: Qu es el rea de reserva en NAND flash?R: En NAND de bloque grande o pequeo hay 16 o 64 bytes de datos de reserva en cada pgina. Las reas de reserva se usan para almacenar ECC y otra informacin de gestin de bloques defectuosos (marca de bloque defectuoso).P: Qu quieres decir con bloque defectuoso?R: No todas las celdas de memoria en un dispositivo NAND son completamente funcionales. Algunos bloques (1 bloque = 64 pginas) se declaran como bloques defectuosos. Durante el testeo, los bloques defectuosos se marcan en reas de reserva de las 2 primera pginas de NAND flash. El usuario debera leer marcas de bloques defectuosos y evitar usarlos. Debido al uso repetitivo de NAND flash, bloques defectuosos adicionales pueden ser creados y el usuario debera manejar los bloques defectuosos nuevos.P: Qu es el wear leveling?R: Las NAND flash pueden borrarse y programarse solamente durante tiempo limitado. Si una pgina se accede a menudo, las celdas de memoria en esa pgina pueden daarse y por lo tanto haciendo que la NAND flash falle. Wear leveling se usa para equilibrar el uso de NAND y distribuye el uso de la memoria de forma uniforme en todas las pginas en un dispositivo NAND. Esto ayuda a aumentar la vida de la NAND flash. Esto supone el mapeo de direcciones lgicas a diferentes direcciones fsicas en el dispositivo NAND.P: Cmo puedo duplicar chips NAND programados por otro sistema?A: Duplicar una NAND flash es difcil si el dispositivo objetivo ya tiene algunos bloques defectuosos. Copiar una NAND flash es diferente a copiar cualquier otra EEPROM o chips flash ya que los bloques defectuosos existen en chips NAND flash.Por ejemplo, Si la NAND FlashK9F1G08U0A ha sido programada por un programador de terceros, podemos leer el chip directamente sin preocuparnos sobre bloques defectuosos o correctos marcando Sobrescribir bloques defectuosos/copia exacta en la Config de Dispositivo.Este mtodo se usar para leer todos los datos de un dispositivo NAND en el bfer sin considerar esquemas de gestin de bloques defectuosos. Por lo tanto, el bfer tambin contiene la informacin en los bloques defectuosos. Este mtodo no se recomienda para gran produccin ya que muchos chips objetivo tendrn bloques defectuosos.Como su NAND flash ha sido programada por un programador de terceros, la operacin de copia del chip debera hacerse por una copia exacta dividida en dos pasos leer el dispositivo original y programar el dispositivo objetivo.1) Leer el dispositivo original: podemos leer el chip tal y como es sin preocuparnos de bloques defectuosos o correctos seleccionando copia exacta en la Configuracin de Dispositivo. Este mtodo se usa para leer todos los datos de un dispositivo NAND al bfer sin considerar esquemas de manejo de bloques defectuosos. Por lo tanto, el bfer tambin contiene la informacin en los bloques defectuosos.2) Programando el dispositivo objetivo: El xito de la operacin de programacin puede ser dificultado por la ocurrencia de bloques defectuosos en el dispositivo objetivo. Por lo tanto, el dispositivo objetivo debe no tener bloques defectuosos.El nmero de bloques defectuosos puede comprobarse al activar la comprobacin de carga en el campo de palabra de configuracin. Para hacer esto, por favor rellene el Bloque de Inicio de Carga con 0000, y el Tamao de los Bloques de Carga con bloques totales (800). Clique Chequeo de Bloque de Carga en el panel de software, el nmero de bloques defectuosos aparecer. Usando el mtodo de copia exacta para duplicar NAND para produccin en masa no se recomienda. Por favor hganos saber si puede proporcionarnos el archivo de datos real a ser programado junto con ms detalles como informacin sobre rea de reserva y el mtodo de gestin de bloque defectuoso a usar.P: Tengo que programar una NAND flash mayor de 2GB. Puedo hacerlo con SP5000?R: Para NAND flash mayor de 2Gb, recomendamos el programador SP6000. El programador SP6000 soporta archivos de hasta 256 GBytes lo cual es ms apropiado para chips NAND flash de alta densidad.Serial Peripheral Interface

Bus SPI: un maestro y un esclavo.

SPI bus: un maestro y tres esclavos.

ElBus SPI(delinglsSerial Peripheral Interface) es un estndar de comunicaciones, usado principalmente para la transferencia de informacin entre circuitos integrados en equipos electrnicos. Elbusdeinterfazde perifricos serie o bus SPI es un estndar para controlar casi cualquier dispositivo electrnico digital que acepte un flujo de bits serie regulado por un reloj.Incluye una lnea dereloj, dato entrante, dato saliente y un pin dechip select, que conecta o desconecta la operacin del dispositivo con el que uno desea comunicarse. De esta forma, este estndar permite multiplexar las lneas de reloj.Muchossistemas digitalestienen perifricos que necesitan existir pero no ser rpidos. La ventajas de un bus serie es que minimiza el nmero de conductores,pinesy el tamao del circuito integrado. Esto reduce el coste de fabricar montar y probar la electrnica. Un bus de perifricos serie es la opcin ms flexible cuando se tiene tipos diferentes de perifricos serie. El hardware consiste en seales de reloj, data in, data out y chip select para cada circuito integrado que tiene que ser controlado. Casi cualquier dispositivo digital puede ser controlado con esta combinacin de seales. Los dispositivos se diferencian en un nmero predecible de formas. Unos leen el dato cuando el reloj sube otros cuando el reloj baja. Algunos lo leen en el flanco de subida del reloj y otros en el flanco de bajada. Escribir es casi siempre en la direccin opuesta de la direccin de movimiento del reloj. Algunos dispositivos tienen dos relojes. Uno para capturar o mostrar los datos y el otro para el dispositivo interno.

ndice[ocultar] 1Operacin 2Pros y contras del bus SPI 2.1Ventajas 2.2Desventajas 3SPI en ATMEGA8 3.1Byte SPCR 3.2Byte SPSR 3.3Vase tambin 3.4Enlaces externosOperacin[editar]El SPI es un protocolo sncrono. La sincronizacin y la transmisin de datos se realiza por medio de 4 seales: SCLK(Clock): Es el pulso que marca la sincronizacin. Con cada pulso de este reloj, se lee o se enva un bit. Tambin llamado TAKT (en Alemn). MOSI(Master Output Slave Input): Salida de datos del Master y entrada de datos al Slave. Tambin llamada SIMO. MISO(Master Input Slave Output): Salida de datos del Slave y entrada al Master. Tambin conocida por SOMI. SS/Select: Para seleccionar un Slave, o para que el Master le diga al Slave que se active. Tambin llamada SSTE.La Cadena de bits es enviada de manera sncrona con los pulsos del reloj, es decir con cada pulso, el Master enva un bit. Para que empiece la transmisin el Master baja la seal SSTE SS/Select a cero, con esto el Slave se activa y empieza la transmisin, con un pulso de reloj al mismo tiempo que el primer bit es ledo. Ntese que los pulsos de reloj pueden estar programados de manera que la transmisin del bit se realice en 4 modos diferentes, a esto se llama polaridad y fase de la transmisin: 1. Con el flanco de subida sin retraso. 2. Con el flanco de subida con retraso. 3. Con el flanco de bajada sin retraso. 4. Con el flanco de bajada con retraso.Pros y contras del bus SPI[editar]Ventajas[editar] ComunicacinFull Duplex Mayor velocidad de transmisin que conICoSMBus Protocolo flexible en que se puede tener un control absoluto sobre los bits transmitidos No est limitado a la transferencia de bloques de 8 bits Eleccin del tamao de la trama de bits, de su significado y propsito Su implementacin en hardware es extremadamente simple Consume menos energa que IC o que SMBus debido que posee menos circuitos (incluyendo las resistenciaspull-up) y estos son ms simples No es necesario arbitraje o mecanismo de respuesta ante fallos Los dispositivosclientesusan el reloj que enva elservidor, no necesitan por tanto su propio reloj No es obligatorio implementar un transceptor (emisor y receptor), un dispositivo conectado puede configurarse para que solo enve, slo reciba o ambas cosas a la vez Usa mucho menos terminales en cada chip/conector que una interfaz paralelo equivalente Como mucho una nica seal especfica para cadacliente(seal SS), las dems seales pueden ser compartidasDesventajas[editar] Consume ms pines de cada chip que IC, incluso en la variante de 3 hilos El direccionamiento se hace mediante lneas especficas (sealizacin fuera de banda) a diferencia de lo que ocurre en IC que se selecciona cada chip mediante una direccin de 7 bits que se enva por las mismas lneas del bus No haycontrol de flujopor hardware No hay seal de asentimiento. Elservidorpodra estar enviando informacin sin que estuviese conectado ningnclientey no se dara cuenta de nada No permite fcilmente tener variosservidoresconectados al bus Slo funciona en las distancias cortas a diferencia de, por ejemplo,RS-232,RS-485, oBus CANSPI en ATMEGA8[editar]El SPI Master(servidor) inicializa el ciclo de comunicacin cuando se coloca en bajo el Selector de Esclavo (SS-Selector Slave)(cliente). Master y Slave(servidor y cliente) preparan los datos a ser enviados en sus respectivos registros de desplazamiento y el Master genera el pulso del reloj en el pin SCK para el intercambio de datos. Los datos son siempre intercambiados desde el Maestro al Esclavo en MasterOut-SlaveIn, MOSI, y desde Esclavo al Maestro en MasterIn-SlaveOut, MISO. Despus de cada paquete de datos el Maestro debe sincronizar el esclavo llevando a 'alto' el selector de Esclavo, SS.

Cuando se configure como Maestro, la interfaz SPI no tendr un control automtico de la lnea SS. Este debe ser manejado por software antes de que la comunicacin pueda empezar, cuando esto es realizado, escribiendo un byte en el registro de la SPI comienza el reloj de la SPI, y el hardware cambia los 8 bits dentro del Esclavo. Despus de cambiar un Byte, el reloj del SPI para, habilitando el fin de la transmisin ( SPIF ). Si la interrupcin del SPI est habilitado (SPIE) en el registro SPCR, una interrupcin es requerida. El Master podra continuar al cambio del siguiente byte escribiendo dentro del SPDR, o sealizar el fin del paquete colocando en alto el Esclavo seleccionado, lnea SS. El ltimo byte llegado se mantendr en el registro Buffer para luego usarse.Cuando lo configuramos como un Esclavo, la interfaz ISP permanecer durmiendo con MISO en tres-estados siempre y cuando el pin SS este deshabilitado. En este estado, por el software se podra actualizar el contenido del registro SPDR, pero los datos no sern desplazados por la llegada del pulso de reloj en el pin SCK hasta que el pin SS no sea habilitado( '0' ). Ser visto como un byte completamente desplazado en el fin de la transmisin cuando SPIF se habilite. Si la interrupcin SPI, SPIE en SPCR, est habilitada, una interrupcin es solicitada. El Esclavo podra continuar para colocar nuevos datos para ser enviados dentro del SPDR antes de seguir leyendo la data que va llegando. El ltimo byte que entra permanecer en el buffer para luego usarse.(MSTR en SPCR es seteado), el usuario puede determinar la direccin del pin SS.Si SS es configurado como salida, el pin es una salida general la cual no afecta el sistema SPI. Tpicamente , el pin SS ser manejado desde el Esclavo.Si es como entrada, este debe ser enviado a alto para asegurar la operacin SPI del Master.Byte SPCR[editar] Bit 7 - SPIEHabilitacin de interrupcin en SPI, si el bit SPIF( SPSR ) y el SRGE son habilitados. Bit 6 - SPESPI habilitado, debe ser habilitado para cualquier operacin SPI. Bit 5 - DORDOrden de datos, si es '1' el lsb sale primero. Si es '0' el MSB sale primero. Bit 4 - MSTRSelector Master o Esclavo, si es '1' es Master, de lo contrario Esclavo. Si el pin SS es configurado como entrada y es habilitado('0') mientras MSTR est habilitado, MSTR ser deshabilitado, y SPIF( en SPSR) se habilitara. Bit 3 - CPOLPolaridad del reloj, si es '1' SCK ser activo en alto de lo contrario ser activo en bajo. Bit 2- CPHAFase del reloj. Bit 1,0 - SPR1, SPR0Seleccin de la velocidad del reloj, solo funciona en modo master.Byte SPSR[editar] Bit 7 - SPIFBandera de interrupcin del SPI. Cuando una transferencia serial es completada, la bandera SPIF es habilitada. Una interrupcin es generada si SPIE(en SPCR) y SREG estn habilitados. Si SS es una entrada y est en habilitada('0') cuando el SPI est en modo Master, este tambin habilitara la bandera SPIF. SPIF es deshabilitada por hardware cuando es ejecutada la correspondiente interrupcin manualmente.Alternativamente, el bit SPIF es deshabilitado por la primera lectura del registro de estado SPI con SPIF activo. Bit 6 - WCOLBandera de colisin de escritura, es habilitado si se produce una escritura durante la transferencia. Es deshabilitado por la primera lectura del registro de estado SPI (SPDR). Bit 0 - SPI2xDuplicador de velocidad de los bit. Byte SPDREs un registro de lectura y escritura usado para la transmisin de datos entre el registro de archivos y el registro de cambio SPI.Pines usados para el SPI SCKEs el de salida del Master, en el Esclavo es el reloj de entrada para el canal SPI, Cuando el SPI es habilitado como un Esclavo, este pin es configurado como una entrada a pesar de la configuracin de DDB5. Cuando el SPI es habilitado como Master, la direccin de datos de este pin es controlada por DDB5. Cuando el pin es forzado por el SPI a ser una entrada, la pull-up puede ser controlada por el bit PORTB5.