Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника



Мікросхеми флеш-пам’яті




 

Мікросхеми з паралельним доступом.Мікросхеми серії АТ29С були спеціально розроблені для розв’язання задач оновлення невеликих обсягів інформації в діапазоні від 64K до 4М – як програм, так і даних – при живленні однією з напруг із ряду 5 В; 3 В; 2,7 В.

Особливості архітектури і використання мікросхем даної серії розглянемо на прикладі мікросхеми АТ29С256 ємністю 256K з організацією 32K × 8.

Мікросхеми мають час доступу на зчитування, що не перевищує 70 нс, а час програмування сторінки – не більше 10 мс. Кожен з секторів може репрограмуватись не менш ніж 10 000 разів.

Спрощена архітектура мікросхеми приведена на рис. 8.32, а на рис. 8.33 приводиться умовне позначення мікросхеми.

 

Рис. 8.32 Рис. 8.33

 

 

У Табл. 8.10 пояснюється призначення виводів.

Табл. 8.10

Назва виводу Призначення
A0 A14 Address Inputs (адресні входи)
Chip Enable (пристрій активізовано)
Output Enable (вихід дозволено)
Write Enable (запис дозволено)
I/O0 I/O7 Data Inputs/Outputs (інформаційні входи/виходи)

 

Порівнюючи рис. 8.32 і рис. 8.16 (блок-схему паралельної EEPROM), бачимо, що їх структури дуже близькі. Читання даних з мікросхеми подібне до читання зі статичної пам’яті. Репрограмування АТ29С256 забезпечується на сторінковій основі, 64 байти даних завантажуються в мікросхему, а потім одночасно записуються. Вміст мікросхеми може бути стертим одночасно шестибайтним програмним кодом, хоча стирання перед програмуванням необов’язково. Протягом циклу репрограмування адреси розміщення 64 байтів записуваних даних завантажуються у внутрішні регістри і звільняють адресну шину і шину даних для інших операції.

При наступній ініціалізації програмного циклу в мікросхемі флеш-пам’яті автоматично стирається адресована сторінка і завантажуються дані для наступного запису, при якому використовується внутрішній таймер. Закінчення програмного циклу може бути визначено по значенню І/О7 . Якщо кінець програмного циклу визначений, то може бути розпочатий новий доступ до мікросхеми на зчитування інформації чи її перезапис.



Розглянемо операції з флеш-пам’яттю.

Операція читання (READ). Для читання мікросхема доступна подібно попередньо розглянутим пристроям пам’яті. При і дані, які зберігаються в елементах пам’яті за адресним кодом, що задається на адресних входах A0 A14 передаються шину І/О. Перехід шини у Z-стан забезпечується умовою:

.

Рекомендована послідовність подачі сигналів на входи мікросхеми: A0 A14 ; ; ; читання даних. Після зчитування даних за вказаною адресою зміна адресного коду приведе до зчитування даних за новою адресою.

Операція програмування (PROGRAMMING). Мікросхема флеш-пам’яті програмується на основі сторінок. Сторінки визначаються старшими адресами A6 A14 адресного коду. Молодші розряди A0 A5 визначають розміщення байтів усередині сторінки. При необхідності зміни одного байта у межах сторінки необхідно виконувати перезапис цілої сторінки. Для програмування цілої сторінки спочатку інформація побайтово завантажується. Завантаження байта виконується при високому рівні сигналу на вході і низьких рівнях сигналів на входах і . Адресний код, який забезпечує запис байта, фіксується за зрізом останнього з сигналів або (tфA). Дані фіксуються за першим з фронтів сигналів або (tфD). Приклад часової діаграми завантаження байта приводиться на рис. 8.34.



 

Рис. 8.34

 

Після завантаження одного байта, наступний повинен бути завантажений протягом інтервалу часу, що не перевищує 150 мкс. Якщо в інтервалі 150 мкс черговий байт не завантажиться, період завантаження припиниться і почнеться внутрішній період програмування сторінки. Протягом інтервалу запису сторінки має місце заборона операції читання, що контролюється, подібно до EEPROM, через І/О7 .

