Track: By me composed! Xe-xe.. :) Author: Macros, 14 July 2K1. ----------------------------------------- FLASH-ПЗУ DIP-32 TSOP-32 +-+----+ +-+---+ Vpp+1 32+Vcc A11+1 32+OE# *A16+ +WE# A9+ +A10 *A15+ +PR#* A8+ +CE# A12+ +A14 A13+ +DQ7 A7+ +A13 A14+ +DQб A6+ +A8 PR#+ +DQS A5+ +A9 WE#+ +DQЧ A4+ +A11 Vcc+ +DQЗ A3+ +OE# Vpp+ +GND A2+ +A10 *A16+ +DQ2 A1+ +CE# *A15+ +DQ1 A0+ +DQ7 A12+ +DQO DQO+ +DQб A7+ +A0 DQ1+ +DQS A6+ +A1 DQ2+ +DQЧ A5+ +A2 GND+16 17+DQЗ A4+16 17+A3 +------+ +-----+ PLCC-32 A12 A15* A16* Vpp Vcc WE# PR#* -+---+----+----+---+---+---++ / 4 3 2 1 32 21 30| A7+5 29+A14 | o | A6+ +A13 | | A5+ +A8 | | A4+ +A9 | | A3+ +A11 | | A2+ +OE# | | A1+ +A10 | | A0+ +CE# |13 21| DQO+ 14 20 +DQ7 +--+---+---+---+---+---+---+--+ DQ1 DQ2 GND DQЗ DQЧ DQS DQб TSOP-32 TSOP-40 +-+---+ +-+---+ A11+1 32+OE# A16+1 40+A17 A9+ +A10 A15+ +GND A8+ +CE# A14+ +NC A13+ +DQ7 A13+ +A19* A14+ +DQб A12+ +A10 PR#+ +DQS A11+ +DQ7 WE#+ +DQЧ A9+ +DQб Vcc+ +DQЗ A8+ +DQS Vpp+ +GND WE#+ +DQЧ *A16+ +DQ2 PR#+ +Vcc *A15+ +DQ1 Vpp+ +Vcc A12+ +DQO *WP#+ +NC A7+ +A0 *A18+ +DQЗ A6+ +A1 A7+ +DQ2 A5+ +A2 A6+ +DQ1 A4+16 17+A3 A5+ +DQO +-----+ A4+ +OE# A3+ +GND A2+ +CE# A1+20 21+A0 +-----+ TSOP-44 TSOP-48 +-+---+ +-+---+ Vpp+1 44+PR# A15+1 48+A16 WP/*A18+ +WE# A14+ +BYTE# *A17+ +A8 A13+ +GND A7+ +A9 A12+ DQ15/A-1 A6+ +A10 A11+ +DQ7 A5+ +A11 A10+ +DQ14 A4+ +A12 A9+ +DQб A3+ +A13 A8+ +DQ13 A2+ +A14 NC+ +DQS A1+ +A15 NC+ +DQ12 A0+ +A16 WE#+ +DQЧ CE#+ +BYTE# RP#+ +Vcc GND+ +GND Vpp+ +DQ11 OE#+ +DQ15/A-1 WP#+ +DQЗ DQO+ +DQ7 NC+ +DQ10 DQ8+ +DQ14 *A18+ +DQ2 DQ1+ +DQб *A17+ +DQ9 DQ9+ +DQ13 A7+ +DQ1 DQ2+ +DQS A6+ +DQ8 DQ10+ +DQ12 A5+ +DQO DQЗ+ +DQЧ A4+ +OE# DQ11+22 23+Vcc A3+ +GND +-----+ A2+ +CE# A1+24 25+A0 +-----+ TSOP-56 +-+---+ NC+1 56+NC NC+ +A16 A15+ +BYTE# A14+ +GND A13+ +DQ15/A-1 A12+ +DQ7 A11+ +DQ14 A10+ +DQб A9+ +DQ13 A8+ +DQS NC+ +DQ12 NC+ +DQЧ WE#+ +Vcc RP#+ +Vcc NC+ +DQ11 NC+ +DQЗ Vpp+ +DQ10 WP#+ +DQ2 *A18+ +DQ9 *A17+ +DQ1 A7+ +DQ8 A6+ +DQO A5+ +OE# A4+ +GND A3+ +CE# A2+ +A0 A1+ +NC NC+28 29+NC +-----+ +========+----------+-------+----------+ |м/сх |орг-ция* |корпус |примечание| +========+----------+-------+----------+ |28F256 |32K*8 BE |DIP-32 |2,3,30=NC | +--------+----------+-------+----------+ |28F256 |32K*8 BE |PLC-32 |2,3,30=NC | +--------+----------+-------+----------+ |28F512 |64K*8 BE |DIP-32 |2,30=NC | +--------+----------+-------+----------+ |28F512 |64K*8 BE |PLCC-32|2,30=NC | +--------+----------+-------+----------+ |28F010 |128K*8 BE |DIP-32 |30=NC | +--------+----------+-------+----------+ |28F010 |128K*8 BE |PLCC-32|30=NC | +--------+----------+-------+----------+ |28F010 |128K*8 BE |TSOP-32|6=NC | +--------+----------+-------+----------+ |28F001 |128K** BB |DIP-32 |- | +--------+----------+-------+----------+ |28F001 |128K*8 BB |PLCC-32|- | +--------+----------+-------+----------+ |28F001 |128K*8 BB |TSOP-32|- | +--------+----------+-------+----------+ |29EEO10 |128K*8 SA |DIP-32 |1,30=NC | |29F010 | | | | +--------+----------+-------+----------+ |29EEO10 |128K*8 SA |PLCC-32|1,30=NC | |29F010 | | | | +--------+----------+-------+----------+ |29EEO10 |128K*8 SA |TSOP-32|6,9=NC | |29F010 | | | | +--------+----------+-------+----------+ |28F020 |256K*8 BE |DIP-32 |30=A17 | +--------+----------+-------+----------+ |28F020 |256K*8 BE |PLCC-32|30=A17 | +--------+----------+-------+----------+ |28F020 |256K*8 BE |TSOP-32|6=A17 | +--------+----------+-------+----------+ |28F002BC|256K*8 BB |TSOP-40|12,13,45= | |/BN/BL | | |NC | +--------+----------+-------+----------+ |28F002BE|256K*8 BB |TSOP-40|13,45=NC | |/BV | | | | +--------+----------+-------+----------+ |28F0OЧBX|512K*8 BB |TSOP-40|12,45=NC | |/BN/BL | | | | +--------+----------+-------+----------+ |28F0OЧBE|512K*8 BB |TSOP-40|45=NC | |/BV | | | | +--------+----------+-------+----------+ |28F008BE|1024K*8 BB|TSOP-40|- | |/BV | | | | +--------+----------+-------+----------+ |28F200 |256K*8 |TSOP-44|2=WP#;3=NC| | |128K*16 BB| | | +--------+----------+-------+----------+ |28F200 |256K*8 |TSOP-48|16,17=NC | | |128K*16 BB| | | +--------+----------+-------+----------+ |28F200 |256K*8 |TSOP-56|19,20=NC | | |128K*16 BB| | | +--------+----------+-------+----------+ |28F400 |512K*8 |TSOP-44|2=WP# | | |256K*16 BB| | | +--------+----------+-------+----------+ |28F400 |512K*8 |TSOP-48|16=NC | | |256K*16 BB| | | +--------+----------+-------+----------+ |28F400 |512K*8 |TSOP-56|19=NC | | |256K*16 BB| | | +--------+----------+-------+----------+ |28F800 |1024K*8 |TSOP-44|2=A18 | | |512K*16 BB| | | +--------+----------+-------+----------+ |28F800 |1024K*8 |TSOP-48|- | | |512K*16 BB| | | +--------+----------+-------+----------+ |28F800 |1024K*8 |TSOP-56|- | | |512K*16 BB| | | +--------+----------+-------+----------+ |29F200 |256K*8 |TSOP-44|1,3=NC | |29LV200 |128K*16 BB| |2=RY/BY# | +--------+----------+-------+----------+ |29F200 |256K*8 |TSOP-48|13,14=NC | |29LV200 |128K*16 BB| |16,17=NC | | | | |15=RY/BY# | +--------+----------+-------+----------+ |29F400 |512K*8 |TSOP-44|1=NC | |29LVЧO0 |256K*16 BB| |2=RY/BY# | +--------+----------+-------+----------+ |29F400 |512K*8 |TSOP-48|13,14,16= | | | | |NC | |29LVЧO0 |256K*16 BB| |15=RY/BY# | +--------+----------+-------+----------+ |29F800 |1024K*8 |TSOP-44|1=RY/BY# | |29LV800 |512K*16 BB| |2=A18 | +--------+----------+-------+----------+ |29F800 |1024K*8 |TSOP-48|13,14=NC | |29LV800 |512K*16 BB| |15=RY/BY# | +========+----------+-------+----------+ *BE - Bulk Erase (стираемые целиком) BB - Boot Block (несимметричные блоки) SA - Symetric Architecture (сим.блоки) +==========+---------------------------+ |CE# |Выборка микросхемы. | +----------+---------------------------+ |OE# |Разрешение выходных буферов| | |Низкий уровень при низком | | |уровне CE# разрешает чтение| | |данных из микросхемы. | +----------+---------------------------+ |WE# |Разрешение записи. | | |Низкий уровень при низком | | |уровне CE# разрешает запись| | |и переводит выходные буферы| | |в высокоимпедансное состоя-| | |ние независимо от сигнала | | |OE#. | +----------+---------------------------+ |DQx |Двунаправленные линии шины | | |даных. | +----------+---------------------------+ |BYTE# |Управляющий сигнал для вы- | | |бора режима обращения к | | |микросхемам с 8/16-битной | | |организацией. Они имеют | | |два 8-битных банка и их | | |ячейки памяти адресуются | | |16-битными словами. Низкий | | |уровень сигнала BYTE# зада-| | |ет 8-битный режим обмена по| | |линиям DQO-DQ7, при этом | | |линия DQ15/A-1 становится | | |самой младшей линией адре- | | |са, переключающей банки, а | | |линии DQ8-DQ14 переходят в | | |высокоимпедансное состояние| +----------+---------------------------+ |Ax |Входные линии шины адреса. | | |Линия A9 допускает подачу | | |12 В для чтения кода произ-| | |водителя (A0=0) и устрой- | | |ства (A0=1), при этом на | | |остальные адресные линии | | |подается логический "0". | +----------+---------------------------+ |RP# (PWD#)|Низкий уровень сбрасывает | | |регистр команд и переводит | | |микросхему в режим Deep | | |Powerdown с минимальным | | |потреблением питания. Пере-| | |вод сигнала в высокий логи-| | |чесий уровень "пробуждает" | | |микросхему, после чего она | | |переходит в режим чтения | | |данных. Подача высокого | | |(12 В) напряжения разрешает| | |программирование даже | | |защищенного Boot-блока. | +----------+---------------------------+ |WP# |Защита записи. При низком | | |уровне WP# модификация | | |Boot-блока или других бло- | | |ков с установленным битом | | |защиты возможна только при | | |наличии 12 В на входе RP#. | | |При высоком уровне защита | | |блоков игнорируется. | +----------+---------------------------+ |RY/BY# |Сигнал готовности (высокий | | |уровень) микросхемы к | | |очередной операции | | |программирования или | | |стирания. Низкий уровень | | |показывает занятость | | |управляющего автомата вы- | | |полнением операции сти- | | |рания или программирова- | | |ния. Выход обычно не | | |управляется сигналами OE# | | |и CE#. В м/сх 28F01бSA и | | |старше выход имеет тип | | |"открытый коллектор", | | |запираемый по команде, и | | |программируемое назначение.| +----------+---------------------------+ |3/5# |Сигнал, переключающий | | |режим работы м/сх в зави- | | |симости от питающего напря-| | |жения, введен для оптими- | | |зации быстродействия или | | |потребления. | +==========+---------------------------+ FLASH-память фирмы Intel По организации массива различают мик- росхемы: - Bulk Erase - стирание возможно только для всего объема. - Boot Block - массив разделен на нес- колько блоков разного размера, стираемых независимо. Один из блоков имеет допол- нительные аппаратные средства защиты от стирания и записи. - Flash File - массив разделе на нес- колько равноправных независимо стираемых блоков обычно одинакового размера, что позволяет их называть микросхемами с симметричной архитектурой SA. Flash-память первого поколения Микросхемы первого поколения (28F256, 28F512, 28F010, 28F020) имеют одно- байтную организацию (32K, 64K, 128K и 256K*8) и представляют собой единый мас- сив памяти, стираемый целиком и програм- мируемый побайтно. Время доступа указы- вается в конце обозначения (например, 28F010-65) и лежит в диапазоне 65-200 нс. Микросхемы первых выпусков (1990г) имели гарантированное число циклов сти- рания -программирования 10 000, совре- менные - 100 000. Стирание и программирование флэш-памяти возможны только при подаче на вход Vpp напряжения 12 В по командам, записывае- мым во внутренний регистр в шинном цикле записи по сигналу WE#. Выполнение команд инициируется записью их кодов во внутренний регистр, не имею- щий конкретного адреса. +========+------+----------+-----------+ |Команда |Число |1-ый цикл | 2-й цикл| | |циклов|шины | шины | | |шины +---+--+---+---+----+--+ | | |R/W|A |D |R/W|A |D | +--------+-----++--++-++--++--++---++--+ |Read | | | | | | | | |Memory | 1 |W |X |00h|- |- |- | +--------+-----+---+--+---+---+----+---+ |Read ID | 3 |W |X |90h|R |0(1)|Id | +--------+-----+---+--+---+---+----+---+ |Set-up | 2 |W |X |20h|W |X |20h| |Erase/ | | | | | | | | |Erase | | | | | | | | +--------+-----+---+--+---+---+----+---+ |Erase | 2 |W |EA|AOh|R |X |EVD| |Verify | | | | | | | | +--------+-----+---+--+---+---+----+---+ |Set-up | 2 |W |X |40h|W |PA |PD | |Program/| | | | | | | | |Program | | | | | | | | +--------+-----+---+--+---+---+----+---+ |Program | 2 |W |X |COh|R |X |PVD| |Verify | | | | | | | | +--------+-----+---+--+---+---+----+---+ |Reset | 2 |W |X |FFh|W |X |FFh| +========+-----+---+--+---+---+----+---+ Здесь X обозначает несущественный ад- рес, ID - идентификатор производителя или устройства, EA - адрес ячейки, в ко- торой контроллируется стирание, EVD - данный, считанные при верификации сыира- ния (должны быть FFh), PA и PD - адрес и данные программируемой ячейки, PVD - данные, считанные при верификации прог- раммирования. Назначение команд: Read Memory - команда чтения данных, пе- реводящая микросхему в режим чтения, совместимый по интерфейсу с EPROM. Read ID - команда чтения идентификато- ров. В последующих шинных циклах чтения по адресу 0 считывается M_Id (идентифи- катор производителя, 89h), по адресу 1 - D_Id (идентификатор устройства, для мик- росхем 28F256, 28F512, 28F010, 28F020 это B9h, B8h, BЧh и BDh соответственно). Set-up Erase/Erase - подготовка и собственно стирание. Внутренний цикл стирания начинается по подъему сигнала WE# во втором шинном цикле и завершается по последующему шинному циклу записи или по внутреннему таймеру (Stop Timer). Erase Verify - верификация стирания. В отличие от Read Memory, проверяемая ячейка ставится в более жесткие условия считывания для повышения достоверности контроля стирания. Set-up Program/Program - подготовка и собственно программирование. Команда вы- полняется аналогично стиранию, но во втором шинном цикле передается адрес и данные программируемой ячейки. Program verify - верификация программи- рования (аналогично верификации стира- ния) Reset - команда сброса, прерывающая ко- манду программирования или стирания.