F40-43a (1041604), страница 35
Текст из файла (страница 35)
Значениястарших 8 разрядов A[15:8] шины адреса определяются содержимым регистра EMI0CN, а значениямладших 8 разрядов A[7:0] шины адреса определяются содержимым регистров R0 или R1. Врежиме «с выбором банка» все 16 разрядов A[15:0] шины адреса выдаются на внешние выводы.- При использовании команды MOVX в 16-разрядной форме содержимое регистра указателя данныхDPTR определяет, осуществляется ли доступ к встроенной памяти или к внешней памяти. В этомслучае, в отличие от команды MOVX в 8-разрядной форме, при обращении к внешней памяти навнешние выводы выдаются все 16 разрядов A[15:0] шины адреса.16.5.4.
Режим доступа только к внешней памяти XRAMКогда EMI0CF.[3:2] = ‘11’, все команды MOVX будут обращаться к адресному пространству внешнейпамяти XRAM микроконтроллера. Встроенная память XRAM не видима для процессорного ядра. Этот режимполезен при обращении к внешней памяти, расположенной в первой 4-Кбайтной области адресногопространства (0x0000 – 0x0FFF).- Команды MOVX в 8-разрядной форме игнорируют содержимое регистра EMI0CN. Старшие битыадреса A[15:8] не выдаются на внешние выводы (так же, как при обращении к внешней памяти врежиме раздельного доступа без выбора банка, описанном выше).
Это позволяет пользователюманипулировать старшими битами адреса как угодно, непосредственно устанавливая состояниепорта. Значения младших 8 разрядов A[7:0] полного адреса определяются содержимым регистровR0 или R1.- Команда MOVX в 16-разрядной форме для определения полного адреса A[15:0] используетсодержимое 16-разрядного указателя данных DPTR. При обращении к внешней памяти на внешниевыводы выдаются все 16 разрядов A[15:0] шины адреса.16.6. Тактирование и динамические параметрыВременные параметры интерфейса внешней памяти можно программировать, что позволяетподключаться к устройствам, предъявляющим различные требования ко времени установки и удержаниясигналов.
Время установки адреса, время удержания адреса, ширина импульсов стробирования /RD и /WR, атакже (в мультиплексированном режиме) ширина импульса ALE являются программируемыми. Длительностьвсех этих параметров задается в периодах системного тактового сигнала SYSCLK. Для настройки используютсярегистр EMI0TC (см.
рис.16.6) и биты EALE1-0 регистра EMI0CF.Время выполнения команды MOVX, обращающейся к внешней памяти, можно вычислить, добавив 4цикла SYSCLK к значениям временных параметров, определяемым в регистре EMI0TC. Длянемультиплексированного режима работы минимальное время выполнения операции обращения к внешнейпамяти XRAM составляет 5 циклов SYSCLK (1 SYSCLK для импульса /RD или /WR + 4 SYSCLKs).
Длямультиплексированного режима работы сигнал ALE будет требовать как минимум 2 дополнительных циклаSYSCLK. Поэтому, для мультиплексированного режима работы минимальное время выполнения операцииобращения к внешней памяти XRAM составляет 7 циклов SYSCLK (2 SYSCLK для ALE + 1 SYSCLK дляимпульса /RD или /WR + 4 SYSCLKs). После сброса для программируемых временных параметровустанавливаются по умолчанию максимальные задержки.В таблице 16.1 приведены временные параметры интерфейса внешней памяти, на рисунках 16.7 – 16.12приведены временные диаграммы для различных режимов работы EMIF и различных форм команды MOVX.181Ред.
1.3C8051F040/1/2/3Рисунок 16.6. EMI0TC: Регистр управления временными параметрами интерфейсавнешней памятиR/WEAS1R/WEAS0R/WEWR3R/WEWR2R/WEWR1R/WEWR0Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2R/WEAH1Бит 1R/WEAH0Бит 0Значениепри сбросе:11111111SFR Адрес: 0xA1SFR страница: 0Биты 7-6: EAS1-0: Биты настройки времени установки адреса EMIF.00: Время установки адреса = 0 циклов SYSCLK01: Время установки адреса = 1 цикл SYSCLK10: Время установки адреса = 2 цикла SYSCLK11: Время установки адреса = 3 цикла SYSCLKБиты 5-2: EWR3-0: Биты управления шириной импульсов /RD и /WR EMIF.0000: Ширина импульсов /RD и /WR = 1 цикл SYSCLK0001: Ширина импульсов /RD и /WR = 2 цикла SYSCLK0010: Ширина импульсов /RD и /WR = 3 цикла SYSCLK0011: Ширина импульсов /RD и /WR = 4 цикла SYSCLK0100: Ширина импульсов /RD и /WR = 5 циклов SYSCLK0101: Ширина импульсов /RD и /WR = 6 циклов SYSCLK0110: Ширина импульсов /RD и /WR = 7 циклов SYSCLK0111: Ширина импульсов /RD и /WR = 8 циклов SYSCLK1000: Ширина импульсов /RD и /WR = 9 циклов SYSCLK1001: Ширина импульсов /RD и /WR = 10 циклов SYSCLK1010: Ширина импульсов /RD и /WR = 11 циклов SYSCLK1011: Ширина импульсов /RD и /WR = 12 циклов SYSCLK1100: Ширина импульсов /RD и /WR = 13 циклов SYSCLK1101: Ширина импульсов /RD и /WR = 14 циклов SYSCLK1110: Ширина импульсов /RD и /WR = 15 циклов SYSCLK1111: Ширина импульсов /RD и /WR = 16 циклов SYSCLKБиты 1-0: EAH1-0: Биты настройки времени удержания адреса EMIF.00: Время удержания адреса = 0 циклов SYSCLK01: Время удержания адреса = 1 цикл SYSCLK10: Время удержания адреса = 2 цикла SYSCLK11: Время удержания адреса = 3 цикла SYSCLKРед.
1.3182C8051F040/1/2/316.6.1. Не мультиплексированный режим16.6.1.1. 16-разр. MOVX: EMI0CF[4:2] = ‘101’, ‘110’, или ‘111’Рисунок 16.7. Временные параметры интерфейса внешней памяти(не мультиплексированный режим, 16-разр. MOVX)ЗАПИСЬADDR[15:8]P1/P5Адрес EMIF (старший байт) из DPHP1/P5ADDR[7:0]P2/P6Адрес EMIF (младший байт) из DPLP2/P6DATA[7:0]P3/P7Записываемые данные EMIFP3/P7TTWDSWDHTTACSTACWACH/WRP0.7/P4.7P0.7/P4.7/RDP0.6/P4.6P0.6/P4.6ЧТЕНИЕADDR[15:8]P1/P5Адрес EMIF (старший байт) из DPHP1/P5ADDR[7:0]P2/P6Адрес EMIF (младший байт) из DPLP2/P6DATA[7:0]P3/P7Считываемые данныеEMIFTRDSTTACS183ACWP3/P7TRDHTACH/RDP0.6/P4.6P0.6/P4.6/WRP0.7/P4.7P0.7/P4.7Ред. 1.3C8051F040/1/2/316.6.1.2.
8-разр. MOVX без выбора банка: EMI0CF[4:2] = ‘101’ или ‘111’Рисунок 16.8. Временные параметры интерфейса внешней памяти(не мультиплексированный режим, 8-разр. MOVX без выбора банка)ЗАПИСЬADDR[15:8]P1/P5ADDR[7:0]P2/P6Адрес EMIF (8 младших разрядов) из R0 или R1P2/P6DATA[7:0]P3/P7Записываемые данные EMIFP3/P7TTWDSTWDHTACSTACWACH/WRP0.7/P4.7P0.7/P4.7/RDP0.6/P4.6P0.6/P4.6ЧТЕНИЕADDR[15:8]P1/P5ADDR[7:0]P2/P6DATA[7:0]P3/P7Адрес EMIF (8 младших разрядов) из R0 или R1Считываемые данныеEMIFTRDSTTACSACWP2/P6P3/P7TRDHTACH/RDP0.6/P4.6P0.6/P4.6/WRP0.7/P4.7P0.7/P4.7Ред.
1.3184C8051F040/1/2/316.6.1.3. 8-разр. MOVX с выбором банка: EMI0CF[4:2] = ‘110’Рисунок 16.9. Временные параметры интерфейса внешней памяти(не мультиплексированный режим, 8-разр. MOVX с выбором банка)ЗАПИСЬADDR[15:8]P1/P5Адрес EMIF (старший байт) из EMI0CNP1/P5ADDR[7:0]P2/P6Адрес EMIF (младший байт) из R0 или R1P2/P6DATA[7:0]P3/P7Записываемые данные EMIFP3/P7TTWDSWDHTTACSTACWACH/WRP0.7/P4.7P0.7/P4.7/RDP0.6/P4.6P0.6/P4.6ЧТЕНИЕADDR[15:8]P1/P5Адрес EMIF (старший байт) из EMI0CNP1/P5ADDR[7:0]P2/P6Адрес EMIF (младший байт) из R0 или R1P2/P6DATA[7:0]P3/P7Считываемые данныеEMIFTRDSTTACS185ACWP3/P7TRDHTACH/RDP0.6/P4.6P0.6/P4.6/WRP0.7/P4.7P0.7/P4.7Ред. 1.3C8051F040/1/2/316.6.2.
Мультиплексированный режим16.6.2.1. 16-разр. MOVX: EMI0CF[4:2] = ‘001’, ‘010’, или ‘011’Рисунок 16.10. Временные параметры интерфейса внешней памяти(мультиплексированный режим, 16-разр. MOVX)ЗАПИСЬADDR[15:8]P2/P6AD[7:0]P3/P7Адрес EMIF (старший байт) из DPHАдрес EMIF (младший байт)из DPLTALEHALEP2/P6Записываемые данные EMIFP3/P7TALELP0.5/P4.5P0.5/P4.5TTWDSTACSWDHTTACWACH/WRP0.7/P4.7P0.7/P4.7/RDP0.6/P4.6P0.6/P4.6ЧТЕНИЕADDR[15:8]P2/P6AD[7:0]P3/P7Адрес EMIF (старший байт) из DPHАдрес EMIF (младший байт)из DPLTALEHALEP2/P6Считываемые данныеEMIFTTALELRDSP3/P7TRDHP0.5/P4.5P0.5/P4.5TACSTACWTACH/RDP0.6/P4.6P0.6/P4.6/WRP0.7/P4.7P0.7/P4.7Ред.
1.3186C8051F040/1/2/316.6.2.2. 8-разр. MOVX без выбора банка: EMI0CF[4:2] = ‘001’ или ‘011’Рисунок 16.11. Временные параметры интерфейса внешней памяти(мультиплексированный режим, 8-разр. MOVX без выбора банка)ЗАПИСЬADDR[15:8]AD[7:0]P2/P6P3/P7Адрес EMIF (8 младшихразрядов) из R0 или R1TALEHALEЗаписываемые данные EMIFP3/P7TALELP0.5/P4.5P0.5/P4.5TTWDSTACSWDHTTACWACH/WRP0.7/P4.7P0.7/P4.7/RDP0.6/P4.6P0.6/P4.6ЧТЕНИЕADDR[15:8]AD[7:0]P2/P6P3/P7Адрес EMIF (8 младшихразрядов) из R0 или R1TALEHALEСчитываемые данныеEMIFTTALELRDSTRDHP0.5/P4.5P0.5/P4.5TACS187P3/P7TACWTACH/RDP0.6/P4.6P0.6/P4.6/WRP0.7/P4.7P0.7/P4.7Ред. 1.3C8051F040/1/2/316.6.2.3.
8-разр. MOVX с выбором банка: EMI0CF[4:2] = ‘010’Рисунок 16.12. Временные параметры интерфейса внешней памяти(мультиплексированный режим, 8-разр. MOVX с выбором банка)ЗАПИСЬADDR[15:8]P2/P6AD[7:0]P3/P7Адрес EMIF (старший байт) из EMI0CNАдрес EMIF (младший байт)из R0 или R1TALEHALEP2/P6Записываемые данные EMIFP3/P7TALELP0.5/P4.5P0.5/P4.5TTWDSTACSWDHTTACWACH/WRP0.7/P4.7P0.7/P4.7/RDP0.6/P4.6P0.6/P4.6ЧТЕНИЕADDR[15:8]P2/P6AD[7:0]P3/P7Адрес EMIF (старший байт) из EMI0CNАдрес EMIF (младший байт)из R0 или R1TALEHALEP2/P6Считываемые данныеEMIFTTALELRDSP3/P7TRDHP0.5/P4.5P0.5/P4.5TACSTACWTACH/RDP0.6/P4.6P0.6/P4.6/WRP0.7/P4.7P0.7/P4.7Ред.
1.3188C8051F040/1/2/3Таблица 16.1. Временные параметры интерфейса внешней памятиПАРАМЕТРTSYSCLKTACSTACWTACHTALEHTALELTWDSTWDHTRDSTRDH189ОПИСАНИЕМин.Период системного тактового сигналаЗадержка сигнала управления относительно адреса(Address / Control Setup Time)Ширина импульса управления(Address / Control Pulse Width)Время удержания адреса(Address / Control Hold Time)Длительность высокого уровня сигнала ALE(Address Latch Enable High Time)Длительность низкого уровня сигнала ALE(Address Latch Enable Low Time)Установка данных перед нарастающим фронтомсигнала /WR (Write Data Setup Time)Удержание данных после нарастающего фронтасигнала /WR (Write Data Hold Time)Установка данных перед нарастающим фронтомсигнала /RD (Read Data Setup Time)Удержание данных после нарастающего фронтасигнала /RD (Read Data Hold Time)Ред. 1.3Макс.Ед. изм.нс4003*TSYSCLKнс1*TSYSCLK16*TSYSCLKнс03*TSYSCLKнс1*TSYSCLK4*TSYSCLKнс1*TSYSCLK4*TSYSCLKнс1*TSYSCLK19*TSYSCLKнс03*TSYSCLKнс20нс0нсC8051F040/1/2/3ПРИМЕЧАНИЯРед.