新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > TMS320C32 DSP的存儲器接口設(shè)計方案

TMS320C32 DSP的存儲器接口設(shè)計方案

作者: 時間:2011-09-07 來源:網(wǎng)絡(luò) 收藏

2.2 16位存儲器寬度

  設(shè)計為16位的存儲器,其硬件接線方案如圖3所示。STRBx_B3/A_1引腳作為地址引腳,STRBx_B0和STRBx_B1引腳作為片選引腳,而STRBx_B2/A_2則不用。

  2.3 32位存儲器寬度

  設(shè)計為32位的存儲器,其硬件接線方案如下圖4所示。STRBx所有的引腳都設(shè)置成片選引腳。

  3 存儲器映射外部總線控制寄存器

  綜上所述,可以從8/16/32位存儲器中訪問8/16/32位數(shù)據(jù),或者從16/32位存儲器中執(zhí)行32位的程序。但是如果內(nèi)外部數(shù)據(jù)的位數(shù)不一致時該如何處理呢?C32的外部總線控制寄存器可以根據(jù)相應(yīng)控制位的值,自動對的寬度進行相應(yīng)的調(diào)整。下面則對總線控制寄存器作出一個詳細的介紹。

  STRBo、STRBl以及IOSTRB控制寄存器在存儲器映射空間的物理地址分別是808064H、808068H和808060H,并且都是32位的,各位的定義如圖5、圖6和圖7所示。

  從圖5和圖6中我們可以看到,STRBx控制寄存器的第18、19位是用來控制存儲器的寬度的,而第16、17位是用來控制數(shù)據(jù)寬度的,具體定義如表1所列。

  4 實例

  圖8給出了一個實際存儲囂接口的電路圖。16位存儲器由2片128 K8位的SRAM構(gòu)成,32位存儲器由4片128 K8位的SRAM構(gòu)成,STRB0的4組選通信號接16位外部存儲器,STRBl的4組選通信號接32位外部存儲器。為說明數(shù)據(jù)在存儲器及處理器中的存放格式,本文設(shè)計了兩種電路:一是在16位存儲器中存放32位數(shù)據(jù);二是在32位存儲器中存放32位數(shù)據(jù)。

  在16位存儲器中存放32位數(shù)據(jù)時,STRB0_B3/A1作為地址引腳與外部存儲器的AO相接,STRB0_B0和STRB0_B1作為片選信號,STRBx_B2/A_2不用。由于數(shù)據(jù)寬度大于存儲器寬度,所以在外部存儲器偶地址中存放32位數(shù)據(jù)的低16位,奇地址中存放32位數(shù)據(jù)的高16位,外部存儲器的地址為OH~lFFFFH,對應(yīng)的在C32存儲映射中的地址為OH~0FFFFH。當(dāng)一條指令向邏輯地址OH中裝入一個32位數(shù)據(jù)時,存儲器接口必須向外部16位存儲器執(zhí)行兩個指令周期。這兩個指令周期訪問2個連續(xù)的外部存儲器地址OH和1H,從而完成對32位數(shù)據(jù)的操作。

  當(dāng)在外部32位存儲器中存放32位數(shù)據(jù)時,STRBl的4個引腳都設(shè)置為片選引腳。這時數(shù)據(jù)寬度與外部存儲器寬度一致,由于是STRBl使能,所以128 K32位的外部存儲空間與C32存儲器映射的900000H~91FFFFH相對應(yīng)。

  當(dāng)接口電路設(shè)計為16位時,其物理地址等于邏輯地址右移l位,即DSP的地址線A00接在SRAM的A1上;當(dāng)接口電路設(shè)計為32位時,其物理地址等于邏輯地址,即DSP的地址線A00接在SRAM的A0上。

  5 小結(jié)

  本文主要介紹了如何根據(jù)實際需要來自動地調(diào)節(jié)存儲器接口寬度。由于C32可以非常靈活地調(diào)整其存儲器接口寬度,使得存儲器接口電路的設(shè)計更加的靈活,因此非常適用于電機或電力系統(tǒng)等實時系統(tǒng)的數(shù)據(jù)采集與處理。


上一頁 1 2 下一頁

關(guān)鍵詞: TMS320C32 存儲器接口

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