При такій організації запису перезапис окремого байта можливий лише на основі перевантаження сторінки з байтом, що замінюється в оперативну пам’ять, заміна байта в оперативній пам’яті з послідуючим перезаписом у флеш-пам’ять.

Дещо іншу, більш розвинену архітектуру мають мікросхеми з ємністю понад 1 Мбіт. Особливість таких архітектур розглянемо на прикладі мікросхеми флеш-пам’яті АТ29С040А ємністю 4 Мбіт з організацією 512K × 8. Умовне позначення мікросхеми подібне до рис. 8.33 з розширеним адресним кодом в інтервалі A0 A18 . Блок-схема мікросхеми приведена на рис. 8.35.

Рис. 8.35

Окрім базової системи команд, аналогічної раніше приведеним мікросхемам, мікросхема, що розглядається, має програмний механізм використання BOOT-блоків для блокування доступу до окремих розділів пам’яті. Мікросхема має два апаратно організованих блоки пам’яті, що мають механізм блокування. При використанні такого механізму виключається можливість програмування даних у визначені блоки. Кожен з таких блоків (рис. 8.35) має ємність 16 Кбайт. Режим роботи механізму блокування може бути встановленим незалежно для кожного з блоків або для двох одночасно. Такі блоки називають BOOT-блоками, оскільки в них здебільшого знаходяться коди, що завантажують всю систему пам’яті і які повинні бути надійно захищені. У розгляданій мікросхемі BOOT-блоки розміщені у перших і в останніх шістнадцяти кілобайтах пам’яті. Завдяки цьому механізм блокування може підтримувати систему, що завантажує пам’ять з нижніх або верхніх адресних кодів.



При включенні механізму блокування дані в цих блоках ніколи не можуть бути стерті або перепрограмовані, у той час як дані в основній пам’яті можуть бути змінені шляхом типового перепрограмування. Активізація механізму блокування досягається серією з 7 команд для визначення адресних кодів специфічних даних, які повинні бути використанні. Блок-схеми таких мікропрограм приводяться у довідковій літературі на мікросхеми пам’яті.

Визначити, чи включений механізм блокування відносно BOOT-блоків, можна програмними засобами. Для цього в довідковій літературі на мікросхему приводиться відповідний алгоритм зчитування. Суть його полягає в тому, що у режимі програмної ідентифікації йде звернення за адресою 00002Н для визначення стану нижнього BOOT-блоку, а за адресою FFFF2H – відповідно, верхнього. Якщо зчитані дані FЕ, то відповідний блок можна програмувати; якщо ж по вказаних адресах зчитується FF, то механізм блокування включений і відповідний блок не може бути запрограмованим. Механізм ідентифікації стану BOOT-блоків можливо використати для повернення їх у звичайний режим роботи програмування.

Мікросхеми флеш-пам’яті з більшою інформаційною ємністю зведені в серію АТ49F (AT49F008A, AT49F008AT, AT49F8192A, AT49F8192AT). Усі вони мають ємність 8 Мбайт з організацією 1М × 8 (512K × 16).

Для використання у персональних комп’ютерах випускаються флеш-карти ємністю 64, 128, 256 і 512 МБайт. Детальну інформацію про них можна знайти у довідковій літературі.

Серед мікросхем флеш-пам’яті з послідовним доступом розглянемо AT45D011 з серії AT45D з інформаційною ємністю 1 МБайт і організацію 512 сторінок по 264 байти кожна (до серії входять також AT45DB011, AT45DB081A, AT45DB321). У доповнення до основної пам’яті, мікросхема AT45D011 також містить один буфер даних послідовної оперативної пам’яті ємністю 264 байти. На відміну від звичайної flash-пам’яті, що забезпечує доступ до даних через паралельну адресну шину і паралельний інтерфейс, мікросхема використовує послідовний доступ до даних і послідовний інтерфейс. Умовне позначення мікросхеми приведено на рис. 8.36, а призначення виводів – у Табл. 8.11.

