MIPS32 M4K處理器內(nèi)核SRAM接口應(yīng)用
微控制器環(huán)境要求在盡可能小的封裝里實(shí)現(xiàn)最多的通用I/O。存微控制器尺寸和成本的限制下,M4K內(nèi)核內(nèi)部不支持指令高速緩存(I-cache)或數(shù)據(jù)高速緩存(D-cache)的標(biāo)準(zhǔn)功能。但MIPS32 M4K內(nèi)核所具有的一些特點(diǎn)使其非常適用于微控制器應(yīng)用領(lǐng)域。這就涉及到本文重點(diǎn)討論的一個(gè)內(nèi)容--SRAM接口,這是MIPS32 M4K內(nèi)核的一個(gè)標(biāo)準(zhǔn)功能。
本文引用地址:http://www.ex-cimer.com/article/87670.htm微控制器應(yīng)用需要僅用最少的接口邏輯就可以在處理器內(nèi)核和存儲(chǔ)系統(tǒng)之間實(shí)現(xiàn)緊密耦合。MIPS32M4K內(nèi)核SRAM接口就是一個(gè)比較完美的解決方案。
M4K內(nèi)核SRAM接口基本描述
M4K內(nèi)核SRAM接口是M4K內(nèi)核的通用高速存儲(chǔ)器接口。它可為指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器路徑提供低延遲接口,支持單周期和多周期存儲(chǔ)器存取。 必須指出,SRAM接口不能直接與外部存儲(chǔ)器件連接,若要實(shí)現(xiàn)外部存儲(chǔ)連接,需使用一個(gè)外部存儲(chǔ)控制器。必須使用固定映射表(FMT)和SRAM接口,以提供完整的存儲(chǔ)器控制邏輯。
雙模操作
SRAM接口的初始配置稱為雙模。在這種模式下,指令和數(shù)據(jù)通道彼此隔離。數(shù)據(jù)有獨(dú)立的讀寫總線(D-SRAM),還有D-SRAM接口控制信號(hào)和一個(gè)獨(dú)立的指令側(cè)(I-SRAM)接口,以及其互補(bǔ)I-SRAM控制信號(hào)。
I-SRAM接口具有改變信號(hào)輸入方向的能力,需要時(shí),可將D-SRAM讀周期改變到I側(cè)方向。這有助于改良的Harvard架構(gòu)的實(shí)現(xiàn),和非易失性數(shù)據(jù)在程序存儲(chǔ)器中的存儲(chǔ)。
雙模有助于I-SRAM和D-SRAM接口的同步處理,消除任何可能出現(xiàn)在公用總線接口上的延遲,防止其減緩程序的執(zhí)行。在這個(gè)模式下,內(nèi)核可達(dá)到1.5 DMIPS/MHz的標(biāo)稱性能。雙模結(jié)構(gòu)如圖1所示。
標(biāo)準(zhǔn)模式
標(biāo)準(zhǔn)模式是標(biāo)準(zhǔn)接口的一個(gè)配置選項(xiàng),在這種模式下,為了節(jié)省必須從內(nèi)核發(fā)送的信號(hào)總數(shù),I-SRAM和D-SRAM信號(hào)合并在一起。除了數(shù)據(jù)寫總線外,D-SRAM接口是完全禁用的,所有數(shù)據(jù)讀周期都自動(dòng)改變方向,以使用I-SRAM讀總線。
在該模式中,內(nèi)核的平均性能大概是1.2 DMIPS/MHz。然而,由SRAM接口內(nèi)核暴露的活躍信號(hào)總數(shù)是122個(gè),比雙模節(jié)省87個(gè)信號(hào)。減少接口使用的活躍信號(hào)數(shù)量,對(duì)于成本非常有限、總裸片面積比絕對(duì)性能更重要的設(shè)計(jì)來說,是一種更經(jīng)濟(jì)有效的方式。
SRAM接口標(biāo)準(zhǔn)模式如圖2所示。
處理中斷
SRAM接口提供了中止指令處理的能力,這種能力可中止M4K內(nèi)核5段流水線中任何指令處理。這有助于外部系統(tǒng)控制器立即響應(yīng)外部事件,如中斷請(qǐng)求或通過EJTAG調(diào)試接口請(qǐng)求。在處理典型微控制器應(yīng)用中高度確定性性質(zhì)時(shí),快速響應(yīng)外部中斷事件至關(guān)重要。
對(duì)接口信號(hào)連接有限的器件提供支持
M4K處理器內(nèi)核可通過特定字節(jié)通道,對(duì)接口信號(hào)連接有限的存儲(chǔ)器件接口的能力進(jìn)行控制,可幫助M4K內(nèi)核以連續(xù)字節(jié)讀取匯編32位字,然后在SRAM接口中進(jìn)行內(nèi)部匯編。
這個(gè)功能通常用于接口外設(shè)的總線鎖存和總線停止的組合,如ADC。該類型的混合信號(hào)器件通常不提供32位位寬的接口。
總線鎖存和總線停止
SRAM接口提供輸入控制信號(hào),在外部存儲(chǔ)控制器禁用這個(gè)信號(hào)之前鎖住數(shù)據(jù)總線,以防止CPU進(jìn)一步寫處理。由此,可不用擔(dān)心多線程存儲(chǔ)周期的損害。SRAM接口還提供控制信號(hào),利于總線停止,使設(shè)計(jì)師將速度更慢的存儲(chǔ)器和外設(shè)連接到系統(tǒng)成為可能。這些器件可包括速度更慢的非易失性RAM和混合信號(hào)器件,在將請(qǐng)求的數(shù)據(jù)傳送到總線之前,它們需要更多的等待時(shí)間。
緩存關(guān)聯(lián)信號(hào)
雖然M4K內(nèi)核不包含任何高速緩存,但仍能指明出現(xiàn)在地址總線上的當(dāng)前存儲(chǔ)器地址是否可以進(jìn)行緩存。外部存儲(chǔ)控制器能夠利用這些狀態(tài)信號(hào)實(shí)現(xiàn)L2高速緩存結(jié)構(gòu)。
M4K SRAM接口在微控制器領(lǐng)域的應(yīng)用
利用上述這些功能,設(shè)計(jì)師們能夠?qū)τ谖⒖刂破飨到y(tǒng)環(huán)境中使用M4K SRAM接口的多種優(yōu)勢(shì)有所認(rèn)識(shí)。
首先,緊密耦合的接口意味著大多數(shù)處理任務(wù)是在單時(shí)鐘周期內(nèi)完成的。除非當(dāng)設(shè)計(jì)師執(zhí)行總線停止時(shí),需要考慮速度較慢的存儲(chǔ)器件的完成周期。而且,連接到該接口的控制邏輯必須只能處理指令和數(shù)據(jù),以使整個(gè)邏輯設(shè)計(jì)不那么復(fù)雜。另外,可能還要鎖住總線,使原子處理的完成能夠不受排隊(duì)周期的影響。
固定映射表(FMT)可減少外部存儲(chǔ)控制器所需的邏輯和解碼量。除了存儲(chǔ)器映像外設(shè),以及對(duì)微控制器可用的存儲(chǔ)器件絕對(duì)尺寸外,有源區(qū)都在定義的邊界之內(nèi)。
在雙模操作下,指令提取路徑和數(shù)據(jù)讀/寫路徑是獨(dú)立的。這些獨(dú)立的數(shù)據(jù)通道有助于存儲(chǔ)控制器邏輯優(yōu)化存儲(chǔ)器件的類型和尺寸。
中止流水線中,任何處理的能力都有助于在調(diào)試環(huán)境中實(shí)現(xiàn)快速響應(yīng)和精確的斷點(diǎn)控制。
基本上,L2緩存可以使用M4K內(nèi)核的本地信號(hào)執(zhí)行,從而簡(jiǎn)化L2緩存控制器。
MIPS32M4K內(nèi)核SRAM接口為M4K內(nèi)核提供了一種高速、易于使用和高度可配置的存儲(chǔ)器接口。除了指令和數(shù)據(jù)存儲(chǔ)器,它不包含額外的開銷,如處理任何情況的協(xié)議或信號(hào)等,有助于芯片設(shè)計(jì)師用極少的外部邏輯實(shí)現(xiàn)M4K內(nèi)核的最大性能。最終,這種能力代表著以最低的成本實(shí)現(xiàn)更高性能的微控制器系統(tǒng)。
評(píng)論