硬件及存储结构.docVIP

  • 35
  • 0
  • 约5.42千字
  • 约 8页
  • 2017-03-30 发布于江苏
  • 举报
硬件及存储结构

第四章 CPU及存储结构 本章简要介绍了TMS320DM642的CPU结构及存储器空间分配,对CPU数据总线及状态寄存器进行了重点阐述,本章的知识要点为掌握存储器空间分配方法,本章建议安排4个课时进行学习。 4.1 CPU结构 4.1.1 中央处理单元CPU TMS320DM642结构框图如图4-1所示,图中中间深色部分为CPU,它包括: 图4-1 DM642结构框图 (1)程序读入及指令译码、分配机构:包括程序取指单元、指令分配单元和指令译码单元。程序总线连接程序取指单元和片内程序存储器。 (2)程序执行机构:包括2个对称数据通路A和B(2个对称的通用寄存器组、2组对称的功能单元(每组四个)、控制寄存器组和控制逻辑、以及中断逻辑等。每组数据通路有读入及存储(写出)数据总线与片内数据存储器想连。 (3)芯片测试和仿真端口及其控制逻辑。 在CPU内部采用哈佛结构,其程序总线与数据总线分开,取指令与执行指令可以并行运行。片内程序存储器保存指令代码,程序总线连接程序存储器与CPU。由于芯片的程序总线宽度位256位,程序取指、指令分配和指令译码单元可以传送高达每个CPU时钟8个32位指令到功能单元。 DSP片内的程序总线与数据总线分开,程序存储器与数据存储器分开,但片外的存储器及总线都不分,两者是统一的。全部存储空间(包括程序存储器和数据存储器、片内和片外)以字节为单位统一编址。无论从片外读取指令或与片外交换数据,都要通过EDMA与EMIF。 4.1.2 CPU数据总线与控制 DM642的数据总线包括下述物理资源: 2个通用寄存器组(A和B); 8个功能单元(.L1,.L2,.S1,.S2,.M1,.M2,.D1,.D2); 2个数据读取通路(LD1和LD2); 2个数据存储通路(ST1和ST2); 2个数据地址通路(DA1和DA2); 2个寄存器组交叉通路(1X和2X); CPU通用寄存器组 在DM642数据总线中有2个通用寄存器组(A和B),每个寄存器组包括32个32位寄存器,这些通用寄存器可以当作数据、数据地址指针或条件寄存器使用。 DM642芯片支持8/16位打包数据、30/40/64位定点数据。32位数据可放在任何一个通用寄存器内,长于32位的数据,比如40位和64位定点数据均需放在一个寄存器对内,其中低32位数据放在偶数寄存器中,其余的8位或32位数据放在一个寄存器内。一个寄存器对由一个偶数寄存器及序号比它1的奇数寄存器组成,如表4-1所示。 表4-1 40/64位寄存器对 寄存器对 寄存器对 A B A B A1:A0 B1:B0 A17:A16 B17:B16 A3:A2 B3:B2 A19:A18 B19:B18 A5:A4 B5:B4 A21:A20 B21:B20 A7:A6 B7:B6 A23:A22 B23:B22 A9:A8 B9:B8 A25:A24 B25:B24 A11:A10 B11:B10 A27:A26 B27:B26 A13:A12 B13:B12 A29:A28 B29:B28 A15:A14 B15:B14 A31:A30 B31:B30 数据总线的功能单元 DM642数据总线中的8个功能单元分为两组,每组4个。两组数据总线功能单元的功能基本相同。.M单元主要完成乘法运算,.D单元是唯一能产生地址的功能单元,.L与.S是主要的算术逻辑运算单元(ALU),四个功能单元的执行操作表如图4-2所示。 表4-2 功能单元的执行操作 功能单元 定点操作 功能单元 定点操作 .L单元(.L1,.L2) 32/40位算术和比较操作 .M单元(.M1,.M2) 16*16乘法运算 字节移位 4个8*8乘加运算 数据打包/解包 位扩展 5位常数产生 位交叉/解交叉 双16位算术运算 变量移位运算 4个8位算数运算 旋转 双16位最小/最大值运算 Galois域乘法 4个8位最小/最大值运算 16*32乘法运算 32位逻辑运算 4个8*8乘法运算 32位中最左边1或0计数 双16*16乘法运算 32位和40位的归一化计算 双16*16乘加/乘减运算 .S单元(.S1,.L2) 32位算术运算 .D单元(.D1,.D2) 32位加、减线性和循环寻址计算 寄存器与控制寄存器组(仅.S2)之间的传输 5位常数产生 字节移位 32位逻辑运算 数据打包/解包 带有5位常数偏移量的转载和存储 双16位比较运算 带有15位常数偏移量的转载和存储(仅对.D2) 4个8位比较运算 带有5位常数偏移量的双字转载和存储 双16位移位运算 4个8位比较

文档评论(0)

1亿VIP精品文档

相关文档