達拉斯半導(dǎo)體DS89C430超高速微控制器是一款每機器周期1時鐘的器件。DS89C430可直接替代舊的8051架構(gòu)設(shè)計。但是,必須評估內(nèi)存接口時序。本應(yīng)用筆記介紹了使用DS89C430微控制器時支持的五種總線模式。
介紹
超高速閃存微控制器系列,包括DS89C430和DS89C450,集成了獨特的每機器1時鐘周期內(nèi)核以及不同數(shù)量的閃存和內(nèi)部MOVX SRAM。雖然這使得設(shè)計一個沒有外部存儲器組件的完整系統(tǒng)成為可能,但某些應(yīng)用可能需要通過高速外部存儲器總線訪問額外的程序和/或數(shù)據(jù)存儲器。該系列中的器件支持多種內(nèi)存訪問模式,允許使用最慢(因此最便宜)的內(nèi)存器件以最快的速度運行。
任何內(nèi)存系統(tǒng)的設(shè)計都依賴于任意數(shù)量的常識規(guī)則。始終保持高速地址線短,以盡量減少傳輸線效應(yīng)。通過最小化加載次數(shù)和/或使用緩沖區(qū),使任何內(nèi)存信號保持低負載。始終在微控制器、解復(fù)用鎖存器和存儲設(shè)備上使用足夠的去耦;在使用超高速微控制器進行設(shè)計時,這一點尤其重要。
這些規(guī)格假設(shè)指定信號的容性負載大致相等。但是,如果任何信號連接到額外的負載,則應(yīng)在關(guān)鍵路徑分析中使用額外的裕量,并選擇適當?shù)拇鎯ζ魉俣?。對于其他非常?guī)器件,在設(shè)計評估中確認其他重要的時序參數(shù)(例如寫入激活前的數(shù)據(jù)設(shè)置)可能是明智的。緩沖器可用于最大程度地減少總線負載過重的影響。
本應(yīng)用筆記有助于系統(tǒng)架構(gòu)師選擇正確的存儲器類型和速度,以滿足其設(shè)計標準。本文討論了各種外部存儲器尋址模式的設(shè)計建議和時序考慮因素。本應(yīng)用筆記中的計算基于編寫時的最佳數(shù)據(jù)。請查看相應(yīng)的數(shù)據(jù)手冊,了解任何器件的最新信息。
總線模式
當與外部存儲器接口時,架構(gòu)師必須選擇五種支持的總線模式之一,每種模式都會對外部存儲器時序產(chǎn)生重大影響。每種總線模式使用連接到P0和P2的內(nèi)存信號的不同配置。各種新模式(頁面模式)允許外部存儲器接口以不同的速度運行,幾乎所有模式都比標準8051存儲器接口方案更快。速度改進主要是通過重新排列微控制器的外部總線結(jié)構(gòu)來實現(xiàn)的,使得地址LSB和數(shù)據(jù)總線與存儲器器件具有直接(即,不通過鎖存器)連接。這意味著,保存在 '373 鎖存器中的地址 MSB 僅在地址跨 256 字節(jié)邊界轉(zhuǎn)換時才需要更新。一旦 MSB 被鎖定,內(nèi)存訪問將以最快的速度(頁面點擊)執(zhí)行。在邊界交叉(頁面未命中)期間更新地址鎖存器時,尋呼模式會產(chǎn)生 2 個周期的損失,但在其他方面比傳統(tǒng)的 8051 架構(gòu)運行得更快。
大多數(shù)應(yīng)用程序?qū)⑹褂梅琼撁婺J剑榱伺c傳統(tǒng) 8051 兼容)或頁面模式 1,1 周期(為了盡可能快的速度)。這些總線通常在完成的應(yīng)用程序中硬連線,不會動態(tài)變化。總線模式如下:
非頁面模式
頁面模式 1(1 周期)
頁面模式 1(2 周期)
頁面模式 1(4 周期)
頁面模式 2
請注意,頁面模式操作是通過軟件啟用的。這意味著為了利用任何頁面模式,必須首先從內(nèi)部閃存開始執(zhí)行并啟用頁面模式操作。這是因為微控制器在任何重置后默認為非頁面模式。
非頁面模式
圖 1 顯示了傳統(tǒng)的 8051 內(nèi)存接口方案,也稱為非頁面模式。微控制器的端口 2 顯示地址的 A15-A8,而端口 0 顯示 A7-0 或數(shù)據(jù) D7-D0,具體取決于正在執(zhí)行內(nèi)存周期的哪個部分。這是微控制器復(fù)位后的默認模式。在本例中,程序中和數(shù)據(jù)存儲器設(shè)備都包含在系統(tǒng)中。該系列的成員通過多路復(fù)用總線與外部存儲器接口,以減少引腳數(shù)。因此,需要具有最小傳播延遲的外部鎖存器(如74ACQ373或74ACQ573)來解復(fù)用存儲器的地址和/或數(shù)據(jù)信號。鎖存器的內(nèi)容在每個存儲器周期都會發(fā)生變化,因此必須仔細選擇類型和邏輯系列,因為其傳播延遲位于外部存儲器接口的關(guān)鍵時序路徑中。
圖1.非頁面模式內(nèi)存接口。
該模式下的外部存儲器時序幾乎與DS4C87的每機器周期520時鐘相同。在此模式下,沒有頁面遺漏或點擊。無論拉伸周期設(shè)置如何,內(nèi)部閃存或SRAM訪問都需要一個系統(tǒng)時鐘周期,外部MOVC或代碼提取需要四個系統(tǒng)時鐘周期。外部 MOVX 操作至少需要四個系統(tǒng)時鐘周期。
頁面模式 1(1 周期)
這是最快的外部尋址模式。在這種模式下,內(nèi)部代碼獲取只需一個時鐘周期。由于地址MSB被鎖存,允許數(shù)據(jù)和地址LSB直接連接到存儲設(shè)備,因此可以提高速度。在頁面未命中期間插入一個額外的周期,以便有時間使用新地址 MSB 更新閂鎖。此模式的 2 周期和 4 周期版本類似于頁面模式 1(1 周期),不同之處在于擴展了外部存儲器操作以適應(yīng)速度較慢的設(shè)備。本文檔中有關(guān)選擇程序和數(shù)據(jù)存儲器訪問速度的部分假定頁面命中周期,因為它比頁面未命中周期更快且更關(guān)鍵。頁面命中次數(shù)的計時計算也適用于頁面未命中。
圖2.頁面模式 1 內(nèi)存接口。
頁面模式 2
這種外部尋址模式將地址MSB和數(shù)據(jù)多路復(fù)用在P2上,并將地址的LSB放在P0上。此總線配置僅提高外部代碼獲取的速度,因此外部 MOVX 訪問的時間與非頁面模式相同。
圖3.頁面模式 2 內(nèi)存接口。
選擇程序存儲器訪問速度
該微控制器設(shè)計用于連接典型的程序存儲器技術(shù),如EPROM、閃存或SRAM。在選擇存儲器件時,必須考慮下面討論的幾個關(guān)鍵的交流時序特性。特定器件的選擇通常是一個迭代過程,需要兼顧成本、可用性和存儲器的時序參數(shù),這些參數(shù)由微控制器的工作頻率決定。下表將存儲設(shè)備時序規(guī)格與其微控制器對應(yīng)項相關(guān)聯(lián)。表中使用的系統(tǒng)時鐘頻率是外部時鐘頻率乘以任何晶體乘法因子,即啟用10倍乘法器的2MHz外部時鐘頻率將具有20MHz的系統(tǒng)時鐘頻率。所有時序都是常見頻率的示例;其他頻率的精確值可以使用數(shù)據(jù)手冊中給出的公式計算。頁面模式的計時假定頁面命中,這是時間最關(guān)鍵的序列。通常,存儲器時序參數(shù)必須小于相應(yīng)的微控制器值才合適。
1. 從有效地址訪問內(nèi)存的時間。在微控制器中,這通常是阿維夫,在存儲設(shè)備中它是行政協(xié)調(diào)會或 t機 管 局.此參數(shù)表示存儲設(shè)備解碼 16 位地址并將數(shù)據(jù)放在數(shù)據(jù)總線上所需的時間。根據(jù)模式的不同,關(guān)鍵時序取決于端口 0 或端口 2。對于非尋頁模式,D7-0和A7-0在端口0上的多路復(fù)用意味著必須將鎖存器的傳播延遲添加到公式中。這要求存儲器比相應(yīng)的微控制器時序規(guī)格略快。
表 1.t阿維夫計時
System Clock (MHz) |
tCLCL (ns) |
Non-Page tAVIV* |
Page Mode 1 (1-cycle) tAVIV2 |
Page Mode 1 (2-cycle) tAVIV2 |
tAVIV2 |
Page Mode 2 tAVIV2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 68.91 | 10.30 | 25.45 | 55.76 | 23.45 |
25 | 40.00 | 98.00 | 20.00 | 40.00 | 80.00 | 38.00 |
11.0592 | 90.42 | 249.27 | 70.42 | 115.63 | 206.06 | 113.63 |
5 | 200.00 | 578.00 | 180.00 | 280.00 | 480.00 | 278.00 |
*減去地址鎖存器的傳播延遲以獲得準確的t行政協(xié)調(diào)會對于內(nèi)存設(shè)備。
2. 從輸出啟用內(nèi)存的訪問時間有效。在微控制器中,這通常是普利夫,在存儲設(shè)備中它是OE.此參數(shù)表示芯片從禁用狀態(tài)激活其輸出所需的時間。在大多數(shù)存儲器配置中,/PSEN信號用作外部程序存儲器器件的輸出使能信號。在芯片使能激活之前,必須存在有效地址,此參數(shù)才有效。
表 2.t普利夫計時
System Clock (MHz) |
tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 40.61 | 10.30 | 10.30 | 40.61 | 10.30 |
25 | 40.00 | 60.00 | 20.00 | 20.00 | 60.00 | 20.00 |
11.0592 | 90.42 | 160.84 | 70.42 | 72.42 | 160.84 | 70.42 |
5 | 200.00 | 380.00 | 180.00 | 180.00 | 380.00 | 180.00 |
3. 數(shù)據(jù)浮點(總線釋放)時間。此參數(shù)表示輸出使能信號取消置位后內(nèi)存設(shè)備繼續(xù)驅(qū)動總線的時間量。此參數(shù)在非尋呼模式和尋呼模式 2 中很重要,因為在每個周期內(nèi),總線必須在數(shù)據(jù)和地址之間切換。這可能是高系統(tǒng)時鐘速度下的關(guān)鍵參數(shù),設(shè)計人員應(yīng)確保東風(fēng)始終小于微控制器參數(shù) tPXIZ.
表 3.tPXIZ計時
System Clock (MHz) |
tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 25.30 | N/A | N/A | N/A | 25.30 |
25 | 40.00 | 35.00 | N/A | N/A | N/A | 35.00 |
11.0592 | 90.42 | 85.42 | N/A | N/A | N/A | 85.42 |
5 | 200.00 | 195.00 | N/A | N/A | N/A | 195.00 |
存儲設(shè)備的信號時序因設(shè)備類型而異。內(nèi)存器件時序的典型采樣如下所示。
表 4.對各種內(nèi)存技術(shù)的關(guān)鍵內(nèi)存時序參數(shù)進行采樣
K6R1008C1C (SRAM) | -10 | -15 | -20 |
tACC | 10 | 15 | 20 |
tOE | 5 | 7 | 9 |
tOHZ / tDF | 5 | 7 | 9 |
M27C1001-35 (EPROM) | -35 | -45 | -60 |
tACC | 35 | 45 | 60 |
tOE | 25 | 25 | 30 |
tOHZ / tDF | 25 | 25 | 30 |
AM29F010B-45(閃存) | -45 | -70 | -90 |
tACC | 45 | 70 | 90 |
tOE | 25 | 30 | 35 |
tOHZ / tDF | 10 | 15 | 20 |
將這些設(shè)備與上面顯示的時間進行比較,可以選擇合適的存儲設(shè)備。作為一般經(jīng)驗法則,來自有效地址的訪問時間通常是關(guān)鍵時序參數(shù),但建議系統(tǒng)設(shè)計人員驗證所有存儲器時序參數(shù)。下圖顯示了存儲設(shè)備的相對訪問速度。一般來說,SRAM需要以33MHz的頻率運行外部代碼,但低于25MHz的EPROM或閃存技術(shù)就可以了。
圖4.內(nèi)存類型的訪問時間的表示。
使用總線模式提高系統(tǒng)性能
盡管尋呼模式 1, 1 周期是最快的外部尋址模式,但在某些情況下,利用其他尋呼模式之一可以提高整體系統(tǒng)速度。這些情況涉及在同一設(shè)計中使用內(nèi)部和外部程序存儲器。假設(shè)系統(tǒng)設(shè)計人員希望使用頁面模式 1、1 周期總線以最大速度運行微控制器,但使用非易失性(閃存 EPROM)存儲器。一項調(diào)查將顯示,EPROM的最快訪問時間為35ns,這將限制最大系統(tǒng)時鐘速度為25MHz。
另一種方法是對軟件進行分段,并將最需要時間的部分降級到內(nèi)部存儲器中。然后使用較慢的總線模式之一(如頁面模式 1、2 周期或 4 周期)連接到外部存儲器。然后,微控制器可以以其最大系統(tǒng)時鐘頻率運行;內(nèi)部代碼執(zhí)行將全速進行,不經(jīng)常發(fā)生的外部訪問將以稍慢的速度執(zhí)行。這允許系統(tǒng)同時以最快的速度運行內(nèi)部和外部代碼。
選擇數(shù)據(jù)存儲器訪問速度
數(shù)據(jù)存儲器接口類似于程序存儲器接口,不同之處在于使用/RD和/WR信號。下表將存儲設(shè)備時序規(guī)格與其微控制器對應(yīng)項相關(guān)聯(lián)。表中使用的系統(tǒng)時鐘頻率是外部時鐘頻率乘以任何晶體乘法器因子,例如,啟用10倍乘法器的2MHz外部時鐘頻率將具有20MHz的系統(tǒng)時鐘頻率。所有時序都是常見頻率的示例;其他頻率的精確值可以使用數(shù)據(jù)手冊中給出的公式計算。
拉伸周期功能允許微控制器自動延長或拉伸外部數(shù)據(jù)存儲器 (MOVX) 訪問,以適應(yīng)較慢的外部存儲器和外設(shè)。當微控制器用于升級速度較慢的傳統(tǒng)基于 8051 的系統(tǒng)時,這一點尤其重要。此外,還有各種存儲器映射外設(shè),如LCD顯示器或UART,它們的速度不夠快,無法跟上微控制器的步伐。無論拉伸周期設(shè)置如何,內(nèi)部 MOVX 和 MOVC 操作始終以 1 時鐘周期執(zhí)行。
此設(shè)備系列的所有成員默認對 MOVX 指令使用一個拉伸循環(huán)。為了獲得最大速度,應(yīng)用軟件可以寫入某些特殊功能寄存器 (SFR) 位,并使 MOVX 指令以零拉伸周期運行。拉伸周期在相應(yīng)的數(shù)據(jù)手冊和超高速閃存微控制器用戶指南中有更詳細的介紹。下表假定拉伸值為零,允許外部數(shù)據(jù)存儲器以最快的速度運行。
1. 從有效地址訪問內(nèi)存的MOVX時間。在微控制器中,這通常是tAVDV,而在存儲設(shè)備中,它通常是行政協(xié)調(diào)會.此參數(shù)表示存儲設(shè)備解碼 16 位地址并將數(shù)據(jù)放在數(shù)據(jù)總線上所需的有限時間。根據(jù)模式的不同,關(guān)鍵時序取決于端口 0 或端口 2。對于非尋頁模式,D7-0和A7-0在端口0上的多路復(fù)用意味著必須將鎖存器的傳播延遲添加到公式中。這要求 tAVDV 略小于 t行政協(xié)調(diào)會.
表 6.tAVDVx計時
System Clock (MHz) |
tCLCL (ns) |
Non-Page tAVDV* |
Page Mode 1 (1-cycle) tAVDV2 |
Page Mode 1 (2-cycle) tAVDV2 |
Page Mode 1 (4-cycle) tAVDV2 |
Page Mode 2 tAVDV0 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 70.91 | 10.30 | 25.45 | 86.06 | 70.91 |
25 | 40.00 | 100.00 | 20.00 | 40.00 | 120.00 | 100.00 |
11.0592 | 90.42 | 251.27 | 70.42 | 115.63 | 296.48 | 251.27 |
5 | 200.00 | 580.00 | 180.00 | 280.00 | 680.00 | 580.00 |
*減去地址鎖存器的傳播延遲以獲得準確的t行政協(xié)調(diào)會對于內(nèi)存設(shè)備。
2. 從輸出啟用內(nèi)存的訪問時間有效。在微控制器中,這通常是RLDV,在存儲設(shè)備中它是OE.此參數(shù)表示存儲設(shè)備從禁用狀態(tài)激活其輸出所需的時間。在MOVX操作中,/RD信號用作外部程序存儲器器件的輸出使能信號。在芯片使能激活之前,必須存在有效地址,此參數(shù)才有效。
表 7.tRLDV計時
System Clock (MHz) |
tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 42.61 | 12.30 | 12.30 | 42.61 | 42.61 |
25 | 40.00 | 62.00 | 22.00 | 22.00 | 62.00 | 62.00 |
11.0592 | 90.42 | 162.84 | 72.42 | 72.42 | 162.84 | 162.84 |
5 | 200.00 | 382.00 | 182.00 | 182.00 | 382.00 | 382.00 |
3. /RD和/WR脈沖寬度。此參數(shù)表示置位/RD和/WR選通的時間量。在微控制器中,這通常是RLRH或 t哇??.此參數(shù)很重要,因為SRAM對這些參數(shù)具有最低規(guī)格,必須在高速下保證。
表 8.tRLRH/ 噸哇??計時
System Clock (MHz) |
tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 55.61 | 25.30 | 25.30 | 55.61 | 55.61 |
25 | 40.00 | 75.00 | 35.00 | 35.00 | 75.00 | 75.00 |
11.0592 | 90.42 | 175.84 | 85.42 | 85.42 | 175.84 | 175.84 |
5 | 200.00 | 395.00 | 195.00 | 195.00 | 395.00 | 395.00 |
4.數(shù)據(jù)浮動(總線釋放)時間。此參數(shù)表示輸出使能信號取消置位后內(nèi)存設(shè)備繼續(xù)驅(qū)動總線的時間量。此參數(shù)在非尋呼模式和尋呼模式 2 中很重要,因為在每個周期內(nèi),總線必須在數(shù)據(jù)和地址之間切換。這可能是高系統(tǒng)時鐘速度下的關(guān)鍵參數(shù),設(shè)計人員應(yīng)確保東風(fēng)始終小于微控制器參數(shù) tPXIZ.
表 9.t熱療計時
System Clock (MHz) |
tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 25.30 | N/A | N/A | N/A | 25.30 |
25 | 40.00 | 35.00 | N/A | N/A | N/A | 35.00 |
11.0592 | 90.42 | 85.42 | N/A | N/A | N/A | 85.42 |
5 | 200.00 | 195.00 | N/A | N/A | N/A | 195.00 |
由于程序存儲器和數(shù)據(jù)存儲器訪問具有相似的時序(未選擇拉伸周期時),因此表5提供了頁面模式(1周期)和常見微控制器頻率的非頁面模式的各種系統(tǒng)時鐘頻率所需的MOVX存儲器訪問時序的便捷摘要。這是選擇數(shù)據(jù)存儲設(shè)備的良好起點。
-
微控制器
+關(guān)注
關(guān)注
48文章
7555瀏覽量
151429 -
存儲器
+關(guān)注
關(guān)注
38文章
7492瀏覽量
163848 -
總線
+關(guān)注
關(guān)注
10文章
2881瀏覽量
88095
發(fā)布評論請先 登錄
相關(guān)推薦
評論