新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > TMS320C32的存儲器接口設計

        TMS320C32的存儲器接口設計

        作者: 時間:2011-11-26 來源:網絡 收藏

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

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

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

          

          圖5,STRBo控制寄存器

          

          圖6,STRBl控制寄存器

          

          圖7,IOSTRB控制寄存器

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

          4 存儲器接口實例

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

          

          圖8,存儲囂接口的電路圖

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

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

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

          5 小結

          由于C32可以非常靈活地調整其存儲器接口寬度,使得存儲器接口電路的設計更加的靈活,因此非常適用于電機或電力系統等實時系統的數據采集與處理。


        上一頁 1 2 下一頁

        關鍵詞: TMS320C32 存儲器

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 偃师市| 阜南县| 武冈市| 安仁县| 忻城县| 雅江县| 静乐县| 石屏县| 靖江市| 临沭县| 军事| 永年县| 阿尔山市| 商河县| 吕梁市| 囊谦县| 左贡县| 信宜市| 塔河县| 疏勒县| 社旗县| 崇礼县| 云梦县| 朔州市| 陆丰市| 阿图什市| 九龙坡区| 镇宁| 崇左市| 新和县| 临海市| 红原县| 刚察县| 壶关县| 泉州市| 都昌县| 灌云县| 泗洪县| 嫩江县| 江都市| 肥东县|