欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > PPT文档下载
    分享到微信 分享到微博 分享到QQ空间

    典型DSP系统设计芯片介绍.ppt

    • 资源ID:1082941       资源大小:1.54MB        全文页数:84页
    • 资源格式: PPT        下载积分:10积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要10积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    典型DSP系统设计芯片介绍.ppt

    1、DSP系统设计主讲:杜建铭 教授第二章第二章典型典型DSP芯片祥解芯片祥解2.1ADSP21160处理器核处理器核2.2ADSP21160处理器存储器处理器存储器2.3ADSP21160寄存器寄存器2.4ADSP21160中断逻辑和定时器中断逻辑和定时器 2.5ADSP21160串行口串行口/DMA及链路口及链路口 2.6ADSP21160主机接口与主机接口与ISA总线总线 2.1ADSP21160处理器核处理器核vADSPSHARC系列处理器是构建在系列处理器是构建在ADSP21000DSP核的基础上,形成一核的基础上,形成一个完整个完整SoC。v(SystemonChip,中文称为系统,中

    2、文称为系统集成到芯片上或片上系统);集成到芯片上或片上系统);v有一个双口的在片有一个双口的在片SRAM;v加上集成周边加上集成周边IO和为单指令多数据和为单指令多数据(SIMD)提供支持的附加处理单元。提供支持的附加处理单元。v处理器核是由以下几个部分组成:处理器核是由以下几个部分组成:(1)两个处理器单元;)两个处理器单元;(2)1个程序控制器;个程序控制器;(3)2个数据地址产生器;个数据地址产生器;(4)1个定时器;个定时器;(5)1个指令缓存;个指令缓存;所有数字信号处理都在处理器核里实现。所有数字信号处理都在处理器核里实现。2.1ADSPSHARC系列处理器核系列处理器核2.1.1

    3、处理单元的构成处理单元的构成(两个处理单元两个处理单元):v每个处理单元包含:每个处理单元包含:(1)算术逻辑单元(算术逻辑单元(ALU););(2)乘法器;乘法器;(3)移位器;移位器;(4)通用数据寄存器组;通用数据寄存器组;v算术逻辑单元算术逻辑单元(ALU)(ALU)、乘法器、乘法器(Multiplier)(Multiplier)、移位器移位器(Shifter)(Shifter)在结构上并行排列,分别完在结构上并行排列,分别完成加、减、乘和逻辑移位运算等操作;成加、减、乘和逻辑移位运算等操作;v指令执行时间都是指令执行时间都是1 1个周期;个周期;v任何一个单元的输出都可以在下一个周期

    4、作为任何一个单元的输出都可以在下一个周期作为本单元或其他单元的输入。本单元或其他单元的输入。处理单元的构成处理单元的构成(续续)算术逻辑单元算术逻辑单元(ALU)(ALU)vALU指令包括定点和浮点加、减、取平均、取绝对值、取反及定浮点转换等。v对于定点操作,有逻辑与、或、非、异或等。v对于浮点操作,有取对数、平方根、倒数等。v输入的操作数可以是1个或2个,在时钟周期的前半周期操作数从数据寄存器送入ALU,在后半周期将运算结果输出到数据寄存器。乘法器乘法器(Multiplier)(Multiplier)v浮点乘v定点乘v乘法器与ALU、数据寄存器的结合,使处理器能在1个周期内实现多功能并行计算

    5、(如乘/累加操作,可大大提高数字滤波与FFT的运算速度)。移位器移位器(Shifter)(Shifter)进行逻辑移位或算术移位、位段存取、位清零、置位、测试、取反等操作。通用数据寄存器通用数据寄存器用于运算单元与数据总线间的数据传输,并存取中间结果。2.1.1处理单元的构成处理单元的构成(续续)每个处理单元中各包含一个通用数据寄存器组每个处理单元中各包含一个通用数据寄存器组40位宽,位宽,每组每组32个寄存器(个寄存器(16个主,个主,16个辅)用个辅)用于运算单元和数据总线间的数据传输,并暂存结果。于运算单元和数据总线间的数据传输,并暂存结果。其中的寄存器可与内部存储器间不受约束地进行数其

    6、中的寄存器可与内部存储器间不受约束地进行数据传输。据传输。对于定点和小数操作,只有高对于定点和小数操作,只有高32位数据有效位数据有效,程序设计中标为:程序设计中标为:PEx内部的寄存器组:内部的寄存器组:R0R15;PEy内部的寄存器组:内部的寄存器组:S0S15;对于浮点操作,所有的对于浮点操作,所有的40位数据都有效,程序位数据都有效,程序设计中标为:设计中标为:PEx内部的寄存器组:内部的寄存器组:F0F15;PEy内部的寄存器组:内部的寄存器组:SF0SF15。图图2.1ADSP21160内部结构图内部结构图DAG 3PEx和和PEy(SIMD)处理处理器器程序程序4处理器处理器核核

    7、2利用通用数据寄存器实现高度并行的指令操作利用通用数据寄存器实现高度并行的指令操作v每个周期能实现多达每个周期能实现多达9次的数据传输次的数据传输(一句内)例如:(一句内)例如:F12F0F4,F8F8F12,F9F8F12,F0DM(I1,M1),),F4PM(I8,M8););上述指令执行时,首先读上述指令执行时,首先读F0,F4的值,求出其乘积,写的值,求出其乘积,写到到F12中;中;然后然后F0,F4的值被相应存储单元的值更新,同时读的值被相应存储单元的值更新,同时读F8,F12的值,求出其和、差;再分别写到的值,求出其和、差;再分别写到F8,F9中;中;这样这样4次读操作的寄存器是:

    8、次读操作的寄存器是:F0,F4,F8和和F12;3次写操作的寄存器是:次写操作的寄存器是:F12,F8和和F9;两次存储器访问是:两次存储器访问是:F0与与F4。vADSP21160具有增强型超级哈佛结构。其中具有增强型超级哈佛结构。其中数据存储器(数据存储器(DM),程序存储器(),程序存储器(PM)总线)总线即可传送数据又可传送程序指令;即可传送数据又可传送程序指令;vADSP21160还有一个内部指令缓存;还有一个内部指令缓存;v正是由于具有上面所述的结构(其程序和数正是由于具有上面所述的结构(其程序和数据总线是分开的,并有内部指令缓存),所以据总线是分开的,并有内部指令缓存),所以该处

    9、理器可在单周期内同时取四个操作数(每该处理器可在单周期内同时取四个操作数(每套总线两个)及一条指令(从指令缓存中读取)套总线两个)及一条指令(从指令缓存中读取)。从而实现了单指令多数据(。从而实现了单指令多数据(SIMD)2.1.2单周期取四个操作数单周期取四个操作数ADSP-21160 SHARC DSP 的SIMD结构小测验vADSP 21160M中处理器核由哪几部分组成?v每个处理单元的构成如何?v两个处理单元中通用数据寄存器的代号(定点、浮点)?寄存器位数是多少?数据地址产生器数据地址产生器(DAG)DAG)v在通用CPU中,数据地址的产生和数据的处理都是由ALU来完成的,而在DSP中

    10、,设置了专门的数据地址发生器(有的设置了多个数据有的设置了多个数据地址发生器地址发生器)来产生所需要的数据地址。数据地址的产生与CPU的工作是并行的。从而节省了CPU的时间,提高了信号处理的速度 2.1.3带有硬件循环缓冲的数据地址产生器带有硬件循环缓冲的数据地址产生器DAG(循环寻址)与(循环寻址)与PM和和DM总线总线vADSP21160有两个数据地址产生器,可实现有两个数据地址产生器,可实现间接寻址,并可实现硬件数据循环缓冲,从而间接寻址,并可实现硬件数据循环缓冲,从而可以使数字信号处理中所需的延迟线及其它数可以使数字信号处理中所需的延迟线及其它数据结构获得高效率的编程,所以常用于数字滤

    11、据结构获得高效率的编程,所以常用于数字滤波及傅立叶变换。波及傅立叶变换。vADSP21160每个每个DAG有足够的寄存器(有足够的寄存器(4组,组,每组每组8个寄存器,每个寄存器个寄存器,每个寄存器32位宽)。位宽)。v并能自动处理地址指针的回转,减小了开销,并能自动处理地址指针的回转,减小了开销,提高了性能,简化了编程,其起始地址和结束提高了性能,简化了编程,其起始地址和结束地址在存储区内可以任意指定。地址在存储区内可以任意指定。v两套地址产生器两套地址产生器DAG1、DAG2分别指向分别指向DM地地址总线和址总线和PM地址总线地址总线;v每套每套DAG都配有都配有8个地址索引寄存器个地址索

    12、引寄存器Ix,8个地个地址修改寄存器址修改寄存器Mx,其中,其中:v(1)索引寄存器索引寄存器Ix存放的地址值是指向存储器的存放的地址值是指向存储器的指针;指针;v(2)修改寄存器修改寄存器Mx为索引寄存器的预修改和后为索引寄存器的预修改和后修改提供地址增量,修改提供地址增量,vM与与I两个寄存器相配合可以完成:两个寄存器相配合可以完成:(1)指令执行前的地址预修改;)指令执行前的地址预修改;(2)执行完毕后地址后修改操作。)执行完毕后地址后修改操作。ADSP21160的两个的两个DAG介绍介绍1ADSP21160的两个的两个DAG介绍介绍2v每个每个DAG中还有八个基址寄存器中还有八个基址寄

    13、存器Bx和八个长和八个长度寄存器度寄存器Lx;vBx:为环形缓冲区循环寻址提供起始地址;:为环形缓冲区循环寻址提供起始地址;vLx:为环形缓冲区循环寻址提供地址范围;:为环形缓冲区循环寻址提供地址范围;v也就是说:也就是说:Bx中存放缓冲区起始地址;中存放缓冲区起始地址;Lx中存放缓冲区长度。中存放缓冲区长度。ADSP21160的两个的两个DAG介绍介绍3注注(1)对于通常的寻址方式,我们只使用对于通常的寻址方式,我们只使用I,M寄存器,而不使用寄存器,而不使用B寄存器,寄存器,此时此时L寄存器写寄存器写零,环形缓冲区操作被零,环形缓冲区操作被Disable。(2)ADSP21160M在进行环

    14、形缓冲区寻址在进行环形缓冲区寻址操作过程中,操作过程中,B寄存器被装入值时,寄存器被装入值时,I寄存器被寄存器被同时装入相同的值;反之同时装入相同的值;反之I寄存器被装入值时,寄存器被装入值时,B寄存器不被同时装入相同的值。寄存器不被同时装入相同的值。DAG寄存器分配情况地址产生器地址产生器DAG1寄存器寄存器(DM)()(32位)位)地址产生器地址产生器DAG2寄存器寄存器(PM)(32位)位)I0I7I8I15M0M7M8M15B0B7B8B15L0L7L8L15地址修改方式的指令操作过程地址修改方式的指令操作过程预修改示例:预修改示例:r1pm(m1,i5)/有效地址有效地址m1+i5d

    15、m(4,i5)=addr_1/有效地址有效地址4i5先先输输出出I寄寄存存器器中中的的地地址址,后后修修改改I寄寄存存器器值值,修修改改后后的的地地址址写入到写入到I中中后修改示例:后修改示例:r1pm(i5,m1)/有效地址有效地址i5dm(i5,m1)=0 x1234/有效地址有效地址i5f5=dm(i5,6)/有效地址有效地址i5返回返回IMI只只输输出出地地址址MI,I寄寄存存器器值不更新值不更新MI地址直接修改地址直接修改vMODIFY(i1,4);/将将i1中的值加中的值加4后写入后写入i1,不输出。,不输出。设设i1=18,则修改后的地址:,则修改后的地址:i1=18+4=22;

    16、注:修改量可以是立即数(上例中的注:修改量可以是立即数(上例中的4),也),也可以是可以是M寄存器中的地址值,例如:寄存器中的地址值,例如:MODIFY(i1,m1)。设:设:m1=3,则修改后的地址:,则修改后的地址:i1=18+3=21;地址位反序地址位反序vBITREV(i1,4)/将索引寄存器将索引寄存器i1中的值加中的值加4后位反序写入后位反序写入i1中,但不输出。中,但不输出。设:设:i1=8;则上述语句执行后;则上述语句执行后i1=3;v位反序寻址方式:用于快速傅立叶变换(位反序寻址方式:用于快速傅立叶变换(FFT),使输出地),使输出地址单元都是相应输入地址单元的位反序,以二进

    17、制地址为例址单元都是相应输入地址单元的位反序,以二进制地址为例:输入输入X1=0001,则输出则输出X1=1000输入输入X2=1100,则输出则输出X2=0011注:通过设置注:通过设置MODE1寄存器的寄存器的BR0和和BR8位位(对应对应DAG1中中的的i0和和i8),就可以使能位反序寻址模式。,就可以使能位反序寻址模式。地址位反序操作举例地址位反序操作举例vBITSETMODEL1BR0;/使能寄存器使能寄存器i0位反序位反序vi0=0 x8a000;vM0=0 x4000000;/载入后修改地址量载入后修改地址量vR1DM(i0,M0);/将将i0中的值中的值0 x8a000位反序位

    18、反序v因为索引寄存器为因为索引寄存器为32位,既位,既i0=0 x0008a000;v0000,0000,0000,1000,1010,0000,0000,0000v位反序后为位反序后为0 x00051000;v0000,0000,0000,0101,0001,0000,0000,0000v将该地址中的值放入将该地址中的值放入R1中,然后中,然后i0M0i0;v地址后修改:地址后修改:i0=0 x8a000+0 x4000000=0 x408a000;PM和和DM总线与总线与PX寄存器寄存器vPX寄存器又称为总线连接器(寄存器又称为总线连接器(BUSconnect););vPX寄存器为寄存器为

    19、PM数据总线和数据总线和DM数据总线之间的数据总线之间的数据传输提供通道(扩展哈佛结构)。数据传输提供通道(扩展哈佛结构)。v另外利用另外利用PX寄存器,还可以与寄存器,还可以与40位的通用数据位的通用数据寄存器传递数据;寄存器传递数据;v对于对于ADSP21160其其PX寄存器长达寄存器长达64位,由位,由PX1寄存器(低寄存器(低32位)和位)和PX2(高(高32位)组成。位)组成。ADSP21160内部结构图内部结构图缓存返回ADSP21160通用数据寄存器Rx与Px之间的数据传递通用数据寄存器通用数据寄存器8个个03907PX2/PX1310通用数据寄存器通用数据寄存器(40位扩展精度

    20、位扩展精度)390PX24个个063024231.PX2/PX1与与Rx2.PX与与RxPX与内部数据总线PM和DM之间传递数据时的对齐格式63031PM或或DM数据总线数据总线310PX2/PX1630PM或或DM数据总线数据总线630PX1.PX2/PX1与与PM或或DM数据总线数据总线2.PX与与PM或或DM数据总线数据总线2.1.4程序控制器程序控制器(PROGRAMSEQUENCER)v程序控制器主要是控制程序流的执行,并为访问程序存储器提供地址;v通常程序流都是顺序执行,只有遇到分支程序指令(如跳转、循环、子程序调用、中断、等待等)时才会改变执行顺序;vADSP21160片内有循环

    21、计数器和循环堆栈,控制循环间隔和评估条件指令,循环代码可以实现零开销运行。v程序控制器的硬件循环结构支持多达8级的无开销嵌套循环,而且每层都可以单周期退出。1.指令流水线操作指令流水线操作 流水线操作指令结构为简化程序设计,提高程序代码的可维护性,增强系统整体性能带来了很大好处,消除了传统上程序取指、数据访问和乘法器操作中的瓶颈问题,提高了单周期的数据吞吐率。指令流水操作说明指令流水操作说明0 x010 x020 x030 x040 x05.周期数周期数取指取指译码译码执行执行10 x0120 x020 x0130 x030 x020 x0140 x040 x030 x0250 x050 x0

    22、40 x03.地址值地址值指令指令指令指令1指令指令2指令指令3指令指令4指令指令5.ADSP SHARC系列处理器分支程序指令包括:1.1.跳转跳转JUMP-JUMP-跳到一个新地址,不需返回;2.2.子程序调用子程序调用CALL-CALL-先将返回地址压到PC堆栈,子程序执行完毕后,返回到调用指令的地址;3.3.返回返回-中断返回(RTI)和子程序返回(RTS)两种类型;当程序运行到上述指令时,就不再顺序执行 下一个顺序地址的指令,而产生分支。2.分支程序执行非延迟分支指令和延迟分支指令非延迟分支指令和延迟分支指令v非延迟分支指令:非延迟分支指令:(1 1)分支指令后没有)分支指令后没有“

    23、DBDB”附加符;附加符;IfIf FLAG1_IN FLAG1_IN JUMPJUMP H_1 H_1;(2 2)该指令后处于取指和译码阶段的两)该指令后处于取指和译码阶段的两 条指令将不被执行,而是插入两条条指令将不被执行,而是插入两条 NOPNOP指令;指令;(3 3)然后直接执行分支程序入口的第一)然后直接执行分支程序入口的第一 条指令。条指令。IfFLAG1_INJUMPH_1周期周期取指取指译码译码执行执行R3=50001R2=1R3=5000IfFLAG1_INJUMPH_1R2=12R2=2/标号标号H_1R2=1NOPMODIFY(I9,2000)3R3=2500R2=2/标

    24、号标号H_1NOPH_1:R2=24MODIFY(I9,1000)R3=2500R2=2/标号标号H_1R3=25005MODIFY(I9,1000)R3=2500MODIFY(I9,1000)6.MODIFY(I9,1000).非延迟分支程序的流水操作说明延迟分支指令延迟分支指令v延迟分支指令:延迟分支指令:(1 1)分支指令后有)分支指令后有“DBDB”附加符;附加符;举例:举例:CALL CALL DFT(DB)DFT(DB);(2 2)分支指令后处于取指和译码阶段的两条)分支指令后处于取指和译码阶段的两条 指令将仍然被取指、译码和执行;指令将仍然被取指、译码和执行;(3 3)然后执行分

    25、支程序入口的第一条指令。)然后执行分支程序入口的第一条指令。延迟分支程序的指令流水操作说明延迟分支程序的指令流水操作说明L1=1周期周期取指取指译码译码执行执行CALLDFT(DB)1I2=realCALLDFT(DB)L1=1I2=real2L2=0I2=realCALLDFT(DB)L2=03B8=sine/标号标号DFTL2=0I2=real.DFT:B8=sine4L8=sineB8=sine/标号标号DFTL2=0L8=sine5B9=sineL8=sineB8=sine/标号标号DFTB9=sine6I9=sine+N/4B9=sineL8=sineI9=sine+N/4.对延迟分

    26、支指令的一些限制对延迟分支指令的一些限制v由于分支指令后的两条指令只能顺序执行,由于分支指令后的两条指令只能顺序执行,因此对这两条指令的类型有一些限制:因此对这两条指令的类型有一些限制:(1 1)不能是其它跳转、调用和返回指令;)不能是其它跳转、调用和返回指令;(2 2)不能是其他压入或者弹出堆栈指令;)不能是其他压入或者弹出堆栈指令;(3 3)不能是中断响应指令。)不能是中断响应指令。两种形式的分支指令特点由于处理器采用流水结构,分支指令会对程序的执行效率产生影响,有两种形式的分支指令。v非延迟分支指令v延迟分支指令存在两个周期的开销,降低了程序执行效率可保证程序执行效率,但增加了程序设计的

    27、难度3程序循环程序循环v另外一种重要的非顺序指令就是程序循环指令。vADSP SHARC系列处理器片内有专门的硬件结构来管理所有循环操作任务;v能自动跟踪循环的终止条件,如果终止条件不成立,不需要任何分支开销就能自动返回到循环的开始,同时更新循环计数器;v上述结构简化代码设计,节省指令执行时间,提高了循环指令的效率。vCALLdelay;v.v.v.vdelay:vlcntr=16,doendloop1untillce;vlcntr=1600,doendloop2untillce;v.v.v.vendloop2:nop;vendloop1:nop;vrts;4.指令高速缓存(指令高速缓存(IN

    28、STRUCTIONCACHE)v依靠一个片内指令缓存,ADSP21160就可以完成包括取一条指令及四个操作数在内的总共三个总线操作。v该缓存是可选的,仅在读指令与PM总线上的数据传输冲突时,才将该指令缓存;v这就使处理器内核可以全速执行循环运算,如数字滤波器的乘累加,FFT的蝶形运算等。指令缓存说明指令缓存说明v以三级流水说明如下:以三级流水说明如下:执行:执行:addressnf0=f3*f4,f5=PM(i9,m9);译码:译码:addressn+1f0=f0*f5;取指:取指:addressn+2f6=f6+f0;注:注:1.1.上述三条指令是在一个循环中;2.缓存区最多可存放32条指令

    29、。存在冲突指令缓存解决数据冲突v将地址n+2处的指令保存在缓存中。v当处理器第一次取指冲突时,须等待1个周期,在下一周期才能将指令取出。v当同一条指令再次出现冲突时,直接并行从指令缓存取指令,避免冲突,也不会出现延迟。v若冲突的指令不在指令缓存中,存在一个周期的开销。课后测试1.1.对延迟分支指令后面的两条指令有哪些限制?对延迟分支指令后面的两条指令有哪些限制?2.DAG2.DAG中有哪几种寄存器?位数是多少?地址修中有哪几种寄存器?位数是多少?地址修改的方式有哪几种?改的方式有哪几种?3.3.写出写出3 3种分支程序指令种分支程序指令答案1.1.答:答:(1 1)不能是其它跳转、调用和返回指

    30、令;)不能是其它跳转、调用和返回指令;(2 2)不能是其他压入或者弹出堆栈指令;)不能是其他压入或者弹出堆栈指令;(3 3)不能是中断响应指令。)不能是中断响应指令。2.2.答:答:DAGDAG中分别有四种寄存器,中分别有四种寄存器,I I、M M、B B、L L;位数是位数是3232位,地址修改方式分别为预修改和位,地址修改方式分别为预修改和后修改。后修改。3.3.JUMPJUMP、CALLCALL、RTSRTS、RTIRTI;2.2 ADSP 211602.2 ADSP 21160处理器存储器处理器存储器v4Mb可用的内部存储空间被等量地分成两块,每块2Mb:Block0和Block1。v

    31、下图显示了数据和指令字按不同字长(64、48、40、32、16位)访问时在每块中最多存储的字数。ADSP21160内部结构图内部结构图ADSP 21160处理器存储空间vADSP 21160存储器映射有三块存储空间:1.1.内部存储器空间:内部存储器空间:由DSP片内SRAM和存 储器映射的寄存器资源构成。2.2.多处理器存储空间:多处理器存储空间:是多片DSP处理器系 统中和其它DSP相对应的内部存储器空间。3.3.外部存储器空间:外部存储器空间:是指与DSP相连接的片外 存储器和存储器映射的I/O设备相对应的存 储器空间。2.2.1存储空间分配存储空间分配 1.内部存储器空间正常字地址范围

    32、(32位):0 x0000 00000 x0007 FFFF。2.多处理器存储空间正常字地址范围:0 x0010 00000 x007F FFFF。3.外部存储器空间正常字地址范围:0 x0080 00000 xFFFF FFFFADSP21160存储空间图存储空间图2.2.2ADSP21160内部存储器内部存储器 ADSP21160内部存储器包括4个地址空间 (64位字长):1.I/O处理器寄存器映射地址空间:0 x000 xFF 是256个I/O寄存器的映射地址空间,这些寄存器控制着系统的配置和I/O操作。2.保留的I/O存储区:0 x1000 x1FFF。不可访问。ADSP21160内部

    33、存储器内部存储器3.块0存储区:0 x200000 x27FFF。4.块1存储区:0 x280000 x2FFFF。5.保留(别名)存储区:0 x300000 x3FFFF 其中0 x300000 x37FFF为块0别名存储区,0 x380000 x3FFFF为块1别名存储区。注:对两个别名存储区的访问都会访问相应块0、块1。ADSP21160内部存储器映射内部存储器映射v支持对存储器的16位短字、32位正常字、40位扩展精度字或48位指令字和64位长字的访问;v注意:它们指的实际上是同一物理存储区。v下图详细说明了不同字宽的地址范围对应情况。v可以看出当用40位扩展精度和48位指令字正常寻址

    34、时,存在某些“不存在”的存储带。ADSP21160内部存储器按不同字长配置图内部存储器按不同字长配置图vADSP21160外部存储空间可以由DM、PM和I/O总线通过外部端口进行读写。vDAG1、DAG2和I/O处理器产生32位地址,可以完全寻址片外4G的存储空间。vADSP21160存储空间图说明了其外部存储空间分为5组:由03组和无分组存储空间组成;ADSP21160外部存储器映射ADSP21160外部存储器映射v其中03组通过片选信号MS3MS0选择访问;v对无分组外部存储区的访问不需要片选信号,只需存储器地址。v同时外部存储区也可以作为EPROM加载区和DRAM页控制。ADSP2116

    35、0外部存储空间外部存储空间ADSP21160存储器组织vADSP21160存储器基本的存储单元是16位字宽的存储列单元。v在ADSP21160 2M位的存储器块阵列中,每行有4个存储列单元,单列存储列单元长度32K。v因此,对于64位长字配置,4个存储列单元刚好构成一组64位长字,则长字寻址长度为32K。ADSP21160存储器组织续v如果配置为32位正常字,4个列单元刚好构成2组32位正常字,其寻址长度为64K。v如果配置为16位短字,4个存储列单元构成4组16位短字,其寻址长度为128K。v对于48位的指令字配置,ADSP则采用了旋转配置的方式,3列数据在4列存储阵列中进行旋转配置,其结构

    36、如下图所示。ADSP2116048位指令字旋转配置图位指令字旋转配置图ADSP21160存储器访问存储器访问vADSP21160片内有4Mb的双端口存储器可以按:v64位(长字);v48位(指令字);v40位扩展精度字;v32位正常字;v16位短字;v这样几种不同字宽的模式进行访问。ADSP21160存储器访问续存储器访问续1.64位强制长字访问模式:例1:R6DM(0 x050015)(LW);(R6和R7相邻)说明(正常字寻址每个地址单元为32位)(1)由于指令中指明的是奇数地址单元,则将该奇数地址单元地址减一的偶数存储器地址单元的值放到总线的高32位,并传送到指令中指明的寄存器里;0 x

    37、050014地址单元的值R6 (2)而该奇数地址单元中的值放到总线的低32位,传输到未指明的相邻寄存器里。0 x050015地址单元的值R7长字访问的相邻寄存器配对表长字访问的相邻寄存器配对表内部存储器强制内部存储器强制长字访问小结长字访问小结v综上所述,在内部存储器强制的长字传输中:(1)存储器偶数地址单元的值总是与指令中指明的寄存器相互传递数据;(2)而其相邻的奇数地址单元总是与指令中未指明的相邻寄存器间传递数据。(3)指令中指明的是偶数地址单元,则该地址单元加1为相应奇数地址单元;(4)指令中指明的是奇数地址单元,则该地址单元减1为相应的偶数地址单元。例例2R11DM(0 x050014

    38、)()(LW);(R10和和R11相邻相邻)将地址单元0 x050014中的值R11,将地址单元0 x050015中的值R10。例例3DM(0 x050000)R2(LW);(R2和和R3相邻)相邻)将R2中的值地址单元0 x050000;将R3中的值地址单元0 x050001。例例4DM(0 x050001)R3(LW);(R2和和R3相邻)相邻)将R3中的值地址单元0 x050000;将R2中的值地址单元0 x050001。外部存储器长字传输时寄存器相邻和存储外部存储器长字传输时寄存器相邻和存储地址单元相邻情况与内部存储器传输相同地址单元相邻情况与内部存储器传输相同例:例:R10=DM(0

    39、 x00800005)(LW);将地址单元将地址单元0 x00800004中的值中的值R10;将地址单元将地址单元0 x00800005中的值中的值R11;(R10和和R11相邻相邻)2.48位指令字与位指令字与40位扩展精度字访问位扩展精度字访问vADSP21160对片内存储器对片内存储器40位扩展精度位扩展精度字的访问与对字的访问与对48位指令字的访问一致。位指令字的访问一致。v当用当用PX寄存器时,寄存器时,PX寄存器与寄存器与PM总线总线的高的高48位传输指令字。位传输指令字。v如果设置如果设置SYSCON寄存器:寄存器:IMDWx1则该内部存储区块进行则该内部存储区块进行40位扩展精

    40、度字位扩展精度字访问,这时和正常字寻址一样,只需给访问,这时和正常字寻址一样,只需给出正常字寻址地址。出正常字寻址地址。3.32位正常字访问位正常字访问v如果如果SYSCON寄存器的寄存器的IMDWx设置为设置为0,则表,则表示对该内部存储块进行示对该内部存储块进行32位正常字访问。位正常字访问。v这时程序可以访问内部、外部和多处理器存储这时程序可以访问内部、外部和多处理器存储空间,不受限制。空间,不受限制。4.16位短字访问位短字访问 程序仅可以使用程序仅可以使用16位短字格式访问内部位短字格式访问内部存储区,不能访问外部存储空间和多处存储区,不能访问外部存储空间和多处理器存储空间。理器存储

    41、空间。SIMD模式模式v将同一条指令同时发送到两个处理单元;将同一条指令同时发送到两个处理单元;v从存储器载入两组操作数分别送到两个处理单元;从存储器载入两组操作数分别送到两个处理单元;v同时在两个处理单元里执行同一条指令;同时在两个处理单元里执行同一条指令;v将两个运算输出结果同时保存到存储器中;将两个运算输出结果同时保存到存储器中;MODE1模式控制寄存器的模式控制寄存器的PEYEN位控制位控制SIMD模式的模式的使能。使能。该位置该位置1,使能处理单元,使能处理单元PEy,也就使能了,也就使能了SIMD;否则禁止处理单元否则禁止处理单元PEy,处理器工作于,处理器工作于SISD模式。模式

    42、。当使能当使能SIMD后,处理器可以执行如下并行操作:后,处理器可以执行如下并行操作:互补寄存器互补寄存器SISD与与SIMD寄存器数据传输比较表寄存器数据传输比较表模式模式MODE指令指令INSTRCTION明确传输明确传输不明确传输不明确传输SISDIFcondition,RxRy将将Ry中的值赋给中的值赋给Rx没有操作没有操作IFcondition,RxSy将将Sy中的值赋给中的值赋给Rx没有操作没有操作IFcondition,SxSy将将Sy中的值赋给中的值赋给Sx没有操作没有操作IFcondition,RxSy将将Sy和和Rx中的值交换中的值交换没有操作没有操作SIMDIFcondi

    43、tion,RxRy将将Ry中的值赋给中的值赋给Rx将将Sy中的值赋给中的值赋给SxIFcondition,RxSy将将Sy中的值赋给中的值赋给Rx将将Ry中的值赋给中的值赋给SxIFcondition,SxSy将将Sy中的值赋给中的值赋给Sx将将Ry中的值赋给中的值赋给RxIFcondition,RxSy将将Sy和和Rx中的值交换中的值交换没有操作没有操作SIMD模式内部存储器访问说明表模式内部存储器访问说明表明确明确地址地址明确访问明确访问“R0”:R0DM(I0,M0)明确访问明确访问“S0”:S0DM(I0,M0)R0S0R0S0I00 x400010 x40001中中32位字位字0 x

    44、40002中中32位字位字0 x40002中中32位字位字0 x40001中中32位字位字课后测试1.ADSP21160M外部存储空间是从哪个地址开始的?由哪几部分组成?ADSP21160M芯片上MS0MS3这4个引脚的作用是什么?2.ADSP21160M双端口存储器的容量是多少?可按哪几种不同字宽模式访问?3.试写出下面64位长字访问语句执行中,存储单元和寄存器之间是如何交换数据的。R11DM(0 x050014)()(LW)4.ADSP21160M如何使能SIMD操作?使能SIMD操作后处理器可以执行哪些并行操作?处理器可以执行哪些并行操作?答案1.答:ADSP21160M外部存储空间是从

    45、0 x0800000开始的,由有分组区间和无分组区间组成,MS0MS3这4个引脚分别是03组有分组区间的片选信号。2.答:ADSP21160M双端口存储器的容量是4Mb,可按64位(长字);48位(指令字);40位扩展精度字;32位正常字;16位短字;这样几种不同字宽的模式进行访问。3.答:将地址单元0 x050014中的值R11,将地址单元0 x050015中的值R10。4.答:MODE1模式控制寄存器的PEYEN位控制SIMD模式的使能。该位置1,就使能了SIMD;1)将同一条指令同时发送到两个处理单元;将同一条指令同时发送到两个处理单元;2)从存储器载入两组操作数分别送到两个处理单元;)

    46、从存储器载入两组操作数分别送到两个处理单元;3)同时在两个处理单元里执行同一条指令;)同时在两个处理单元里执行同一条指令;4)将两个运算输出结果同时保存到存储器中;)将两个运算输出结果同时保存到存储器中;2.3ADSP21160寄存器寄存器2.3.1ADSP21160寄存器分类:寄存器分类:1)运算单元寄存器运算单元寄存器2 2)系统控制和状态寄存器系统控制和状态寄存器3 3)程序控制寄存器)程序控制寄存器4 4)数据地址产生寄存器()数据地址产生寄存器(DAG1DAG1,DAG2DAG2)5 5)I/OI/O处理器寄存器处理器寄存器 运算单元寄存器运算单元寄存器v运算单元寄存器主要为运算单元

    47、的ALU、乘法器、移位器保存输入、输出数据,主要包括:(1)通用数据寄存器Rx,Sx,Fx(x=015);(2)乘法结果寄存器MRFx,MRBx(x=02);其中MRFx称为前台寄存器;MRBx称为前台寄存器;主要用于存放80位定点乘法结果;注:通常也把总线交换寄存器PX,算作运算单元寄存器;系统控制和状态寄存器系统控制和状态寄存器v主要功能是配置处理器核的操作模式,同时标识处理器核的工作状态,作为条件程序执行的判别条件。v对系统控制类寄存器的写入操作有1个周期的延迟,在写入后的第二个周期才有效。系统控制和状态寄存器续系统控制和状态寄存器续寄存器名寄存器名初始值初始值MODE1模式控制寄存器模

    48、式控制寄存器10 x00000000MODE2模式控制寄存器模式控制寄存器20 xnn000000MMASK模式屏蔽寄存器模式屏蔽寄存器0 x00200000ASTATx,ASTATy运算状态寄存器运算状态寄存器0 x00000000STKYx,STKYy附加运算状态寄存器附加运算状态寄存器0 x00540000USTATx(x1-4)用户定义状态寄存器)用户定义状态寄存器0 x00000000MODE1寄存器的位定义表寄存器的位定义表Bit(s)NameDefinition0BR8索引寄存器索引寄存器I8位反序使能,位反序使能,1使能使能I8位反序寻址;位反序寻址;0正常寻址正常寻址1BR0

    49、索引寄存器索引寄存器I0位反序使能,位反序使能,1使能使能I0位反序寻址;位反序寻址;0正常寻址正常寻址2SRCU运算单元备用寄存器选择,运算单元备用寄存器选择,1使能使能MR备用寄存器;备用寄存器;0只能用主只能用主MR寄存器寄存器3SRD1HDAG1高高4(74)寄存器备用使能,)寄存器备用使能,1使能备用寄存器,使能备用寄存器,0只使用主寄存器只使用主寄存器4SRD1LDAG1低低4(30)寄存器备用使能,)寄存器备用使能,1使能备用寄存器,使能备用寄存器,0只使用主寄存器只使用主寄存器5SRD2HDAG2高高4(74)寄存器备用使能,)寄存器备用使能,1使能备用寄存器,使能备用寄存器,

    50、0只使用主寄存器只使用主寄存器6SRD2LDAG2低低4(30)寄存器备用使能,)寄存器备用使能,1使能备用寄存器,使能备用寄存器,0只使用主寄存器只使用主寄存器7SRRFH数数据据寄寄存存器器(R15R8)备备用用选选择择使使能能,1使使能能备备用用寄寄存存器器;0只只使使用用主主寄寄存器存器98保留保留10SRRFL数数据据寄寄存存器器(R7R0)备备用用选选择择使使能能,1使使能能备备用用寄寄存存器器;0只只使使用用主主寄寄存存器器11NESTM中断嵌套使能,中断嵌套使能,1允许中断嵌套;允许中断嵌套;0禁止中断嵌套禁止中断嵌套12IRPTEN全局中断使能,全局中断使能,1使能所有可屏蔽


    注意事项

    本文(典型DSP系统设计芯片介绍.ppt)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922