Рис. 8.36   Табл. 8.11
Назва виводу Призначення
Chip Select (вхід вибору мікросхеми)
SCK Serial Clock (вхід тактового генератора)
SI Serial Input (послідовний вхід)
SO Serial Output (послідовний вихід)
Hardware Page Write Protect Pin (вхід апаратного захисту запису сторінки)
Chip Reset (перевантаження пристрою)
Ready/Busy (готовність/зайнятість пристрою)

 

 

Мікросхема оптимізована для використання у різноманітних комерційних і промислових задачах, де суттєвими є малі розміри, невелика кількість виводів, низька напруга і споживана потужність. Типове використання мікросхеми – зберігання звукових, голосових сигналів і різноманітних даних. Мікросхема має частоту синхронізації до 15 МГц. Блок-схема мікросхеми пам’яті зображена на рис. 8.37.

 

Рис. 6.37

З неї витікає загальний алгоритм функціонування AT45D011. Він полягає у тому, що весь обмін між матрицею флеш-пам’яті і зовнішніми пристроями забезпечується за допомогою керуючих сигналів інтерфейсу вводу-виводу через буфер оперативної пам’яті. Це забезпечує можливість розв’язання задач читання і особливо запису у послідовному форматі з високою швидкістю. Сторінка даних ємністю 256 байт записується за 7 мс за допомогою внутрішньої системи організації запису без використання окремої операції стирання через трьохпровідну інтерфейсну шину, що складається з провідників CS, SO, SI.

Матриця пам’яті для забезпечення високої гнучкості розділена на три рівні: сектори, блоки та сторінки. Архітектура її з урахуванням взаємозв’язків між секторами, блоками і сторінками приводиться на рис. 8.38.

 

Рис. 8.38

Усі сторінки мають однаковий розмір – 256 байт, тобто організацію 256 × 8, але кількість сторінок по блоках різна. Усі операції обміну з матрицею пам’яті виконуються на основі сторінок, але операції вибіркового стирання можуть виконуватись як на основі сторінок так і поблоково.

Усі операції обміну інформації забезпечуються через процесор за допомогою невеликої кількості спеціальних команд, які будуть висвітлені по ходу пояснень. Команди, адреси і дані передаються, починаючи зі старшого розряду.

Існують декілька операцій, які забезпечують зчитування інформації.

Зчитування інформації посторінково дозволяє користувачу читати дані з будь-якої з 512 сторінок основної пам’яті, минаючи буфер даних і залишаючи вміст буфера незмінним. Щоб почати посторінкове зчитування, формується така послідовність сигналів. Спочатку подається 8-бітний машинний код 52h. За ним відповідно подається адресний код довжиною 24 біти, а потім 32 біти байдужого стану (рис. 8.39).

 

 

63 32 31 23 22 14 13 8
x … x BA0 … BA8 PA0 … PA8 r … r 52h

 

Рис. 8.39

 

У приведеній послідовності 6 адресних бітів (8…13) зарезервовані (r…r) для можливості організації роботи з мікросхемами пам’яті, що містять більший обсяг інформації. Наступні 9 адресних бітів (14…22) вказують на адресу сторінки (PA0…PA8), а адресні біти BA0…BA8 (23…31) вказують на початкову адресу байта на сторінці. Решта 32 біти потрібні для ініціалізації операції зчитування. Уся ця послідовність сигналів подається на вхід SI з одночасною подачею синхроімпульсів на SCK. Після завершення описаної послідовності через 1 такт на вихід SO будуть видаватись дані синхронно з роботою тактового генератора. Описана операція зчитування ілюструється часовими діаграмами, що приведені на рис. 8.40, a, а більш детально деякі особливості пояснює рис. 8.40, б.

 

А

Б

Рис. 8.40

