![]() |
|
||||||||||||||
| . 网站首页 . 新闻 . 新品 . 方案 . 专访 . 活动 . DSP . EDA . 评测室 . 技术文库 . 会员区 . 商城 . 服务导航 . 邮购 . 资源 . | ||
|
||
|
|||||
| TMS320VC33系列讲座资料 第六讲 | |||||
作者:Free 文章来源:本站原创 点击数: 更新时间:2007-8-16 ![]() |
|||||
|
第六讲 VC33的流水线操作透析 VC33有两个特点:流水线操作、并发I/O和CPU操作。 流水线操作是体现VC33高性能的主要特征。任何一条指令都要经过取指令、译码、读操作数、执行等4个过程,对同一条指令不能同时进行上述4个过程的操作,但可以对不同的指令同时进行这4种操作,即每一个CPU周期中,有4条指令分别处于取指令、译码、读操作数和执行阶段。这种作业方式就称为流水线操作。流水线作业不仅提高了运算和处理速度,同时也减少了总线拥挤的现象,提高了CPU的吞吐量。 VC33流水线结构的四个主要单元和他们的功能如下: (1)取指令单元(F):从寄存器中取指令字并更新程序计数器(PC)。 (2)译码单元(D):译码指令字并产生地址。而且,在间接寻址中译码单元控制ARn寄存器的修改,当发生栈操作时(PUSH/POP)修改栈指针。 (3)读操作数单元(R):从存储器或寄存器中读操作数。 (4)执行单元(E):从存储器或寄存器中读出操作数后,执行相应的操作,并向目的地址写结果。
上面这个图说明了流水线的结构,其中X、Y、W、Z代表具体的指令。我们从图中可以看出,在第m个周期,这四个阶段完全处于并行状态,即完全重叠在一起,从而进入了正常的流水线作业过程。 流水线操作中,DMA可能也要工作,这时,优先级顺序由高到低为:执行、读操作数、译码、取指令、DMA。尽管DMA控制器的优先级最低,但可以通过合适的数据结构使DMA与CPU的冲突最少甚至消除,这时因为DMA有它自己的数据和地址线。 我们可以看到,流水线操作真正工作是在第m个周期,即完全重叠。但是如果遇到了跳转和资源竞争等特殊情况,那么流水线操作就有可能不能完全处于重叠,这种冲突往往导致一个或几个CPU周期中没有任何一条指令处于被执行的状态。 那么流水线都有哪些冲突呢?我们应该怎样来避免呢??我们以后再讨论。 |
|||||
| 欢迎点击进入:TI德州中文网 (国内唯一针对TI应用的中文技术网站) 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登录 | | |||
|
|