中国·芯片交易在线
首页 | 供应信息 | 求购信息 | 库存查询 | 新闻中心 | 展会资讯 | IC厂商 | 技术资料 | 自由区域
   新闻首页 |  行业动态 | 新品发布 | 政策法规 | 科技成果 | 模拟技术 | 嵌入系统 | 传感控制 | 存储设计  
当前位置:IC72首页>> IC新闻中心>> 存储设计 >>电子行业新闻正文

C64+对C64内核的性能提升

时间:2006/7/26 10:01:00  作者:  来源:ic72  浏览人数:1566
 
 

引 言

      本文主要从内核结构及指令上介绍了C64+内核相对于C64内核的性能提升,使工程师在基于C64+的内核应用开发过程中,能够充分利于其性能。

      TI所推出的C64+内核完全兼容C64,这有利于基于C64的程序向C64+移植。结构上同样是64个通用寄存器,支持32位、40位、64位的数据类型,也支持8位和16位打包数据类型,其中A0~A2,B0~B2都可做条件寄存器。一侧的功能单元(A或B侧)可以访问到另外一侧(B或A侧)的通用寄存器中的操作数。 C64+兼容C64内核的所有指令,而在其它性能上做了相应提升。

ic72 存储设计

图1 C64+与 C64的部分指令变化情况

新增49条指令

      以乘法功能单元(M unit)为例,该单元的改进及新增指令加大了乘法运算带宽,支持32位乘法和复数乘法,使每周期16×16的MAC数达8个。如下面例子所示:

对于C64和C64+,复数乘法((dre+dim*i)*(cre+cim*i)=pre+pim*i)操作分别如下:
C64使用下列两条指令实现:
DOTP2 dre_dim, cim_cre, pim     ;dre_dim和cim_cre分别是将两个复数的实
;虚部两个16位的有符号数打包出来的结果
;组成一个32位的数,放入一个通用寄存器中。
DOTPN2dre_dim, cre_cim, pre
C64+只需下列一条指令就可以实现:
CMPY  dre_dim, cre_cim, pre:pim;pre:pim是一个寄存器对,分别存放复数乘法
;结果的实部和虚部。

      对于这种情形,如果流水线排好,可以看出C64+ 比C64减少大约一半左右的复数乘法周期,同时也会减少一条指令所占用的程序空间。其它还有如ADDSUB和ADDSUB2、数据打包/解包指令如DPACKX2,也大大提升了DSP在处理DCT和FFT变换方面的性能。如果使用这些新指令,以处理256点的FFT变化为例,部分指令变化如图1所示,C64+需要803个执行周期,而C64需要1246个执行周期;C64+的程序大小为664字节,而C64为1000字节。由此可见,C64+大大提升了DSP在流媒体方面的处理能力。

新增软件流水缓存(SPLOOP Buffer)

      C64架构充分利用软件流水(Software Pipeline)进一步提升DSP的处理性能,它既可以克服多周期指令延时对CPU处理性能的影响,还可以在流水线运行阶段的每个周期输出一个或多个处理结果。C64+延续该性能优点,并进行改进,形成SPLOOP (Software Pipelined Loop),在硬件上还有软件流水缓存(SPLOOP Buffer)对其进行支持。SPLOOP充分利用C64+内核中的SPLOOP Buffer,将软件流水中的循环核(Loop Kernel)拷入其中,有如下几个优势:

      1. 由于prolog和epilog代码段不需要直接代码标识,所以可以减少代码的尺寸;
      2. 不同于C64的软件流水,可以中断;
      3. 由于循环核已经被拷入SPLOOP Buffer,一方面可以减少对L1P Cache的访问,由此节省CPU对L1P Cache的带宽,另一方面也可以降低CPU的功耗;
      4. 每次循环内核的执行结束跳转到下次执行开始处时是绝对跳转,不需要跳转指令的支持。

      SPLOOP Buffer最多可以放 14个执行包 (execute packets),在程序编译过程中,CCS会自动将可以放入CPU中SPLOOP Buffer的指令用特殊指令代替,因此对于C/C++代码来说,使用很方便。

支持紧凑指令(Compact Instructions)

      C64 DSP只支持标准的取指包(如图2A所示),而C64+支持带“头”的取指包(如图2B所示),指令包头标注了该指令包中其它7个字中,哪些是32位的操作码,哪些是16位的操作码。支持紧凑指令可以节省程序存储空间;也能增加程序Cache的命中率。

ic72 存储设计

图2 C64和 C64+的取指包

支持特权系统

      考虑到目前越来越多的用户在TI的C6000系列DSP上运行操作系统,同时,越来越多的C6000系列DSP用于终端设备中(IP STB中使用DM642/3,DM6446/3),为支持处理系统异常及其存储空间非法访问的鲁棒性,C64+开始支持特权系统。

ic72 存储设计

图3 采用C64+内核的TMS320C6455的结构

      特权系统将操作模式分为完全超级用户执行模式和两级系统模式。在完全超级用户执行模式下, 程序可以完全访问所有的控制寄存器,不需运行非特权的程序。而两级系统模式分为超级用户执行模式和普通用户模式。操作系统运行于超级用户执行模式,API运行于普通用户模式。

      C64+内核的性能提升具有一定的应用针对性,一方面加强在流媒体方面的处理能力;另一方面提升对操作系统支持的鲁棒性。同时也通过支持紧凑指令存储和取指的方式来减少编译出来的代码尺寸。图4为使用C64+内核的TMS320C6455的结构,可以看出该DSP除片上存储空间比C6416提高一倍之外(L2 Memory达到2MB,L1P和L1D都为32KB),其内核在执行性能和代码大小上分别比C64内核提高20%和20%~30%。

 
【相关文章】
·浅析虚拟化技术之同主机多操作系统同时运行
·详细解析大型视频监控系统的技术要点
·如何打破DBA与存储工程师的技术鸿沟
·存储与安全融合之道二:存储设备上的漫漫征途
·存储论坛精华:SAN网络存储共享软件全攻略
·基于单片机的通用示波器存储功能扩展设计
·存储器的兼容性设计
·MRAM粉墨登场,开创存储器领域新纪元
·中兴集成电路实现外挂闪存的安全移动存储功能
·Kontron ECM可支持1GB DDR内存和2MB高速缓存
·三星4GB闪存硬盘能大幅提高Vista平台应用程序运行速度
·Luminary推出基于ARM Cortex-M3核心的32位MCU
·飞思卡尔新款32位ColdFire V1内核兼具8位易用性
·Legend Design推出存储器IP适用的参数化模型
·C64+对C64内核的性能提升
·飞思卡尔推出多核处理器,旨在提高网络效率和安全性
 
 
IC新闻搜索
 
热点新闻
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于ARM9内核Processor对外部NAND FLASH的控制实现
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9