Вихід повинен мати низький рівень протягом всього часу звернення до мікросхеми і зчитування даних. Якщо при досягається кінець зчитування сторінки, то керуючий інтерфейс знову сформує початкову адресу цієї ж сторінки і продовжить зчитування. Перехід сигналу до високого рівня приведе до закінчення операції зчитування, і вихід SO перейде у Z-стан.

Дані можуть бути зчитані і з буфера даних. Для цього формується послідовність сигналів, що зображена на рис. 8.41.

 

39 32 31 23 22 8 7 0
x … x BFA0 … BFA8 x … x 54h

 

Рис. 8.41

 

Після машинного коду 54h подається 15 бітів байдужого стану, потім 9 бітів адресних (BFA8…BFA0) і потім знову 8 бітів байдужого стану.

Дія сигналу у розгляданому випадку аналогічна попередній.

Деталізовані часові діаграми процесу зчитування даних з буфера приводяться на рис. 8.42.

А

Б

Рис. 8.42

Однією з операцій читання є операція переміщення сторінки з основної пам’яті до буфера. Така процедура починається після встановлення із завантаження машинного коду 53h, за яким слідують 6 резервних бітів (r), 9 адресних (PA8…PA0), що вказують на сторінку пам’яті, котру необхідно перемістити, і 9 бітів байдужого стану (рис. 8.43).

 

31 23 22 14 13 8 7 0
x … x PA8 … PA0 r … r 53h

 

Рис. 8.43

 

В інтервалі дії вказаних 32-х тактів . Переміщення сторінки даних розпочинається після того, як по закінченню 32-го такту рівень сигналу на вході зміниться на високий. Під час переміщення даних за допомогою режимного регістра (Status Register) можна визначити, чи закінчилась передача даних. Часові діаграми завантаження коду для переміщення даних зображені на рис. 8.44.

 

А

 

Б

Рис. 8.44

До операції читання відносяться також операція порівняння сторінки основної пам’яті з буфером. Після машинного коду 60h йдуть 24 адресні біти, що містять 6 зарезервованих (r…r), 9 адресних (PA8…PA0), які вказують на сторінку в основній пам’яті, порівнювану з даними буфера, і 9 бітів байдужого стану. Завантаження цієї послідовності відбувається аналогічно попередньому. При переході сигналу з низького рівня на високий, 264 байти обраної сторінки порівнюватимуться з відповідними байтами буфера. Результат порівняння виводиться у 6-й розряд режимного регістра (“0” у цьому розряді позначає відповідність даних).

Режимний регістр пристрою пам’яті використовується для визначення режиму мікросхеми (вільна або зайнята), коду обсягу пам’яті мікросхеми, результату порівняння сторінки пам’яті з буфером та деякої іншої інформації. Для визначення коду режимного регістра завантажується машинний код 57h. Після вводу останнього біта з 8 бітів режимного регістра, починаючи зі старшого, можуть бути зчитані послідовно з SO за 8 тактів SCK. П’ять старших бітів регістра несуть інформацію про пристрій пам’яті, а решта 3 використовуються за індивідуальними призначеннями. Після зчитування нульового біта режим зчитування регістра повторюватиметься до того часу, поки .

Інформація про зайнятість мікросхеми (вільна або зайнята) міститься у 7-му біті. Якщо значення цього біта дорівнює “1”, то пристрій готовий отримати нову команду, тобто він вільний. Користувач може вибирати 7-й біт з режимного регістра, зупиняючи SCK, як тільки 7-й біт поданий на вихід.

Особливості операцій програмування. Запис даних у буфер через вхід SI забезпечується після завантаження через цей же вхід кодової послідовності, що складається з машинного коду 84h, 15 бітів байдужого стану та 9-ти адресних (BFA8…BFA0), що визначають перший байт буфера. Дані вводяться слідом за адресним кодом. Якщо при записі даних буфер буде заповнений, то при почнеться повторний запис у буфер з початкової адреси. Запис припиняється при переході з “0” в “1”. Часові діаграми запису приведені на рис. 8.45, а, а структура кодової послідовності для виконання операцій запису в буфер – відповідно, на рис. 8.45, б.

А

 

31 23 22 8 7 0
BFA8 … BFA0 x … x 84h

 

Б

Рис. 8.45

Перезапис в основну пам’ять з буфера забезпечується кодовою послідовністю, що починається з коду 83h. Структура кодової послідовності для перезапису приведена на рис. 8.46, а, а на рис. 8.46, б – відповідні часові діаграми.

 

31 23 22 14 13 8 7 0
x … x PA8 … PA0 r … r 83h

 

А

Б

Рис. 8.46

При переході рівня сигналу на з “0” на “1” пристрій спочатку знищить попередній запис у вибраній сторінці (запишуться всі одиниці), а потім завантажить дані з буфера. Режими стирання і запису в основну пам’ять відбуваються за внутрішнім режимом синхронізації. Протягом цих режимів відповідний біт режимного регістра показуватиме зайнятість мікросхеми.

Якщо ж програмується мікросхема з попередньо очищеними сторінками пам’яті, то використовується попередня кодова послідовність (див. рис. 8.46, а), в якій машинний код 83h заміняється кодом 84h. Час запису у такому випадку буде зменшений.

Для очищення сторінки виконується команда PAGE ERASE, кодова послідовність якої повторює попередню з тією лише різницею, що вона має машинний код 81h. При переході рівня сигналу на з “0” на “1” пристрій очистить вказану сторінку і встановить у ній всі “1”. Операція стирання забезпечується внутрішньою синхронізацією.

Подібно до очищення сторінки основної пам’яті, може бути очищений цілий блок. Така операція виконується для зменшення часу перезапису великих обсягів інформації. Для використання команди BLOCK ERASE використовується машинний код 50h. Кодова послідовність очищення блоку приведена на рис. 8.47.

 

31 20 19 14 13 8 7 0
x … x PA8 … PA0 r … r 50h

 

Рис. 8.47

 

Шість адресних регістрів PA8…PA3 вказують на блок з 8 сторінок, який необхідно очистити. При переході рівня сигналу на з “0” на “1” за внутрішньою самосинхронізацією очиститься весь блок.

Програмування безпосередньо основної пам’яті виконується кодовою послідовністю, що приведена на рис. 8.48.

 

31 23 22 14 13 8 7 0
PA8 … PA0 BFA8 … BFA0 r … r 82h

 

Рис. 8.48

 

Після того, як всі адресні біти будуть завантажені, пристрій прийме дані з SI і запише їх в буфер даних. При заповнені буфера і зміні рівня сигналу на з “0” на “1” спочатку буде очищена адресована сторінка, а потім перепишуться дані з буфера. Очищення сторінки та її перезапис забезпечуються внутрішньою синхронізацією.

На завершення, розглянемо призначення тих виводів мікросхеми, які раніше не розглядалися. Вхід WP – апаратний захист запису. При його нульовому значенні перші 256 сторінок основної пам’яті не можуть бути репрограмовані. Для репрограмування цих сторінок необхідно встановити WP і використати вище описані команди.

Вхід RESET при низькому рівні сигналу на ньому перериватиме виконання будь-якої операції і зупинятиме роботу мікросхеми. Нормальна робота забезпечуватиметься при високому рівні сигналу на ньому. Цей вхід після подачі живлення самостійно встановлюється в “1”, доки не буде приєднаний до зовнішніх сигналів. Рекомендується підтримувати високій рівень сигналу на ньому за допомогою зовнішніх кіл.

Вихід низьким рівнем сигналу сигналізує про зайнятість мікросхеми внутрішніми режимами запису. Стан зайнятості показує, що масив флеш-пам’яті не може використовуватись.

 


Дата добавления: 2015-09-13; просмотров: 15; Нарушение авторских прав







lektsii.com - Лекции.Ком - 2014-2021 год. (0.042 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты